From 79bd0c33042be03e09a7c02c4918613ee643ca7a Mon Sep 17 00:00:00 2001 From: "heavyrain.lee" Date: Wed, 22 May 2019 08:38:55 +0800 Subject: [PATCH] add sdk --- .../com/xiaoleilu/loServer/RestResult.java | 2 +- .../com/xiaoleilu/loServer/action/Action.java | 6 +- .../xiaoleilu/loServer/action/IMAction.java | 2 +- .../loServer/action/RouteAction.java | 2 +- .../action/admin/AddGroupMemberAction.java | 4 +- .../loServer/action/admin/AdminAction.java | 3 +- .../action/admin/BlockUserAction.java | 2 +- .../action/admin/CheckUserOnlineAction.java | 3 +- .../action/admin/CreateChatroomAction.java | 2 +- .../action/admin/CreateGroupAction.java | 2 +- .../action/admin/CreateRobotAction.java | 2 +- .../action/admin/CreateUserAction.java | 2 +- .../action/admin/DestoryChatroomAction.java | 2 +- .../action/admin/DismissGroupAction.java | 3 +- .../action/admin/FriendRelationAction.java | 3 +- .../action/admin/GetChatroomInfoAction.java | 2 +- .../action/admin/GetIMTokenAction.java | 2 +- .../loServer/action/admin/GetUserAction.java | 3 +- .../admin/GetUserBlockStatusAction.java | 3 +- .../admin/KickoffGroupMemberAction.java | 3 +- .../action/admin/RecallMessageAction.java | 2 +- .../action/admin/SendMessageAction.java | 2 +- .../action/admin/SensitiveWordAddAction.java | 3 +- .../admin/SensitiveWordDeleteAction.java | 2 +- .../admin/SensitiveWordQueryAction.java | 2 +- .../action/admin/TransferGroupAction.java | 3 +- .../action/channel/ChannelAction.java | 3 +- .../action/channel/SendMessageAction.java | 2 +- .../loServer/action/robot/GetUserAction.java | 3 +- .../loServer/action/robot/RobotAction.java | 3 +- .../action/robot/SendMessageAction.java | 2 +- .../moquette/imhandler/AddFriendHandler.java | 4 +- .../io/moquette/imhandler/AddGroupMember.java | 4 +- .../imhandler/BlackListRequestHandler.java | 4 +- .../imhandler/ChannelListenMember.java | 3 +- .../imhandler/ChannelSearchHandler.java | 2 +- .../imhandler/CreateChannelHandler.java | 3 +- .../imhandler/CreateGroupHandler.java | 2 +- .../imhandler/DeleteFriendHandler.java | 2 +- .../imhandler/DismissGroupHandler.java | 2 +- .../imhandler/DistoryChannelHandler.java | 2 +- .../moquette/imhandler/FriendPullHandler.java | 2 +- .../imhandler/FriendRequestPullHandler.java | 2 +- .../imhandler/GetChannelInfoHandler.java | 2 +- .../imhandler/GetChatroomInfoHandler.java | 2 +- .../imhandler/GetChatroomMemberHandler.java | 2 +- .../imhandler/GetGroupInfoHandler.java | 2 +- .../imhandler/GetGroupMemberHandler.java | 4 +- .../imhandler/GetQiniuUploadTokenHandler.java | 2 +- .../moquette/imhandler/GetTokenHandler.java | 2 +- .../imhandler/GetUserInfoHandler.java | 4 +- .../imhandler/GetUserSettingHandler.java | 4 +- .../imhandler/HandleFriendRequestHandler.java | 4 +- .../java/io/moquette/imhandler/IMHandler.java | 11 +- .../imhandler/JoinChatroomHandler.java | 2 +- .../imhandler/KickoffGroupMember.java | 2 +- .../imhandler/LoadRemoteMessagesHandler.java | 3 +- .../imhandler/ModifyChannelInfoHandler.java | 3 +- .../imhandler/ModifyGroupAliasHandler.java | 4 +- .../imhandler/ModifyGroupInfoHandler.java | 4 +- .../imhandler/ModifyMyInfoHandler.java | 2 +- .../imhandler/PullMessageHandler.java | 3 +- .../imhandler/PutUserSettingHandler.java | 2 +- .../imhandler/QuitChatroomHandler.java | 2 +- .../moquette/imhandler/QuitGroupHandler.java | 2 +- .../imhandler/RecallMessageHandler.java | 2 +- .../io/moquette/imhandler/RouteHandler.java | 2 +- .../imhandler/SendMessageHandler.java | 3 +- .../SetFriendAliasRequestHandler.java | 4 +- .../SyncFriendRequestUnreadHandler.java | 4 +- .../imhandler/TransferChannelHandler.java | 3 +- .../imhandler/TransferGroupHandler.java | 4 +- .../imhandler/UploadDeviceTokenHandler.java | 2 +- .../moquette/imhandler/UserSearchHandler.java | 2 +- .../persistence/MemoryMessagesStore.java | 1 + .../persistence/MemorySessionStore.java | 5 +- .../io/moquette/persistence/RPCCenter.java | 2 +- .../server/ConnectionDescriptorStore.java | 2 +- .../java/io/moquette/spi/IMessagesStore.java | 2 +- .../java/io/moquette/spi/ISessionsStore.java | 3 +- .../moquette/spi/impl/Qos1PublishHandler.java | 8 +- .../common/cn/wildfirechat}/ErrorCode.java | 2 +- pom.xml | 3 +- sdk/pom.xml | 93 +++++++++++++ .../java/cn/wildfirechat/sdk/ChatAdmin.java | 25 ++++ .../java/cn/wildfirechat/sdk/HttpUtils.java | 109 ++++++++++++++++ .../sdk/model/GetTokenRequest.java | 27 ++++ .../cn/wildfirechat/sdk/model/IMResult.java | 38 ++++++ .../sdk/model/SendMessageResult.java | 30 +++++ .../java/cn/wildfirechat/sdk/model/Token.java | 22 ++++ .../java/cn/wildfirechat/sdk/model/User.java | 121 +++++++++++++++++ .../cn/wildfirechat/sdk/model/UserId.java | 17 +++ .../cn/wildfirechat/sdk/model/UserName.java | 17 +++ .../main/java/ikidou/reflect/TypeBuilder.java | 110 ++++++++++++++++ .../main/java/ikidou/reflect/TypeToken.java | 39 ++++++ .../reflect/exception/TypeException.java | 38 ++++++ .../typeimpl/ParameterizedTypeImpl.java | 123 ++++++++++++++++++ .../reflect/typeimpl/WildcardTypeImpl.java | 106 +++++++++++++++ 98 files changed, 1017 insertions(+), 132 deletions(-) rename {broker/src/main/java/win/liyufan/im => common/src/main/java/common/cn/wildfirechat}/ErrorCode.java (98%) create mode 100644 sdk/pom.xml create mode 100644 sdk/src/main/java/cn/wildfirechat/sdk/ChatAdmin.java create mode 100644 sdk/src/main/java/cn/wildfirechat/sdk/HttpUtils.java create mode 100755 sdk/src/main/java/cn/wildfirechat/sdk/model/GetTokenRequest.java create mode 100755 sdk/src/main/java/cn/wildfirechat/sdk/model/IMResult.java create mode 100644 sdk/src/main/java/cn/wildfirechat/sdk/model/SendMessageResult.java create mode 100644 sdk/src/main/java/cn/wildfirechat/sdk/model/Token.java create mode 100644 sdk/src/main/java/cn/wildfirechat/sdk/model/User.java create mode 100755 sdk/src/main/java/cn/wildfirechat/sdk/model/UserId.java create mode 100755 sdk/src/main/java/cn/wildfirechat/sdk/model/UserName.java create mode 100755 sdk/src/main/java/ikidou/reflect/TypeBuilder.java create mode 100755 sdk/src/main/java/ikidou/reflect/TypeToken.java create mode 100755 sdk/src/main/java/ikidou/reflect/exception/TypeException.java create mode 100755 sdk/src/main/java/ikidou/reflect/typeimpl/ParameterizedTypeImpl.java create mode 100755 sdk/src/main/java/ikidou/reflect/typeimpl/WildcardTypeImpl.java diff --git a/broker/src/main/java/com/xiaoleilu/loServer/RestResult.java b/broker/src/main/java/com/xiaoleilu/loServer/RestResult.java index c74c9cfa..2ca0d50b 100755 --- a/broker/src/main/java/com/xiaoleilu/loServer/RestResult.java +++ b/broker/src/main/java/com/xiaoleilu/loServer/RestResult.java @@ -8,7 +8,7 @@ package com.xiaoleilu.loServer; -import win.liyufan.im.ErrorCode; +import common.cn.wildfirechat.ErrorCode; public class RestResult { diff --git a/broker/src/main/java/com/xiaoleilu/loServer/action/Action.java b/broker/src/main/java/com/xiaoleilu/loServer/action/Action.java index c91e14d7..55a1911e 100755 --- a/broker/src/main/java/com/xiaoleilu/loServer/action/Action.java +++ b/broker/src/main/java/com/xiaoleilu/loServer/action/Action.java @@ -10,7 +10,6 @@ package com.xiaoleilu.loServer.action; import com.google.gson.Gson; import com.xiaoleilu.loServer.RestResult; -import com.xiaoleilu.loServer.action.admin.GetIMTokenAction; import com.xiaoleilu.loServer.annotation.RequireAuthentication; import com.xiaoleilu.loServer.handler.Request; import com.xiaoleilu.loServer.handler.Response; @@ -21,10 +20,9 @@ import io.netty.channel.ChannelHandlerContext; import io.netty.handler.codec.http.FullHttpRequest; import io.netty.handler.codec.http.HttpRequest; import io.netty.handler.codec.http.HttpResponseStatus; -import win.liyufan.im.DBUtil; -import win.liyufan.im.ErrorCode; +import common.cn.wildfirechat.ErrorCode; -import static win.liyufan.im.ErrorCode.ERROR_CODE_SUCCESS; +import static common.cn.wildfirechat.ErrorCode.ERROR_CODE_SUCCESS; /** * 请求处理接口
diff --git a/broker/src/main/java/com/xiaoleilu/loServer/action/IMAction.java b/broker/src/main/java/com/xiaoleilu/loServer/action/IMAction.java index 652a78c6..b1e30245 100755 --- a/broker/src/main/java/com/xiaoleilu/loServer/action/IMAction.java +++ b/broker/src/main/java/com/xiaoleilu/loServer/action/IMAction.java @@ -25,7 +25,7 @@ import io.netty.buffer.ByteBuf; import io.netty.buffer.Unpooled; import io.netty.handler.codec.http.FullHttpRequest; import io.netty.handler.codec.http.HttpResponseStatus; -import win.liyufan.im.ErrorCode; +import common.cn.wildfirechat.ErrorCode; import java.util.Base64; import java.util.concurrent.Executor; diff --git a/broker/src/main/java/com/xiaoleilu/loServer/action/RouteAction.java b/broker/src/main/java/com/xiaoleilu/loServer/action/RouteAction.java index e4be716c..d10edc2c 100755 --- a/broker/src/main/java/com/xiaoleilu/loServer/action/RouteAction.java +++ b/broker/src/main/java/com/xiaoleilu/loServer/action/RouteAction.java @@ -26,7 +26,7 @@ import io.netty.handler.codec.http.FullHttpRequest; import io.netty.handler.codec.http.HttpResponseStatus; import org.slf4j.Logger; import org.slf4j.LoggerFactory; -import win.liyufan.im.ErrorCode; +import common.cn.wildfirechat.ErrorCode; import java.util.Base64; import java.util.concurrent.Executor; diff --git a/broker/src/main/java/com/xiaoleilu/loServer/action/admin/AddGroupMemberAction.java b/broker/src/main/java/com/xiaoleilu/loServer/action/admin/AddGroupMemberAction.java index 4024897e..1d396d16 100755 --- a/broker/src/main/java/com/xiaoleilu/loServer/action/admin/AddGroupMemberAction.java +++ b/broker/src/main/java/com/xiaoleilu/loServer/action/admin/AddGroupMemberAction.java @@ -16,15 +16,13 @@ import com.xiaoleilu.loServer.annotation.Route; import com.xiaoleilu.loServer.handler.Request; import com.xiaoleilu.loServer.handler.Response; import cn.wildfirechat.pojos.InputAddGroupMember; -import cn.wildfirechat.pojos.InputCreateGroup; -import cn.wildfirechat.pojos.OutputCreateGroupResult; import io.moquette.persistence.RPCCenter; import io.moquette.persistence.TargetEntry; import io.netty.buffer.ByteBuf; import io.netty.buffer.Unpooled; import io.netty.handler.codec.http.FullHttpRequest; import io.netty.handler.codec.http.HttpResponseStatus; -import win.liyufan.im.ErrorCode; +import common.cn.wildfirechat.ErrorCode; import win.liyufan.im.IMTopic; import java.util.concurrent.Executor; diff --git a/broker/src/main/java/com/xiaoleilu/loServer/action/admin/AdminAction.java b/broker/src/main/java/com/xiaoleilu/loServer/action/admin/AdminAction.java index 55bf2d4e..adcb7b7e 100644 --- a/broker/src/main/java/com/xiaoleilu/loServer/action/admin/AdminAction.java +++ b/broker/src/main/java/com/xiaoleilu/loServer/action/admin/AdminAction.java @@ -13,11 +13,10 @@ import com.xiaoleilu.loServer.RestResult; import com.xiaoleilu.loServer.action.Action; import com.xiaoleilu.loServer.handler.Request; import com.xiaoleilu.loServer.handler.Response; -import cn.wildfirechat.pojos.InputCreateUser; import io.netty.handler.codec.http.HttpResponseStatus; import io.netty.util.internal.StringUtil; import org.apache.commons.codec.digest.DigestUtils; -import win.liyufan.im.ErrorCode; +import common.cn.wildfirechat.ErrorCode; import win.liyufan.im.RateLimiter; abstract public class AdminAction extends Action { diff --git a/broker/src/main/java/com/xiaoleilu/loServer/action/admin/BlockUserAction.java b/broker/src/main/java/com/xiaoleilu/loServer/action/admin/BlockUserAction.java index ef431137..07e039c1 100755 --- a/broker/src/main/java/com/xiaoleilu/loServer/action/admin/BlockUserAction.java +++ b/broker/src/main/java/com/xiaoleilu/loServer/action/admin/BlockUserAction.java @@ -20,7 +20,7 @@ import io.moquette.persistence.TargetEntry; import io.netty.handler.codec.http.FullHttpRequest; import io.netty.handler.codec.http.HttpResponseStatus; import io.netty.util.internal.StringUtil; -import win.liyufan.im.ErrorCode; +import common.cn.wildfirechat.ErrorCode; @Route("admin/user/status") @HttpMethod("POST") diff --git a/broker/src/main/java/com/xiaoleilu/loServer/action/admin/CheckUserOnlineAction.java b/broker/src/main/java/com/xiaoleilu/loServer/action/admin/CheckUserOnlineAction.java index 8ddffc77..76e6e50f 100755 --- a/broker/src/main/java/com/xiaoleilu/loServer/action/admin/CheckUserOnlineAction.java +++ b/broker/src/main/java/com/xiaoleilu/loServer/action/admin/CheckUserOnlineAction.java @@ -13,12 +13,11 @@ import com.xiaoleilu.loServer.annotation.Route; import com.xiaoleilu.loServer.handler.Request; import com.xiaoleilu.loServer.handler.Response; import cn.wildfirechat.pojos.InputGetUserInfo; -import cn.wildfirechat.pojos.OutputCreateUser; import io.moquette.persistence.RPCCenter; import io.moquette.persistence.TargetEntry; import io.netty.handler.codec.http.FullHttpRequest; import io.netty.util.internal.StringUtil; -import win.liyufan.im.ErrorCode; +import common.cn.wildfirechat.ErrorCode; @Route("/admin/user/onlinestatus") @HttpMethod("POST") diff --git a/broker/src/main/java/com/xiaoleilu/loServer/action/admin/CreateChatroomAction.java b/broker/src/main/java/com/xiaoleilu/loServer/action/admin/CreateChatroomAction.java index 5582c25f..ffcc15c0 100755 --- a/broker/src/main/java/com/xiaoleilu/loServer/action/admin/CreateChatroomAction.java +++ b/broker/src/main/java/com/xiaoleilu/loServer/action/admin/CreateChatroomAction.java @@ -21,7 +21,7 @@ import io.moquette.spi.impl.Utils; import io.netty.handler.codec.http.FullHttpRequest; import io.netty.handler.codec.http.HttpResponseStatus; import io.netty.util.internal.StringUtil; -import win.liyufan.im.ErrorCode; +import common.cn.wildfirechat.ErrorCode; @Route("/admin/chatroom") @HttpMethod("PUT") diff --git a/broker/src/main/java/com/xiaoleilu/loServer/action/admin/CreateGroupAction.java b/broker/src/main/java/com/xiaoleilu/loServer/action/admin/CreateGroupAction.java index 58640edb..f707835a 100755 --- a/broker/src/main/java/com/xiaoleilu/loServer/action/admin/CreateGroupAction.java +++ b/broker/src/main/java/com/xiaoleilu/loServer/action/admin/CreateGroupAction.java @@ -23,7 +23,7 @@ import io.netty.buffer.ByteBuf; import io.netty.buffer.Unpooled; import io.netty.handler.codec.http.FullHttpRequest; import io.netty.handler.codec.http.HttpResponseStatus; -import win.liyufan.im.ErrorCode; +import common.cn.wildfirechat.ErrorCode; import win.liyufan.im.IMTopic; import java.util.concurrent.Executor; diff --git a/broker/src/main/java/com/xiaoleilu/loServer/action/admin/CreateRobotAction.java b/broker/src/main/java/com/xiaoleilu/loServer/action/admin/CreateRobotAction.java index 4ee5c8f7..33b2f668 100755 --- a/broker/src/main/java/com/xiaoleilu/loServer/action/admin/CreateRobotAction.java +++ b/broker/src/main/java/com/xiaoleilu/loServer/action/admin/CreateRobotAction.java @@ -20,7 +20,7 @@ import cn.wildfirechat.pojos.OutputCreateRobot; import io.netty.handler.codec.http.FullHttpRequest; import io.netty.handler.codec.http.HttpResponseStatus; import io.netty.util.internal.StringUtil; -import win.liyufan.im.ErrorCode; +import common.cn.wildfirechat.ErrorCode; import win.liyufan.im.UUIDGenerator; @Route("admin/robot/create") diff --git a/broker/src/main/java/com/xiaoleilu/loServer/action/admin/CreateUserAction.java b/broker/src/main/java/com/xiaoleilu/loServer/action/admin/CreateUserAction.java index 698333a7..b2a31161 100755 --- a/broker/src/main/java/com/xiaoleilu/loServer/action/admin/CreateUserAction.java +++ b/broker/src/main/java/com/xiaoleilu/loServer/action/admin/CreateUserAction.java @@ -20,7 +20,7 @@ import cn.wildfirechat.pojos.OutputCreateUser; import io.netty.handler.codec.http.FullHttpRequest; import io.netty.handler.codec.http.HttpResponseStatus; import io.netty.util.internal.StringUtil; -import win.liyufan.im.ErrorCode; +import common.cn.wildfirechat.ErrorCode; import win.liyufan.im.UUIDGenerator; @Route("admin/user/create") diff --git a/broker/src/main/java/com/xiaoleilu/loServer/action/admin/DestoryChatroomAction.java b/broker/src/main/java/com/xiaoleilu/loServer/action/admin/DestoryChatroomAction.java index 4a2144a7..020708e0 100755 --- a/broker/src/main/java/com/xiaoleilu/loServer/action/admin/DestoryChatroomAction.java +++ b/broker/src/main/java/com/xiaoleilu/loServer/action/admin/DestoryChatroomAction.java @@ -19,7 +19,7 @@ import io.moquette.spi.impl.Utils; import io.netty.handler.codec.http.FullHttpRequest; import io.netty.handler.codec.http.HttpResponseStatus; import io.netty.util.internal.StringUtil; -import win.liyufan.im.ErrorCode; +import common.cn.wildfirechat.ErrorCode; @Route("/admin/chatroom") @HttpMethod("DELETE") diff --git a/broker/src/main/java/com/xiaoleilu/loServer/action/admin/DismissGroupAction.java b/broker/src/main/java/com/xiaoleilu/loServer/action/admin/DismissGroupAction.java index 4f7c2cd5..c73c12c1 100755 --- a/broker/src/main/java/com/xiaoleilu/loServer/action/admin/DismissGroupAction.java +++ b/broker/src/main/java/com/xiaoleilu/loServer/action/admin/DismissGroupAction.java @@ -16,14 +16,13 @@ import com.xiaoleilu.loServer.annotation.Route; import com.xiaoleilu.loServer.handler.Request; import com.xiaoleilu.loServer.handler.Response; import cn.wildfirechat.pojos.InputDismissGroupMember; -import cn.wildfirechat.pojos.InputKickoffGroupMember; import io.moquette.persistence.RPCCenter; import io.moquette.persistence.TargetEntry; import io.netty.buffer.ByteBuf; import io.netty.buffer.Unpooled; import io.netty.handler.codec.http.FullHttpRequest; import io.netty.handler.codec.http.HttpResponseStatus; -import win.liyufan.im.ErrorCode; +import common.cn.wildfirechat.ErrorCode; import win.liyufan.im.IMTopic; import java.util.concurrent.Executor; diff --git a/broker/src/main/java/com/xiaoleilu/loServer/action/admin/FriendRelationAction.java b/broker/src/main/java/com/xiaoleilu/loServer/action/admin/FriendRelationAction.java index 86d47def..3b89155e 100755 --- a/broker/src/main/java/com/xiaoleilu/loServer/action/admin/FriendRelationAction.java +++ b/broker/src/main/java/com/xiaoleilu/loServer/action/admin/FriendRelationAction.java @@ -16,7 +16,6 @@ import com.xiaoleilu.loServer.annotation.Route; import com.xiaoleilu.loServer.handler.Request; import com.xiaoleilu.loServer.handler.Response; import cn.wildfirechat.pojos.InputFriendRequest; -import cn.wildfirechat.pojos.OutputCreateGroupResult; import io.moquette.persistence.RPCCenter; import io.moquette.persistence.TargetEntry; import io.netty.buffer.ByteBuf; @@ -24,7 +23,7 @@ import io.netty.buffer.Unpooled; import io.netty.handler.codec.http.FullHttpRequest; import io.netty.handler.codec.http.HttpResponseStatus; import io.netty.util.internal.StringUtil; -import win.liyufan.im.ErrorCode; +import common.cn.wildfirechat.ErrorCode; import win.liyufan.im.IMTopic; import java.util.concurrent.Executor; diff --git a/broker/src/main/java/com/xiaoleilu/loServer/action/admin/GetChatroomInfoAction.java b/broker/src/main/java/com/xiaoleilu/loServer/action/admin/GetChatroomInfoAction.java index 97443883..757c8705 100755 --- a/broker/src/main/java/com/xiaoleilu/loServer/action/admin/GetChatroomInfoAction.java +++ b/broker/src/main/java/com/xiaoleilu/loServer/action/admin/GetChatroomInfoAction.java @@ -19,7 +19,7 @@ import cn.wildfirechat.pojos.OutputGetChatroomInfo; import io.netty.handler.codec.http.FullHttpRequest; import io.netty.handler.codec.http.HttpResponseStatus; import io.netty.util.internal.StringUtil; -import win.liyufan.im.ErrorCode; +import common.cn.wildfirechat.ErrorCode; @Route("/admin/chatroom") @HttpMethod("GET") diff --git a/broker/src/main/java/com/xiaoleilu/loServer/action/admin/GetIMTokenAction.java b/broker/src/main/java/com/xiaoleilu/loServer/action/admin/GetIMTokenAction.java index eaa2b3db..efba5303 100755 --- a/broker/src/main/java/com/xiaoleilu/loServer/action/admin/GetIMTokenAction.java +++ b/broker/src/main/java/com/xiaoleilu/loServer/action/admin/GetIMTokenAction.java @@ -18,7 +18,7 @@ import cn.wildfirechat.pojos.OutputGetIMTokenData; import io.moquette.persistence.RPCCenter; import io.moquette.persistence.TargetEntry; import io.netty.handler.codec.http.FullHttpRequest; -import win.liyufan.im.ErrorCode; +import common.cn.wildfirechat.ErrorCode; import win.liyufan.im.IMTopic; import java.util.Base64; diff --git a/broker/src/main/java/com/xiaoleilu/loServer/action/admin/GetUserAction.java b/broker/src/main/java/com/xiaoleilu/loServer/action/admin/GetUserAction.java index cc1eac06..e63eaecd 100755 --- a/broker/src/main/java/com/xiaoleilu/loServer/action/admin/GetUserAction.java +++ b/broker/src/main/java/com/xiaoleilu/loServer/action/admin/GetUserAction.java @@ -17,11 +17,10 @@ import com.xiaoleilu.loServer.handler.Request; import com.xiaoleilu.loServer.handler.Response; import cn.wildfirechat.pojos.InputCreateUser; import cn.wildfirechat.pojos.InputGetUserInfo; -import cn.wildfirechat.pojos.OutputCreateUser; import io.netty.handler.codec.http.FullHttpRequest; import io.netty.handler.codec.http.HttpResponseStatus; import io.netty.util.internal.StringUtil; -import win.liyufan.im.ErrorCode; +import common.cn.wildfirechat.ErrorCode; @Route("admin/user/info") @HttpMethod("POST") diff --git a/broker/src/main/java/com/xiaoleilu/loServer/action/admin/GetUserBlockStatusAction.java b/broker/src/main/java/com/xiaoleilu/loServer/action/admin/GetUserBlockStatusAction.java index 488a7e66..1abb45a4 100755 --- a/broker/src/main/java/com/xiaoleilu/loServer/action/admin/GetUserBlockStatusAction.java +++ b/broker/src/main/java/com/xiaoleilu/loServer/action/admin/GetUserBlockStatusAction.java @@ -15,12 +15,11 @@ import com.xiaoleilu.loServer.annotation.Route; import com.xiaoleilu.loServer.handler.Request; import com.xiaoleilu.loServer.handler.Response; import cn.wildfirechat.pojos.InputGetUserInfo; -import cn.wildfirechat.pojos.OutputCreateUser; import cn.wildfirechat.pojos.OutputUserStatus; import io.netty.handler.codec.http.FullHttpRequest; import io.netty.handler.codec.http.HttpResponseStatus; import io.netty.util.internal.StringUtil; -import win.liyufan.im.ErrorCode; +import common.cn.wildfirechat.ErrorCode; @Route("admin/user/checkstatus") @HttpMethod("POST") diff --git a/broker/src/main/java/com/xiaoleilu/loServer/action/admin/KickoffGroupMemberAction.java b/broker/src/main/java/com/xiaoleilu/loServer/action/admin/KickoffGroupMemberAction.java index 001bd04d..fdc585b4 100755 --- a/broker/src/main/java/com/xiaoleilu/loServer/action/admin/KickoffGroupMemberAction.java +++ b/broker/src/main/java/com/xiaoleilu/loServer/action/admin/KickoffGroupMemberAction.java @@ -15,7 +15,6 @@ import com.xiaoleilu.loServer.annotation.HttpMethod; import com.xiaoleilu.loServer.annotation.Route; import com.xiaoleilu.loServer.handler.Request; import com.xiaoleilu.loServer.handler.Response; -import cn.wildfirechat.pojos.InputAddGroupMember; import cn.wildfirechat.pojos.InputKickoffGroupMember; import io.moquette.persistence.RPCCenter; import io.moquette.persistence.TargetEntry; @@ -23,7 +22,7 @@ import io.netty.buffer.ByteBuf; import io.netty.buffer.Unpooled; import io.netty.handler.codec.http.FullHttpRequest; import io.netty.handler.codec.http.HttpResponseStatus; -import win.liyufan.im.ErrorCode; +import common.cn.wildfirechat.ErrorCode; import win.liyufan.im.IMTopic; import java.util.concurrent.Executor; diff --git a/broker/src/main/java/com/xiaoleilu/loServer/action/admin/RecallMessageAction.java b/broker/src/main/java/com/xiaoleilu/loServer/action/admin/RecallMessageAction.java index cdf6faa5..ead483d3 100755 --- a/broker/src/main/java/com/xiaoleilu/loServer/action/admin/RecallMessageAction.java +++ b/broker/src/main/java/com/xiaoleilu/loServer/action/admin/RecallMessageAction.java @@ -23,7 +23,7 @@ import io.netty.buffer.Unpooled; import io.netty.handler.codec.http.FullHttpRequest; import io.netty.handler.codec.http.HttpResponseStatus; import io.netty.util.internal.StringUtil; -import win.liyufan.im.ErrorCode; +import common.cn.wildfirechat.ErrorCode; import win.liyufan.im.IMTopic; import java.util.concurrent.Executor; diff --git a/broker/src/main/java/com/xiaoleilu/loServer/action/admin/SendMessageAction.java b/broker/src/main/java/com/xiaoleilu/loServer/action/admin/SendMessageAction.java index c321babd..2f244a66 100755 --- a/broker/src/main/java/com/xiaoleilu/loServer/action/admin/SendMessageAction.java +++ b/broker/src/main/java/com/xiaoleilu/loServer/action/admin/SendMessageAction.java @@ -24,7 +24,7 @@ import io.netty.buffer.ByteBuf; import io.netty.buffer.Unpooled; import io.netty.handler.codec.http.FullHttpRequest; import io.netty.handler.codec.http.HttpResponseStatus; -import win.liyufan.im.ErrorCode; +import common.cn.wildfirechat.ErrorCode; import win.liyufan.im.IMTopic; import java.util.concurrent.Executor; diff --git a/broker/src/main/java/com/xiaoleilu/loServer/action/admin/SensitiveWordAddAction.java b/broker/src/main/java/com/xiaoleilu/loServer/action/admin/SensitiveWordAddAction.java index e2387cdd..98d6b2ef 100755 --- a/broker/src/main/java/com/xiaoleilu/loServer/action/admin/SensitiveWordAddAction.java +++ b/broker/src/main/java/com/xiaoleilu/loServer/action/admin/SensitiveWordAddAction.java @@ -15,10 +15,9 @@ import com.xiaoleilu.loServer.annotation.Route; import com.xiaoleilu.loServer.handler.Request; import com.xiaoleilu.loServer.handler.Response; import cn.wildfirechat.pojos.InputOutputSensitiveWords; -import cn.wildfirechat.pojos.InputOutputUserBlockStatus; import io.netty.handler.codec.http.FullHttpRequest; import io.netty.handler.codec.http.HttpResponseStatus; -import win.liyufan.im.ErrorCode; +import common.cn.wildfirechat.ErrorCode; @Route("admin/sensitive/add") @HttpMethod("POST") diff --git a/broker/src/main/java/com/xiaoleilu/loServer/action/admin/SensitiveWordDeleteAction.java b/broker/src/main/java/com/xiaoleilu/loServer/action/admin/SensitiveWordDeleteAction.java index 193e5cdb..eab64355 100755 --- a/broker/src/main/java/com/xiaoleilu/loServer/action/admin/SensitiveWordDeleteAction.java +++ b/broker/src/main/java/com/xiaoleilu/loServer/action/admin/SensitiveWordDeleteAction.java @@ -17,7 +17,7 @@ import com.xiaoleilu.loServer.handler.Response; import cn.wildfirechat.pojos.InputOutputSensitiveWords; import io.netty.handler.codec.http.FullHttpRequest; import io.netty.handler.codec.http.HttpResponseStatus; -import win.liyufan.im.ErrorCode; +import common.cn.wildfirechat.ErrorCode; @Route("admin/sensitive/del") @HttpMethod("POST") diff --git a/broker/src/main/java/com/xiaoleilu/loServer/action/admin/SensitiveWordQueryAction.java b/broker/src/main/java/com/xiaoleilu/loServer/action/admin/SensitiveWordQueryAction.java index c1c0dc12..5cdfcb10 100755 --- a/broker/src/main/java/com/xiaoleilu/loServer/action/admin/SensitiveWordQueryAction.java +++ b/broker/src/main/java/com/xiaoleilu/loServer/action/admin/SensitiveWordQueryAction.java @@ -14,7 +14,7 @@ import com.xiaoleilu.loServer.handler.Request; import com.xiaoleilu.loServer.handler.Response; import cn.wildfirechat.pojos.InputOutputSensitiveWords; import io.netty.handler.codec.http.FullHttpRequest; -import win.liyufan.im.ErrorCode; +import common.cn.wildfirechat.ErrorCode; import java.util.List; diff --git a/broker/src/main/java/com/xiaoleilu/loServer/action/admin/TransferGroupAction.java b/broker/src/main/java/com/xiaoleilu/loServer/action/admin/TransferGroupAction.java index a08e8980..c7163de9 100755 --- a/broker/src/main/java/com/xiaoleilu/loServer/action/admin/TransferGroupAction.java +++ b/broker/src/main/java/com/xiaoleilu/loServer/action/admin/TransferGroupAction.java @@ -15,7 +15,6 @@ import com.xiaoleilu.loServer.annotation.HttpMethod; import com.xiaoleilu.loServer.annotation.Route; import com.xiaoleilu.loServer.handler.Request; import com.xiaoleilu.loServer.handler.Response; -import cn.wildfirechat.pojos.InputDismissGroupMember; import cn.wildfirechat.pojos.InputTransferGroup; import io.moquette.persistence.RPCCenter; import io.moquette.persistence.TargetEntry; @@ -23,7 +22,7 @@ import io.netty.buffer.ByteBuf; import io.netty.buffer.Unpooled; import io.netty.handler.codec.http.FullHttpRequest; import io.netty.handler.codec.http.HttpResponseStatus; -import win.liyufan.im.ErrorCode; +import common.cn.wildfirechat.ErrorCode; import win.liyufan.im.IMTopic; import java.util.concurrent.Executor; diff --git a/broker/src/main/java/com/xiaoleilu/loServer/action/channel/ChannelAction.java b/broker/src/main/java/com/xiaoleilu/loServer/action/channel/ChannelAction.java index 1860df88..c5227afd 100644 --- a/broker/src/main/java/com/xiaoleilu/loServer/action/channel/ChannelAction.java +++ b/broker/src/main/java/com/xiaoleilu/loServer/action/channel/ChannelAction.java @@ -14,14 +14,13 @@ import com.xiaoleilu.loServer.RestResult; import com.xiaoleilu.loServer.action.Action; import com.xiaoleilu.loServer.handler.Request; import com.xiaoleilu.loServer.handler.Response; -import io.moquette.persistence.RPCCenter; import io.moquette.spi.impl.Utils; import io.netty.handler.codec.http.FullHttpRequest; import io.netty.handler.codec.http.HttpRequest; import io.netty.handler.codec.http.HttpResponseStatus; import io.netty.util.internal.StringUtil; import org.apache.commons.codec.digest.DigestUtils; -import win.liyufan.im.ErrorCode; +import common.cn.wildfirechat.ErrorCode; import win.liyufan.im.RateLimiter; abstract public class ChannelAction extends Action { diff --git a/broker/src/main/java/com/xiaoleilu/loServer/action/channel/SendMessageAction.java b/broker/src/main/java/com/xiaoleilu/loServer/action/channel/SendMessageAction.java index f4e69598..ded36852 100755 --- a/broker/src/main/java/com/xiaoleilu/loServer/action/channel/SendMessageAction.java +++ b/broker/src/main/java/com/xiaoleilu/loServer/action/channel/SendMessageAction.java @@ -24,7 +24,7 @@ import io.netty.buffer.ByteBuf; import io.netty.buffer.Unpooled; import io.netty.handler.codec.http.FullHttpRequest; import io.netty.handler.codec.http.HttpResponseStatus; -import win.liyufan.im.ErrorCode; +import common.cn.wildfirechat.ErrorCode; import win.liyufan.im.IMTopic; import java.util.concurrent.Executor; diff --git a/broker/src/main/java/com/xiaoleilu/loServer/action/robot/GetUserAction.java b/broker/src/main/java/com/xiaoleilu/loServer/action/robot/GetUserAction.java index 12a12365..7d0323cc 100755 --- a/broker/src/main/java/com/xiaoleilu/loServer/action/robot/GetUserAction.java +++ b/broker/src/main/java/com/xiaoleilu/loServer/action/robot/GetUserAction.java @@ -17,11 +17,10 @@ import com.xiaoleilu.loServer.handler.Request; import com.xiaoleilu.loServer.handler.Response; import cn.wildfirechat.pojos.InputCreateUser; import cn.wildfirechat.pojos.InputGetUserInfo; -import cn.wildfirechat.pojos.OutputCreateUser; import io.netty.handler.codec.http.FullHttpRequest; import io.netty.handler.codec.http.HttpResponseStatus; import io.netty.util.internal.StringUtil; -import win.liyufan.im.ErrorCode; +import common.cn.wildfirechat.ErrorCode; @Route("admin/robot/user_info") @HttpMethod("POST") diff --git a/broker/src/main/java/com/xiaoleilu/loServer/action/robot/RobotAction.java b/broker/src/main/java/com/xiaoleilu/loServer/action/robot/RobotAction.java index 0406bbc7..455082bd 100644 --- a/broker/src/main/java/com/xiaoleilu/loServer/action/robot/RobotAction.java +++ b/broker/src/main/java/com/xiaoleilu/loServer/action/robot/RobotAction.java @@ -14,14 +14,13 @@ import com.xiaoleilu.loServer.RestResult; import com.xiaoleilu.loServer.action.Action; import com.xiaoleilu.loServer.handler.Request; import com.xiaoleilu.loServer.handler.Response; -import io.moquette.persistence.RPCCenter; import io.moquette.spi.impl.Utils; import io.netty.handler.codec.http.FullHttpRequest; import io.netty.handler.codec.http.HttpRequest; import io.netty.handler.codec.http.HttpResponseStatus; import io.netty.util.internal.StringUtil; import org.apache.commons.codec.digest.DigestUtils; -import win.liyufan.im.ErrorCode; +import common.cn.wildfirechat.ErrorCode; import win.liyufan.im.RateLimiter; import java.io.UnsupportedEncodingException; diff --git a/broker/src/main/java/com/xiaoleilu/loServer/action/robot/SendMessageAction.java b/broker/src/main/java/com/xiaoleilu/loServer/action/robot/SendMessageAction.java index 891261f8..c3b8531b 100755 --- a/broker/src/main/java/com/xiaoleilu/loServer/action/robot/SendMessageAction.java +++ b/broker/src/main/java/com/xiaoleilu/loServer/action/robot/SendMessageAction.java @@ -23,7 +23,7 @@ import io.netty.buffer.ByteBuf; import io.netty.buffer.Unpooled; import io.netty.handler.codec.http.FullHttpRequest; import io.netty.handler.codec.http.HttpResponseStatus; -import win.liyufan.im.ErrorCode; +import common.cn.wildfirechat.ErrorCode; import win.liyufan.im.IMTopic; import java.util.concurrent.Executor; diff --git a/broker/src/main/java/io/moquette/imhandler/AddFriendHandler.java b/broker/src/main/java/io/moquette/imhandler/AddFriendHandler.java index 6150b7c1..e9903fca 100644 --- a/broker/src/main/java/io/moquette/imhandler/AddFriendHandler.java +++ b/broker/src/main/java/io/moquette/imhandler/AddFriendHandler.java @@ -12,10 +12,10 @@ import cn.wildfirechat.proto.ProtoConstants; import cn.wildfirechat.proto.WFCMessage; import io.moquette.spi.impl.Qos1PublishHandler; import io.netty.buffer.ByteBuf; -import win.liyufan.im.ErrorCode; +import common.cn.wildfirechat.ErrorCode; import win.liyufan.im.IMTopic; -import static win.liyufan.im.ErrorCode.ERROR_CODE_SUCCESS; +import static common.cn.wildfirechat.ErrorCode.ERROR_CODE_SUCCESS; import static win.liyufan.im.IMTopic.HandleFriendRequestTopic; @Handler(IMTopic.AddFriendRequestTopic) diff --git a/broker/src/main/java/io/moquette/imhandler/AddGroupMember.java b/broker/src/main/java/io/moquette/imhandler/AddGroupMember.java index 89462871..bac1452e 100644 --- a/broker/src/main/java/io/moquette/imhandler/AddGroupMember.java +++ b/broker/src/main/java/io/moquette/imhandler/AddGroupMember.java @@ -12,10 +12,10 @@ import cn.wildfirechat.proto.WFCMessage; import cn.wildfirechat.pojos.GroupNotificationBinaryContent; import io.moquette.spi.impl.Qos1PublishHandler; import io.netty.buffer.ByteBuf; -import win.liyufan.im.ErrorCode; +import common.cn.wildfirechat.ErrorCode; import win.liyufan.im.IMTopic; -import static win.liyufan.im.ErrorCode.ERROR_CODE_SUCCESS; +import static common.cn.wildfirechat.ErrorCode.ERROR_CODE_SUCCESS; @Handler(value = IMTopic.AddGroupMemberTopic) public class AddGroupMember extends GroupHandler { diff --git a/broker/src/main/java/io/moquette/imhandler/BlackListRequestHandler.java b/broker/src/main/java/io/moquette/imhandler/BlackListRequestHandler.java index ce9e5279..ffb731f9 100644 --- a/broker/src/main/java/io/moquette/imhandler/BlackListRequestHandler.java +++ b/broker/src/main/java/io/moquette/imhandler/BlackListRequestHandler.java @@ -11,10 +11,10 @@ package io.moquette.imhandler; import cn.wildfirechat.proto.WFCMessage; import io.moquette.spi.impl.Qos1PublishHandler; import io.netty.buffer.ByteBuf; -import win.liyufan.im.ErrorCode; +import common.cn.wildfirechat.ErrorCode; import win.liyufan.im.IMTopic; -import static win.liyufan.im.ErrorCode.ERROR_CODE_SUCCESS; +import static common.cn.wildfirechat.ErrorCode.ERROR_CODE_SUCCESS; @Handler(IMTopic.BlackListUserTopic) public class BlackListRequestHandler extends GroupHandler { diff --git a/broker/src/main/java/io/moquette/imhandler/ChannelListenMember.java b/broker/src/main/java/io/moquette/imhandler/ChannelListenMember.java index 75dc0cfe..52839ec3 100644 --- a/broker/src/main/java/io/moquette/imhandler/ChannelListenMember.java +++ b/broker/src/main/java/io/moquette/imhandler/ChannelListenMember.java @@ -9,10 +9,9 @@ package io.moquette.imhandler; import cn.wildfirechat.proto.WFCMessage; -import cn.wildfirechat.pojos.GroupNotificationBinaryContent; import io.moquette.spi.impl.Qos1PublishHandler; import io.netty.buffer.ByteBuf; -import win.liyufan.im.ErrorCode; +import common.cn.wildfirechat.ErrorCode; import win.liyufan.im.IMTopic; import static win.liyufan.im.IMTopic.PutUserSettingTopic; diff --git a/broker/src/main/java/io/moquette/imhandler/ChannelSearchHandler.java b/broker/src/main/java/io/moquette/imhandler/ChannelSearchHandler.java index 98c2e9f5..c220e072 100644 --- a/broker/src/main/java/io/moquette/imhandler/ChannelSearchHandler.java +++ b/broker/src/main/java/io/moquette/imhandler/ChannelSearchHandler.java @@ -11,7 +11,7 @@ package io.moquette.imhandler; import cn.wildfirechat.proto.WFCMessage; import io.moquette.spi.impl.Qos1PublishHandler; import io.netty.buffer.ByteBuf; -import win.liyufan.im.ErrorCode; +import common.cn.wildfirechat.ErrorCode; import win.liyufan.im.IMTopic; import java.util.List; diff --git a/broker/src/main/java/io/moquette/imhandler/CreateChannelHandler.java b/broker/src/main/java/io/moquette/imhandler/CreateChannelHandler.java index 505d4ab4..ca7b6c55 100644 --- a/broker/src/main/java/io/moquette/imhandler/CreateChannelHandler.java +++ b/broker/src/main/java/io/moquette/imhandler/CreateChannelHandler.java @@ -10,10 +10,9 @@ package io.moquette.imhandler; import cn.wildfirechat.proto.WFCMessage; import com.hazelcast.util.StringUtil; -import cn.wildfirechat.pojos.GroupNotificationBinaryContent; import io.moquette.spi.impl.Qos1PublishHandler; import io.netty.buffer.ByteBuf; -import win.liyufan.im.ErrorCode; +import common.cn.wildfirechat.ErrorCode; import win.liyufan.im.IMTopic; import static win.liyufan.im.IMTopic.PutUserSettingTopic; diff --git a/broker/src/main/java/io/moquette/imhandler/CreateGroupHandler.java b/broker/src/main/java/io/moquette/imhandler/CreateGroupHandler.java index 053804de..1532c573 100644 --- a/broker/src/main/java/io/moquette/imhandler/CreateGroupHandler.java +++ b/broker/src/main/java/io/moquette/imhandler/CreateGroupHandler.java @@ -12,7 +12,7 @@ import cn.wildfirechat.proto.WFCMessage; import cn.wildfirechat.pojos.GroupNotificationBinaryContent; import io.moquette.spi.impl.Qos1PublishHandler; import io.netty.buffer.ByteBuf; -import win.liyufan.im.ErrorCode; +import common.cn.wildfirechat.ErrorCode; import win.liyufan.im.IMTopic; @Handler(value = IMTopic.CreateGroupTopic) diff --git a/broker/src/main/java/io/moquette/imhandler/DeleteFriendHandler.java b/broker/src/main/java/io/moquette/imhandler/DeleteFriendHandler.java index 62546750..95a2cd7e 100644 --- a/broker/src/main/java/io/moquette/imhandler/DeleteFriendHandler.java +++ b/broker/src/main/java/io/moquette/imhandler/DeleteFriendHandler.java @@ -11,7 +11,7 @@ package io.moquette.imhandler; import cn.wildfirechat.proto.WFCMessage; import io.moquette.spi.impl.Qos1PublishHandler; import io.netty.buffer.ByteBuf; -import win.liyufan.im.ErrorCode; +import common.cn.wildfirechat.ErrorCode; import win.liyufan.im.IMTopic; @Handler(IMTopic.DeleteFriendTopic) diff --git a/broker/src/main/java/io/moquette/imhandler/DismissGroupHandler.java b/broker/src/main/java/io/moquette/imhandler/DismissGroupHandler.java index 2e053af2..e838f744 100644 --- a/broker/src/main/java/io/moquette/imhandler/DismissGroupHandler.java +++ b/broker/src/main/java/io/moquette/imhandler/DismissGroupHandler.java @@ -13,7 +13,7 @@ import cn.wildfirechat.proto.WFCMessage; import cn.wildfirechat.pojos.GroupNotificationBinaryContent; import io.moquette.spi.impl.Qos1PublishHandler; import io.netty.buffer.ByteBuf; -import win.liyufan.im.ErrorCode; +import common.cn.wildfirechat.ErrorCode; import static win.liyufan.im.IMTopic.DismissGroupTopic; diff --git a/broker/src/main/java/io/moquette/imhandler/DistoryChannelHandler.java b/broker/src/main/java/io/moquette/imhandler/DistoryChannelHandler.java index ddb400cd..ac0501d6 100644 --- a/broker/src/main/java/io/moquette/imhandler/DistoryChannelHandler.java +++ b/broker/src/main/java/io/moquette/imhandler/DistoryChannelHandler.java @@ -11,7 +11,7 @@ package io.moquette.imhandler; import cn.wildfirechat.proto.WFCMessage; import io.moquette.spi.impl.Qos1PublishHandler; import io.netty.buffer.ByteBuf; -import win.liyufan.im.ErrorCode; +import common.cn.wildfirechat.ErrorCode; import win.liyufan.im.IMTopic; import static win.liyufan.im.IMTopic.PutUserSettingTopic; diff --git a/broker/src/main/java/io/moquette/imhandler/FriendPullHandler.java b/broker/src/main/java/io/moquette/imhandler/FriendPullHandler.java index dd064bc2..0966acfc 100644 --- a/broker/src/main/java/io/moquette/imhandler/FriendPullHandler.java +++ b/broker/src/main/java/io/moquette/imhandler/FriendPullHandler.java @@ -12,7 +12,7 @@ import cn.wildfirechat.proto.WFCMessage; import com.xiaoleilu.loServer.model.FriendData; import io.moquette.spi.impl.Qos1PublishHandler; import io.netty.buffer.ByteBuf; -import win.liyufan.im.ErrorCode; +import common.cn.wildfirechat.ErrorCode; import win.liyufan.im.IMTopic; import java.util.List; diff --git a/broker/src/main/java/io/moquette/imhandler/FriendRequestPullHandler.java b/broker/src/main/java/io/moquette/imhandler/FriendRequestPullHandler.java index f9d6babd..7cf45b5f 100644 --- a/broker/src/main/java/io/moquette/imhandler/FriendRequestPullHandler.java +++ b/broker/src/main/java/io/moquette/imhandler/FriendRequestPullHandler.java @@ -11,7 +11,7 @@ package io.moquette.imhandler; import cn.wildfirechat.proto.WFCMessage; import io.moquette.spi.impl.Qos1PublishHandler; import io.netty.buffer.ByteBuf; -import win.liyufan.im.ErrorCode; +import common.cn.wildfirechat.ErrorCode; import win.liyufan.im.IMTopic; import java.util.List; diff --git a/broker/src/main/java/io/moquette/imhandler/GetChannelInfoHandler.java b/broker/src/main/java/io/moquette/imhandler/GetChannelInfoHandler.java index 763ded48..eb79c72a 100644 --- a/broker/src/main/java/io/moquette/imhandler/GetChannelInfoHandler.java +++ b/broker/src/main/java/io/moquette/imhandler/GetChannelInfoHandler.java @@ -11,7 +11,7 @@ package io.moquette.imhandler; import cn.wildfirechat.proto.WFCMessage; import io.moquette.spi.impl.Qos1PublishHandler; import io.netty.buffer.ByteBuf; -import win.liyufan.im.ErrorCode; +import common.cn.wildfirechat.ErrorCode; import win.liyufan.im.IMTopic; @Handler(IMTopic.ChannelPullTopic) diff --git a/broker/src/main/java/io/moquette/imhandler/GetChatroomInfoHandler.java b/broker/src/main/java/io/moquette/imhandler/GetChatroomInfoHandler.java index 4d8a8734..522f5970 100644 --- a/broker/src/main/java/io/moquette/imhandler/GetChatroomInfoHandler.java +++ b/broker/src/main/java/io/moquette/imhandler/GetChatroomInfoHandler.java @@ -11,7 +11,7 @@ package io.moquette.imhandler; import cn.wildfirechat.proto.WFCMessage; import io.moquette.spi.impl.Qos1PublishHandler; import io.netty.buffer.ByteBuf; -import win.liyufan.im.ErrorCode; +import common.cn.wildfirechat.ErrorCode; import win.liyufan.im.IMTopic; @Handler(IMTopic.GetChatroomInfoTopic) diff --git a/broker/src/main/java/io/moquette/imhandler/GetChatroomMemberHandler.java b/broker/src/main/java/io/moquette/imhandler/GetChatroomMemberHandler.java index ea4e3786..c7a3b4a4 100644 --- a/broker/src/main/java/io/moquette/imhandler/GetChatroomMemberHandler.java +++ b/broker/src/main/java/io/moquette/imhandler/GetChatroomMemberHandler.java @@ -11,7 +11,7 @@ package io.moquette.imhandler; import cn.wildfirechat.proto.WFCMessage; import io.moquette.spi.impl.Qos1PublishHandler; import io.netty.buffer.ByteBuf; -import win.liyufan.im.ErrorCode; +import common.cn.wildfirechat.ErrorCode; import win.liyufan.im.IMTopic; @Handler(IMTopic.GetChatroomMemberTopic) diff --git a/broker/src/main/java/io/moquette/imhandler/GetGroupInfoHandler.java b/broker/src/main/java/io/moquette/imhandler/GetGroupInfoHandler.java index 58d3625c..bdf622f7 100644 --- a/broker/src/main/java/io/moquette/imhandler/GetGroupInfoHandler.java +++ b/broker/src/main/java/io/moquette/imhandler/GetGroupInfoHandler.java @@ -11,7 +11,7 @@ package io.moquette.imhandler; import cn.wildfirechat.proto.WFCMessage; import io.moquette.spi.impl.Qos1PublishHandler; import io.netty.buffer.ByteBuf; -import win.liyufan.im.ErrorCode; +import common.cn.wildfirechat.ErrorCode; import win.liyufan.im.IMTopic; import java.util.List; diff --git a/broker/src/main/java/io/moquette/imhandler/GetGroupMemberHandler.java b/broker/src/main/java/io/moquette/imhandler/GetGroupMemberHandler.java index 2cd3be02..6d48f193 100644 --- a/broker/src/main/java/io/moquette/imhandler/GetGroupMemberHandler.java +++ b/broker/src/main/java/io/moquette/imhandler/GetGroupMemberHandler.java @@ -11,13 +11,13 @@ package io.moquette.imhandler; import cn.wildfirechat.proto.WFCMessage; import io.moquette.spi.impl.Qos1PublishHandler; import io.netty.buffer.ByteBuf; -import win.liyufan.im.ErrorCode; +import common.cn.wildfirechat.ErrorCode; import win.liyufan.im.IMTopic; import java.util.ArrayList; import java.util.List; -import static win.liyufan.im.ErrorCode.ERROR_CODE_SUCCESS; +import static common.cn.wildfirechat.ErrorCode.ERROR_CODE_SUCCESS; @Handler(IMTopic.GetGroupMemberTopic) public class GetGroupMemberHandler extends IMHandler { diff --git a/broker/src/main/java/io/moquette/imhandler/GetQiniuUploadTokenHandler.java b/broker/src/main/java/io/moquette/imhandler/GetQiniuUploadTokenHandler.java index a18bdfce..ec597e26 100644 --- a/broker/src/main/java/io/moquette/imhandler/GetQiniuUploadTokenHandler.java +++ b/broker/src/main/java/io/moquette/imhandler/GetQiniuUploadTokenHandler.java @@ -14,7 +14,7 @@ import com.xiaoleilu.loServer.action.UploadFileAction; import io.moquette.server.config.MediaServerConfig; import io.moquette.spi.impl.Qos1PublishHandler; import io.netty.buffer.ByteBuf; -import win.liyufan.im.ErrorCode; +import common.cn.wildfirechat.ErrorCode; import win.liyufan.im.IMTopic; @Handler(IMTopic.GetQiniuUploadTokenTopic) diff --git a/broker/src/main/java/io/moquette/imhandler/GetTokenHandler.java b/broker/src/main/java/io/moquette/imhandler/GetTokenHandler.java index f017e9c7..54616f16 100644 --- a/broker/src/main/java/io/moquette/imhandler/GetTokenHandler.java +++ b/broker/src/main/java/io/moquette/imhandler/GetTokenHandler.java @@ -13,7 +13,7 @@ import io.moquette.persistence.MemorySessionStore; import io.moquette.spi.impl.Qos1PublishHandler; import io.moquette.spi.impl.security.TokenAuthenticator; import io.netty.buffer.ByteBuf; -import win.liyufan.im.ErrorCode; +import common.cn.wildfirechat.ErrorCode; import win.liyufan.im.IMTopic; @Handler(IMTopic.GetTokenTopic) diff --git a/broker/src/main/java/io/moquette/imhandler/GetUserInfoHandler.java b/broker/src/main/java/io/moquette/imhandler/GetUserInfoHandler.java index 67080e96..ec0a4e90 100644 --- a/broker/src/main/java/io/moquette/imhandler/GetUserInfoHandler.java +++ b/broker/src/main/java/io/moquette/imhandler/GetUserInfoHandler.java @@ -11,10 +11,10 @@ package io.moquette.imhandler; import cn.wildfirechat.proto.WFCMessage; import io.moquette.spi.impl.Qos1PublishHandler; import io.netty.buffer.ByteBuf; -import win.liyufan.im.ErrorCode; +import common.cn.wildfirechat.ErrorCode; import win.liyufan.im.IMTopic; -import static win.liyufan.im.ErrorCode.ERROR_CODE_SUCCESS; +import static common.cn.wildfirechat.ErrorCode.ERROR_CODE_SUCCESS; @Handler(IMTopic.GetUserInfoTopic) public class GetUserInfoHandler extends IMHandler { diff --git a/broker/src/main/java/io/moquette/imhandler/GetUserSettingHandler.java b/broker/src/main/java/io/moquette/imhandler/GetUserSettingHandler.java index 6e72dca2..15c1a952 100644 --- a/broker/src/main/java/io/moquette/imhandler/GetUserSettingHandler.java +++ b/broker/src/main/java/io/moquette/imhandler/GetUserSettingHandler.java @@ -11,10 +11,10 @@ package io.moquette.imhandler; import cn.wildfirechat.proto.WFCMessage; import io.moquette.spi.impl.Qos1PublishHandler; import io.netty.buffer.ByteBuf; -import win.liyufan.im.ErrorCode; +import common.cn.wildfirechat.ErrorCode; import win.liyufan.im.IMTopic; -import static win.liyufan.im.ErrorCode.ERROR_CODE_SUCCESS; +import static common.cn.wildfirechat.ErrorCode.ERROR_CODE_SUCCESS; @Handler(IMTopic.GetUserSettingTopic) public class GetUserSettingHandler extends IMHandler { diff --git a/broker/src/main/java/io/moquette/imhandler/HandleFriendRequestHandler.java b/broker/src/main/java/io/moquette/imhandler/HandleFriendRequestHandler.java index 846411ba..cf06afed 100644 --- a/broker/src/main/java/io/moquette/imhandler/HandleFriendRequestHandler.java +++ b/broker/src/main/java/io/moquette/imhandler/HandleFriendRequestHandler.java @@ -12,11 +12,11 @@ import cn.wildfirechat.proto.ProtoConstants; import cn.wildfirechat.proto.WFCMessage; import io.moquette.spi.impl.Qos1PublishHandler; import io.netty.buffer.ByteBuf; -import win.liyufan.im.ErrorCode; +import common.cn.wildfirechat.ErrorCode; import win.liyufan.im.IMTopic; import win.liyufan.im.MessageShardingUtil; -import static win.liyufan.im.ErrorCode.ERROR_CODE_SUCCESS; +import static common.cn.wildfirechat.ErrorCode.ERROR_CODE_SUCCESS; @Handler(IMTopic.HandleFriendRequestTopic) public class HandleFriendRequestHandler extends IMHandler { diff --git a/broker/src/main/java/io/moquette/imhandler/IMHandler.java b/broker/src/main/java/io/moquette/imhandler/IMHandler.java index 9cf153ab..f60bade1 100755 --- a/broker/src/main/java/io/moquette/imhandler/IMHandler.java +++ b/broker/src/main/java/io/moquette/imhandler/IMHandler.java @@ -23,24 +23,19 @@ import io.netty.buffer.Unpooled; import io.netty.util.internal.StringUtil; import org.slf4j.Logger; import org.slf4j.LoggerFactory; -import win.liyufan.im.ErrorCode; +import common.cn.wildfirechat.ErrorCode; import win.liyufan.im.RateLimiter; import win.liyufan.im.Utility; -import java.lang.annotation.Inherited; import java.lang.annotation.Retention; import java.lang.annotation.RetentionPolicy; import java.lang.reflect.InvocationTargetException; import java.lang.reflect.Method; -import java.util.Iterator; import java.util.LinkedHashSet; import java.util.Set; -import java.util.Spliterator; -import java.util.concurrent.ScheduledExecutorService; -import java.util.function.Consumer; -import static win.liyufan.im.ErrorCode.ERROR_CODE_OVER_FREQUENCY; -import static win.liyufan.im.ErrorCode.ERROR_CODE_SUCCESS; +import static common.cn.wildfirechat.ErrorCode.ERROR_CODE_OVER_FREQUENCY; +import static common.cn.wildfirechat.ErrorCode.ERROR_CODE_SUCCESS; /** * 请求处理接口
diff --git a/broker/src/main/java/io/moquette/imhandler/JoinChatroomHandler.java b/broker/src/main/java/io/moquette/imhandler/JoinChatroomHandler.java index 3d784e0d..28e46c6b 100644 --- a/broker/src/main/java/io/moquette/imhandler/JoinChatroomHandler.java +++ b/broker/src/main/java/io/moquette/imhandler/JoinChatroomHandler.java @@ -11,7 +11,7 @@ package io.moquette.imhandler; import cn.wildfirechat.proto.WFCMessage; import io.moquette.spi.impl.Qos1PublishHandler; import io.netty.buffer.ByteBuf; -import win.liyufan.im.ErrorCode; +import common.cn.wildfirechat.ErrorCode; import win.liyufan.im.IMTopic; diff --git a/broker/src/main/java/io/moquette/imhandler/KickoffGroupMember.java b/broker/src/main/java/io/moquette/imhandler/KickoffGroupMember.java index 88e719bd..68a05004 100644 --- a/broker/src/main/java/io/moquette/imhandler/KickoffGroupMember.java +++ b/broker/src/main/java/io/moquette/imhandler/KickoffGroupMember.java @@ -13,7 +13,7 @@ import cn.wildfirechat.proto.WFCMessage; import cn.wildfirechat.pojos.GroupNotificationBinaryContent; import io.moquette.spi.impl.Qos1PublishHandler; import io.netty.buffer.ByteBuf; -import win.liyufan.im.ErrorCode; +import common.cn.wildfirechat.ErrorCode; import static win.liyufan.im.IMTopic.KickoffGroupMemberTopic; @Handler(value = KickoffGroupMemberTopic) diff --git a/broker/src/main/java/io/moquette/imhandler/LoadRemoteMessagesHandler.java b/broker/src/main/java/io/moquette/imhandler/LoadRemoteMessagesHandler.java index 75b5e83c..012d0c5b 100644 --- a/broker/src/main/java/io/moquette/imhandler/LoadRemoteMessagesHandler.java +++ b/broker/src/main/java/io/moquette/imhandler/LoadRemoteMessagesHandler.java @@ -8,11 +8,10 @@ package io.moquette.imhandler; -import cn.wildfirechat.proto.ProtoConstants; import cn.wildfirechat.proto.WFCMessage; import io.moquette.spi.impl.Qos1PublishHandler; import io.netty.buffer.ByteBuf; -import win.liyufan.im.ErrorCode; +import common.cn.wildfirechat.ErrorCode; import win.liyufan.im.IMTopic; @Handler(value = IMTopic.LoadRemoteMessagesTopic) diff --git a/broker/src/main/java/io/moquette/imhandler/ModifyChannelInfoHandler.java b/broker/src/main/java/io/moquette/imhandler/ModifyChannelInfoHandler.java index 529a7de9..f4be4436 100644 --- a/broker/src/main/java/io/moquette/imhandler/ModifyChannelInfoHandler.java +++ b/broker/src/main/java/io/moquette/imhandler/ModifyChannelInfoHandler.java @@ -9,10 +9,9 @@ package io.moquette.imhandler; import cn.wildfirechat.proto.WFCMessage; -import cn.wildfirechat.pojos.GroupNotificationBinaryContent; import io.moquette.spi.impl.Qos1PublishHandler; import io.netty.buffer.ByteBuf; -import win.liyufan.im.ErrorCode; +import common.cn.wildfirechat.ErrorCode; import static win.liyufan.im.IMTopic.ModifyChannelInfoTopic; diff --git a/broker/src/main/java/io/moquette/imhandler/ModifyGroupAliasHandler.java b/broker/src/main/java/io/moquette/imhandler/ModifyGroupAliasHandler.java index b34e40bd..71f30385 100644 --- a/broker/src/main/java/io/moquette/imhandler/ModifyGroupAliasHandler.java +++ b/broker/src/main/java/io/moquette/imhandler/ModifyGroupAliasHandler.java @@ -12,10 +12,10 @@ import cn.wildfirechat.proto.WFCMessage; import cn.wildfirechat.pojos.GroupNotificationBinaryContent; import io.moquette.spi.impl.Qos1PublishHandler; import io.netty.buffer.ByteBuf; -import win.liyufan.im.ErrorCode; +import common.cn.wildfirechat.ErrorCode; import win.liyufan.im.IMTopic; -import static win.liyufan.im.ErrorCode.ERROR_CODE_SUCCESS; +import static common.cn.wildfirechat.ErrorCode.ERROR_CODE_SUCCESS; @Handler(IMTopic.ModifyGroupAliasTopic) public class ModifyGroupAliasHandler extends GroupHandler { diff --git a/broker/src/main/java/io/moquette/imhandler/ModifyGroupInfoHandler.java b/broker/src/main/java/io/moquette/imhandler/ModifyGroupInfoHandler.java index 991e7ac2..4aff8108 100644 --- a/broker/src/main/java/io/moquette/imhandler/ModifyGroupInfoHandler.java +++ b/broker/src/main/java/io/moquette/imhandler/ModifyGroupInfoHandler.java @@ -12,11 +12,11 @@ import cn.wildfirechat.proto.WFCMessage; import cn.wildfirechat.pojos.GroupNotificationBinaryContent; import io.moquette.spi.impl.Qos1PublishHandler; import io.netty.buffer.ByteBuf; -import win.liyufan.im.ErrorCode; +import common.cn.wildfirechat.ErrorCode; import static cn.wildfirechat.proto.ProtoConstants.ModifyGroupInfoType.Modify_Group_Name; import static cn.wildfirechat.proto.ProtoConstants.ModifyGroupInfoType.Modify_Group_Portrait; -import static win.liyufan.im.ErrorCode.ERROR_CODE_SUCCESS; +import static common.cn.wildfirechat.ErrorCode.ERROR_CODE_SUCCESS; import static win.liyufan.im.IMTopic.ModifyGroupInfoTopic; @Handler(value = ModifyGroupInfoTopic) diff --git a/broker/src/main/java/io/moquette/imhandler/ModifyMyInfoHandler.java b/broker/src/main/java/io/moquette/imhandler/ModifyMyInfoHandler.java index e237bfa3..998c3d4d 100644 --- a/broker/src/main/java/io/moquette/imhandler/ModifyMyInfoHandler.java +++ b/broker/src/main/java/io/moquette/imhandler/ModifyMyInfoHandler.java @@ -11,7 +11,7 @@ package io.moquette.imhandler; import cn.wildfirechat.proto.WFCMessage; import io.moquette.spi.impl.Qos1PublishHandler; import io.netty.buffer.ByteBuf; -import win.liyufan.im.ErrorCode; +import common.cn.wildfirechat.ErrorCode; import win.liyufan.im.IMTopic; @Handler(IMTopic.ModifyMyInfoTopic) diff --git a/broker/src/main/java/io/moquette/imhandler/PullMessageHandler.java b/broker/src/main/java/io/moquette/imhandler/PullMessageHandler.java index 51f8c02c..8f89fbf5 100644 --- a/broker/src/main/java/io/moquette/imhandler/PullMessageHandler.java +++ b/broker/src/main/java/io/moquette/imhandler/PullMessageHandler.java @@ -10,10 +10,9 @@ package io.moquette.imhandler; import cn.wildfirechat.proto.ProtoConstants; import cn.wildfirechat.proto.WFCMessage; -import com.google.protobuf.InvalidProtocolBufferException; import io.moquette.spi.impl.Qos1PublishHandler; import io.netty.buffer.ByteBuf; -import win.liyufan.im.ErrorCode; +import common.cn.wildfirechat.ErrorCode; import win.liyufan.im.IMTopic; @Handler(value = IMTopic.PullMessageTopic) diff --git a/broker/src/main/java/io/moquette/imhandler/PutUserSettingHandler.java b/broker/src/main/java/io/moquette/imhandler/PutUserSettingHandler.java index 262ebb44..b20522e0 100644 --- a/broker/src/main/java/io/moquette/imhandler/PutUserSettingHandler.java +++ b/broker/src/main/java/io/moquette/imhandler/PutUserSettingHandler.java @@ -11,7 +11,7 @@ package io.moquette.imhandler; import cn.wildfirechat.proto.WFCMessage; import io.moquette.spi.impl.Qos1PublishHandler; import io.netty.buffer.ByteBuf; -import win.liyufan.im.ErrorCode; +import common.cn.wildfirechat.ErrorCode; import win.liyufan.im.IMTopic; @Handler(IMTopic.PutUserSettingTopic) diff --git a/broker/src/main/java/io/moquette/imhandler/QuitChatroomHandler.java b/broker/src/main/java/io/moquette/imhandler/QuitChatroomHandler.java index 9b83a0bf..802c2afa 100644 --- a/broker/src/main/java/io/moquette/imhandler/QuitChatroomHandler.java +++ b/broker/src/main/java/io/moquette/imhandler/QuitChatroomHandler.java @@ -11,7 +11,7 @@ package io.moquette.imhandler; import cn.wildfirechat.proto.WFCMessage; import io.moquette.spi.impl.Qos1PublishHandler; import io.netty.buffer.ByteBuf; -import win.liyufan.im.ErrorCode; +import common.cn.wildfirechat.ErrorCode; import win.liyufan.im.IMTopic; @Handler(IMTopic.QuitChatroomTopic) diff --git a/broker/src/main/java/io/moquette/imhandler/QuitGroupHandler.java b/broker/src/main/java/io/moquette/imhandler/QuitGroupHandler.java index 8b8ca0fb..5e1ddd39 100644 --- a/broker/src/main/java/io/moquette/imhandler/QuitGroupHandler.java +++ b/broker/src/main/java/io/moquette/imhandler/QuitGroupHandler.java @@ -12,7 +12,7 @@ import cn.wildfirechat.proto.WFCMessage; import cn.wildfirechat.pojos.GroupNotificationBinaryContent; import io.moquette.spi.impl.Qos1PublishHandler; import io.netty.buffer.ByteBuf; -import win.liyufan.im.ErrorCode; +import common.cn.wildfirechat.ErrorCode; import static win.liyufan.im.IMTopic.QuitGroupTopic; diff --git a/broker/src/main/java/io/moquette/imhandler/RecallMessageHandler.java b/broker/src/main/java/io/moquette/imhandler/RecallMessageHandler.java index 1f8534d3..d8a00c6f 100644 --- a/broker/src/main/java/io/moquette/imhandler/RecallMessageHandler.java +++ b/broker/src/main/java/io/moquette/imhandler/RecallMessageHandler.java @@ -11,7 +11,7 @@ package io.moquette.imhandler; import cn.wildfirechat.proto.WFCMessage; import io.moquette.spi.impl.Qos1PublishHandler; import io.netty.buffer.ByteBuf; -import win.liyufan.im.ErrorCode; +import common.cn.wildfirechat.ErrorCode; import win.liyufan.im.IMTopic; import java.util.LinkedHashSet; diff --git a/broker/src/main/java/io/moquette/imhandler/RouteHandler.java b/broker/src/main/java/io/moquette/imhandler/RouteHandler.java index 71f9bf0e..7eec7c55 100644 --- a/broker/src/main/java/io/moquette/imhandler/RouteHandler.java +++ b/broker/src/main/java/io/moquette/imhandler/RouteHandler.java @@ -13,7 +13,7 @@ import com.hazelcast.core.Member; import io.moquette.spi.ClientSession; import io.moquette.spi.impl.Qos1PublishHandler; import io.netty.buffer.ByteBuf; -import win.liyufan.im.ErrorCode; +import common.cn.wildfirechat.ErrorCode; import win.liyufan.im.IMTopic; import static io.moquette.BrokerConstants.HZ_Cluster_Node_External_IP; diff --git a/broker/src/main/java/io/moquette/imhandler/SendMessageHandler.java b/broker/src/main/java/io/moquette/imhandler/SendMessageHandler.java index 1cd6539d..0f88e72c 100644 --- a/broker/src/main/java/io/moquette/imhandler/SendMessageHandler.java +++ b/broker/src/main/java/io/moquette/imhandler/SendMessageHandler.java @@ -14,10 +14,9 @@ import com.hazelcast.util.StringUtil; import io.moquette.BrokerConstants; import io.moquette.spi.impl.Qos1PublishHandler; import io.netty.buffer.ByteBuf; -import win.liyufan.im.ErrorCode; +import common.cn.wildfirechat.ErrorCode; import win.liyufan.im.IMTopic; import win.liyufan.im.MessageShardingUtil; -import win.liyufan.im.SensitiveFilter; import java.util.Set; diff --git a/broker/src/main/java/io/moquette/imhandler/SetFriendAliasRequestHandler.java b/broker/src/main/java/io/moquette/imhandler/SetFriendAliasRequestHandler.java index a74122f6..8f3b93ae 100644 --- a/broker/src/main/java/io/moquette/imhandler/SetFriendAliasRequestHandler.java +++ b/broker/src/main/java/io/moquette/imhandler/SetFriendAliasRequestHandler.java @@ -11,10 +11,10 @@ package io.moquette.imhandler; import cn.wildfirechat.proto.WFCMessage; import io.moquette.spi.impl.Qos1PublishHandler; import io.netty.buffer.ByteBuf; -import win.liyufan.im.ErrorCode; +import common.cn.wildfirechat.ErrorCode; import win.liyufan.im.IMTopic; -import static win.liyufan.im.ErrorCode.ERROR_CODE_SUCCESS; +import static common.cn.wildfirechat.ErrorCode.ERROR_CODE_SUCCESS; @Handler(IMTopic.SetFriendAliasTopic) public class SetFriendAliasRequestHandler extends GroupHandler { diff --git a/broker/src/main/java/io/moquette/imhandler/SyncFriendRequestUnreadHandler.java b/broker/src/main/java/io/moquette/imhandler/SyncFriendRequestUnreadHandler.java index 7cec78df..4664d618 100644 --- a/broker/src/main/java/io/moquette/imhandler/SyncFriendRequestUnreadHandler.java +++ b/broker/src/main/java/io/moquette/imhandler/SyncFriendRequestUnreadHandler.java @@ -11,10 +11,10 @@ package io.moquette.imhandler; import cn.wildfirechat.proto.WFCMessage; import io.moquette.spi.impl.Qos1PublishHandler; import io.netty.buffer.ByteBuf; -import win.liyufan.im.ErrorCode; +import common.cn.wildfirechat.ErrorCode; import win.liyufan.im.IMTopic; -import static win.liyufan.im.ErrorCode.ERROR_CODE_SUCCESS; +import static common.cn.wildfirechat.ErrorCode.ERROR_CODE_SUCCESS; @Handler(IMTopic.RriendRequestUnreadSyncTopic) public class SyncFriendRequestUnreadHandler extends GroupHandler { diff --git a/broker/src/main/java/io/moquette/imhandler/TransferChannelHandler.java b/broker/src/main/java/io/moquette/imhandler/TransferChannelHandler.java index b9d5d6a4..94605663 100644 --- a/broker/src/main/java/io/moquette/imhandler/TransferChannelHandler.java +++ b/broker/src/main/java/io/moquette/imhandler/TransferChannelHandler.java @@ -9,10 +9,9 @@ package io.moquette.imhandler; import cn.wildfirechat.proto.WFCMessage; -import cn.wildfirechat.pojos.GroupNotificationBinaryContent; import io.moquette.spi.impl.Qos1PublishHandler; import io.netty.buffer.ByteBuf; -import win.liyufan.im.ErrorCode; +import common.cn.wildfirechat.ErrorCode; import win.liyufan.im.IMTopic; @Handler(IMTopic.TransferChannelInfoTopic) diff --git a/broker/src/main/java/io/moquette/imhandler/TransferGroupHandler.java b/broker/src/main/java/io/moquette/imhandler/TransferGroupHandler.java index 188ec279..f3ceb6e0 100644 --- a/broker/src/main/java/io/moquette/imhandler/TransferGroupHandler.java +++ b/broker/src/main/java/io/moquette/imhandler/TransferGroupHandler.java @@ -12,10 +12,10 @@ import cn.wildfirechat.proto.WFCMessage; import cn.wildfirechat.pojos.GroupNotificationBinaryContent; import io.moquette.spi.impl.Qos1PublishHandler; import io.netty.buffer.ByteBuf; -import win.liyufan.im.ErrorCode; +import common.cn.wildfirechat.ErrorCode; import win.liyufan.im.IMTopic; -import static win.liyufan.im.ErrorCode.ERROR_CODE_SUCCESS; +import static common.cn.wildfirechat.ErrorCode.ERROR_CODE_SUCCESS; @Handler(IMTopic.TransferGroupTopic) public class TransferGroupHandler extends GroupHandler { diff --git a/broker/src/main/java/io/moquette/imhandler/UploadDeviceTokenHandler.java b/broker/src/main/java/io/moquette/imhandler/UploadDeviceTokenHandler.java index 823d3831..c884b17e 100644 --- a/broker/src/main/java/io/moquette/imhandler/UploadDeviceTokenHandler.java +++ b/broker/src/main/java/io/moquette/imhandler/UploadDeviceTokenHandler.java @@ -13,7 +13,7 @@ import cn.wildfirechat.proto.WFCMessage; import io.moquette.persistence.MemorySessionStore; import io.moquette.spi.impl.Qos1PublishHandler; import io.netty.buffer.ByteBuf; -import win.liyufan.im.ErrorCode; +import common.cn.wildfirechat.ErrorCode; import win.liyufan.im.IMTopic; diff --git a/broker/src/main/java/io/moquette/imhandler/UserSearchHandler.java b/broker/src/main/java/io/moquette/imhandler/UserSearchHandler.java index 62cef9b7..9b29679c 100644 --- a/broker/src/main/java/io/moquette/imhandler/UserSearchHandler.java +++ b/broker/src/main/java/io/moquette/imhandler/UserSearchHandler.java @@ -11,7 +11,7 @@ package io.moquette.imhandler; import cn.wildfirechat.proto.WFCMessage; import io.moquette.spi.impl.Qos1PublishHandler; import io.netty.buffer.ByteBuf; -import win.liyufan.im.ErrorCode; +import common.cn.wildfirechat.ErrorCode; import win.liyufan.im.IMTopic; import java.util.List; diff --git a/broker/src/main/java/io/moquette/persistence/MemoryMessagesStore.java b/broker/src/main/java/io/moquette/persistence/MemoryMessagesStore.java index af9a41f0..702dd74c 100755 --- a/broker/src/main/java/io/moquette/persistence/MemoryMessagesStore.java +++ b/broker/src/main/java/io/moquette/persistence/MemoryMessagesStore.java @@ -23,6 +23,7 @@ import com.hazelcast.core.*; import com.hazelcast.util.StringUtil; import com.xiaoleilu.loServer.model.FriendData; import cn.wildfirechat.pojos.InputOutputUserBlockStatus; +import common.cn.wildfirechat.ErrorCode; import io.moquette.server.Server; import io.moquette.spi.IMatchingCondition; import io.moquette.spi.IMessagesStore; diff --git a/broker/src/main/java/io/moquette/persistence/MemorySessionStore.java b/broker/src/main/java/io/moquette/persistence/MemorySessionStore.java index ae0b824b..ee8e0b1e 100755 --- a/broker/src/main/java/io/moquette/persistence/MemorySessionStore.java +++ b/broker/src/main/java/io/moquette/persistence/MemorySessionStore.java @@ -23,12 +23,9 @@ import io.moquette.spi.ClientSession; import io.moquette.spi.IMessagesStore.StoredMessage; import io.moquette.spi.ISessionsStore; -import io.netty.util.internal.StringUtil; import org.slf4j.Logger; import org.slf4j.LoggerFactory; -import win.liyufan.im.ErrorCode; -import win.liyufan.im.UserSettingScope; -import win.liyufan.im.Utility; +import common.cn.wildfirechat.ErrorCode; import java.util.*; import java.util.concurrent.*; diff --git a/broker/src/main/java/io/moquette/persistence/RPCCenter.java b/broker/src/main/java/io/moquette/persistence/RPCCenter.java index 620059db..e6159d82 100644 --- a/broker/src/main/java/io/moquette/persistence/RPCCenter.java +++ b/broker/src/main/java/io/moquette/persistence/RPCCenter.java @@ -12,7 +12,7 @@ import io.moquette.persistence.remote.*; import io.moquette.server.Server; import org.slf4j.Logger; import org.slf4j.LoggerFactory; -import win.liyufan.im.ErrorCode; +import common.cn.wildfirechat.ErrorCode; import java.util.concurrent.*; import java.util.concurrent.atomic.AtomicInteger; diff --git a/broker/src/main/java/io/moquette/server/ConnectionDescriptorStore.java b/broker/src/main/java/io/moquette/server/ConnectionDescriptorStore.java index af7b342a..6f02d73d 100644 --- a/broker/src/main/java/io/moquette/server/ConnectionDescriptorStore.java +++ b/broker/src/main/java/io/moquette/server/ConnectionDescriptorStore.java @@ -27,7 +27,7 @@ import io.netty.handler.codec.mqtt.MqttMessage; import io.netty.handler.codec.mqtt.MqttMessageType; import org.slf4j.Logger; import org.slf4j.LoggerFactory; -import win.liyufan.im.ErrorCode; +import common.cn.wildfirechat.ErrorCode; import java.util.ArrayList; import java.util.Collection; diff --git a/broker/src/main/java/io/moquette/spi/IMessagesStore.java b/broker/src/main/java/io/moquette/spi/IMessagesStore.java index e8f4d6b8..b72240e8 100755 --- a/broker/src/main/java/io/moquette/spi/IMessagesStore.java +++ b/broker/src/main/java/io/moquette/spi/IMessagesStore.java @@ -25,7 +25,7 @@ import io.moquette.spi.impl.subscriptions.Topic; import io.netty.buffer.ByteBuf; import io.netty.buffer.Unpooled; import io.netty.handler.codec.mqtt.MqttQoS; -import win.liyufan.im.ErrorCode; +import common.cn.wildfirechat.ErrorCode; import java.util.Collection; import java.util.List; diff --git a/broker/src/main/java/io/moquette/spi/ISessionsStore.java b/broker/src/main/java/io/moquette/spi/ISessionsStore.java index 46fd9d9c..fc035767 100755 --- a/broker/src/main/java/io/moquette/spi/ISessionsStore.java +++ b/broker/src/main/java/io/moquette/spi/ISessionsStore.java @@ -19,10 +19,9 @@ package io.moquette.spi; import cn.wildfirechat.proto.WFCMessage; import io.moquette.persistence.MemorySessionStore.Session; import io.moquette.spi.IMessagesStore.StoredMessage; -import win.liyufan.im.ErrorCode; +import common.cn.wildfirechat.ErrorCode; import java.util.Collection; -import java.util.List; import java.util.Queue; /** diff --git a/broker/src/main/java/io/moquette/spi/impl/Qos1PublishHandler.java b/broker/src/main/java/io/moquette/spi/impl/Qos1PublishHandler.java index b6996b4f..8c296309 100755 --- a/broker/src/main/java/io/moquette/spi/impl/Qos1PublishHandler.java +++ b/broker/src/main/java/io/moquette/spi/impl/Qos1PublishHandler.java @@ -19,9 +19,9 @@ package io.moquette.spi.impl; import static io.moquette.spi.impl.Utils.readBytesAndRewind; import static io.netty.handler.codec.mqtt.MqttMessageIdVariableHeader.from; import static io.netty.handler.codec.mqtt.MqttQoS.AT_MOST_ONCE; -import static win.liyufan.im.ErrorCode.ERROR_CODE_NOT_IMPLEMENT; -import static win.liyufan.im.ErrorCode.ERROR_CODE_OVER_FREQUENCY; -import static win.liyufan.im.ErrorCode.ERROR_CODE_SUCCESS; +import static common.cn.wildfirechat.ErrorCode.ERROR_CODE_NOT_IMPLEMENT; +import static common.cn.wildfirechat.ErrorCode.ERROR_CODE_OVER_FREQUENCY; +import static common.cn.wildfirechat.ErrorCode.ERROR_CODE_SUCCESS; import java.io.IOException; import java.util.*; @@ -56,7 +56,7 @@ import io.netty.channel.Channel; import io.netty.handler.codec.mqtt.MqttFixedHeader; import io.netty.handler.codec.mqtt.MqttMessageType; import io.netty.handler.codec.mqtt.MqttPublishMessage; -import win.liyufan.im.ErrorCode; +import common.cn.wildfirechat.ErrorCode; import win.liyufan.im.IMTopic; import win.liyufan.im.RateLimiter; import win.liyufan.im.Utility; diff --git a/broker/src/main/java/win/liyufan/im/ErrorCode.java b/common/src/main/java/common/cn/wildfirechat/ErrorCode.java similarity index 98% rename from broker/src/main/java/win/liyufan/im/ErrorCode.java rename to common/src/main/java/common/cn/wildfirechat/ErrorCode.java index f67a2c96..48b42786 100755 --- a/broker/src/main/java/win/liyufan/im/ErrorCode.java +++ b/common/src/main/java/common/cn/wildfirechat/ErrorCode.java @@ -6,7 +6,7 @@ * file that was distributed with this source code. */ -package win.liyufan.im; +package common.cn.wildfirechat; public enum ErrorCode { //General error diff --git a/pom.xml b/pom.xml index b9a19bf6..e21a6844 100755 --- a/pom.xml +++ b/pom.xml @@ -35,8 +35,9 @@ broker wildfire_jmeter client - distribution common + sdk + distribution diff --git a/sdk/pom.xml b/sdk/pom.xml new file mode 100644 index 00000000..03d6ac95 --- /dev/null +++ b/sdk/pom.xml @@ -0,0 +1,93 @@ + + + + wildfirechat-parent + cn.wildfirechat + 0.20 + + 4.0.0 + + sdk + + + + com.google.code.gson + gson + 2.8.2 + + + + commons-io + commons-io + 2.5 + + + + com.googlecode.json-simple + json-simple + 1.1.1 + + + + org.slf4j + slf4j-api + 1.7.5 + + + + org.slf4j + slf4j-log4j12 + 1.7.5 + + + + + commons-httpclient + commons-httpclient + 3.1 + + + + uk.org.lidalia + slf4j-test + 1.0.0-jdk6 + test + + + + com.google.code.findbugs + annotations + 2.0.3 + provided + + + + org.mockito + mockito-all + 1.9.5 + jar + test + + + + com.github.qcloudsms + qcloudsms + 1.0.5 + + + + commons-codec + commons-codec + 1.10 + + + + cn.wildfirechat + common + ${project.version} + + + + diff --git a/sdk/src/main/java/cn/wildfirechat/sdk/ChatAdmin.java b/sdk/src/main/java/cn/wildfirechat/sdk/ChatAdmin.java new file mode 100644 index 00000000..8455cb29 --- /dev/null +++ b/sdk/src/main/java/cn/wildfirechat/sdk/ChatAdmin.java @@ -0,0 +1,25 @@ +package cn.wildfirechat.sdk; + +import cn.wildfirechat.sdk.model.*; + +public class ChatAdmin { + public static void init(String url, String secret) { + HttpUtils.init(url, secret); + } + + public static IMResult getUserByName(String mobile) throws Exception { + String path = "/admin/user/info"; + UserName name = new UserName(mobile); + return HttpUtils.httpJsonPost(path, name, User.class); + } + + public static IMResult createUser(User user) throws Exception { + String path = "/admin/user/create"; + return HttpUtils.httpJsonPost(path, user, UserId.class); + } + + public static IMResult getUserToken(String userId, String clientId) throws Exception { + String path = "/admin/user/token"; + return HttpUtils.httpJsonPost(path, new GetTokenRequest(userId, clientId), Token.class); + } +} diff --git a/sdk/src/main/java/cn/wildfirechat/sdk/HttpUtils.java b/sdk/src/main/java/cn/wildfirechat/sdk/HttpUtils.java new file mode 100644 index 00000000..be9b8c5c --- /dev/null +++ b/sdk/src/main/java/cn/wildfirechat/sdk/HttpUtils.java @@ -0,0 +1,109 @@ +package cn.wildfirechat.sdk; + +import cn.wildfirechat.sdk.model.IMResult; +import com.google.gson.Gson; +import ikidou.reflect.TypeBuilder; +import org.apache.commons.codec.digest.DigestUtils; +import org.apache.http.HttpResponse; +import org.apache.http.HttpStatus; +import org.apache.http.client.HttpClient; +import org.apache.http.client.methods.HttpPost; +import org.apache.http.entity.StringEntity; +import org.apache.http.impl.client.HttpClientBuilder; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; + +import java.io.BufferedReader; +import java.io.InputStreamReader; +import java.lang.reflect.Type; +import java.nio.charset.Charset; + + +public class HttpUtils { + private static final Logger LOG = LoggerFactory.getLogger(HttpUtils.class); + + private static String adminUrl; + private static String adminSecret; + + static void init(String url, String secret) { + adminUrl = url; + adminSecret = secret; + } + + static IMResult httpJsonPost(String path, Object object, Class clazz) throws Exception{ + if (isNullOrEmpty(adminUrl) || isNullOrEmpty(path)) { + LOG.error("Not init IM SDK correctly. Do you forget init it?"); + throw new Exception("SDK url or secret lack!"); + } + + String url = adminUrl + path; + HttpPost post = null; + try { + HttpClient httpClient = HttpClientBuilder.create().build(); + + int nonce = (int)(Math.random() * 100000 + 3); + long timestamp = System.currentTimeMillis(); + String str = nonce + "|" + adminSecret + "|" + timestamp; + String sign = DigestUtils.sha1Hex(str); + + + post = new HttpPost(url); + post.setHeader("Content-type", "application/json; charset=utf-8"); + post.setHeader("Connection", "Keep-Alive"); + post.setHeader("nonce", nonce + ""); + post.setHeader("timestamp", "" + timestamp); + post.setHeader("sign", sign); + + String jsonStr = new Gson().toJson(object); + LOG.info("http request content: {}", jsonStr); + + StringEntity entity = new StringEntity(jsonStr, Charset.forName("UTF-8")); + entity.setContentEncoding("UTF-8"); + entity.setContentType("application/json"); + post.setEntity(entity); + HttpResponse response = httpClient.execute(post); + + int statusCode = response.getStatusLine().getStatusCode(); + if(statusCode != HttpStatus.SC_OK){ + LOG.info("Request error: "+statusCode); + throw new Exception("Http request error with code:" + statusCode); + }else{ + BufferedReader in = new BufferedReader(new InputStreamReader(response.getEntity() + .getContent(),"utf-8")); + StringBuffer sb = new StringBuffer(); + String line; + String NL = System.getProperty("line.separator"); + while ((line = in.readLine()) != null) { + sb.append(line + NL); + } + + in.close(); + + String content = sb.toString(); + LOG.info("http request response content: {}", content); + + return fromJsonObject(content, clazz); + } + } catch (Exception e) { + e.printStackTrace(); + throw e; + }finally{ + if(post != null){ + post.releaseConnection(); + } + } + } + + private static IMResult fromJsonObject(String content, Class clazz) { + Type type = TypeBuilder + .newInstance(IMResult.class) + .addTypeParam(clazz) + .build(); + return new Gson().fromJson(content, type); + } + + private static boolean isNullOrEmpty(String str) { + return str == null || str.isEmpty(); + } + +} diff --git a/sdk/src/main/java/cn/wildfirechat/sdk/model/GetTokenRequest.java b/sdk/src/main/java/cn/wildfirechat/sdk/model/GetTokenRequest.java new file mode 100755 index 00000000..885ff81f --- /dev/null +++ b/sdk/src/main/java/cn/wildfirechat/sdk/model/GetTokenRequest.java @@ -0,0 +1,27 @@ +package cn.wildfirechat.sdk.model; + +public class GetTokenRequest { + private String userId; + private String clientId; + + public GetTokenRequest(String userId, String clientId) { + this.userId = userId; + this.clientId = clientId; + } + + public String getClientId() { + return clientId; + } + + public void setClientId(String clientId) { + this.clientId = clientId; + } + + public String getUserId() { + return userId; + } + + public void setUserId(String userId) { + this.userId = userId; + } +} diff --git a/sdk/src/main/java/cn/wildfirechat/sdk/model/IMResult.java b/sdk/src/main/java/cn/wildfirechat/sdk/model/IMResult.java new file mode 100755 index 00000000..b3001549 --- /dev/null +++ b/sdk/src/main/java/cn/wildfirechat/sdk/model/IMResult.java @@ -0,0 +1,38 @@ +package cn.wildfirechat.sdk.model; + +import common.cn.wildfirechat.ErrorCode; + +public class IMResult { + + public int code; + public String msg; + public T result; + + public int getCode() { + return code; + } + + public void setCode(int code) { + this.code = code; + } + + public ErrorCode getErrorCode() { + return ErrorCode.fromCode(code); + } + + public String getMsg() { + return msg; + } + + public void setMsg(String msg) { + this.msg = msg; + } + + public T getResult() { + return result; + } + + public void setResult(T result) { + this.result = result; + } +} diff --git a/sdk/src/main/java/cn/wildfirechat/sdk/model/SendMessageResult.java b/sdk/src/main/java/cn/wildfirechat/sdk/model/SendMessageResult.java new file mode 100644 index 00000000..aeb2152c --- /dev/null +++ b/sdk/src/main/java/cn/wildfirechat/sdk/model/SendMessageResult.java @@ -0,0 +1,30 @@ +package cn.wildfirechat.sdk.model; + +public class SendMessageResult { + private long messageUid; + private long timestamp; + + public SendMessageResult() { + } + + public SendMessageResult(long messageUid, long timestamp) { + this.messageUid = messageUid; + this.timestamp = timestamp; + } + + public long getMessageUid() { + return messageUid; + } + + public void setMessageUid(long messageUid) { + this.messageUid = messageUid; + } + + public long getTimestamp() { + return timestamp; + } + + public void setTimestamp(long timestamp) { + this.timestamp = timestamp; + } +} diff --git a/sdk/src/main/java/cn/wildfirechat/sdk/model/Token.java b/sdk/src/main/java/cn/wildfirechat/sdk/model/Token.java new file mode 100644 index 00000000..69a7443a --- /dev/null +++ b/sdk/src/main/java/cn/wildfirechat/sdk/model/Token.java @@ -0,0 +1,22 @@ +package cn.wildfirechat.sdk.model; + +public class Token { + private String token; + private String userId; + + public String getToken() { + return token; + } + + public void setToken(String token) { + this.token = token; + } + + public String getUserId() { + return userId; + } + + public void setUserId(String userId) { + this.userId = userId; + } +} diff --git a/sdk/src/main/java/cn/wildfirechat/sdk/model/User.java b/sdk/src/main/java/cn/wildfirechat/sdk/model/User.java new file mode 100644 index 00000000..20e59fe0 --- /dev/null +++ b/sdk/src/main/java/cn/wildfirechat/sdk/model/User.java @@ -0,0 +1,121 @@ +package cn.wildfirechat.sdk.model; + +public class User { + private String userId; + private String name; + private String password; + private String displayName; + private String portrait; + private int gender; + private String mobile; + private String email; + private String address; + private String company; + private String social; + private String extra; + private long updateDt; + + public String getSocial() { + return social; + } + + public void setSocial(String social) { + this.social = social; + } + + public long getUpdateDt() { + return updateDt; + } + + public void setUpdateDt(long updateDt) { + this.updateDt = updateDt; + } + + public String getUserId() { + return userId; + } + + public void setUserId(String userId) { + this.userId = userId; + } + + public String getName() { + return name; + } + + public void setName(String name) { + this.name = name; + } + + public String getPassword() { + return password; + } + + public void setPassword(String password) { + this.password = password; + } + + public String getDisplayName() { + return displayName; + } + + public void setDisplayName(String displayName) { + this.displayName = displayName; + } + + public String getPortrait() { + return portrait; + } + + public void setPortrait(String portrait) { + this.portrait = portrait; + } + + public String getMobile() { + return mobile; + } + + public void setMobile(String mobile) { + this.mobile = mobile; + } + + public String getEmail() { + return email; + } + + public void setEmail(String email) { + this.email = email; + } + + public String getAddress() { + return address; + } + + public void setAddress(String address) { + this.address = address; + } + + public String getCompany() { + return company; + } + + public void setCompany(String company) { + this.company = company; + } + + public String getExtra() { + return extra; + } + + public void setExtra(String extra) { + this.extra = extra; + } + + public int getGender() { + return gender; + } + + public void setGender(int gender) { + this.gender = gender; + } +} diff --git a/sdk/src/main/java/cn/wildfirechat/sdk/model/UserId.java b/sdk/src/main/java/cn/wildfirechat/sdk/model/UserId.java new file mode 100755 index 00000000..283375d2 --- /dev/null +++ b/sdk/src/main/java/cn/wildfirechat/sdk/model/UserId.java @@ -0,0 +1,17 @@ +package cn.wildfirechat.sdk.model; + +public class UserId { + private String userId; + + public UserId(String userId) { + this.userId = userId; + } + + public String getUserId() { + return userId; + } + + public void setUserId(String userId) { + this.userId = userId; + } +} diff --git a/sdk/src/main/java/cn/wildfirechat/sdk/model/UserName.java b/sdk/src/main/java/cn/wildfirechat/sdk/model/UserName.java new file mode 100755 index 00000000..58d97028 --- /dev/null +++ b/sdk/src/main/java/cn/wildfirechat/sdk/model/UserName.java @@ -0,0 +1,17 @@ +package cn.wildfirechat.sdk.model; + +public class UserName { + private String name; + + public UserName(String name) { + this.name = name; + } + + public String getName() { + return name; + } + + public void setName(String name) { + this.name = name; + } +} diff --git a/sdk/src/main/java/ikidou/reflect/TypeBuilder.java b/sdk/src/main/java/ikidou/reflect/TypeBuilder.java new file mode 100755 index 00000000..15be1624 --- /dev/null +++ b/sdk/src/main/java/ikidou/reflect/TypeBuilder.java @@ -0,0 +1,110 @@ +/* + * Copyright 2016 ikidou + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +package ikidou.reflect; + +import ikidou.reflect.exception.TypeException; +import ikidou.reflect.typeimpl.ParameterizedTypeImpl; +import ikidou.reflect.typeimpl.WildcardTypeImpl; + +import java.lang.reflect.Type; +import java.util.ArrayList; +import java.util.List; + +public class TypeBuilder { + private final TypeBuilder parent; + private final Class raw; + private final List args = new ArrayList<>(); + + + private TypeBuilder(Class raw, TypeBuilder parent) { + assert raw != null; + this.raw = raw; + this.parent = parent; + } + + public static TypeBuilder newInstance(Class raw) { + return new TypeBuilder(raw, null); + } + + private static TypeBuilder newInstance(Class raw, TypeBuilder parent) { + return new TypeBuilder(raw, parent); + } + + + public TypeBuilder beginSubType(Class raw) { + return newInstance(raw, this); + } + + public TypeBuilder endSubType() { + if (parent == null) { + throw new TypeException("expect beginSubType() before endSubType()"); + } + + parent.addTypeParam(getType()); + + return parent; + } + + public TypeBuilder addTypeParam(Class clazz) { + return addTypeParam((Type) clazz); + } + + public TypeBuilder addTypeParamExtends(Class... classes) { + if (classes == null) { + throw new NullPointerException("addTypeParamExtends() expect not null Class"); + } + + WildcardTypeImpl wildcardType = new WildcardTypeImpl(null, classes); + + return addTypeParam(wildcardType); + } + + public TypeBuilder addTypeParamSuper(Class... classes) { + if (classes == null) { + throw new NullPointerException("addTypeParamSuper() expect not null Class"); + } + + WildcardTypeImpl wildcardType = new WildcardTypeImpl(classes, null); + + return addTypeParam(wildcardType); + } + + public TypeBuilder addTypeParam(Type type) { + if (type == null) { + throw new NullPointerException("addTypeParam expect not null Type"); + } + + args.add(type); + + return this; + } + + public Type build() { + if (parent != null) { + throw new TypeException("expect endSubType() before build()"); + } + + return getType(); + } + + private Type getType() { + if (args.isEmpty()) { + return raw; + } + return new ParameterizedTypeImpl(raw, args.toArray(new Type[args.size()]), null); + } +} diff --git a/sdk/src/main/java/ikidou/reflect/TypeToken.java b/sdk/src/main/java/ikidou/reflect/TypeToken.java new file mode 100755 index 00000000..8accb649 --- /dev/null +++ b/sdk/src/main/java/ikidou/reflect/TypeToken.java @@ -0,0 +1,39 @@ +/* + * Copyright 2016 ikidou + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +package ikidou.reflect; + +import ikidou.reflect.exception.TypeException; + +import java.lang.reflect.ParameterizedType; +import java.lang.reflect.Type; + +public abstract class TypeToken { + private final Type type; + + public TypeToken() { + Type superclass = getClass().getGenericSuperclass(); + if (superclass instanceof Class) { + throw new TypeException("No generics found!"); + } + ParameterizedType type = (ParameterizedType) superclass; + this.type = type.getActualTypeArguments()[0]; + } + + public Type getType() { + return type; + } +} diff --git a/sdk/src/main/java/ikidou/reflect/exception/TypeException.java b/sdk/src/main/java/ikidou/reflect/exception/TypeException.java new file mode 100755 index 00000000..1e19fdc0 --- /dev/null +++ b/sdk/src/main/java/ikidou/reflect/exception/TypeException.java @@ -0,0 +1,38 @@ +/* + * Copyright 2016 ikidou + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +package ikidou.reflect.exception; + +public class TypeException extends RuntimeException { + public TypeException() { + } + + public TypeException(String message) { + super(message); + } + + public TypeException(String message, Throwable cause) { + super(message, cause); + } + + public TypeException(Throwable cause) { + super(cause); + } + + public TypeException(String message, Throwable cause, boolean enableSuppression, boolean writableStackTrace) { + super(message, cause, enableSuppression, writableStackTrace); + } +} diff --git a/sdk/src/main/java/ikidou/reflect/typeimpl/ParameterizedTypeImpl.java b/sdk/src/main/java/ikidou/reflect/typeimpl/ParameterizedTypeImpl.java new file mode 100755 index 00000000..5809cdbb --- /dev/null +++ b/sdk/src/main/java/ikidou/reflect/typeimpl/ParameterizedTypeImpl.java @@ -0,0 +1,123 @@ +/* + * Copyright 2016 ikidou + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +package ikidou.reflect.typeimpl; + +import ikidou.reflect.exception.TypeException; + +import java.lang.reflect.ParameterizedType; +import java.lang.reflect.Type; +import java.lang.reflect.TypeVariable; +import java.util.Arrays; + +@SuppressWarnings("SpellCheckingInspection") +public class ParameterizedTypeImpl implements ParameterizedType { + private final Class raw; + private final Type[] args; + private final Type owner; + + public ParameterizedTypeImpl(Class raw, Type[] args, Type owner) { + this.raw = raw; + this.args = args != null ? args : new Type[0]; + this.owner = owner; + checkArgs(); + } + + private void checkArgs() { + if (raw == null) { + throw new TypeException("raw class can't be null"); + } + TypeVariable[] typeParameters = raw.getTypeParameters(); + if (args.length != 0 && typeParameters.length != args.length) { + throw new TypeException(raw.getName() + " expect " + typeParameters.length + " arg(s), got " + args.length); + } + } + + @Override + public Type[] getActualTypeArguments() { + return args; + } + + @Override + public Type getRawType() { + return raw; + } + + @Override + public Type getOwnerType() { + return owner; + } + + @Override + public String toString() { + StringBuilder sb = new StringBuilder(); + sb.append(raw.getName()); + if (args.length != 0) { + sb.append('<'); + for (int i = 0; i < args.length; i++) { + if (i != 0) { + sb.append(", "); + } + Type type = args[i]; + if (type instanceof Class) { + Class clazz = (Class) type; + + if (clazz.isArray()) { + int count = 0; + do { + count++; + clazz = clazz.getComponentType(); + } while (clazz.isArray()); + + sb.append(clazz.getName()); + + for (int j = count; j > 0; j--) { + sb.append("[]"); + } + } else { + sb.append(clazz.getName()); + } + } else { + sb.append(args[i].toString()); + } + } + sb.append('>'); + } + return sb.toString(); + } + + @Override + public boolean equals(Object o) { + if (this == o) return true; + if (o == null || getClass() != o.getClass()) return false; + + ParameterizedTypeImpl that = (ParameterizedTypeImpl) o; + + if (!raw.equals(that.raw)) return false; + // Probably incorrect - comparing Object[] arrays with Arrays.equals + if (!Arrays.equals(args, that.args)) return false; + return owner != null ? owner.equals(that.owner) : that.owner == null; + + } + + @Override + public int hashCode() { + int result = raw.hashCode(); + result = 31 * result + Arrays.hashCode(args); + result = 31 * result + (owner != null ? owner.hashCode() : 0); + return result; + } +} diff --git a/sdk/src/main/java/ikidou/reflect/typeimpl/WildcardTypeImpl.java b/sdk/src/main/java/ikidou/reflect/typeimpl/WildcardTypeImpl.java new file mode 100755 index 00000000..f67618b8 --- /dev/null +++ b/sdk/src/main/java/ikidou/reflect/typeimpl/WildcardTypeImpl.java @@ -0,0 +1,106 @@ +/* + * Copyright 2016 ikidou + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +package ikidou.reflect.typeimpl; + +import java.lang.reflect.Type; +import java.lang.reflect.WildcardType; +import java.util.Arrays; + +public class WildcardTypeImpl implements WildcardType { + private final Class[] upper; + private final Class[] lower; + + public WildcardTypeImpl(Class[] lower, Class[] upper) { + this.lower = lower != null ? lower : new Class[0]; + this.upper = upper != null ? upper : new Class[0]; + + checkArgs(); + } + + private void checkArgs() { + if (lower.length == 0 && upper.length == 0) { + throw new IllegalArgumentException("lower or upper can't be null"); + } + + checkArgs(lower); + checkArgs(upper); + } + + private void checkArgs(Class[] args) { + for (int i = 1; i < args.length; i++) { + Class clazz = args[i]; + if (!clazz.isInterface()) { + throw new IllegalArgumentException(clazz.getName() + " not a interface!"); + } + } + } + + @Override + public Type[] getUpperBounds() { + return upper; + } + + @Override + public Type[] getLowerBounds() { + return lower; + } + + @Override + public String toString() { + if (upper.length > 0) { + if (upper[0] == Object.class) { + return "?"; + } + return getTypeString("? extends ", upper); + } else { + return getTypeString("? super ", lower); + } + } + + private String getTypeString(String prefix, Class[] type) { + StringBuilder sb = new StringBuilder(); + sb.append(prefix); + + for (int i = 0; i < type.length; i++) { + if (i != 0) { + sb.append(" & "); + } + sb.append(type[i].getName()); + } + + return sb.toString(); + + } + + @Override + public boolean equals(Object o) { + if (this == o) return true; + if (o == null || getClass() != o.getClass()) return false; + + WildcardTypeImpl that = (WildcardTypeImpl) o; + + return Arrays.equals(upper, that.upper) && Arrays.equals(lower, that.lower); + + } + + @Override + public int hashCode() { + int result = Arrays.hashCode(upper); + result = 31 * result + Arrays.hashCode(lower); + return result; + } +}