Add admin flag for all handler
This commit is contained in:
@@ -21,7 +21,7 @@ import static win.liyufan.im.IMTopic.HandleFriendRequestTopic;
|
|||||||
@Handler(IMTopic.AddFriendRequestTopic)
|
@Handler(IMTopic.AddFriendRequestTopic)
|
||||||
public class AddFriendHandler extends GroupHandler<WFCMessage.AddFriendRequest> {
|
public class AddFriendHandler extends GroupHandler<WFCMessage.AddFriendRequest> {
|
||||||
@Override
|
@Override
|
||||||
public ErrorCode action(ByteBuf ackPayload, String clientID, String fromUser, WFCMessage.AddFriendRequest request, Qos1PublishHandler.IMCallback callback) {
|
public ErrorCode action(ByteBuf ackPayload, String clientID, String fromUser, boolean isAdmin, WFCMessage.AddFriendRequest request, Qos1PublishHandler.IMCallback callback) {
|
||||||
long[] head = new long[1];
|
long[] head = new long[1];
|
||||||
ErrorCode errorCode = m_messagesStore.saveAddFriendRequest(fromUser, request, head);
|
ErrorCode errorCode = m_messagesStore.saveAddFriendRequest(fromUser, request, head);
|
||||||
if (errorCode == ERROR_CODE_SUCCESS) {
|
if (errorCode == ERROR_CODE_SUCCESS) {
|
||||||
|
|||||||
@@ -22,7 +22,7 @@ import static win.liyufan.im.ErrorCode.ERROR_CODE_SUCCESS;
|
|||||||
public class AddGroupMember extends GroupHandler<WFCMessage.AddGroupMemberRequest> {
|
public class AddGroupMember extends GroupHandler<WFCMessage.AddGroupMemberRequest> {
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public ErrorCode action(ByteBuf ackPayload, String clientID, String fromUser, WFCMessage.AddGroupMemberRequest request, Qos1PublishHandler.IMCallback callback) {
|
public ErrorCode action(ByteBuf ackPayload, String clientID, String fromUser, boolean isAdmin, WFCMessage.AddGroupMemberRequest request, Qos1PublishHandler.IMCallback callback) {
|
||||||
ErrorCode errorCode = m_messagesStore.addGroupMembers(fromUser, request.getGroupId(), request.getAddedMemberList());
|
ErrorCode errorCode = m_messagesStore.addGroupMembers(fromUser, request.getGroupId(), request.getAddedMemberList());
|
||||||
if (errorCode == ERROR_CODE_SUCCESS) {
|
if (errorCode == ERROR_CODE_SUCCESS) {
|
||||||
if (request.hasNotifyContent() && request.getNotifyContent().getType() > 0) {
|
if (request.hasNotifyContent() && request.getNotifyContent().getType() > 0) {
|
||||||
|
|||||||
@@ -19,7 +19,7 @@ import static win.liyufan.im.ErrorCode.ERROR_CODE_SUCCESS;
|
|||||||
@Handler(IMTopic.BlackListUserTopic)
|
@Handler(IMTopic.BlackListUserTopic)
|
||||||
public class BlackListRequestHandler extends GroupHandler<WFCMessage.BlackUserRequest> {
|
public class BlackListRequestHandler extends GroupHandler<WFCMessage.BlackUserRequest> {
|
||||||
@Override
|
@Override
|
||||||
public ErrorCode action(ByteBuf ackPayload, String clientID, String fromUser, WFCMessage.BlackUserRequest request, Qos1PublishHandler.IMCallback callback) {
|
public ErrorCode action(ByteBuf ackPayload, String clientID, String fromUser, boolean isAdmin, WFCMessage.BlackUserRequest request, Qos1PublishHandler.IMCallback callback) {
|
||||||
long[] head = new long[1];
|
long[] head = new long[1];
|
||||||
ErrorCode errorCode = m_messagesStore.blackUserRequest(fromUser, request.getUid(), request.getStatus(), head);
|
ErrorCode errorCode = m_messagesStore.blackUserRequest(fromUser, request.getUid(), request.getStatus(), head);
|
||||||
if (errorCode == ERROR_CODE_SUCCESS) {
|
if (errorCode == ERROR_CODE_SUCCESS) {
|
||||||
|
|||||||
@@ -23,7 +23,7 @@ import static win.liyufan.im.UserSettingScope.kUserSettingListenedChannels;
|
|||||||
public class ChannelListenMember extends IMHandler<WFCMessage.ListenChannel> {
|
public class ChannelListenMember extends IMHandler<WFCMessage.ListenChannel> {
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public ErrorCode action(ByteBuf ackPayload, String clientID, String fromUser, WFCMessage.ListenChannel request, Qos1PublishHandler.IMCallback callback) {
|
public ErrorCode action(ByteBuf ackPayload, String clientID, String fromUser, boolean isAdmin, WFCMessage.ListenChannel request, Qos1PublishHandler.IMCallback callback) {
|
||||||
ErrorCode errorCode = m_messagesStore.listenChannel(fromUser, request.getChannelId(), request.getListen()>0);
|
ErrorCode errorCode = m_messagesStore.listenChannel(fromUser, request.getChannelId(), request.getListen()>0);
|
||||||
if (errorCode == ErrorCode.ERROR_CODE_SUCCESS) {
|
if (errorCode == ErrorCode.ERROR_CODE_SUCCESS) {
|
||||||
WFCMessage.ModifyUserSettingReq modifyUserSettingReq = WFCMessage.ModifyUserSettingReq.newBuilder().setScope(kUserSettingListenedChannels).setKey(request.getChannelId()).setValue(request.getListen() > 0 ? "1" : "0").build();
|
WFCMessage.ModifyUserSettingReq modifyUserSettingReq = WFCMessage.ModifyUserSettingReq.newBuilder().setScope(kUserSettingListenedChannels).setKey(request.getChannelId()).setValue(request.getListen() > 0 ? "1" : "0").build();
|
||||||
|
|||||||
@@ -19,7 +19,7 @@ import java.util.List;
|
|||||||
@Handler(IMTopic.ChannelSearchTopic)
|
@Handler(IMTopic.ChannelSearchTopic)
|
||||||
public class ChannelSearchHandler extends IMHandler<WFCMessage.SearchUserRequest> {
|
public class ChannelSearchHandler extends IMHandler<WFCMessage.SearchUserRequest> {
|
||||||
@Override
|
@Override
|
||||||
public ErrorCode action(ByteBuf ackPayload, String clientID, String fromUser, WFCMessage.SearchUserRequest request, Qos1PublishHandler.IMCallback callback) {
|
public ErrorCode action(ByteBuf ackPayload, String clientID, String fromUser, boolean isAdmin, WFCMessage.SearchUserRequest request, Qos1PublishHandler.IMCallback callback) {
|
||||||
List<WFCMessage.ChannelInfo> users = m_messagesStore.searchChannel(request.getKeyword(), request.getFuzzy() > 0, request.getPage());
|
List<WFCMessage.ChannelInfo> users = m_messagesStore.searchChannel(request.getKeyword(), request.getFuzzy() > 0, request.getPage());
|
||||||
WFCMessage.SearchChannelResult.Builder builder = WFCMessage.SearchChannelResult.newBuilder();
|
WFCMessage.SearchChannelResult.Builder builder = WFCMessage.SearchChannelResult.newBuilder();
|
||||||
builder.addAllChannel(users);
|
builder.addAllChannel(users);
|
||||||
|
|||||||
@@ -25,7 +25,7 @@ import static win.liyufan.im.UserSettingScope.kUserSettingMyChannels;
|
|||||||
@Handler(value = IMTopic.CreateChannelTopic)
|
@Handler(value = IMTopic.CreateChannelTopic)
|
||||||
public class CreateChannelHandler extends GroupHandler<WFCMessage.ChannelInfo> {
|
public class CreateChannelHandler extends GroupHandler<WFCMessage.ChannelInfo> {
|
||||||
@Override
|
@Override
|
||||||
public ErrorCode action(ByteBuf ackPayload, String clientID, String fromUser, WFCMessage.ChannelInfo request, Qos1PublishHandler.IMCallback callback) {
|
public ErrorCode action(ByteBuf ackPayload, String clientID, String fromUser, boolean isAdmin, WFCMessage.ChannelInfo request, Qos1PublishHandler.IMCallback callback) {
|
||||||
WFCMessage.ChannelInfo.Builder builder = request.toBuilder();
|
WFCMessage.ChannelInfo.Builder builder = request.toBuilder();
|
||||||
if (StringUtil.isNullOrEmpty(request.getTargetId())) {
|
if (StringUtil.isNullOrEmpty(request.getTargetId())) {
|
||||||
builder.setTargetId(m_messagesStore.getShortUUID());
|
builder.setTargetId(m_messagesStore.getShortUUID());
|
||||||
|
|||||||
@@ -21,7 +21,7 @@ import static io.moquette.BrokerConstants.MESSAGE_CONTENT_TYPE_CREATE_GROUP;
|
|||||||
@Handler(value = IMTopic.CreateGroupTopic)
|
@Handler(value = IMTopic.CreateGroupTopic)
|
||||||
public class CreateGroupHandler extends GroupHandler<WFCMessage.CreateGroupRequest> {
|
public class CreateGroupHandler extends GroupHandler<WFCMessage.CreateGroupRequest> {
|
||||||
@Override
|
@Override
|
||||||
public ErrorCode action(ByteBuf ackPayload, String clientID, String fromUser, WFCMessage.CreateGroupRequest request, Qos1PublishHandler.IMCallback callback) {
|
public ErrorCode action(ByteBuf ackPayload, String clientID, String fromUser, boolean isAdmin, WFCMessage.CreateGroupRequest request, Qos1PublishHandler.IMCallback callback) {
|
||||||
WFCMessage.GroupInfo groupInfo = m_messagesStore.createGroup(fromUser, request.getGroup().getGroupInfo(), request.getGroup().getMembersList());
|
WFCMessage.GroupInfo groupInfo = m_messagesStore.createGroup(fromUser, request.getGroup().getGroupInfo(), request.getGroup().getMembersList());
|
||||||
if (groupInfo != null) {
|
if (groupInfo != null) {
|
||||||
if(request.hasNotifyContent() && request.getNotifyContent().getType() > 0) {
|
if(request.hasNotifyContent() && request.getNotifyContent().getType() > 0) {
|
||||||
|
|||||||
@@ -17,7 +17,7 @@ import win.liyufan.im.IMTopic;
|
|||||||
@Handler(IMTopic.DeleteFriendTopic)
|
@Handler(IMTopic.DeleteFriendTopic)
|
||||||
public class DeleteFriendHandler extends IMHandler<WFCMessage.IDBuf> {
|
public class DeleteFriendHandler extends IMHandler<WFCMessage.IDBuf> {
|
||||||
@Override
|
@Override
|
||||||
public ErrorCode action(ByteBuf ackPayload, String clientID, String fromUser, WFCMessage.IDBuf request, Qos1PublishHandler.IMCallback callback) {
|
public ErrorCode action(ByteBuf ackPayload, String clientID, String fromUser, boolean isAdmin, WFCMessage.IDBuf request, Qos1PublishHandler.IMCallback callback) {
|
||||||
return m_messagesStore.deleteFriend(fromUser, request.getId());
|
return m_messagesStore.deleteFriend(fromUser, request.getId());
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -20,7 +20,7 @@ import static win.liyufan.im.IMTopic.DismissGroupTopic;
|
|||||||
@Handler(value = DismissGroupTopic)
|
@Handler(value = DismissGroupTopic)
|
||||||
public class DismissGroupHandler extends GroupHandler<WFCMessage.DismissGroupRequest> {
|
public class DismissGroupHandler extends GroupHandler<WFCMessage.DismissGroupRequest> {
|
||||||
@Override
|
@Override
|
||||||
public ErrorCode action(ByteBuf ackPayload, String clientID, String fromUser, WFCMessage.DismissGroupRequest request, Qos1PublishHandler.IMCallback callback) {
|
public ErrorCode action(ByteBuf ackPayload, String clientID, String fromUser, boolean isAdmin, WFCMessage.DismissGroupRequest request, Qos1PublishHandler.IMCallback callback) {
|
||||||
WFCMessage.GroupInfo groupInfo = m_messagesStore.getGroupInfo(request.getGroupId());
|
WFCMessage.GroupInfo groupInfo = m_messagesStore.getGroupInfo(request.getGroupId());
|
||||||
ErrorCode errorCode;
|
ErrorCode errorCode;
|
||||||
if (groupInfo == null) {
|
if (groupInfo == null) {
|
||||||
|
|||||||
@@ -20,7 +20,7 @@ import static win.liyufan.im.UserSettingScope.kUserSettingMyChannels;
|
|||||||
@Handler(value = IMTopic.DestoryChannelInfoTopic)
|
@Handler(value = IMTopic.DestoryChannelInfoTopic)
|
||||||
public class DistoryChannelHandler extends GroupHandler<WFCMessage.IDBuf> {
|
public class DistoryChannelHandler extends GroupHandler<WFCMessage.IDBuf> {
|
||||||
@Override
|
@Override
|
||||||
public ErrorCode action(ByteBuf ackPayload, String clientID, String fromUser, WFCMessage.IDBuf request, Qos1PublishHandler.IMCallback callback) {
|
public ErrorCode action(ByteBuf ackPayload, String clientID, String fromUser, boolean isAdmin, WFCMessage.IDBuf request, Qos1PublishHandler.IMCallback callback) {
|
||||||
ErrorCode errorCode = m_messagesStore.distoryChannel(fromUser, request.getId());
|
ErrorCode errorCode = m_messagesStore.distoryChannel(fromUser, request.getId());
|
||||||
if (errorCode == ErrorCode.ERROR_CODE_SUCCESS) {
|
if (errorCode == ErrorCode.ERROR_CODE_SUCCESS) {
|
||||||
WFCMessage.ModifyUserSettingReq modifyUserSettingReq = WFCMessage.ModifyUserSettingReq.newBuilder().setScope(kUserSettingMyChannels).setKey(request.getId()).setValue("0").build();
|
WFCMessage.ModifyUserSettingReq modifyUserSettingReq = WFCMessage.ModifyUserSettingReq.newBuilder().setScope(kUserSettingMyChannels).setKey(request.getId()).setValue("0").build();
|
||||||
|
|||||||
@@ -20,7 +20,7 @@ import java.util.List;
|
|||||||
@Handler(IMTopic.FriendPullTopic)
|
@Handler(IMTopic.FriendPullTopic)
|
||||||
public class FriendPullHandler extends IMHandler<WFCMessage.Version> {
|
public class FriendPullHandler extends IMHandler<WFCMessage.Version> {
|
||||||
@Override
|
@Override
|
||||||
public ErrorCode action(ByteBuf ackPayload, String clientID, String fromUser, WFCMessage.Version request, Qos1PublishHandler.IMCallback callback) {
|
public ErrorCode action(ByteBuf ackPayload, String clientID, String fromUser, boolean isAdmin, WFCMessage.Version request, Qos1PublishHandler.IMCallback callback) {
|
||||||
List<FriendData> friendDatas = m_messagesStore.getFriendList(fromUser, request.getVersion());
|
List<FriendData> friendDatas = m_messagesStore.getFriendList(fromUser, request.getVersion());
|
||||||
WFCMessage.GetFriendsResult.Builder builder = WFCMessage.GetFriendsResult.newBuilder();
|
WFCMessage.GetFriendsResult.Builder builder = WFCMessage.GetFriendsResult.newBuilder();
|
||||||
for (FriendData data : friendDatas
|
for (FriendData data : friendDatas
|
||||||
|
|||||||
@@ -19,7 +19,7 @@ import java.util.List;
|
|||||||
@Handler(IMTopic.FriendRequestPullTopic)
|
@Handler(IMTopic.FriendRequestPullTopic)
|
||||||
public class FriendRequestPullHandler extends IMHandler<WFCMessage.Version> {
|
public class FriendRequestPullHandler extends IMHandler<WFCMessage.Version> {
|
||||||
@Override
|
@Override
|
||||||
public ErrorCode action(ByteBuf ackPayload, String clientID, String fromUser, WFCMessage.Version request, Qos1PublishHandler.IMCallback callback) {
|
public ErrorCode action(ByteBuf ackPayload, String clientID, String fromUser, boolean isAdmin, WFCMessage.Version request, Qos1PublishHandler.IMCallback callback) {
|
||||||
List<WFCMessage.FriendRequest> friendDatas = m_messagesStore.getFriendRequestList(fromUser, request.getVersion());
|
List<WFCMessage.FriendRequest> friendDatas = m_messagesStore.getFriendRequestList(fromUser, request.getVersion());
|
||||||
WFCMessage.GetFriendRequestResult.Builder builder = WFCMessage.GetFriendRequestResult.newBuilder();
|
WFCMessage.GetFriendRequestResult.Builder builder = WFCMessage.GetFriendRequestResult.newBuilder();
|
||||||
builder.addAllEntry(friendDatas);
|
builder.addAllEntry(friendDatas);
|
||||||
|
|||||||
@@ -17,7 +17,7 @@ import win.liyufan.im.IMTopic;
|
|||||||
@Handler(IMTopic.ChannelPullTopic)
|
@Handler(IMTopic.ChannelPullTopic)
|
||||||
public class GetChannelInfoHandler extends IMHandler<WFCMessage.PullChannelInfo> {
|
public class GetChannelInfoHandler extends IMHandler<WFCMessage.PullChannelInfo> {
|
||||||
@Override
|
@Override
|
||||||
public ErrorCode action(ByteBuf ackPayload, String clientID, String fromUser, WFCMessage.PullChannelInfo request, Qos1PublishHandler.IMCallback callback) {
|
public ErrorCode action(ByteBuf ackPayload, String clientID, String fromUser, boolean isAdmin, WFCMessage.PullChannelInfo request, Qos1PublishHandler.IMCallback callback) {
|
||||||
ErrorCode errorCode = ErrorCode.ERROR_CODE_SUCCESS;
|
ErrorCode errorCode = ErrorCode.ERROR_CODE_SUCCESS;
|
||||||
WFCMessage.ChannelInfo info = m_messagesStore.getChannelInfo(request.getChannelId());
|
WFCMessage.ChannelInfo info = m_messagesStore.getChannelInfo(request.getChannelId());
|
||||||
if (info == null) {
|
if (info == null) {
|
||||||
|
|||||||
@@ -17,7 +17,7 @@ import win.liyufan.im.IMTopic;
|
|||||||
@Handler(IMTopic.GetChatroomInfoTopic)
|
@Handler(IMTopic.GetChatroomInfoTopic)
|
||||||
public class GetChatroomInfoHandler extends IMHandler<WFCMessage.GetChatroomInfoRequest> {
|
public class GetChatroomInfoHandler extends IMHandler<WFCMessage.GetChatroomInfoRequest> {
|
||||||
@Override
|
@Override
|
||||||
public ErrorCode action(ByteBuf ackPayload, String clientID, String fromUser, WFCMessage.GetChatroomInfoRequest request, Qos1PublishHandler.IMCallback callback) {
|
public ErrorCode action(ByteBuf ackPayload, String clientID, String fromUser, boolean isAdmin, WFCMessage.GetChatroomInfoRequest request, Qos1PublishHandler.IMCallback callback) {
|
||||||
ErrorCode errorCode = ErrorCode.ERROR_CODE_SUCCESS;
|
ErrorCode errorCode = ErrorCode.ERROR_CODE_SUCCESS;
|
||||||
WFCMessage.ChatroomInfo info = m_messagesStore.getChatroomInfo(request.getChatroomId());
|
WFCMessage.ChatroomInfo info = m_messagesStore.getChatroomInfo(request.getChatroomId());
|
||||||
if (info == null) {
|
if (info == null) {
|
||||||
|
|||||||
@@ -17,7 +17,7 @@ import win.liyufan.im.IMTopic;
|
|||||||
@Handler(IMTopic.GetChatroomMemberTopic)
|
@Handler(IMTopic.GetChatroomMemberTopic)
|
||||||
public class GetChatroomMemberHandler extends IMHandler<WFCMessage.GetChatroomMemberInfoRequest> {
|
public class GetChatroomMemberHandler extends IMHandler<WFCMessage.GetChatroomMemberInfoRequest> {
|
||||||
@Override
|
@Override
|
||||||
public ErrorCode action(ByteBuf ackPayload, String clientID, String fromUser, WFCMessage.GetChatroomMemberInfoRequest request, Qos1PublishHandler.IMCallback callback) {
|
public ErrorCode action(ByteBuf ackPayload, String clientID, String fromUser, boolean isAdmin, WFCMessage.GetChatroomMemberInfoRequest request, Qos1PublishHandler.IMCallback callback) {
|
||||||
ErrorCode errorCode = ErrorCode.ERROR_CODE_SUCCESS;
|
ErrorCode errorCode = ErrorCode.ERROR_CODE_SUCCESS;
|
||||||
WFCMessage.ChatroomMemberInfo info = m_messagesStore.getChatroomMemberInfo(request.getChatroomId(), request.getMaxCount());
|
WFCMessage.ChatroomMemberInfo info = m_messagesStore.getChatroomMemberInfo(request.getChatroomId(), request.getMaxCount());
|
||||||
if (info != null) {
|
if (info != null) {
|
||||||
|
|||||||
@@ -19,7 +19,7 @@ import java.util.List;
|
|||||||
@Handler(IMTopic.GetGroupInfoTopic)
|
@Handler(IMTopic.GetGroupInfoTopic)
|
||||||
public class GetGroupInfoHandler extends IMHandler<WFCMessage.PullUserRequest> {
|
public class GetGroupInfoHandler extends IMHandler<WFCMessage.PullUserRequest> {
|
||||||
@Override
|
@Override
|
||||||
public ErrorCode action(ByteBuf ackPayload, String clientID, String fromUser, WFCMessage.PullUserRequest request, Qos1PublishHandler.IMCallback callback) {
|
public ErrorCode action(ByteBuf ackPayload, String clientID, String fromUser, boolean isAdmin, WFCMessage.PullUserRequest request, Qos1PublishHandler.IMCallback callback) {
|
||||||
List<WFCMessage.GroupInfo> infos = m_messagesStore.getGroupInfos(request.getRequestList());
|
List<WFCMessage.GroupInfo> infos = m_messagesStore.getGroupInfos(request.getRequestList());
|
||||||
|
|
||||||
WFCMessage.PullGroupInfoResult result = WFCMessage.PullGroupInfoResult.newBuilder().addAllInfo(infos).build();
|
WFCMessage.PullGroupInfoResult result = WFCMessage.PullGroupInfoResult.newBuilder().addAllInfo(infos).build();
|
||||||
|
|||||||
@@ -22,7 +22,7 @@ import static win.liyufan.im.ErrorCode.ERROR_CODE_SUCCESS;
|
|||||||
@Handler(IMTopic.GetGroupMemberTopic)
|
@Handler(IMTopic.GetGroupMemberTopic)
|
||||||
public class GetGroupMemberHandler extends IMHandler<WFCMessage.PullGroupMemberRequest> {
|
public class GetGroupMemberHandler extends IMHandler<WFCMessage.PullGroupMemberRequest> {
|
||||||
@Override
|
@Override
|
||||||
public ErrorCode action(ByteBuf ackPayload, String clientID, String fromUser, WFCMessage.PullGroupMemberRequest request, Qos1PublishHandler.IMCallback callback) {
|
public ErrorCode action(ByteBuf ackPayload, String clientID, String fromUser, boolean isAdmin, WFCMessage.PullGroupMemberRequest request, Qos1PublishHandler.IMCallback callback) {
|
||||||
List<WFCMessage.GroupMember> members = new ArrayList<>();
|
List<WFCMessage.GroupMember> members = new ArrayList<>();
|
||||||
ErrorCode errorCode = m_messagesStore.getGroupMembers(request.getTarget(), request.getHead(), members);
|
ErrorCode errorCode = m_messagesStore.getGroupMembers(request.getTarget(), request.getHead(), members);
|
||||||
|
|
||||||
|
|||||||
@@ -20,7 +20,7 @@ import win.liyufan.im.IMTopic;
|
|||||||
@Handler(IMTopic.GetQiniuUploadTokenTopic)
|
@Handler(IMTopic.GetQiniuUploadTokenTopic)
|
||||||
public class GetQiniuUploadTokenHandler extends IMHandler<Byte> {
|
public class GetQiniuUploadTokenHandler extends IMHandler<Byte> {
|
||||||
@Override
|
@Override
|
||||||
public ErrorCode action(ByteBuf ackPayload, String clientID, String fromUser, Byte request, Qos1PublishHandler.IMCallback callback) {
|
public ErrorCode action(ByteBuf ackPayload, String clientID, String fromUser, boolean isAdmin, Byte request, Qos1PublishHandler.IMCallback callback) {
|
||||||
int type = request;
|
int type = request;
|
||||||
String token;
|
String token;
|
||||||
|
|
||||||
|
|||||||
@@ -19,7 +19,7 @@ import win.liyufan.im.IMTopic;
|
|||||||
@Handler(IMTopic.GetTokenTopic)
|
@Handler(IMTopic.GetTokenTopic)
|
||||||
public class GetTokenHandler extends IMHandler<WFCMessage.GetTokenRequest> {
|
public class GetTokenHandler extends IMHandler<WFCMessage.GetTokenRequest> {
|
||||||
@Override
|
@Override
|
||||||
public ErrorCode action(ByteBuf ackPayload, String clientID, String fromUser, WFCMessage.GetTokenRequest request, Qos1PublishHandler.IMCallback callback) {
|
public ErrorCode action(ByteBuf ackPayload, String clientID, String fromUser, boolean isAdmin, WFCMessage.GetTokenRequest request, Qos1PublishHandler.IMCallback callback) {
|
||||||
MemorySessionStore.Session session = m_sessionsStore.createUserSession(fromUser, clientID);
|
MemorySessionStore.Session session = m_sessionsStore.createUserSession(fromUser, clientID);
|
||||||
TokenAuthenticator authenticator = new TokenAuthenticator();
|
TokenAuthenticator authenticator = new TokenAuthenticator();
|
||||||
String strToken = authenticator.generateToken(fromUser);
|
String strToken = authenticator.generateToken(fromUser);
|
||||||
|
|||||||
@@ -19,7 +19,7 @@ import static win.liyufan.im.ErrorCode.ERROR_CODE_SUCCESS;
|
|||||||
@Handler(IMTopic.GetUserInfoTopic)
|
@Handler(IMTopic.GetUserInfoTopic)
|
||||||
public class GetUserInfoHandler extends IMHandler<WFCMessage.PullUserRequest> {
|
public class GetUserInfoHandler extends IMHandler<WFCMessage.PullUserRequest> {
|
||||||
@Override
|
@Override
|
||||||
public ErrorCode action(ByteBuf ackPayload, String clientID, String fromUser, WFCMessage.PullUserRequest request, Qos1PublishHandler.IMCallback callback) {
|
public ErrorCode action(ByteBuf ackPayload, String clientID, String fromUser, boolean isAdmin, WFCMessage.PullUserRequest request, Qos1PublishHandler.IMCallback callback) {
|
||||||
WFCMessage.PullUserResult.Builder resultBuilder = WFCMessage.PullUserResult.newBuilder();
|
WFCMessage.PullUserResult.Builder resultBuilder = WFCMessage.PullUserResult.newBuilder();
|
||||||
|
|
||||||
ErrorCode errorCode = m_messagesStore.getUserInfo(request.getRequestList(), resultBuilder);
|
ErrorCode errorCode = m_messagesStore.getUserInfo(request.getRequestList(), resultBuilder);
|
||||||
|
|||||||
@@ -19,7 +19,7 @@ import static win.liyufan.im.ErrorCode.ERROR_CODE_SUCCESS;
|
|||||||
@Handler(IMTopic.GetUserSettingTopic)
|
@Handler(IMTopic.GetUserSettingTopic)
|
||||||
public class GetUserSettingHandler extends IMHandler<WFCMessage.Version> {
|
public class GetUserSettingHandler extends IMHandler<WFCMessage.Version> {
|
||||||
@Override
|
@Override
|
||||||
public ErrorCode action(ByteBuf ackPayload, String clientID, String fromUser, WFCMessage.Version request, Qos1PublishHandler.IMCallback callback) {
|
public ErrorCode action(ByteBuf ackPayload, String clientID, String fromUser, boolean isAdmin, WFCMessage.Version request, Qos1PublishHandler.IMCallback callback) {
|
||||||
WFCMessage.GetUserSettingResult.Builder builder = WFCMessage.GetUserSettingResult.newBuilder();
|
WFCMessage.GetUserSettingResult.Builder builder = WFCMessage.GetUserSettingResult.newBuilder();
|
||||||
ErrorCode errorCode = m_messagesStore.getUserSettings(fromUser, request.getVersion(), builder);
|
ErrorCode errorCode = m_messagesStore.getUserSettings(fromUser, request.getVersion(), builder);
|
||||||
if (errorCode == ERROR_CODE_SUCCESS) {
|
if (errorCode == ERROR_CODE_SUCCESS) {
|
||||||
|
|||||||
@@ -21,7 +21,7 @@ import static win.liyufan.im.ErrorCode.ERROR_CODE_SUCCESS;
|
|||||||
@Handler(IMTopic.HandleFriendRequestTopic)
|
@Handler(IMTopic.HandleFriendRequestTopic)
|
||||||
public class HandleFriendRequestHandler extends IMHandler<WFCMessage.HandleFriendRequest> {
|
public class HandleFriendRequestHandler extends IMHandler<WFCMessage.HandleFriendRequest> {
|
||||||
@Override
|
@Override
|
||||||
public ErrorCode action(ByteBuf ackPayload, String clientID, String fromUser, WFCMessage.HandleFriendRequest request, Qos1PublishHandler.IMCallback callback) {
|
public ErrorCode action(ByteBuf ackPayload, String clientID, String fromUser, boolean isAdmin, WFCMessage.HandleFriendRequest request, Qos1PublishHandler.IMCallback callback) {
|
||||||
WFCMessage.Message.Builder builder = WFCMessage.Message.newBuilder();
|
WFCMessage.Message.Builder builder = WFCMessage.Message.newBuilder();
|
||||||
builder.setFromUser(request.getTargetUid());
|
builder.setFromUser(request.getTargetUid());
|
||||||
long[] heads = new long[2];
|
long[] heads = new long[2];
|
||||||
|
|||||||
@@ -171,7 +171,7 @@ abstract public class IMHandler<T> {
|
|||||||
return ErrorCode.ERROR_CODE_SUCCESS;
|
return ErrorCode.ERROR_CODE_SUCCESS;
|
||||||
}
|
}
|
||||||
|
|
||||||
public void doHandler(String clientID, String fromUser, String topic, byte[] payloadContent, Qos1PublishHandler.IMCallback callback) {
|
public void doHandler(String clientID, String fromUser, String topic, byte[] payloadContent, Qos1PublishHandler.IMCallback callback, boolean isAdmin) {
|
||||||
m_imBusinessExecutor.execute(() -> {
|
m_imBusinessExecutor.execute(() -> {
|
||||||
Qos1PublishHandler.IMCallback callbackWrapper = new Qos1PublishHandler.IMCallback() {
|
Qos1PublishHandler.IMCallback callbackWrapper = new Qos1PublishHandler.IMCallback() {
|
||||||
@Override
|
@Override
|
||||||
@@ -191,7 +191,7 @@ abstract public class IMHandler<T> {
|
|||||||
|
|
||||||
try {
|
try {
|
||||||
LOG.debug("execute handler for topic {}", topic);
|
LOG.debug("execute handler for topic {}", topic);
|
||||||
errorCode = action(ackPayload, clientID, fromUser, getDataObject(payloadContent), callbackWrapper);
|
errorCode = action(ackPayload, clientID, fromUser, isAdmin, getDataObject(payloadContent), callbackWrapper);
|
||||||
} catch (IllegalAccessException e) {
|
} catch (IllegalAccessException e) {
|
||||||
e.printStackTrace();
|
e.printStackTrace();
|
||||||
Utility.printExecption(LOG, e);
|
Utility.printExecption(LOG, e);
|
||||||
@@ -234,7 +234,7 @@ abstract public class IMHandler<T> {
|
|||||||
|
|
||||||
|
|
||||||
@ActionMethod
|
@ActionMethod
|
||||||
abstract public ErrorCode action(ByteBuf ackPayload, String clientID, String fromUser, T request, Qos1PublishHandler.IMCallback callback) ;
|
abstract public ErrorCode action(ByteBuf ackPayload, String clientID, String fromUser, boolean isAdmin, T request, Qos1PublishHandler.IMCallback callback) ;
|
||||||
|
|
||||||
public void afterAction(String clientID, String fromUser, String topic, Qos1PublishHandler.IMCallback callback) {
|
public void afterAction(String clientID, String fromUser, String topic, Qos1PublishHandler.IMCallback callback) {
|
||||||
|
|
||||||
|
|||||||
@@ -18,7 +18,7 @@ import win.liyufan.im.IMTopic;
|
|||||||
@Handler(IMTopic.JoinChatroomTopic)
|
@Handler(IMTopic.JoinChatroomTopic)
|
||||||
public class JoinChatroomHandler extends IMHandler<WFCMessage.IDBuf> {
|
public class JoinChatroomHandler extends IMHandler<WFCMessage.IDBuf> {
|
||||||
@Override
|
@Override
|
||||||
public ErrorCode action(ByteBuf ackPayload, String clientID, String fromUser, WFCMessage.IDBuf request, Qos1PublishHandler.IMCallback callback) {
|
public ErrorCode action(ByteBuf ackPayload, String clientID, String fromUser, boolean isAdmin, WFCMessage.IDBuf request, Qos1PublishHandler.IMCallback callback) {
|
||||||
return m_messagesStore.handleJoinChatroom(fromUser, clientID, request.getId());
|
return m_messagesStore.handleJoinChatroom(fromUser, clientID, request.getId());
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -19,7 +19,7 @@ import static win.liyufan.im.IMTopic.KickoffGroupMemberTopic;
|
|||||||
@Handler(value = KickoffGroupMemberTopic)
|
@Handler(value = KickoffGroupMemberTopic)
|
||||||
public class KickoffGroupMember extends GroupHandler<WFCMessage.RemoveGroupMemberRequest> {
|
public class KickoffGroupMember extends GroupHandler<WFCMessage.RemoveGroupMemberRequest> {
|
||||||
@Override
|
@Override
|
||||||
public ErrorCode action(ByteBuf ackPayload, String clientID, String fromUser, WFCMessage.RemoveGroupMemberRequest request, Qos1PublishHandler.IMCallback callback) {
|
public ErrorCode action(ByteBuf ackPayload, String clientID, String fromUser, boolean isAdmin, WFCMessage.RemoveGroupMemberRequest request, Qos1PublishHandler.IMCallback callback) {
|
||||||
ErrorCode errorCode;
|
ErrorCode errorCode;
|
||||||
WFCMessage.GroupInfo groupInfo = m_messagesStore.getGroupInfo(request.getGroupId());
|
WFCMessage.GroupInfo groupInfo = m_messagesStore.getGroupInfo(request.getGroupId());
|
||||||
if (groupInfo == null) {
|
if (groupInfo == null) {
|
||||||
|
|||||||
@@ -18,7 +18,7 @@ import win.liyufan.im.IMTopic;
|
|||||||
@Handler(value = IMTopic.LoadRemoteMessagesTopic)
|
@Handler(value = IMTopic.LoadRemoteMessagesTopic)
|
||||||
public class LoadRemoteMessagesHandler extends IMHandler<WFCMessage.LoadRemoteMessages> {
|
public class LoadRemoteMessagesHandler extends IMHandler<WFCMessage.LoadRemoteMessages> {
|
||||||
@Override
|
@Override
|
||||||
public ErrorCode action(ByteBuf ackPayload, String clientID, String fromUser, WFCMessage.LoadRemoteMessages request, Qos1PublishHandler.IMCallback callback) {
|
public ErrorCode action(ByteBuf ackPayload, String clientID, String fromUser, boolean isAdmin, WFCMessage.LoadRemoteMessages request, Qos1PublishHandler.IMCallback callback) {
|
||||||
ErrorCode errorCode = ErrorCode.ERROR_CODE_SUCCESS;
|
ErrorCode errorCode = ErrorCode.ERROR_CODE_SUCCESS;
|
||||||
|
|
||||||
WFCMessage.PullMessageResult result = m_messagesStore.loadRemoteMessages(fromUser, request.getConversation(), request.getBeforeUid(), request.getCount());
|
WFCMessage.PullMessageResult result = m_messagesStore.loadRemoteMessages(fromUser, request.getConversation(), request.getBeforeUid(), request.getCount());
|
||||||
|
|||||||
@@ -23,7 +23,7 @@ import static win.liyufan.im.IMTopic.ModifyGroupInfoTopic;
|
|||||||
@Handler(value = ModifyChannelInfoTopic)
|
@Handler(value = ModifyChannelInfoTopic)
|
||||||
public class ModifyChannelInfoHandler extends GroupHandler<WFCMessage.ModifyChannelInfo> {
|
public class ModifyChannelInfoHandler extends GroupHandler<WFCMessage.ModifyChannelInfo> {
|
||||||
@Override
|
@Override
|
||||||
public ErrorCode action(ByteBuf ackPayload, String clientID, String fromUser, WFCMessage.ModifyChannelInfo request, Qos1PublishHandler.IMCallback callback) {
|
public ErrorCode action(ByteBuf ackPayload, String clientID, String fromUser, boolean isAdmin, WFCMessage.ModifyChannelInfo request, Qos1PublishHandler.IMCallback callback) {
|
||||||
ErrorCode errorCode= m_messagesStore.modifyChannelInfo(fromUser, request.getChannelId(), request.getType(), request.getValue());
|
ErrorCode errorCode= m_messagesStore.modifyChannelInfo(fromUser, request.getChannelId(), request.getType(), request.getValue());
|
||||||
return errorCode;
|
return errorCode;
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -20,7 +20,7 @@ import static win.liyufan.im.ErrorCode.ERROR_CODE_SUCCESS;
|
|||||||
@Handler(IMTopic.ModifyGroupAliasTopic)
|
@Handler(IMTopic.ModifyGroupAliasTopic)
|
||||||
public class ModifyGroupAliasHandler extends GroupHandler<WFCMessage.ModifyGroupMemberAlias> {
|
public class ModifyGroupAliasHandler extends GroupHandler<WFCMessage.ModifyGroupMemberAlias> {
|
||||||
@Override
|
@Override
|
||||||
public ErrorCode action(ByteBuf ackPayload, String clientID, String fromUser, WFCMessage.ModifyGroupMemberAlias request, Qos1PublishHandler.IMCallback callback) {
|
public ErrorCode action(ByteBuf ackPayload, String clientID, String fromUser, boolean isAdmin, WFCMessage.ModifyGroupMemberAlias request, Qos1PublishHandler.IMCallback callback) {
|
||||||
ErrorCode errorCode = m_messagesStore.modifyGroupAlias(fromUser, request.getGroupId(), request.getAlias());
|
ErrorCode errorCode = m_messagesStore.modifyGroupAlias(fromUser, request.getGroupId(), request.getAlias());
|
||||||
if (errorCode == ERROR_CODE_SUCCESS && request.hasNotifyContent()) {
|
if (errorCode == ERROR_CODE_SUCCESS && request.hasNotifyContent()) {
|
||||||
if (request.hasNotifyContent()&& request.getNotifyContent().getType() > 0) {
|
if (request.hasNotifyContent()&& request.getNotifyContent().getType() > 0) {
|
||||||
|
|||||||
@@ -22,7 +22,7 @@ import static win.liyufan.im.IMTopic.ModifyGroupInfoTopic;
|
|||||||
@Handler(value = ModifyGroupInfoTopic)
|
@Handler(value = ModifyGroupInfoTopic)
|
||||||
public class ModifyGroupInfoHandler extends GroupHandler<WFCMessage.ModifyGroupInfoRequest> {
|
public class ModifyGroupInfoHandler extends GroupHandler<WFCMessage.ModifyGroupInfoRequest> {
|
||||||
@Override
|
@Override
|
||||||
public ErrorCode action(ByteBuf ackPayload, String clientID, String fromUser, WFCMessage.ModifyGroupInfoRequest request, Qos1PublishHandler.IMCallback callback) {
|
public ErrorCode action(ByteBuf ackPayload, String clientID, String fromUser, boolean isAdmin, WFCMessage.ModifyGroupInfoRequest request, Qos1PublishHandler.IMCallback callback) {
|
||||||
ErrorCode errorCode= m_messagesStore.modifyGroupInfo(fromUser, request.getGroupId(), request.getType(), request.getValue());
|
ErrorCode errorCode= m_messagesStore.modifyGroupInfo(fromUser, request.getGroupId(), request.getType(), request.getValue());
|
||||||
if (errorCode == ERROR_CODE_SUCCESS) {
|
if (errorCode == ERROR_CODE_SUCCESS) {
|
||||||
if(request.hasNotifyContent() && request.getNotifyContent().getType() > 0) {
|
if(request.hasNotifyContent() && request.getNotifyContent().getType() > 0) {
|
||||||
|
|||||||
@@ -17,7 +17,7 @@ import win.liyufan.im.IMTopic;
|
|||||||
@Handler(IMTopic.ModifyMyInfoTopic)
|
@Handler(IMTopic.ModifyMyInfoTopic)
|
||||||
public class ModifyMyInfoHandler extends IMHandler<WFCMessage.ModifyMyInfoRequest> {
|
public class ModifyMyInfoHandler extends IMHandler<WFCMessage.ModifyMyInfoRequest> {
|
||||||
@Override
|
@Override
|
||||||
public ErrorCode action(ByteBuf ackPayload, String clientID, String fromUser, WFCMessage.ModifyMyInfoRequest request, Qos1PublishHandler.IMCallback callback) {
|
public ErrorCode action(ByteBuf ackPayload, String clientID, String fromUser, boolean isAdmin, WFCMessage.ModifyMyInfoRequest request, Qos1PublishHandler.IMCallback callback) {
|
||||||
return m_messagesStore.modifyUserInfo(fromUser, request);
|
return m_messagesStore.modifyUserInfo(fromUser, request);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -19,7 +19,7 @@ import win.liyufan.im.IMTopic;
|
|||||||
@Handler(value = IMTopic.PullMessageTopic)
|
@Handler(value = IMTopic.PullMessageTopic)
|
||||||
public class PullMessageHandler extends IMHandler<WFCMessage.PullMessageRequest> {
|
public class PullMessageHandler extends IMHandler<WFCMessage.PullMessageRequest> {
|
||||||
@Override
|
@Override
|
||||||
public ErrorCode action(ByteBuf ackPayload, String clientID, String fromUser, WFCMessage.PullMessageRequest request, Qos1PublishHandler.IMCallback callback) {
|
public ErrorCode action(ByteBuf ackPayload, String clientID, String fromUser, boolean isAdmin, WFCMessage.PullMessageRequest request, Qos1PublishHandler.IMCallback callback) {
|
||||||
ErrorCode errorCode = ErrorCode.ERROR_CODE_SUCCESS;
|
ErrorCode errorCode = ErrorCode.ERROR_CODE_SUCCESS;
|
||||||
|
|
||||||
if (request.getType() == ProtoConstants.PullType.Pull_ChatRoom && !m_messagesStore.checkUserClientInChatroom(fromUser, clientID, null)) {
|
if (request.getType() == ProtoConstants.PullType.Pull_ChatRoom && !m_messagesStore.checkUserClientInChatroom(fromUser, clientID, null)) {
|
||||||
|
|||||||
@@ -17,7 +17,7 @@ import win.liyufan.im.IMTopic;
|
|||||||
@Handler(IMTopic.PutUserSettingTopic)
|
@Handler(IMTopic.PutUserSettingTopic)
|
||||||
public class PutUserSettingHandler extends IMHandler<WFCMessage.ModifyUserSettingReq> {
|
public class PutUserSettingHandler extends IMHandler<WFCMessage.ModifyUserSettingReq> {
|
||||||
@Override
|
@Override
|
||||||
public ErrorCode action(ByteBuf ackPayload, String clientID, String fromUser, WFCMessage.ModifyUserSettingReq request, Qos1PublishHandler.IMCallback callback) {
|
public ErrorCode action(ByteBuf ackPayload, String clientID, String fromUser, boolean isAdmin, WFCMessage.ModifyUserSettingReq request, Qos1PublishHandler.IMCallback callback) {
|
||||||
long timestamp = m_messagesStore.updateUserSettings(fromUser, request);
|
long timestamp = m_messagesStore.updateUserSettings(fromUser, request);
|
||||||
publisher.publishNotification(IMTopic.NotifyUserSettingTopic, fromUser, timestamp);
|
publisher.publishNotification(IMTopic.NotifyUserSettingTopic, fromUser, timestamp);
|
||||||
return ErrorCode.ERROR_CODE_SUCCESS;
|
return ErrorCode.ERROR_CODE_SUCCESS;
|
||||||
|
|||||||
@@ -17,7 +17,7 @@ import win.liyufan.im.IMTopic;
|
|||||||
@Handler(IMTopic.QuitChatroomTopic)
|
@Handler(IMTopic.QuitChatroomTopic)
|
||||||
public class QuitChatroomHandler extends IMHandler<WFCMessage.IDBuf> {
|
public class QuitChatroomHandler extends IMHandler<WFCMessage.IDBuf> {
|
||||||
@Override
|
@Override
|
||||||
public ErrorCode action(ByteBuf ackPayload, String clientID, String fromUser, WFCMessage.IDBuf request, Qos1PublishHandler.IMCallback callback) {
|
public ErrorCode action(ByteBuf ackPayload, String clientID, String fromUser, boolean isAdmin, WFCMessage.IDBuf request, Qos1PublishHandler.IMCallback callback) {
|
||||||
m_messagesStore.handleQuitChatroom(fromUser, clientID, request.getId());
|
m_messagesStore.handleQuitChatroom(fromUser, clientID, request.getId());
|
||||||
return ErrorCode.ERROR_CODE_SUCCESS;
|
return ErrorCode.ERROR_CODE_SUCCESS;
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -19,7 +19,7 @@ import static win.liyufan.im.IMTopic.QuitGroupTopic;
|
|||||||
@Handler(value = QuitGroupTopic)
|
@Handler(value = QuitGroupTopic)
|
||||||
public class QuitGroupHandler extends GroupHandler<WFCMessage.QuitGroupRequest> {
|
public class QuitGroupHandler extends GroupHandler<WFCMessage.QuitGroupRequest> {
|
||||||
@Override
|
@Override
|
||||||
public ErrorCode action(ByteBuf ackPayload, String clientID, String fromUser, WFCMessage.QuitGroupRequest request, Qos1PublishHandler.IMCallback callback) {
|
public ErrorCode action(ByteBuf ackPayload, String clientID, String fromUser, boolean isAdmin, WFCMessage.QuitGroupRequest request, Qos1PublishHandler.IMCallback callback) {
|
||||||
ErrorCode errorCode = ErrorCode.ERROR_CODE_SUCCESS;
|
ErrorCode errorCode = ErrorCode.ERROR_CODE_SUCCESS;
|
||||||
WFCMessage.GroupInfo groupInfo = m_messagesStore.getGroupInfo(request.getGroupId());
|
WFCMessage.GroupInfo groupInfo = m_messagesStore.getGroupInfo(request.getGroupId());
|
||||||
if (groupInfo == null) {
|
if (groupInfo == null) {
|
||||||
|
|||||||
@@ -20,7 +20,7 @@ import java.util.Set;
|
|||||||
@Handler(value = IMTopic.RecallMessageTopic)
|
@Handler(value = IMTopic.RecallMessageTopic)
|
||||||
public class RecallMessageHandler extends IMHandler<WFCMessage.INT64Buf> {
|
public class RecallMessageHandler extends IMHandler<WFCMessage.INT64Buf> {
|
||||||
@Override
|
@Override
|
||||||
public ErrorCode action(ByteBuf ackPayload, String clientID, String fromUser, WFCMessage.INT64Buf int64Buf, Qos1PublishHandler.IMCallback callback) {
|
public ErrorCode action(ByteBuf ackPayload, String clientID, String fromUser, boolean isAdmin, WFCMessage.INT64Buf int64Buf, Qos1PublishHandler.IMCallback callback) {
|
||||||
ErrorCode errorCode = m_messagesStore.recallMessage(int64Buf.getId(), fromUser);
|
ErrorCode errorCode = m_messagesStore.recallMessage(int64Buf.getId(), fromUser);
|
||||||
|
|
||||||
if(errorCode != ErrorCode.ERROR_CODE_SUCCESS) {
|
if(errorCode != ErrorCode.ERROR_CODE_SUCCESS) {
|
||||||
|
|||||||
@@ -23,7 +23,7 @@ import static io.moquette.BrokerConstants.HZ_Cluster_Node_External_Short_Port;
|
|||||||
@Handler(IMTopic.RouteTopic)
|
@Handler(IMTopic.RouteTopic)
|
||||||
public class RouteHandler extends IMHandler<WFCMessage.RouteRequest> {
|
public class RouteHandler extends IMHandler<WFCMessage.RouteRequest> {
|
||||||
@Override
|
@Override
|
||||||
public ErrorCode action(ByteBuf ackPayload, String clientID, String fromUser, WFCMessage.RouteRequest request, Qos1PublishHandler.IMCallback callback) {
|
public ErrorCode action(ByteBuf ackPayload, String clientID, String fromUser, boolean isAdmin, WFCMessage.RouteRequest request, Qos1PublishHandler.IMCallback callback) {
|
||||||
Member member = mServer.getHazelcastInstance().getCluster().getLocalMember();
|
Member member = mServer.getHazelcastInstance().getCluster().getLocalMember();
|
||||||
String serverIp = member.getStringAttribute(HZ_Cluster_Node_External_IP);
|
String serverIp = member.getStringAttribute(HZ_Cluster_Node_External_IP);
|
||||||
String longPort = member.getStringAttribute(HZ_Cluster_Node_External_Long_Port);
|
String longPort = member.getStringAttribute(HZ_Cluster_Node_External_Long_Port);
|
||||||
|
|||||||
@@ -43,7 +43,7 @@ public class SendMessageHandler extends IMHandler<WFCMessage.Message> {
|
|||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public ErrorCode action(ByteBuf ackPayload, String clientID, String fromUser, WFCMessage.Message message, Qos1PublishHandler.IMCallback callback) {
|
public ErrorCode action(ByteBuf ackPayload, String clientID, String fromUser, boolean isAdmin, WFCMessage.Message message, Qos1PublishHandler.IMCallback callback) {
|
||||||
ErrorCode errorCode = ErrorCode.ERROR_CODE_SUCCESS;
|
ErrorCode errorCode = ErrorCode.ERROR_CODE_SUCCESS;
|
||||||
if (message != null) {
|
if (message != null) {
|
||||||
int userStatus = m_messagesStore.getUserStatus(fromUser);
|
int userStatus = m_messagesStore.getUserStatus(fromUser);
|
||||||
|
|||||||
@@ -19,7 +19,7 @@ import static win.liyufan.im.ErrorCode.ERROR_CODE_SUCCESS;
|
|||||||
@Handler(IMTopic.RriendRequestUnreadSyncTopic)
|
@Handler(IMTopic.RriendRequestUnreadSyncTopic)
|
||||||
public class SyncFriendRequestUnreadHandler extends GroupHandler<WFCMessage.Version> {
|
public class SyncFriendRequestUnreadHandler extends GroupHandler<WFCMessage.Version> {
|
||||||
@Override
|
@Override
|
||||||
public ErrorCode action(ByteBuf ackPayload, String clientID, String fromUser, WFCMessage.Version request, Qos1PublishHandler.IMCallback callback) {
|
public ErrorCode action(ByteBuf ackPayload, String clientID, String fromUser, boolean isAdmin, WFCMessage.Version request, Qos1PublishHandler.IMCallback callback) {
|
||||||
long[] head = new long[1];
|
long[] head = new long[1];
|
||||||
ErrorCode errorCode = m_messagesStore.SyncFriendRequestUnread(fromUser, request.getVersion(), head);
|
ErrorCode errorCode = m_messagesStore.SyncFriendRequestUnread(fromUser, request.getVersion(), head);
|
||||||
if (errorCode == ERROR_CODE_SUCCESS) {
|
if (errorCode == ERROR_CODE_SUCCESS) {
|
||||||
|
|||||||
@@ -20,7 +20,7 @@ import static win.liyufan.im.ErrorCode.ERROR_CODE_SUCCESS;
|
|||||||
@Handler(IMTopic.TransferChannelInfoTopic)
|
@Handler(IMTopic.TransferChannelInfoTopic)
|
||||||
public class TransferChannelHandler extends GroupHandler<WFCMessage.TransferChannel> {
|
public class TransferChannelHandler extends GroupHandler<WFCMessage.TransferChannel> {
|
||||||
@Override
|
@Override
|
||||||
public ErrorCode action(ByteBuf ackPayload, String clientID, String fromUser, WFCMessage.TransferChannel request, Qos1PublishHandler.IMCallback callback) {
|
public ErrorCode action(ByteBuf ackPayload, String clientID, String fromUser, boolean isAdmin, WFCMessage.TransferChannel request, Qos1PublishHandler.IMCallback callback) {
|
||||||
ErrorCode errorCode = m_messagesStore.transferChannel(fromUser, request.getChannelId(), request.getNewOwner());
|
ErrorCode errorCode = m_messagesStore.transferChannel(fromUser, request.getChannelId(), request.getNewOwner());
|
||||||
return errorCode;
|
return errorCode;
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -20,7 +20,7 @@ import static win.liyufan.im.ErrorCode.ERROR_CODE_SUCCESS;
|
|||||||
@Handler(IMTopic.TransferGroupTopic)
|
@Handler(IMTopic.TransferGroupTopic)
|
||||||
public class TransferGroupHandler extends GroupHandler<WFCMessage.TransferGroupRequest> {
|
public class TransferGroupHandler extends GroupHandler<WFCMessage.TransferGroupRequest> {
|
||||||
@Override
|
@Override
|
||||||
public ErrorCode action(ByteBuf ackPayload, String clientID, String fromUser, WFCMessage.TransferGroupRequest request, Qos1PublishHandler.IMCallback callback) {
|
public ErrorCode action(ByteBuf ackPayload, String clientID, String fromUser, boolean isAdmin, WFCMessage.TransferGroupRequest request, Qos1PublishHandler.IMCallback callback) {
|
||||||
ErrorCode errorCode = m_messagesStore.transferGroup(fromUser, request.getGroupId(), request.getNewOwner());
|
ErrorCode errorCode = m_messagesStore.transferGroup(fromUser, request.getGroupId(), request.getNewOwner());
|
||||||
if (errorCode == ERROR_CODE_SUCCESS) {
|
if (errorCode == ERROR_CODE_SUCCESS) {
|
||||||
if (request.hasNotifyContent() && request.getNotifyContent().getType() > 0) {
|
if (request.hasNotifyContent() && request.getNotifyContent().getType() > 0) {
|
||||||
|
|||||||
@@ -20,7 +20,7 @@ import win.liyufan.im.IMTopic;
|
|||||||
@Handler(IMTopic.UploadDeviceTokenTopic)
|
@Handler(IMTopic.UploadDeviceTokenTopic)
|
||||||
public class UploadDeviceTokenHandler extends IMHandler<WFCMessage.UploadDeviceTokenRequest> {
|
public class UploadDeviceTokenHandler extends IMHandler<WFCMessage.UploadDeviceTokenRequest> {
|
||||||
@Override
|
@Override
|
||||||
public ErrorCode action(ByteBuf ackPayload, String clientID, String fromUser, WFCMessage.UploadDeviceTokenRequest request, Qos1PublishHandler.IMCallback callback) {
|
public ErrorCode action(ByteBuf ackPayload, String clientID, String fromUser, boolean isAdmin, WFCMessage.UploadDeviceTokenRequest request, Qos1PublishHandler.IMCallback callback) {
|
||||||
MemorySessionStore.Session session = m_sessionsStore.getSession(clientID);
|
MemorySessionStore.Session session = m_sessionsStore.getSession(clientID);
|
||||||
session.setPlatform(request.getPlatform());
|
session.setPlatform(request.getPlatform());
|
||||||
session.setAppName(request.getAppName());
|
session.setAppName(request.getAppName());
|
||||||
|
|||||||
@@ -19,7 +19,7 @@ import java.util.List;
|
|||||||
@Handler(IMTopic.UserSearchTopic)
|
@Handler(IMTopic.UserSearchTopic)
|
||||||
public class UserSearchHandler extends IMHandler<WFCMessage.SearchUserRequest> {
|
public class UserSearchHandler extends IMHandler<WFCMessage.SearchUserRequest> {
|
||||||
@Override
|
@Override
|
||||||
public ErrorCode action(ByteBuf ackPayload, String clientID, String fromUser, WFCMessage.SearchUserRequest request, Qos1PublishHandler.IMCallback callback) {
|
public ErrorCode action(ByteBuf ackPayload, String clientID, String fromUser, boolean isAdmin, WFCMessage.SearchUserRequest request, Qos1PublishHandler.IMCallback callback) {
|
||||||
List<WFCMessage.User> users = m_messagesStore.searchUser(request.getKeyword(), request.getFuzzy() > 0, request.getPage());
|
List<WFCMessage.User> users = m_messagesStore.searchUser(request.getKeyword(), request.getFuzzy() > 0, request.getPage());
|
||||||
WFCMessage.SearchUserResult.Builder builder = WFCMessage.SearchUserResult.newBuilder();
|
WFCMessage.SearchUserResult.Builder builder = WFCMessage.SearchUserResult.newBuilder();
|
||||||
builder.addAllEntry(users);
|
builder.addAllEntry(users);
|
||||||
|
|||||||
@@ -198,7 +198,7 @@ public class Qos1PublishHandler extends QosPublishHandler {
|
|||||||
|
|
||||||
IMHandler handler = m_imHandlers.get(topic);
|
IMHandler handler = m_imHandlers.get(topic);
|
||||||
if (handler != null) {
|
if (handler != null) {
|
||||||
handler.doHandler(clientID, fromUser, topic, payloadContent, wrapper);
|
handler.doHandler(clientID, fromUser, topic, payloadContent, wrapper, isAdmin);
|
||||||
} else {
|
} else {
|
||||||
LOG.error("imHandler unknown topic={}", topic);
|
LOG.error("imHandler unknown topic={}", topic);
|
||||||
ByteBuf ackPayload = Unpooled.buffer();
|
ByteBuf ackPayload = Unpooled.buffer();
|
||||||
|
|||||||
Reference in New Issue
Block a user