Documentation ¶
Index ¶
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func NewGrpcPlugin ¶
NewGrpcPlugin initializes a grpcPlugin
func NewInternalPlugin ¶
NewInternalPlugin returns an initialized internalPlugin
Types ¶
type BasePlugin ¶
type BasePlugin struct {
// contains filtered or unexported fields
}
BasePlugin describes a basic plugin struct
type EventHandlerPlugin ¶
EventHandlerPlugin defines an event handler plugin
type Manager ¶
type Manager struct {
// contains filtered or unexported fields
}
Manager is a PluginManager implementation
func NewManager ¶
NewManager returns an initialized Manager
func (*Manager) Add ¶
func (m *Manager) Add(plugins ...EventHandlerPlugin)
Add add an initialized plugin
func (*Manager) GetByName ¶
func (m *Manager) GetByName(name string) (EventHandlerPlugin, error)
GetByName returns a plugin by it's name
func (*Manager) GetByNames ¶
func (m *Manager) GetByNames(names ...string) (map[string]EventHandlerPlugin, error)
GetByNames returns a map of plugins by their names
type PluginConfig ¶
type PluginConfig struct { Name string `mapstructure:"name"` Type string `mapstructure:"type"` Address string `mapstructure:"address"` }
PluginConfig describes a plugin configuration
func (PluginConfig) Validate ¶
func (c PluginConfig) Validate() error
Validate validates plugin configuration
type PluginConfigs ¶
type PluginConfigs []PluginConfig
type PluginManager ¶
type PluginManager interface { Add(plugin ...EventHandlerPlugin) GetByNames(names ...string) (map[string]EventHandlerPlugin, error) GetByName(name string) (EventHandlerPlugin, error) }
PluginManager describes what a plugin manager implementation must provide
Click to show internal directories.
Click to hide internal directories.