Documentation ¶
Index ¶
- Constants
- func ConfigIocObject(req *LoadConfigRequest) error
- func DevelopmentSetup()
- func GetIocObjectUid(obj Object) (name, version string)
- func InitIocObject() error
- func LoadGinApi(pathPrefix string, root gin.IRouter)
- func LoadGoRestfulApi(pathPrefix string, root *restful.Container)
- func LoadGrpcController(server *grpc.Server)
- func ObjectUid(o *ObjectWrapper) string
- func RegistryApi(obj Object)
- func RegistryController(obj Object)
- func RegistryObjectWithNs(namespace string, obj Object)
- func ValidateFileType(ext string) error
- type ConfigEnv
- type ConfigFile
- type GRPCControllerObject
- type GetOption
- type GinApiObject
- type GoRestfulApiObject
- type InjectTag
- type LoadConfigRequest
- type NamespaceStore
- func (i *NamespaceStore) Autowire() error
- func (s *NamespaceStore) Close(ctx context.Context) error
- func (s *NamespaceStore) First() Object
- func (s *NamespaceStore) ForEach(fn func(*ObjectWrapper))
- func (s *NamespaceStore) Get(name string, opts ...GetOption) Object
- func (s *NamespaceStore) ImplementInterface(objType reflect.Type, opts ...GetOption) (objs []Object)
- func (s *NamespaceStore) Init() error
- func (s *NamespaceStore) Last() Object
- func (s *NamespaceStore) Len() int
- func (s *NamespaceStore) Less(i, j int) bool
- func (s *NamespaceStore) List() (uids []string)
- func (s *NamespaceStore) Load(target any, opts ...GetOption) error
- func (i *NamespaceStore) LoadFromEnv(prefix string) error
- func (i *NamespaceStore) LoadFromFile(filename string) error
- func (s *NamespaceStore) Registry(v Object)
- func (s *NamespaceStore) SetPriority(v int) *NamespaceStore
- func (s *NamespaceStore) Sort()
- func (s *NamespaceStore) Swap(i, j int)
- type Object
- type ObjectImpl
- type ObjectWrapper
- type StoreManage
- type StoreUser
- type Stroe
Constants ¶
View Source
const (
API_NAMESPACE = "apis"
)
View Source
const (
CONFIG_NAMESPACE = "configs"
)
View Source
const (
CONTROLLER_NAMESPACE = "controllers"
)
View Source
const (
DEFAULT_NAMESPACE = "default"
)
View Source
const (
DEFAULT_VERSION = "v1"
)
Variables ¶
This section is empty.
Functions ¶
func ConfigIocObject ¶ added in v1.9.20
func ConfigIocObject(req *LoadConfigRequest) error
func DevelopmentSetup ¶ added in v1.9.25
func DevelopmentSetup()
func GetIocObjectUid ¶ added in v1.9.26
func InitIocObject ¶
func InitIocObject() error
func LoadGoRestfulApi ¶
func LoadGoRestfulApi(pathPrefix string, root *restful.Container)
LoadHttpApp 装载所有的http app
func ObjectUid ¶ added in v1.9.17
func ObjectUid(o *ObjectWrapper) string
func ValidateFileType ¶ added in v1.9.20
Types ¶
type ConfigFile ¶ added in v1.9.20
type GRPCControllerObject ¶
GRPCService GRPC服务的实例
type GinApiObject ¶
type GoRestfulApiObject ¶
type GoRestfulApiObject interface { Object Registry(*restful.WebService) }
type InjectTag ¶ added in v1.9.26
type InjectTag struct { // 是否自动注入 Autowire bool // 空间 Namespace string // 注入对象的名称 Name string // 注入对象的版本, 默认v1 Version string }
func NewInjectTag ¶ added in v1.9.26
func NewInjectTag() *InjectTag
type LoadConfigRequest ¶ added in v1.9.20
type LoadConfigRequest struct { // 环境变量配置 ConfigEnv *ConfigEnv // 文件配置方式 ConfigFile *ConfigFile }
func NewLoadConfigRequest ¶ added in v1.9.20
func NewLoadConfigRequest() *LoadConfigRequest
type NamespaceStore ¶ added in v1.9.20
type NamespaceStore struct { // 空间名称 Namespace string // 空间优先级 Priority int // 空间对象列表 Items []*ObjectWrapper }
func (*NamespaceStore) Autowire ¶ added in v1.9.26
func (i *NamespaceStore) Autowire() error
从环境变量中加载对象配置
func (*NamespaceStore) Close ¶ added in v1.9.20
func (s *NamespaceStore) Close(ctx context.Context) error
func (*NamespaceStore) ForEach ¶ added in v1.9.20
func (s *NamespaceStore) ForEach(fn func(*ObjectWrapper))
func (*NamespaceStore) Get ¶ added in v1.9.20
func (s *NamespaceStore) Get(name string, opts ...GetOption) Object
func (*NamespaceStore) ImplementInterface ¶ added in v1.9.26
func (s *NamespaceStore) ImplementInterface(objType reflect.Type, opts ...GetOption) (objs []Object)
寻找实现了接口的对象
func (*NamespaceStore) Init ¶ added in v1.9.20
func (s *NamespaceStore) Init() error
func (*NamespaceStore) Len ¶ added in v1.9.20
func (s *NamespaceStore) Len() int
func (*NamespaceStore) Less ¶ added in v1.9.20
func (s *NamespaceStore) Less(i, j int) bool
func (*NamespaceStore) List ¶ added in v1.9.26
func (s *NamespaceStore) List() (uids []string)
func (*NamespaceStore) Load ¶ added in v1.9.26
func (s *NamespaceStore) Load(target any, opts ...GetOption) error
根据对象对象加载对象
func (*NamespaceStore) LoadFromEnv ¶ added in v1.9.20
func (i *NamespaceStore) LoadFromEnv(prefix string) error
从环境变量中加载对象配置
func (*NamespaceStore) LoadFromFile ¶ added in v1.9.20
func (i *NamespaceStore) LoadFromFile(filename string) error
func (*NamespaceStore) Registry ¶ added in v1.9.20
func (s *NamespaceStore) Registry(v Object)
func (*NamespaceStore) SetPriority ¶ added in v1.9.20
func (s *NamespaceStore) SetPriority(v int) *NamespaceStore
func (*NamespaceStore) Swap ¶ added in v1.9.20
func (s *NamespaceStore) Swap(i, j int)
type Object ¶ added in v1.9.19
type Object interface { // 对象初始化 Init() error // 对象的名称 Name() string // 对象版本 Version() string // 对象优先级 Priority() int // 对象的销毁 Close(ctx context.Context) error // 是否允许同名对象被替换, 默认不允许被替换 AllowOverwrite() bool }
Object 内部服务实例, 不需要暴露
type ObjectImpl ¶ added in v1.9.20
type ObjectImpl struct { }
func (*ObjectImpl) AllowOverwrite ¶ added in v1.9.20
func (i *ObjectImpl) AllowOverwrite() bool
func (*ObjectImpl) Init ¶ added in v1.9.20
func (i *ObjectImpl) Init() error
func (*ObjectImpl) Name ¶ added in v1.9.20
func (i *ObjectImpl) Name() string
func (*ObjectImpl) Priority ¶ added in v1.9.20
func (i *ObjectImpl) Priority() int
func (*ObjectImpl) Version ¶ added in v1.9.20
func (i *ObjectImpl) Version() string
type ObjectWrapper ¶ added in v1.9.26
type ObjectWrapper struct { Name string Version string AllowOverwrite bool Priority int Value Object }
func NewObjectWrapper ¶ added in v1.9.26
func NewObjectWrapper(obj Object) *ObjectWrapper
type StoreManage ¶ added in v1.9.20
type StoreUser ¶ added in v1.9.20
type Stroe ¶ added in v1.9.20
type Stroe interface { StoreUser StoreManage }
Source Files ¶
Click to show internal directories.
Click to hide internal directories.