]> nmode's Git Repositories - signal-cli/blob - src/main/java/org/asamk/signal/manager/GroupUtils.java
Reformat project
[signal-cli] / src / main / java / org / asamk / signal / manager / GroupUtils.java
1 package org.asamk.signal.manager;
2
3 import org.asamk.signal.storage.groups.GroupInfo;
4 import org.asamk.signal.storage.groups.GroupInfoV1;
5 import org.asamk.signal.storage.groups.GroupInfoV2;
6 import org.whispersystems.signalservice.api.messages.SignalServiceDataMessage;
7 import org.whispersystems.signalservice.api.messages.SignalServiceGroup;
8 import org.whispersystems.signalservice.api.messages.SignalServiceGroupV2;
9
10 public class GroupUtils {
11
12 public static void setGroupContext(
13 final SignalServiceDataMessage.Builder messageBuilder, final GroupInfo groupInfo
14 ) {
15 if (groupInfo instanceof GroupInfoV1) {
16 SignalServiceGroup group = SignalServiceGroup.newBuilder(SignalServiceGroup.Type.DELIVER)
17 .withId(groupInfo.groupId)
18 .build();
19 messageBuilder.asGroupMessage(group);
20 } else {
21 final GroupInfoV2 groupInfoV2 = (GroupInfoV2) groupInfo;
22 SignalServiceGroupV2 group = SignalServiceGroupV2.newBuilder(groupInfoV2.getMasterKey())
23 .withRevision(groupInfoV2.getGroup() == null ? 0 : groupInfoV2.getGroup().getRevision())
24 .build();
25 messageBuilder.asGroupMessage(group);
26 }
27 }
28 }