public async Task <T> GetObjectAsync <T> (string key) where T : RdioObject { ; foreach (var property in await CoreGetObjectsAsync(new [] { key })) { return(RdioObject.FromJson(property.Value) as T); } return(null); }
public async Task <IEnumerable <RdioObject> > GetObjectsAsync(IEnumerable <string> keys) { var objects = new List <RdioObject> (); foreach (var property in await CoreGetObjectsAsync(keys)) { objects.Add(RdioObject.FromJson(property.Value)); } return(objects); }
public async Task LoadObjectsAsync(RdioObjectStore targetStore, IEnumerable <string> keys, Action <RdioObject> objectLoaded = null) { foreach (var property in await CoreGetObjectsAsync(keys)) { var obj = RdioObject.FromJson(property.Value); if (obj != null) { targetStore.Add(obj); objectLoaded?.Invoke(obj); } } }
public async Task <T> CallAsync <T> (string method, IDictionary <string, string> parameters = null) where T : RdioObject { return(RdioObject.FromJson <T> (await CallAsync(method, parameters))); }