Versions in this module Expand all Collapse all v1 v1.0.0 Apr 1, 2024 Changes in this version + const HANDLE + const HANDLE_OVER + const POST_HANDLE + const PRE_HANDLE + const StackBegin + const StackEnd + const WorkerIDWithoutWorkerPool + var AcceptDelay *acceptDelay + func HeatBeatDefaultHandle(req ziface.IRequest) + func NewClient(ip string, port int, opts ...ClientOption) ziface.IClient + func NewDefaultRouterSlicesServer(opts ...Option) ziface.IServer + func NewFuncRequest(conn ziface.IConnection, callFunc func()) ziface.IRequest + func NewHeartbeatChecker(interval time.Duration) ziface.IHeartbeatChecker + func NewRequest(conn ziface.IConnection, msg ziface.IMessage) ziface.IRequest + func NewServer(opts ...Option) ziface.IServer + func NewTLSClient(ip string, port int, opts ...ClientOption) ziface.IClient + func NewUserConfDefaultRouterSlicesServer(config *zconf.Config, opts ...Option) ziface.IServer + func NewUserConfServer(config *zconf.Config, opts ...Option) ziface.IServer + func NewWsClient(ip string, port int, opts ...ClientOption) ziface.IClient + func RouterRecovery(request ziface.IRequest) + func RouterTime(request ziface.IRequest) + type BaseRouter struct + func (br *BaseRouter) Handle(req ziface.IRequest) + func (br *BaseRouter) PostHandle(req ziface.IRequest) + func (br *BaseRouter) PreHandle(req ziface.IRequest) + type Client struct + ErrChan chan error + Ip string + Name string + Port int + func (c *Client) AddInterceptor(interceptor ziface.IInterceptor) + func (c *Client) AddRouter(msgID uint32, router ziface.IRouter) + func (c *Client) Conn() ziface.IConnection + func (c *Client) GetErrChan() chan error + func (c *Client) GetLengthField() *ziface.LengthField + func (c *Client) GetMsgHandler() ziface.IMsgHandle + func (c *Client) GetName() string + func (c *Client) GetOnConnStart() func(ziface.IConnection) + func (c *Client) GetOnConnStop() func(ziface.IConnection) + func (c *Client) GetPacket() ziface.IDataPack + func (c *Client) Restart() + func (c *Client) SetDecoder(decoder ziface.IDecoder) + func (c *Client) SetName(name string) + func (c *Client) SetOnConnStart(hookFunc func(ziface.IConnection)) + func (c *Client) SetOnConnStop(hookFunc func(ziface.IConnection)) + func (c *Client) SetPacket(packet ziface.IDataPack) + func (c *Client) Start() + func (c *Client) StartHeartBeat(interval time.Duration) + func (c *Client) StartHeartBeatWithOption(interval time.Duration, option *ziface.HeartBeatOption) + func (c *Client) Stop() + type ClientOption func(c ziface.IClient) + func WithNameClient(name string) ClientOption + func WithPacketClient(pack ziface.IDataPack) ClientOption + type ConnManager struct + func (connMgr *ConnManager) Add(conn ziface.IConnection) + func (connMgr *ConnManager) ClearConn() + func (connMgr *ConnManager) Get(connID uint64) (ziface.IConnection, error) + func (connMgr *ConnManager) Get2(strConnId string) (ziface.IConnection, error) + func (connMgr *ConnManager) GetAllConnID() []uint64 + func (connMgr *ConnManager) GetAllConnIdStr() []string + func (connMgr *ConnManager) Len() int + func (connMgr *ConnManager) Range(cb func(uint64, ziface.IConnection, interface{}) error, args interface{}) (err error) + func (connMgr *ConnManager) Range2(cb func(string, ziface.IConnection, interface{}) error, args interface{}) (err error) + func (connMgr *ConnManager) Remove(conn ziface.IConnection) + type Connection struct + func (c *Connection) Context() context.Context + func (c *Connection) GetConnID() uint64 + func (c *Connection) GetConnIdStr() string + func (c *Connection) GetConnection() net.Conn + func (c *Connection) GetMsgHandler() ziface.IMsgHandle + func (c *Connection) GetName() string + func (c *Connection) GetProperty(key string) (interface{}, error) + func (c *Connection) GetTCPConnection() net.Conn + func (c *Connection) GetWorkerID() uint32 + func (c *Connection) GetWsConn() *websocket.Conn + func (c *Connection) IsAlive() bool + func (c *Connection) LocalAddr() net.Addr + func (c *Connection) LocalAddrString() string + func (c *Connection) RemoteAddr() net.Addr + func (c *Connection) RemoteAddrString() string + func (c *Connection) RemoveProperty(key string) + func (c *Connection) Send(data []byte) error + func (c *Connection) SendBuffMsg(msgID uint32, data []byte) error + func (c *Connection) SendMsg(msgID uint32, data []byte) error + func (c *Connection) SendToQueue(data []byte) error + func (c *Connection) SetHeartBeat(checker ziface.IHeartbeatChecker) + func (c *Connection) SetProperty(key string, value interface{}) + func (c *Connection) Start() + func (c *Connection) StartReader() + func (c *Connection) StartWriter() + func (c *Connection) Stop() + type GroupRouter struct + Handlers []ziface.RouterHandler + func NewGroup(start, end uint32, router *RouterSlices, Handlers ...ziface.RouterHandler) *GroupRouter + func (g *GroupRouter) AddHandler(MsgId uint32, Handlers ...ziface.RouterHandler) + func (g *GroupRouter) Use(Handlers ...ziface.RouterHandler) + type HeartbeatChecker struct + func (h *HeartbeatChecker) BindConn(conn ziface.IConnection) + func (h *HeartbeatChecker) BindRouter(msgID uint32, router ziface.IRouter) + func (h *HeartbeatChecker) BindRouterSlices(msgID uint32, handlers ...ziface.RouterHandler) + func (h *HeartbeatChecker) Clone() ziface.IHeartbeatChecker + func (h *HeartbeatChecker) MsgID() uint32 + func (h *HeartbeatChecker) Router() ziface.IRouter + func (h *HeartbeatChecker) RouterSlices() []ziface.RouterHandler + func (h *HeartbeatChecker) SendHeartBeatMsg() error + func (h *HeartbeatChecker) SetHeartbeatFunc(beatFunc ziface.HeartBeatFunc) + func (h *HeartbeatChecker) SetHeartbeatMsgFunc(f ziface.HeartBeatMsgFunc) + func (h *HeartbeatChecker) SetOnRemoteNotAlive(f ziface.OnRemoteNotAlive) + func (h *HeartbeatChecker) Start() + func (h *HeartbeatChecker) Stop() + type HeatBeatDefaultRouter struct + func (r *HeatBeatDefaultRouter) Handle(req ziface.IRequest) + type KcpConnection struct + func (c *KcpConnection) Context() context.Context + func (c *KcpConnection) GetConnID() uint64 + func (c *KcpConnection) GetConnIdStr() string + func (c *KcpConnection) GetConnection() net.Conn + func (c *KcpConnection) GetMsgHandler() ziface.IMsgHandle + func (c *KcpConnection) GetName() string + func (c *KcpConnection) GetProperty(key string) (interface{}, error) + func (c *KcpConnection) GetTCPConnection() net.Conn + func (c *KcpConnection) GetWorkerID() uint32 + func (c *KcpConnection) GetWsConn() *websocket.Conn + func (c *KcpConnection) IsAlive() bool + func (c *KcpConnection) LocalAddr() net.Addr + func (c *KcpConnection) LocalAddrString() string + func (c *KcpConnection) RemoteAddr() net.Addr + func (c *KcpConnection) RemoteAddrString() string + func (c *KcpConnection) RemoveProperty(key string) + func (c *KcpConnection) Send(data []byte) error + func (c *KcpConnection) SendBuffMsg(msgID uint32, data []byte) error + func (c *KcpConnection) SendMsg(msgID uint32, data []byte) error + func (c *KcpConnection) SendToQueue(data []byte) error + func (c *KcpConnection) SetHeartBeat(checker ziface.IHeartbeatChecker) + func (c *KcpConnection) SetProperty(key string, value interface{}) + func (c *KcpConnection) Start() + func (c *KcpConnection) StartReader() + func (c *KcpConnection) StartWriter() + func (c *KcpConnection) Stop() + type MsgHandle struct + Apis map[uint32]ziface.IRouter + RouterSlices *RouterSlices + TaskQueue []chan ziface.IRequest + WorkerPoolSize uint32 + func (mh *MsgHandle) AddInterceptor(interceptor ziface.IInterceptor) + func (mh *MsgHandle) AddRouter(msgID uint32, router ziface.IRouter) + func (mh *MsgHandle) AddRouterSlices(msgId uint32, handler ...ziface.RouterHandler) ziface.IRouterSlices + func (mh *MsgHandle) Execute(request ziface.IRequest) + func (mh *MsgHandle) Group(start, end uint32, Handlers ...ziface.RouterHandler) ziface.IGroupRouterSlices + func (mh *MsgHandle) Intercept(chain ziface.IChain) ziface.IcResp + func (mh *MsgHandle) SendMsgToTaskQueue(request ziface.IRequest) + func (mh *MsgHandle) StartOneWorker(workerID int, taskQueue chan ziface.IRequest) + func (mh *MsgHandle) StartWorkerPool() + func (mh *MsgHandle) Use(Handlers ...ziface.RouterHandler) ziface.IRouterSlices + type Option func(s *Server) + func WithPacket(pack ziface.IDataPack) Option + type Request struct + func (r *Request) Abort() + func (r *Request) BindRouter(router ziface.IRouter) + func (r *Request) BindRouterSlices(handlers []ziface.RouterHandler) + func (r *Request) Call() + func (r *Request) GetConnection() ziface.IConnection + func (r *Request) GetData() []byte + func (r *Request) GetMessage() ziface.IMessage + func (r *Request) GetMsgID() uint32 + func (r *Request) GetResponse() ziface.IcResp + func (r *Request) Goto(step ziface.HandleStep) + func (r *Request) RouterSlicesNext() + func (r *Request) SetResponse(response ziface.IcResp) + type RequestFunc struct + func (rf *RequestFunc) CallFunc() + func (rf *RequestFunc) GetConnection() ziface.IConnection + type RouterSlices struct + Apis map[uint32][]ziface.RouterHandler + Handlers []ziface.RouterHandler + func NewRouterSlices() *RouterSlices + func (r *RouterSlices) AddHandler(msgId uint32, Handlers ...ziface.RouterHandler) + func (r *RouterSlices) GetHandlers(MsgId uint32) ([]ziface.RouterHandler, bool) + func (r *RouterSlices) Group(start, end uint32, Handlers ...ziface.RouterHandler) ziface.IGroupRouterSlices + func (r *RouterSlices) Use(handles ...ziface.RouterHandler) + type Server struct + ConnMgr ziface.IConnManager + IP string + IPVersion string + KcpPort int + Name string + Port int + RouterSlicesMode bool + UdpPort int + WsPort int + func (s *Server) AddInterceptor(interceptor ziface.IInterceptor) + func (s *Server) AddRouter(msgID uint32, router ziface.IRouter) + func (s *Server) AddRouterSlices(msgID uint32, router ...ziface.RouterHandler) ziface.IRouterSlices + func (s *Server) GetConnMgr() ziface.IConnManager + func (s *Server) GetHeartBeat() ziface.IHeartbeatChecker + func (s *Server) GetLengthField() *ziface.LengthField + func (s *Server) GetMsgHandler() ziface.IMsgHandle + func (s *Server) GetOnConnStart() func(ziface.IConnection) + func (s *Server) GetOnConnStop() func(ziface.IConnection) + func (s *Server) GetPacket() ziface.IDataPack + func (s *Server) Group(start, end uint32, Handlers ...ziface.RouterHandler) ziface.IGroupRouterSlices + func (s *Server) ListenKcpConn() + func (s *Server) ListenTcpConn() + func (s *Server) ListenUDPConn() + func (s *Server) ListenWebsocketConn() + func (s *Server) Serve() + func (s *Server) ServerName() string + func (s *Server) SetDecoder(decoder ziface.IDecoder) + func (s *Server) SetOnConnStart(hookFunc func(ziface.IConnection)) + func (s *Server) SetOnConnStop(hookFunc func(ziface.IConnection)) + func (s *Server) SetPacket(packet ziface.IDataPack) + func (s *Server) SetWebsocketAuth(f func(r *http.Request) error) + func (s *Server) Start() + func (s *Server) StartConn(conn ziface.IConnection) + func (s *Server) StartHeartBeat(interval time.Duration) + func (s *Server) StartHeartBeatWithOption(interval time.Duration, option *ziface.HeartBeatOption) + func (s *Server) Stop() + func (s *Server) Use(Handlers ...ziface.RouterHandler) ziface.IRouterSlices + type WsConnection struct + func (c *WsConnection) Context() context.Context + func (c *WsConnection) GetConnID() uint64 + func (c *WsConnection) GetConnIdStr() string + func (c *WsConnection) GetConnection() net.Conn + func (c *WsConnection) GetMsgHandler() ziface.IMsgHandle + func (c *WsConnection) GetName() string + func (c *WsConnection) GetProperty(key string) (interface{}, error) + func (c *WsConnection) GetTCPConnection() net.Conn + func (c *WsConnection) GetWorkerID() uint32 + func (c *WsConnection) GetWsConn() *websocket.Conn + func (c *WsConnection) IsAlive() bool + func (c *WsConnection) LocalAddr() net.Addr + func (c *WsConnection) LocalAddrString() string + func (c *WsConnection) RemoteAddr() net.Addr + func (c *WsConnection) RemoteAddrString() string + func (c *WsConnection) RemoveProperty(key string) + func (c *WsConnection) Send(data []byte) error + func (c *WsConnection) SendBuffMsg(msgID uint32, data []byte) error + func (c *WsConnection) SendMsg(msgID uint32, data []byte) error + func (c *WsConnection) SendToQueue(data []byte) error + func (c *WsConnection) SetHeartBeat(checker ziface.IHeartbeatChecker) + func (c *WsConnection) SetProperty(key string, value interface{}) + func (c *WsConnection) Start() + func (c *WsConnection) StartReader() + func (c *WsConnection) StartWriter() + func (c *WsConnection) Stop()