]> nmode's Git Repositories - signal-cli/blobdiff - src/main/java/org/asamk/signal/json/JsonReaction.java
Update libsignal-service-java
[signal-cli] / src / main / java / org / asamk / signal / json / JsonReaction.java
index 5e978fe09adbe0bd2dd2e15d1fe6468816c2af1f..cc80ee84eb3ac89dde1c459fb69371a325a079fc 100644 (file)
@@ -1,18 +1,39 @@
 package org.asamk.signal.json;
 
+import com.fasterxml.jackson.annotation.JsonProperty;
+
 import org.asamk.signal.manager.Manager;
 import org.whispersystems.signalservice.api.messages.SignalServiceDataMessage.Reaction;
 
+import static org.asamk.signal.util.Util.getLegacyIdentifier;
+
 public class JsonReaction {
 
-    String emoji;
-    String targetAuthor;
-    long targetSentTimestamp;
-    boolean isRemove;
+    @JsonProperty
+    final String emoji;
+
+    @JsonProperty
+    @Deprecated
+    final String targetAuthor;
+
+    @JsonProperty
+    final String targetAuthorNumber;
+
+    @JsonProperty
+    final String targetAuthorUuid;
+
+    @JsonProperty
+    final long targetSentTimestamp;
+
+    @JsonProperty
+    final boolean isRemove;
 
     JsonReaction(Reaction reaction, Manager m) {
         this.emoji = reaction.getEmoji();
-        this.targetAuthor = m.resolveSignalServiceAddress(reaction.getTargetAuthor()).getLegacyIdentifier();
+        final var address = m.resolveSignalServiceAddress(reaction.getTargetAuthor());
+        this.targetAuthor = getLegacyIdentifier(address);
+        this.targetAuthorNumber = address.getNumber().orNull();
+        this.targetAuthorUuid = address.getUuid().toString();
         this.targetSentTimestamp = reaction.getTargetSentTimestamp();
         this.isRemove = reaction.isRemove();
     }