Documentation ¶
Index ¶
- Constants
- type Config
- type Controller
- func (c *Controller) GetCloseNotify() <-chan struct{}
- func (c *Controller) GetCloseNotifyChannel() <-chan struct{}
- func (c *Controller) GetCommandDispatcher() command.Dispatcher
- func (c *Controller) GetDb() boltz.Db
- func (c *Controller) GetEventDispatcher() event.Dispatcher
- func (c *Controller) GetId() *identity.TokenId
- func (c *Controller) GetMetricsRegistry() metrics.Registry
- func (c *Controller) GetNetwork() *network.Network
- func (c *Controller) GetOptions() *network.Options
- func (c *Controller) GetVersionProvider() versions.VersionProvider
- func (c *Controller) GetXWebInstance() xweb.Instance
- func (self *Controller) HandleCustomAgentAsyncOp(conn net.Conn) error
- func (self *Controller) HandleCustomAgentOp(conn net.Conn) error
- func (c *Controller) Identity() identity.Identity
- func (c *Controller) IsRaftEnabled() bool
- func (self *Controller) RegisterAgentBindHandler(bindHandler channel.BindHandler)
- func (self *Controller) RegisterAgentOpHandler(opId byte, f func(c *bufio.ReadWriter) error)
- func (c *Controller) RegisterXctrl(x xctrl.Xctrl) error
- func (c *Controller) RegisterXmgmt(x xmgmt.Xmgmt) error
- func (c *Controller) Run() error
- func (c *Controller) Shutdown()
- type CtrlOptions
- type OnConnectSettingsHandler
Constants ¶
View Source
const ( AgentAppId byte = 1 AgentIdHeader = 10 AgentAddrHeader = 11 AgentIsVoterHeader = 12 )
View Source
const ( DefaultProfileMemoryInterval = 15 * time.Second DefaultHealthChecksBoltCheckInterval = 30 * time.Second DefaultHealthChecksBoltCheckTimeout = 20 * time.Second DefaultHealthChecksBoltCheckInitialDelay = 30 * time.Second DefaultRaftCommandHandlerMaxQueueSize = 1000 DefaultRaftCommandHandlerMaxWorkers = 10 )
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type Config ¶
type Config struct { Id *identity.TokenId Raft *raft.Config Network *network.Options Db boltz.Db Trace struct { Handler *channel.TraceHandler } Profile struct { Memory struct { Path string Interval time.Duration } CPU struct { Path string } } Ctrl struct { Listener transport.Address Options *CtrlOptions } HealthChecks struct { BoltCheck struct { Interval time.Duration Timeout time.Duration InitialDelay time.Duration } } SyncRaftToDb bool // contains filtered or unexported fields }
func LoadConfig ¶
type Controller ¶
type Controller struct {
// contains filtered or unexported fields
}
func NewController ¶
func NewController(cfg *Config, versionProvider versions.VersionProvider) (*Controller, error)
func (*Controller) GetCloseNotify ¶ added in v0.18.0
func (c *Controller) GetCloseNotify() <-chan struct{}
func (*Controller) GetCloseNotifyChannel ¶ added in v0.16.9
func (c *Controller) GetCloseNotifyChannel() <-chan struct{}
func (*Controller) GetCommandDispatcher ¶ added in v0.18.0
func (c *Controller) GetCommandDispatcher() command.Dispatcher
func (*Controller) GetDb ¶ added in v0.18.0
func (c *Controller) GetDb() boltz.Db
func (*Controller) GetEventDispatcher ¶ added in v0.19.28
func (c *Controller) GetEventDispatcher() event.Dispatcher
func (*Controller) GetId ¶ added in v0.18.0
func (c *Controller) GetId() *identity.TokenId
func (*Controller) GetMetricsRegistry ¶ added in v0.18.0
func (c *Controller) GetMetricsRegistry() metrics.Registry
func (*Controller) GetNetwork ¶
func (c *Controller) GetNetwork() *network.Network
func (*Controller) GetOptions ¶ added in v0.18.0
func (c *Controller) GetOptions() *network.Options
func (*Controller) GetVersionProvider ¶ added in v0.18.0
func (c *Controller) GetVersionProvider() versions.VersionProvider
func (*Controller) GetXWebInstance ¶ added in v0.18.1
func (c *Controller) GetXWebInstance() xweb.Instance
func (*Controller) HandleCustomAgentAsyncOp ¶ added in v0.18.0
func (self *Controller) HandleCustomAgentAsyncOp(conn net.Conn) error
func (*Controller) HandleCustomAgentOp ¶ added in v0.17.62
func (self *Controller) HandleCustomAgentOp(conn net.Conn) error
func (*Controller) Identity ¶ added in v0.16.120
func (c *Controller) Identity() identity.Identity
func (*Controller) IsRaftEnabled ¶ added in v0.19.48
func (c *Controller) IsRaftEnabled() bool
func (*Controller) RegisterAgentBindHandler ¶ added in v0.18.0
func (self *Controller) RegisterAgentBindHandler(bindHandler channel.BindHandler)
func (*Controller) RegisterAgentOpHandler ¶ added in v0.18.0
func (self *Controller) RegisterAgentOpHandler(opId byte, f func(c *bufio.ReadWriter) error)
func (*Controller) RegisterXctrl ¶
func (c *Controller) RegisterXctrl(x xctrl.Xctrl) error
func (*Controller) RegisterXmgmt ¶
func (c *Controller) RegisterXmgmt(x xmgmt.Xmgmt) error
func (*Controller) Run ¶
func (c *Controller) Run() error
func (*Controller) Shutdown ¶
func (c *Controller) Shutdown()
type CtrlOptions ¶ added in v0.17.26
type CtrlOptions struct { *channel.Options NewListener *transport.Address }
CtrlOptions extends channel.Options to include support for additional, non-channel specific options (e.g. NewListener)
type OnConnectSettingsHandler ¶ added in v0.17.26
type OnConnectSettingsHandler struct {
// contains filtered or unexported fields
}
OnConnectSettingsHandler sends a ctrl_pb.ContentType_SettingsType message when routers connect if necessary Settings are a map of int32 -> []byte data. The type should be used to determine how the setting's []byte array is consumed.
func (OnConnectSettingsHandler) RouterConnected ¶ added in v0.17.26
func (o OnConnectSettingsHandler) RouterConnected(r *network.Router)
func (*OnConnectSettingsHandler) RouterDisconnected ¶ added in v0.17.26
func (o *OnConnectSettingsHandler) RouterDisconnected(r *network.Router)
Click to show internal directories.
Click to hide internal directories.