Documentation ¶
Index ¶
- type Armour
- type Connection
- type ConnectionOwner
- type FDialConn
- type FRecvChan
- type Listener
- type Sender
- func (s *Sender) AssemblePacket(header *protocol.Header, msg protocol.Message) *protocol.Packet
- func (s *Sender) NewHeaderAsResponse(reqHeader *protocol.Header, ec uint32, em string, protoID uint32) *protocol.Header
- func (s *Sender) NewHeaderEmpty() *protocol.Header
- func (s *Sender) NewHeaderWithMessage(msg protocol.Message) *protocol.Header
- func (s *Sender) NewPacketAsResponse(reqHeader *protocol.Header, ec uint32, em string, msg protocol.Message) *protocol.Packet
- func (s *Sender) NewPacketWithMessage(msg protocol.Message) *protocol.Packet
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type Connection ¶
type Connection interface { Remote() net.Addr Owner() ConnectionOwner BindOwner(ConnectionOwner) Start(*Sender) error Close() Send(*protocol.Packet) error RecvChan() <-chan *protocol.Packet Done() <-chan struct{} SetConfoundCode([]byte) ConfoundCode() []byte }
Connection面向Receiver的连接抽象接口 对于具体的实现, 要求: 1. Send接口传入的Packet为未编码形态, 需要具体实现中进行编码 2. RecvChan的channel中推入的Packet必须为已解码的形态
type ConnectionOwner ¶
type ConnectionOwner interface {
OnNetClosed()
}
type FDialConn ¶
type FDialConn func(cfg interface{}, fc FRecvChan) (Connection, error)
type Listener ¶
type Listener interface { Addr() net.Addr Accept(fc FRecvChan) (Connection, error) Close() }
type Sender ¶
type Sender struct {
Sequence uint64
}
发送者. 作为接收者的一个组件, 集中管理发送消息相关的状态维护和工具函数
func (*Sender) AssemblePacket ¶
func (*Sender) NewHeaderAsResponse ¶
func (*Sender) NewHeaderEmpty ¶
func (*Sender) NewHeaderWithMessage ¶
Click to show internal directories.
Click to hide internal directories.