server

package
v0.3.7 Latest Latest
Warning

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

Go to latest
Published: May 7, 2024 License: BSD-3-Clause Imports: 9 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type Connect

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

func NewConnect

func NewConnect(
	id string, head http.Header,
	act actionsApi, conn *websocket.Conn,
	ctxs ...context.Context,
) *Connect

func (*Connect) CallHandler

func (v *Connect) CallHandler(b []byte)

func (*Connect) CancelFunc

func (v *Connect) CancelFunc() context.CancelFunc

func (*Connect) Close

func (v *Connect) Close()

func (*Connect) Connect

func (v *Connect) Connect() *websocket.Conn

func (*Connect) ConnectID

func (v *Connect) ConnectID() string

func (*Connect) Done

func (v *Connect) Done() <-chan struct{}

func (*Connect) Encode

func (v *Connect) Encode(eid event.Id, in interface{})

func (*Connect) Head

func (v *Connect) Head(key string) string

func (*Connect) OnClose

func (v *Connect) OnClose(cb func(cid string))

func (*Connect) OnOpen

func (v *Connect) OnOpen(cb func(cid string))

func (*Connect) ReadBus

func (v *Connect) ReadBus() <-chan []byte

func (*Connect) Run

func (v *Connect) Run()

func (*Connect) WriteToBus

func (v *Connect) WriteToBus(b []byte)

type EventHandler

type EventHandler func(w Response, r Request, m Meta) error

type Meta

type Meta interface {
	ConnectID() string
	Head(key string) string
	OnClose(cb func(cid string))
	OnOpen(cb func(cid string))
}

type Request

type Request interface {
	EventID() event.Id
	Decode(in interface{}) error
}

type Response

type Response interface {
	Encode(in interface{})
	EncodeEvent(id event.Id, in interface{})
}

type Server

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

func New

func New(l xlog.Logger, ctx context.Context, opts ...func(u *websocket.Upgrader)) *Server

func (*Server) AddConn

func (v *Server) AddConn(c *Connect)

func (*Server) Broadcast

func (v *Server) Broadcast(eid event.Id, m interface{})

func (*Server) CloseAll

func (v *Server) CloseAll()

func (*Server) CountConn

func (v *Server) CountConn() (cc int)

func (*Server) DelConn

func (v *Server) DelConn(id string)

func (*Server) ErrLog

func (v *Server) ErrLog(cid string, err error, msg string, args ...interface{})

func (*Server) ErrLogMessage

func (v *Server) ErrLogMessage(cid string, msg string, args ...interface{})

func (*Server) GetHandler

func (v *Server) GetHandler(eid event.Id) (h EventHandler, ok bool)

func (*Server) Handling

func (v *Server) Handling(w http.ResponseWriter, r *http.Request)

func (*Server) SendEvent

func (v *Server) SendEvent(eid event.Id, m interface{}, cids ...string)

func (*Server) SetHandler

func (v *Server) SetHandler(call EventHandler, eids ...event.Id)

Jump to

Keyboard shortcuts

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