]> nmode's Git Repositories - signal-cli/blobdiff - lib/src/main/java/org/asamk/signal/manager/api/SendMessageResult.java
Add support for invalid pre key failure when sending message
[signal-cli] / lib / src / main / java / org / asamk / signal / manager / api / SendMessageResult.java
index 1507390bba4b1548bd6285b317afaaf8dad8e6ec..4158b60e7dc9336ca896bf8f9401395af1bd0a59 100644 (file)
@@ -2,7 +2,6 @@ package org.asamk.signal.manager.api;
 
 import org.asamk.signal.manager.helper.RecipientAddressResolver;
 import org.asamk.signal.manager.storage.recipients.RecipientResolver;
-import org.signal.libsignal.protocol.IdentityKey;
 
 public record SendMessageResult(
         RecipientAddress address,
@@ -11,29 +10,12 @@ public record SendMessageResult(
         boolean isUnregisteredFailure,
         boolean isIdentityFailure,
         boolean isRateLimitFailure,
-        ProofRequiredException proofRequiredFailure
+        ProofRequiredException proofRequiredFailure,
+        boolean isInvalidPreKeyFailure
 ) {
 
-    public static SendMessageResult success(RecipientAddress address) {
-        return new SendMessageResult(address, true, false, false, false, false, null);
-    }
-
-    public static SendMessageResult networkFailure(RecipientAddress address) {
-        return new SendMessageResult(address, false, true, false, false, false, null);
-    }
-
     public static SendMessageResult unregisteredFailure(RecipientAddress address) {
-        return new SendMessageResult(address, false, false, true, false, false, null);
-    }
-
-    public static SendMessageResult identityFailure(RecipientAddress address, IdentityKey identityKey) {
-        return new SendMessageResult(address, false, false, false, true, false, null);
-    }
-
-    public static SendMessageResult proofRequiredFailure(
-            RecipientAddress address, ProofRequiredException proofRequiredException
-    ) {
-        return new SendMessageResult(address, false, true, false, false, false, proofRequiredException);
+        return new SendMessageResult(address, false, false, true, false, false, null, false);
     }
 
     public static SendMessageResult from(
@@ -50,6 +32,7 @@ public record SendMessageResult(
                 sendMessageResult.getRateLimitFailure() != null || sendMessageResult.getProofRequiredFailure() != null,
                 sendMessageResult.getProofRequiredFailure() == null
                         ? null
-                        : new ProofRequiredException(sendMessageResult.getProofRequiredFailure()));
+                        : new ProofRequiredException(sendMessageResult.getProofRequiredFailure()),
+                sendMessageResult.isInvalidPreKeyFailure());
     }
 }