]> nmode's Git Repositories - signal-cli/blobdiff - src/main/java/org/asamk/signal/JsonDbusReceiveMessageHandler.java
Make fields in json classes final and omit unnecessary nulls when serializing
[signal-cli] / src / main / java / org / asamk / signal / JsonDbusReceiveMessageHandler.java
index 41b91a4869714ff7ea8733a635c101c1fee2d556..0cffd7b1dce73be67eb9b21ea655b70e846badc5 100644 (file)
@@ -1,8 +1,8 @@
 package org.asamk.signal;
 
 import org.asamk.Signal;
-import org.asamk.signal.manager.GroupUtils;
 import org.asamk.signal.manager.Manager;
+import org.asamk.signal.manager.groups.GroupUtils;
 import org.freedesktop.dbus.connections.impl.DBusConnection;
 import org.freedesktop.dbus.exceptions.DBusException;
 import org.whispersystems.signalservice.api.messages.SignalServiceAttachment;
@@ -65,7 +65,7 @@ public class JsonDbusReceiveMessageHandler extends JsonReceiveMessageHandler {
             } else if (content.getDataMessage().isPresent()) {
                 SignalServiceDataMessage message = content.getDataMessage().get();
 
-                byte[] groupId = getGroupId(m, message);
+                byte[] groupId = getGroupId(message);
                 if (!message.isEndSession() && (
                         groupId == null
                                 || message.getGroupContext().get().getGroupV1Type() == null
@@ -91,7 +91,7 @@ public class JsonDbusReceiveMessageHandler extends JsonReceiveMessageHandler {
                             .getGroupContext()
                             .isPresent()) {
                         SignalServiceDataMessage message = transcript.getMessage();
-                        byte[] groupId = getGroupId(m, message);
+                        byte[] groupId = getGroupId(message);
 
                         try {
                             conn.sendMessage(new Signal.SyncMessageReceived(objectPath,
@@ -112,20 +112,9 @@ public class JsonDbusReceiveMessageHandler extends JsonReceiveMessageHandler {
         }
     }
 
-    private static byte[] getGroupId(final Manager m, final SignalServiceDataMessage message) {
-        byte[] groupId;
-        if (message.getGroupContext().isPresent()) {
-            if (message.getGroupContext().get().getGroupV1().isPresent()) {
-                groupId = message.getGroupContext().get().getGroupV1().get().getGroupId();
-            } else if (message.getGroupContext().get().getGroupV2().isPresent()) {
-                groupId = GroupUtils.getGroupId(message.getGroupContext().get().getGroupV2().get().getMasterKey());
-            } else {
-                groupId = null;
-            }
-        } else {
-            groupId = null;
-        }
-        return groupId;
+    private static byte[] getGroupId(final SignalServiceDataMessage message) {
+        return message.getGroupContext().isPresent() ? GroupUtils.getGroupId(message.getGroupContext().get())
+                .serialize() : null;
     }
 
     static private List<String> getAttachments(SignalServiceDataMessage message, Manager m) {