Files
engine/config.go
2020-03-15 19:57:57 +08:00

39 lines
911 B
Go

package engine
import "log"
const (
PLUGIN_NONE = 0 //独立插件
PLUGIN_SUBSCRIBER = 1 //订阅者插件
PLUGIN_PUBLISHER = 1 << 1 //发布者插件
PLUGIN_HOOK = 1 << 2 //钩子插件
)
// Plugins 所有的插件配置
var Plugins = make(map[string]*PluginConfig)
//PluginConfig 插件配置定义
type PluginConfig struct {
Name string //插件名称
Type byte //类型
Config interface{} //插件配置
UI string //界面路径
Version string //插件版本
Run func() //插件启动函数
}
// InstallPlugin 安装插件
func InstallPlugin(opt *PluginConfig) {
log.Printf("install plugin %s version: %s", opt.Name, opt.Version)
Plugins[opt.Name] = opt
}
// ListenerConfig 带有监听地址端口的插件配置类型
type ListenerConfig struct {
ListenAddr string
}
var config = &struct {
EnableWaitRoom bool
}{true}