X-Git-Url: https://git.nmode.ca/signal-cli/blobdiff_plain/deb4ecd04fd065cccdda56c4c2ffaf56d5368be9..e3752e733adaad6f04c7d525e1b465a4b46474c7:/lib/src/main/java/org/asamk/signal/manager/HandleAction.java diff --git a/lib/src/main/java/org/asamk/signal/manager/HandleAction.java b/lib/src/main/java/org/asamk/signal/manager/HandleAction.java index ba426fa1..2396df06 100644 --- a/lib/src/main/java/org/asamk/signal/manager/HandleAction.java +++ b/lib/src/main/java/org/asamk/signal/manager/HandleAction.java @@ -1,8 +1,10 @@ package org.asamk.signal.manager; import org.asamk.signal.manager.groups.GroupIdV1; +import org.asamk.signal.manager.storage.recipients.RecipientId; import org.whispersystems.signalservice.api.push.SignalServiceAddress; +import java.util.List; import java.util.Objects; interface HandleAction { @@ -22,7 +24,7 @@ class SendReceiptAction implements HandleAction { @Override public void execute(Manager m) throws Throwable { - m.sendReceipt(address, timestamp); + m.sendDeliveryReceipt(address, List.of(timestamp)); } @Override @@ -160,15 +162,15 @@ class SendGroupInfoAction implements HandleAction { class RetrieveProfileAction implements HandleAction { - private final SignalServiceAddress address; + private final RecipientId recipientId; - public RetrieveProfileAction(final SignalServiceAddress address) { - this.address = address; + public RetrieveProfileAction(final RecipientId recipientId) { + this.recipientId = recipientId; } @Override public void execute(Manager m) throws Throwable { - m.getRecipientProfile(address, true); + m.getRecipientProfile(recipientId, true); } @Override @@ -178,11 +180,40 @@ class RetrieveProfileAction implements HandleAction { final RetrieveProfileAction that = (RetrieveProfileAction) o; - return address.equals(that.address); + return recipientId.equals(that.recipientId); + } + + @Override + public int hashCode() { + 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 address.hashCode(); + return recipientId.hashCode(); } }