├── .gitignore ├── demo-code ├── .gitignore ├── pom.xml └── src │ ├── main │ ├── java │ │ └── com │ │ │ └── netty │ │ │ └── learn │ │ │ ├── DemoCodeApplication.java │ │ │ ├── delimiterBasedFrameDecoderDemo │ │ │ ├── ClientChannelInitializer.java │ │ │ ├── PeClient.java │ │ │ ├── PeClientHandler.java │ │ │ ├── PeServer.java │ │ │ ├── PeServerHandler.java │ │ │ ├── ServerChannelInitializer.java │ │ │ └── index.md │ │ │ ├── fixedLengthFrameDecoderDemo │ │ │ ├── ClientChannelInitializer.java │ │ │ ├── PeClient.java │ │ │ ├── PeClientHandler.java │ │ │ ├── PeServer.java │ │ │ ├── PeServerHandler.java │ │ │ ├── ServerChannelInitializer.java │ │ │ └── index.md │ │ │ ├── helloWorld │ │ │ ├── ClientChannelInitializer.java │ │ │ ├── HwClient.java │ │ │ ├── HwClientHandler.java │ │ │ ├── HwServer.java │ │ │ ├── HwServerHandler.java │ │ │ └── ServerChannelInitializer.java │ │ │ ├── keepAlive │ │ │ ├── ClientChannelInitializer.java │ │ │ ├── KpClient.java │ │ │ ├── KpClientHandler.java │ │ │ ├── KpServer.java │ │ │ ├── KpServerHandler.java │ │ │ └── ServerChannelInitializer.java │ │ │ ├── lengthFieldBasedFrameDecoderDemo │ │ │ ├── ClientChannelInitializer.java │ │ │ ├── PeClient.java │ │ │ ├── PeClientHandler.java │ │ │ ├── PeServer.java │ │ │ ├── PeServerHandler.java │ │ │ ├── ServerChannelInitializer.java │ │ │ └── index.md │ │ │ ├── lineBasedFrameDecoderDemo │ │ │ ├── ClientChannelInitializer.java │ │ │ ├── PeClient.java │ │ │ ├── PeClientHandler.java │ │ │ ├── PeServer.java │ │ │ ├── PeServerHandler.java │ │ │ ├── ServerChannelInitializer.java │ │ │ └── index.md │ │ │ ├── myProtocolEncoderDemo │ │ │ ├── ClientChannelInitializer.java │ │ │ ├── MsgReq.java │ │ │ ├── MyProtocolDecoder.java │ │ │ ├── MyProtocolEncoder.java │ │ │ ├── PeClient.java │ │ │ ├── PeClientHandler.java │ │ │ ├── PeServer.java │ │ │ ├── PeServerHandler.java │ │ │ ├── ServerChannelInitializer.java │ │ │ └── index.md │ │ │ ├── pbDemo │ │ │ ├── ClientChannelInitializer.java │ │ │ ├── MsgEntity.java │ │ │ ├── PbClient.java │ │ │ ├── PbClientHandler.java │ │ │ ├── PbServer.java │ │ │ ├── PbServerHandler.java │ │ │ ├── ServerChannelInitializer.java │ │ │ ├── index.md │ │ │ └── msg_entity.proto │ │ │ └── stickPackage │ │ │ ├── ClientChannelInitializer.java │ │ │ ├── PeClient.java │ │ │ ├── PeClientHandler.java │ │ │ ├── PeServer.java │ │ │ ├── PeServerHandler.java │ │ │ ├── ServerChannelInitializer.java │ │ │ └── index.md │ └── resources │ │ ├── application.yml │ │ └── log4j2-spring.xml │ └── test │ └── java │ └── com │ └── netty │ └── learn │ └── DemoCodeApplicationTests.java ├── pom.xml ├── readme.md ├── rim-client ├── .gitignore ├── pom.xml └── src │ ├── main │ ├── java │ │ └── com │ │ │ └── rim │ │ │ └── rimclient │ │ │ ├── RimClientApplication.java │ │ │ └── client │ │ │ ├── ClientHandlerInitializer.java │ │ │ ├── HeartbeatHandler.java │ │ │ ├── NettyClient.java │ │ │ └── NettyClientHandler.java │ └── resources │ │ ├── application.yml │ │ └── log4j2-spring.xml │ └── test │ └── java │ └── com │ └── rim │ └── rimclient │ └── RimClientApplicationTests.java ├── rim-common ├── .gitignore ├── .mvn │ └── wrapper │ │ ├── MavenWrapperDownloader.java │ │ ├── maven-wrapper.jar │ │ └── maven-wrapper.properties ├── mvnw ├── mvnw.cmd ├── pom.xml └── src │ ├── main │ ├── java │ │ └── com │ │ │ └── rim │ │ │ ├── RimCommonApplication.java │ │ │ ├── base │ │ │ └── Unpack.java │ │ │ ├── exception │ │ │ ├── PackException.java │ │ │ └── UnpackException.java │ │ │ ├── handler │ │ │ ├── decoder │ │ │ │ ├── CimDecoder.java │ │ │ │ └── ProtoBufDecoder.java │ │ │ └── encoder │ │ │ │ ├── CimEncoder.java │ │ │ │ └── ProtoBufEncoder.java │ │ │ ├── message │ │ │ ├── HeartBeatPacket.java │ │ │ ├── ImBody.java │ │ │ ├── ImChat.java │ │ │ ├── ImChatConstants.java │ │ │ ├── ImChatConverter.java │ │ │ └── ImHeader.java │ │ │ ├── protocol │ │ │ ├── pb │ │ │ │ └── im_chat.proto │ │ │ └── protobuf │ │ │ │ └── ImChat.java │ │ │ └── utils │ │ │ ├── ExpCode.java │ │ │ ├── IdGenerator.java │ │ │ └── IpUtil.java │ └── resources │ │ └── application.yml │ └── test │ └── java │ └── com │ └── rim │ └── rimcommon │ └── RimCommonApplicationTests.java └── rim-server ├── .gitignore ├── pom.xml └── src ├── main ├── java │ └── com │ │ └── rim │ │ └── rimserver │ │ ├── RimServerApplication.java │ │ ├── config │ │ └── ChannelContext.java │ │ └── server │ │ ├── NettyServer.java │ │ ├── NettyServerHandler.java │ │ ├── NettyServerHandlerInitializer.java │ │ └── ServerIdleStateHandler.java └── resources │ ├── application.yml │ └── log4j2-spring.xml └── test └── java └── com └── rim └── rimserver ├── MainTest.java ├── RimServerApplicationTests.java └── TestDoSomething.java /.gitignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rickiyang/cim/HEAD/.gitignore -------------------------------------------------------------------------------- /demo-code/.gitignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rickiyang/cim/HEAD/demo-code/.gitignore -------------------------------------------------------------------------------- /demo-code/pom.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rickiyang/cim/HEAD/demo-code/pom.xml -------------------------------------------------------------------------------- /demo-code/src/main/java/com/netty/learn/DemoCodeApplication.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rickiyang/cim/HEAD/demo-code/src/main/java/com/netty/learn/DemoCodeApplication.java -------------------------------------------------------------------------------- /demo-code/src/main/java/com/netty/learn/delimiterBasedFrameDecoderDemo/ClientChannelInitializer.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rickiyang/cim/HEAD/demo-code/src/main/java/com/netty/learn/delimiterBasedFrameDecoderDemo/ClientChannelInitializer.java -------------------------------------------------------------------------------- /demo-code/src/main/java/com/netty/learn/delimiterBasedFrameDecoderDemo/PeClient.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rickiyang/cim/HEAD/demo-code/src/main/java/com/netty/learn/delimiterBasedFrameDecoderDemo/PeClient.java -------------------------------------------------------------------------------- /demo-code/src/main/java/com/netty/learn/delimiterBasedFrameDecoderDemo/PeClientHandler.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rickiyang/cim/HEAD/demo-code/src/main/java/com/netty/learn/delimiterBasedFrameDecoderDemo/PeClientHandler.java -------------------------------------------------------------------------------- /demo-code/src/main/java/com/netty/learn/delimiterBasedFrameDecoderDemo/PeServer.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rickiyang/cim/HEAD/demo-code/src/main/java/com/netty/learn/delimiterBasedFrameDecoderDemo/PeServer.java -------------------------------------------------------------------------------- /demo-code/src/main/java/com/netty/learn/delimiterBasedFrameDecoderDemo/PeServerHandler.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rickiyang/cim/HEAD/demo-code/src/main/java/com/netty/learn/delimiterBasedFrameDecoderDemo/PeServerHandler.java -------------------------------------------------------------------------------- /demo-code/src/main/java/com/netty/learn/delimiterBasedFrameDecoderDemo/ServerChannelInitializer.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rickiyang/cim/HEAD/demo-code/src/main/java/com/netty/learn/delimiterBasedFrameDecoderDemo/ServerChannelInitializer.java -------------------------------------------------------------------------------- /demo-code/src/main/java/com/netty/learn/delimiterBasedFrameDecoderDemo/index.md: -------------------------------------------------------------------------------- 1 | ### 拆包-DelimiterBasedFrameDecoder 使用 -------------------------------------------------------------------------------- /demo-code/src/main/java/com/netty/learn/fixedLengthFrameDecoderDemo/ClientChannelInitializer.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rickiyang/cim/HEAD/demo-code/src/main/java/com/netty/learn/fixedLengthFrameDecoderDemo/ClientChannelInitializer.java -------------------------------------------------------------------------------- /demo-code/src/main/java/com/netty/learn/fixedLengthFrameDecoderDemo/PeClient.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rickiyang/cim/HEAD/demo-code/src/main/java/com/netty/learn/fixedLengthFrameDecoderDemo/PeClient.java -------------------------------------------------------------------------------- /demo-code/src/main/java/com/netty/learn/fixedLengthFrameDecoderDemo/PeClientHandler.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rickiyang/cim/HEAD/demo-code/src/main/java/com/netty/learn/fixedLengthFrameDecoderDemo/PeClientHandler.java -------------------------------------------------------------------------------- /demo-code/src/main/java/com/netty/learn/fixedLengthFrameDecoderDemo/PeServer.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rickiyang/cim/HEAD/demo-code/src/main/java/com/netty/learn/fixedLengthFrameDecoderDemo/PeServer.java -------------------------------------------------------------------------------- /demo-code/src/main/java/com/netty/learn/fixedLengthFrameDecoderDemo/PeServerHandler.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rickiyang/cim/HEAD/demo-code/src/main/java/com/netty/learn/fixedLengthFrameDecoderDemo/PeServerHandler.java -------------------------------------------------------------------------------- /demo-code/src/main/java/com/netty/learn/fixedLengthFrameDecoderDemo/ServerChannelInitializer.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rickiyang/cim/HEAD/demo-code/src/main/java/com/netty/learn/fixedLengthFrameDecoderDemo/ServerChannelInitializer.java -------------------------------------------------------------------------------- /demo-code/src/main/java/com/netty/learn/fixedLengthFrameDecoderDemo/index.md: -------------------------------------------------------------------------------- 1 | ### 拆包-FixedLengthFrameDecoder 使用 -------------------------------------------------------------------------------- /demo-code/src/main/java/com/netty/learn/helloWorld/ClientChannelInitializer.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rickiyang/cim/HEAD/demo-code/src/main/java/com/netty/learn/helloWorld/ClientChannelInitializer.java -------------------------------------------------------------------------------- /demo-code/src/main/java/com/netty/learn/helloWorld/HwClient.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rickiyang/cim/HEAD/demo-code/src/main/java/com/netty/learn/helloWorld/HwClient.java -------------------------------------------------------------------------------- /demo-code/src/main/java/com/netty/learn/helloWorld/HwClientHandler.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rickiyang/cim/HEAD/demo-code/src/main/java/com/netty/learn/helloWorld/HwClientHandler.java -------------------------------------------------------------------------------- /demo-code/src/main/java/com/netty/learn/helloWorld/HwServer.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rickiyang/cim/HEAD/demo-code/src/main/java/com/netty/learn/helloWorld/HwServer.java -------------------------------------------------------------------------------- /demo-code/src/main/java/com/netty/learn/helloWorld/HwServerHandler.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rickiyang/cim/HEAD/demo-code/src/main/java/com/netty/learn/helloWorld/HwServerHandler.java -------------------------------------------------------------------------------- /demo-code/src/main/java/com/netty/learn/helloWorld/ServerChannelInitializer.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rickiyang/cim/HEAD/demo-code/src/main/java/com/netty/learn/helloWorld/ServerChannelInitializer.java -------------------------------------------------------------------------------- /demo-code/src/main/java/com/netty/learn/keepAlive/ClientChannelInitializer.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rickiyang/cim/HEAD/demo-code/src/main/java/com/netty/learn/keepAlive/ClientChannelInitializer.java -------------------------------------------------------------------------------- /demo-code/src/main/java/com/netty/learn/keepAlive/KpClient.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rickiyang/cim/HEAD/demo-code/src/main/java/com/netty/learn/keepAlive/KpClient.java -------------------------------------------------------------------------------- /demo-code/src/main/java/com/netty/learn/keepAlive/KpClientHandler.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rickiyang/cim/HEAD/demo-code/src/main/java/com/netty/learn/keepAlive/KpClientHandler.java -------------------------------------------------------------------------------- /demo-code/src/main/java/com/netty/learn/keepAlive/KpServer.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rickiyang/cim/HEAD/demo-code/src/main/java/com/netty/learn/keepAlive/KpServer.java -------------------------------------------------------------------------------- /demo-code/src/main/java/com/netty/learn/keepAlive/KpServerHandler.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rickiyang/cim/HEAD/demo-code/src/main/java/com/netty/learn/keepAlive/KpServerHandler.java -------------------------------------------------------------------------------- /demo-code/src/main/java/com/netty/learn/keepAlive/ServerChannelInitializer.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rickiyang/cim/HEAD/demo-code/src/main/java/com/netty/learn/keepAlive/ServerChannelInitializer.java -------------------------------------------------------------------------------- /demo-code/src/main/java/com/netty/learn/lengthFieldBasedFrameDecoderDemo/ClientChannelInitializer.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rickiyang/cim/HEAD/demo-code/src/main/java/com/netty/learn/lengthFieldBasedFrameDecoderDemo/ClientChannelInitializer.java -------------------------------------------------------------------------------- /demo-code/src/main/java/com/netty/learn/lengthFieldBasedFrameDecoderDemo/PeClient.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rickiyang/cim/HEAD/demo-code/src/main/java/com/netty/learn/lengthFieldBasedFrameDecoderDemo/PeClient.java -------------------------------------------------------------------------------- /demo-code/src/main/java/com/netty/learn/lengthFieldBasedFrameDecoderDemo/PeClientHandler.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rickiyang/cim/HEAD/demo-code/src/main/java/com/netty/learn/lengthFieldBasedFrameDecoderDemo/PeClientHandler.java -------------------------------------------------------------------------------- /demo-code/src/main/java/com/netty/learn/lengthFieldBasedFrameDecoderDemo/PeServer.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rickiyang/cim/HEAD/demo-code/src/main/java/com/netty/learn/lengthFieldBasedFrameDecoderDemo/PeServer.java -------------------------------------------------------------------------------- /demo-code/src/main/java/com/netty/learn/lengthFieldBasedFrameDecoderDemo/PeServerHandler.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rickiyang/cim/HEAD/demo-code/src/main/java/com/netty/learn/lengthFieldBasedFrameDecoderDemo/PeServerHandler.java -------------------------------------------------------------------------------- /demo-code/src/main/java/com/netty/learn/lengthFieldBasedFrameDecoderDemo/ServerChannelInitializer.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rickiyang/cim/HEAD/demo-code/src/main/java/com/netty/learn/lengthFieldBasedFrameDecoderDemo/ServerChannelInitializer.java -------------------------------------------------------------------------------- /demo-code/src/main/java/com/netty/learn/lengthFieldBasedFrameDecoderDemo/index.md: -------------------------------------------------------------------------------- 1 | ### 拆包-LengthFieldBasedFrameDecoder 使用 -------------------------------------------------------------------------------- /demo-code/src/main/java/com/netty/learn/lineBasedFrameDecoderDemo/ClientChannelInitializer.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rickiyang/cim/HEAD/demo-code/src/main/java/com/netty/learn/lineBasedFrameDecoderDemo/ClientChannelInitializer.java -------------------------------------------------------------------------------- /demo-code/src/main/java/com/netty/learn/lineBasedFrameDecoderDemo/PeClient.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rickiyang/cim/HEAD/demo-code/src/main/java/com/netty/learn/lineBasedFrameDecoderDemo/PeClient.java -------------------------------------------------------------------------------- /demo-code/src/main/java/com/netty/learn/lineBasedFrameDecoderDemo/PeClientHandler.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rickiyang/cim/HEAD/demo-code/src/main/java/com/netty/learn/lineBasedFrameDecoderDemo/PeClientHandler.java -------------------------------------------------------------------------------- /demo-code/src/main/java/com/netty/learn/lineBasedFrameDecoderDemo/PeServer.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rickiyang/cim/HEAD/demo-code/src/main/java/com/netty/learn/lineBasedFrameDecoderDemo/PeServer.java -------------------------------------------------------------------------------- /demo-code/src/main/java/com/netty/learn/lineBasedFrameDecoderDemo/PeServerHandler.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rickiyang/cim/HEAD/demo-code/src/main/java/com/netty/learn/lineBasedFrameDecoderDemo/PeServerHandler.java -------------------------------------------------------------------------------- /demo-code/src/main/java/com/netty/learn/lineBasedFrameDecoderDemo/ServerChannelInitializer.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rickiyang/cim/HEAD/demo-code/src/main/java/com/netty/learn/lineBasedFrameDecoderDemo/ServerChannelInitializer.java -------------------------------------------------------------------------------- /demo-code/src/main/java/com/netty/learn/lineBasedFrameDecoderDemo/index.md: -------------------------------------------------------------------------------- 1 | ### 拆包-LineBasedFrameDecoder使用 -------------------------------------------------------------------------------- /demo-code/src/main/java/com/netty/learn/myProtocolEncoderDemo/ClientChannelInitializer.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rickiyang/cim/HEAD/demo-code/src/main/java/com/netty/learn/myProtocolEncoderDemo/ClientChannelInitializer.java -------------------------------------------------------------------------------- /demo-code/src/main/java/com/netty/learn/myProtocolEncoderDemo/MsgReq.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rickiyang/cim/HEAD/demo-code/src/main/java/com/netty/learn/myProtocolEncoderDemo/MsgReq.java -------------------------------------------------------------------------------- /demo-code/src/main/java/com/netty/learn/myProtocolEncoderDemo/MyProtocolDecoder.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rickiyang/cim/HEAD/demo-code/src/main/java/com/netty/learn/myProtocolEncoderDemo/MyProtocolDecoder.java -------------------------------------------------------------------------------- /demo-code/src/main/java/com/netty/learn/myProtocolEncoderDemo/MyProtocolEncoder.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rickiyang/cim/HEAD/demo-code/src/main/java/com/netty/learn/myProtocolEncoderDemo/MyProtocolEncoder.java -------------------------------------------------------------------------------- /demo-code/src/main/java/com/netty/learn/myProtocolEncoderDemo/PeClient.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rickiyang/cim/HEAD/demo-code/src/main/java/com/netty/learn/myProtocolEncoderDemo/PeClient.java -------------------------------------------------------------------------------- /demo-code/src/main/java/com/netty/learn/myProtocolEncoderDemo/PeClientHandler.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rickiyang/cim/HEAD/demo-code/src/main/java/com/netty/learn/myProtocolEncoderDemo/PeClientHandler.java -------------------------------------------------------------------------------- /demo-code/src/main/java/com/netty/learn/myProtocolEncoderDemo/PeServer.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rickiyang/cim/HEAD/demo-code/src/main/java/com/netty/learn/myProtocolEncoderDemo/PeServer.java -------------------------------------------------------------------------------- /demo-code/src/main/java/com/netty/learn/myProtocolEncoderDemo/PeServerHandler.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rickiyang/cim/HEAD/demo-code/src/main/java/com/netty/learn/myProtocolEncoderDemo/PeServerHandler.java -------------------------------------------------------------------------------- /demo-code/src/main/java/com/netty/learn/myProtocolEncoderDemo/ServerChannelInitializer.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rickiyang/cim/HEAD/demo-code/src/main/java/com/netty/learn/myProtocolEncoderDemo/ServerChannelInitializer.java -------------------------------------------------------------------------------- /demo-code/src/main/java/com/netty/learn/myProtocolEncoderDemo/index.md: -------------------------------------------------------------------------------- 1 | ### 拆包-MyProtocolEncoder 使用 2 | 自定义编解码器 -------------------------------------------------------------------------------- /demo-code/src/main/java/com/netty/learn/pbDemo/ClientChannelInitializer.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rickiyang/cim/HEAD/demo-code/src/main/java/com/netty/learn/pbDemo/ClientChannelInitializer.java -------------------------------------------------------------------------------- /demo-code/src/main/java/com/netty/learn/pbDemo/MsgEntity.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rickiyang/cim/HEAD/demo-code/src/main/java/com/netty/learn/pbDemo/MsgEntity.java -------------------------------------------------------------------------------- /demo-code/src/main/java/com/netty/learn/pbDemo/PbClient.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rickiyang/cim/HEAD/demo-code/src/main/java/com/netty/learn/pbDemo/PbClient.java -------------------------------------------------------------------------------- /demo-code/src/main/java/com/netty/learn/pbDemo/PbClientHandler.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rickiyang/cim/HEAD/demo-code/src/main/java/com/netty/learn/pbDemo/PbClientHandler.java -------------------------------------------------------------------------------- /demo-code/src/main/java/com/netty/learn/pbDemo/PbServer.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rickiyang/cim/HEAD/demo-code/src/main/java/com/netty/learn/pbDemo/PbServer.java -------------------------------------------------------------------------------- /demo-code/src/main/java/com/netty/learn/pbDemo/PbServerHandler.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rickiyang/cim/HEAD/demo-code/src/main/java/com/netty/learn/pbDemo/PbServerHandler.java -------------------------------------------------------------------------------- /demo-code/src/main/java/com/netty/learn/pbDemo/ServerChannelInitializer.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rickiyang/cim/HEAD/demo-code/src/main/java/com/netty/learn/pbDemo/ServerChannelInitializer.java -------------------------------------------------------------------------------- /demo-code/src/main/java/com/netty/learn/pbDemo/index.md: -------------------------------------------------------------------------------- 1 | ### 使用 protobuf 交换数据 -------------------------------------------------------------------------------- /demo-code/src/main/java/com/netty/learn/pbDemo/msg_entity.proto: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rickiyang/cim/HEAD/demo-code/src/main/java/com/netty/learn/pbDemo/msg_entity.proto -------------------------------------------------------------------------------- /demo-code/src/main/java/com/netty/learn/stickPackage/ClientChannelInitializer.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rickiyang/cim/HEAD/demo-code/src/main/java/com/netty/learn/stickPackage/ClientChannelInitializer.java -------------------------------------------------------------------------------- /demo-code/src/main/java/com/netty/learn/stickPackage/PeClient.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rickiyang/cim/HEAD/demo-code/src/main/java/com/netty/learn/stickPackage/PeClient.java -------------------------------------------------------------------------------- /demo-code/src/main/java/com/netty/learn/stickPackage/PeClientHandler.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rickiyang/cim/HEAD/demo-code/src/main/java/com/netty/learn/stickPackage/PeClientHandler.java -------------------------------------------------------------------------------- /demo-code/src/main/java/com/netty/learn/stickPackage/PeServer.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rickiyang/cim/HEAD/demo-code/src/main/java/com/netty/learn/stickPackage/PeServer.java -------------------------------------------------------------------------------- /demo-code/src/main/java/com/netty/learn/stickPackage/PeServerHandler.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rickiyang/cim/HEAD/demo-code/src/main/java/com/netty/learn/stickPackage/PeServerHandler.java -------------------------------------------------------------------------------- /demo-code/src/main/java/com/netty/learn/stickPackage/ServerChannelInitializer.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rickiyang/cim/HEAD/demo-code/src/main/java/com/netty/learn/stickPackage/ServerChannelInitializer.java -------------------------------------------------------------------------------- /demo-code/src/main/java/com/netty/learn/stickPackage/index.md: -------------------------------------------------------------------------------- 1 | ### 测试粘包情况 -------------------------------------------------------------------------------- /demo-code/src/main/resources/application.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rickiyang/cim/HEAD/demo-code/src/main/resources/application.yml -------------------------------------------------------------------------------- /demo-code/src/main/resources/log4j2-spring.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rickiyang/cim/HEAD/demo-code/src/main/resources/log4j2-spring.xml -------------------------------------------------------------------------------- /demo-code/src/test/java/com/netty/learn/DemoCodeApplicationTests.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rickiyang/cim/HEAD/demo-code/src/test/java/com/netty/learn/DemoCodeApplicationTests.java -------------------------------------------------------------------------------- /pom.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rickiyang/cim/HEAD/pom.xml -------------------------------------------------------------------------------- /readme.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rickiyang/cim/HEAD/readme.md -------------------------------------------------------------------------------- /rim-client/.gitignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rickiyang/cim/HEAD/rim-client/.gitignore -------------------------------------------------------------------------------- /rim-client/pom.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rickiyang/cim/HEAD/rim-client/pom.xml -------------------------------------------------------------------------------- /rim-client/src/main/java/com/rim/rimclient/RimClientApplication.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rickiyang/cim/HEAD/rim-client/src/main/java/com/rim/rimclient/RimClientApplication.java -------------------------------------------------------------------------------- /rim-client/src/main/java/com/rim/rimclient/client/ClientHandlerInitializer.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rickiyang/cim/HEAD/rim-client/src/main/java/com/rim/rimclient/client/ClientHandlerInitializer.java -------------------------------------------------------------------------------- /rim-client/src/main/java/com/rim/rimclient/client/HeartbeatHandler.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rickiyang/cim/HEAD/rim-client/src/main/java/com/rim/rimclient/client/HeartbeatHandler.java -------------------------------------------------------------------------------- /rim-client/src/main/java/com/rim/rimclient/client/NettyClient.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rickiyang/cim/HEAD/rim-client/src/main/java/com/rim/rimclient/client/NettyClient.java -------------------------------------------------------------------------------- /rim-client/src/main/java/com/rim/rimclient/client/NettyClientHandler.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rickiyang/cim/HEAD/rim-client/src/main/java/com/rim/rimclient/client/NettyClientHandler.java -------------------------------------------------------------------------------- /rim-client/src/main/resources/application.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rickiyang/cim/HEAD/rim-client/src/main/resources/application.yml -------------------------------------------------------------------------------- /rim-client/src/main/resources/log4j2-spring.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rickiyang/cim/HEAD/rim-client/src/main/resources/log4j2-spring.xml -------------------------------------------------------------------------------- /rim-client/src/test/java/com/rim/rimclient/RimClientApplicationTests.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rickiyang/cim/HEAD/rim-client/src/test/java/com/rim/rimclient/RimClientApplicationTests.java -------------------------------------------------------------------------------- /rim-common/.gitignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rickiyang/cim/HEAD/rim-common/.gitignore -------------------------------------------------------------------------------- /rim-common/.mvn/wrapper/MavenWrapperDownloader.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rickiyang/cim/HEAD/rim-common/.mvn/wrapper/MavenWrapperDownloader.java -------------------------------------------------------------------------------- /rim-common/.mvn/wrapper/maven-wrapper.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rickiyang/cim/HEAD/rim-common/.mvn/wrapper/maven-wrapper.jar -------------------------------------------------------------------------------- /rim-common/.mvn/wrapper/maven-wrapper.properties: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rickiyang/cim/HEAD/rim-common/.mvn/wrapper/maven-wrapper.properties -------------------------------------------------------------------------------- /rim-common/mvnw: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rickiyang/cim/HEAD/rim-common/mvnw -------------------------------------------------------------------------------- /rim-common/mvnw.cmd: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rickiyang/cim/HEAD/rim-common/mvnw.cmd -------------------------------------------------------------------------------- /rim-common/pom.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rickiyang/cim/HEAD/rim-common/pom.xml -------------------------------------------------------------------------------- /rim-common/src/main/java/com/rim/RimCommonApplication.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rickiyang/cim/HEAD/rim-common/src/main/java/com/rim/RimCommonApplication.java -------------------------------------------------------------------------------- /rim-common/src/main/java/com/rim/base/Unpack.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rickiyang/cim/HEAD/rim-common/src/main/java/com/rim/base/Unpack.java -------------------------------------------------------------------------------- /rim-common/src/main/java/com/rim/exception/PackException.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rickiyang/cim/HEAD/rim-common/src/main/java/com/rim/exception/PackException.java -------------------------------------------------------------------------------- /rim-common/src/main/java/com/rim/exception/UnpackException.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rickiyang/cim/HEAD/rim-common/src/main/java/com/rim/exception/UnpackException.java -------------------------------------------------------------------------------- /rim-common/src/main/java/com/rim/handler/decoder/CimDecoder.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rickiyang/cim/HEAD/rim-common/src/main/java/com/rim/handler/decoder/CimDecoder.java -------------------------------------------------------------------------------- /rim-common/src/main/java/com/rim/handler/decoder/ProtoBufDecoder.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rickiyang/cim/HEAD/rim-common/src/main/java/com/rim/handler/decoder/ProtoBufDecoder.java -------------------------------------------------------------------------------- /rim-common/src/main/java/com/rim/handler/encoder/CimEncoder.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rickiyang/cim/HEAD/rim-common/src/main/java/com/rim/handler/encoder/CimEncoder.java -------------------------------------------------------------------------------- /rim-common/src/main/java/com/rim/handler/encoder/ProtoBufEncoder.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rickiyang/cim/HEAD/rim-common/src/main/java/com/rim/handler/encoder/ProtoBufEncoder.java -------------------------------------------------------------------------------- /rim-common/src/main/java/com/rim/message/HeartBeatPacket.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rickiyang/cim/HEAD/rim-common/src/main/java/com/rim/message/HeartBeatPacket.java -------------------------------------------------------------------------------- /rim-common/src/main/java/com/rim/message/ImBody.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rickiyang/cim/HEAD/rim-common/src/main/java/com/rim/message/ImBody.java -------------------------------------------------------------------------------- /rim-common/src/main/java/com/rim/message/ImChat.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rickiyang/cim/HEAD/rim-common/src/main/java/com/rim/message/ImChat.java -------------------------------------------------------------------------------- /rim-common/src/main/java/com/rim/message/ImChatConstants.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rickiyang/cim/HEAD/rim-common/src/main/java/com/rim/message/ImChatConstants.java -------------------------------------------------------------------------------- /rim-common/src/main/java/com/rim/message/ImChatConverter.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rickiyang/cim/HEAD/rim-common/src/main/java/com/rim/message/ImChatConverter.java -------------------------------------------------------------------------------- /rim-common/src/main/java/com/rim/message/ImHeader.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rickiyang/cim/HEAD/rim-common/src/main/java/com/rim/message/ImHeader.java -------------------------------------------------------------------------------- /rim-common/src/main/java/com/rim/protocol/pb/im_chat.proto: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rickiyang/cim/HEAD/rim-common/src/main/java/com/rim/protocol/pb/im_chat.proto -------------------------------------------------------------------------------- /rim-common/src/main/java/com/rim/protocol/protobuf/ImChat.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rickiyang/cim/HEAD/rim-common/src/main/java/com/rim/protocol/protobuf/ImChat.java -------------------------------------------------------------------------------- /rim-common/src/main/java/com/rim/utils/ExpCode.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rickiyang/cim/HEAD/rim-common/src/main/java/com/rim/utils/ExpCode.java -------------------------------------------------------------------------------- /rim-common/src/main/java/com/rim/utils/IdGenerator.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rickiyang/cim/HEAD/rim-common/src/main/java/com/rim/utils/IdGenerator.java -------------------------------------------------------------------------------- /rim-common/src/main/java/com/rim/utils/IpUtil.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rickiyang/cim/HEAD/rim-common/src/main/java/com/rim/utils/IpUtil.java -------------------------------------------------------------------------------- /rim-common/src/main/resources/application.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rickiyang/cim/HEAD/rim-common/src/main/resources/application.yml -------------------------------------------------------------------------------- /rim-common/src/test/java/com/rim/rimcommon/RimCommonApplicationTests.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rickiyang/cim/HEAD/rim-common/src/test/java/com/rim/rimcommon/RimCommonApplicationTests.java -------------------------------------------------------------------------------- /rim-server/.gitignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rickiyang/cim/HEAD/rim-server/.gitignore -------------------------------------------------------------------------------- /rim-server/pom.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rickiyang/cim/HEAD/rim-server/pom.xml -------------------------------------------------------------------------------- /rim-server/src/main/java/com/rim/rimserver/RimServerApplication.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rickiyang/cim/HEAD/rim-server/src/main/java/com/rim/rimserver/RimServerApplication.java -------------------------------------------------------------------------------- /rim-server/src/main/java/com/rim/rimserver/config/ChannelContext.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rickiyang/cim/HEAD/rim-server/src/main/java/com/rim/rimserver/config/ChannelContext.java -------------------------------------------------------------------------------- /rim-server/src/main/java/com/rim/rimserver/server/NettyServer.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rickiyang/cim/HEAD/rim-server/src/main/java/com/rim/rimserver/server/NettyServer.java -------------------------------------------------------------------------------- /rim-server/src/main/java/com/rim/rimserver/server/NettyServerHandler.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rickiyang/cim/HEAD/rim-server/src/main/java/com/rim/rimserver/server/NettyServerHandler.java -------------------------------------------------------------------------------- /rim-server/src/main/java/com/rim/rimserver/server/NettyServerHandlerInitializer.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rickiyang/cim/HEAD/rim-server/src/main/java/com/rim/rimserver/server/NettyServerHandlerInitializer.java -------------------------------------------------------------------------------- /rim-server/src/main/java/com/rim/rimserver/server/ServerIdleStateHandler.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rickiyang/cim/HEAD/rim-server/src/main/java/com/rim/rimserver/server/ServerIdleStateHandler.java -------------------------------------------------------------------------------- /rim-server/src/main/resources/application.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rickiyang/cim/HEAD/rim-server/src/main/resources/application.yml -------------------------------------------------------------------------------- /rim-server/src/main/resources/log4j2-spring.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rickiyang/cim/HEAD/rim-server/src/main/resources/log4j2-spring.xml -------------------------------------------------------------------------------- /rim-server/src/test/java/com/rim/rimserver/MainTest.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rickiyang/cim/HEAD/rim-server/src/test/java/com/rim/rimserver/MainTest.java -------------------------------------------------------------------------------- /rim-server/src/test/java/com/rim/rimserver/RimServerApplicationTests.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rickiyang/cim/HEAD/rim-server/src/test/java/com/rim/rimserver/RimServerApplicationTests.java -------------------------------------------------------------------------------- /rim-server/src/test/java/com/rim/rimserver/TestDoSomething.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rickiyang/cim/HEAD/rim-server/src/test/java/com/rim/rimserver/TestDoSomething.java --------------------------------------------------------------------------------