Documentation ¶
Overview ¶
Package rpc defines "RPC" flavor, which combines all plugins that provide RPC-like access.
Index ¶
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func NewAgent ¶ added in v1.0.7
NewAgent returns a new instance of the Agent with plugins. It is an alias for core.NewAgent() to implicit use of the FlavorRPC
func WithPlugins ¶ added in v1.0.7
func WithPlugins(listPlugins func(local *FlavorRPC) []*core.NamedPlugin) core.WithPluginsOpt
WithPlugins for adding custom plugins to SFC Controller <listPlugins> is a callback that uses flavor input to inject dependencies for custom plugins that are in output
Example:
NewAgent(rpc.WithPlugins(func(flavor) { return []*core.NamedPlugin{{"my-plugin", &MyPlugin{DependencyXY: &flavor.GRPC}}} }))
Types ¶
type FlavorRPC ¶
type FlavorRPC struct { *local.FlavorLocal HTTP rest.Plugin //TODO GRPC (& enable/disable using config) HTTPProbe rest.ForkPlugin HealthRPC probe.Plugin PrometheusRPC probe.PrometheusPlugin GRPC grpc.Plugin // contains filtered or unexported fields }
FlavorRPC glues together multiple plugins that provide RPC-like access. They are typically used to enable remote management for other plugins.
func (*FlavorRPC) Plugins ¶
func (f *FlavorRPC) Plugins() []*core.NamedPlugin
Plugins combines all Plugins in flavor to the list.
Click to show internal directories.
Click to hide internal directories.