]>
nmode's Git Repositories - signal-cli/blob - lib/src/main/java/org/asamk/signal/manager/storage/groups/GroupInfoV1.java
dbd2dcbba873422296a4ed8f78e803cba297947f
1 package org
.asamk
.signal
.manager
.storage
.groups
;
3 import org
.asamk
.signal
.manager
.groups
.GroupIdV1
;
4 import org
.asamk
.signal
.manager
.groups
.GroupIdV2
;
5 import org
.asamk
.signal
.manager
.groups
.GroupInviteLinkUrl
;
6 import org
.asamk
.signal
.manager
.groups
.GroupPermission
;
7 import org
.asamk
.signal
.manager
.groups
.GroupUtils
;
8 import org
.asamk
.signal
.manager
.storage
.recipients
.RecipientId
;
10 import java
.util
.Collection
;
11 import java
.util
.HashSet
;
14 public class GroupInfoV1
extends GroupInfo
{
16 private final GroupIdV1 groupId
;
18 private GroupIdV2 expectedV2Id
;
22 public Set
<RecipientId
> members
= new HashSet
<>();
24 public int messageExpirationTime
;
25 public boolean blocked
;
26 public boolean archived
;
28 public GroupInfoV1(GroupIdV1 groupId
) {
29 this.groupId
= groupId
;
33 final GroupIdV1 groupId
,
34 final GroupIdV2 expectedV2Id
,
36 final Set
<RecipientId
> members
,
38 final int messageExpirationTime
,
39 final boolean blocked
,
40 final boolean archived
42 this.groupId
= groupId
;
43 this.expectedV2Id
= expectedV2Id
;
45 this.members
= members
;
47 this.messageExpirationTime
= messageExpirationTime
;
48 this.blocked
= blocked
;
49 this.archived
= archived
;
53 public GroupIdV1
getGroupId() {
57 public GroupIdV2
getExpectedV2Id() {
58 if (expectedV2Id
== null) {
59 expectedV2Id
= GroupUtils
.getGroupIdV2(groupId
);
65 public String
getTitle() {
70 public GroupInviteLinkUrl
getGroupInviteLink() {
74 public Set
<RecipientId
> getMembers() {
79 public boolean isBlocked() {
84 public void setBlocked(final boolean blocked
) {
85 this.blocked
= blocked
;
89 public int getMessageExpirationTimer() {
90 return messageExpirationTime
;
94 public boolean isAnnouncementGroup() {
99 public GroupPermission
getPermissionAddMember() {
100 return GroupPermission
.EVERY_MEMBER
;
104 public GroupPermission
getPermissionEditDetails() {
105 return GroupPermission
.EVERY_MEMBER
;
109 public GroupPermission
getPermissionSendMessage() {
110 return GroupPermission
.EVERY_MEMBER
;
113 public void addMembers(Collection
<RecipientId
> members
) {
114 this.members
.addAll(members
);
117 public void removeMember(RecipientId recipientId
) {
118 this.members
.removeIf(member
-> member
.equals(recipientId
));