public void SetValue <T> (T value, DatabaseReferenceCompletionHandler completionHandler) where T : NSObject { if (completionHandler == null) { throw new ArgumentNullException(nameof(completionHandler)); } if (!VerifyValidType(value)) { throw new InvalidOperationException("Invalid parameter types"); } _SetValue(value, completionHandler); }
public void SetValues(NSObject [] values, DatabaseReferenceCompletionHandler completionHandler) { if (completionHandler == null) { throw new ArgumentNullException(nameof(completionHandler)); } if (values == null) { _SetValue(null, completionHandler); } var nsArray = VerifyArray(values); _SetValue(nsArray, completionHandler); }
public void SetValuesOnDisconnect <T> (T [] values, NSObject priority, DatabaseReferenceCompletionHandler completionHandler) where T : NSObject { if (completionHandler == null) { throw new ArgumentNullException(nameof(completionHandler)); } if (values == null) { _SetValueOnDisconnect(null, priority, completionHandler); } var nsArray = VerifyArray(values); _SetValueOnDisconnect(nsArray, priority, completionHandler); }
async Task <bool> SaveValues(NSDictionary data) { TaskCompletionSource <bool> task = new TaskCompletionSource <bool>(); DatabaseReferenceCompletionHandler onComplete = (NSError error, DatabaseReference reference) => { if (error != null) { task.SetResult(false); return; } task.SetResult(true); }; entityNode.SetValue(value: data, completionHandler: onComplete); return(await task.Task); }