]> nmode's Git Repositories - signal-cli/blobdiff - src/main/java/org/asamk/signal/json/JsonSyncReadMessage.java
Add -c for --config (#816)
[signal-cli] / src / main / java / org / asamk / signal / json / JsonSyncReadMessage.java
index df307b45cbb10f0a9abcc5ff382254e788913b7e..3d04f94df8ec102486be86777f7cd65e9b8d8137 100644 (file)
@@ -1,33 +1,19 @@
 package org.asamk.signal.json;
 
 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 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.getNumber().orElse(null);
+        final var senderUuid = senderAddress.getUuid().map(UUID::toString).orElse(null);
+        final var timestamp = readMessage.timestamp();
+        return new JsonSyncReadMessage(sender, senderNumber, senderUuid, timestamp);
     }
 }
     }
 }