]> nmode's Git Repositories - signal-cli/blobdiff - src/main/java/org/asamk/signal/json/JsonDataMessage.java
Update libsignal-service-java
[signal-cli] / src / main / java / org / asamk / signal / json / JsonDataMessage.java
index d89c7d0584aba19d164a885960cf0b35dbfa83d3..6da7145a9ffbf66cd7eba432966fb6cd65200a26 100644 (file)
@@ -5,7 +5,6 @@ import com.fasterxml.jackson.annotation.JsonInclude;
 import org.asamk.signal.manager.api.MessageEnvelope;
 
 import java.util.List;
 import org.asamk.signal.manager.api.MessageEnvelope;
 
 import java.util.List;
-import java.util.stream.Collectors;
 
 record JsonDataMessage(
         long timestamp,
 
 record JsonDataMessage(
         long timestamp,
@@ -16,17 +15,23 @@ record JsonDataMessage(
         @JsonInclude(JsonInclude.Include.NON_NULL) JsonQuote quote,
         @JsonInclude(JsonInclude.Include.NON_NULL) JsonPayment payment,
         @JsonInclude(JsonInclude.Include.NON_NULL) List<JsonMention> mentions,
         @JsonInclude(JsonInclude.Include.NON_NULL) JsonQuote quote,
         @JsonInclude(JsonInclude.Include.NON_NULL) JsonPayment payment,
         @JsonInclude(JsonInclude.Include.NON_NULL) List<JsonMention> mentions,
+        @JsonInclude(JsonInclude.Include.NON_NULL) List<JsonPreview> previews,
         @JsonInclude(JsonInclude.Include.NON_NULL) List<JsonAttachment> attachments,
         @JsonInclude(JsonInclude.Include.NON_NULL) JsonSticker sticker,
         @JsonInclude(JsonInclude.Include.NON_NULL) JsonRemoteDelete remoteDelete,
         @JsonInclude(JsonInclude.Include.NON_NULL) List<JsonSharedContact> contacts,
         @JsonInclude(JsonInclude.Include.NON_NULL) List<JsonAttachment> attachments,
         @JsonInclude(JsonInclude.Include.NON_NULL) JsonSticker sticker,
         @JsonInclude(JsonInclude.Include.NON_NULL) JsonRemoteDelete remoteDelete,
         @JsonInclude(JsonInclude.Include.NON_NULL) List<JsonSharedContact> contacts,
-        @JsonInclude(JsonInclude.Include.NON_NULL) JsonGroupInfo groupInfo
+        @JsonInclude(JsonInclude.Include.NON_NULL) List<JsonTextStyle> textStyles,
+        @JsonInclude(JsonInclude.Include.NON_NULL) JsonGroupInfo groupInfo,
+        @JsonInclude(JsonInclude.Include.NON_NULL) JsonStoryContext storyContext
 ) {
 
     static JsonDataMessage from(MessageEnvelope.Data dataMessage) {
         final var timestamp = dataMessage.timestamp();
         final var groupInfo = dataMessage.groupContext().isPresent() ? JsonGroupInfo.from(dataMessage.groupContext()
                 .get()) : null;
 ) {
 
     static JsonDataMessage from(MessageEnvelope.Data dataMessage) {
         final var timestamp = dataMessage.timestamp();
         final var groupInfo = dataMessage.groupContext().isPresent() ? JsonGroupInfo.from(dataMessage.groupContext()
                 .get()) : null;
+        final var storyContext = dataMessage.storyContext().isPresent()
+                ? JsonStoryContext.from(dataMessage.storyContext().get())
+                : null;
         final var message = dataMessage.body().orElse(null);
         final var expiresInSeconds = dataMessage.expiresInSeconds();
         final var viewOnce = dataMessage.isViewOnce();
         final var message = dataMessage.body().orElse(null);
         final var expiresInSeconds = dataMessage.expiresInSeconds();
         final var viewOnce = dataMessage.isViewOnce();
@@ -36,20 +41,28 @@ record JsonDataMessage(
         final var mentions = dataMessage.mentions().size() > 0 ? dataMessage.mentions()
                 .stream()
                 .map(JsonMention::from)
         final var mentions = dataMessage.mentions().size() > 0 ? dataMessage.mentions()
                 .stream()
                 .map(JsonMention::from)
-                .collect(Collectors.toList()) : null;
+                .toList() : null;
+        final var previews = dataMessage.previews().size() > 0 ? dataMessage.previews()
+                .stream()
+                .map(JsonPreview::from)
+                .toList() : null;
         final var remoteDelete = dataMessage.remoteDeleteId().isPresent()
                 ? new JsonRemoteDelete(dataMessage.remoteDeleteId().get())
                 : null;
         final var attachments = dataMessage.attachments().size() > 0 ? dataMessage.attachments()
                 .stream()
                 .map(JsonAttachment::from)
         final var remoteDelete = dataMessage.remoteDeleteId().isPresent()
                 ? new JsonRemoteDelete(dataMessage.remoteDeleteId().get())
                 : null;
         final var attachments = dataMessage.attachments().size() > 0 ? dataMessage.attachments()
                 .stream()
                 .map(JsonAttachment::from)
-                .collect(Collectors.toList()) : null;
+                .toList() : null;
         final var sticker = dataMessage.sticker().isPresent() ? JsonSticker.from(dataMessage.sticker().get()) : null;
         final var sticker = dataMessage.sticker().isPresent() ? JsonSticker.from(dataMessage.sticker().get()) : null;
-
         final var contacts = dataMessage.sharedContacts().size() > 0 ? dataMessage.sharedContacts()
                 .stream()
                 .map(JsonSharedContact::from)
         final var contacts = dataMessage.sharedContacts().size() > 0 ? dataMessage.sharedContacts()
                 .stream()
                 .map(JsonSharedContact::from)
-                .collect(Collectors.toList()) : null;
+                .toList() : null;
+        final var textStyles = dataMessage.textStyles().size() > 0 ? dataMessage.textStyles()
+                .stream()
+                .map(JsonTextStyle::from)
+                .toList() : null;
+
         return new JsonDataMessage(timestamp,
                 message,
                 expiresInSeconds,
         return new JsonDataMessage(timestamp,
                 message,
                 expiresInSeconds,
@@ -58,10 +71,13 @@ record JsonDataMessage(
                 quote,
                 payment,
                 mentions,
                 quote,
                 payment,
                 mentions,
+                previews,
                 attachments,
                 sticker,
                 remoteDelete,
                 contacts,
                 attachments,
                 sticker,
                 remoteDelete,
                 contacts,
-                groupInfo);
+                textStyles,
+                groupInfo,
+                storyContext);
     }
 }
     }
 }