Documentation
¶
Index ¶
- Constants
- func Drivers() []string
- func InitGateway(ctx context.Context, clusterId string, client IClientDriver) (err error)
- func Register(name string, factory IFactory)
- func RegisterDynamicResourceDriver(key string, worker Worker)
- func RegisterInitHandleFunc(handleFunc InitHandleFunc)
- func RegisterInitHandler(handle InitHandler)
- type ApiRelease
- type ApplicationRelease
- type AuthConfig
- type Authorization
- type BasicItem
- type ClientConfig
- type DynamicRelease
- type FactoryManager
- type HashRelease
- type IApplicationClient
- type IClientDriver
- type IDynamicClient
- type IFactory
- type IFactoryManager
- type IHashClient
- type IPluginSetting
- type IProjectClient
- type IResourceClient
- type IServiceClient
- type IStrategyClient
- type ISubscribeClient
- type InitHandleFunc
- type InitHandler
- type MatchRule
- type Plugin
- type PluginConfig
- type ProjectRelease
- type ProxyHeader
- type ServiceRelease
- type StrategyRelease
- type SubscribeRelease
- type UpstreamRelease
- type Worker
Constants ¶
View Source
const ( ProfessionOutput = "output" ProfessionCertificate = "certificate" ProfessionRouter = "router" ProfessionApplication = "app" ProfessionStrategy = "strategy" ProfessionService = "service" ProfessionAIProvider = "ai-provider" ProfessionAIResource = "ai-resource" )
View Source
const KeyServiceMapping = "service_mapping"
Variables ¶
This section is empty.
Functions ¶
func InitGateway ¶
func InitGateway(ctx context.Context, clusterId string, client IClientDriver) (err error)
func RegisterInitHandleFunc ¶
func RegisterInitHandleFunc(handleFunc InitHandleFunc)
func RegisterInitHandler ¶
func RegisterInitHandler(handle InitHandler)
Types ¶
type ApiRelease ¶
type ApplicationRelease ¶
type ApplicationRelease struct {
*BasicItem
Labels map[string]string
Authorizations []*Authorization
}
type AuthConfig ¶
type Authorization ¶
type ClientConfig ¶
type ClientConfig struct {
// 请求地址列表
Addresses []string
// 认证配置
Auth *AuthConfig
}
type DynamicRelease ¶
func (*DynamicRelease) UnmarshalJSON ¶
func (d *DynamicRelease) UnmarshalJSON(bytes []byte) error
type FactoryManager ¶
type FactoryManager struct {
// contains filtered or unexported fields
}
func (*FactoryManager) Drivers ¶
func (f *FactoryManager) Drivers() []string
func (*FactoryManager) GetClient ¶
func (f *FactoryManager) GetClient(name string, config *ClientConfig) (IClientDriver, error)
func (*FactoryManager) Set ¶
func (f *FactoryManager) Set(name string, factory IFactory)
type HashRelease ¶
type IApplicationClient ¶
type IApplicationClient IResourceClient[ApplicationRelease]
type IClientDriver ¶
type IClientDriver interface {
Project() IProjectClient
Application() IApplicationClient
Service() IServiceClient
Subscribe() ISubscribeClient
Strategy() IStrategyClient
Dynamic(resource string, profession string) (IDynamicClient, error)
Hash() IHashClient
PluginSetting() IPluginSetting
Commit(ctx context.Context) error
Rollback(ctx context.Context) error
Begin(ctx context.Context) error
Close(ctx context.Context) error
}
func GetClient ¶
func GetClient(name string, config *ClientConfig) (IClientDriver, error)
type IDynamicClient ¶
type IFactory ¶
type IFactory interface {
Create(config *ClientConfig) (IClientDriver, error)
}
type IFactoryManager ¶
type IFactoryManager interface {
Set(name string, factory IFactory)
GetClient(name string, config *ClientConfig) (IClientDriver, error)
Drivers() []string
}
func NewFactoryManager ¶
func NewFactoryManager() IFactoryManager
type IHashClient ¶
type IHashClient IResourceClient[HashRelease]
type IPluginSetting ¶
type IProjectClient ¶
type IProjectClient IResourceClient[ProjectRelease]
type IResourceClient ¶
type IServiceClient ¶
type IServiceClient IResourceClient[ServiceRelease]
type IStrategyClient ¶
type IStrategyClient IResourceClient[eosc.Base[StrategyRelease]]
type ISubscribeClient ¶
type ISubscribeClient IResourceClient[SubscribeRelease]
type InitHandleFunc ¶
type InitHandleFunc func(ctx context.Context, clusterId string, client IClientDriver) error
func (InitHandleFunc) Init ¶
func (f InitHandleFunc) Init(ctx context.Context, clusterId string, client IClientDriver) error
type InitHandler ¶
type InitHandler interface {
Init(ctx context.Context, clusterId string, client IClientDriver) error
}
type Plugin ¶
type Plugin struct {
Disable bool
Config plugin_model.ConfigType
}
type PluginConfig ¶
type ProjectRelease ¶
type ProjectRelease struct {
Id string `json:"id"`
Version string `json:"version"`
Apis []*ApiRelease `json:"apis"`
Upstream *UpstreamRelease `json:"upstreams"`
Strategies []*eosc.Base[StrategyRelease] `json:"strategies"`
}
type ProxyHeader ¶
type ServiceRelease ¶
type StrategyRelease ¶
type SubscribeRelease ¶
type UpstreamRelease ¶
Click to show internal directories.
Click to hide internal directories.