]> nmode's Git Repositories - signal-cli/blob - lib/src/main/java/org/asamk/signal/manager/actions/SendReceiptAction.java
Implement startLink and finishLink for jsonrpc daemon
[signal-cli] / lib / src / main / java / org / asamk / signal / manager / actions / SendReceiptAction.java
1 package org.asamk.signal.manager.actions;
2
3 import org.asamk.signal.manager.jobs.Context;
4 import org.asamk.signal.manager.storage.recipients.RecipientId;
5
6 import java.util.List;
7 import java.util.Objects;
8
9 public class SendReceiptAction implements HandleAction {
10
11 private final RecipientId recipientId;
12 private final long timestamp;
13
14 public SendReceiptAction(final RecipientId recipientId, final long timestamp) {
15 this.recipientId = recipientId;
16 this.timestamp = timestamp;
17 }
18
19 @Override
20 public void execute(Context context) throws Throwable {
21 context.getSendHelper().sendDeliveryReceipt(recipientId, List.of(timestamp));
22 }
23
24 @Override
25 public boolean equals(final Object o) {
26 if (this == o) return true;
27 if (o == null || getClass() != o.getClass()) return false;
28 final var that = (SendReceiptAction) o;
29 return timestamp == that.timestamp && recipientId.equals(that.recipientId);
30 }
31
32 @Override
33 public int hashCode() {
34 return Objects.hash(recipientId, timestamp);
35 }
36 }