]> nmode's Git Repositories - signal-cli/blobdiff - lib/src/main/java/org/asamk/signal/manager/helper/GroupHelper.java
Extract ContactHelper and IncomingMessageHandler
[signal-cli] / lib / src / main / java / org / asamk / signal / manager / helper / GroupHelper.java
index 5566d9d7ede254910ca2a4bd2f67bcacdcd6dab1..3ddd6eddeaf942b783d2927170c89044c72687ca 100644 (file)
@@ -91,6 +91,11 @@ public class GroupHelper {
         return getGroup(groupId, false);
     }
 
+    public boolean isGroupBlocked(final GroupId groupId) {
+        var group = getGroup(groupId);
+        return group != null && group.isBlocked();
+    }
+
     public void downloadGroupAvatar(GroupIdV1 groupId, SignalServiceAttachment avatar) {
         try {
             avatarStore.storeGroupAvatar(groupId,
@@ -300,6 +305,16 @@ public class GroupHelper {
         avatarStore.deleteGroupAvatar(groupId);
     }
 
+    public void setGroupBlocked(final GroupId groupId, final boolean blocked) throws GroupNotFoundException {
+        var group = getGroup(groupId);
+        if (group == null) {
+            throw new GroupNotFoundException(groupId);
+        }
+
+        group.setBlocked(blocked);
+        account.getGroupStore().updateGroup(group);
+    }
+
     public SendGroupMessageResults sendGroupInfoRequest(
             GroupIdV1 groupId, RecipientId recipientId
     ) throws IOException {