Documentation ¶
Index ¶
- Constants
- Variables
- type DataPack
- type GateHandler
- type HookFunc
- type IMessage
- type IMessageHandler
- type IRequest
- type IRouter
- type IServer
- type ISession
- type ISessionManager
- type Message
- type MessageHandler
- func (m *MessageHandler) AddPreRouter(handle PreRouterHandle)
- func (m *MessageHandler) AddRouter(msgId int32, router IRouter, v interface{})
- func (m *MessageHandler) DoMsgHandler(request IRequest)
- func (m *MessageHandler) ReflectProto(request IRequest) proto.Message
- func (m *MessageHandler) SendMsgToTaskQueue(request IRequest)
- func (m *MessageHandler) SetGateHandler(handler GateHandler)
- func (m *MessageHandler) StartWorkerPool()
- type Option
- type Options
- type PreRouterHandle
- type Request
- type Server
- func (s *Server) AddPreRouter(handle PreRouterHandle)
- func (s *Server) AddRouter(msgId int32, router IRouter, v interface{})
- func (s *Server) CallOnConnStart(session ISession)
- func (s *Server) CallOnConnStop(session ISession)
- func (s *Server) GetSessMgr() ISessionManager
- func (s *Server) SendBufferMsg(request IRequest)
- func (s *Server) Serve()
- func (s *Server) SetGateHandler(handler GateHandler)
- func (s *Server) SetOnConnStart(hookFunc HookFunc)
- func (s *Server) SetOnConnStop(hookFunc HookFunc)
- func (s *Server) Stop()
- type ServerType
- type Session
- func (s *Session) Context() context.Context
- func (s *Session) GetConnId() uint32
- func (s *Session) GetProperty(key string) (interface{}, error)
- func (s *Session) RemoveProperty(key string)
- func (s *Session) SendBuffMsg(msgId int32, data []byte) error
- func (s *Session) SetProperty(key string, value interface{}) error
- func (s *Session) Stop()
- type SessionManager
- type TCPSession
- type WsSession
Constants ¶
View Source
const ( MsgTypeSize = 4 MsgLenSize = 4 )
Variables ¶
View Source
var DP = DataPack{}
Functions ¶
This section is empty.
Types ¶
type GateHandler ¶ added in v1.0.6
type GateHandler func(request IRequest)
type IMessageHandler ¶
type IMessageHandler interface { DoMsgHandler(request IRequest) SetGateHandler(handler GateHandler) AddPreRouter(handle PreRouterHandle) AddRouter(msgId int32, router IRouter, v interface{}) SendMsgToTaskQueue(request IRequest) StartWorkerPool() // contains filtered or unexported methods }
type IServer ¶
type IServer interface { Stop() Serve() AddPreRouter(handle PreRouterHandle) AddRouter(msgId int32, router IRouter, v interface{}) SetGateHandler(handler GateHandler) GetSessMgr() ISessionManager SetOnConnStart(hookFunc HookFunc) SetOnConnStop(hookFunc HookFunc) CallOnConnStart(session ISession) CallOnConnStop(session ISession) SendBufferMsg(request IRequest) // contains filtered or unexported methods }
type ISession ¶
type ISession interface { Start() Stop() Context() context.Context RemoteAddr() net.Addr RemoteIP() string GetConnId() uint32 SendMsg(msgId int32, data []byte) error SendBuffMsg(msgId int32, data []byte) error SetProperty(key string, value interface{}) error GetProperty(key string) (interface{}, error) RemoveProperty(key string) // contains filtered or unexported methods }
type ISessionManager ¶
type Message ¶
type Message struct {
// contains filtered or unexported fields
}
func NewMessage ¶
func (*Message) GetDataLen ¶
func (*Message) SetDataLen ¶
type MessageHandler ¶
type MessageHandler struct {
// contains filtered or unexported fields
}
func NewMessageHandler ¶
func NewMessageHandler() *MessageHandler
func (*MessageHandler) AddPreRouter ¶ added in v1.0.10
func (m *MessageHandler) AddPreRouter(handle PreRouterHandle)
AddPreRouter 添加路由前置处理
func (*MessageHandler) AddRouter ¶
func (m *MessageHandler) AddRouter(msgId int32, router IRouter, v interface{})
AddRouter 添加具体消息处理逻辑
func (*MessageHandler) DoMsgHandler ¶
func (m *MessageHandler) DoMsgHandler(request IRequest)
DoMsgHandler 处理消息
func (*MessageHandler) ReflectProto ¶ added in v1.0.1
func (m *MessageHandler) ReflectProto(request IRequest) proto.Message
ReflectProto 通过反射把数据解析成proto message
func (*MessageHandler) SendMsgToTaskQueue ¶
func (m *MessageHandler) SendMsgToTaskQueue(request IRequest)
SendMsgToTaskQueue 将消息交给TaskQueue,由worker进行处理
func (*MessageHandler) SetGateHandler ¶ added in v1.0.6
func (m *MessageHandler) SetGateHandler(handler GateHandler)
SetGateHandler 设置网关处理函数
func (*MessageHandler) StartWorkerPool ¶
func (m *MessageHandler) StartWorkerPool()
StartWorkerPool 启动工作池
type PreRouterHandle ¶ added in v1.0.10
type Request ¶
type Request struct {
// contains filtered or unexported fields
}
type Server ¶
type Server struct { ServerType ServerType OnConnStart HookFunc OnConnStop HookFunc // contains filtered or unexported fields }
func (*Server) AddPreRouter ¶ added in v1.0.10
func (s *Server) AddPreRouter(handle PreRouterHandle)
func (*Server) CallOnConnStart ¶
func (*Server) CallOnConnStop ¶
func (*Server) GetSessMgr ¶
func (s *Server) GetSessMgr() ISessionManager
func (*Server) SendBufferMsg ¶ added in v1.0.7
func (*Server) SetGateHandler ¶ added in v1.0.6
func (s *Server) SetGateHandler(handler GateHandler)
func (*Server) SetOnConnStart ¶
func (*Server) SetOnConnStop ¶
type ServerType ¶
type ServerType uint32
const ( NullServer ServerType = iota TcpServer WsServer TcpClient )
type Session ¶
func (*Session) GetProperty ¶
GetProperty 获取链接属性
func (*Session) SendBuffMsg ¶
SendBuffMsg 发送BuffMsg
func (*Session) SetProperty ¶
SetProperty 设置链接属性
type SessionManager ¶
type SessionManager struct {
// contains filtered or unexported fields
}
func NewSessionManager ¶
func NewSessionManager() *SessionManager
type TCPSession ¶
type TCPSession struct { Session // contains filtered or unexported fields }
func NewTCPSession ¶
func NewTCPSession(server IServer, conn net.Conn, connId uint32, handler IMessageHandler) *TCPSession
func (*TCPSession) GetConn ¶
func (s *TCPSession) GetConn() net.Conn
func (*TCPSession) RemoteAddr ¶
func (s *TCPSession) RemoteAddr() net.Addr
func (*TCPSession) RemoteIP ¶ added in v1.0.8
func (s *TCPSession) RemoteIP() string
func (*TCPSession) SendMsg ¶
func (s *TCPSession) SendMsg(msgId int32, data []byte) error
SendMsg 直接将Message数据发送给远程TCP客户端
func (*TCPSession) Start ¶
func (s *TCPSession) Start()
type WsSession ¶
type WsSession struct { Session // contains filtered or unexported fields }
func NewWsSession ¶
func (*WsSession) RemoteAddr ¶
Click to show internal directories.
Click to hide internal directories.