Documentation
¶
Index ¶
Constants ¶
This section is empty.
Variables ¶
View Source
var ErrClientClosed = errors.New("client closed")
View Source
var ErrClientNotExist = errors.New("client does not exist")
Functions ¶
func SetMessageReader ¶
func SetMessageReader(s MessageReader)
Types ¶
type Client ¶
type Client struct {
// contains filtered or unexported fields
}
Client represent a user conn conn
func NewClient ¶
func NewClient(conn conn.Connection, mgr gate.Gateway, handler gate.MessageHandler) *Client
func (*Client) EnqueueMessage ¶
func (c *Client) EnqueueMessage(msg *messages.GlideMessage) error
EnqueueMessage 放入下行消息队列
type Impl ¶
func (*Impl) EnqueueMessage ¶
EnqueueMessage to the client with the specified uid and device, device: pass 0 express all device.
type MessageReader ¶
type MessageReader interface {
// Read 阻塞读取, 会阻塞当前协程
Read(conn conn.Connection) (*messages.GlideMessage, error)
// ReadCh 返回两个管道, 第一个用于读取内容, 第二个用于发送停止读取, 停止读取时切记要发送停止信号
ReadCh(conn conn.Connection) (<-chan *readerRes, chan<- interface{})
}
MessageReader 表示一个从连接中(Connection)读取消息的读取者, 可以用于定义如何从连接中读取并解析消息.
Click to show internal directories.
Click to hide internal directories.