public async Task DeleteFolderAsync(Folder folder) { await _folderRepository.DeleteAsync(folder); // push await _pushService.PushSyncFolderDeleteAsync(folder); }
private async Task SyncFoldersAsync(IDictionary <string, CipherResponse> serverFolders) { if (!_authService.IsAuthenticated) { return; } var localFolders = (await _folderRepository.GetAllByUserIdAsync(_authService.UserId).ConfigureAwait(false)) .ToDictionary(f => f.Id); foreach (var serverFolder in serverFolders) { if (!_authService.IsAuthenticated) { return; } try { var data = new FolderData(serverFolder.Value, _authService.UserId); await _folderRepository.UpsertAsync(data).ConfigureAwait(false); } catch (SQLite.SQLiteException) { } } foreach (var folder in localFolders.Where(localFolder => !serverFolders.ContainsKey(localFolder.Key))) { try { await _folderRepository.DeleteAsync(folder.Value.Id).ConfigureAwait(false); } catch (SQLite.SQLiteException) { } } }
private async Task SyncFoldersAsync(IDictionary <string, CipherResponse> serverFolders, bool deleteMissing) { if (!_authService.IsAuthenticated) { return; } var localFolders = (await _folderRepository.GetAllByUserIdAsync(_authService.UserId).ConfigureAwait(false)) .ToDictionary(f => f.Id); foreach (var serverFolder in serverFolders) { if (!_authService.IsAuthenticated) { return; } var existingLocalFolder = localFolders.ContainsKey(serverFolder.Key) ? localFolders[serverFolder.Key] : null; if (existingLocalFolder == null) { var data = new FolderData(serverFolder.Value, _authService.UserId); await _folderRepository.InsertAsync(data).ConfigureAwait(false); } else if (existingLocalFolder.RevisionDateTime != serverFolder.Value.RevisionDate) { var data = new FolderData(serverFolder.Value, _authService.UserId); await _folderRepository.UpdateAsync(data).ConfigureAwait(false); } } if (!deleteMissing) { return; } foreach (var folder in localFolders.Where(localFolder => !serverFolders.ContainsKey(localFolder.Key))) { await _folderRepository.DeleteAsync(folder.Value.Id).ConfigureAwait(false); } }
public async Task <ApiResult> DeleteAsync(string folderId) { var response = await _folderApiRepository.DeleteAsync(folderId); if (response.Succeeded) { await _folderRepository.DeleteAsync(folderId); } else if (response.StatusCode == System.Net.HttpStatusCode.Forbidden || response.StatusCode == System.Net.HttpStatusCode.Unauthorized) { _authService.LogOut(); } return(response); }
public async Task <ApiResult> DeleteAsync(string folderId) { var response = await _folderApiRepository.DeleteAsync(folderId); if (response.Succeeded) { await _folderRepository.DeleteAsync(folderId); } else if (response.StatusCode == System.Net.HttpStatusCode.Forbidden || response.StatusCode == System.Net.HttpStatusCode.Unauthorized) { MessagingCenter.Send(Application.Current, "Logout", (string)null); } return(response); }
public async Task Delete(int id) { await repository.DeleteAsync(id); }
public async Task DeleteAsync(string id) { await _repository.DeleteAsync(id); }