]> nmode's Git Repositories - signal-cli/blobdiff - lib/src/main/java/org/asamk/signal/manager/HandleAction.java
Renew session if message decryption fails with ProtocolInvalidMessageException
[signal-cli] / lib / src / main / java / org / asamk / signal / manager / HandleAction.java
index 7fb80c34812a6d5197389b5a318de8ec72a56261..08f51590308666ea4bbb8af2600c0c81fda59937 100644 (file)
@@ -187,3 +187,32 @@ class RetrieveProfileAction implements HandleAction {
         return recipientId.hashCode();
     }
 }
+
+class RenewSessionAction implements HandleAction {
+
+    private final RecipientId recipientId;
+
+    public RenewSessionAction(final RecipientId recipientId) {
+        this.recipientId = recipientId;
+    }
+
+    @Override
+    public void execute(Manager m) throws Throwable {
+        m.renewSession(recipientId);
+    }
+
+    @Override
+    public boolean equals(final Object o) {
+        if (this == o) return true;
+        if (o == null || getClass() != o.getClass()) return false;
+
+        final RenewSessionAction that = (RenewSessionAction) o;
+
+        return recipientId.equals(that.recipientId);
+    }
+
+    @Override
+    public int hashCode() {
+        return recipientId.hashCode();
+    }
+}