Skip to content

class ServiceProvider

cangjie
public class ServiceProvider <: IServiceProvider & Resource

功能:表示根服务提供者并负责解析服务实例。

父类型:

func get(TypeInfo)

cangjie
public func get(serviceType: TypeInfo): ?Any

功能:按运行时类型解析服务。

参数:

  • serviceType: TypeInfo - 要解析的服务类型。

返回值:

  • ?Any - 解析得到的服务实例;未注册时返回 None

异常:

  • UnsupportedException - 当服务提供者已关闭时抛出。

func get(String, TypeInfo)

cangjie
public func get(serviceKey: String, serviceType: TypeInfo): ?Any

功能:按服务键和运行时类型解析服务。

参数:

  • serviceKey: String - 要解析的服务键。
  • serviceType: TypeInfo - 要解析的服务类型。

返回值:

  • ?Any - 解析得到的服务实例;未注册时返回 None

异常:

  • UnsupportedException - 当服务提供者已关闭时抛出。

func close()

cangjie
public func close(): Unit

功能:关闭当前服务提供者并释放已捕获的资源。

func isClosed()

cangjie
public func isClosed(): Bool

功能:检查当前服务提供者是否已关闭。

返回值:

  • Bool - 如果服务提供者已关闭则返回 true,否则返回 false

func createScope()

cangjie
public func createScope(): IServiceScope

功能:基于当前根容器创建一个新的作用域。

返回值:

异常:

  • UnsupportedException - 当服务提供者已关闭时抛出。