Documentation
¶
Index ¶
- Variables
- func AddCancelChannel() (key string, c chan int)
- func BroadcastWebSocketData(data []byte)
- func BroadcastWebSocketJSON(v interface{})
- func CancelChannel(key string)
- func CloseAllSockets()
- func GetAllWebSocketMeta() (items *sync.Map)
- func Initialize(path string, config string) (err error)
- func InitializeLite() (err error)
- func PublishWebSocketJSON(key string, v interface{})
- func RandomString(strlen int) string
- func RegisterWebSocketDataCallback(callback WebSocketCallback)
- func RemoveWebSocketMeta(id string)
- func ReplyToWebSocket(conn *WebSocketConnection, data []byte)
- func ReplyToWebSocketJSON(conn *WebSocketConnection, v interface{})
- func ReplyToWebSocketPubSub(conn *WebSocketConnection, key string, v interface{})
- func Run()
- func RunLite(port int)
- func SetWebSocketMeta(id string, info *WebSocketConnectionMeta)
- func SetWebSocketTimeout(timeout int)
- type ConcurrentWebSocketCallbackItem
- type ConcurrentWebSocketConnectionItem
- type GinContextSync
- type WebSocketCallback
- type WebSocketCallbackSync
- type WebSocketConnection
- type WebSocketConnectionCollection
- type WebSocketConnectionMeta
- type WebSocketPubSubPayload
- type WebSocketRemoval
Constants ¶
This section is empty.
Variables ¶
View Source
var BroadcastSockets bool
View Source
var CustomLog customLog
View Source
var WebSocketCallbacks sync.Map
View Source
var WebSocketConnections sync.Map
Functions ¶
func AddCancelChannel ¶
func BroadcastWebSocketData ¶
func BroadcastWebSocketData(data []byte)
func BroadcastWebSocketJSON ¶
func BroadcastWebSocketJSON(v interface{})
func CancelChannel ¶
func CancelChannel(key string)
func CloseAllSockets ¶
func CloseAllSockets()
func GetAllWebSocketMeta ¶
func Initialize ¶
func InitializeLite ¶
func InitializeLite() (err error)
func PublishWebSocketJSON ¶
func PublishWebSocketJSON(key string, v interface{})
func RandomString ¶
func RegisterWebSocketDataCallback ¶
func RegisterWebSocketDataCallback(callback WebSocketCallback)
func RemoveWebSocketMeta ¶
func RemoveWebSocketMeta(id string)
func ReplyToWebSocket ¶
func ReplyToWebSocket(conn *WebSocketConnection, data []byte)
func ReplyToWebSocketJSON ¶
func ReplyToWebSocketJSON(conn *WebSocketConnection, v interface{})
func ReplyToWebSocketPubSub ¶
func ReplyToWebSocketPubSub(conn *WebSocketConnection, key string, v interface{})
func SetWebSocketMeta ¶
func SetWebSocketMeta(id string, info *WebSocketConnectionMeta)
func SetWebSocketTimeout ¶
func SetWebSocketTimeout(timeout int)
Types ¶
type ConcurrentWebSocketCallbackItem ¶
type ConcurrentWebSocketCallbackItem struct {
Index int
Callback WebSocketCallback
}
type ConcurrentWebSocketConnectionItem ¶
type ConcurrentWebSocketConnectionItem struct {
Index int
Conn *WebSocketConnection
}
type GinContextSync ¶
type GinContextSync struct {
sync.RWMutex
Initialized atomicTypes.AtomicBool
Context *gin.Context
}
type WebSocketCallback ¶
type WebSocketCallbackSync ¶
func (*WebSocketCallbackSync) Append ¶
func (self *WebSocketCallbackSync) Append(item WebSocketCallback)
func (*WebSocketCallbackSync) Iter ¶
func (self *WebSocketCallbackSync) Iter() <-chan ConcurrentWebSocketCallbackItem
type WebSocketConnection ¶
type WebSocketConnection struct {
sync.RWMutex
Id string
Connection *websocket.Conn
Req *http.Request
Context interface{}
ContextString string
ContextType string
ContextLock sync.RWMutex
WriteLock sync.RWMutex
LastResponseTime time.Time
LastResponseTimeLock sync.RWMutex
GinContextSync GinContextSync
}
type WebSocketConnectionCollection ¶
type WebSocketConnectionCollection struct {
sync.RWMutex
Connections []*WebSocketConnection
}
func (*WebSocketConnectionCollection) Append ¶
func (wscc *WebSocketConnectionCollection) Append(item *WebSocketConnection)
func (*WebSocketConnectionCollection) Iter ¶
func (wscc *WebSocketConnectionCollection) Iter() <-chan ConcurrentWebSocketConnectionItem
type WebSocketConnectionMeta ¶
type WebSocketConnectionMeta struct {
Conn *WebSocketConnection
Context interface{}
ContextString string
ContextType string
LastResponseTime atomicTypes.AtomicTime
TimeoutOverride atomicTypes.AtomicInt
}
func GetWebSocketMeta ¶
func GetWebSocketMeta(id string) (info *WebSocketConnectionMeta, ok bool)
func (*WebSocketConnectionMeta) GetConnection ¶
func (obj *WebSocketConnectionMeta) GetConnection() (conn *WebSocketConnection)
func (*WebSocketConnectionMeta) SetTimeoutOverride ¶
func (obj *WebSocketConnectionMeta) SetTimeoutOverride(timeout int)
type WebSocketPubSubPayload ¶
type WebSocketPubSubPayload struct {
Key string `json:"Key"`
Content interface{} `json:"Content"`
}
type WebSocketRemoval ¶
type WebSocketRemoval func(info WebSocketConnectionMeta)
var WebSocketRemovalCallback WebSocketRemoval
Click to show internal directories.
Click to hide internal directories.