Documentation
¶
Overview ¶
@Author: Ciusyan 2023/1/28
@Author: Ciusyan 2023/1/28
@Author: Ciusyan 2023/1/28
@Author: Ciusyan 2023/1/28
Index ¶
- func ExistingGinDependencies() (apps []string)
- func ExistingGrpcDependencies() (apps []string)
- func ExistingInternalDependencies() (apps []string)
- func GinDI(dependency GinDependency)
- func GrpcDI(dependency GrpcDependency)
- func InitAllDependencies() error
- func InternalDI(dependency InternalDependency)
- func RegistryGin(prefix string, r gin.IRouter)
- func RegistryGrpc(s *grpc.Server)
- type GinDependency
- type GrpcDependency
- type InternalDependency
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func ExistingGinDependencies ¶
func ExistingGinDependencies() (apps []string)
ExistingGinDependencies 返回Gin HTTP服务依赖的容器中已存在的依赖名称
func ExistingGrpcDependencies ¶
func ExistingGrpcDependencies() (apps []string)
ExistingGrpcDependencies 返回GRPC服务依赖的容器中已存在的依赖名称
func ExistingInternalDependencies ¶
func ExistingInternalDependencies() (apps []string)
ExistingInternalDependencies 返回内部服务依赖的容器中已存在的依赖名称
func GrpcDI ¶
func GrpcDI(dependency GrpcDependency)
GrpcDI :将依赖注入此容器,Grpc DI(Grpc Dependency Inject)
func InternalDI ¶
func InternalDI(dependency InternalDependency)
InternalDI :将依赖注入此容器,Internal DI(Internal Dependency Inject)
Types ¶
type GinDependency ¶
type GinDependency interface { InternalDependency // Registry 该模块所需要注册的路由 Registry(r gin.IRouter) // Version 该服务API的版本 Version() string }
GinDependency Gin HTTP的服务实例想要注入此容器,必须实现该接口
func GetGinDependency ¶
func GetGinDependency(name string) GinDependency
GetGinDependency 根据模块名称 获取内部服务模块的依赖,外部使用时需自己断言,如:
userGin = ioc.GetGinDependency("user").(user.UserGin)
type GrpcDependency ¶
type GrpcDependency interface { InternalDependency // Registry 该模块所需要注册的GRPC服务 Registry(s *grpc.Server) }
GrpcDependency GRPC 服务的实例想要注入此容器,必须实现该接口
func GetGrpcDependency ¶
func GetGrpcDependency(name string) GrpcDependency
GetGrpcDependency 根据模块名称 获取GRPC服务模块的依赖,外部使用时需自己断言,如:
userGrpc = ioc.GetGrpcDependency("user").(user.UserGrpc)
type InternalDependency ¶
type InternalDependency interface { // Init 如何初始化注入此 IoC 的实例 Init() error // Name 注入服务模块的名称 Name() string }
InternalDependency 内部服务的实例想要注入此容器,必须实现该接口
func GetInternalDependency ¶
func GetInternalDependency(name string) InternalDependency
GetInternalDependency 根据模块名称 获取Gin HTTP服务模块的依赖,外部使用时需自己断言,如:
userService = ioc.GetInternalDependency("user").(user.Service)