@@ -20,8 +20,8 @@ type Server struct {
2020 IP string
2121 //服务绑定的端口
2222 Port int
23- //当前Server由用户绑定的回调router,也就是Server注册的链接对应的处理业务
24- Router ciface.IRouter
23+ //当前Server的消息管理模块,用来绑定MsgId和对应的处理方法
24+ msgHandler ciface.IMsgHandle
2525}
2626
2727// ============== 定义当前客户端链接的handle api ===========
@@ -79,7 +79,7 @@ func (s *Server) Start() {
7979 //3.2 TODO Server.Start() 设置服务器最大连接控制,如果超过最大连接,那么则关闭此新的连接
8080
8181 //3.3 处理该新连接请求的 业务 方法, 此时应该有 handler 和 conn是绑定的
82- dealConn := NewConntion (conn , cid , s .Router )
82+ dealConn := NewConntion (conn , cid , s .msgHandler )
8383 cid ++
8484
8585 //3.4 启动当前链接的处理业务
@@ -106,8 +106,8 @@ func (s *Server) Serve() {
106106}
107107
108108// 路由功能:给当前服务注册一个路由业务方法,供客户端链接处理使用
109- func (s * Server ) AddRouter (router ciface.IRouter ) {
110- s .Router = router
109+ func (s * Server ) AddRouter (msgId uint32 , router ciface.IRouter ) {
110+ s .msgHandler . AddRouter ( msgId , router )
111111
112112 fmt .Println ("Add Router succ! " )
113113}
@@ -120,11 +120,11 @@ func NewServer() ciface.IServer {
120120 cutils .GlobalObject .Reload ()
121121
122122 s := & Server {
123- Name : cutils .GlobalObject .Name , //从全局参数获取
124- IPVersion : "tcp4" ,
125- IP : cutils .GlobalObject .Host , //从全局参数获取
126- Port : cutils .GlobalObject .TcpPort , //从全局参数获取
127- Router : nil ,
123+ Name : cutils .GlobalObject .Name , //从全局参数获取
124+ IPVersion : "tcp4" ,
125+ IP : cutils .GlobalObject .Host , //从全局参数获取
126+ Port : cutils .GlobalObject .TcpPort , //从全局参数获取
127+ msgHandler : NewMsgHandle (), //msgHandler 初始化
128128 }
129129 return s
130130}
0 commit comments