X-Git-Url: https://git.nmode.ca/signal-cli/blobdiff_plain/ae41d0c5026fe868c6198e1005344fc78b6e0a2c..cd29144e81701698092f3334bee0c99c0f77f202:/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..1199c790 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, false, timestamps); } }