]> nmode's Git Repositories - signal-cli/blobdiff - lib/src/main/java/org/asamk/signal/manager/TrustLevel.java
Implement retrieving data from remote storage
[signal-cli] / lib / src / main / java / org / asamk / signal / manager / TrustLevel.java
index c9fa7a5eb007db81cf6266987e8df19145d2fdc7..5c712866228db229dc0503e6f0d2881775e10e4d 100644 (file)
@@ -1,6 +1,7 @@
 package org.asamk.signal.manager;
 
 import org.whispersystems.signalservice.api.messages.multidevice.VerifiedMessage;
+import org.whispersystems.signalservice.internal.storage.protos.ContactRecord;
 
 public enum TrustLevel {
     UNTRUSTED,
@@ -16,6 +17,20 @@ public enum TrustLevel {
         return TrustLevel.cachedValues[i];
     }
 
+    public static TrustLevel fromIdentityState(ContactRecord.IdentityState identityState) {
+        switch (identityState) {
+            case DEFAULT:
+                return TRUSTED_UNVERIFIED;
+            case UNVERIFIED:
+                return UNTRUSTED;
+            case VERIFIED:
+                return TRUSTED_VERIFIED;
+            case UNRECOGNIZED:
+                return null;
+        }
+        throw new RuntimeException("Unknown identity state: " + identityState);
+    }
+
     public static TrustLevel fromVerifiedState(VerifiedMessage.VerifiedState verifiedState) {
         switch (verifiedState) {
             case DEFAULT: