server

package
v0.0.0-...-6438891 Latest Latest
Warning

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

Go to latest
Published: Aug 19, 2023 License: MIT Imports: 9 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

View Source
var (
	ErrServerClosed       = errors.New("tcp: Server closed")
	ErrAbortHandler       = errors.New("tcp: abort TCPHandler")
	ServerContextKey      = "tcp-server"
	LocalAddrContextKey   = "local-addr"
	RemoteAddrContextKey  = "remote-addr"
	ForwardAddrContextKey = "forward-addr"
	ConnContextKey        = "Conn"
	ClientConntKey        = "client-conn"
)

Functions

func ListenAndServe

func ListenAndServe(addr string, handler TCPHandler) error

Types

type Conn

type Conn struct {

	// Record remote ip
	KuloyClient
	// contains filtered or unexported fields
}

func (*Conn) Close

func (c *Conn) Close()

type HandleFunc

type HandleFunc func(ctx context.Context, conn net.Conn)

HandleFunc represents application handler function

type KuloyClient

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

func (*KuloyClient) GetSelectedDB

func (kc *KuloyClient) GetSelectedDB() int

func (*KuloyClient) SetSelectedDB

func (kc *KuloyClient) SetSelectedDB(dbNum int)

type TCPHandler

type TCPHandler interface {
	ServeTCP(ctx context.Context, conn net.Conn)
}

TCPHandler represents application handler over tcp

type TailService

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

func NewTailService

func NewTailService(c *TcpSliceRouterContext) *TailService

func (TailService) ServeTCP

func (t TailService) ServeTCP(ctx context.Context, conn net.Conn)

type TcpHandlerFunc

type TcpHandlerFunc func(*TcpSliceRouterContext)

type TcpServer

type TcpServer struct {
	Addr    string
	Handler TCPHandler

	WriteTimeout     time.Duration
	ReadTimeout      time.Duration
	KeepAliveTimeout time.Duration

	NotifyStarted func()
	// contains filtered or unexported fields
}

func (*TcpServer) Close

func (s *TcpServer) Close(ctx context.Context) error

func (*TcpServer) ListenAndServe

func (s *TcpServer) ListenAndServe() error

func (*TcpServer) Serve

func (s *TcpServer) Serve(l net.Listener) error

type TcpSliceGroup

type TcpSliceGroup struct {
	*TcpSliceRouter
	// contains filtered or unexported fields
}

func (*TcpSliceGroup) Use

func (g *TcpSliceGroup) Use(middlewares ...TcpHandlerFunc) *TcpSliceGroup

type TcpSliceRouter

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

func NewTcpSliceRouter

func NewTcpSliceRouter() *TcpSliceRouter

func (*TcpSliceRouter) Group

func (g *TcpSliceRouter) Group() *TcpSliceGroup

type TcpSliceRouterContext

type TcpSliceRouterContext struct {
	Ctx context.Context
	*TcpSliceGroup
	// contains filtered or unexported fields
}

func (*TcpSliceRouterContext) Abort

func (c *TcpSliceRouterContext) Abort()

func (*TcpSliceRouterContext) Get

func (c *TcpSliceRouterContext) Get(key interface{}) interface{}

func (*TcpSliceRouterContext) GetClientConn

func (c *TcpSliceRouterContext) GetClientConn() *Conn

func (*TcpSliceRouterContext) GetConn

func (c *TcpSliceRouterContext) GetConn() net.Conn

func (*TcpSliceRouterContext) GetString

func (c *TcpSliceRouterContext) GetString(key interface{}) string

func (*TcpSliceRouterContext) IsAborted

func (c *TcpSliceRouterContext) IsAborted() bool

func (*TcpSliceRouterContext) Next

func (c *TcpSliceRouterContext) Next()

func (*TcpSliceRouterContext) Read

func (c *TcpSliceRouterContext) Read(key interface{}) interface{}

func (*TcpSliceRouterContext) Reset

func (c *TcpSliceRouterContext) Reset()

func (*TcpSliceRouterContext) Set

func (c *TcpSliceRouterContext) Set(key, val interface{})

func (*TcpSliceRouterContext) Write

func (c *TcpSliceRouterContext) Write(bytes []byte) error

type TcpSliceRouterHandler

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

func NewTcpSliceRouterHandler

func NewTcpSliceRouterHandler(coreFunc func(*TcpSliceRouterContext) TCPHandler, router *TcpSliceRouter) *TcpSliceRouterHandler

func (*TcpSliceRouterHandler) ServeTCP

func (w *TcpSliceRouterHandler) ServeTCP(ctx context.Context, conn net.Conn)

Directories

Path Synopsis

Jump to

Keyboard shortcuts

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