]> nmode's Git Repositories - signal-cli/blob - src/main/java/org/asamk/signal/storage/groups/GroupInfo.java
96147fe3e76b529ca08bd0006c0c6ae40f81066c
[signal-cli] / src / main / java / org / asamk / signal / storage / groups / GroupInfo.java
1 package org.asamk.signal.storage.groups;
2
3 import com.fasterxml.jackson.annotation.JsonIgnore;
4 import com.fasterxml.jackson.annotation.JsonProperty;
5
6 import java.util.Collection;
7 import java.util.HashSet;
8 import java.util.Set;
9
10 public class GroupInfo {
11 @JsonProperty
12 public final byte[] groupId;
13
14 @JsonProperty
15 public String name;
16
17 @JsonProperty
18 public Set<String> members = new HashSet<>();
19
20 private long avatarId;
21
22 @JsonIgnore
23 public long getAvatarId() {
24 return avatarId;
25 }
26
27 @JsonProperty
28 public boolean active;
29
30 @JsonProperty
31 public String color;
32
33 public GroupInfo(byte[] groupId) {
34 this.groupId = groupId;
35 }
36
37 public GroupInfo(@JsonProperty("groupId") byte[] groupId, @JsonProperty("name") String name, @JsonProperty("members") Collection<String> members, @JsonProperty("avatarId") long avatarId, @JsonProperty("color") String color) {
38 this.groupId = groupId;
39 this.name = name;
40 this.members.addAll(members);
41 this.avatarId = avatarId;
42 this.color = color;
43 }
44 }