Refactor receive api

This commit is contained in:
AsamK
2021-11-03 20:43:39 +01:00
parent b615a4b04d
commit 9075cc1a30
36 changed files with 1510 additions and 970 deletions

View File

@@ -1,17 +1,17 @@
package org.asamk.signal.json;
import org.whispersystems.signalservice.api.messages.SignalServiceReceiptMessage;
import org.asamk.signal.manager.api.MessageEnvelope;
import java.util.List;
record JsonReceiptMessage(long when, boolean isDelivery, boolean isRead, boolean isViewed, List<Long> timestamps) {
static JsonReceiptMessage from(SignalServiceReceiptMessage receiptMessage) {
final var when = receiptMessage.getWhen();
final var isDelivery = receiptMessage.isDeliveryReceipt();
final var isRead = receiptMessage.isReadReceipt();
final var isViewed = receiptMessage.isViewedReceipt();
final var timestamps = receiptMessage.getTimestamps();
static JsonReceiptMessage from(MessageEnvelope.Receipt receiptMessage) {
final var when = receiptMessage.when();
final var isDelivery = receiptMessage.type() == MessageEnvelope.Receipt.Type.DELIVERY;
final var isRead = receiptMessage.type() == MessageEnvelope.Receipt.Type.READ;
final var isViewed = receiptMessage.type() == MessageEnvelope.Receipt.Type.VIEWED;
final var timestamps = receiptMessage.timestamps();
return new JsonReceiptMessage(when, isDelivery, isRead, isViewed, timestamps);
}