Browse Source

重整项目结构

master
tangmingyou 4 years ago
parent
commit
25789b4bad
  1. 2
      im-client/pom.xml
  2. 2
      im-client/src/main/java/net/sopod/soim/client/session/SoImSession.java
  3. 41
      im-core/pom.xml
  4. 38
      im-data/pom.xml
  5. 2
      im-entry/pom.xml
  6. 3
      im-entry/src/main/java/net/sopod/soim/entry/config/MessageHandlerContext.java
  7. 2
      im-entry/src/main/java/net/sopod/soim/entry/config/SpringApplicationContextInitialed.java
  8. 7
      im-entry/src/main/java/net/sopod/soim/entry/delay/NetUserDelayTaskManager.java
  9. 8
      im-entry/src/main/java/net/sopod/soim/entry/handlers/auth/ReqTokenAuthHandler.java
  10. 6
      im-entry/src/main/java/net/sopod/soim/entry/handlers/chat/ReqTextChatHandler.java
  11. 6
      im-entry/src/main/java/net/sopod/soim/entry/handlers/task/NetUserDelayCloseHandler.java
  12. 6
      im-entry/src/main/java/net/sopod/soim/entry/handlers/user/HelloHandler.java
  13. 6
      im-entry/src/main/java/net/sopod/soim/entry/handlers/user/ReqOnlineUserListHandler.java
  14. 4
      im-entry/src/main/java/net/sopod/soim/entry/registry/ProtoMessageHandlerRegistry.java
  15. 2
      im-entry/src/main/java/net/sopod/soim/entry/server/AccountRegistry.java
  16. 2
      im-entry/src/main/java/net/sopod/soim/entry/server/AttributeKeys.java
  17. 2
      im-entry/src/main/java/net/sopod/soim/entry/server/ImEntryInitializer.java
  18. 7
      im-entry/src/main/java/net/sopod/soim/entry/server/InboundImMessageHandler.java
  19. 8
      im-entry/src/main/java/net/sopod/soim/entry/server/ProtoMessageDispatcher.java
  20. 8
      im-entry/src/main/java/net/sopod/soim/entry/server/handler/AccountMessageHandler.java
  21. 4
      im-entry/src/main/java/net/sopod/soim/entry/server/handler/MessageHandler.java
  22. 5
      im-entry/src/main/java/net/sopod/soim/entry/server/handler/NetUserMessageHandler.java
  23. 2
      im-entry/src/main/java/net/sopod/soim/entry/server/session/Account.java
  24. 2
      im-entry/src/main/java/net/sopod/soim/entry/server/session/NetUser.java
  25. 2
      im-entry/src/main/java/net/sopod/soim/entry/service/TextChatServiceImpl.java
  26. 3
      im-entry/src/main/java/net/sopod/soim/entry/worker/WorkerGroup.java
  27. 90
      im-service-api/im-entry-protocol/pom.xml
  28. 0
      im-service-api/im-entry-protocol/src/main/java/net/sopod/soim/data/Gen1Protobuf.java
  29. 0
      im-service-api/im-entry-protocol/src/main/java/net/sopod/soim/data/Gen2ProtoSerialNo.java
  30. 0
      im-service-api/im-entry-protocol/src/main/java/net/sopod/soim/data/constant/PlatformType.java
  31. 0
      im-service-api/im-entry-protocol/src/main/java/net/sopod/soim/data/constant/SerializeType.java
  32. 0
      im-service-api/im-entry-protocol/src/main/java/net/sopod/soim/data/msg/auth/Auth.java
  33. 0
      im-service-api/im-entry-protocol/src/main/java/net/sopod/soim/data/msg/chat/Chat.java
  34. 0
      im-service-api/im-entry-protocol/src/main/java/net/sopod/soim/data/msg/hello/HelloPB.java
  35. 0
      im-service-api/im-entry-protocol/src/main/java/net/sopod/soim/data/msg/net/HeartBeat.java
  36. 0
      im-service-api/im-entry-protocol/src/main/java/net/sopod/soim/data/msg/task/Tasks.java
  37. 0
      im-service-api/im-entry-protocol/src/main/java/net/sopod/soim/data/msg/user/UserGroup.java
  38. 0
      im-service-api/im-entry-protocol/src/main/java/net/sopod/soim/data/proto/ProtoMessageManager.java
  39. 0
      im-service-api/im-entry-protocol/src/main/java/net/sopod/soim/data/serialize/ByteSerializer.java
  40. 0
      im-service-api/im-entry-protocol/src/main/java/net/sopod/soim/data/serialize/ImMessage.java
  41. 4
      im-service-api/im-entry-protocol/src/main/java/net/sopod/soim/data/serialize/ImMessageCodec.java
  42. 0
      im-service-api/im-entry-protocol/src/main/java/net/sopod/soim/data/serialize/JacksonByteSerializer.java
  43. 0
      im-service-api/im-entry-protocol/src/main/java/net/sopod/soim/data/transer/LoginReq.java
  44. 0
      im-service-api/im-entry-protocol/src/main/resources/proto/Hello.proto
  45. 0
      im-service-api/im-entry-protocol/src/main/resources/proto/auth/Auth.proto
  46. 0
      im-service-api/im-entry-protocol/src/main/resources/proto/chat/Chat.proto
  47. 0
      im-service-api/im-entry-protocol/src/main/resources/proto/net/HeartBeat.proto
  48. 0
      im-service-api/im-entry-protocol/src/main/resources/proto/task/Tasks.proto
  49. 0
      im-service-api/im-entry-protocol/src/main/resources/proto/user/UserGroup.proto
  50. 0
      im-service-api/im-entry-protocol/src/main/resources/protoSerialNoTable.txt
  51. 44
      im-service-api/pom.xml
  52. 10
      pom.xml

2
im-client/pom.xml

@ -14,7 +14,7 @@
<dependencies> <dependencies>
<dependency> <dependency>
<groupId>net.sopod</groupId> <groupId>net.sopod</groupId>
<artifactId>im-core</artifactId> <artifactId>im-entry-protocol</artifactId>
<version>${soim.version}</version> <version>${soim.version}</version>
</dependency> </dependency>
<dependency> <dependency>

2
im-client/src/main/java/net/sopod/soim/client/session/SoImSession.java

@ -11,7 +11,7 @@ import io.netty.channel.socket.SocketChannel;
import io.netty.channel.socket.nio.NioSocketChannel; import io.netty.channel.socket.nio.NioSocketChannel;
import net.sopod.soim.client.logger.Logger; import net.sopod.soim.client.logger.Logger;
import net.sopod.soim.common.util.netty.Varint32FrameCodec; import net.sopod.soim.common.util.netty.Varint32FrameCodec;
import net.sopod.soim.core.net.ImMessageCodec; import net.sopod.soim.data.serialize.ImMessageCodec;
import net.sopod.soim.data.msg.auth.Auth; import net.sopod.soim.data.msg.auth.Auth;
import net.sopod.soim.data.msg.chat.Chat; import net.sopod.soim.data.msg.chat.Chat;
import org.slf4j.LoggerFactory; import org.slf4j.LoggerFactory;

41
im-core/pom.xml

@ -1,41 +0,0 @@
<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<parent>
<artifactId>so-im</artifactId>
<groupId>net.sopod</groupId>
<version>1.0.0</version>
</parent>
<modelVersion>4.0.0</modelVersion>
<artifactId>im-core</artifactId>
<dependencies>
<dependency>
<groupId>net.sopod</groupId>
<artifactId>im-common</artifactId>
<version>${soim.version}</version>
</dependency>
<dependency>
<groupId>net.sopod</groupId>
<artifactId>im-data</artifactId>
<version>${soim.version}</version>
</dependency>
<dependency>
<groupId>io.netty</groupId>
<artifactId>netty-all</artifactId>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-context</artifactId>
<scope>provided</scope>
</dependency>
<dependency>
<groupId>org.apache.dubbo</groupId>
<artifactId>dubbo</artifactId>
<scope>provided</scope>
</dependency>
</dependencies>
</project>

38
im-data/pom.xml

@ -1,38 +0,0 @@
<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<parent>
<artifactId>so-im</artifactId>
<groupId>net.sopod</groupId>
<version>1.0.0</version>
</parent>
<modelVersion>4.0.0</modelVersion>
<artifactId>im-data</artifactId>
<dependencies>
<dependency>
<groupId>net.sopod</groupId>
<artifactId>im-common</artifactId>
<version>${soim.version}</version>
</dependency>
<dependency>
<groupId>io.netty</groupId>
<artifactId>netty-buffer</artifactId>
</dependency>
<dependency>
<groupId>com.google.protobuf</groupId>
<artifactId>protobuf-java</artifactId>
</dependency>
<dependency>
<groupId>org.projectlombok</groupId>
<artifactId>lombok</artifactId>
</dependency>
<dependency>
<groupId>org.reflections</groupId>
<artifactId>reflections</artifactId>
</dependency>
</dependencies>
</project>

2
im-entry/pom.xml

@ -23,7 +23,7 @@
</dependency> </dependency>
<dependency> <dependency>
<groupId>net.sopod</groupId> <groupId>net.sopod</groupId>
<artifactId>im-core</artifactId> <artifactId>im-entry-protocol</artifactId>
<version>${soim.version}</version> <version>${soim.version}</version>
</dependency> </dependency>
<dependency> <dependency>

3
im-entry/src/main/java/net/sopod/soim/entry/config/MessageHandlerContext.java

@ -1,6 +1,7 @@
package net.sopod.soim.entry.config; package net.sopod.soim.entry.config;
import io.netty.util.concurrent.FastThreadLocal; import io.netty.util.concurrent.FastThreadLocal;
import net.sopod.soim.entry.server.handler.MessageHandler;
import java.util.Map; import java.util.Map;
import java.util.concurrent.ConcurrentHashMap; import java.util.concurrent.ConcurrentHashMap;
@ -9,7 +10,7 @@ import java.util.concurrent.ConcurrentHashMap;
* MsgHandlerContext * MsgHandlerContext
* *
* 线程上下文属性设置工具 * 线程上下文属性设置工具
* 这里主要用于 {@link net.sopod.soim.core.handler.MessageHandler} dubbo RpcContext 上下文参数传递 * 这里主要用于 {@link MessageHandler} dubbo RpcContext 上下文参数传递
* *
* @author tmy * @author tmy
* @date 2022-05-01 22:42 * @date 2022-05-01 22:42

2
im-entry/src/main/java/net/sopod/soim/entry/config/SpringApplicationContextInitialed.java

@ -1,6 +1,6 @@
package net.sopod.soim.entry.config; package net.sopod.soim.entry.config;
import net.sopod.soim.core.registry.ProtoMessageHandlerRegistry; import net.sopod.soim.entry.registry.ProtoMessageHandlerRegistry;
import org.springframework.beans.BeansException; import org.springframework.beans.BeansException;
import org.springframework.context.ApplicationContext; import org.springframework.context.ApplicationContext;
import org.springframework.context.ApplicationContextAware; import org.springframework.context.ApplicationContextAware;

7
im-entry/src/main/java/net/sopod/soim/entry/delay/NetUserDelayTaskManager.java

@ -3,14 +3,13 @@ package net.sopod.soim.entry.delay;
import com.google.common.base.Preconditions; import com.google.common.base.Preconditions;
import com.google.protobuf.MessageLite; import com.google.protobuf.MessageLite;
import net.sopod.soim.common.util.ImClock; import net.sopod.soim.common.util.ImClock;
import net.sopod.soim.core.handler.MessageHandler; import net.sopod.soim.entry.server.handler.MessageHandler;
import net.sopod.soim.core.registry.ProtoMessageHandlerRegistry; import net.sopod.soim.entry.registry.ProtoMessageHandlerRegistry;
import net.sopod.soim.core.session.NetUser; import net.sopod.soim.entry.server.session.NetUser;
import net.sopod.soim.entry.server.ProtoMessageDispatcher; import net.sopod.soim.entry.server.ProtoMessageDispatcher;
import org.slf4j.Logger; import org.slf4j.Logger;
import org.slf4j.LoggerFactory; import org.slf4j.LoggerFactory;
import java.lang.ref.WeakReference;
import java.util.concurrent.*; import java.util.concurrent.*;
/** /**

8
im-entry/src/main/java/net/sopod/soim/entry/handler/auth/ReqTokenAuthHandler.java → im-entry/src/main/java/net/sopod/soim/entry/handlers/auth/ReqTokenAuthHandler.java

@ -1,10 +1,10 @@
package net.sopod.soim.entry.handler.auth; package net.sopod.soim.entry.handlers.auth;
import com.google.protobuf.MessageLite; import com.google.protobuf.MessageLite;
import net.sopod.soim.entry.config.ImEntryAppContextHolder; import net.sopod.soim.entry.config.ImEntryAppContextHolder;
import net.sopod.soim.entry.handler.NetUserMessageHandler; import net.sopod.soim.entry.server.handler.NetUserMessageHandler;
import net.sopod.soim.core.session.Account; import net.sopod.soim.entry.server.session.Account;
import net.sopod.soim.core.session.NetUser; import net.sopod.soim.entry.server.session.NetUser;
import net.sopod.soim.data.msg.auth.Auth; import net.sopod.soim.data.msg.auth.Auth;
import net.sopod.soim.entry.config.EntryServerConfig; import net.sopod.soim.entry.config.EntryServerConfig;
import net.sopod.soim.entry.server.AccountRegistry; import net.sopod.soim.entry.server.AccountRegistry;

6
im-entry/src/main/java/net/sopod/soim/entry/handler/chat/ReqTextChatHandler.java → im-entry/src/main/java/net/sopod/soim/entry/handlers/chat/ReqTextChatHandler.java

@ -1,8 +1,8 @@
package net.sopod.soim.entry.handler.chat; package net.sopod.soim.entry.handlers.chat;
import com.google.protobuf.MessageLite; import com.google.protobuf.MessageLite;
import net.sopod.soim.entry.handler.AccountMessageHandler; import net.sopod.soim.entry.server.handler.AccountMessageHandler;
import net.sopod.soim.core.session.Account; import net.sopod.soim.entry.server.session.Account;
import net.sopod.soim.data.msg.chat.Chat; import net.sopod.soim.data.msg.chat.Chat;
import net.sopod.soim.logic.common.model.TextChat; import net.sopod.soim.logic.common.model.TextChat;
import net.sopod.soim.logic.user.service.ChatService; import net.sopod.soim.logic.user.service.ChatService;

6
im-entry/src/main/java/net/sopod/soim/entry/handler/task/NetUserDelayCloseHandler.java → im-entry/src/main/java/net/sopod/soim/entry/handlers/task/NetUserDelayCloseHandler.java

@ -1,8 +1,8 @@
package net.sopod.soim.entry.handler.task; package net.sopod.soim.entry.handlers.task;
import com.google.protobuf.MessageLite; import com.google.protobuf.MessageLite;
import net.sopod.soim.entry.handler.NetUserMessageHandler; import net.sopod.soim.entry.server.handler.NetUserMessageHandler;
import net.sopod.soim.core.session.NetUser; import net.sopod.soim.entry.server.session.NetUser;
import net.sopod.soim.data.msg.task.Tasks; import net.sopod.soim.data.msg.task.Tasks;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;

6
im-entry/src/main/java/net/sopod/soim/entry/handler/user/HelloHandler.java → im-entry/src/main/java/net/sopod/soim/entry/handlers/user/HelloHandler.java

@ -1,10 +1,10 @@
package net.sopod.soim.entry.handler.user; package net.sopod.soim.entry.handlers.user;
import com.google.protobuf.MessageLite; import com.google.protobuf.MessageLite;
import net.sopod.soim.core.session.Account; import net.sopod.soim.entry.server.session.Account;
import net.sopod.soim.data.msg.hello.HelloPB; import net.sopod.soim.data.msg.hello.HelloPB;
import net.sopod.soim.entry.delay.NetUserDelayTaskManager; import net.sopod.soim.entry.delay.NetUserDelayTaskManager;
import net.sopod.soim.entry.handler.AccountMessageHandler; import net.sopod.soim.entry.server.handler.AccountMessageHandler;
import net.sopod.soim.logic.api.segmentid.core.SegmentIdGenerator; import net.sopod.soim.logic.api.segmentid.core.SegmentIdGenerator;
import net.sopod.soim.logic.user.service.UserBizService; import net.sopod.soim.logic.user.service.UserBizService;
import org.apache.dubbo.config.annotation.DubboReference; import org.apache.dubbo.config.annotation.DubboReference;

6
im-entry/src/main/java/net/sopod/soim/entry/handler/user/ReqOnlineUserListHandler.java → im-entry/src/main/java/net/sopod/soim/entry/handlers/user/ReqOnlineUserListHandler.java

@ -1,9 +1,9 @@
package net.sopod.soim.entry.handler.user; package net.sopod.soim.entry.handlers.user;
import com.google.protobuf.MessageLite; import com.google.protobuf.MessageLite;
import net.sopod.soim.core.session.Account; import net.sopod.soim.entry.server.session.Account;
import net.sopod.soim.data.msg.user.UserGroup; import net.sopod.soim.data.msg.user.UserGroup;
import net.sopod.soim.entry.handler.AccountMessageHandler; import net.sopod.soim.entry.server.handler.AccountMessageHandler;
import net.sopod.soim.logic.common.model.UserInfo; import net.sopod.soim.logic.common.model.UserInfo;
import net.sopod.soim.logic.user.service.UserBizService; import net.sopod.soim.logic.user.service.UserBizService;
import org.apache.dubbo.config.annotation.DubboReference; import org.apache.dubbo.config.annotation.DubboReference;

4
im-core/src/main/java/net/sopod/soim/core/registry/ProtoMessageHandlerRegistry.java → im-entry/src/main/java/net/sopod/soim/entry/registry/ProtoMessageHandlerRegistry.java

@ -1,9 +1,9 @@
package net.sopod.soim.core.registry; package net.sopod.soim.entry.registry;
import com.google.protobuf.MessageLite; import com.google.protobuf.MessageLite;
import net.sopod.soim.common.util.ImClock; import net.sopod.soim.common.util.ImClock;
import net.sopod.soim.common.util.Reflects; import net.sopod.soim.common.util.Reflects;
import net.sopod.soim.core.handler.MessageHandler; import net.sopod.soim.entry.server.handler.MessageHandler;
import org.slf4j.Logger; import org.slf4j.Logger;
import org.slf4j.LoggerFactory; import org.slf4j.LoggerFactory;
import org.springframework.context.ApplicationContext; import org.springframework.context.ApplicationContext;

2
im-entry/src/main/java/net/sopod/soim/entry/server/AccountRegistry.java

@ -1,6 +1,6 @@
package net.sopod.soim.entry.server; package net.sopod.soim.entry.server;
import net.sopod.soim.core.session.Account; import net.sopod.soim.entry.server.session.Account;
import org.slf4j.Logger; import org.slf4j.Logger;
import org.slf4j.LoggerFactory; import org.slf4j.LoggerFactory;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;

2
im-core/src/main/java/net/sopod/soim/core/net/AttributeKeys.java → im-entry/src/main/java/net/sopod/soim/entry/server/AttributeKeys.java

@ -1,4 +1,4 @@
package net.sopod.soim.core.net; package net.sopod.soim.entry.server;
import io.netty.util.AttributeKey; import io.netty.util.AttributeKey;

2
im-entry/src/main/java/net/sopod/soim/entry/server/ImEntryInitializer.java

@ -6,7 +6,7 @@ import io.netty.channel.socket.SocketChannel;
import io.netty.handler.logging.LogLevel; import io.netty.handler.logging.LogLevel;
import io.netty.handler.logging.LoggingHandler; import io.netty.handler.logging.LoggingHandler;
import net.sopod.soim.common.util.netty.Varint32FrameCodec; import net.sopod.soim.common.util.netty.Varint32FrameCodec;
import net.sopod.soim.core.net.ImMessageCodec; import net.sopod.soim.data.serialize.ImMessageCodec;
import org.slf4j.Logger; import org.slf4j.Logger;
import org.slf4j.LoggerFactory; import org.slf4j.LoggerFactory;

7
im-entry/src/main/java/net/sopod/soim/entry/server/InboundImMessageHandler.java

@ -6,14 +6,9 @@ import io.netty.channel.ChannelHandlerContext;
import io.netty.channel.SimpleChannelInboundHandler; import io.netty.channel.SimpleChannelInboundHandler;
import io.netty.util.Attribute; import io.netty.util.Attribute;
import net.sopod.soim.common.util.ImClock; import net.sopod.soim.common.util.ImClock;
import net.sopod.soim.core.handler.MessageHandler; import net.sopod.soim.entry.server.session.NetUser;
import net.sopod.soim.core.net.AttributeKeys;
import net.sopod.soim.core.registry.ProtoMessageHandlerRegistry;
import net.sopod.soim.core.session.NetUser;
import net.sopod.soim.data.msg.task.Tasks; import net.sopod.soim.data.msg.task.Tasks;
import net.sopod.soim.entry.delay.NetUserDelayTaskManager; import net.sopod.soim.entry.delay.NetUserDelayTaskManager;
import net.sopod.soim.entry.worker.Worker;
import net.sopod.soim.entry.worker.WorkerGroup;
import java.util.concurrent.TimeUnit; import java.util.concurrent.TimeUnit;
import java.util.concurrent.atomic.AtomicInteger; import java.util.concurrent.atomic.AtomicInteger;

8
im-entry/src/main/java/net/sopod/soim/entry/server/ProtoMessageDispatcher.java

@ -2,10 +2,10 @@ package net.sopod.soim.entry.server;
import com.google.protobuf.MessageLite; import com.google.protobuf.MessageLite;
import net.sopod.soim.common.constant.DubboConstant; import net.sopod.soim.common.constant.DubboConstant;
import net.sopod.soim.core.handler.MessageHandler; import net.sopod.soim.entry.server.handler.MessageHandler;
import net.sopod.soim.core.registry.ProtoMessageHandlerRegistry; import net.sopod.soim.entry.registry.ProtoMessageHandlerRegistry;
import net.sopod.soim.core.session.Account; import net.sopod.soim.entry.server.session.Account;
import net.sopod.soim.core.session.NetUser; import net.sopod.soim.entry.server.session.NetUser;
import net.sopod.soim.entry.config.MessageHandlerContext; import net.sopod.soim.entry.config.MessageHandlerContext;
import net.sopod.soim.entry.worker.Worker; import net.sopod.soim.entry.worker.Worker;
import net.sopod.soim.entry.worker.WorkerGroup; import net.sopod.soim.entry.worker.WorkerGroup;

8
im-entry/src/main/java/net/sopod/soim/entry/handler/AccountMessageHandler.java → im-entry/src/main/java/net/sopod/soim/entry/server/handler/AccountMessageHandler.java

@ -1,10 +1,8 @@
package net.sopod.soim.entry.handler; package net.sopod.soim.entry.server.handler;
import com.google.protobuf.MessageLite; import com.google.protobuf.MessageLite;
import net.sopod.soim.core.handler.MessageHandler; import net.sopod.soim.entry.server.session.Account;
import net.sopod.soim.core.session.Account; import net.sopod.soim.entry.server.session.NetUser;
import net.sopod.soim.core.session.NetUser;
import org.apache.dubbo.rpc.RpcContext;
/** /**
* AccountMessageHandler * AccountMessageHandler

4
im-core/src/main/java/net/sopod/soim/core/handler/MessageHandler.java → im-entry/src/main/java/net/sopod/soim/entry/server/handler/MessageHandler.java

@ -1,6 +1,6 @@
package net.sopod.soim.core.handler; package net.sopod.soim.entry.server.handler;
import net.sopod.soim.core.session.NetUser; import net.sopod.soim.entry.server.session.NetUser;
/** /**
* MessageHandler * MessageHandler

5
im-entry/src/main/java/net/sopod/soim/entry/handler/NetUserMessageHandler.java → im-entry/src/main/java/net/sopod/soim/entry/server/handler/NetUserMessageHandler.java

@ -1,8 +1,7 @@
package net.sopod.soim.entry.handler; package net.sopod.soim.entry.server.handler;
import com.google.protobuf.MessageLite; import com.google.protobuf.MessageLite;
import net.sopod.soim.core.handler.MessageHandler; import net.sopod.soim.entry.server.session.NetUser;
import net.sopod.soim.core.session.NetUser;
/** /**
* NetUserMessageHandler * NetUserMessageHandler

2
im-core/src/main/java/net/sopod/soim/core/session/Account.java → im-entry/src/main/java/net/sopod/soim/entry/server/session/Account.java

@ -1,4 +1,4 @@
package net.sopod.soim.core.session; package net.sopod.soim.entry.server.session;
import com.google.common.base.Preconditions; import com.google.common.base.Preconditions;
import org.slf4j.Logger; import org.slf4j.Logger;

2
im-core/src/main/java/net/sopod/soim/core/session/NetUser.java → im-entry/src/main/java/net/sopod/soim/entry/server/session/NetUser.java

@ -1,4 +1,4 @@
package net.sopod.soim.core.session; package net.sopod.soim.entry.server.session;
import io.netty.channel.Channel; import io.netty.channel.Channel;
import io.netty.util.AttributeKey; import io.netty.util.AttributeKey;

2
im-entry/src/main/java/net/sopod/soim/entry/service/TextChatServiceImpl.java

@ -1,6 +1,6 @@
package net.sopod.soim.entry.service; package net.sopod.soim.entry.service;
import net.sopod.soim.core.session.Account; import net.sopod.soim.entry.server.session.Account;
import net.sopod.soim.data.msg.chat.Chat; import net.sopod.soim.data.msg.chat.Chat;
import net.sopod.soim.entry.api.service.TextChatService; import net.sopod.soim.entry.api.service.TextChatService;
import net.sopod.soim.entry.config.ImEntryAppContextHolder; import net.sopod.soim.entry.config.ImEntryAppContextHolder;

3
im-entry/src/main/java/net/sopod/soim/entry/worker/WorkerGroup.java

@ -1,8 +1,5 @@
package net.sopod.soim.entry.worker; package net.sopod.soim.entry.worker;
import com.google.protobuf.GeneratedMessageV3;
import net.sopod.soim.core.session.Account;
import net.sopod.soim.core.session.NetUser;
import org.slf4j.Logger; import org.slf4j.Logger;
import org.slf4j.LoggerFactory; import org.slf4j.LoggerFactory;

90
im-service-api/im-entry-protocol/pom.xml

@ -0,0 +1,90 @@
<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<parent>
<artifactId>so-im</artifactId>
<groupId>net.sopod</groupId>
<version>1.0.0</version>
</parent>
<modelVersion>4.0.0</modelVersion>
<artifactId>im-entry-protocol</artifactId>
<dependencies>
<dependency>
<groupId>net.sopod</groupId>
<artifactId>im-common</artifactId>
<version>${soim.version}</version>
</dependency>
<dependency>
<groupId>io.netty</groupId>
<artifactId>netty-buffer</artifactId>
<version>${netty.version}</version>
</dependency>
<dependency>
<groupId>io.netty</groupId>
<artifactId>netty-codec</artifactId>
<version>${netty.version}</version>
</dependency>
<dependency>
<groupId>io.netty</groupId>
<artifactId>netty-transport</artifactId>
<version>${netty.version}</version>
</dependency>
<dependency>
<groupId>com.google.protobuf</groupId>
<artifactId>protobuf-java</artifactId>
</dependency>
<dependency>
<groupId>org.projectlombok</groupId>
<artifactId>lombok</artifactId>
</dependency>
<dependency>
<groupId>org.reflections</groupId>
<artifactId>reflections</artifactId>
</dependency>
</dependencies>
<build>
<extensions>
<extension>
<groupId>kr.motd.maven</groupId>
<artifactId>os-maven-plugin</artifactId><!--引入操作系统os设置的属性插件,否则${os.detected.classifier} 操作系统版本会找不到 -->
<version>1.6.1</version>
</extension>
</extensions>
<plugins>
<!--添加编译proto文件的编译程序和对应的编译插件-->
<plugin>
<groupId>org.xolstice.maven.plugins</groupId>
<artifactId>protobuf-maven-plugin</artifactId>
<version>0.6.1</version>
<configuration>
<protocArtifact>com.google.protobuf:protoc:${protoc.version}:exe:${os.detected.classifier}</protocArtifact>
<protoSourceRoot>src/main/resources</protoSourceRoot>
<outputDirectory>src/main/java</outputDirectory>
<clearOutputDirectory>false</clearOutputDirectory>
<!-- <protocPlugins>-->
<!-- <protocPlugin>-->
<!-- <id>dubbo</id>-->
<!-- <groupId>org.apache.dubbo</groupId>-->
<!-- <artifactId>dubbo-compiler</artifactId>-->
<!-- <version>${dubbo.compiler.version}</version>-->
<!-- <mainClass>org.apache.dubbo.gen.dubbo.Dubbo3Generator</mainClass>-->
<!-- </protocPlugin>-->
<!-- </protocPlugins>-->
</configuration>
<executions>
<execution>
<goals>
<goal>compile</goal>
<goal>test-compile</goal>
</goals>
</execution>
</executions>
</plugin>
</plugins>
</build>
</project>

0
im-data/src/main/java/net/sopod/soim/data/Gen1Protobuf.java → im-service-api/im-entry-protocol/src/main/java/net/sopod/soim/data/Gen1Protobuf.java

0
im-data/src/main/java/net/sopod/soim/data/Gen2ProtoSerialNo.java → im-service-api/im-entry-protocol/src/main/java/net/sopod/soim/data/Gen2ProtoSerialNo.java

0
im-data/src/main/java/net/sopod/soim/data/constant/PlatformType.java → im-service-api/im-entry-protocol/src/main/java/net/sopod/soim/data/constant/PlatformType.java

0
im-data/src/main/java/net/sopod/soim/data/constant/SerializeType.java → im-service-api/im-entry-protocol/src/main/java/net/sopod/soim/data/constant/SerializeType.java

0
im-data/src/main/java/net/sopod/soim/data/msg/auth/Auth.java → im-service-api/im-entry-protocol/src/main/java/net/sopod/soim/data/msg/auth/Auth.java

0
im-data/src/main/java/net/sopod/soim/data/msg/chat/Chat.java → im-service-api/im-entry-protocol/src/main/java/net/sopod/soim/data/msg/chat/Chat.java

0
im-data/src/main/java/net/sopod/soim/data/msg/hello/HelloPB.java → im-service-api/im-entry-protocol/src/main/java/net/sopod/soim/data/msg/hello/HelloPB.java

0
im-data/src/main/java/net/sopod/soim/data/msg/net/HeartBeat.java → im-service-api/im-entry-protocol/src/main/java/net/sopod/soim/data/msg/net/HeartBeat.java

0
im-data/src/main/java/net/sopod/soim/data/msg/task/Tasks.java → im-service-api/im-entry-protocol/src/main/java/net/sopod/soim/data/msg/task/Tasks.java

0
im-data/src/main/java/net/sopod/soim/data/msg/user/UserGroup.java → im-service-api/im-entry-protocol/src/main/java/net/sopod/soim/data/msg/user/UserGroup.java

0
im-data/src/main/java/net/sopod/soim/data/proto/ProtoMessageManager.java → im-service-api/im-entry-protocol/src/main/java/net/sopod/soim/data/proto/ProtoMessageManager.java

0
im-data/src/main/java/net/sopod/soim/data/serialize/ByteSerializer.java → im-service-api/im-entry-protocol/src/main/java/net/sopod/soim/data/serialize/ByteSerializer.java

0
im-data/src/main/java/net/sopod/soim/data/serialize/ImMessage.java → im-service-api/im-entry-protocol/src/main/java/net/sopod/soim/data/serialize/ImMessage.java

4
im-core/src/main/java/net/sopod/soim/core/net/ImMessageCodec.java → im-service-api/im-entry-protocol/src/main/java/net/sopod/soim/data/serialize/ImMessageCodec.java

@ -1,14 +1,12 @@
package net.sopod.soim.core.net; package net.sopod.soim.data.serialize;
import com.google.protobuf.MessageLite; import com.google.protobuf.MessageLite;
import io.netty.buffer.ByteBuf; import io.netty.buffer.ByteBuf;
import io.netty.buffer.Unpooled;
import io.netty.channel.ChannelHandlerContext; import io.netty.channel.ChannelHandlerContext;
import io.netty.channel.CombinedChannelDuplexHandler; import io.netty.channel.CombinedChannelDuplexHandler;
import io.netty.handler.codec.ByteToMessageDecoder; import io.netty.handler.codec.ByteToMessageDecoder;
import io.netty.handler.codec.MessageToByteEncoder; import io.netty.handler.codec.MessageToByteEncoder;
import net.sopod.soim.data.proto.ProtoMessageManager; import net.sopod.soim.data.proto.ProtoMessageManager;
import net.sopod.soim.data.serialize.ImMessage;
import org.slf4j.Logger; import org.slf4j.Logger;
import org.slf4j.LoggerFactory; import org.slf4j.LoggerFactory;

0
im-data/src/main/java/net/sopod/soim/data/serialize/JacksonByteSerializer.java → im-service-api/im-entry-protocol/src/main/java/net/sopod/soim/data/serialize/JacksonByteSerializer.java

0
im-data/src/main/java/net/sopod/soim/data/transer/LoginReq.java → im-service-api/im-entry-protocol/src/main/java/net/sopod/soim/data/transer/LoginReq.java

0
im-data/src/main/resources/protobuf/Hello.proto → im-service-api/im-entry-protocol/src/main/resources/proto/Hello.proto

0
im-data/src/main/resources/protobuf/auth/Auth.proto → im-service-api/im-entry-protocol/src/main/resources/proto/auth/Auth.proto

0
im-data/src/main/resources/protobuf/chat/Chat.proto → im-service-api/im-entry-protocol/src/main/resources/proto/chat/Chat.proto

0
im-data/src/main/resources/protobuf/net/HeartBeat.proto → im-service-api/im-entry-protocol/src/main/resources/proto/net/HeartBeat.proto

0
im-data/src/main/resources/protobuf/task/Tasks.proto → im-service-api/im-entry-protocol/src/main/resources/proto/task/Tasks.proto

0
im-data/src/main/resources/protobuf/user/UserGroup.proto → im-service-api/im-entry-protocol/src/main/resources/proto/user/UserGroup.proto

0
im-data/src/main/resources/protoSerialNoTable.txt → im-service-api/im-entry-protocol/src/main/resources/protoSerialNoTable.txt

44
im-service-api/pom.xml

@ -13,50 +13,12 @@
<packaging>pom</packaging> <packaging>pom</packaging>
<modules> <modules>
<module>im-entry-api</module>
<module>im-entry-protocol</module>
<module>im-logic-common</module>
<module>im-segment-id-api</module> <module>im-segment-id-api</module>
<module>im-router-api</module> <module>im-router-api</module>
<module>im-logic-user-api</module> <module>im-logic-user-api</module>
</modules> </modules>
<build>
<extensions>
<extension>
<groupId>kr.motd.maven</groupId>
<artifactId>os-maven-plugin</artifactId><!--引入操作系统os设置的属性插件,否则${os.detected.classifier} 操作系统版本会找不到 -->
<version>1.6.1</version>
</extension>
</extensions>
<plugins>
<!--添加编译proto文件的编译程序和对应的编译插件-->
<plugin>
<groupId>org.xolstice.maven.plugins</groupId>
<artifactId>protobuf-maven-plugin</artifactId>
<version>0.6.1</version>
<configuration>
<protocArtifact>com.google.protobuf:protoc:3.19.4:exe:${os.detected.classifier}</protocArtifact>
<outputDirectory>src/main/java</outputDirectory>
<clearOutputDirectory>false</clearOutputDirectory>
<!-- <pluginId>grpc-java</pluginId>-->
<!-- <pluginArtifact>io.grpc:protoc-gen-grpc-java:1.24.0:exe:${os.detected.classifier}</pluginArtifact>-->
<protocPlugins>
<protocPlugin>
<id>dubbo</id>
<groupId>org.apache.dubbo</groupId>
<artifactId>dubbo-compiler</artifactId>
<version>${dubbo.compiler.version}</version>
<mainClass>org.apache.dubbo.gen.dubbo.Dubbo3Generator</mainClass>
</protocPlugin>
</protocPlugins>
</configuration>
<executions>
<execution>
<goals>
<goal>compile</goal>
<goal>test-compile</goal>
</goals>
</execution>
</executions>
</plugin>
</plugins>
</build>
</project> </project>

10
pom.xml

@ -10,10 +10,8 @@
<version>1.0.0</version> <version>1.0.0</version>
<modules> <modules>
<module>im-common</module> <module>im-common</module>
<module>im-data</module>
<module>im-entry</module> <module>im-entry</module>
<module>im-client</module> <module>im-client</module>
<module>im-core</module>
<module>im-das</module> <module>im-das</module>
<module>im-das-api</module> <module>im-das-api</module>
<module>im-service</module> <module>im-service</module>
@ -44,6 +42,7 @@
<nacos.version>2.0.3</nacos.version> <nacos.version>2.0.3</nacos.version>
<msgpack.version>0.9.1</msgpack.version> <msgpack.version>0.9.1</msgpack.version>
<dubbo.compiler.version>0.0.3</dubbo.compiler.version> <dubbo.compiler.version>0.0.3</dubbo.compiler.version>
<protoc.version>3.19.4</protoc.version>
</properties> </properties>
<dependencyManagement> <dependencyManagement>
@ -53,15 +52,10 @@
<artifactId>netty-all</artifactId> <artifactId>netty-all</artifactId>
<version>${netty.version}</version> <version>${netty.version}</version>
</dependency> </dependency>
<dependency>
<groupId>io.netty</groupId>
<artifactId>netty-buffer</artifactId>
<version>${netty.version}</version>
</dependency>
<dependency> <dependency>
<groupId>com.google.protobuf</groupId> <groupId>com.google.protobuf</groupId>
<artifactId>protobuf-java</artifactId> <artifactId>protobuf-java</artifactId>
<version>3.19.4</version> <version>${protoc.version}</version>
</dependency> </dependency>
<dependency> <dependency>
<groupId>com.lmax</groupId> <groupId>com.lmax</groupId>

Loading…
Cancel
Save