diff options
Diffstat (limited to 'src/libstore/db.hh')
-rw-r--r-- | src/libstore/db.hh | 107 |
1 files changed, 0 insertions, 107 deletions
diff --git a/src/libstore/db.hh b/src/libstore/db.hh deleted file mode 100644 index 8672fbc86..000000000 --- a/src/libstore/db.hh +++ /dev/null @@ -1,107 +0,0 @@ -#ifndef __DB_H -#define __DB_H - -#include "types.hh" - -#include <map> - - -/* Defined externally. */ -class DbTxn; -class DbEnv; -class Db; - - -namespace nix { - - -class Database; - - -class Transaction -{ - friend class Database; - -private: - DbTxn * txn; - -public: - Transaction(); - Transaction(Database & _db); - ~Transaction(); - - void begin(Database & db); - void abort(); - void commit(); - - void moveTo(Transaction & t); -}; - - -#define noTxn Transaction() - - -typedef unsigned int TableId; /* table handles */ - - -class Database -{ - friend class Transaction; - -private: - DbEnv * env; - - TableId nextId; - std::map<TableId, Db *> tables; - - void requireEnv(); - - Db * getDb(TableId table); - - void open2(const string & path, bool removeOldEnv); - -public: - Database(); - ~Database(); - - void open(const string & path); - void close(); - - TableId openTable(const string & table, bool sorted = false); - void closeTable(TableId table); - void deleteTable(const string & table); - - bool queryString(const Transaction & txn, TableId table, - const string & key, string & data); - - bool queryStrings(const Transaction & txn, TableId table, - const string & key, Strings & data); - - void setString(const Transaction & txn, TableId table, - const string & key, const string & data); - - void setStrings(const Transaction & txn, TableId table, - const string & key, const Strings & data, - bool deleteEmpty = true); - - void delPair(const Transaction & txn, TableId table, - const string & key); - - void enumTable(const Transaction & txn, TableId table, - Strings & keys, const string & keyPrefix = ""); - - void clearTable(const Transaction & txn, TableId table); -}; - - -class DbNoPermission : public Error -{ -public: - DbNoPermission(const format & f) : Error(f) { }; -}; - - -} - - -#endif /* !__DB_H */ |