]> nmode's Git Repositories - signal-cli/blobdiff - src/main/java/org/asamk/signal/json/JsonDataMessage.java
Ignore relay in json output if null
[signal-cli] / src / main / java / org / asamk / signal / json / JsonDataMessage.java
index e755acad3b0ab72d6e094eac3e81bd519acfbd16..1c927b402b02c41687f6456c48493193a33a72d0 100644 (file)
@@ -24,6 +24,10 @@ class JsonDataMessage {
     @JsonProperty
     final Integer expiresInSeconds;
 
+    @JsonProperty
+    @JsonInclude(JsonInclude.Include.NON_NULL)
+    final Boolean viewOnce;
+
     @JsonProperty
     @JsonInclude(JsonInclude.Include.NON_NULL)
     final JsonReaction reaction;
@@ -44,6 +48,10 @@ class JsonDataMessage {
     @JsonInclude(JsonInclude.Include.NON_NULL)
     final JsonSticker sticker;
 
+    @JsonProperty
+    @JsonInclude(JsonInclude.Include.NON_NULL)
+    final JsonRemoteDelete remoteDelete;
+
     @JsonProperty
     @JsonInclude(JsonInclude.Include.NON_NULL)
     final JsonGroupInfo groupInfo;
@@ -66,6 +74,7 @@ class JsonDataMessage {
         }
         this.message = dataMessage.getBody().orNull();
         this.expiresInSeconds = dataMessage.getExpiresInSeconds();
+        this.viewOnce = dataMessage.isViewOnce();
         this.reaction = dataMessage.getReaction().isPresent()
                 ? new JsonReaction(dataMessage.getReaction().get(), m)
                 : null;
@@ -79,6 +88,8 @@ class JsonDataMessage {
         } else {
             this.mentions = List.of();
         }
+        remoteDelete = dataMessage.getRemoteDelete().isPresent() ? new JsonRemoteDelete(dataMessage.getRemoteDelete()
+                .get()) : null;
         if (dataMessage.getAttachments().isPresent()) {
             this.attachments = dataMessage.getAttachments()
                     .get()
@@ -96,6 +107,8 @@ class JsonDataMessage {
         message = messageReceived.getMessage();
         groupInfo = messageReceived.getGroupId().length > 0 ? new JsonGroupInfo(messageReceived.getGroupId()) : null;
         expiresInSeconds = null;
+        viewOnce = null;
+        remoteDelete = null;
         reaction = null;    // TODO Replace these 4 with the proper commands
         quote = null;
         mentions = null;
@@ -108,6 +121,8 @@ class JsonDataMessage {
         message = messageReceived.getMessage();
         groupInfo = messageReceived.getGroupId().length > 0 ? new JsonGroupInfo(messageReceived.getGroupId()) : null;
         expiresInSeconds = null;
+        viewOnce = null;
+        remoteDelete = null;
         reaction = null;    // TODO Replace these 4 with the proper commands
         quote = null;
         mentions = null;