mirror of
https://github.com/nextcloud/talk-android
synced 2025-06-19 19:49:33 +01:00
Fix to delete user when unregister for notifications failed
Whenever there was an error when unregistering from notifications, the user was not deleted. This could lead to multiple bugs. Furthermore, external signaling server connection and arbitrary storage is now always handled for user deletion, which was not the case before. Signed-off-by: Marcel Hibbe <dev@mhibbe.de>
This commit is contained in:
parent
80eba79b5a
commit
423ce97b4e
@ -129,6 +129,7 @@ public class AccountRemovalWorker extends Worker {
|
||||
@Override
|
||||
public void onError(@io.reactivex.annotations.NonNull Throwable e) {
|
||||
Log.e(TAG, "error while trying to unregister Device For Notifications", e);
|
||||
initiateUserDeletion(user);
|
||||
}
|
||||
|
||||
@Override
|
||||
@ -137,7 +138,7 @@ public class AccountRemovalWorker extends Worker {
|
||||
}
|
||||
});
|
||||
} else {
|
||||
deleteUser(user);
|
||||
initiateUserDeletion(user);
|
||||
}
|
||||
}
|
||||
|
||||
@ -172,15 +173,13 @@ public class AccountRemovalWorker extends Worker {
|
||||
}
|
||||
}
|
||||
|
||||
if (user.getId() != null) {
|
||||
WebSocketConnectionHelper.deleteExternalSignalingInstanceForUserEntity(user.getId());
|
||||
}
|
||||
deleteAllEntriesForAccountIdentifier(user);
|
||||
initiateUserDeletion(user);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onError(Throwable e) {
|
||||
Log.e(TAG, "error while trying to unregister Device For Notification With Proxy", e);
|
||||
initiateUserDeletion(user);
|
||||
}
|
||||
|
||||
@Override
|
||||
@ -190,8 +189,10 @@ public class AccountRemovalWorker extends Worker {
|
||||
});
|
||||
}
|
||||
|
||||
private void deleteAllEntriesForAccountIdentifier(User user) {
|
||||
private void initiateUserDeletion(User user) {
|
||||
if (user.getId() != null) {
|
||||
WebSocketConnectionHelper.deleteExternalSignalingInstanceForUserEntity(user.getId());
|
||||
|
||||
try {
|
||||
arbitraryStorageManager.deleteAllEntriesForAccountIdentifier(user.getId());
|
||||
deleteUser(user);
|
||||
|
Loading…
Reference in New Issue
Block a user