channel

package
v1.2.2 Latest Latest
Warning

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

Go to latest
Published: Sep 19, 2022 License: Apache-2.0 Imports: 18 Imported by: 10

Documentation

Index

Constants

View Source
const DefaultAcceptTimeout = 5000
View Source
const ParamAcceptTimeout = ParamKey("accept_timeout")
View Source
const ParamReadBufferSize = ParamKey("read_buffer_size")
View Source
const ParamReadTimeout = ParamKey("read_timeout")
View Source
const ParamWriteTimeout = ParamKey("write_timeout")
View Source
const PipelineHeadHandlerContextName = "DEFAULT_HEAD_HANDLER_CONTEXT"
View Source
const PipelineTailHandlerContextName = "DEFAULT_TAIL_HANDLER_CONTEXT"

Variables

View Source
var ErrAcceptTimeout = fmt.Errorf("accept timeout")
View Source
var ErrChannelClosed = fmt.Errorf("channel closed")
View Source
var ErrChannelNotActive = fmt.Errorf("channel not active")
View Source
var ErrLocalAddrIsEmpty = fmt.Errorf("local addr is empty")
View Source
var ErrNilObject = fmt.Errorf("nil object")
View Source
var ErrNotActive = errors.Errorf("channel not active")
View Source
var ErrReadError = fmt.Errorf("read error")
View Source
var ErrRemoteAddrIsEmpty = fmt.Errorf("remote addr is empty")
View Source
var ErrSkip = fmt.Errorf("skip")
View Source
var ErrUnknownObjectType = fmt.Errorf("unknown object type")
View Source
var IDEncoder = base62.FlipEncoding

Functions

func GetParamBoolDefault

func GetParamBoolDefault(ch Channel, key ParamKey, defaultValue bool) bool

func GetParamInt64Default

func GetParamInt64Default(ch Channel, key ParamKey, defaultValue int64) int64

func GetParamIntDefault

func GetParamIntDefault(ch Channel, key ParamKey, defaultValue int) int

func GetParamStringDefault

func GetParamStringDefault(ch Channel, key ParamKey, defaultValue string) string

func ValueSetFieldVal

func ValueSetFieldVal(target *reflect.Value, field string, val any) bool

Types

type Bootstrap

type Bootstrap interface {
	Handler(handler Handler) Bootstrap
	ChannelType(ch Channel) Bootstrap
	Connect(localAddr net.Addr, remoteAddr net.Addr) Future
	SetParams(key ParamKey, value any) Bootstrap
	Params() *Params
}

func NewBootstrap

func NewBootstrap() Bootstrap

type BootstrapChannelPostInit

type BootstrapChannelPostInit interface {
	BootstrapPostInit()
}

type BootstrapChannelPreInit

type BootstrapChannelPreInit interface {
	BootstrapPreInit()
}

type ByteToMessageDecoder

type ByteToMessageDecoder struct {
	DefaultHandler
	Decode func(ctx HandlerContext, in buf.ByteBuf, out structs.Queue)
}

func (*ByteToMessageDecoder) Added

func (h *ByteToMessageDecoder) Added(ctx HandlerContext)

func (*ByteToMessageDecoder) Read

func (h *ByteToMessageDecoder) Read(ctx HandlerContext, obj any)

type Channel

type Channel interface {
	Serial() uint64
	ID() string
	Init() Channel
	Pipeline() Pipeline
	CloseFuture() Future
	Bind(localAddr net.Addr) Future
	Close() Future
	Connect(localAddr net.Addr, remoteAddr net.Addr) Future
	Disconnect() Future
	Deregister() Future
	Read() Channel
	FireRead(obj any) Channel
	FireReadCompleted() Channel
	Write(obj any) Future
	IsActive() bool
	SetParam(key ParamKey, value any)
	Param(key ParamKey) any
	Params() *Params
	Parent() ServerChannel
	LocalAddr() net.Addr
	// contains filtered or unexported methods
}

type Conn

type Conn interface {
	net.Conn
	Conn() net.Conn
	IsActive() bool
}

func WrapConn

func WrapConn(conn net.Conn) Conn

type DefaultBootstrap

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

func (*DefaultBootstrap) ChannelType

func (d *DefaultBootstrap) ChannelType(ch Channel) Bootstrap

func (*DefaultBootstrap) Connect

func (d *DefaultBootstrap) Connect(localAddr net.Addr, remoteAddr net.Addr) Future

func (*DefaultBootstrap) Handler

func (d *DefaultBootstrap) Handler(handler Handler) Bootstrap

func (*DefaultBootstrap) Params

func (d *DefaultBootstrap) Params() *Params

func (*DefaultBootstrap) SetParams

func (d *DefaultBootstrap) SetParams(key ParamKey, value any) Bootstrap

type DefaultChannel

type DefaultChannel struct {
	Name string
	// contains filtered or unexported fields
}

func (*DefaultChannel) Bind

func (c *DefaultChannel) Bind(localAddr net.Addr) Future

func (*DefaultChannel) Close

func (c *DefaultChannel) Close() Future

func (*DefaultChannel) CloseFuture

func (c *DefaultChannel) CloseFuture() Future

func (*DefaultChannel) Connect

func (c *DefaultChannel) Connect(localAddr net.Addr, remoteAddr net.Addr) Future

func (*DefaultChannel) Deregister

func (c *DefaultChannel) Deregister() Future

func (*DefaultChannel) Disconnect

func (c *DefaultChannel) Disconnect() Future

func (*DefaultChannel) FireRead

func (c *DefaultChannel) FireRead(obj any) Channel

func (*DefaultChannel) FireReadCompleted

func (c *DefaultChannel) FireReadCompleted() Channel

func (*DefaultChannel) ID

func (c *DefaultChannel) ID() string

func (*DefaultChannel) Init

func (c *DefaultChannel) Init() Channel

func (*DefaultChannel) IsActive

func (c *DefaultChannel) IsActive() bool

func (*DefaultChannel) LocalAddr

func (c *DefaultChannel) LocalAddr() net.Addr

func (*DefaultChannel) Param

func (c *DefaultChannel) Param(key ParamKey) any

func (*DefaultChannel) Params

func (c *DefaultChannel) Params() *Params

func (*DefaultChannel) Parent

func (c *DefaultChannel) Parent() ServerChannel

func (*DefaultChannel) Pipeline

func (c *DefaultChannel) Pipeline() Pipeline

func (*DefaultChannel) Read

func (c *DefaultChannel) Read() Channel

func (*DefaultChannel) Serial added in v1.1.0

func (c *DefaultChannel) Serial() uint64

func (*DefaultChannel) SetParam

func (c *DefaultChannel) SetParam(key ParamKey, value any)

func (*DefaultChannel) UnsafeConnect

func (c *DefaultChannel) UnsafeConnect(localAddr net.Addr, remoteAddr net.Addr) error

func (*DefaultChannel) UnsafeDisconnect

func (c *DefaultChannel) UnsafeDisconnect() error

func (*DefaultChannel) UnsafeIsAutoRead

func (c *DefaultChannel) UnsafeIsAutoRead() bool

func (*DefaultChannel) UnsafeRead

func (c *DefaultChannel) UnsafeRead() (any, error)

func (*DefaultChannel) UnsafeWrite

func (c *DefaultChannel) UnsafeWrite(obj any) error

func (*DefaultChannel) Write

func (c *DefaultChannel) Write(obj any) Future

type DefaultConn

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

func (*DefaultConn) Close

func (c *DefaultConn) Close() error

func (*DefaultConn) Conn

func (c *DefaultConn) Conn() net.Conn

func (*DefaultConn) IsActive

func (c *DefaultConn) IsActive() bool

func (*DefaultConn) LocalAddr

func (c *DefaultConn) LocalAddr() net.Addr

func (*DefaultConn) Read

func (c *DefaultConn) Read(b []byte) (n int, err error)

func (*DefaultConn) RemoteAddr

func (c *DefaultConn) RemoteAddr() net.Addr

func (*DefaultConn) SetDeadline

func (c *DefaultConn) SetDeadline(t time.Time) error

func (*DefaultConn) SetReadDeadline

func (c *DefaultConn) SetReadDeadline(t time.Time) error

func (*DefaultConn) SetWriteDeadline

func (c *DefaultConn) SetWriteDeadline(t time.Time) error

func (*DefaultConn) Write

func (c *DefaultConn) Write(b []byte) (n int, err error)

type DefaultFuture

type DefaultFuture struct {
	concurrent.Future
	// contains filtered or unexported fields
}

func (*DefaultFuture) Channel

func (d *DefaultFuture) Channel() Channel

func (*DefaultFuture) Set added in v1.1.0

func (d *DefaultFuture) Set(obj any)

func (*DefaultFuture) Sync

func (d *DefaultFuture) Sync() Future

type DefaultHandler

type DefaultHandler struct {
}

func (*DefaultHandler) Active

func (h *DefaultHandler) Active(ctx HandlerContext)

func (*DefaultHandler) Added

func (h *DefaultHandler) Added(ctx HandlerContext)

func (*DefaultHandler) Bind

func (h *DefaultHandler) Bind(ctx HandlerContext, localAddr net.Addr, future Future)

func (*DefaultHandler) Close

func (h *DefaultHandler) Close(ctx HandlerContext, future Future)

func (*DefaultHandler) Connect

func (h *DefaultHandler) Connect(ctx HandlerContext, localAddr net.Addr, remoteAddr net.Addr, future Future)

func (*DefaultHandler) Deregister

func (h *DefaultHandler) Deregister(ctx HandlerContext, future Future)

func (*DefaultHandler) Disconnect

func (h *DefaultHandler) Disconnect(ctx HandlerContext, future Future)

func (*DefaultHandler) ErrorCaught

func (h *DefaultHandler) ErrorCaught(ctx HandlerContext, err error)

func (*DefaultHandler) Inactive

func (h *DefaultHandler) Inactive(ctx HandlerContext)

func (*DefaultHandler) Read

func (h *DefaultHandler) Read(ctx HandlerContext, obj any)

func (*DefaultHandler) ReadCompleted

func (h *DefaultHandler) ReadCompleted(ctx HandlerContext)

func (*DefaultHandler) Registered

func (h *DefaultHandler) Registered(ctx HandlerContext)

func (*DefaultHandler) Removed

func (h *DefaultHandler) Removed(ctx HandlerContext)

func (*DefaultHandler) Unregistered

func (h *DefaultHandler) Unregistered(ctx HandlerContext)

func (*DefaultHandler) Write

func (h *DefaultHandler) Write(ctx HandlerContext, obj any, future Future)

type DefaultHandlerContext

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

func NewHandlerContext

func NewHandlerContext() *DefaultHandlerContext

func (*DefaultHandlerContext) Bind

func (d *DefaultHandlerContext) Bind(localAddr net.Addr, future Future) Future

func (*DefaultHandlerContext) Channel

func (d *DefaultHandlerContext) Channel() Channel

func (*DefaultHandlerContext) Close

func (d *DefaultHandlerContext) Close(future Future) Future

func (*DefaultHandlerContext) Connect

func (d *DefaultHandlerContext) Connect(localAddr net.Addr, remoteAddr net.Addr, future Future) Future

func (*DefaultHandlerContext) Deregister

func (d *DefaultHandlerContext) Deregister(future Future) Future

func (*DefaultHandlerContext) Disconnect

func (d *DefaultHandlerContext) Disconnect(future Future) Future

func (*DefaultHandlerContext) FireActive

func (d *DefaultHandlerContext) FireActive() HandlerContext

func (*DefaultHandlerContext) FireErrorCaught

func (d *DefaultHandlerContext) FireErrorCaught(err error) HandlerContext

func (*DefaultHandlerContext) FireInactive

func (d *DefaultHandlerContext) FireInactive() HandlerContext

func (*DefaultHandlerContext) FireRead

func (d *DefaultHandlerContext) FireRead(obj any) HandlerContext

func (*DefaultHandlerContext) FireReadCompleted

func (d *DefaultHandlerContext) FireReadCompleted() HandlerContext

func (*DefaultHandlerContext) FireRegistered

func (d *DefaultHandlerContext) FireRegistered() HandlerContext

func (*DefaultHandlerContext) FireUnregistered

func (d *DefaultHandlerContext) FireUnregistered() HandlerContext

func (*DefaultHandlerContext) Name

func (d *DefaultHandlerContext) Name() string

func (*DefaultHandlerContext) Write

func (d *DefaultHandlerContext) Write(obj any, future Future) Future

type DefaultInitializer

type DefaultInitializer struct {
	DefaultHandler
	// contains filtered or unexported fields
}

func NewInitializer

func NewInitializer(f func(ch Channel)) *DefaultInitializer

func (*DefaultInitializer) Added

func (i *DefaultInitializer) Added(ctx HandlerContext)

type DefaultNetChannel

type DefaultNetChannel struct {
	DefaultChannel

	BufferSize   int
	ReadTimeout  time.Duration
	WriteTimeout time.Duration
	// contains filtered or unexported fields
}

func (*DefaultNetChannel) Conn

func (c *DefaultNetChannel) Conn() Conn

func (*DefaultNetChannel) Init

func (c *DefaultNetChannel) Init() Channel

func (*DefaultNetChannel) LocalAddr

func (c *DefaultNetChannel) LocalAddr() net.Addr

func (*DefaultNetChannel) RemoteAddr

func (c *DefaultNetChannel) RemoteAddr() net.Addr

func (*DefaultNetChannel) SetConn

func (c *DefaultNetChannel) SetConn(conn net.Conn)

func (*DefaultNetChannel) UnsafeConnect

func (c *DefaultNetChannel) UnsafeConnect(localAddr net.Addr, remoteAddr net.Addr) error

func (*DefaultNetChannel) UnsafeDisconnect

func (c *DefaultNetChannel) UnsafeDisconnect() error

func (*DefaultNetChannel) UnsafeRead

func (c *DefaultNetChannel) UnsafeRead() (any, error)

func (*DefaultNetChannel) UnsafeWrite

func (c *DefaultNetChannel) UnsafeWrite(obj any) error

type DefaultNetServerChannel

type DefaultNetServerChannel struct {
	DefaultServerChannel
}

func (*DefaultNetServerChannel) Conn

func (c *DefaultNetServerChannel) Conn() Conn

func (*DefaultNetServerChannel) LocalAddr

func (c *DefaultNetServerChannel) LocalAddr() net.Addr

func (*DefaultNetServerChannel) RemoteAddr

func (c *DefaultNetServerChannel) RemoteAddr() net.Addr

func (*DefaultNetServerChannel) UnsafeAccept

func (c *DefaultNetServerChannel) UnsafeAccept() (Channel, Future)

func (*DefaultNetServerChannel) UnsafeBind

func (c *DefaultNetServerChannel) UnsafeBind(localAddr net.Addr) error

func (*DefaultNetServerChannel) UnsafeClose

func (c *DefaultNetServerChannel) UnsafeClose() error

type DefaultPipeline

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

func (*DefaultPipeline) AddBefore

func (p *DefaultPipeline) AddBefore(target string, name string, elem Handler) Pipeline

func (*DefaultPipeline) AddLast

func (p *DefaultPipeline) AddLast(name string, elem Handler) Pipeline

func (*DefaultPipeline) Bind

func (p *DefaultPipeline) Bind(localAddr net.Addr) Future

func (*DefaultPipeline) Channel

func (p *DefaultPipeline) Channel() Channel

func (*DefaultPipeline) Clear

func (p *DefaultPipeline) Clear() Pipeline

func (*DefaultPipeline) Close

func (p *DefaultPipeline) Close() Future

func (*DefaultPipeline) Connect

func (p *DefaultPipeline) Connect(localAddr net.Addr, remoteAddr net.Addr) Future

func (*DefaultPipeline) Deregister

func (p *DefaultPipeline) Deregister() Future

func (*DefaultPipeline) Disconnect

func (p *DefaultPipeline) Disconnect() Future

func (*DefaultPipeline) NewFuture

func (p *DefaultPipeline) NewFuture() Future

func (*DefaultPipeline) Param

func (p *DefaultPipeline) Param(key ParamKey) any

func (*DefaultPipeline) Params

func (p *DefaultPipeline) Params() *Params

func (*DefaultPipeline) Read

func (p *DefaultPipeline) Read() Pipeline

func (*DefaultPipeline) Remove

func (p *DefaultPipeline) Remove(elem Handler) Pipeline

func (*DefaultPipeline) RemoveByName

func (p *DefaultPipeline) RemoveByName(name string) Pipeline

func (*DefaultPipeline) RemoveFirst

func (p *DefaultPipeline) RemoveFirst() Pipeline

func (*DefaultPipeline) SetChannel

func (p *DefaultPipeline) SetChannel(channel Channel)

func (*DefaultPipeline) SetParam

func (p *DefaultPipeline) SetParam(key ParamKey, value any) Pipeline

func (*DefaultPipeline) Write

func (p *DefaultPipeline) Write(obj any) Future

type DefaultServerBootstrap

type DefaultServerBootstrap struct {
	DefaultBootstrap
	// contains filtered or unexported fields
}

func (*DefaultServerBootstrap) Bind

func (d *DefaultServerBootstrap) Bind(localAddr net.Addr) Future

func (*DefaultServerBootstrap) ChildHandler

func (d *DefaultServerBootstrap) ChildHandler(handler Handler) ServerBootstrap

func (*DefaultServerBootstrap) ChildParams

func (d *DefaultServerBootstrap) ChildParams() *Params

func (*DefaultServerBootstrap) SetChildParams

func (d *DefaultServerBootstrap) SetChildParams(key ParamKey, value any) ServerBootstrap

type DefaultServerChannel

type DefaultServerChannel struct {
	DefaultChannel
	// contains filtered or unexported fields
}

func (*DefaultServerChannel) ChildParams

func (c *DefaultServerChannel) ChildParams() *Params

func (*DefaultServerChannel) DeriveChildChannel

func (c *DefaultServerChannel) DeriveChildChannel(child Channel, parent ServerChannel) Channel

func (*DefaultServerChannel) DeriveNetChildChannel

func (c *DefaultServerChannel) DeriveNetChildChannel(child NetChannel, parent NetServerChannel, conn net.Conn) Channel

func (*DefaultServerChannel) UnsafeAccept

func (c *DefaultServerChannel) UnsafeAccept() (Channel, Future)

func (*DefaultServerChannel) UnsafeBind

func (c *DefaultServerChannel) UnsafeBind(localAddr net.Addr) error

func (*DefaultServerChannel) UnsafeClose

func (c *DefaultServerChannel) UnsafeClose() error

func (*DefaultServerChannel) UnsafeIsAutoRead

func (c *DefaultServerChannel) UnsafeIsAutoRead() bool

func (*DefaultServerChannel) UnsafeRead added in v1.1.0

func (c *DefaultServerChannel) UnsafeRead() (any, error)

type DefaultUnsafe

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

func (*DefaultUnsafe) Bind

func (u *DefaultUnsafe) Bind(localAddr net.Addr, future Future)

func (*DefaultUnsafe) Close

func (u *DefaultUnsafe) Close(future Future)

func (*DefaultUnsafe) Connect

func (u *DefaultUnsafe) Connect(localAddr net.Addr, remoteAddr net.Addr, future Future)

func (*DefaultUnsafe) Disconnect

func (u *DefaultUnsafe) Disconnect(future Future)

func (*DefaultUnsafe) Read

func (u *DefaultUnsafe) Read()

func (*DefaultUnsafe) Write

func (u *DefaultUnsafe) Write(obj any, future Future)

type Future

type Future interface {
	concurrent.Future
	Sync() Future
	Channel() Channel
}

func NewFuture

func NewFuture(channel Channel) Future

type Handler

type Handler interface {
	Added(ctx HandlerContext)
	Removed(ctx HandlerContext)
	Registered(ctx HandlerContext)
	Unregistered(ctx HandlerContext)
	Active(ctx HandlerContext)
	Inactive(ctx HandlerContext)
	Read(ctx HandlerContext, obj any)
	ReadCompleted(ctx HandlerContext)
	Write(ctx HandlerContext, obj any, future Future)
	Bind(ctx HandlerContext, localAddr net.Addr, future Future)
	Close(ctx HandlerContext, future Future)
	Connect(ctx HandlerContext, localAddr net.Addr, remoteAddr net.Addr, future Future)
	Disconnect(ctx HandlerContext, future Future)
	Deregister(ctx HandlerContext, future Future)
	ErrorCaught(ctx HandlerContext, err error)
}

func NewRWHandler

func NewRWHandler(r func(ctx HandlerContext, obj any), w func(ctx HandlerContext, obj any, future Future)) Handler

type HandlerContext

type HandlerContext interface {
	Name() string
	Channel() Channel
	FireRegistered() HandlerContext
	FireUnregistered() HandlerContext
	FireActive() HandlerContext
	FireInactive() HandlerContext
	FireRead(obj any) HandlerContext
	FireReadCompleted() HandlerContext
	FireErrorCaught(err error) HandlerContext
	Write(obj any, future Future) Future
	Bind(localAddr net.Addr, future Future) Future
	Close(future Future) Future
	Connect(localAddr net.Addr, remoteAddr net.Addr, future Future) Future
	Disconnect(future Future) Future
	Deregister(future Future) Future
	// contains filtered or unexported methods
}

type IndicateHandlerInbound

type IndicateHandlerInbound struct {
	DefaultHandler
}

func (*IndicateHandlerInbound) Active

func (h *IndicateHandlerInbound) Active(ctx HandlerContext)

func (*IndicateHandlerInbound) Deregister

func (h *IndicateHandlerInbound) Deregister(ctx HandlerContext, future Future)

func (*IndicateHandlerInbound) Inactive

func (h *IndicateHandlerInbound) Inactive(ctx HandlerContext)

func (*IndicateHandlerInbound) Read

func (h *IndicateHandlerInbound) Read(ctx HandlerContext, obj any)

func (*IndicateHandlerInbound) ReadCompleted

func (h *IndicateHandlerInbound) ReadCompleted(ctx HandlerContext)

func (*IndicateHandlerInbound) Registered

func (h *IndicateHandlerInbound) Registered(ctx HandlerContext)

func (*IndicateHandlerInbound) Unregistered

func (h *IndicateHandlerInbound) Unregistered(ctx HandlerContext)

type IndicateHandlerOutbound

type IndicateHandlerOutbound struct {
	DefaultHandler
}

func (*IndicateHandlerOutbound) Bind

func (h *IndicateHandlerOutbound) Bind(ctx HandlerContext, localAddr net.Addr, future Future)

func (*IndicateHandlerOutbound) Close

func (h *IndicateHandlerOutbound) Close(ctx HandlerContext, future Future)

func (*IndicateHandlerOutbound) Connect

func (h *IndicateHandlerOutbound) Connect(ctx HandlerContext, localAddr net.Addr, remoteAddr net.Addr, future Future)

func (*IndicateHandlerOutbound) Disconnect

func (h *IndicateHandlerOutbound) Disconnect(ctx HandlerContext, future Future)

func (*IndicateHandlerOutbound) Write

func (h *IndicateHandlerOutbound) Write(ctx HandlerContext, obj any, future Future)

type LogStruct

type LogStruct struct {
	Action  string
	Handler string
}

type MessageDecoder

type MessageDecoder interface {
	Decode(ctx HandlerContext, in buf.ByteBuf, out structs.Queue)
}

type MessageEncoder

type MessageEncoder interface {
	Encode(ctx HandlerContext, msg any, out buf.ByteBuf)
}

type MessageToByteEncoder

type MessageToByteEncoder struct {
	DefaultHandler
	Encode func(ctx HandlerContext, msg any, out buf.ByteBuf)
}

func (*MessageToByteEncoder) Added

func (h *MessageToByteEncoder) Added(ctx HandlerContext)

func (*MessageToByteEncoder) Write

func (h *MessageToByteEncoder) Write(ctx HandlerContext, obj any, future Future)

type NetChannel

type NetChannel interface {
	Channel
	Conn() Conn
	RemoteAddr() net.Addr
	// contains filtered or unexported methods
}

type NetChannelSetConn

type NetChannelSetConn interface {
	SetConn(conn net.Conn)
}

type NetServerChannel

type NetServerChannel interface {
	ServerChannel
}

type NetStatusInbound

type NetStatusInbound struct {
	DefaultHandler
	LogLevel kklogger.Level
}

func (*NetStatusInbound) Active

func (h *NetStatusInbound) Active(ctx HandlerContext)

func (*NetStatusInbound) Inactive

func (h *NetStatusInbound) Inactive(ctx HandlerContext)

type NetStatusOutbound

type NetStatusOutbound struct {
	DefaultHandler
	LogLevel kklogger.Level
}

func (*NetStatusOutbound) Bind

func (h *NetStatusOutbound) Bind(ctx HandlerContext, localAddr net.Addr, future Future)

func (*NetStatusOutbound) Close

func (h *NetStatusOutbound) Close(ctx HandlerContext, future Future)

func (*NetStatusOutbound) Connect

func (h *NetStatusOutbound) Connect(ctx HandlerContext, localAddr net.Addr, remoteAddr net.Addr, future Future)

func (*NetStatusOutbound) Disconnect

func (h *NetStatusOutbound) Disconnect(ctx HandlerContext, future Future)

type ParamKey

type ParamKey string

type Params

type Params struct {
	sync.Map
}

func (*Params) Delete

func (p *Params) Delete(key ParamKey)

func (*Params) Load

func (p *Params) Load(key ParamKey) (value any, ok bool)

func (*Params) LoadOrStore

func (p *Params) LoadOrStore(key ParamKey, value any) (actual any, loaded bool)

func (*Params) Range

func (p *Params) Range(f func(key ParamKey, value any) bool)

func (*Params) Store

func (p *Params) Store(key ParamKey, value any)

type Pipeline

type Pipeline interface {
	AddLast(name string, elem Handler) Pipeline
	AddBefore(target string, name string, elem Handler) Pipeline
	RemoveFirst() Pipeline
	Remove(elem Handler) Pipeline
	RemoveByName(name string) Pipeline
	Clear() Pipeline
	Channel() Channel
	Param(key ParamKey) any
	SetParam(key ParamKey, value any) Pipeline
	Params() *Params

	Read() Pipeline
	Write(obj any) Future
	Bind(localAddr net.Addr) Future
	Close() Future
	Connect(localAddr net.Addr, remoteAddr net.Addr) Future
	Disconnect() Future
	Deregister() Future
	NewFuture() Future
	// contains filtered or unexported methods
}

type PipelineSetChannel

type PipelineSetChannel interface {
	SetChannel(channel Channel)
}

type ReplayDecoder

type ReplayDecoder struct {
	ByteToMessageDecoder
	// contains filtered or unexported fields
}

func NewReplayDecoder

func NewReplayDecoder(state ReplayState, decode func(ctx HandlerContext, in buf.ByteBuf, out structs.Queue)) *ReplayDecoder

func (*ReplayDecoder) Added

func (h *ReplayDecoder) Added(ctx HandlerContext)

func (*ReplayDecoder) Checkpoint

func (h *ReplayDecoder) Checkpoint(state ReplayState)

func (*ReplayDecoder) Read

func (h *ReplayDecoder) Read(ctx HandlerContext, obj any)

func (*ReplayDecoder) Skip

func (h *ReplayDecoder) Skip()

func (*ReplayDecoder) State

func (h *ReplayDecoder) State() ReplayState

type ReplayState

type ReplayState int

type ServerBootstrap

type ServerBootstrap interface {
	Bootstrap
	ChildHandler(handler Handler) ServerBootstrap
	SetChildParams(key ParamKey, value any) ServerBootstrap
	ChildParams() *Params
	Bind(localAddr net.Addr) Future
}

func NewServerBootstrap

func NewServerBootstrap() ServerBootstrap

type ServerChannel

type ServerChannel interface {
	Channel

	ChildParams() *Params
	// contains filtered or unexported methods
}

type Unsafe

type Unsafe interface {
	Read()
	Write(obj any, future Future)
	Bind(localAddr net.Addr, future Future)
	Close(future Future)
	Connect(localAddr net.Addr, remoteAddr net.Addr, future Future)
	Disconnect(future Future)
}

func NewUnsafe

func NewUnsafe(channel Channel) Unsafe

type UnsafeAccept

type UnsafeAccept interface {
	UnsafeAccept() (Channel, Future)
}

type UnsafeBind

type UnsafeBind interface {
	UnsafeBind(localAddr net.Addr) error
}

type UnsafeClose

type UnsafeClose interface {
	UnsafeClose() error
}

type UnsafeConnect

type UnsafeConnect interface {
	UnsafeConnect(localAddr net.Addr, remoteAddr net.Addr) error
}

type UnsafeDisconnect

type UnsafeDisconnect interface {
	UnsafeDisconnect() error
}

type UnsafeRead

type UnsafeRead interface {
	UnsafeIsAutoRead() bool
	UnsafeRead() (any, error)
}

type UnsafeWrite

type UnsafeWrite interface {
	UnsafeWrite(obj any) error
}

Jump to

Keyboard shortcuts

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