public Task <IDocumentReference> AddAsync <T>(T data) { var tcs = new TaskCompletionSource <IDocumentReference>(); DocumentReference?document = null; document = _collectionReference.AddDocument(data.ToNativeFieldValues(), (error) => { if (error != null) { tcs.SetException(ExceptionMapper.Map(error)); } else { tcs.SetResult(new DocumentReferenceWrapper(document !)); }
public Task AddDocumentAsync(object data) { var tcs = new TaskCompletionSource <bool>(); _collectionReference.AddDocument(data.ToNativeFieldValues(), (error) => { if (error != null) { tcs.SetException(ExceptionMapper.Map(error)); } else { tcs.SetResult(true); } }); return(tcs.Task); }
public Task DeleteDocumentAsync() { var tcs = new TaskCompletionSource <bool>(); _documentReference.Delete().AddOnCompleteListener(new OnCompleteHandlerListener((task) => { if (task.IsSuccessful) { tcs.SetResult(true); } else { tcs.SetException(ExceptionMapper.Map(task.Exception)); } })); return(tcs.Task); }
public Task <IDocumentSnapshot> GetAsync(Source source) { var tcs = new TaskCompletionSource <IDocumentSnapshot>(); _documentReference.GetDocument(source.ToNative(), (snapshot, error) => { if (error != null) { tcs.SetException(ExceptionMapper.Map(error)); } else { tcs.SetResult(new DocumentSnapshotWrapper(snapshot)); } }); return(tcs.Task); }
public Task SetAsync <T>(T documentData, params FieldPath[] mergeFields) { var tcs = new TaskCompletionSource <bool>(); _documentReference.SetData(documentData.ToNativeFieldValues(), mergeFields.Select(x => x.ToNative()).ToArray(), (error) => { if (error != null) { tcs.SetException(ExceptionMapper.Map(error)); } else { tcs.SetResult(true); } }); return(tcs.Task); }
public Task CommitAsync() { var tcs = new TaskCompletionSource <bool>(); _writeBatch.Commit().AddOnCompleteListener(new OnCompleteHandlerListener((task) => { if (task.IsSuccessful) { tcs.SetResult(true); } else { tcs.SetException(ExceptionMapper.Map(task.Exception)); } })); return(tcs.Task); }
public Task SetDataAsync(object documentData, params string[] mergeFields) { var tcs = new TaskCompletionSource <bool>(); _documentReference.SetData(documentData.ToNativeFieldValues(), mergeFields, (error) => { if (error != null) { tcs.SetException(ExceptionMapper.Map(error)); } else { tcs.SetResult(true); } }); return(tcs.Task); }
public Task UpdateDataAsync(FieldPath field, object value, params object[] moreFieldsAndValues) { var tcs = new TaskCompletionSource <bool>(); _documentReference.Update(field.ToNative(), value.ToNativeFieldValue(), moreFieldsAndValues.Select(x => x.ToNativeFieldValue()).ToArray()).AddOnCompleteListener(new OnCompleteHandlerListener((task) => { if (task.IsSuccessful) { tcs.SetResult(true); } else { tcs.SetException(ExceptionMapper.Map(task.Exception)); } })); return(tcs.Task); }
public Task <IQuerySnapshot> GetDocumentsAsync(Source source) { var tcs = new TaskCompletionSource <IQuerySnapshot>(); _query.GetDocuments(source.ToNative(), (snapshot, error) => { if (error != null) { tcs.SetException(ExceptionMapper.Map(error)); } else { tcs.SetResult(snapshot == null ? null : new QuerySnapshotWrapper(snapshot)); } }); return(tcs.Task); }
public Task SetAsync <T>(T documentData, params string[] mergeFields) { var tcs = new TaskCompletionSource <bool>(); _documentReference.Set(documentData.ToNativeFieldValues(), SetOptions.MergeFields(mergeFields)).AddOnCompleteListener(new OnCompleteHandlerListener((task) => { if (task.IsSuccessful) { tcs.SetResult(true); } else { tcs.SetException(ExceptionMapper.Map(task.Exception)); } })); return(tcs.Task); }
public Task UpdateAsync <T>(T fields) { var tcs = new TaskCompletionSource <bool>(); _documentReference.UpdateData(fields.ToNativeFieldValues(), (error) => { if (error != null) { tcs.SetException(ExceptionMapper.Map(error)); } else { tcs.SetResult(true); } }); return(tcs.Task); }
public Task DeleteAsync() { var tcs = new TaskCompletionSource <bool>(); _documentReference.DeleteDocument((error) => { if (error != null) { tcs.SetException(ExceptionMapper.Map(error)); } else { tcs.SetResult(true); } }); return(tcs.Task); }
public Task UpdateDataAsync(object fields) { var tcs = new TaskCompletionSource <bool>(); _documentReference.Update(fields.ToNativeFieldValues()).AddOnCompleteListener(new OnCompleteHandlerListener((task) => { if (task.IsSuccessful) { tcs.SetResult(true); } else { tcs.SetException(ExceptionMapper.Map(task.Exception)); } })); return(tcs.Task); }
public Task SetDataAsync(object documentData, params FieldPath[] mergeFields) { var tcs = new TaskCompletionSource <bool>(); _documentReference.Set(documentData.ToNativeFieldValues(), SetOptions.MergeFieldPaths(new JavaList <Firebase.Firestore.FieldPath>(mergeFields.Select(x => x.ToNative())))).AddOnCompleteListener(new OnCompleteHandlerListener((task) => { if (task.IsSuccessful) { tcs.SetResult(true); } else { tcs.SetException(ExceptionMapper.Map(task.Exception)); } })); return(tcs.Task); }
public Task CommitAsync() { var tcs = new TaskCompletionSource <bool>(); _writeBatch.Commit((error) => { if (error != null) { tcs.SetException(ExceptionMapper.Map(error)); } else { tcs.SetResult(true); } }); return(tcs.Task); }
public Task <IQuerySnapshot> GetAsync() { var tcs = new TaskCompletionSource <IQuerySnapshot>(); _query.GetDocuments((snapshot, error) => { if (error != null) { tcs.SetException(ExceptionMapper.Map(error)); } else { tcs.SetResult(new QuerySnapshotWrapper(snapshot !)); } }); return(tcs.Task); }
public Task SetAsync <T>(T documentData, bool merge) { var tcs = new TaskCompletionSource <bool>(); _documentReference.SetData(documentData.ToNativeFieldValues(), merge, (error) => { if (error != null) { tcs.SetException(ExceptionMapper.Map(error)); } else { tcs.SetResult(true); } }); return(tcs.Task); }
public Task <IQuerySnapshot> GetDocumentsAsync() { var tcs = new TaskCompletionSource <IQuerySnapshot>(); _collectionReference.GetDocuments((snapshot, error) => { if (error != null) { tcs.SetException(ExceptionMapper.Map(error)); } else { tcs.SetResult(snapshot == null ? null : new QuerySnapshotWrapper(snapshot)); } }); return(tcs.Task); }
public Task <IQuerySnapshot> GetDocumentsAsync(Source source) { var tcs = new TaskCompletionSource <IQuerySnapshot>(); _query.Get(source.ToNative()).AddOnCompleteListener(new OnCompleteHandlerListener((task) => { if (task.IsSuccessful) { var snapshot = task.Result.JavaCast <QuerySnapshot>(); tcs.SetResult(snapshot == null ? null : new QuerySnapshotWrapper(snapshot)); } else { tcs.SetException(ExceptionMapper.Map(task.Exception)); } })); return(tcs.Task); }
public Task <IDocumentSnapshot> GetDocumentAsync() { var tcs = new TaskCompletionSource <IDocumentSnapshot>(); _documentReference.Get().AddOnCompleteListener(new OnCompleteHandlerListener((task) => { if (task.IsSuccessful) { var snapshot = task.Result.JavaCast <DocumentSnapshot>(); tcs.SetResult(snapshot == null ? null : new DocumentSnapshotWrapper(snapshot)); } else { tcs.SetException(ExceptionMapper.Map(task.Exception)); } })); return(tcs.Task); }
public Task <IQuerySnapshot> GetAsync() { var tcs = new TaskCompletionSource <IQuerySnapshot>(); _query.Get().AddOnCompleteListener(new OnCompleteHandlerListener((task) => { if (task.IsSuccessful) { var snapshot = task.Result.JavaCast <QuerySnapshot>(); tcs.SetResult(new QuerySnapshotWrapper(snapshot !)); } else { tcs.SetException(ExceptionMapper.Map(task.Exception)); } })); return(tcs.Task); }
public Task AddDocumentAsync(object data) { var tcs = new TaskCompletionSource <bool>(); _collectionReference.Add(data.ToNativeFieldValue()) .AddOnCompleteListener(new OnCompleteHandlerListener((task) => { if (task.IsSuccessful) { tcs.SetResult(true); } else { tcs.SetException(ExceptionMapper.Map(task.Exception)); } })); return(tcs.Task); }
public Task UpdateAsync(FieldPath field, object?value, params object?[] moreFieldsAndValues) { var fields = Field.CreateFields(field, value, moreFieldsAndValues); var tcs = new TaskCompletionSource <bool>(); _documentReference.UpdateData(fields, (error) => { if (error != null) { tcs.SetException(ExceptionMapper.Map(error)); } else { tcs.SetResult(true); } }); return(tcs.Task); }
public Task <IDocumentReference> AddAsync <T>(T data) { var tcs = new TaskCompletionSource <IDocumentReference>(); _collectionReference.Add(data.ToNativeFieldValues()) .AddOnCompleteListener(new OnCompleteHandlerListener((task) => { if (task.IsSuccessful) { var document = task.Result.JavaCast <DocumentReference>(); tcs.SetResult(new DocumentReferenceWrapper(document !)); } else { tcs.SetException(ExceptionMapper.Map(task.Exception)); } })); return(tcs.Task); }
public Task SetDataAsync(object documentData, bool merge) { if (!merge) { return(SetDataAsync(documentData)); } var tcs = new TaskCompletionSource <bool>(); _documentReference.Set(documentData.ToNativeFieldValues(), SetOptions.Merge()).AddOnCompleteListener(new OnCompleteHandlerListener((task) => { if (task.IsSuccessful) { tcs.SetResult(true); } else { tcs.SetException(ExceptionMapper.Map(task.Exception)); } })); return(tcs.Task); }