Back to godoc.org

Package protomux

v0.0.0-...-7726874
Latest Go to latest

The latest major version is .

Published: Feb 11, 2020 | License: GPL3 | Module: gitee.com/emmoblin/trireme-lib

Index

type MultiplexedListener

type MultiplexedListener struct {
	sync.RWMutex
	// contains filtered or unexported fields
}

MultiplexedListener is the root listener that will split connections to different protocols.

func NewMultiplexedListener

func NewMultiplexedListener(l net.Listener, mark int, registry *serviceregistry.Registry, puID string) *MultiplexedListener

NewMultiplexedListener returns a new multiplexed listener. Caller must register protocols outside of the new object creation.

func (*MultiplexedListener) Close

func (m *MultiplexedListener) Close()

Close terminates the server without the context.

func (*MultiplexedListener) RegisterDefaultListener

func (m *MultiplexedListener) RegisterDefaultListener(p *ProtoListener) error

RegisterDefaultListener registers a default listener.

func (*MultiplexedListener) RegisterListener

func (m *MultiplexedListener) RegisterListener(ltype common.ListenerType) (*ProtoListener, error)

RegisterListener registers a new listener. It returns the listener that the various protocol servers should use. If defaultListener is set, this will become the default listener if no match is found. Obviously, there cannot be more than one default.

func (*MultiplexedListener) Serve

func (m *MultiplexedListener) Serve(ctx context.Context) error

Serve will demux the connections

func (*MultiplexedListener) UnregisterDefaultListener

func (m *MultiplexedListener) UnregisterDefaultListener() error

UnregisterDefaultListener unregisters the default listener.

func (*MultiplexedListener) UnregisterListener

func (m *MultiplexedListener) UnregisterListener(ltype common.ListenerType) error

UnregisterListener unregisters a listener. It returns an error if there are services associated with this listener.

type ProtoListener

type ProtoListener struct {
	net.Listener
	// contains filtered or unexported fields
}

ProtoListener is

func NewProtoListener

func NewProtoListener(mark int) *ProtoListener

NewProtoListener creates a listener for a particular protocol.

func (*ProtoListener) Accept

func (p *ProtoListener) Accept() (net.Conn, error)

Accept accepts new connections over the channel.

Package Files

Documentation was rendered with GOOS=linux and GOARCH=amd64.

Jump to identifier

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to identifier