channel

package
v1.10.3 Latest Latest
Warning

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

Go to latest
Published: Nov 2, 2025 License: Apache-2.0 Imports: 20 Imported by: 8

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 ResetSerialSequenceForTesting added in v1.9.0

func ResetSerialSequenceForTesting()

ResetSerialSequenceForTesting resets the global serial sequence counter for test isolation This should only be called from test code to ensure test independence

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

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

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 (c *DefaultHandlerContext) Bind(localAddr net.Addr, future Future) Future

func (*DefaultHandlerContext) Channel

func (c *DefaultHandlerContext) Channel() Channel

func (*DefaultHandlerContext) Close

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

func (*DefaultHandlerContext) Connect

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

func (*DefaultHandlerContext) Deadline added in v1.7.0

func (c *DefaultHandlerContext) Deadline() (deadline time.Time, ok bool)

func (*DefaultHandlerContext) Deregister

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

func (*DefaultHandlerContext) Disconnect

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

func (*DefaultHandlerContext) Done added in v1.7.0

func (c *DefaultHandlerContext) Done() <-chan struct{}

func (*DefaultHandlerContext) Err added in v1.7.0

func (c *DefaultHandlerContext) Err() error

func (*DefaultHandlerContext) FireActive

func (c *DefaultHandlerContext) FireActive() HandlerContext

func (*DefaultHandlerContext) FireErrorCaught

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

func (*DefaultHandlerContext) FireInactive

func (c *DefaultHandlerContext) FireInactive() HandlerContext

func (*DefaultHandlerContext) FireRead

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

func (*DefaultHandlerContext) FireReadCompleted

func (c *DefaultHandlerContext) FireReadCompleted() HandlerContext

func (*DefaultHandlerContext) FireRegistered

func (c *DefaultHandlerContext) FireRegistered() HandlerContext

func (*DefaultHandlerContext) FireUnregistered

func (c *DefaultHandlerContext) FireUnregistered() HandlerContext

func (*DefaultHandlerContext) Name

func (c *DefaultHandlerContext) Name() string

func (*DefaultHandlerContext) Value added in v1.7.0

func (c *DefaultHandlerContext) Value(key any) any

func (*DefaultHandlerContext) WithValue added in v1.7.0

func (c *DefaultHandlerContext) WithValue(key, val any) HandlerContext

func (*DefaultHandlerContext) Write

func (c *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

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 {
	context.Context
	WithValue(key, val any) HandlerContext
	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 MockChannel added in v1.9.0

type MockChannel struct {
	mock.Mock
	// contains filtered or unexported fields
}

MockChannel is a mock implementation of Channel interface It provides complete testify/mock integration for testing channel behaviors

func NewMockChannel added in v1.9.0

func NewMockChannel() *MockChannel

NewMockChannel creates a new MockChannel instance with default configuration

func NewMockChannelWithID added in v1.9.0

func NewMockChannelWithID(id string, serial uint64) *MockChannel

NewMockChannelWithID creates a new MockChannel with specified ID and serial

func (*MockChannel) Bind added in v1.9.0

func (m *MockChannel) Bind(localAddr net.Addr) Future

Bind binds to local address

func (*MockChannel) Close added in v1.9.0

func (m *MockChannel) Close() Future

Close closes the channel

func (*MockChannel) CloseFuture added in v1.9.0

func (m *MockChannel) CloseFuture() Future

CloseFuture returns the close future

func (*MockChannel) Connect added in v1.9.0

func (m *MockChannel) Connect(localAddr net.Addr, remoteAddr net.Addr) Future

Connect connects to remote address

func (*MockChannel) Deregister added in v1.9.0

func (m *MockChannel) Deregister() Future

Deregister deregisters the channel

func (*MockChannel) Disconnect added in v1.9.0

func (m *MockChannel) Disconnect() Future

Disconnect disconnects the channel

func (*MockChannel) FireRead added in v1.9.0

func (m *MockChannel) FireRead(obj any) Channel

FireRead fires a read event

func (*MockChannel) FireReadCompleted added in v1.9.0

func (m *MockChannel) FireReadCompleted() Channel

FireReadCompleted fires a read completed event

func (*MockChannel) ID added in v1.9.0

func (m *MockChannel) ID() string

ID returns the channel ID

func (*MockChannel) Init added in v1.9.0

func (m *MockChannel) Init() Channel

Init initializes the channel and returns itself

func (*MockChannel) IsActive added in v1.9.0

func (m *MockChannel) IsActive() bool

IsActive returns whether the channel is active

func (*MockChannel) LocalAddr added in v1.9.0

func (m *MockChannel) LocalAddr() net.Addr

LocalAddr returns the local address

func (*MockChannel) Param added in v1.9.0

func (m *MockChannel) Param(key ParamKey) any

Param gets a parameter

func (*MockChannel) Params added in v1.9.0

func (m *MockChannel) Params() *Params

Params returns all parameters

func (*MockChannel) Parent added in v1.9.0

func (m *MockChannel) Parent() ServerChannel

Parent returns the parent server channel

func (*MockChannel) Pipeline added in v1.9.0

func (m *MockChannel) Pipeline() Pipeline

Pipeline returns the channel pipeline

func (*MockChannel) Read added in v1.9.0

func (m *MockChannel) Read() Channel

Read reads from the channel

func (*MockChannel) Serial added in v1.9.0

func (m *MockChannel) Serial() uint64

Serial returns the channel serial number

func (*MockChannel) SetParam added in v1.9.0

func (m *MockChannel) SetParam(key ParamKey, value any)

SetParam sets a parameter

func (*MockChannel) Write added in v1.9.0

func (m *MockChannel) Write(obj any) Future

Write writes to the channel

type MockConn added in v1.9.0

type MockConn struct {
	mock.Mock
}

MockConn is a mock implementation of Conn interface It provides complete testify/mock integration for testing connection behaviors

func NewMockConn added in v1.9.0

func NewMockConn() *MockConn

NewMockConn creates a new MockConn instance

func (*MockConn) Close added in v1.9.0

func (m *MockConn) Close() error

Close closes the connection

func (*MockConn) Conn added in v1.9.0

func (m *MockConn) Conn() net.Conn

Conn returns the underlying net.Conn

func (*MockConn) IsActive added in v1.9.0

func (m *MockConn) IsActive() bool

IsActive returns whether the connection is active

func (*MockConn) LocalAddr added in v1.9.0

func (m *MockConn) LocalAddr() net.Addr

LocalAddr returns the local network address

func (*MockConn) Read added in v1.9.0

func (m *MockConn) Read(b []byte) (n int, err error)

Read reads data from the connection

func (*MockConn) RemoteAddr added in v1.9.0

func (m *MockConn) RemoteAddr() net.Addr

RemoteAddr returns the remote network address

func (*MockConn) SetDeadline added in v1.9.0

func (m *MockConn) SetDeadline(t time.Time) error

SetDeadline sets the read and write deadlines

func (*MockConn) SetReadDeadline added in v1.9.0

func (m *MockConn) SetReadDeadline(t time.Time) error

SetReadDeadline sets the read deadline

func (*MockConn) SetWriteDeadline added in v1.9.0

func (m *MockConn) SetWriteDeadline(t time.Time) error

SetWriteDeadline sets the write deadline

func (*MockConn) Write added in v1.9.0

func (m *MockConn) Write(b []byte) (n int, err error)

Write writes data to the connection

type MockFuture added in v1.9.0

type MockFuture struct {
	mock.Mock
	// contains filtered or unexported fields
}

MockFuture is a mock implementation of Future interface It provides complete testify/mock integration for testing future behaviors

func NewMockFuture added in v1.9.0

func NewMockFuture(ch interface{}) *MockFuture

NewMockFuture creates a new MockFuture instance

func (*MockFuture) AddListener added in v1.9.0

func (m *MockFuture) AddListener(listener concurrent.FutureListener) concurrent.Future

Additional methods for MockFuture (required for interface compliance)

func (*MockFuture) Await added in v1.9.0

func (m *MockFuture) Await() concurrent.Future

Await waits for the future to complete

func (*MockFuture) AwaitTimeout added in v1.9.0

func (m *MockFuture) AwaitTimeout(timeout time.Duration) concurrent.Future

func (*MockFuture) AwaitUninterruptibly added in v1.9.0

func (m *MockFuture) AwaitUninterruptibly()

AwaitUninterruptibly waits for the future to complete uninterruptibly

func (*MockFuture) AwaitUninterruptiblyWithTimeout added in v1.9.0

func (m *MockFuture) AwaitUninterruptiblyWithTimeout(timeout time.Duration) bool

AwaitUninterruptiblyWithTimeout waits for the future to complete uninterruptibly with timeout

func (*MockFuture) AwaitWithTimeout added in v1.9.0

func (m *MockFuture) AwaitWithTimeout(timeout time.Duration) bool

AwaitWithTimeout waits for the future to complete with timeout

func (*MockFuture) Cause added in v1.9.0

func (m *MockFuture) Cause() error

Cause returns the cause of failure

func (*MockFuture) Chainable added in v1.9.0

func (m *MockFuture) Chainable() concurrent.ChainFuture

func (*MockFuture) Channel added in v1.9.0

func (m *MockFuture) Channel() Channel

Channel returns the associated channel

func (*MockFuture) Completable added in v1.9.0

func (m *MockFuture) Completable() concurrent.Completable

Completable returns the completable interface

func (*MockFuture) Done added in v1.9.0

func (m *MockFuture) Done() <-chan struct{}

func (*MockFuture) Error added in v1.9.0

func (m *MockFuture) Error() error

func (*MockFuture) Get added in v1.9.0

func (m *MockFuture) Get() any

Get returns the result

func (*MockFuture) GetNow added in v1.9.0

func (m *MockFuture) GetNow() any

func (*MockFuture) GetTimeout added in v1.9.0

func (m *MockFuture) GetTimeout(timeout time.Duration) any

func (*MockFuture) Immutable added in v1.9.0

func (m *MockFuture) Immutable() concurrent.Immutable

func (*MockFuture) IsCancelled added in v1.9.0

func (m *MockFuture) IsCancelled() bool

IsCancelled returns whether the future was cancelled

func (*MockFuture) IsDone added in v1.9.0

func (m *MockFuture) IsDone() bool

IsDone returns whether the future is done

func (*MockFuture) IsFail added in v1.9.0

func (m *MockFuture) IsFail() bool

func (*MockFuture) IsSuccess added in v1.9.0

func (m *MockFuture) IsSuccess() bool

IsSuccess returns whether the future completed successfully

func (*MockFuture) Sync added in v1.9.0

func (m *MockFuture) Sync() Future

Sync waits for the future to complete and returns itself

type MockHandler added in v1.9.0

type MockHandler struct {
	mock.Mock
}

MockHandler is a mock implementation of Handler interface It provides complete testify/mock integration for testing handler behaviors

func NewMockHandler added in v1.9.0

func NewMockHandler() *MockHandler

NewMockHandler creates a new MockHandler instance

func (*MockHandler) Active added in v1.9.0

func (m *MockHandler) Active(ctx HandlerContext)

Active is called when the channel becomes active

func (*MockHandler) Added added in v1.9.0

func (m *MockHandler) Added(ctx HandlerContext)

Added is called when the handler is added to a pipeline

func (*MockHandler) Bind added in v1.9.0

func (m *MockHandler) Bind(ctx HandlerContext, localAddr net.Addr, future Future)

Bind is called when the channel is bound to a local address

func (*MockHandler) Close added in v1.9.0

func (m *MockHandler) Close(ctx HandlerContext, future Future)

Close is called when the channel is being closed

func (*MockHandler) Connect added in v1.9.0

func (m *MockHandler) Connect(ctx HandlerContext, localAddr net.Addr, remoteAddr net.Addr, future Future)

Connect is called when the channel connects to a remote address

func (*MockHandler) Deregister added in v1.9.0

func (m *MockHandler) Deregister(ctx HandlerContext, future Future)

Deregister is called when the channel is being deregistered

func (*MockHandler) Disconnect added in v1.9.0

func (m *MockHandler) Disconnect(ctx HandlerContext, future Future)

Disconnect is called when the channel is being disconnected

func (*MockHandler) ErrorCaught added in v1.9.0

func (m *MockHandler) ErrorCaught(ctx HandlerContext, err error)

ErrorCaught is called when an error is caught in the pipeline

func (*MockHandler) Inactive added in v1.9.0

func (m *MockHandler) Inactive(ctx HandlerContext)

Inactive is called when the channel becomes inactive

func (*MockHandler) Read added in v1.9.0

func (m *MockHandler) Read(ctx HandlerContext, obj any)

Read is called when data is read from the channel

func (*MockHandler) ReadCompleted added in v1.9.0

func (m *MockHandler) ReadCompleted(ctx HandlerContext)

ReadCompleted is called when a read operation is completed

func (*MockHandler) Registered added in v1.9.0

func (m *MockHandler) Registered(ctx HandlerContext)

Registered is called when the channel is registered

func (*MockHandler) Removed added in v1.9.0

func (m *MockHandler) Removed(ctx HandlerContext)

Removed is called when the handler is removed from a pipeline

func (*MockHandler) Unregistered added in v1.9.0

func (m *MockHandler) Unregistered(ctx HandlerContext)

Unregistered is called when the channel is unregistered

func (*MockHandler) Write added in v1.9.0

func (m *MockHandler) Write(ctx HandlerContext, obj any, future Future)

Write is called when data is written to the channel

type MockHandlerContext added in v1.9.0

type MockHandlerContext struct {
	mock.Mock
	// contains filtered or unexported fields
}

MockHandlerContext is a mock implementation of HandlerContext interface It provides complete testify/mock integration for testing handler context behaviors

func NewMockHandlerContext added in v1.9.0

func NewMockHandlerContext() *MockHandlerContext

NewMockHandlerContext creates a new MockHandlerContext instance

func NewMockHandlerContextWithContext added in v1.9.0

func NewMockHandlerContextWithContext(ctx context.Context) *MockHandlerContext

NewMockHandlerContextWithContext creates a new MockHandlerContext with specified context

func (*MockHandlerContext) Bind added in v1.9.0

func (m *MockHandlerContext) Bind(localAddr net.Addr, future Future) Future

Bind binds to local address

func (*MockHandlerContext) Channel added in v1.9.0

func (m *MockHandlerContext) Channel() Channel

Channel returns the associated channel

func (*MockHandlerContext) Close added in v1.9.0

func (m *MockHandlerContext) Close(future Future) Future

Close closes the context

func (*MockHandlerContext) Connect added in v1.9.0

func (m *MockHandlerContext) Connect(localAddr net.Addr, remoteAddr net.Addr, future Future) Future

Connect connects to remote address

func (*MockHandlerContext) Deadline added in v1.9.0

func (m *MockHandlerContext) Deadline() (deadline time.Time, ok bool)

Deadline returns the deadline of the context

func (*MockHandlerContext) Deregister added in v1.9.0

func (m *MockHandlerContext) Deregister(future Future) Future

Deregister deregisters the context

func (*MockHandlerContext) Disconnect added in v1.9.0

func (m *MockHandlerContext) Disconnect(future Future) Future

Disconnect disconnects the context

func (*MockHandlerContext) Done added in v1.9.0

func (m *MockHandlerContext) Done() <-chan struct{}

Done returns the done channel

func (*MockHandlerContext) Err added in v1.9.0

func (m *MockHandlerContext) Err() error

Err returns the context error

func (*MockHandlerContext) FireActive added in v1.9.0

func (m *MockHandlerContext) FireActive() HandlerContext

FireActive fires an active event

func (*MockHandlerContext) FireErrorCaught added in v1.9.0

func (m *MockHandlerContext) FireErrorCaught(err error) HandlerContext

FireErrorCaught fires an error caught event

func (*MockHandlerContext) FireInactive added in v1.9.0

func (m *MockHandlerContext) FireInactive() HandlerContext

FireInactive fires an inactive event

func (*MockHandlerContext) FireRead added in v1.9.0

func (m *MockHandlerContext) FireRead(obj any) HandlerContext

FireRead fires a read event

func (*MockHandlerContext) FireReadCompleted added in v1.9.0

func (m *MockHandlerContext) FireReadCompleted() HandlerContext

FireReadCompleted fires a read completed event

func (*MockHandlerContext) FireRegistered added in v1.9.0

func (m *MockHandlerContext) FireRegistered() HandlerContext

FireRegistered fires a registered event

func (*MockHandlerContext) FireUnregistered added in v1.9.0

func (m *MockHandlerContext) FireUnregistered() HandlerContext

FireUnregistered fires an unregistered event

func (*MockHandlerContext) Name added in v1.9.0

func (m *MockHandlerContext) Name() string

Name returns the handler context name

func (*MockHandlerContext) Value added in v1.9.0

func (m *MockHandlerContext) Value(key any) any

Value returns the value associated with key

func (*MockHandlerContext) WithValue added in v1.9.0

func (m *MockHandlerContext) WithValue(key, val any) HandlerContext

WithValue returns a new context with the specified key-value pair

func (*MockHandlerContext) Write added in v1.9.0

func (m *MockHandlerContext) Write(obj any, future Future) Future

Write writes data through the context

type MockMessageDecoder added in v1.9.0

type MockMessageDecoder struct {
	mock.Mock
}

MockMessageDecoder is a mock implementation of MessageDecoder interface It provides complete testify/mock integration for testing message decoding behaviors

func NewMockMessageDecoder added in v1.9.0

func NewMockMessageDecoder() *MockMessageDecoder

NewMockMessageDecoder creates a new MockMessageDecoder instance

func (*MockMessageDecoder) Decode added in v1.9.0

func (m *MockMessageDecoder) Decode(ctx HandlerContext, in buf.ByteBuf, out structs.Queue)

Decode decodes messages from ByteBuf to Queue

type MockMessageEncoder added in v1.9.0

type MockMessageEncoder struct {
	mock.Mock
}

MockMessageEncoder is a mock implementation of MessageEncoder interface It provides complete testify/mock integration for testing message encoding behaviors

func NewMockMessageEncoder added in v1.9.0

func NewMockMessageEncoder() *MockMessageEncoder

NewMockMessageEncoder creates a new MockMessageEncoder instance

func (*MockMessageEncoder) Encode added in v1.9.0

func (m *MockMessageEncoder) Encode(ctx HandlerContext, msg any, out buf.ByteBuf)

Encode encodes a message to ByteBuf

type MockNetChannel added in v1.9.0

type MockNetChannel struct {
	MockChannel
	// contains filtered or unexported fields
}

MockNetChannel is a mock implementation of NetChannel interface It embeds MockChannel to provide all Channel functionality plus network-specific features

func NewMockNetChannel added in v1.9.0

func NewMockNetChannel() *MockNetChannel

NewMockNetChannel creates a new MockNetChannel instance

func NewMockNetChannelWithConn added in v1.9.0

func NewMockNetChannelWithConn(conn Conn) *MockNetChannel

NewMockNetChannelWithConn creates a new MockNetChannel with specified connection

func (*MockNetChannel) Conn added in v1.9.0

func (m *MockNetChannel) Conn() Conn

Conn returns the connection

func (*MockNetChannel) RemoteAddr added in v1.9.0

func (m *MockNetChannel) RemoteAddr() net.Addr

RemoteAddr returns the remote address

func (*MockNetChannel) SetConn added in v1.9.0

func (m *MockNetChannel) SetConn(conn net.Conn)

SetConn sets the connection (public method for NetChannelSetConn interface)

func (*MockNetChannel) UnsafeConnect added in v1.9.0

func (m *MockNetChannel) UnsafeConnect(localAddr net.Addr, remoteAddr net.Addr) error

UnsafeConnect connects to remote address unsafely

func (*MockNetChannel) UnsafeDisconnect added in v1.9.0

func (m *MockNetChannel) UnsafeDisconnect() error

UnsafeDisconnect disconnects unsafely

func (*MockNetChannel) UnsafeIsAutoRead added in v1.9.0

func (m *MockNetChannel) UnsafeIsAutoRead() bool

UnsafeIsAutoRead returns whether auto-read is enabled

func (*MockNetChannel) UnsafeRead added in v1.9.0

func (m *MockNetChannel) UnsafeRead() (any, error)

UnsafeRead reads data unsafely

func (*MockNetChannel) UnsafeWrite added in v1.9.0

func (m *MockNetChannel) UnsafeWrite(obj any) error

UnsafeWrite writes data unsafely

type MockPipeline added in v1.9.0

type MockPipeline struct {
	mock.Mock
}

MockPipeline is a mock implementation of Pipeline interface It provides complete testify/mock integration for testing pipeline behaviors

func NewMockPipeline added in v1.9.0

func NewMockPipeline() *MockPipeline

NewMockPipeline creates a new MockPipeline instance

func (*MockPipeline) AddBefore added in v1.9.0

func (m *MockPipeline) AddBefore(target string, name string, elem Handler) Pipeline

AddBefore adds a handler before the specified target handler

func (*MockPipeline) AddLast added in v1.9.0

func (m *MockPipeline) AddLast(name string, elem Handler) Pipeline

AddLast adds a handler to the end of the pipeline

func (*MockPipeline) Bind added in v1.9.0

func (m *MockPipeline) Bind(localAddr net.Addr) Future

Bind binds to local address

func (*MockPipeline) Channel added in v1.9.0

func (m *MockPipeline) Channel() Channel

Channel returns the associated channel

func (*MockPipeline) Clear added in v1.9.0

func (m *MockPipeline) Clear() Pipeline

Clear clears all handlers from the pipeline

func (*MockPipeline) Close added in v1.9.0

func (m *MockPipeline) Close() Future

Close closes the pipeline

func (*MockPipeline) Connect added in v1.9.0

func (m *MockPipeline) Connect(localAddr net.Addr, remoteAddr net.Addr) Future

Connect connects to remote address

func (*MockPipeline) Deregister added in v1.9.0

func (m *MockPipeline) Deregister() Future

Deregister deregisters the pipeline

func (*MockPipeline) Disconnect added in v1.9.0

func (m *MockPipeline) Disconnect() Future

Disconnect disconnects the pipeline

func (*MockPipeline) NewFuture added in v1.9.0

func (m *MockPipeline) NewFuture() Future

NewFuture creates a new future

func (*MockPipeline) Param added in v1.9.0

func (m *MockPipeline) Param(key ParamKey) any

Param gets a parameter from the pipeline

func (*MockPipeline) Params added in v1.9.0

func (m *MockPipeline) Params() *Params

Params returns all parameters

func (*MockPipeline) Read added in v1.9.0

func (m *MockPipeline) Read() Pipeline

Read triggers a read operation

func (*MockPipeline) Remove added in v1.9.0

func (m *MockPipeline) Remove(elem Handler) Pipeline

Remove removes the specified handler from the pipeline

func (*MockPipeline) RemoveByName added in v1.9.0

func (m *MockPipeline) RemoveByName(name string) Pipeline

RemoveByName removes handler by name from the pipeline

func (*MockPipeline) RemoveFirst added in v1.9.0

func (m *MockPipeline) RemoveFirst() Pipeline

RemoveFirst removes the first handler from the pipeline

func (*MockPipeline) SetParam added in v1.9.0

func (m *MockPipeline) SetParam(key ParamKey, value any) Pipeline

SetParam sets a parameter in the pipeline

func (*MockPipeline) Write added in v1.9.0

func (m *MockPipeline) Write(obj any) Future

Write writes data through the pipeline

type MockServerChannel added in v1.9.0

type MockServerChannel struct {
	MockChannel
}

MockServerChannel is a mock implementation of ServerChannel interface It embeds MockChannel to provide all Channel functionality plus server-specific features

func NewMockServerChannel added in v1.9.0

func NewMockServerChannel() *MockServerChannel

NewMockServerChannel creates a new MockServerChannel instance

func (*MockServerChannel) ChildParams added in v1.9.0

func (m *MockServerChannel) ChildParams() *Params

ChildParams returns child parameters

func (*MockServerChannel) UnsafeAccept added in v1.9.0

func (m *MockServerChannel) UnsafeAccept() (Channel, Future)

UnsafeAccept accepts new connections unsafely

func (*MockServerChannel) UnsafeBind added in v1.9.0

func (m *MockServerChannel) UnsafeBind(localAddr net.Addr) error

UnsafeBind binds to local address unsafely

func (*MockServerChannel) UnsafeClose added in v1.9.0

func (m *MockServerChannel) UnsafeClose() error

UnsafeClose closes the server channel unsafely

func (*MockServerChannel) UnsafeIsAutoRead added in v1.9.0

func (m *MockServerChannel) UnsafeIsAutoRead() bool

UnsafeIsAutoRead returns whether auto-read is enabled

func (*MockServerChannel) UnsafeRead added in v1.9.0

func (m *MockServerChannel) UnsafeRead() (any, error)

UnsafeRead reads data unsafely

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
}

type ValueHandlerContext added in v1.7.0

type ValueHandlerContext wrapHandlerContext

Jump to

Keyboard shortcuts

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