public async Task <ResultSingle <ObjectT> > QueryAsync <ObjectT>( ObjectT seed, IDictionary <string, object> data = null, string subPath = null, bool doCache = true) where ObjectT : ICloudObject, new() { Notifier?.BeginQuery(); ResultSingle <ObjectT> result = null; if (doCache && _cache.Load <ObjectT>(seed)) { // Use the cache result = new ResultSingle <ObjectT>(ServerStatus.NEST_RESULT_SUCCESS); result.Data = new DataContainer <ObjectT>(); result.Data.Payload = seed; } else { result = await TrySend <ObjectT, ResultSingle <ObjectT>, ObjectT>( new HttpRequest <ObjectT, ResultSingle <ObjectT> >(GetAsync), seed, true, data, subPath, doCache); } Notifier?.EndQuery(); return(result); }
public async Task <ResultSingle <Permit <UserT> > > RevokeAccessAsync( Dictionary <string, object> data = null) { Notifier?.BeginQuery(); ResultSingle <Permit <UserT> > result = await Send <Permit <UserT>, ResultSingle <Permit <UserT> >, Permit <UserT> >( new HttpRequest <Permit <UserT>, ResultSingle <Permit <UserT> > >(DeleteAsync), Permit, true, data, null, false); Notifier?.EndQuery(); return(result); }
public async Task <ResultSingle <ObjectT> > RemoveAsync <ObjectT>( ObjectT seed, IDictionary <string, object> data = null, string subPath = null, bool doCache = false) where ObjectT : ICloudObject, new() { Notifier?.BeginQuery(); ResultSingle <ObjectT> result = await TrySend <ObjectT, ResultSingle <ObjectT>, ObjectT>( new HttpRequest <ObjectT, ResultSingle <ObjectT> >(DeleteAsync), seed, true, data, subPath, doCache); Notifier?.EndQuery(); return(result); }
public async Task <ResultMultiple <ObjectT> > QueryAsyncListAsync <ObjectT>( ObjectT seed, IDictionary <string, object> data = null, string subPath = null, bool doCache = true) where ObjectT : ICloudObject, new() { Notifier?.BeginQuery(); ResultMultiple <ObjectT> result = await TrySend <ObjectT, ResultMultiple <ObjectT>, ObservableCollection <ObjectT> >(new HttpRequest <ObjectT, ResultMultiple <ObjectT> >(GetListAsync), seed, false, data, subPath, doCache); Notifier?.EndQuery(); return(result); }
public async Task <ResultSingle <Permit <UserT> > > SignupAsync( Dictionary <string, object> data = null) { Notifier?.BeginQuery(); ResultSingle <Permit <UserT> > result = await Send <Permit <UserT>, ResultSingle <Permit <UserT> >, Permit <UserT> >( new HttpRequest <Permit <UserT>, ResultSingle <Permit <UserT> > >(PostAsync), Permit, false, data, null, false); UpdatePermit(result); Notifier?.EndQuery(); return(result); }