Documentation
¶
Index ¶
- type BasePlugin
- type DefaultPluginManager
- func (pm *DefaultPluginManager) GetPlugin(name string) (Plugin, error)
- func (pm *DefaultPluginManager) ListPlugins() []Plugin
- func (pm *DefaultPluginManager) Load(path string) (Plugin, error)
- func (pm *DefaultPluginManager) StartAll() error
- func (pm *DefaultPluginManager) StopAll() error
- func (pm *DefaultPluginManager) Unload(name string) error
- type Plugin
- type PluginConfig
- type PluginManager
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type BasePlugin ¶
type BasePlugin struct {
// contains filtered or unexported fields
}
BasePlugin 基础插件实现
func NewBasePlugin ¶
func NewBasePlugin(name, version, description string) *BasePlugin
NewBasePlugin 创建基础插件
type DefaultPluginManager ¶
type DefaultPluginManager struct {
// contains filtered or unexported fields
}
DefaultPluginManager 默认插件管理器
func (*DefaultPluginManager) GetPlugin ¶
func (pm *DefaultPluginManager) GetPlugin(name string) (Plugin, error)
GetPlugin 获取插件
func (*DefaultPluginManager) ListPlugins ¶
func (pm *DefaultPluginManager) ListPlugins() []Plugin
ListPlugins 列出所有插件
func (*DefaultPluginManager) Load ¶
func (pm *DefaultPluginManager) Load(path string) (Plugin, error)
Load 加载插件
func (*DefaultPluginManager) StartAll ¶
func (pm *DefaultPluginManager) StartAll() error
StartAll 启动所有插件
func (*DefaultPluginManager) StopAll ¶
func (pm *DefaultPluginManager) StopAll() error
StopAll 停止所有插件
func (*DefaultPluginManager) Unload ¶
func (pm *DefaultPluginManager) Unload(name string) error
Unload 卸载插件
type Plugin ¶
type Plugin interface {
// Name 获取插件名称
Name() string
// Version 获取插件版本
Version() string
// Description 获取插件描述
Description() string
// Init 初始化插件
Init() error
// Start 启动插件
Start() error
// Stop 停止插件
Stop() error
// IsRunning 检查插件是否运行中
IsRunning() bool
}
Plugin 插件接口
type PluginConfig ¶
type PluginConfig struct {
Enabled bool `json:"enabled"`
Dir string `json:"dir"`
Plugins []string `json:"plugins"`
}
PluginConfig 插件配置
type PluginManager ¶
type PluginManager interface {
// Load 加载插件
Load(path string) (Plugin, error)
// Unload 卸载插件
Unload(name string) error
// GetPlugin 获取插件
GetPlugin(name string) (Plugin, error)
// ListPlugins 列出所有插件
ListPlugins() []Plugin
// StartAll 启动所有插件
StartAll() error
// StopAll 停止所有插件
StopAll() error
}
PluginManager 插件管理器接口
func NewPluginManager ¶
func NewPluginManager(config PluginConfig) PluginManager
NewPluginManager 创建插件管理器
Click to show internal directories.
Click to hide internal directories.