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) (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.