X-Git-Url: https://git.nmode.ca/signal-cli/blobdiff_plain/5bbfd3259891e18a11cb878e14a9c17990b13d79..30e8e36635733b3e8c75a44e95785ba33cf55e61:/src/main/java/org/asamk/signal/json/JsonSyncReadMessage.java diff --git a/src/main/java/org/asamk/signal/json/JsonSyncReadMessage.java b/src/main/java/org/asamk/signal/json/JsonSyncReadMessage.java index df307b45..50c6ecee 100644 --- a/src/main/java/org/asamk/signal/json/JsonSyncReadMessage.java +++ b/src/main/java/org/asamk/signal/json/JsonSyncReadMessage.java @@ -1,33 +1,19 @@ package org.asamk.signal.json; -import com.fasterxml.jackson.annotation.JsonProperty; - -import org.whispersystems.signalservice.api.messages.multidevice.ReadMessage; +import org.asamk.signal.manager.api.MessageEnvelope; import java.util.UUID; -import static org.asamk.signal.util.Util.getLegacyIdentifier; - -class JsonSyncReadMessage { - - @JsonProperty - @Deprecated - final String sender; - - @JsonProperty - final String senderNumber; - - @JsonProperty - final String senderUuid; - - @JsonProperty - final long timestamp; - - public JsonSyncReadMessage(final ReadMessage readMessage) { - final var sender = readMessage.getSender(); - this.sender = getLegacyIdentifier(sender); - this.senderNumber = sender.getNumber().orNull(); - this.senderUuid = sender.getUuid().transform(UUID::toString).orNull(); - this.timestamp = readMessage.getTimestamp(); +record JsonSyncReadMessage( + @Deprecated String sender, String senderNumber, String senderUuid, long timestamp +) { + + static JsonSyncReadMessage from(MessageEnvelope.Sync.Read readMessage) { + final var senderAddress = readMessage.sender(); + final var sender = senderAddress.getLegacyIdentifier(); + final var senderNumber = senderAddress.number().orElse(null); + final var senderUuid = senderAddress.uuid().map(UUID::toString).orElse(null); + final var timestamp = readMessage.timestamp(); + return new JsonSyncReadMessage(sender, senderNumber, senderUuid, timestamp); } }