Documentation
¶
Index ¶
- Variables
- type BroadcastWrapper
- type Broadcaster
- type Client
- func (c *Client) Broadcast(request ClusterMessage, minServers int, serverAddresses ...string) error
- func (c *Client) BroadcastOneWay(request ClusterMessage, serverAddresses ...string)
- func (c *Client) SendRPC(request ClusterMessage, serverAddress string) (ClusterMessage, error)
- func (c *Client) Stop()
- type ClusterMessage
- type ClusterMessageHandler
- type ClusterMessageType
- type ClusterRequest
- type ClusterResponse
- type FakeClient
- type FakeServer
- type RPCSender
- type RPCWrapper
- type Server
Constants ¶
This section is empty.
Variables ¶
View Source
var ErrConnectionClosed = errors.New("connection closed")
View Source
var ErrInsufficientServers = errors.New("insufficient servers available")
Functions ¶
This section is empty.
Types ¶
type BroadcastWrapper ¶ added in v0.1.6
type BroadcastWrapper struct {
// contains filtered or unexported fields
}
BroadcastWrapper is a helper for when you always want to broadcast to the same servers
func NewBroadcastWrapper ¶ added in v0.1.6
func NewBroadcastWrapper(serverAddresses ...string) *BroadcastWrapper
func (*BroadcastWrapper) Broadcast ¶ added in v0.1.6
func (b *BroadcastWrapper) Broadcast(request ClusterMessage) error
func (*BroadcastWrapper) Stop ¶ added in v0.1.6
func (b *BroadcastWrapper) Stop()
type Broadcaster ¶ added in v0.1.6
type Broadcaster interface {
Broadcast(request ClusterMessage) error
Stop()
}
type Client ¶
type Client struct {
// contains filtered or unexported fields
}
func (*Client) Broadcast ¶ added in v0.1.6
func (c *Client) Broadcast(request ClusterMessage, minServers int, serverAddresses ...string) error
func (*Client) BroadcastOneWay ¶ added in v0.1.6
func (c *Client) BroadcastOneWay(request ClusterMessage, serverAddresses ...string)
func (*Client) SendRPC ¶ added in v0.1.6
func (c *Client) SendRPC(request ClusterMessage, serverAddress string) (ClusterMessage, error)
type ClusterMessage ¶
ClusterMessage protos live in protos/squareup/cash/pranadb/clustermsgs.proto
func DeserializeClusterMessage ¶
func DeserializeClusterMessage(data []byte) (ClusterMessage, error)
type ClusterMessageHandler ¶
type ClusterMessageHandler interface {
HandleMessage(clusterMessage ClusterMessage) (ClusterMessage, error)
}
type ClusterMessageType ¶
type ClusterMessageType int32
const ( ClusterMessageTypeUnknown ClusterMessageType = iota + 1 ClusterMessageDDLStatement ClusterMessageDDLCancel ClusterMessageReloadProtobuf ClusterMessageClusterProposeRequest ClusterMessageClusterProposeResponse ClusterMessageClusterReadRequest ClusterMessageClusterReadResponse ClusterMessageForwardWriteRequest ClusterMessageForwardWriteResponse ClusterMessageSourceSetMaxRate ClusterMessageLeaderInfos ClusterMessageRemotingTestMessage )
func TypeForClusterMessage ¶
func TypeForClusterMessage(clusterMessage ClusterMessage) ClusterMessageType
type ClusterRequest ¶
type ClusterRequest struct {
// contains filtered or unexported fields
}
type ClusterResponse ¶
type ClusterResponse struct {
// contains filtered or unexported fields
}
type FakeClient ¶ added in v0.1.6
type FakeClient struct {
// contains filtered or unexported fields
}
func NewFakeClient ¶ added in v0.1.6
func NewFakeClient(fakeServer *FakeServer) *FakeClient
func (*FakeClient) Broadcast ¶ added in v0.1.6
func (f *FakeClient) Broadcast(clusterMsg ClusterMessage) error
func (*FakeClient) Stop ¶ added in v0.1.6
func (f *FakeClient) Stop()
type FakeServer ¶
type FakeServer struct {
// contains filtered or unexported fields
}
func NewFakeServer ¶
func NewFakeServer() *FakeServer
func (*FakeServer) ConnectionCount ¶
func (f *FakeServer) ConnectionCount() int
func (*FakeServer) RegisterMessageHandler ¶
func (f *FakeServer) RegisterMessageHandler(clusterMsgType ClusterMessageType, listener ClusterMessageHandler)
func (*FakeServer) ServerAddresses ¶ added in v0.1.6
func (f *FakeServer) ServerAddresses() []string
func (*FakeServer) Start ¶
func (f *FakeServer) Start() error
func (*FakeServer) Stop ¶
func (f *FakeServer) Stop() error
type RPCSender ¶ added in v0.1.6
type RPCSender interface {
SendRPC(request ClusterMessage) (ClusterMessage, error)
Stop()
}
type RPCWrapper ¶ added in v0.1.6
type RPCWrapper struct {
// contains filtered or unexported fields
}
RPCWrapper is a helper for when you always want to RPC to the same server
func NewRPCWrapper ¶ added in v0.1.6
func NewRPCWrapper(serverAddress string) *RPCWrapper
func (*RPCWrapper) SendRPC ¶ added in v0.1.6
func (r *RPCWrapper) SendRPC(request ClusterMessage) (ClusterMessage, error)
func (*RPCWrapper) Stop ¶ added in v0.1.6
func (r *RPCWrapper) Stop()
type Server ¶
type Server interface {
Start() error
Stop() error
RegisterMessageHandler(messageType ClusterMessageType, listener ClusterMessageHandler)
}
Click to show internal directories.
Click to hide internal directories.