plugin_manager

package
v0.5.1 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Feb 14, 2022 License: Apache-2.0 Imports: 11 Imported by: 0

Documentation

Index

Constants

View Source
const (
	StatusDisable = "disable"
	StatusEnable  = "enable"
	StatusGlobal  = "global"
)

Variables

View Source
var (
	ErrorDriverNotExit             = errors.New("drive not exit")
	ErrorGlobalPluginMastConfig    = errors.New("global must have config")
	ErrorGlobalPluginConfigInvalid = errors.New("invalid global config")
)

Functions

func Register

func Register(register eosc.IExtenderDriverRegister)

Types

type Plugin

type Plugin struct {
	*PluginConfig
	// contains filtered or unexported fields
}

type PluginConfig

type PluginConfig struct {
	Name       string                 `json:"name"`
	ID         string                 `json:"id"`
	Type       string                 `json:"type"`
	Status     string                 `json:"status"`
	Config     interface{}            `json:"config"`
	InitConfig map[string]interface{} `json:"init_config"`
}

PluginConfig 全局插件配置

type PluginFactory

type PluginFactory struct {
}

func NewPluginFactory

func NewPluginFactory() *PluginFactory

func (*PluginFactory) Check

func (p *PluginFactory) Check(v interface{}, workers map[eosc.RequireId]interface{}) error

func (*PluginFactory) Create

func (p *PluginFactory) Create(profession string, name string, label string, desc string, params map[string]interface{}) (eosc.IExtenderDriver, error)

type PluginManager

type PluginManager struct {
	// contains filtered or unexported fields
}

func NewPluginManager

func NewPluginManager(profession, name string) *PluginManager

func (*PluginManager) Check

func (p *PluginManager) Check(conf interface{}) error

func (*PluginManager) CheckSkill

func (p *PluginManager) CheckSkill(skill string) bool

func (*PluginManager) ConfigType

func (p *PluginManager) ConfigType() reflect.Type

func (*PluginManager) Create

func (p *PluginManager) Create(id, name string, v interface{}, workers map[eosc.RequireId]interface{}) (eosc.IWorker, error)

func (*PluginManager) CreateRouter

func (p *PluginManager) CreateRouter(id string, conf map[string]*plugin.Config) plugin.IPlugin

func (*PluginManager) CreateService

func (p *PluginManager) CreateService(id string, conf map[string]*plugin.Config) plugin.IPlugin

func (*PluginManager) CreateUpstream

func (p *PluginManager) CreateUpstream(id string, conf map[string]*plugin.Config) plugin.IPlugin

func (*PluginManager) Id

func (p *PluginManager) Id() string

func (*PluginManager) IsExists

func (p *PluginManager) IsExists(id string) bool

func (*PluginManager) Reset

func (p *PluginManager) Reset(conf interface{}, workers map[eosc.RequireId]interface{}) error

func (*PluginManager) Start

func (p *PluginManager) Start() error

func (*PluginManager) Stop

func (p *PluginManager) Stop() error

type PluginObj

type PluginObj struct {
	filter.IChainHandler
	// contains filtered or unexported fields
}

func NewPluginObj

func NewPluginObj(handler filter.IChainHandler, id string, filterType string, conf map[string]*plugin.Config, manager eosc.IUntyped) *PluginObj

func (*PluginObj) Destroy

func (p *PluginObj) Destroy()

type PluginWorkerConfig

type PluginWorkerConfig struct {
	Plugins []*PluginConfig
}

type Plugins

type Plugins []*Plugin

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL