From 46423a341d5462aafc54ac6260b790c7d004819e Mon Sep 17 00:00:00 2001 From: imhao183 Date: Sat, 16 Jan 2021 10:28:44 +0800 Subject: [PATCH] =?UTF-8?q?=E5=88=9B=E5=BB=BA=E7=BE=A4=E7=BB=84=E6=97=B6?= =?UTF-8?q?=EF=BC=8C=E5=BD=93owner=E6=B2=A1=E6=9C=89=E5=8A=A0=E5=85=A5?= =?UTF-8?q?=E5=88=B0=E7=BE=A4=E6=88=90=E5=91=98=E5=88=97=E8=A1=A8=E4=B8=AD?= =?UTF-8?q?=E6=97=B6=EF=BC=8C=E8=87=AA=E5=8A=A8=E5=8A=A0=E5=85=A5=E5=88=B0?= =?UTF-8?q?=E7=BE=A4=E6=88=90=E5=91=98=E5=88=97=E8=A1=A8?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../java/io/moquette/persistence/MemoryMessagesStore.java | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/broker/src/main/java/io/moquette/persistence/MemoryMessagesStore.java b/broker/src/main/java/io/moquette/persistence/MemoryMessagesStore.java index 9d907162..3bb77eac 100755 --- a/broker/src/main/java/io/moquette/persistence/MemoryMessagesStore.java +++ b/broker/src/main/java/io/moquette/persistence/MemoryMessagesStore.java @@ -908,9 +908,11 @@ public class MemoryMessagesStore implements IMessagesStore { } List updatedMemberList = new ArrayList<>(); + boolean hasOwnerMember = false; for (WFCMessage.GroupMember member : memberList) { if (member.getMemberId().equals(owner)) { member = member.toBuilder().setUpdateDt(dt).setCreateDt(dt).setType(ProtoConstants.GroupMemberType.GroupMemberType_Owner).build(); + hasOwnerMember = true; } else { member = member.toBuilder().setUpdateDt(dt).setCreateDt(dt).build(); } @@ -919,6 +921,12 @@ public class MemoryMessagesStore implements IMessagesStore { dt++; } + if(!hasOwnerMember && !StringUtil.isNullOrEmpty(owner)) { + WFCMessage.GroupMember member = WFCMessage.GroupMember.newBuilder().setMemberId(owner).setUpdateDt(dt).setCreateDt(dt).setType(ProtoConstants.GroupMemberType.GroupMemberType_Owner).build(); + groupMembers.put(groupId, member); + updatedMemberList.add(member); + } + groupInfo = groupInfo.toBuilder() .setTargetId(groupId) .setName(groupInfo.getName())