From 35da8dd4ed100ec3cb92cd8122b6eabb4b25edcb Mon Sep 17 00:00:00 2001 From: Kyle Spearrin Date: Sat, 6 Aug 2016 15:21:59 -0400 Subject: [PATCH] clear push token after logout --- .../Repositories/IDeviceApiRepository.cs | 2 +- src/App/App.cs | 13 ++++++------- src/App/Repositories/DeviceApiRepository.cs | 13 +++---------- 3 files changed, 10 insertions(+), 18 deletions(-) diff --git a/src/App/Abstractions/Repositories/IDeviceApiRepository.cs b/src/App/Abstractions/Repositories/IDeviceApiRepository.cs index aaffe6a7f..a1fa01f69 100644 --- a/src/App/Abstractions/Repositories/IDeviceApiRepository.cs +++ b/src/App/Abstractions/Repositories/IDeviceApiRepository.cs @@ -9,6 +9,6 @@ namespace Bit.App.Abstractions public interface IDeviceApiRepository : IApiRepository { Task> PutTokenAsync(string identifier, DeviceTokenRequest request); - Task> PutClearTokenAsync(string identifier); + Task PutClearTokenAsync(string identifier); } } \ No newline at end of file diff --git a/src/App/App.cs b/src/App/App.cs index 177e84813..55517d8cf 100644 --- a/src/App/App.cs +++ b/src/App/App.cs @@ -184,13 +184,6 @@ namespace Bit.App private async void Logout(string logoutMessage) { - var deviceApiRepository = Resolver.Resolve(); - var appIdService = Resolver.Resolve(); - - _pushNotification.Unregister(); - _settings.Remove(Constants.PushLastRegistrationDate); - await deviceApiRepository.PutClearTokenAsync(appIdService.AppId); - _authService.LogOut(); _googleAnalyticsService.TrackAppEvent("LoggedOut"); @@ -201,6 +194,12 @@ namespace Bit.App { _userDialogs.Toast(logoutMessage); } + + var deviceApiRepository = Resolver.Resolve(); + var appIdService = Resolver.Resolve(); + _pushNotification.Unregister(); + _settings.Remove(Constants.PushLastRegistrationDate); + await Task.Run(() => deviceApiRepository.PutClearTokenAsync(appIdService.AppId)).ConfigureAwait(false); } private async Task CheckLockAsync(bool forceLock) diff --git a/src/App/Repositories/DeviceApiRepository.cs b/src/App/Repositories/DeviceApiRepository.cs index a9c1731b6..453243da9 100644 --- a/src/App/Repositories/DeviceApiRepository.cs +++ b/src/App/Repositories/DeviceApiRepository.cs @@ -43,11 +43,11 @@ namespace Bit.App.Repositories } } - public virtual async Task> PutClearTokenAsync(string identifier) + public virtual async Task PutClearTokenAsync(string identifier) { if(!Connectivity.IsConnected) { - return HandledNotConnected(); + return HandledNotConnected(); } using(var client = new ApiHttpClient()) @@ -59,14 +59,7 @@ namespace Bit.App.Repositories }; var response = await client.SendAsync(requestMessage); - if(!response.IsSuccessStatusCode) - { - return await HandleErrorAsync(response); - } - - var responseContent = await response.Content.ReadAsStringAsync(); - var responseObj = JsonConvert.DeserializeObject(responseContent); - return ApiResult.Success(responseObj, response.StatusCode); + return ApiResult.Success(response.StatusCode); } } }