Documentation
¶
Index ¶
- Variables
- type AddPortRequestMessage
- type AddPortResponseMessage
- type Client
- type ControlStream
- type Dialer
- type Message
- func CreateMessage(messageType MessageType, message interface{}) (Message, []byte, error)
- func CreateMessageWithID(id string, messageType MessageType, message interface{}) (Message, []byte, error)
- func SendMessage(writeTo io.Writer, messageType MessageType, message interface{}) (Message, []byte, error)
- type MessageHandler
- type MessageType
- type OpenTCPStreamMessage
- type PortProvider
- type RequestConnectionMessage
- type Server
- type Session
- type Stream
Constants ¶
This section is empty.
Variables ¶
View Source
var ( ErrConnectionClosed = errors.New("connection closed") ErrCtrlInvalidResponse = errors.New("invalid response on control channel") ErrInvalidMessageType = errors.New("invalid message type") ErrInvalidPort = errors.New("invalid port") ErrInvalidStreamType = errors.New("invalid stream type") ErrInvalidStreamID = errors.New("invalid stream id") ErrSessionTimeout = errors.New("timeout getting session") ErrListenerStopped = errors.New("listener stopped") ErrInvalidConnection = errors.New("invalid connection") )
Functions ¶
This section is empty.
Types ¶
type AddPortRequestMessage ¶
type AddPortResponseMessage ¶
type ControlStream ¶
type ControlStream interface {
Stream
AddMessageHandler(messageType MessageType, handler MessageHandler)
}
type Message ¶
type Message struct {
ID string `json:"id"`
Type MessageType `json:"type"`
Data []byte `json:"data"`
}
func CreateMessage ¶
func CreateMessage(messageType MessageType, message interface{}) (Message, []byte, error)
func CreateMessageWithID ¶
func CreateMessageWithID(id string, messageType MessageType, message interface{}) (Message, []byte, error)
func SendMessage ¶
type MessageHandler ¶
type MessageType ¶
type MessageType string
const ( OpenTCPStreamMessageType MessageType = "openTCPStream" OpenControlStreamMessageType MessageType = "openControlStream" AddPortMessageType MessageType = "addPort" AddPortResponseMessageType MessageType = "addPortResponse" PongMessageType MessageType = "pong" PingMessageType MessageType = "ping" RequestConnectionMessageType MessageType = "requestConnection" StreamOpenedMessageType MessageType = "streamOpened" ErrCtrlStreamAlreadyExistsMessageType MessageType = "errCtrlStreamAlreadyExists" ErrInvalidStreamTypeMessageType MessageType = "errInvalidStreamType" ErrInvalidStreamIDMessageType MessageType = "errInvalidStreamID" )
type OpenTCPStreamMessage ¶
type OpenTCPStreamMessage struct {
ID string `json:"id"`
}
type PortProvider ¶
type Stream ¶
type Stream interface {
io.ReadWriteCloser
Handle() error
}
Click to show internal directories.
Click to hide internal directories.