controller

package
v0.22.17 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Jan 25, 2023 License: Apache-2.0 Imports: 52 Imported by: 2

Documentation

Index

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 CertValidatingIdentity added in v0.21.21

type CertValidatingIdentity struct {
	identity.Identity
}

func (*CertValidatingIdentity) ClientTLSConfig added in v0.21.21

func (self *CertValidatingIdentity) ClientTLSConfig() *tls.Config

func (*CertValidatingIdentity) ServerTLSConfig added in v0.21.21

func (self *CertValidatingIdentity) ServerTLSConfig() *tls.Config

func (*CertValidatingIdentity) VerifyConnection added in v0.21.21

func (self *CertValidatingIdentity) VerifyConnection(state tls.ConnectionState) error

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
		}
	}
	// contains filtered or unexported fields
}

func LoadConfig

func LoadConfig(path string) (*Config, error)

func (*Config) Configure

func (config *Config) Configure(sub config.Subconfig) error

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) Identity added in v0.16.120

func (c *Controller) Identity() identity.Identity

func (*Controller) InitializeRaftFromBoltDb added in v0.22.4

func (c *Controller) InitializeRaftFromBoltDb(sourceDbPath string) error

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) 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()

func (*Controller) TryInitializeRaftFromBoltDb added in v0.22.4

func (c *Controller) TryInitializeRaftFromBoltDb() error

type CtrlOptions added in v0.17.26

type CtrlOptions struct {
	*channel.Options
	NewListener      *transport.Address
	AdvertiseAddress *transport.Address
}

CtrlOptions extends channel.Options to include support for additional, non-channel specific options (e.g. NewListener)

type OnConnectCtrlAddressesUpdateHandler added in v0.22.15

type OnConnectCtrlAddressesUpdateHandler struct {
	// contains filtered or unexported fields
}

func NewOnConnectCtrlAddressesUpdateHandler added in v0.22.15

func NewOnConnectCtrlAddressesUpdateHandler(ctrlAddress string, raft *raft.Controller) *OnConnectCtrlAddressesUpdateHandler

func (OnConnectCtrlAddressesUpdateHandler) RouterConnected added in v0.22.15

func (o OnConnectCtrlAddressesUpdateHandler) RouterConnected(r *network.Router)

func (*OnConnectCtrlAddressesUpdateHandler) RouterDisconnected added in v0.22.15

func (o *OnConnectCtrlAddressesUpdateHandler) RouterDisconnected(r *network.Router)

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)

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL