X-Git-Url: https://git.nmode.ca/signal-cli/blobdiff_plain/ae41d0c5026fe868c6198e1005344fc78b6e0a2c..cb70209c603e9e1b1c88ee6eefcd64ea6aff9f9d:/src/main/java/org/asamk/signal/json/JsonReceiptMessage.java diff --git a/src/main/java/org/asamk/signal/json/JsonReceiptMessage.java b/src/main/java/org/asamk/signal/json/JsonReceiptMessage.java index 1b896053..7cdd0b6a 100644 --- a/src/main/java/org/asamk/signal/json/JsonReceiptMessage.java +++ b/src/main/java/org/asamk/signal/json/JsonReceiptMessage.java @@ -4,22 +4,18 @@ import org.whispersystems.signalservice.api.messages.SignalServiceReceiptMessage import java.util.List; -class JsonReceiptMessage { +record JsonReceiptMessage(long when, boolean isDelivery, boolean isRead, boolean isViewed, List timestamps) { - long when; - boolean isDelivery; - boolean isRead; - List timestamps; - - JsonReceiptMessage(SignalServiceReceiptMessage receiptMessage) { + 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(); + return new JsonReceiptMessage(when, isDelivery, isRead, isViewed, timestamps); + } - this.when = receiptMessage.getWhen(); - if (receiptMessage.isDeliveryReceipt()) { - this.isDelivery = true; - } - if (receiptMessage.isReadReceipt()) { - this.isRead = true; - } - this.timestamps = receiptMessage.getTimestamps(); + static JsonReceiptMessage deliveryReceipt(final long when, final List timestamps) { + return new JsonReceiptMessage(when, true, false, false, timestamps); } }