internal IAsyncAction RemoveAsync(ItemKey key, RecordItemLock itemLock) { key.ValidateRequired("key"); return(AsyncInfo.Run(async cancelToken => { await this.Data.RemoveItemAsync(m_typeID, key, itemLock); await this.RemoveKeyAsync(key); })); }
public IAsyncAction RemoveItemAsync(ItemKey key) { key.ValidateRequired("key"); return(AsyncInfo.Run(async cancelToken => { using (await CrossThreadLockScope.Enter(m_lock)) { await m_objectStore.DeleteAsync(key.ID); } })); }
/// <summary> /// Remove an item. To remove, you must first acquire a lock on the item, and prove that you own the lock. /// If you use the higher level SychronizedType object, you won't have to acquire the lock yourself /// </summary> public IAsyncAction RemoveItemAsync(string typeID, ItemKey itemKey, RecordItemLock itemLock) { itemKey.ValidateRequired("key"); if (itemLock == null) { throw new ArgumentNullException("itemLock"); } m_itemLocks.ValidateLock(itemKey.ID, itemLock.LockID); return(AsyncInfo.Run(async cancelToken => { await m_localStore.RemoveItemAsync(itemKey); await m_changeManager.TrackRemoveAsync(typeID, itemKey); })); }
public IAsyncOperation <RecordItem> RefreshAndGetItemAsync(ItemKey key) { key.ValidateRequired("key"); return(RefreshAndGetItemAsyncImpl(key).AsAsyncOperation()); }
public IAsyncOperation <IItemDataTyped> GetAsync(ItemKey key) { key.ValidateRequired("key"); return(GetAsyncImpl(key).AsAsyncOperation()); }