]> nmode's Git Repositories - signal-cli/blobdiff - src/main/java/org/asamk/signal/json/JsonMention.java
Implement editing of previous messages
[signal-cli] / src / main / java / org / asamk / signal / json / JsonMention.java
index 806838420d49d244e197a7cd130e7481c35b59bc..c4c962a0be33025bb1a8fda177343ff9477703cc 100644 (file)
@@ -1,22 +1,17 @@
 package org.asamk.signal.json;
 
-import org.asamk.signal.manager.Manager;
-import org.whispersystems.signalservice.api.messages.SignalServiceDataMessage;
-import org.whispersystems.signalservice.api.push.SignalServiceAddress;
+import org.asamk.signal.manager.api.MessageEnvelope;
 
-public class JsonMention {
+import java.util.UUID;
 
-    String name;
-    int start;
-    int length;
-
-    JsonMention(SignalServiceDataMessage.Mention mention, Manager m) {
-        this.name = m.resolveSignalServiceAddress(
-                new SignalServiceAddress(mention.getUuid(), null)
-        ).getLegacyIdentifier();
-        this.start = mention.getStart();
-        this.length = mention.getLength();
+public record JsonMention(@Deprecated String name, String number, String uuid, int start, int length) {
 
+    static JsonMention from(MessageEnvelope.Data.Mention mention) {
+        final var address = mention.recipient();
+        return new JsonMention(address.getLegacyIdentifier(),
+                address.number().orElse(null),
+                address.uuid().map(UUID::toString).orElse(null),
+                mention.start(),
+                mention.length());
     }
-
 }