GroupPermission addMemberPermission,
GroupPermission editDetailsPermission,
File avatarFile,
- Integer expirationTimer
+ Integer expirationTimer,
+ Boolean isAnnouncementGroup
) throws IOException, GroupNotFoundException, AttachmentInvalidException, InvalidNumberException, NotAGroupMemberException {
return updateGroup(groupId,
name,
addMemberPermission,
editDetailsPermission,
avatarFile,
- expirationTimer);
+ expirationTimer,
+ isAnnouncementGroup);
}
private Pair<Long, List<SendMessageResult>> updateGroup(
final GroupPermission addMemberPermission,
final GroupPermission editDetailsPermission,
final File avatarFile,
- final Integer expirationTimer
+ final Integer expirationTimer,
+ final Boolean isAnnouncementGroup
) throws IOException, GroupNotFoundException, AttachmentInvalidException, NotAGroupMemberException {
var group = getGroupForUpdating(groupId);
addMemberPermission,
editDetailsPermission,
avatarFile,
- expirationTimer);
+ expirationTimer,
+ isAnnouncementGroup);
} catch (ConflictException e) {
// Detected conflicting update, refreshing group and trying again
group = getGroup(groupId, true);
addMemberPermission,
editDetailsPermission,
avatarFile,
- expirationTimer);
+ expirationTimer,
+ isAnnouncementGroup);
}
}
final GroupPermission addMemberPermission,
final GroupPermission editDetailsPermission,
final File avatarFile,
- Integer expirationTimer
+ final Integer expirationTimer,
+ final Boolean isAnnouncementGroup
) throws IOException {
Pair<Long, List<SendMessageResult>> result = null;
if (group.isPendingMember(account.getSelfRecipientId())) {
result = sendUpdateGroupV2Message(group, groupGroupChangePair.first(), groupGroupChangePair.second());
}
+ if (isAnnouncementGroup != null) {
+ var groupGroupChangePair = groupV2Helper.setIsAnnouncementGroup(group, isAnnouncementGroup);
+ result = sendUpdateGroupV2Message(group, groupGroupChangePair.first(), groupGroupChangePair.second());
+ }
+
if (name != null || description != null || avatarFile != null) {
var groupGroupChangePair = groupV2Helper.updateGroup(group, name, description, avatarFile);
if (avatarFile != null) {