bercon

package
v0.0.0-...-79dd3f0 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Jul 31, 2018 License: GPL-3.0, GPL-3.0 Imports: 11 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

View Source
var (
	//ErrDisconnect .
	ErrDisconnect = errors.New("Connection lost")
	//ErrConnectionNil .
	ErrConnectionNil = errors.New("Connection is nil")
	//ErrTimeout .
	ErrTimeout = errors.New("Connection timeout")
	//ErrInvalidLogin .
	ErrInvalidLogin = errors.New("Login Invalid")
	//ErrLoginFailed .
	ErrLoginFailed = errors.New("Login failed")
	//ErrUnknownPacketType .
	ErrUnknownPacketType = errors.New("Received Unknown Packet Type")
	//ErrInvalidLoginPacket .
	ErrInvalidLoginPacket = errors.New("Received invalid Login Packet")
	//ErrInvalidChecksum .
	ErrInvalidChecksum = errors.New("Received invalid Packet Checksum")
	//ErrInvalidSizeNoHeader .
	ErrInvalidSizeNoHeader = errors.New("Invalid Packet Size, no Header found")
	//ErrInvalidSizeNoSequence .
	ErrInvalidSizeNoSequence = errors.New("Invalid Packet Size, no Sequence found")
	//ErrInvalidHeaderSize .
	ErrInvalidHeaderSize = errors.New("Invalid Packet Header Size")
	//ErrInvalidHeaderSyntax .
	ErrInvalidHeaderSyntax = errors.New("Invalid Packet Header Syntax")
	//ErrInvalidHeaderEnd .
	ErrInvalidHeaderEnd = errors.New("Invalid Packet Header end")
	//ErrInvalidSize .
	ErrInvalidSize = errors.New("Packet size too")
)

Functions

This section is empty.

Types

type BeCfg

type BeCfg interface {
	GetConfig() Config
}

BeCfg is the Interface providing Configs for the Client

type Client

type Client struct {
	// contains filtered or unexported fields
}

Client is the the Object Handling the Connection

func New

func New(bec BeCfg) *Client

New creates a Client with given Config

func (*Client) Connect

func (c *Client) Connect() (err error)

Connect opens a new Connection to the Server

func (*Client) Disconnect

func (c *Client) Disconnect() error

Disconnect the Client

func (*Client) Reconnect

func (c *Client) Reconnect() error

Reconnect after loops exited or if not running

func (*Client) RunCommand

func (c *Client) RunCommand(cmd string, w io.WriteCloser)

RunCommand adds given cmd to command queue

func (*Client) SetChatWriter

func (c *Client) SetChatWriter(w io.Writer)

SetChatWriter enables Chat Reading and sets Writer

func (*Client) SetEventWriter

func (c *Client) SetEventWriter(w io.Writer)

SetEventWriter enables Event Reading and sets Writer

func (*Client) WatcherLoop

func (c *Client) WatcherLoop()

WatcherLoop is responsible for creating and keeping working connections

type Config

type Config struct {
	Addr               *net.UDPAddr
	Password           string
	KeepAliveTimer     int
	KeepAliveTolerance int64
}

Config contains all data required by BE Connections

func (Config) GetConfig

func (bec Config) GetConfig() Config

GetConfig returns BeConfig

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL