Module  java.desktop

Interface BeanContextServiceProvider

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


    public interface BeanContextServiceProvider

    BeanContext的主要功能之一就是作为JavaBeans和BeanContextServiceProviders之间的会合。

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

    如果这样的服务已被注册到上下文或其嵌套上下文之一,则在上下文委托到其上下文以满足服务请求的情况下,则要求与服务相关联的BeanContextServiceProvider提供该服务的实例。

    ServcieProvider可能总是返回相同的实例,或者可以为每个请求构造一个新的实例。

    • 方法详细信息

      • getService

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