]> nmode's Git Repositories - signal-cli/blobdiff - src/main/java/org/asamk/signal/manager/Manager.java
Improve user status command
[signal-cli] / src / main / java / org / asamk / signal / manager / Manager.java
index e964d21830694efb7a8ee07d6a5db140bd6a5ad8..9a6afe700b9480093fe74d5bce11fb3e77c05d75 100644 (file)
@@ -394,15 +394,11 @@ public class Manager implements Closeable {
         // Note "contactDetails" has no optionals. It only gives us info on users who are registered
         List<ContactTokenDetails> contactDetails = this.accountManager.getContacts(numbers);
 
-        // Make the initial map with all numbers set to false for now
-        Map<String, Boolean> usersRegistered = numbers.stream().collect(Collectors.toMap(x -> x, x -> false));
+        Set<String> registeredUsers = contactDetails.stream()
+                .map(ContactTokenDetails::getNumber)
+                .collect(Collectors.toSet());
 
-        // Override the contacts we did obtain
-        for (ContactTokenDetails contactDetail : contactDetails) {
-            usersRegistered.put(contactDetail.getNumber(), true);
-        }
-
-        return usersRegistered;
+        return numbers.stream().collect(Collectors.toMap(x -> x, registeredUsers::contains));
     }
 
     public void register(boolean voiceVerification, String captcha) throws IOException {
@@ -524,8 +520,7 @@ public class Manager implements Closeable {
     }
 
     public void verifyAccount(
-            String verificationCode,
-            String pin
+            String verificationCode, String pin
     ) throws IOException, KeyBackupSystemNoDataException, KeyBackupServicePinException {
         verificationCode = verificationCode.replace("-", "");
         account.setSignalingKey(KeyUtils.createSignalingKey());