模块  java.desktop

Interface BeanContextServiceProvider

  • 所有已知实现类:
    BeanContextServicesSupport.BCSSProxyServiceProvider

    public interface BeanContextServiceProvider

    BeanContext的主要功能之一是充当JavaBeans和BeanContextServiceProviders之间的集合点。

    嵌套在BeanContext中的JavaBean可以要求BeanContext基于对表示该服务的Java类对象的引用来提供“服务”的实例。

    如果已经向上下文或其嵌套上下文之一注册了此类服务,则在上下文委托其上下文满足服务请求的情况下,则要求与该服务关联的BeanContextServiceProvider提供该服务的实例。

    ServcieProvider可以始终返回相同的实例,也可以为每个请求构造一个新实例。

    • 方法详细信息

      • getService

        Object getService​(BeanContextServices bcs,
                          Object requestor,
                          <?> serviceClass,
                          Object serviceSelector)
        通过调用 BeanContextServices ,该方法从这个请求服务的实例 BeanContextServiceProvider
        参数
        bcs - 与此特定请求关联的BeanContextServices 此参数使BeanContextServiceProvider能够区分来自多个源的服务请求。
        requestor - 请求服务的对象
        serviceClass - 请求的服务
        serviceSelector - 特定服务的服务相关参数,如果不适用, null
        结果
        对所请求服务的引用
      • releaseService

        void releaseService​(BeanContextServices bcs,
                            Object requestor,
                            Object service)
        该方法由 BeanContextServices调用,释放嵌套的 BeanContextChild (或与 BeanContextChild相关联的任意对象)对指定服务的引用。
        参数
        bcs - 与此特定版本请求关联的 BeanContextServices
        requestor - 请求释放服务的对象
        service - 要发布的服务
      • getCurrentServiceSelectors

        Iterator<?> getCurrentServiceSelectors​(BeanContextServices bcs,
                                               <?> serviceClass)
        该方法由BeanContextServices调用,获取指定服务的当前服务选择器。 服务选择器是特定于服务的参数,其典型示例可以包括:服务实现类的构造函数的参数,特定服务的属性的值,或现有实现的映射的键。
        参数
        bcs - 此请求的 BeanContextServices
        serviceClass - 指定的服务
        结果
        the current service selectors for the specified serviceClass