public virtual void SetUp() { Native.c4log_register(C4LogLevel.Warning, Log); Directory.CreateDirectory(Environment.GetFolderPath(Environment.SpecialFolder.LocalApplicationData)); var dbPath = Path.Combine(Environment.GetFolderPath(Environment.SpecialFolder.LocalApplicationData), "forest_temp.fdb"); C4Error error; _db = Native.c4db_open(dbPath, C4DatabaseFlags.Create, EncryptionKey, &error); Assert.IsFalse(_db == null); }
public static extern bool c4db_deleteIndex(C4Database *database, C4Slice name, C4Error *outError);
public static C4Query *c4query_new(C4Database *database, string expression, C4Error *error) { using (var expression_ = new C4String(expression)) { return(NativeRaw.c4query_new(database, expression_.AsC4Slice(), error)); } }
public static C4DocEnumerator *c4db_enumerateChanges(C4Database *database, ulong since, C4EnumeratorOptions *options, C4Error *outError) => Impl.c4db_enumerateChanges(database, since, options, outError);
public static extern C4Query *c4query_new(C4Database *database, C4Slice expression, C4Error *error);
public static bool c4db_endTransaction(C4Database *database, bool commit, C4Error *outError) => Impl.c4db_endTransaction(database, commit, outError);
public static C4RawDocument *c4raw_get(C4Database *database, string storeName, string docID, C4Error *outError) => Impl.c4raw_get(database, storeName, docID, outError);
public static bool c4db_rekey(C4Database *database, C4EncryptionKey *newKey, C4Error *outError) => Impl.c4db_rekey(database, newKey, outError);
public static string c4db_getPath(C4Database *db) => Impl.c4db_getPath(db);
public static bool c4db_free(C4Database *database) => Impl.c4db_free(database);
public static bool c4db_delete(C4Database *database, C4Error *outError) => Impl.c4db_delete(database, outError);
public static C4Database *c4db_retain(C4Database *db) => Impl.c4db_retain(db);
public static C4Database *c4db_openAgain(C4Database *db, C4Error *outError) => Impl.c4db_openAgain(db, outError);
public static C4BlobStore *c4db_getBlobStore(C4Database *db, C4Error *outError) => Impl.c4db_getBlobStore(db, outError);
public static C4SliceResult c4db_getCookies(C4Database *db, C4Address request, C4Error *error) => Impl.c4db_getCookies(db, request, error);
public static C4DatabaseConfig *c4db_getConfig(C4Database *db) => Impl.c4db_getConfig(db);
public static bool c4db_beginTransaction(C4Database *database, C4Error *outError) => Impl.c4db_beginTransaction(database, outError);
public static ulong c4db_getDocumentCount(C4Database *database) => Impl.c4db_getDocumentCount(database);
public static bool c4db_isInTransaction(C4Database *database) => Impl.c4db_isInTransaction(database);
public static ulong c4db_getLastSequence(C4Database *database) => Impl.c4db_getLastSequence(database);
public static bool c4raw_put(C4Database *database, string storeName, string key, string meta, string body, C4Error *outError) => Impl.c4raw_put(database, storeName, key, meta, body, outError);
public static ulong c4db_nextDocExpiration(C4Database *database) => Impl.c4db_nextDocExpiration(database);
public static C4DocEnumerator *c4db_enumerateAllDocs(C4Database *database, C4EnumeratorOptions *options, C4Error *outError) => Impl.c4db_enumerateAllDocs(database, options, outError);
public static uint c4db_getMaxRevTreeDepth(C4Database *database) => Impl.c4db_getMaxRevTreeDepth(database);
public static extern bool c4db_createIndex(C4Database *database, C4Slice name, C4Slice expressionsJSON, C4IndexType indexType, C4IndexOptions *indexOptions, C4Error *outError);
public static void c4db_setMaxRevTreeDepth(C4Database *database, uint maxRevTreeDepth) => Impl.c4db_setMaxRevTreeDepth(database, maxRevTreeDepth);
public static extern C4SliceResult c4db_getIndexes(C4Database *database, C4Error *outError);
public static bool c4db_getUUIDs(C4Database *database, C4UUID *publicUUID, C4UUID *privateUUID, C4Error *outError) => Impl.c4db_getUUIDs(database, publicUUID, privateUUID, outError);
public static bool c4db_deleteIndex(C4Database *database, string name, C4Error *outError) { using (var name_ = new C4String(name)) { return(NativeRaw.c4db_deleteIndex(database, name_.AsC4Slice(), outError)); } }
public static bool c4db_compact(C4Database *database, C4Error *outError) => Impl.c4db_compact(database, outError);
public TransactionHelper(C4Database *db) { C4Error error; Assert.IsTrue(Native.c4db_beginTransaction(db, &error)); _db = db; }
public static bool c4db_setCookie(C4Database *db, C4Slice setCookieHeader, C4Slice fromHost, C4Slice fromPath, C4Error *outError) => Impl.c4db_setCookie(db, setCookieHeader, fromHost, fromPath, outError);