Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
GreyZeng
hello-netty
提交
5bb26392
H
hello-netty
项目概览
GreyZeng
/
hello-netty
通知
3
Star
0
Fork
0
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
0
列表
看板
标记
里程碑
合并请求
0
DevOps
流水线
流水线任务
计划
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
H
hello-netty
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
0
Issue
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
Pages
DevOps
DevOps
流水线
流水线任务
计划
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
流水线任务
提交
Issue看板
前往新版Gitcode,体验更适合开发者的 AI 搜索 >>
提交
5bb26392
编写于
9月 26, 2022
作者:
GreyZeng
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
update chat app
上级
afe7bfc0
变更
72
隐藏空白更改
内联
并排
Showing
72 changed file
with
183 addition
and
180 deletion
+183
-180
src/main/java/chat/IDUtil.java
src/main/java/chat/IDUtil.java
+1
-1
src/main/java/chat/SessionUtil.java
src/main/java/chat/SessionUtil.java
+3
-3
src/main/java/chat/client/CreateGroupResponseHandler.java
src/main/java/chat/client/CreateGroupResponseHandler.java
+2
-2
src/main/java/chat/client/GroupMessageResponseHandler.java
src/main/java/chat/client/GroupMessageResponseHandler.java
+3
-3
src/main/java/chat/client/HeartBeatTimerHandler.java
src/main/java/chat/client/HeartBeatTimerHandler.java
+2
-2
src/main/java/chat/client/JoinGroupResponseHandler.java
src/main/java/chat/client/JoinGroupResponseHandler.java
+2
-2
src/main/java/chat/client/LifeCycleTestHandler.java
src/main/java/chat/client/LifeCycleTestHandler.java
+1
-1
src/main/java/chat/client/ListGroupMembersResponseHandler.java
...ain/java/chat/client/ListGroupMembersResponseHandler.java
+2
-4
src/main/java/chat/client/LoginResponseHandler.java
src/main/java/chat/client/LoginResponseHandler.java
+4
-4
src/main/java/chat/client/LogoutResponseHandler.java
src/main/java/chat/client/LogoutResponseHandler.java
+3
-3
src/main/java/chat/client/MessageResponseHandler.java
src/main/java/chat/client/MessageResponseHandler.java
+2
-2
src/main/java/chat/client/NettyClient.java
src/main/java/chat/client/NettyClient.java
+11
-9
src/main/java/chat/client/QuitGroupResponseHandler.java
src/main/java/chat/client/QuitGroupResponseHandler.java
+2
-2
src/main/java/chat/protocol/Attributes.java
src/main/java/chat/protocol/Attributes.java
+1
-1
src/main/java/chat/protocol/Command.java
src/main/java/chat/protocol/Command.java
+1
-1
src/main/java/chat/protocol/ConsoleCommand.java
src/main/java/chat/protocol/ConsoleCommand.java
+1
-1
src/main/java/chat/protocol/ConsoleCommandManager.java
src/main/java/chat/protocol/ConsoleCommandManager.java
+1
-1
src/main/java/chat/protocol/CreateGroupConsoleCommand.java
src/main/java/chat/protocol/CreateGroupConsoleCommand.java
+2
-1
src/main/java/chat/protocol/CreateGroupRequestPacket.java
src/main/java/chat/protocol/CreateGroupRequestPacket.java
+3
-2
src/main/java/chat/protocol/CreateGroupResponsePacket.java
src/main/java/chat/protocol/CreateGroupResponsePacket.java
+3
-2
src/main/java/chat/protocol/GroupMessageRequestPacket.java
src/main/java/chat/protocol/GroupMessageRequestPacket.java
+2
-2
src/main/java/chat/protocol/GroupMessageResponsePacket.java
src/main/java/chat/protocol/GroupMessageResponsePacket.java
+2
-2
src/main/java/chat/protocol/HeartBeatRequestPacket.java
src/main/java/chat/protocol/HeartBeatRequestPacket.java
+3
-2
src/main/java/chat/protocol/HeartBeatResponsePacket.java
src/main/java/chat/protocol/HeartBeatResponsePacket.java
+3
-2
src/main/java/chat/protocol/JoinGroupConsoleCommand.java
src/main/java/chat/protocol/JoinGroupConsoleCommand.java
+1
-1
src/main/java/chat/protocol/JoinGroupRequestPacket.java
src/main/java/chat/protocol/JoinGroupRequestPacket.java
+2
-2
src/main/java/chat/protocol/JoinGroupResponsePacket.java
src/main/java/chat/protocol/JoinGroupResponsePacket.java
+2
-3
src/main/java/chat/protocol/ListGroupMembersConsoleCommand.java
...in/java/chat/protocol/ListGroupMembersConsoleCommand.java
+1
-1
src/main/java/chat/protocol/ListGroupMembersRequestPacket.java
...ain/java/chat/protocol/ListGroupMembersRequestPacket.java
+2
-2
src/main/java/chat/protocol/ListGroupMembersResponsePacket.java
...in/java/chat/protocol/ListGroupMembersResponsePacket.java
+2
-2
src/main/java/chat/protocol/LoginConsoleCommand.java
src/main/java/chat/protocol/LoginConsoleCommand.java
+1
-1
src/main/java/chat/protocol/LoginRequestPacket.java
src/main/java/chat/protocol/LoginRequestPacket.java
+2
-2
src/main/java/chat/protocol/LoginResponsePacket.java
src/main/java/chat/protocol/LoginResponsePacket.java
+2
-2
src/main/java/chat/protocol/LogoutConsoleCommand.java
src/main/java/chat/protocol/LogoutConsoleCommand.java
+1
-1
src/main/java/chat/protocol/LogoutRequestPacket.java
src/main/java/chat/protocol/LogoutRequestPacket.java
+2
-2
src/main/java/chat/protocol/LogoutResponsePacket.java
src/main/java/chat/protocol/LogoutResponsePacket.java
+2
-2
src/main/java/chat/protocol/MessageRequestPacket.java
src/main/java/chat/protocol/MessageRequestPacket.java
+1
-1
src/main/java/chat/protocol/MessageResponsePacket.java
src/main/java/chat/protocol/MessageResponsePacket.java
+3
-3
src/main/java/chat/protocol/Packet.java
src/main/java/chat/protocol/Packet.java
+1
-1
src/main/java/chat/protocol/PacketCodec.java
src/main/java/chat/protocol/PacketCodec.java
+21
-21
src/main/java/chat/protocol/PacketDecoder.java
src/main/java/chat/protocol/PacketDecoder.java
+1
-2
src/main/java/chat/protocol/PacketEncoder.java
src/main/java/chat/protocol/PacketEncoder.java
+1
-1
src/main/java/chat/protocol/QuitGroupConsoleCommand.java
src/main/java/chat/protocol/QuitGroupConsoleCommand.java
+1
-1
src/main/java/chat/protocol/QuitGroupRequestPacket.java
src/main/java/chat/protocol/QuitGroupRequestPacket.java
+2
-2
src/main/java/chat/protocol/QuitGroupResponsePacket.java
src/main/java/chat/protocol/QuitGroupResponsePacket.java
+2
-2
src/main/java/chat/protocol/SendToGroupConsoleCommand.java
src/main/java/chat/protocol/SendToGroupConsoleCommand.java
+1
-1
src/main/java/chat/protocol/SendToUserConsoleCommand.java
src/main/java/chat/protocol/SendToUserConsoleCommand.java
+1
-1
src/main/java/chat/protocol/Session.java
src/main/java/chat/protocol/Session.java
+1
-1
src/main/java/chat/protocol/Splitter.java
src/main/java/chat/protocol/Splitter.java
+1
-1
src/main/java/chat/serialize/JSONSerializer.java
src/main/java/chat/serialize/JSONSerializer.java
+1
-1
src/main/java/chat/serialize/Serializer.java
src/main/java/chat/serialize/Serializer.java
+1
-1
src/main/java/chat/serialize/SerializerAlogrithm.java
src/main/java/chat/serialize/SerializerAlogrithm.java
+1
-1
src/main/java/chat/server/AuthHandler.java
src/main/java/chat/server/AuthHandler.java
+2
-2
src/main/java/chat/server/CreateGroupRequestHandler.java
src/main/java/chat/server/CreateGroupRequestHandler.java
+5
-5
src/main/java/chat/server/GroupMessageRequestHandler.java
src/main/java/chat/server/GroupMessageRequestHandler.java
+4
-4
src/main/java/chat/server/HeartBeatRequestHandler.java
src/main/java/chat/server/HeartBeatRequestHandler.java
+3
-3
src/main/java/chat/server/IMHandler.java
src/main/java/chat/server/IMHandler.java
+9
-9
src/main/java/chat/server/IMIdleStateHandler.java
src/main/java/chat/server/IMIdleStateHandler.java
+1
-1
src/main/java/chat/server/JoinGroupRequestHandler.java
src/main/java/chat/server/JoinGroupRequestHandler.java
+4
-4
src/main/java/chat/server/ListGroupMembersRequestHandler.java
...main/java/chat/server/ListGroupMembersRequestHandler.java
+5
-5
src/main/java/chat/server/LoginRequestHandler.java
src/main/java/chat/server/LoginRequestHandler.java
+6
-6
src/main/java/chat/server/LogoutRequestHandler.java
src/main/java/chat/server/LogoutRequestHandler.java
+4
-4
src/main/java/chat/server/MessageRequestHandler.java
src/main/java/chat/server/MessageRequestHandler.java
+5
-5
src/main/java/chat/server/NettyServer.java
src/main/java/chat/server/NettyServer.java
+2
-2
src/main/java/chat/server/PacketCodecHandler.java
src/main/java/chat/server/PacketCodecHandler.java
+3
-3
src/main/java/chat/server/QuitGroupRequestHandler.java
src/main/java/chat/server/QuitGroupRequestHandler.java
+4
-4
src/main/java/chat/server/inbound/InHandlerA.java
src/main/java/chat/server/inbound/InHandlerA.java
+1
-1
src/main/java/chat/server/inbound/InHandlerB.java
src/main/java/chat/server/inbound/InHandlerB.java
+1
-1
src/main/java/chat/server/inbound/InHandlerC.java
src/main/java/chat/server/inbound/InHandlerC.java
+1
-1
src/main/java/chat/server/outbound/OutHandlerA.java
src/main/java/chat/server/outbound/OutHandlerA.java
+1
-1
src/main/java/chat/server/outbound/OutHandlerB.java
src/main/java/chat/server/outbound/OutHandlerB.java
+1
-1
src/main/java/chat/server/outbound/OutHandlerC.java
src/main/java/chat/server/outbound/OutHandlerC.java
+1
-1
未找到文件。
src/main/java/
snippet/
chat/IDUtil.java
→
src/main/java/chat/IDUtil.java
浏览文件 @
5bb26392
package
snippet.
chat
;
package
chat
;
import
java.util.UUID
;
...
...
src/main/java/
snippet/
chat/SessionUtil.java
→
src/main/java/chat/SessionUtil.java
浏览文件 @
5bb26392
package
snippet.
chat
;
package
chat
;
import
chat.protocol.Attributes
;
import
chat.protocol.Session
;
import
io.netty.channel.Channel
;
import
io.netty.channel.group.ChannelGroup
;
import
snippet.chat.protocol.Attributes
;
import
snippet.chat.protocol.Session
;
import
java.util.Map
;
import
java.util.concurrent.ConcurrentHashMap
;
...
...
src/main/java/
snippet/
chat/client/CreateGroupResponseHandler.java
→
src/main/java/chat/client/CreateGroupResponseHandler.java
浏览文件 @
5bb26392
package
snippet.
chat.client
;
package
chat.client
;
import
chat.protocol.CreateGroupResponsePacket
;
import
io.netty.channel.ChannelHandlerContext
;
import
io.netty.channel.SimpleChannelInboundHandler
;
import
snippet.chat.protocol.CreateGroupResponsePacket
;
public
class
CreateGroupResponseHandler
extends
SimpleChannelInboundHandler
<
CreateGroupResponsePacket
>
{
...
...
src/main/java/
snippet/
chat/client/GroupMessageResponseHandler.java
→
src/main/java/chat/client/GroupMessageResponseHandler.java
浏览文件 @
5bb26392
package
snippet.
chat.client
;
package
chat.client
;
import
chat.protocol.GroupMessageResponsePacket
;
import
chat.protocol.Session
;
import
io.netty.channel.ChannelHandlerContext
;
import
io.netty.channel.SimpleChannelInboundHandler
;
import
snippet.chat.protocol.GroupMessageResponsePacket
;
import
snippet.chat.protocol.Session
;
public
class
GroupMessageResponseHandler
extends
SimpleChannelInboundHandler
<
GroupMessageResponsePacket
>
{
@Override
...
...
src/main/java/
snippet/
chat/client/HeartBeatTimerHandler.java
→
src/main/java/chat/client/HeartBeatTimerHandler.java
浏览文件 @
5bb26392
package
snippet.
chat.client
;
package
chat.client
;
import
chat.protocol.HeartBeatRequestPacket
;
import
io.netty.channel.ChannelHandlerContext
;
import
io.netty.channel.ChannelInboundHandlerAdapter
;
import
snippet.chat.protocol.HeartBeatRequestPacket
;
import
java.util.concurrent.TimeUnit
;
...
...
src/main/java/
snippet/
chat/client/JoinGroupResponseHandler.java
→
src/main/java/chat/client/JoinGroupResponseHandler.java
浏览文件 @
5bb26392
package
snippet.
chat.client
;
package
chat.client
;
import
chat.protocol.JoinGroupResponsePacket
;
import
io.netty.channel.ChannelHandlerContext
;
import
io.netty.channel.SimpleChannelInboundHandler
;
import
snippet.chat.protocol.JoinGroupResponsePacket
;
public
class
JoinGroupResponseHandler
extends
SimpleChannelInboundHandler
<
JoinGroupResponsePacket
>
{
@Override
...
...
src/main/java/
snippet/
chat/client/LifeCycleTestHandler.java
→
src/main/java/chat/client/LifeCycleTestHandler.java
浏览文件 @
5bb26392
package
snippet.
chat.client
;
package
chat.client
;
import
io.netty.channel.ChannelHandlerContext
;
import
io.netty.channel.ChannelInboundHandlerAdapter
;
...
...
src/main/java/
snippet/
chat/client/ListGroupMembersResponseHandler.java
→
src/main/java/chat/client/ListGroupMembersResponseHandler.java
浏览文件 @
5bb26392
package
snippet.
chat.client
;
package
chat.client
;
import
io.netty.channel.ChannelHandler
;
import
chat.protocol.ListGroupMembersResponsePacket
;
import
io.netty.channel.ChannelHandlerContext
;
import
io.netty.channel.SimpleChannelInboundHandler
;
import
io.netty.util.concurrent.EventExecutorGroup
;
import
snippet.chat.protocol.ListGroupMembersResponsePacket
;
public
class
ListGroupMembersResponseHandler
extends
SimpleChannelInboundHandler
<
ListGroupMembersResponsePacket
>
{
...
...
src/main/java/
snippet/
chat/client/LoginResponseHandler.java
→
src/main/java/chat/client/LoginResponseHandler.java
浏览文件 @
5bb26392
package
snippet.
chat.client
;
package
chat.client
;
import
chat.SessionUtil
;
import
chat.protocol.LoginResponsePacket
;
import
chat.protocol.Session
;
import
io.netty.channel.ChannelHandlerContext
;
import
io.netty.channel.SimpleChannelInboundHandler
;
import
snippet.chat.SessionUtil
;
import
snippet.chat.protocol.LoginResponsePacket
;
import
snippet.chat.protocol.Session
;
/**
* @author <a href="mailto:410486047@qq.com">Grey</a>
...
...
src/main/java/
snippet/
chat/client/LogoutResponseHandler.java
→
src/main/java/chat/client/LogoutResponseHandler.java
浏览文件 @
5bb26392
package
snippet.
chat.client
;
package
chat.client
;
import
chat.SessionUtil
;
import
chat.protocol.LogoutResponsePacket
;
import
io.netty.channel.ChannelHandlerContext
;
import
io.netty.channel.SimpleChannelInboundHandler
;
import
snippet.chat.SessionUtil
;
import
snippet.chat.protocol.LogoutResponsePacket
;
/**
* @author <a href="mailto:410486047@qq.com">Grey</a>
...
...
src/main/java/
snippet/
chat/client/MessageResponseHandler.java
→
src/main/java/chat/client/MessageResponseHandler.java
浏览文件 @
5bb26392
package
snippet.
chat.client
;
package
chat.client
;
import
chat.protocol.MessageResponsePacket
;
import
io.netty.channel.ChannelHandlerContext
;
import
io.netty.channel.SimpleChannelInboundHandler
;
import
snippet.chat.protocol.MessageResponsePacket
;
/**
* @author <a href="mailto:410486047@qq.com">Grey</a>
...
...
src/main/java/
snippet/
chat/client/NettyClient.java
→
src/main/java/chat/client/NettyClient.java
浏览文件 @
5bb26392
package
snippet.
chat.client
;
package
chat.client
;
import
chat.SessionUtil
;
import
chat.protocol.ConsoleCommandManager
;
import
chat.protocol.LoginConsoleCommand
;
import
chat.protocol.PacketDecoder
;
import
chat.protocol.PacketEncoder
;
import
chat.protocol.Splitter
;
import
chat.server.IMIdleStateHandler
;
import
io.netty.bootstrap.Bootstrap
;
import
io.netty.channel.Channel
;
import
io.netty.channel.ChannelFuture
;
...
...
@@ -8,22 +15,17 @@ import io.netty.channel.ChannelOption;
import
io.netty.channel.nio.NioEventLoopGroup
;
import
io.netty.channel.socket.SocketChannel
;
import
io.netty.channel.socket.nio.NioSocketChannel
;
import
snippet.chat.SessionUtil
;
import
snippet.chat.protocol.ConsoleCommandManager
;
import
snippet.chat.protocol.LoginConsoleCommand
;
import
snippet.chat.protocol.PacketDecoder
;
import
snippet.chat.protocol.PacketEncoder
;
import
snippet.chat.protocol.Splitter
;
import
snippet.chat.server.IMIdleStateHandler
;
import
java.util.Date
;
import
java.util.Scanner
;
import
java.util.concurrent.TimeUnit
;
/**
* 客户端
*
* @author <a href="mailto:410486047@qq.com">Grey</a>
* @date 2022/9/15
* @since
* @since
1.8
*/
public
class
NettyClient
{
private
static
final
int
MAX_RETRY
=
5
;
...
...
src/main/java/
snippet/
chat/client/QuitGroupResponseHandler.java
→
src/main/java/chat/client/QuitGroupResponseHandler.java
浏览文件 @
5bb26392
package
snippet.
chat.client
;
package
chat.client
;
import
chat.protocol.QuitGroupResponsePacket
;
import
io.netty.channel.ChannelHandlerContext
;
import
io.netty.channel.SimpleChannelInboundHandler
;
import
snippet.chat.protocol.QuitGroupResponsePacket
;
public
class
QuitGroupResponseHandler
extends
SimpleChannelInboundHandler
<
QuitGroupResponsePacket
>
{
@Override
...
...
src/main/java/
snippet/
chat/protocol/Attributes.java
→
src/main/java/chat/protocol/Attributes.java
浏览文件 @
5bb26392
package
snippet.
chat.protocol
;
package
chat.protocol
;
import
io.netty.util.AttributeKey
;
...
...
src/main/java/
snippet/
chat/protocol/Command.java
→
src/main/java/chat/protocol/Command.java
浏览文件 @
5bb26392
package
snippet.
chat.protocol
;
package
chat.protocol
;
public
interface
Command
{
Byte
LOGIN_REQUEST
=
1
;
...
...
src/main/java/
snippet/
chat/protocol/ConsoleCommand.java
→
src/main/java/chat/protocol/ConsoleCommand.java
浏览文件 @
5bb26392
package
snippet.
chat.protocol
;
package
chat.protocol
;
import
io.netty.channel.Channel
;
...
...
src/main/java/
snippet/
chat/protocol/ConsoleCommandManager.java
→
src/main/java/chat/protocol/ConsoleCommandManager.java
浏览文件 @
5bb26392
package
snippet.
chat.protocol
;
package
chat.protocol
;
import
io.netty.channel.Channel
;
...
...
src/main/java/
snippet/
chat/protocol/CreateGroupConsoleCommand.java
→
src/main/java/chat/protocol/CreateGroupConsoleCommand.java
浏览文件 @
5bb26392
package
snippet.
chat.protocol
;
package
chat.protocol
;
import
io.netty.channel.Channel
;
import
java.util.Arrays
;
import
java.util.Scanner
;
...
...
src/main/java/
snippet/
chat/protocol/CreateGroupRequestPacket.java
→
src/main/java/chat/protocol/CreateGroupRequestPacket.java
浏览文件 @
5bb26392
package
snippet.
chat.protocol
;
package
chat.protocol
;
import
lombok.Data
;
import
java.util.List
;
import
static
snippet
.
chat
.
protocol
.
Command
.
CREATE_GROUP_REQUEST
;
import
static
chat
.
protocol
.
Command
.
CREATE_GROUP_REQUEST
;
/**
* @author <a href="mailto:410486047@qq.com">Grey</a>
...
...
src/main/java/
snippet/
chat/protocol/CreateGroupResponsePacket.java
→
src/main/java/chat/protocol/CreateGroupResponsePacket.java
浏览文件 @
5bb26392
package
snippet.
chat.protocol
;
package
chat.protocol
;
import
lombok.Data
;
import
java.util.List
;
import
static
snippet
.
chat
.
protocol
.
Command
.
CREATE_GROUP_RESPONSE
;
import
static
chat
.
protocol
.
Command
.
CREATE_GROUP_RESPONSE
;
/**
* @author <a href="mailto:410486047@qq.com">Grey</a>
...
...
src/main/java/
snippet/
chat/protocol/GroupMessageRequestPacket.java
→
src/main/java/chat/protocol/GroupMessageRequestPacket.java
浏览文件 @
5bb26392
package
snippet.
chat.protocol
;
package
chat.protocol
;
import
lombok.Data
;
import
lombok.NoArgsConstructor
;
import
static
snippet
.
chat
.
protocol
.
Command
.
GROUP_MESSAGE_REQUEST
;
import
static
chat
.
protocol
.
Command
.
GROUP_MESSAGE_REQUEST
;
@Data
...
...
src/main/java/
snippet/
chat/protocol/GroupMessageResponsePacket.java
→
src/main/java/chat/protocol/GroupMessageResponsePacket.java
浏览文件 @
5bb26392
package
snippet.
chat.protocol
;
package
chat.protocol
;
import
lombok.Data
;
import
static
snippet
.
chat
.
protocol
.
Command
.
GROUP_MESSAGE_RESPONSE
;
import
static
chat
.
protocol
.
Command
.
GROUP_MESSAGE_RESPONSE
;
@Data
public
class
GroupMessageResponsePacket
extends
Packet
{
...
...
src/main/java/
snippet/
chat/protocol/HeartBeatRequestPacket.java
→
src/main/java/chat/protocol/HeartBeatRequestPacket.java
浏览文件 @
5bb26392
package
snippet.
chat.protocol
;
package
chat.protocol
;
import
static
snippet
.
chat
.
protocol
.
Command
.
HEARTBEAT_REQUEST
;
import
static
chat
.
protocol
.
Command
.
HEARTBEAT_REQUEST
;
/**
* 心跳包格式
...
...
src/main/java/
snippet/
chat/protocol/HeartBeatResponsePacket.java
→
src/main/java/chat/protocol/HeartBeatResponsePacket.java
浏览文件 @
5bb26392
package
snippet.
chat.protocol
;
package
chat.protocol
;
import
static
snippet
.
chat
.
protocol
.
Command
.
HEARTBEAT_RESPONSE
;
import
static
chat
.
protocol
.
Command
.
HEARTBEAT_RESPONSE
;
/**
* @author <a href="mailto:410486047@qq.com">Grey</a>
...
...
src/main/java/
snippet/
chat/protocol/JoinGroupConsoleCommand.java
→
src/main/java/chat/protocol/JoinGroupConsoleCommand.java
浏览文件 @
5bb26392
package
snippet.
chat.protocol
;
package
chat.protocol
;
import
io.netty.channel.Channel
;
...
...
src/main/java/
snippet/
chat/protocol/JoinGroupRequestPacket.java
→
src/main/java/chat/protocol/JoinGroupRequestPacket.java
浏览文件 @
5bb26392
package
snippet.
chat.protocol
;
package
chat.protocol
;
import
lombok.Data
;
import
static
snippet
.
chat
.
protocol
.
Command
.
JOIN_GROUP_REQUEST
;
import
static
chat
.
protocol
.
Command
.
JOIN_GROUP_REQUEST
;
@Data
public
class
JoinGroupRequestPacket
extends
Packet
{
...
...
src/main/java/
snippet/
chat/protocol/JoinGroupResponsePacket.java
→
src/main/java/chat/protocol/JoinGroupResponsePacket.java
浏览文件 @
5bb26392
package
snippet.
chat.protocol
;
package
chat.protocol
;
import
lombok.Data
;
import
snippet.chat.protocol.Packet
;
import
static
snippet
.
chat
.
protocol
.
Command
.
JOIN_GROUP_RESPONSE
;
import
static
chat
.
protocol
.
Command
.
JOIN_GROUP_RESPONSE
;
@Data
public
class
JoinGroupResponsePacket
extends
Packet
{
...
...
src/main/java/
snippet/
chat/protocol/ListGroupMembersConsoleCommand.java
→
src/main/java/chat/protocol/ListGroupMembersConsoleCommand.java
浏览文件 @
5bb26392
package
snippet.
chat.protocol
;
package
chat.protocol
;
import
io.netty.channel.Channel
;
...
...
src/main/java/
snippet/
chat/protocol/ListGroupMembersRequestPacket.java
→
src/main/java/chat/protocol/ListGroupMembersRequestPacket.java
浏览文件 @
5bb26392
package
snippet.
chat.protocol
;
package
chat.protocol
;
import
lombok.Data
;
import
static
snippet
.
chat
.
protocol
.
Command
.
LIST_GROUP_MEMBERS_REQUEST
;
import
static
chat
.
protocol
.
Command
.
LIST_GROUP_MEMBERS_REQUEST
;
@Data
public
class
ListGroupMembersRequestPacket
extends
Packet
{
...
...
src/main/java/
snippet/
chat/protocol/ListGroupMembersResponsePacket.java
→
src/main/java/chat/protocol/ListGroupMembersResponsePacket.java
浏览文件 @
5bb26392
package
snippet.
chat.protocol
;
package
chat.protocol
;
import
lombok.Data
;
import
java.util.List
;
import
static
snippet
.
chat
.
protocol
.
Command
.
LIST_GROUP_MEMBERS_RESPONSE
;
import
static
chat
.
protocol
.
Command
.
LIST_GROUP_MEMBERS_RESPONSE
;
@Data
public
class
ListGroupMembersResponsePacket
extends
Packet
{
...
...
src/main/java/
snippet/
chat/protocol/LoginConsoleCommand.java
→
src/main/java/chat/protocol/LoginConsoleCommand.java
浏览文件 @
5bb26392
package
snippet.
chat.protocol
;
package
chat.protocol
;
import
io.netty.channel.Channel
;
...
...
src/main/java/
snippet/
chat/protocol/LoginRequestPacket.java
→
src/main/java/chat/protocol/LoginRequestPacket.java
浏览文件 @
5bb26392
package
snippet.
chat.protocol
;
package
chat.protocol
;
import
lombok.Data
;
import
static
snippet
.
chat
.
protocol
.
Command
.
LOGIN_REQUEST
;
import
static
chat
.
protocol
.
Command
.
LOGIN_REQUEST
;
@Data
...
...
src/main/java/
snippet/
chat/protocol/LoginResponsePacket.java
→
src/main/java/chat/protocol/LoginResponsePacket.java
浏览文件 @
5bb26392
package
snippet.
chat.protocol
;
package
chat.protocol
;
import
lombok.Data
;
import
static
snippet
.
chat
.
protocol
.
Command
.
LOGIN_RESPONSE
;
import
static
chat
.
protocol
.
Command
.
LOGIN_RESPONSE
;
@Data
public
class
LoginResponsePacket
extends
Packet
{
...
...
src/main/java/
snippet/
chat/protocol/LogoutConsoleCommand.java
→
src/main/java/chat/protocol/LogoutConsoleCommand.java
浏览文件 @
5bb26392
package
snippet.
chat.protocol
;
package
chat.protocol
;
import
io.netty.channel.Channel
;
...
...
src/main/java/
snippet/
chat/protocol/LogoutRequestPacket.java
→
src/main/java/chat/protocol/LogoutRequestPacket.java
浏览文件 @
5bb26392
package
snippet.
chat.protocol
;
package
chat.protocol
;
import
lombok.Data
;
import
static
snippet
.
chat
.
protocol
.
Command
.
LOGOUT_REQUEST
;
import
static
chat
.
protocol
.
Command
.
LOGOUT_REQUEST
;
/**
* @author <a href="mailto:410486047@qq.com">Grey</a>
...
...
src/main/java/
snippet/
chat/protocol/LogoutResponsePacket.java
→
src/main/java/chat/protocol/LogoutResponsePacket.java
浏览文件 @
5bb26392
package
snippet.
chat.protocol
;
package
chat.protocol
;
import
lombok.Data
;
import
static
snippet
.
chat
.
protocol
.
Command
.
LOGOUT_RESPONSE
;
import
static
chat
.
protocol
.
Command
.
LOGOUT_RESPONSE
;
/**
* @author <a href="mailto:410486047@qq.com">Grey</a>
...
...
src/main/java/
snippet/
chat/protocol/MessageRequestPacket.java
→
src/main/java/chat/protocol/MessageRequestPacket.java
浏览文件 @
5bb26392
package
snippet.
chat.protocol
;
package
chat.protocol
;
import
lombok.Data
;
import
lombok.NoArgsConstructor
;
...
...
src/main/java/
snippet/
chat/protocol/MessageResponsePacket.java
→
src/main/java/chat/protocol/MessageResponsePacket.java
浏览文件 @
5bb26392
package
snippet.
chat.protocol
;
package
chat.protocol
;
import
lombok.Data
;
import
lombok.Data
;
import
static
snippet
.
chat
.
protocol
.
Command
.
MESSAGE_RESPONSE
;
import
static
chat
.
protocol
.
Command
.
MESSAGE_RESPONSE
;
/**
* @author <a href="mailto:410486047@qq.com">Grey</a>
...
...
src/main/java/
snippet/
chat/protocol/Packet.java
→
src/main/java/chat/protocol/Packet.java
浏览文件 @
5bb26392
package
snippet.
chat.protocol
;
package
chat.protocol
;
import
com.alibaba.fastjson.annotation.JSONField
;
import
lombok.Data
;
...
...
src/main/java/
snippet/
chat/protocol/PacketCodec.java
→
src/main/java/chat/protocol/PacketCodec.java
浏览文件 @
5bb26392
package
snippet.
chat.protocol
;
package
chat.protocol
;
import
chat.serialize.JSONSerializer
;
import
chat.serialize.Serializer
;
import
io.netty.buffer.ByteBuf
;
import
snippet.chat.serialize.JSONSerializer
;
import
snippet.chat.serialize.Serializer
;
import
java.util.HashMap
;
import
java.util.Map
;
import
static
snippet
.
chat
.
protocol
.
Command
.
CREATE_GROUP_REQUEST
;
import
static
snippet
.
chat
.
protocol
.
Command
.
CREATE_GROUP_RESPONSE
;
import
static
snippet
.
chat
.
protocol
.
Command
.
GROUP_MESSAGE_REQUEST
;
import
static
snippet
.
chat
.
protocol
.
Command
.
GROUP_MESSAGE_RESPONSE
;
import
static
snippet
.
chat
.
protocol
.
Command
.
HEARTBEAT_REQUEST
;
import
static
snippet
.
chat
.
protocol
.
Command
.
HEARTBEAT_RESPONSE
;
import
static
snippet
.
chat
.
protocol
.
Command
.
JOIN_GROUP_REQUEST
;
import
static
snippet
.
chat
.
protocol
.
Command
.
JOIN_GROUP_RESPONSE
;
import
static
snippet
.
chat
.
protocol
.
Command
.
LIST_GROUP_MEMBERS_REQUEST
;
import
static
snippet
.
chat
.
protocol
.
Command
.
LIST_GROUP_MEMBERS_RESPONSE
;
import
static
snippet
.
chat
.
protocol
.
Command
.
LOGIN_REQUEST
;
import
static
snippet
.
chat
.
protocol
.
Command
.
LOGIN_RESPONSE
;
import
static
snippet
.
chat
.
protocol
.
Command
.
LOGOUT_REQUEST
;
import
static
snippet
.
chat
.
protocol
.
Command
.
LOGOUT_RESPONSE
;
import
static
snippet
.
chat
.
protocol
.
Command
.
MESSAGE_REQUEST
;
import
static
snippet
.
chat
.
protocol
.
Command
.
MESSAGE_RESPONSE
;
import
static
snippet
.
chat
.
protocol
.
Command
.
QUIT_GROUP_REQUEST
;
import
static
snippet
.
chat
.
protocol
.
Command
.
QUIT_GROUP_RESPONSE
;
import
static
chat
.
protocol
.
Command
.
CREATE_GROUP_REQUEST
;
import
static
chat
.
protocol
.
Command
.
CREATE_GROUP_RESPONSE
;
import
static
chat
.
protocol
.
Command
.
GROUP_MESSAGE_REQUEST
;
import
static
chat
.
protocol
.
Command
.
GROUP_MESSAGE_RESPONSE
;
import
static
chat
.
protocol
.
Command
.
HEARTBEAT_REQUEST
;
import
static
chat
.
protocol
.
Command
.
HEARTBEAT_RESPONSE
;
import
static
chat
.
protocol
.
Command
.
JOIN_GROUP_REQUEST
;
import
static
chat
.
protocol
.
Command
.
JOIN_GROUP_RESPONSE
;
import
static
chat
.
protocol
.
Command
.
LIST_GROUP_MEMBERS_REQUEST
;
import
static
chat
.
protocol
.
Command
.
LIST_GROUP_MEMBERS_RESPONSE
;
import
static
chat
.
protocol
.
Command
.
LOGIN_REQUEST
;
import
static
chat
.
protocol
.
Command
.
LOGIN_RESPONSE
;
import
static
chat
.
protocol
.
Command
.
LOGOUT_REQUEST
;
import
static
chat
.
protocol
.
Command
.
LOGOUT_RESPONSE
;
import
static
chat
.
protocol
.
Command
.
MESSAGE_REQUEST
;
import
static
chat
.
protocol
.
Command
.
MESSAGE_RESPONSE
;
import
static
chat
.
protocol
.
Command
.
QUIT_GROUP_REQUEST
;
import
static
chat
.
protocol
.
Command
.
QUIT_GROUP_RESPONSE
;
public
class
PacketCodec
{
...
...
src/main/java/
snippet/
chat/protocol/PacketDecoder.java
→
src/main/java/chat/protocol/PacketDecoder.java
浏览文件 @
5bb26392
package
snippet.
chat.protocol
;
package
chat.protocol
;
import
io.netty.buffer.ByteBuf
;
import
io.netty.channel.ChannelHandlerContext
;
import
io.netty.handler.codec.ByteToMessageDecoder
;
import
io.netty.handler.codec.MessageToMessageDecoder
;
import
java.util.List
;
...
...
src/main/java/
snippet/
chat/protocol/PacketEncoder.java
→
src/main/java/chat/protocol/PacketEncoder.java
浏览文件 @
5bb26392
package
snippet.
chat.protocol
;
package
chat.protocol
;
import
io.netty.buffer.ByteBuf
;
import
io.netty.channel.ChannelHandlerContext
;
...
...
src/main/java/
snippet/
chat/protocol/QuitGroupConsoleCommand.java
→
src/main/java/chat/protocol/QuitGroupConsoleCommand.java
浏览文件 @
5bb26392
package
snippet.
chat.protocol
;
package
chat.protocol
;
import
io.netty.channel.Channel
;
...
...
src/main/java/
snippet/
chat/protocol/QuitGroupRequestPacket.java
→
src/main/java/chat/protocol/QuitGroupRequestPacket.java
浏览文件 @
5bb26392
package
snippet.
chat.protocol
;
package
chat.protocol
;
import
lombok.Data
;
import
static
snippet
.
chat
.
protocol
.
Command
.
QUIT_GROUP_REQUEST
;
import
static
chat
.
protocol
.
Command
.
QUIT_GROUP_REQUEST
;
@Data
public
class
QuitGroupRequestPacket
extends
Packet
{
...
...
src/main/java/
snippet/
chat/protocol/QuitGroupResponsePacket.java
→
src/main/java/chat/protocol/QuitGroupResponsePacket.java
浏览文件 @
5bb26392
package
snippet.
chat.protocol
;
package
chat.protocol
;
import
lombok.Data
;
import
static
snippet
.
chat
.
protocol
.
Command
.
QUIT_GROUP_RESPONSE
;
import
static
chat
.
protocol
.
Command
.
QUIT_GROUP_RESPONSE
;
@Data
public
class
QuitGroupResponsePacket
extends
Packet
{
...
...
src/main/java/
snippet/
chat/protocol/SendToGroupConsoleCommand.java
→
src/main/java/chat/protocol/SendToGroupConsoleCommand.java
浏览文件 @
5bb26392
package
snippet.
chat.protocol
;
package
chat.protocol
;
import
io.netty.channel.Channel
;
...
...
src/main/java/
snippet/
chat/protocol/SendToUserConsoleCommand.java
→
src/main/java/chat/protocol/SendToUserConsoleCommand.java
浏览文件 @
5bb26392
package
snippet.
chat.protocol
;
package
chat.protocol
;
import
io.netty.channel.Channel
;
...
...
src/main/java/
snippet/
chat/protocol/Session.java
→
src/main/java/chat/protocol/Session.java
浏览文件 @
5bb26392
package
snippet.
chat.protocol
;
package
chat.protocol
;
import
lombok.Data
;
import
lombok.NoArgsConstructor
;
...
...
src/main/java/
snippet/
chat/protocol/Splitter.java
→
src/main/java/chat/protocol/Splitter.java
浏览文件 @
5bb26392
package
snippet.
chat.protocol
;
package
chat.protocol
;
import
io.netty.buffer.ByteBuf
;
import
io.netty.channel.ChannelHandlerContext
;
...
...
src/main/java/
snippet/
chat/serialize/JSONSerializer.java
→
src/main/java/chat/serialize/JSONSerializer.java
浏览文件 @
5bb26392
package
snippet.
chat.serialize
;
package
chat.serialize
;
import
com.alibaba.fastjson.JSON
;
...
...
src/main/java/
snippet/
chat/serialize/Serializer.java
→
src/main/java/chat/serialize/Serializer.java
浏览文件 @
5bb26392
package
snippet.
chat.serialize
;
package
chat.serialize
;
public
interface
Serializer
{
...
...
src/main/java/
snippet/
chat/serialize/SerializerAlogrithm.java
→
src/main/java/chat/serialize/SerializerAlogrithm.java
浏览文件 @
5bb26392
package
snippet.
chat.serialize
;
package
chat.serialize
;
public
interface
SerializerAlogrithm
{
/**
...
...
src/main/java/
snippet/
chat/server/AuthHandler.java
→
src/main/java/chat/server/AuthHandler.java
浏览文件 @
5bb26392
package
snippet.
chat.server
;
package
chat.server
;
import
chat.SessionUtil
;
import
io.netty.channel.ChannelHandler
;
import
io.netty.channel.ChannelHandlerContext
;
import
io.netty.channel.ChannelInboundHandlerAdapter
;
import
snippet.chat.SessionUtil
;
/**
* 判断是否已经登录,如果已经登录,不需要继续执行这个 Handler
...
...
src/main/java/
snippet/
chat/server/CreateGroupRequestHandler.java
→
src/main/java/chat/server/CreateGroupRequestHandler.java
浏览文件 @
5bb26392
package
snippet.
chat.server
;
package
chat.server
;
import
chat.IDUtil
;
import
chat.SessionUtil
;
import
chat.protocol.CreateGroupRequestPacket
;
import
chat.protocol.CreateGroupResponsePacket
;
import
io.netty.channel.Channel
;
import
io.netty.channel.ChannelHandler
;
import
io.netty.channel.ChannelHandlerContext
;
import
io.netty.channel.SimpleChannelInboundHandler
;
import
io.netty.channel.group.ChannelGroup
;
import
io.netty.channel.group.DefaultChannelGroup
;
import
snippet.chat.IDUtil
;
import
snippet.chat.SessionUtil
;
import
snippet.chat.protocol.CreateGroupRequestPacket
;
import
snippet.chat.protocol.CreateGroupResponsePacket
;
import
java.util.ArrayList
;
import
java.util.List
;
...
...
src/main/java/
snippet/
chat/server/GroupMessageRequestHandler.java
→
src/main/java/chat/server/GroupMessageRequestHandler.java
浏览文件 @
5bb26392
package
snippet.
chat.server
;
package
chat.server
;
import
chat.SessionUtil
;
import
chat.protocol.GroupMessageRequestPacket
;
import
chat.protocol.GroupMessageResponsePacket
;
import
io.netty.channel.ChannelHandler
;
import
io.netty.channel.ChannelHandlerContext
;
import
io.netty.channel.SimpleChannelInboundHandler
;
import
io.netty.channel.group.ChannelGroup
;
import
snippet.chat.SessionUtil
;
import
snippet.chat.protocol.GroupMessageRequestPacket
;
import
snippet.chat.protocol.GroupMessageResponsePacket
;
@ChannelHandler
.
Sharable
public
class
GroupMessageRequestHandler
extends
SimpleChannelInboundHandler
<
GroupMessageRequestPacket
>
{
...
...
src/main/java/
snippet/
chat/server/HeartBeatRequestHandler.java
→
src/main/java/chat/server/HeartBeatRequestHandler.java
浏览文件 @
5bb26392
package
snippet.
chat.server
;
package
chat.server
;
import
chat.protocol.HeartBeatRequestPacket
;
import
chat.protocol.HeartBeatResponsePacket
;
import
io.netty.channel.ChannelHandler
;
import
io.netty.channel.ChannelHandlerContext
;
import
io.netty.channel.SimpleChannelInboundHandler
;
import
snippet.chat.protocol.HeartBeatRequestPacket
;
import
snippet.chat.protocol.HeartBeatResponsePacket
;
/**
* @author <a href="mailto:410486047@qq.com">Grey</a>
...
...
src/main/java/
snippet/
chat/server/IMHandler.java
→
src/main/java/chat/server/IMHandler.java
浏览文件 @
5bb26392
package
snippet.
chat.server
;
package
chat.server
;
import
chat.protocol.Packet
;
import
io.netty.channel.ChannelHandler
;
import
io.netty.channel.ChannelHandlerContext
;
import
io.netty.channel.SimpleChannelInboundHandler
;
import
snippet.chat.protocol.Packet
;
import
java.util.HashMap
;
import
java.util.Map
;
import
static
snippet
.
chat
.
protocol
.
Command
.
CREATE_GROUP_REQUEST
;
import
static
snippet
.
chat
.
protocol
.
Command
.
GROUP_MESSAGE_REQUEST
;
import
static
snippet
.
chat
.
protocol
.
Command
.
JOIN_GROUP_REQUEST
;
import
static
snippet
.
chat
.
protocol
.
Command
.
LIST_GROUP_MEMBERS_REQUEST
;
import
static
snippet
.
chat
.
protocol
.
Command
.
LOGOUT_REQUEST
;
import
static
snippet
.
chat
.
protocol
.
Command
.
MESSAGE_REQUEST
;
import
static
snippet
.
chat
.
protocol
.
Command
.
QUIT_GROUP_REQUEST
;
import
static
chat
.
protocol
.
Command
.
CREATE_GROUP_REQUEST
;
import
static
chat
.
protocol
.
Command
.
GROUP_MESSAGE_REQUEST
;
import
static
chat
.
protocol
.
Command
.
JOIN_GROUP_REQUEST
;
import
static
chat
.
protocol
.
Command
.
LIST_GROUP_MEMBERS_REQUEST
;
import
static
chat
.
protocol
.
Command
.
LOGOUT_REQUEST
;
import
static
chat
.
protocol
.
Command
.
MESSAGE_REQUEST
;
import
static
chat
.
protocol
.
Command
.
QUIT_GROUP_REQUEST
;
/**
* Server 端根据不同的 Command 调用不同的 Handler 去处理请求
...
...
src/main/java/
snippet/
chat/server/IMIdleStateHandler.java
→
src/main/java/chat/server/IMIdleStateHandler.java
浏览文件 @
5bb26392
package
snippet.
chat.server
;
package
chat.server
;
import
io.netty.channel.ChannelHandlerContext
;
import
io.netty.handler.timeout.IdleStateEvent
;
...
...
src/main/java/
snippet/
chat/server/JoinGroupRequestHandler.java
→
src/main/java/chat/server/JoinGroupRequestHandler.java
浏览文件 @
5bb26392
package
snippet.
chat.server
;
package
chat.server
;
import
chat.SessionUtil
;
import
chat.protocol.JoinGroupRequestPacket
;
import
chat.protocol.JoinGroupResponsePacket
;
import
io.netty.channel.ChannelHandler
;
import
io.netty.channel.ChannelHandlerContext
;
import
io.netty.channel.SimpleChannelInboundHandler
;
import
io.netty.channel.group.ChannelGroup
;
import
snippet.chat.SessionUtil
;
import
snippet.chat.protocol.JoinGroupRequestPacket
;
import
snippet.chat.protocol.JoinGroupResponsePacket
;
@ChannelHandler
.
Sharable
public
class
JoinGroupRequestHandler
extends
SimpleChannelInboundHandler
<
JoinGroupRequestPacket
>
{
...
...
src/main/java/
snippet/
chat/server/ListGroupMembersRequestHandler.java
→
src/main/java/chat/server/ListGroupMembersRequestHandler.java
浏览文件 @
5bb26392
package
snippet.
chat.server
;
package
chat.server
;
import
chat.SessionUtil
;
import
chat.protocol.ListGroupMembersRequestPacket
;
import
chat.protocol.ListGroupMembersResponsePacket
;
import
chat.protocol.Session
;
import
io.netty.channel.Channel
;
import
io.netty.channel.ChannelHandler
;
import
io.netty.channel.ChannelHandlerContext
;
import
io.netty.channel.SimpleChannelInboundHandler
;
import
io.netty.channel.group.ChannelGroup
;
import
snippet.chat.SessionUtil
;
import
snippet.chat.protocol.ListGroupMembersRequestPacket
;
import
snippet.chat.protocol.ListGroupMembersResponsePacket
;
import
snippet.chat.protocol.Session
;
import
java.util.ArrayList
;
import
java.util.List
;
...
...
src/main/java/
snippet/
chat/server/LoginRequestHandler.java
→
src/main/java/chat/server/LoginRequestHandler.java
浏览文件 @
5bb26392
package
snippet.
chat.server
;
package
chat.server
;
import
chat.IDUtil
;
import
chat.SessionUtil
;
import
chat.protocol.LoginRequestPacket
;
import
chat.protocol.LoginResponsePacket
;
import
chat.protocol.Session
;
import
io.netty.channel.ChannelHandler
;
import
io.netty.channel.ChannelHandlerContext
;
import
io.netty.channel.SimpleChannelInboundHandler
;
import
snippet.chat.IDUtil
;
import
snippet.chat.SessionUtil
;
import
snippet.chat.protocol.LoginRequestPacket
;
import
snippet.chat.protocol.LoginResponsePacket
;
import
snippet.chat.protocol.Session
;
import
java.util.Date
;
...
...
src/main/java/
snippet/
chat/server/LogoutRequestHandler.java
→
src/main/java/chat/server/LogoutRequestHandler.java
浏览文件 @
5bb26392
package
snippet.
chat.server
;
package
chat.server
;
import
chat.SessionUtil
;
import
chat.protocol.LogoutRequestPacket
;
import
chat.protocol.LogoutResponsePacket
;
import
io.netty.channel.ChannelHandler
;
import
io.netty.channel.ChannelHandlerContext
;
import
io.netty.channel.SimpleChannelInboundHandler
;
import
snippet.chat.SessionUtil
;
import
snippet.chat.protocol.LogoutRequestPacket
;
import
snippet.chat.protocol.LogoutResponsePacket
;
/**
* @author <a href="mailto:410486047@qq.com">Grey</a>
...
...
src/main/java/
snippet/
chat/server/MessageRequestHandler.java
→
src/main/java/chat/server/MessageRequestHandler.java
浏览文件 @
5bb26392
package
snippet.
chat.server
;
package
chat.server
;
import
chat.SessionUtil
;
import
chat.protocol.MessageRequestPacket
;
import
chat.protocol.MessageResponsePacket
;
import
chat.protocol.Session
;
import
io.netty.channel.Channel
;
import
io.netty.channel.ChannelHandler
;
import
io.netty.channel.ChannelHandlerContext
;
import
io.netty.channel.SimpleChannelInboundHandler
;
import
snippet.chat.SessionUtil
;
import
snippet.chat.protocol.MessageRequestPacket
;
import
snippet.chat.protocol.MessageResponsePacket
;
import
snippet.chat.protocol.Session
;
/**
* @author <a href="mailto:410486047@qq.com">Grey</a>
...
...
src/main/java/
snippet/
chat/server/NettyServer.java
→
src/main/java/chat/server/NettyServer.java
浏览文件 @
5bb26392
package
snippet.
chat.server
;
package
chat.server
;
import
chat.protocol.Splitter
;
import
io.netty.bootstrap.ServerBootstrap
;
import
io.netty.channel.ChannelInitializer
;
import
io.netty.channel.ChannelOption
;
import
io.netty.channel.nio.NioEventLoopGroup
;
import
io.netty.channel.socket.nio.NioServerSocketChannel
;
import
io.netty.channel.socket.nio.NioSocketChannel
;
import
snippet.chat.protocol.Splitter
;
import
java.util.Date
;
...
...
src/main/java/
snippet/
chat/server/PacketCodecHandler.java
→
src/main/java/chat/server/PacketCodecHandler.java
浏览文件 @
5bb26392
package
snippet.
chat.server
;
package
chat.server
;
import
chat.protocol.Packet
;
import
chat.protocol.PacketCodec
;
import
io.netty.buffer.ByteBuf
;
import
io.netty.channel.ChannelHandler
;
import
io.netty.channel.ChannelHandlerContext
;
import
io.netty.handler.codec.MessageToMessageCodec
;
import
snippet.chat.protocol.Packet
;
import
snippet.chat.protocol.PacketCodec
;
import
java.util.List
;
...
...
src/main/java/
snippet/
chat/server/QuitGroupRequestHandler.java
→
src/main/java/chat/server/QuitGroupRequestHandler.java
浏览文件 @
5bb26392
package
snippet.
chat.server
;
package
chat.server
;
import
chat.SessionUtil
;
import
chat.protocol.QuitGroupRequestPacket
;
import
chat.protocol.QuitGroupResponsePacket
;
import
io.netty.channel.ChannelHandler
;
import
io.netty.channel.ChannelHandlerContext
;
import
io.netty.channel.SimpleChannelInboundHandler
;
import
io.netty.channel.group.ChannelGroup
;
import
snippet.chat.SessionUtil
;
import
snippet.chat.protocol.QuitGroupRequestPacket
;
import
snippet.chat.protocol.QuitGroupResponsePacket
;
@ChannelHandler
.
Sharable
public
class
QuitGroupRequestHandler
extends
SimpleChannelInboundHandler
<
QuitGroupRequestPacket
>
{
...
...
src/main/java/
snippet/
chat/server/inbound/InHandlerA.java
→
src/main/java/chat/server/inbound/InHandlerA.java
浏览文件 @
5bb26392
package
snippet.
chat.server.inbound
;
package
chat.server.inbound
;
import
io.netty.channel.ChannelHandlerContext
;
import
io.netty.channel.ChannelInboundHandlerAdapter
;
...
...
src/main/java/
snippet/
chat/server/inbound/InHandlerB.java
→
src/main/java/chat/server/inbound/InHandlerB.java
浏览文件 @
5bb26392
package
snippet.
chat.server.inbound
;
package
chat.server.inbound
;
import
io.netty.channel.ChannelHandlerContext
;
import
io.netty.channel.ChannelInboundHandlerAdapter
;
...
...
src/main/java/
snippet/
chat/server/inbound/InHandlerC.java
→
src/main/java/chat/server/inbound/InHandlerC.java
浏览文件 @
5bb26392
package
snippet.
chat.server.inbound
;
package
chat.server.inbound
;
import
io.netty.channel.ChannelHandlerContext
;
import
io.netty.channel.ChannelInboundHandlerAdapter
;
...
...
src/main/java/
snippet/
chat/server/outbound/OutHandlerA.java
→
src/main/java/chat/server/outbound/OutHandlerA.java
浏览文件 @
5bb26392
package
snippet.
chat.server.outbound
;
package
chat.server.outbound
;
import
io.netty.channel.ChannelHandlerContext
;
import
io.netty.channel.ChannelOutboundHandlerAdapter
;
...
...
src/main/java/
snippet/
chat/server/outbound/OutHandlerB.java
→
src/main/java/chat/server/outbound/OutHandlerB.java
浏览文件 @
5bb26392
package
snippet.
chat.server.outbound
;
package
chat.server.outbound
;
import
io.netty.channel.ChannelHandlerContext
;
import
io.netty.channel.ChannelOutboundHandlerAdapter
;
...
...
src/main/java/
snippet/
chat/server/outbound/OutHandlerC.java
→
src/main/java/chat/server/outbound/OutHandlerC.java
浏览文件 @
5bb26392
package
snippet.
chat.server.outbound
;
package
chat.server.outbound
;
import
io.netty.channel.ChannelHandlerContext
;
import
io.netty.channel.ChannelOutboundHandlerAdapter
;
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录