cherryAgent

package
v1.1.12 Latest Latest
Warning

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

Go to latest
Published: Aug 4, 2021 License: MIT Imports: 14 Imported by: 0

Documentation

Index

Constants

View Source
const (
	WriteBacklog = 64
)

Variables

This section is empty.

Functions

This section is empty.

Types

type Agent

type Agent struct {
	sync.RWMutex
	*Options
	cherryFacade.IApplication
	Session *cherrySession.Session // session
	// contains filtered or unexported fields
}

func NewAgent

func NewAgent(app cherryFacade.IApplication, conn cherryFacade.INetConn, opts *Options) *Agent

func (*Agent) Close

func (a *Agent) Close()

Close closes the Agent, clean inner state and close low-level connection.

func (*Agent) Kick

func (a *Agent) Kick(reason interface{}) error

Kick kick session

func (*Agent) Push

func (a *Agent) Push(route string, val interface{}) error

Push implementation for session.NetworkEntity interface

func (*Agent) RPC

func (a *Agent) RPC(route string, val interface{}) error

RPC implementation for cherryFacade.INetwork interface

func (*Agent) RemoteAddr

func (a *Agent) RemoteAddr() net.Addr

RemoteAddr implementation for session.NetworkEntity interface returns the remote network address.

func (*Agent) Response

func (a *Agent) Response(mid uint, v interface{}, isError ...bool) error

Response implementation for session.NetworkEntity interface

func (*Agent) Run

func (a *Agent) Run()

func (*Agent) Send

func (a *Agent) Send(typ cherryMessage.Type, route string, mid uint, v interface{}, isError bool) (err error)

func (*Agent) SendRaw

func (a *Agent) SendRaw(bytes []byte) error

func (*Agent) SetLastAt

func (a *Agent) SetLastAt()

type AgentBackend added in v1.1.9

type AgentBackend struct {
	cherryFacade.IApplication
	ClusterComponent *cherryCluster.Component
	Sid              cherryFacade.SID
	Session          *cherrySession.Session
	FrontendId       cherryFacade.FrontendId
}

func (*AgentBackend) Close added in v1.1.9

func (a *AgentBackend) Close()

func (*AgentBackend) Kick added in v1.1.9

func (a *AgentBackend) Kick(reason interface{}) error

func (*AgentBackend) Push added in v1.1.9

func (a *AgentBackend) Push(route string, val interface{}) error

func (*AgentBackend) RPC added in v1.1.9

func (a *AgentBackend) RPC(route string, val interface{}) error

func (*AgentBackend) RemoteAddr added in v1.1.9

func (a *AgentBackend) RemoteAddr() net.Addr

func (*AgentBackend) Response added in v1.1.9

func (a *AgentBackend) Response(mid uint, val interface{}, isError ...bool) error

func (*AgentBackend) SendRaw added in v1.1.9

func (a *AgentBackend) SendRaw(_ []byte) error

type Options

type Options struct {
	Heartbeat  time.Duration                                // heartbeat(sec)
	Commands   map[cherryPacket.Type]cherryCommand.ICommand // commands
	RPCHandler RPCHandler                                   // rpc handler
}

type RPCHandler

type RPCHandler func(session *cherrySession.Session, route string, val interface{})

Jump to

Keyboard shortcuts

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