-
- All Superinterfaces:
- BeanContext, BeanContextChild, BeanContextServiceRevokedListener, BeanContextServicesListener, Collection, DesignMode, EventListener, Iterable, Visibility
- All Known Implementing Classes:
- BeanContextServicesSupport
public interface BeanContextServices extends BeanContext, BeanContextServicesListener
The BeanContextServices interface provides a mechanism for a BeanContext to expose generic "services" to the BeanContextChild objects within.
-
-
Field Summary
-
Fields inherited from interface java.beans.beancontext.BeanContext
globalHierarchyLock
-
Fields inherited from interface java.beans.DesignMode
PROPERTYNAME
-
-
Method Summary
Methods Modifier and Type Method and Description void
addBeanContextServicesListener(BeanContextServicesListener bcsl)
Adds aBeanContextServicesListener
to this BeanContextboolean
addService(Class serviceClass, BeanContextServiceProvider serviceProvider)
Adds a service to this BeanContext.Iterator
getCurrentServiceClasses()
Gets the currently available services for this context.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.Object
getService(BeanContextChild child, Object requestor, Class serviceClass, Object serviceSelector, BeanContextServiceRevokedListener bcsrl)
ABeanContextChild
, or any arbitrary object associated with aBeanContextChild
, may obtain a reference to a currently registered service from its nestingBeanContextServices
via invocation of this method.boolean
hasService(Class serviceClass)
Reports whether or not a given service is currently available from this context.void
releaseService(BeanContextChild child, Object requestor, Object service)
Releases aBeanContextChild
's (or any arbitrary object associated with a BeanContextChild) reference to the specified service by calling releaseService() on the underlyingBeanContextServiceProvider
.void
removeBeanContextServicesListener(BeanContextServicesListener bcsl)
Removes aBeanContextServicesListener
from thisBeanContext
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.-
Methods inherited from interface java.beans.beancontext.BeanContext
addBeanContextMembershipListener, getResource, getResourceAsStream, instantiateChild, removeBeanContextMembershipListener
-
Methods inherited from interface java.beans.beancontext.BeanContextChild
addPropertyChangeListener, addVetoableChangeListener, getBeanContext, removePropertyChangeListener, removeVetoableChangeListener, setBeanContext
-
Methods inherited from interface java.util.Collection
add, addAll, clear, contains, containsAll, equals, hashCode, isEmpty, iterator, remove, removeAll, retainAll, size, toArray, toArray
-
Methods inherited from interface java.beans.DesignMode
isDesignTime, setDesignTime
-
Methods inherited from interface java.beans.Visibility
avoidingGui, dontUseGui, needsGui, okToUseGui
-
Methods inherited from interface java.beans.beancontext.BeanContextServicesListener
serviceAvailable
-
Methods inherited from interface java.beans.beancontext.BeanContextServiceRevokedListener
serviceRevoked
-
-
-
-
Method Detail
-
addService
boolean addService(Class serviceClass, BeanContextServiceProvider serviceProvider)
Adds a service to this BeanContext.BeanContextServiceProvider
s call this method to register a particular service with this context. If the service has not previously been added, theBeanContextServices
associates the service with theBeanContextServiceProvider
and fires aBeanContextServiceAvailableEvent
to all currently registeredBeanContextServicesListeners
. The method then returnstrue
, indicating that the addition of the service was successful. If the given service has already been added, this method simply returnsfalse
.- Parameters:
serviceClass
- the service to addserviceProvider
- theBeanContextServiceProvider
associated with the service
-
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, theBeanContextServices
fires aBeanContextServiceRevokedEvent
to its list of currently registeredBeanContextServiceRevokedListeners
andBeanContextServicesListeners
.- Parameters:
serviceClass
- the service to revoke from this BeanContextServicesserviceProvider
- the BeanContextServiceProvider associated with this particular service that is being revokedrevokeCurrentServicesNow
- a value oftrue
indicates an exceptional circumstance where theBeanContextServiceProvider
orBeanContextServices
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
ABeanContextChild
, or any arbitrary object associated with aBeanContextChild
, may obtain a reference to a currently registered service from its nestingBeanContextServices
via invocation of this method. When invoked, this method gets the service by calling the getService() method on the underlyingBeanContextServiceProvider
.- Parameters:
child
- theBeanContextChild
associated with this requestrequestor
- the object requesting the serviceserviceClass
- class of the requested serviceserviceSelector
- the service dependent parameterbcsrl
- theBeanContextServiceRevokedListener
to notify if the service should later become revoked- Returns:
- a reference to this context's named
Service as requested or
null
- Throws:
TooManyListenersException
-
releaseService
void releaseService(BeanContextChild child, Object requestor, Object service)
Releases aBeanContextChild
's (or any arbitrary object associated with a BeanContextChild) reference to the specified service by calling releaseService() on the underlyingBeanContextServiceProvider
.- Parameters:
child
- theBeanContextChild
requestor
- the requestorservice
- 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 aBeanContextServicesListener
to this BeanContext- Parameters:
bcsl
- theBeanContextServicesListener
to add
-
removeBeanContextServicesListener
void removeBeanContextServicesListener(BeanContextServicesListener bcsl)
Removes aBeanContextServicesListener
from thisBeanContext
- Parameters:
bcsl
- theBeanContextServicesListener
to remove from this context
-
-
Nederlandse vertaling
U hebt gevraagd om deze site in het Nederlands te bezoeken. Voor nu wordt alleen de interface vertaald, maar nog niet alle inhoud.Als je me wilt helpen met vertalingen, is je bijdrage welkom. Het enige dat u hoeft te doen, is u op de site registreren en mij een bericht sturen waarin u wordt gevraagd om u toe te voegen aan de groep vertalers, zodat u de gewenste pagina's kunt vertalen. Een link onderaan elke vertaalde pagina geeft aan dat u de vertaler bent en heeft een link naar uw profiel.
Bij voorbaat dank.
Document heeft de 11/06/2005 gemaakt, de laatste keer de 04/03/2020 gewijzigd
Bron van het afgedrukte document:https://www.gaudry.be/nl/java-api-rf-java/beans/beancontext/BeanContextServices.html
De infobrol is een persoonlijke site waarvan de inhoud uitsluitend mijn verantwoordelijkheid is. De tekst is beschikbaar onder CreativeCommons-licentie (BY-NC-SA). Meer info op de gebruiksvoorwaarden en de auteur.
Referenties
Deze verwijzingen en links verwijzen naar documenten die geraadpleegd zijn tijdens het schrijven van deze pagina, of die aanvullende informatie kunnen geven, maar de auteurs van deze bronnen kunnen niet verantwoordelijk worden gehouden voor de inhoud van deze pagina.
De auteur Deze site is als enige verantwoordelijk voor de manier waarop de verschillende concepten, en de vrijheden die met de referentiewerken worden genomen, hier worden gepresenteerd. Vergeet niet dat u meerdere broninformatie moet doorgeven om het risico op fouten te verkleinen.