diff options
author | desperateCoder <echotodevnull@gmail.com> | 2020-07-03 22:51:15 +0300 |
---|---|---|
committer | desperateCoder <echotodevnull@gmail.com> | 2020-07-03 22:51:15 +0300 |
commit | bcfec955122e7ed6bc9e96e3da8bb029a44c5082 (patch) | |
tree | d03e9f4ea085543b082d5ed3aa149cb0b661ecdb /app/src/main/java/it/niedermann | |
parent | 63e2b7f7bffeb21f6dc55dab24bf48884bd7a36d (diff) |
#561 eliminate duplicate user-search entries
Diffstat (limited to 'app/src/main/java/it/niedermann')
-rw-r--r-- | app/src/main/java/it/niedermann/nextcloud/deck/persistence/sync/adapters/db/util/extrawurst/UserSearchLiveData.java | 14 |
1 files changed, 12 insertions, 2 deletions
diff --git a/app/src/main/java/it/niedermann/nextcloud/deck/persistence/sync/adapters/db/util/extrawurst/UserSearchLiveData.java b/app/src/main/java/it/niedermann/nextcloud/deck/persistence/sync/adapters/db/util/extrawurst/UserSearchLiveData.java index f5c7652bf..1db4f7a94 100644 --- a/app/src/main/java/it/niedermann/nextcloud/deck/persistence/sync/adapters/db/util/extrawurst/UserSearchLiveData.java +++ b/app/src/main/java/it/niedermann/nextcloud/deck/persistence/sync/adapters/db/util/extrawurst/UserSearchLiveData.java @@ -73,7 +73,7 @@ public class UserSearchLiveData extends MediatorLiveData<List<User>> implements } foundOnServer = allFound; DeckLog.info("###DeckUserSearch: posted Server value: "+allFound); - postValue(allFound); + postValue(eliminateDuplicates(allFound)); } @Override @@ -90,8 +90,18 @@ public class UserSearchLiveData extends MediatorLiveData<List<User>> implements if (foundOnServer != null && !foundOnServer.isEmpty()) { users.addAll(foundOnServer); } - postValue(users); + postValue(eliminateDuplicates(users)); DeckLog.info("###DeckUserSearch: posted db-value: "+foundInDB); }); } + private List<User> eliminateDuplicates(List<User> source) { + List<User> retList = new ArrayList<>(source.size()); + // should be enough like this, since the account doesn't matter here, always the same. + for (User user : source) { + if (!retList.contains(user)){ + retList.add(user); + } + } + return retList; + } } |