Documentation
¶
Index ¶
- Constants
- type CoderProvider
- type CoderWebSocket
- type Conn
- type GorillaWebSocket
- type GorillaWebSocketProvider
- func (p *GorillaWebSocketProvider) CompressionEnabled() bool
- func (p *GorillaWebSocketProvider) Dial(url string) (WebSocket, error)
- func (p *GorillaWebSocketProvider) ToNetConn(ws WebSocket) net.Conn
- func (p *GorillaWebSocketProvider) Upgrade(w http.ResponseWriter, r *http.Request) (WebSocket, error)
- type Provider
- type WebSocket
Constants ¶
const ( TextMessage = iota + 1 BinaryMessage )
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type CoderProvider ¶
type CoderProvider struct {
HandshakeTimeout time.Duration
EnableCompression bool
SkipTLSVerify bool
BearerToken string
}
CoderProvider implements Provider for coder/websocket
func NewCoderProvider ¶
func NewCoderProvider(timeout time.Duration, skipTLSVerify bool, bearerToken string) *CoderProvider
NewCoderProvider creates a new Provider using coder/websocket
func (*CoderProvider) CompressionEnabled ¶
func (p *CoderProvider) CompressionEnabled() bool
func (*CoderProvider) Dial ¶
func (p *CoderProvider) Dial(url string) (WebSocket, error)
Dial implements Provider.Dial
func (*CoderProvider) ToNetConn ¶
func (p *CoderProvider) ToNetConn(ws WebSocket) net.Conn
ToNetConn implements Provider.ToNetConn
func (*CoderProvider) Upgrade ¶
func (p *CoderProvider) Upgrade(w http.ResponseWriter, r *http.Request) (WebSocket, error)
Upgrade implements Provider.Upgrade
type CoderWebSocket ¶
type CoderWebSocket struct {
// contains filtered or unexported fields
}
CoderWebSocket implements the WebSocket interface for coder/websocket
func (*CoderWebSocket) Close ¶
func (c *CoderWebSocket) Close() error
Close implements WebSocket.Close
func (*CoderWebSocket) NextReader ¶
func (c *CoderWebSocket) NextReader() (messageType int, reader io.Reader, err error)
NextReader implements WebSocket.NextReader
func (*CoderWebSocket) ReadMessage ¶
func (c *CoderWebSocket) ReadMessage() (messageType int, p []byte, err error)
ReadMessage implements WebSocket.ReadMessage
func (*CoderWebSocket) WriteMessage ¶
func (c *CoderWebSocket) WriteMessage(messageType int, data []byte) error
WriteMessage implements WebSocket.WriteMessage
type GorillaWebSocket ¶
type GorillaWebSocket struct {
// contains filtered or unexported fields
}
GorillaWebSocket implements the WebSocket interface for gorilla/websocket
func (*GorillaWebSocket) Close ¶
func (g *GorillaWebSocket) Close() error
Close implements WebSocket.Close
func (*GorillaWebSocket) NextReader ¶
func (g *GorillaWebSocket) NextReader() (messageType int, reader io.Reader, err error)
NextReader implements WebSocket.NextReader
func (*GorillaWebSocket) ReadMessage ¶
func (g *GorillaWebSocket) ReadMessage() (messageType int, p []byte, err error)
ReadMessage implements WebSocket.ReadMessage
func (*GorillaWebSocket) WriteMessage ¶
func (g *GorillaWebSocket) WriteMessage(messageType int, data []byte) error
WriteMessage implements WebSocket.WriteMessage
type GorillaWebSocketProvider ¶
type GorillaWebSocketProvider struct {
// Configuration options
ReadBufferSize int
WriteBufferSize int
HandshakeTimeout time.Duration
EnableCompression bool
SkipTLSVerify bool
BearerToken string
}
GorillaWebSocketProvider implements WebsocketProvider using gorilla/websocket
func NewGorillaProvider ¶
func NewGorillaProvider(timeout time.Duration, skipTLSVerify bool, bearerToken string) *GorillaWebSocketProvider
NewGorillaProvider creates a new WebSocket provider using gorilla/websocket
func (*GorillaWebSocketProvider) CompressionEnabled ¶
func (p *GorillaWebSocketProvider) CompressionEnabled() bool
func (*GorillaWebSocketProvider) Dial ¶
func (p *GorillaWebSocketProvider) Dial(url string) (WebSocket, error)
func (*GorillaWebSocketProvider) ToNetConn ¶
func (p *GorillaWebSocketProvider) ToNetConn(ws WebSocket) net.Conn
func (*GorillaWebSocketProvider) Upgrade ¶
func (p *GorillaWebSocketProvider) Upgrade(w http.ResponseWriter, r *http.Request) (WebSocket, error)
type Provider ¶
type Provider interface {
// Dial connects to a WebSocket server
Dial(url string) (WebSocket, error)
// Upgrade upgrades an HTTP connection to WebSocket
Upgrade(w http.ResponseWriter, r *http.Request) (WebSocket, error)
// ToNetConn wraps a WebSocket as a net.Conn
ToNetConn(ws WebSocket) net.Conn
// CompressionEnabled returns true if the provider is configured to use compression; else false
CompressionEnabled() bool
}
Provider defines methods for creating WebSocket connections
type WebSocket ¶
type WebSocket interface {
// Core WebSocket operations
WriteMessage(messageType int, data []byte) error
ReadMessage() (messageType int, p []byte, err error)
NextReader() (messageType int, reader io.Reader, err error)
Close() error
}
WebSocket defines the common interface for WebSocket connections