Documentation ¶
Index ¶
- Constants
- Variables
- func MakeBackend() *mapkv
- func ServeWs(hub *Hub, w http.ResponseWriter, r *http.Request)
- type Client
- type ClientOptions
- type Driver
- type ErrCode
- type Error
- type Hello
- type Hub
- type HubOptions
- type LocalClient
- func (c *LocalClient) Close()
- func (c *LocalClient) MakeRequest(cmd string, data map[string]interface{}) (Message, <-chan interface{})
- func (c *LocalClient) Options() ClientOptions
- func (m *LocalClient) Run()
- func (c *LocalClient) SendJSON(data interface{})
- func (c *LocalClient) SendMessage(data []byte)
- func (c *LocalClient) SetKeySubCallback(key string, callback SubscriptionCallback) int64
- func (c *LocalClient) SetPrefixSubCallback(key string, callback SubscriptionCallback) int64
- func (c *LocalClient) SetUID(uid int64)
- func (c *LocalClient) UID() int64
- func (c *LocalClient) UnsetCallback(id int64)
- func (c *LocalClient) Wait()
- type Message
- type Push
- type Request
- type Response
- type SubscriptionCallback
- type WebsocketClient
Constants ¶
View Source
const ( CmdProtoVersion = "version" CmdReadKey = "kget" CmdReadBulk = "kget-bulk" CmdReadPrefix = "kget-all" CmdWriteKey = "kset" CmdWriteBulk = "kset-bulk" CmdSubscribeKey = "ksub" CmdSubscribePrefix = "ksub-prefix" CmdUnsubscribeKey = "kunsub" CmdUnsubscribePrefix = "kunsub-prefix" CmdListKeys = "klist" CmdAuthRequest = "klogin" CmdAuthChallenge = "kauth" )
Commands
View Source
const ( ErrServerError = "server error" ErrInvalidFmt = "invalid message format" ErrMissingParam = "required parameter missing" ErrUnknownCmd = "unknown command" ErrAuthNotInit = "authentication not initialized" ErrAuthFailed = "authentication failed" ErrAuthRequired = "authentication required" )
View Source
const ProtoVersion = "v7"
Variables ¶
View Source
var (
ErrClientNotFound = errors.New("client not found")
)
View Source
var (
ErrorKeyNotFound = errors.New("key not found")
)
Functions ¶
func MakeBackend ¶ added in v7.1.0
func MakeBackend() *mapkv
Types ¶
type Client ¶
type Client interface { Options() ClientOptions Close() SendMessage([]byte) SendJSON(interface{}) SetUID(int64) UID() int64 }
Client is a middleman between the websocket connection and the hub.
type ClientOptions ¶
type ClientOptions struct { // Adds a prefix to all key operations to restrict them to a namespace Namespace string }
ClientOptions is a list of tweakable options for clients
type Hub ¶
type Hub struct {
// contains filtered or unexported fields
}
func (*Hub) RemoveClient ¶ added in v7.2.0
func (*Hub) SendMessage ¶ added in v7.2.2
func (*Hub) SetOptions ¶
func (hub *Hub) SetOptions(options HubOptions)
type HubOptions ¶
type HubOptions struct {
Password string
}
type LocalClient ¶ added in v7.2.0
type LocalClient struct { Pushes chan Push // contains filtered or unexported fields }
func NewLocalClient ¶ added in v7.2.0
func NewLocalClient(options ClientOptions, log *zap.Logger) *LocalClient
func (*LocalClient) Close ¶ added in v7.2.0
func (c *LocalClient) Close()
func (*LocalClient) MakeRequest ¶ added in v7.2.0
func (c *LocalClient) MakeRequest(cmd string, data map[string]interface{}) (Message, <-chan interface{})
func (*LocalClient) Options ¶ added in v7.2.0
func (c *LocalClient) Options() ClientOptions
func (*LocalClient) Run ¶ added in v7.2.0
func (m *LocalClient) Run()
func (*LocalClient) SendJSON ¶ added in v7.2.0
func (c *LocalClient) SendJSON(data interface{})
func (*LocalClient) SendMessage ¶ added in v7.2.0
func (c *LocalClient) SendMessage(data []byte)
func (*LocalClient) SetKeySubCallback ¶ added in v7.2.3
func (c *LocalClient) SetKeySubCallback(key string, callback SubscriptionCallback) int64
func (*LocalClient) SetPrefixSubCallback ¶ added in v7.2.3
func (c *LocalClient) SetPrefixSubCallback(key string, callback SubscriptionCallback) int64
func (*LocalClient) SetUID ¶ added in v7.2.0
func (c *LocalClient) SetUID(uid int64)
func (*LocalClient) UID ¶ added in v7.2.0
func (c *LocalClient) UID() int64
func (*LocalClient) UnsetCallback ¶ added in v7.2.3
func (c *LocalClient) UnsetCallback(id int64)
func (*LocalClient) Wait ¶ added in v7.2.0
func (c *LocalClient) Wait()
type SubscriptionCallback ¶ added in v7.2.3
type WebsocketClient ¶
type WebsocketClient struct {
// contains filtered or unexported fields
}
func (*WebsocketClient) Close ¶
func (c *WebsocketClient) Close()
func (*WebsocketClient) Options ¶
func (c *WebsocketClient) Options() ClientOptions
func (*WebsocketClient) SendJSON ¶
func (c *WebsocketClient) SendJSON(data interface{})
func (*WebsocketClient) SendMessage ¶
func (c *WebsocketClient) SendMessage(data []byte)
func (*WebsocketClient) SetUID ¶
func (c *WebsocketClient) SetUID(uid int64)
func (*WebsocketClient) UID ¶
func (c *WebsocketClient) UID() int64
Click to show internal directories.
Click to hide internal directories.