示例#1
0
        public DocumentObserver(C4Database *database, string docID, DocumentObserverCallback callback, object context)
        {
            _context        = context;
            _callback       = callback;
            _nativeCallback = DocObserverCallback;
            var id = Guid.NewGuid();

            _id      = GCHandle.Alloc(id, GCHandleType.Pinned);
            Observer = (C4DocumentObserver *)LiteCoreBridge.Check(err => {
                _ObserverMap[id] = this;
                return(Native.c4docobs_create(database, docID, _nativeCallback, GCHandle.ToIntPtr(_id).ToPointer()));
            });
        }
示例#2
0
 public static extern C4DocumentObserver *c4docobs_create(C4Database *database, FLSlice docID, C4DocumentObserverCallback callback, void *context);
示例#3
0
 public static C4DocumentObserver *c4docobs_create(C4Database *database, string docID, C4DocumentObserverCallback callback, void *context)
 {
     using (var docID_ = new C4String(docID)) {
         return(NativeRaw.c4docobs_create(database, docID_.AsFLSlice(), callback, context));
     }
 }
 public C4DocumentObserver *c4docobs_create(C4Database *database, C4Slice docID, C4DocumentObserverCallback callback, void *context) => NativeRaw.c4docobs_create(database, docID, callback, context);
 public static C4DocumentObserver *c4docobs_create(C4Database *database, FLSlice docID, C4DocumentObserverCallback callback, void *context) => Impl.c4docobs_create(database, docID, callback, context);