Versions in this module Expand all Collapse all v1 v1.0.2 Nov 1, 2023 Changes in this version + func NewConnManager() iface.IConnManager + func NewServer() iface.IServer + type BaseRouter struct + func (r *BaseRouter) Handle(req iface.IRequest) + func (r *BaseRouter) PostHandle(req iface.IRequest) + func (r *BaseRouter) PreHandle(req iface.IRequest) + type ConnManager struct + Conns map[uint32]iface.IConnection + func (cm *ConnManager) AddConn(conn iface.IConnection) + func (cm *ConnManager) GetConn(connID uint32) (iface.IConnection, error) + func (cm *ConnManager) GetConnCnt() int + func (cm *ConnManager) RemoveAllConn() + func (cm *ConnManager) RemoveConn(conn iface.IConnection) + type Connection struct + Conn *net.TCPConn + ConnID int32 + ExitChan chan bool + MasHandler iface.IMsgHandler + Server iface.IServer + func NewConnection(server iface.IServer, conn *net.TCPConn, connID int32, ...) *Connection + func (c *Connection) GetConnID() int32 + func (c *Connection) GetTCPConnection() *net.TCPConn + func (c *Connection) Read() + func (c *Connection) RemoteAddr() net.Addr + func (c *Connection) SendMsg(msgID uint32, data []byte) error + func (c *Connection) Start() + func (c *Connection) Stop() + func (c *Connection) Write() + type DataPack struct + func NewDataPack() *DataPack + func (p *DataPack) GetHeadLen() uint32 + func (p *DataPack) Pack(msg iface.IMessage) ([]byte, error) + func (p *DataPack) UnPack(data []byte) (iface.IMessage, error) + type Message struct + Data []byte + DataLen uint32 + ID uint32 + func NewMessagePackage(msgID uint32, data []byte) *Message + func (m *Message) GetMsgData() []byte + func (m *Message) GetMsgID() uint32 + func (m *Message) GetMsgLen() uint32 + func (m *Message) SetMsgData(data []byte) + func (m *Message) SetMsgID(ID uint32) + func (m *Message) SetMsgLen(len uint32) + type MsgHandler struct + TaskQueue []chan iface.IRequest + WorkerPoolSize uint32 + func NewMsgHandler() *MsgHandler + func (mh *MsgHandler) AddRouter(msgID uint32, router iface.Router) + func (mh *MsgHandler) Handle(request iface.IRequest) + func (mh *MsgHandler) SendMsgToTaskQueue(req iface.IRequest) + func (mh *MsgHandler) StartOneWorker(workID int, taskQueue chan iface.IRequest) + func (mh *MsgHandler) StartWorkPool() + type Request struct + func (r *Request) GetConn() iface.IConnection + func (r *Request) GetData() []byte + func (r *Request) GetMsgID() uint32 + func (r *Request) GetMsgLen() uint32 + type Server struct + ConnManager iface.IConnManager + IP string + IPVersion string + MsgHandler iface.IMsgHandler + OnConnClose func(connection iface.IConnection) + OnConnStart func(connection iface.IConnection) + Port int + ServerName string + func (s *Server) AddRouter(msgID uint32, router iface.Router) + func (s *Server) CallOnConnClose(conn iface.IConnection) + func (s *Server) CallOnConnStart(conn iface.IConnection) + func (s *Server) GetConnManager() iface.IConnManager + func (s *Server) Serve() + func (s *Server) SetOnConnClose(f func(connection iface.IConnection)) + func (s *Server) SetOnConnStart(f func(connection iface.IConnection)) + func (s *Server) Start() + func (s *Server) Stop()