Documentation ¶
Index ¶
- Variables
- type Client
- type FilterPair
- type RESTService
- func (r *RESTService) AddSessionIdHeader(f func(http.ResponseWriter, *http.Request)) http.HandlerFunc
- func (r *RESTService) Close() error
- func (r *RESTService) Middleware(f func(http.ResponseWriter, *http.Request) (error, int)) http.HandlerFunc
- func (r *RESTService) ServeHTTP(w http.ResponseWriter, req *http.Request)
- func (r *RESTService) Updates() <-chan *straumur.Event
- type WebSocketServer
- func (s *WebSocketServer) Add(c *Client)
- func (s *WebSocketServer) Broadcast(e *straumur.Event)
- func (s *WebSocketServer) Del(c *Client)
- func (s *WebSocketServer) Done()
- func (s *WebSocketServer) Err(err error)
- func (s *WebSocketServer) FindClientById(uuid string) *Client
- func (s *WebSocketServer) GetHandler() http.Handler
- func (s *WebSocketServer) Run(ec chan error)
Constants ¶
This section is empty.
Variables ¶
Functions ¶
This section is empty.
Types ¶
type Client ¶
type Client struct { Id string // contains filtered or unexported fields }
Represents a connected websocket client
type RESTService ¶
type RESTService struct { Headers map[string]string Store sessions.Store WsServer *WebSocketServer // contains filtered or unexported fields }
func NewRESTService ¶
func NewRESTService(d straumur.DataBackend, errorChan chan error) *RESTService
Creates a new REST dataservice
func (*RESTService) AddSessionIdHeader ¶
func (r *RESTService) AddSessionIdHeader(f func(http.ResponseWriter, *http.Request)) http.HandlerFunc
Appends a unique session id to the request headers
func (*RESTService) Close ¶
func (r *RESTService) Close() error
func (*RESTService) Middleware ¶
func (r *RESTService) Middleware(f func(http.ResponseWriter, *http.Request) (error, int)) http.HandlerFunc
Wraps http.HandlerFunc, adds error response and frequently used headers
func (*RESTService) ServeHTTP ¶
func (r *RESTService) ServeHTTP(w http.ResponseWriter, req *http.Request)
func (*RESTService) Updates ¶
func (r *RESTService) Updates() <-chan *straumur.Event
EventFeed interface
type WebSocketServer ¶
type WebSocketServer struct { Filters chan FilterPair // contains filtered or unexported fields }
func NewWebSocketServer ¶
func NewWebSocketServer() *WebSocketServer
Create a new Websocket broadcaster
func (*WebSocketServer) Add ¶
func (s *WebSocketServer) Add(c *Client)
func (*WebSocketServer) Broadcast ¶
func (s *WebSocketServer) Broadcast(e *straumur.Event)
func (*WebSocketServer) Del ¶
func (s *WebSocketServer) Del(c *Client)
func (*WebSocketServer) Done ¶
func (s *WebSocketServer) Done()
func (*WebSocketServer) Err ¶
func (s *WebSocketServer) Err(err error)
func (*WebSocketServer) FindClientById ¶
func (s *WebSocketServer) FindClientById(uuid string) *Client
func (*WebSocketServer) GetHandler ¶
func (s *WebSocketServer) GetHandler() http.Handler
func (*WebSocketServer) Run ¶
func (s *WebSocketServer) Run(ec chan error)
Click to show internal directories.
Click to hide internal directories.