plugin.go 1.0 KB
Newer Older
Y
Your Name 已提交
1
package pluginentity
E
eoLinker API Management 已提交
2

Y
Your Name 已提交
3 4
//GlobalPlugin 全局插件
var GlobalPlugin = make(map[string]*Plugin)
E
eoLinker API Management 已提交
5

Y
Your Name 已提交
6
//Plugin 插件
E
eoLinker API Management 已提交
7 8 9 10 11 12 13 14 15 16
type Plugin struct {
	PluginID     int    `json:"pluginID"`
	PluginName   string `json:"pluginName"`
	PluginStatus int    `json:"pluginStatus"`
	PluginIndex  int    `json:"pluginPriority"`
	PluginConfig string `json:"pluginConfig"`
	PluginInfo   string `json:"pluginInfo"`
	IsStop       int    `json:"isStop"`
}

Y
Your Name 已提交
17
//PluginParams pluginParams
E
eoLinker API Management 已提交
18 19 20 21 22
type PluginParams struct {
	PluginName   string `json:"pluginName"`
	PluginConfig string `json:"pluginConfig"`
	PluginIndex  int    `json:"pluginPriority"`
	//PluginInfo   string `json:"pluginInfo"`
Y
Your Name 已提交
23
	IsStop int `json:"isStop"`
E
eoLinker API Management 已提交
24 25
}

Y
Your Name 已提交
26
//PluginSlice 插件切片
E
eoLinker API Management 已提交
27 28 29 30 31 32 33 34 35 36 37
type PluginSlice []*Plugin

func (p PluginSlice) Len() int { // 重写 Len() 方法
	return len(p)
}
func (p PluginSlice) Swap(i, j int) { // 重写 Swap() 方法
	p[i], p[j] = p[j], p[i]
}
func (p PluginSlice) Less(i, j int) bool { // 重写 Less() 方法, 从小到大排序
	return p[i].PluginIndex < p[j].PluginIndex
}