Module java.desktop

Interface BeanContextServices

    • Method Detail

      • addService

        boolean addService​(Class<?> serviceClass,
                           BeanContextServiceProvider serviceProvider)
        Adds a service to this BeanContext. BeanContextServiceProviders call this method to register a particular service with this context. If the service has not previously been added, the BeanContextServices associates the service with the BeanContextServiceProvider and fires a BeanContextServiceAvailableEvent to all currently registered BeanContextServicesListeners. The method then returns true, indicating that the addition of the service was successful. If the given service has already been added, this method simply returns false.
        Parameters:
        serviceClass - the service to add
        serviceProvider - the BeanContextServiceProvider associated with the service
        Returns:
        true if the service was successful added, false otherwise
      • revokeService

        void revokeService​(Class<?> serviceClass,
                           BeanContextServiceProvider serviceProvider,
                           boolean revokeCurrentServicesNow)
        BeanContextServiceProviders wishing to remove a currently registered service from this context may do so via invocation of this method. Upon revocation of the service, the BeanContextServices fires a BeanContextServiceRevokedEvent to its list of currently registered BeanContextServiceRevokedListeners and BeanContextServicesListeners.
        Parameters:
        serviceClass - the service to revoke from this BeanContextServices
        serviceProvider - the BeanContextServiceProvider associated with this particular service that is being revoked
        revokeCurrentServicesNow - a value of true indicates an exceptional circumstance where the BeanContextServiceProvider or BeanContextServices wishes to immediately terminate service to all currently outstanding references to the specified service.
      • hasService

        boolean hasService​(Class<?> serviceClass)
        Reports whether or not a given service is currently available from this context.
        Parameters:
        serviceClass - the service in question
        Returns:
        true if the service is available
      • getService

        Object getService​(BeanContextChild child,
                          Object requestor,
                          Class<?> serviceClass,
                          Object serviceSelector,
                          BeanContextServiceRevokedListener bcsrl)
                   throws TooManyListenersException
        A BeanContextChild, or any arbitrary object associated with a BeanContextChild, may obtain a reference to a currently registered service from its nesting BeanContextServices via invocation of this method. When invoked, this method gets the service by calling the getService() method on the underlying BeanContextServiceProvider.
        Parameters:
        child - the BeanContextChild associated with this request
        requestor - the object requesting the service
        serviceClass - class of the requested service
        serviceSelector - the service dependent parameter
        bcsrl - the BeanContextServiceRevokedListener to notify if the service should later become revoked
        Returns:
        a reference to this context's named Service as requested or null
        Throws:
        TooManyListenersException - if there are too many listeners
      • releaseService

        void releaseService​(BeanContextChild child,
                            Object requestor,
                            Object service)
        Releases a BeanContextChild's (or any arbitrary object associated with a BeanContextChild) reference to the specified service by calling releaseService() on the underlying BeanContextServiceProvider.
        Parameters:
        child - the BeanContextChild
        requestor - the requestor
        service - the service
      • getCurrentServiceClasses

        Iterator<?> getCurrentServiceClasses()
        Gets the currently available services for this context.
        Returns:
        an Iterator consisting of the currently available services
      • getCurrentServiceSelectors

        Iterator<?> getCurrentServiceSelectors​(Class<?> serviceClass)
        Gets the list of service dependent service parameters (Service Selectors) for the specified service, by calling getCurrentServiceSelectors() on the underlying BeanContextServiceProvider.
        Parameters:
        serviceClass - the specified service
        Returns:
        the currently available service selectors for the named serviceClass
      • addBeanContextServicesListener

        void addBeanContextServicesListener​(BeanContextServicesListener bcsl)
        Adds a BeanContextServicesListener to this BeanContext
        Parameters:
        bcsl - the BeanContextServicesListener to add
      • removeBeanContextServicesListener

        void removeBeanContextServicesListener​(BeanContextServicesListener bcsl)
        Removes a BeanContextServicesListener from this BeanContext
        Parameters:
        bcsl - the BeanContextServicesListener to remove from this context