Documentation ¶
Index ¶
Constants ¶
This section is empty.
Variables ¶
View Source
var ( ErrConnClosing = errors.New("use of closed network connection") ErrWriteBlocking = errors.New("write packet was blocking") ErrReadBlocking = errors.New("read packet was blocking") )
Error type
Functions ¶
This section is empty.
Types ¶
type Conn ¶
type Conn struct {
// contains filtered or unexported fields
}
Conn exposes a set of callbacks for the various events that occur on a connection
func (*Conn) AsyncWritePacket ¶
AsyncWritePacket async writes a packet, this method will never block
func (*Conn) GetExtraData ¶
func (c *Conn) GetExtraData() interface{}
GetExtraData gets the extra data from the Conn
func (*Conn) GetRawConn ¶
GetRawConn returns the raw net.TCPConn from the Conn
func (*Conn) PutExtraData ¶
func (c *Conn) PutExtraData(data interface{})
PutExtraData puts the extra data with the Conn
type ConnCallback ¶
type ConnCallback interface { // OnConnect is called when the connection was accepted, // If the return value of false is closed OnConnect(*Conn) bool // OnMessage is called when the connection receives a packet, // If the return value of false is closed OnMessage(*Conn, Packet) bool // OnClose is called when the connection closed OnClose(*Conn) }
ConnCallback is an interface of methods that are used as callbacks on a connection
type EchoPacket ¶
type EchoPacket struct {
// contains filtered or unexported fields
}
func NewEchoPacket ¶
func NewEchoPacket(buff []byte, hasLengthField bool) *EchoPacket
func (*EchoPacket) GetBody ¶
func (this *EchoPacket) GetBody() []byte
func (*EchoPacket) GetLength ¶
func (this *EchoPacket) GetLength() uint32
func (*EchoPacket) Serialize ¶
func (this *EchoPacket) Serialize() []byte
type EchoProtocol ¶
type EchoProtocol struct { }
func (*EchoProtocol) ReadPacket ¶
func (this *EchoProtocol) ReadPacket(conn *net.TCPConn) (Packet, error)
type Server ¶
type Server struct {
// contains filtered or unexported fields
}
func NewServer ¶
func NewServer(config *Config, callback ConnCallback, protocol Protocol) *Server
NewServer creates a server
Click to show internal directories.
Click to hide internal directories.