mirror of
git://gcc.gnu.org/git/gcc.git
synced 2024-12-26 03:39:02 +08:00
544 lines
21 KiB
Plaintext
544 lines
21 KiB
Plaintext
|
@deftypemethod BeanContextChildComponentProxy {public Component} getComponent ()
|
||
|
Get the @code{Component} associated with this @code{BeanContextChild}.
|
||
|
@end deftypemethod
|
||
|
@deftypemethod BeanContextChild {public void} setBeanContext (java.beans.beancontext.BeanContext@w{ }@var{parent}) @*throws PropertyVetoException
|
||
|
Set the parent @code{BeanContext}.
|
||
|
|
||
|
|
||
|
|
||
|
|
||
|
This method is called from @code{BeanContext.add()} and
|
||
|
should not be called directly.
|
||
|
|
||
|
|
||
|
|
||
|
|
||
|
When this Object is being added to a new BeanContext or moved
|
||
|
from an old one, a non-null value will be passed in.
|
||
|
|
||
|
|
||
|
|
||
|
|
||
|
When this Object is being removed from the current
|
||
|
@code{BeanContext}, @code{setBeanContext()} will
|
||
|
receive the parameter @code{null}.
|
||
|
|
||
|
|
||
|
|
||
|
|
||
|
When being removed from the current @code{BeanContext},
|
||
|
it is the @code{BeanContextChild}'s responsibility to
|
||
|
release all services it has obtained.
|
||
|
|
||
|
|
||
|
|
||
|
|
||
|
This change should generate @code{PropertyChangeEvent}
|
||
|
and @code{VetoableChangeEvent}s with the property name
|
||
|
"beanContext". If the change is vetoed, it must re-throw the
|
||
|
exception and not change anything. In this way, the parent
|
||
|
@code{BeanContextChild}, who has registered himself with
|
||
|
you, will have a chance to remove this child from its
|
||
|
collection.
|
||
|
|
||
|
|
||
|
|
||
|
|
||
|
If the Bean does not wish to change the parent or be removed
|
||
|
from one, it may throw the @code{PropertyVetoException}.
|
||
|
If you veto a @code{setBeanContext(null)} call, then you
|
||
|
should try your hardest to remedy whatever problem is keeping
|
||
|
you from being removed from the @code{BeanContext} so
|
||
|
that you can <em>not</em> veto it the next time.
|
||
|
Otherwise, nasty pathological recursion stuff could occur in
|
||
|
certain situations.
|
||
|
|
||
|
|
||
|
|
||
|
|
||
|
If you do veto the change, you must first back out any changes
|
||
|
you made prior to the veto. Best not to make any such changes
|
||
|
prior to the veto in the first place.
|
||
|
|
||
|
|
||
|
|
||
|
|
||
|
This method is called from @code{BeanContext.add()} and
|
||
|
should not be called directly.
|
||
|
@end deftypemethod
|
||
|
@deftypemethod BeanContextChild {public BeanContext} getBeanContext ()
|
||
|
Get the parent @code{BeanContext}.
|
||
|
@end deftypemethod
|
||
|
@deftypemethod BeanContextChild {public void} addPropertyChangeListener (java.lang.String@w{ }@var{prop}, java.beans.PropertyChangeListener@w{ }@var{listener})
|
||
|
Add a listener that will be notified when a specific property changes.
|
||
|
@end deftypemethod
|
||
|
@deftypemethod BeanContextChild {public void} removePropertyChangeListener (java.lang.String@w{ }@var{prop}, java.beans.PropertyChangeListener@w{ }@var{listener})
|
||
|
Remove a listener to a certain property.
|
||
|
@end deftypemethod
|
||
|
@deftypemethod BeanContextChild {public void} addVetoableChangeListener (java.lang.String@w{ }@var{prop}, java.beans.VetoableChangeListener@w{ }@var{listener})
|
||
|
Add a listener that will be notified when a specific property
|
||
|
change is requested (a PropertyVetoException may be thrown) as
|
||
|
well as after the change is successfully made.
|
||
|
@end deftypemethod
|
||
|
@deftypemethod BeanContextChild {public void} removeVetoableChangeListener (java.lang.String@w{ }@var{prop}, java.beans.VetoableChangeListener@w{ }@var{listener})
|
||
|
Remove a listener to a certain property.
|
||
|
@end deftypemethod
|
||
|
@deftypemethod BeanContextChildSupport {public void} setBeanContext (java.beans.beancontext.BeanContext@w{ }@var{newBeanContext}) @*throws PropertyVetoException
|
||
|
Set the parent @code{BeanContext}.
|
||
|
|
||
|
|
||
|
|
||
|
|
||
|
When this Object is being added to a new BeanContext or moved
|
||
|
from an old one, a non-null value will be passed in.
|
||
|
|
||
|
|
||
|
|
||
|
|
||
|
When this Object is being removed from the current
|
||
|
@code{BeanContext}, @code{setBeanContext()} will
|
||
|
receive the parameter @code{null}.
|
||
|
|
||
|
|
||
|
|
||
|
|
||
|
Order of events:
|
||
|
|
||
|
@itemize @bullet
|
||
|
|
||
|
|
||
|
@item
|
||
|
|
||
|
If the new @code{BeanContext} is the same as the old
|
||
|
one, nothing happens.
|
||
|
|
||
|
|
||
|
|
||
|
@item
|
||
|
|
||
|
If the change has not been rejected or vetoed before, call
|
||
|
@code{validatePendingSetBeanContext()}. If this call
|
||
|
returns @code{false}, the change is rejected and a
|
||
|
@code{PropertyVetoException} is thrown.
|
||
|
|
||
|
|
||
|
|
||
|
@item
|
||
|
|
||
|
If the change has not been rejected or vetoed before,
|
||
|
@code{VetoableChangeEvent}s are fired with the name
|
||
|
@code{"beanContext"}, using the
|
||
|
@code{fireVetoableChange()} method. If a veto
|
||
|
occurs, reversion events are fired using the same method,
|
||
|
the change is rejected, and the veto is rethrown.
|
||
|
|
||
|
|
||
|
|
||
|
@item
|
||
|
|
||
|
@code{releaseBeanContextResources()} is called.
|
||
|
|
||
|
|
||
|
|
||
|
@item
|
||
|
|
||
|
The change is made.
|
||
|
|
||
|
|
||
|
|
||
|
@item
|
||
|
|
||
|
@code{PropertyChangeEvent}s are fired using the
|
||
|
@code{firePropertyChange()} method.
|
||
|
|
||
|
|
||
|
|
||
|
@item
|
||
|
|
||
|
@code{initializeBeanContextResources()} is called.
|
||
|
|
||
|
|
||
|
|
||
|
@end itemize
|
||
|
|
||
|
|
||
|
|
||
|
|
||
|
@end deftypemethod
|
||
|
@deftypemethod BeanContextChildSupport {public BeanContext} getBeanContext ()
|
||
|
Get the parent @code{BeanContext}.
|
||
|
@end deftypemethod
|
||
|
@deftypemethod BeanContextChildSupport {public BeanContextChild} getBeanContextChildPeer ()
|
||
|
Get the peer (or @code{this} if there is no peer).
|
||
|
@end deftypemethod
|
||
|
@deftypemethod BeanContextChildSupport {public boolean} isDelegated ()
|
||
|
Determine whether there is a peer.
|
||
|
This is true iff @code{getBeanContextChildPeer() == this}.
|
||
|
@end deftypemethod
|
||
|
@deftypemethod BeanContextChildSupport {public void} addPropertyChangeListener (java.lang.String@w{ }@var{propertyName}, java.beans.PropertyChangeListener@w{ }@var{listener})
|
||
|
Add a listener that will be notified when a specific property changes.
|
||
|
@end deftypemethod
|
||
|
@deftypemethod BeanContextChildSupport {public void} removePropertyChangeListener (java.lang.String@w{ }@var{propertyName}, java.beans.PropertyChangeListener@w{ }@var{listener})
|
||
|
Remove a listener to a certain property.
|
||
|
@end deftypemethod
|
||
|
@deftypemethod BeanContextChildSupport {public void} addVetoableChangeListener (java.lang.String@w{ }@var{propertyName}, java.beans.VetoableChangeListener@w{ }@var{listener})
|
||
|
Add a listener that will be notified when a specific property
|
||
|
change is requested (a PropertyVetoException may be thrown) as
|
||
|
well as after the change is successfully made.
|
||
|
@end deftypemethod
|
||
|
@deftypemethod BeanContextChildSupport {public void} removeVetoableChangeListener (java.lang.String@w{ }@var{propertyName}, java.beans.VetoableChangeListener@w{ }@var{listener})
|
||
|
Remove a listener to a certain property.
|
||
|
@end deftypemethod
|
||
|
@deftypemethod BeanContextChildSupport {public void} firePropertyChange (java.lang.String@w{ }@var{propertyName}, java.lang.Object@w{ }@var{oldVal}, java.lang.Object@w{ }@var{newVal})
|
||
|
Fire a property change.
|
||
|
@end deftypemethod
|
||
|
@deftypemethod BeanContextChildSupport {public void} fireVetoableChange (java.lang.String@w{ }@var{propertyName}, java.lang.Object@w{ }@var{oldVal}, java.lang.Object@w{ }@var{newVal}) @*throws PropertyVetoException
|
||
|
Fire a vetoable property change.
|
||
|
@end deftypemethod
|
||
|
@deftypemethod BeanContextChildSupport {public void} serviceRevoked (java.beans.beancontext.BeanContextServiceRevokedEvent@w{ }@var{event})
|
||
|
Called by @code{BeanContextServices.revokeService()} to indicate that a service has been revoked.
|
||
|
If you have a reference to such a service, it should be
|
||
|
discarded and may no longer function properly.
|
||
|
@code{getService()} will no longer work on the specified
|
||
|
service class after this event has been fired.
|
||
|
|
||
|
|
||
|
|
||
|
|
||
|
<EM>This method is meant to be overriden.</EM>
|
||
|
@code{BeanContextChildSupport}'s implementation does
|
||
|
nothing.
|
||
|
@end deftypemethod
|
||
|
@deftypemethod BeanContextChildSupport {public void} serviceAvailable (java.beans.beancontext.BeanContextServiceAvailableEvent@w{ }@var{event})
|
||
|
Called by @code{BeanContextServices} whenever a service is made available.
|
||
|
|
||
|
|
||
|
|
||
|
|
||
|
<EM>This method is meant to be overriden.</EM>
|
||
|
@code{BeanContextChildSupport}'s implementation does
|
||
|
nothing.
|
||
|
@end deftypemethod
|
||
|
@deftypemethod BeanContextChildSupport {public boolean} validatePendingSetBeanContext (java.beans.beancontext.BeanContext@w{ }@var{newBeanContext})
|
||
|
Called by @code{setBeanContext()} to determine whether the set should be rejected.
|
||
|
|
||
|
|
||
|
|
||
|
|
||
|
<EM>This method is meant to be overriden.</EM>
|
||
|
@code{BeanContextChildSupport}'s implementation simply
|
||
|
returns @code{true}.
|
||
|
@end deftypemethod
|
||
|
@deftypemethod BeanContextChildSupport {protected void} releaseBeanContextResources ()
|
||
|
Called by @code{setBeanContext()} to release resources of a what will soon no longer be the parent.
|
||
|
|
||
|
|
||
|
|
||
|
|
||
|
<EM>This method is meant to be overriden.</EM>
|
||
|
@code{BeanContextChildSupport}'s implementation does
|
||
|
nothing.
|
||
|
@end deftypemethod
|
||
|
@deftypemethod BeanContextChildSupport {protected void} initializeBeanContextResources ()
|
||
|
Called by @code{setBeanContext()} to grab resources when the parent has been set.
|
||
|
|
||
|
|
||
|
|
||
|
|
||
|
<EM>This method is meant to be overriden.</EM>
|
||
|
@code{BeanContextChildSupport}'s implementation does
|
||
|
nothing.
|
||
|
@end deftypemethod
|
||
|
@deftypemethod BeanContextContainerProxy {public Container} getContainer ()
|
||
|
Get the @code{Container} associated with this @code{BeanContext}.
|
||
|
@end deftypemethod
|
||
|
@deftypemethod BeanContextEvent {public BeanContext} getBeanContext ()
|
||
|
Get the @code{BeanContext} that originated this event.
|
||
|
@end deftypemethod
|
||
|
@deftypemethod BeanContextEvent {public BeanContext} getPropagatedFrom ()
|
||
|
Get the most recent propagator of this event.
|
||
|
If this value is @code{null}, you have received the event
|
||
|
straight from the source.
|
||
|
@end deftypemethod
|
||
|
@deftypemethod BeanContextEvent {public boolean} isPropagated ()
|
||
|
Tell whether this event has been propagated.
|
||
|
@end deftypemethod
|
||
|
@deftypemethod BeanContextEvent {public void} setPropagatedFrom (java.beans.beancontext.BeanContext@w{ }@var{propagator})
|
||
|
Set the most recent propagator of this event.
|
||
|
@end deftypemethod
|
||
|
@deftypemethod BeanContext {public Object} instantiateChild (java.lang.String@w{ }@var{beanName}) @*throws IOException, ClassNotFoundException
|
||
|
Instantiate a Bean using this Bean's @code{ClassLoader}
|
||
|
and this @code{BeanContext} as the parent.
|
||
|
|
||
|
|
||
|
|
||
|
|
||
|
This method exists mainly so that @code{BeanContext}
|
||
|
implementations can perform extra actions on Beans that are
|
||
|
created within them.
|
||
|
@end deftypemethod
|
||
|
@deftypemethod BeanContext {public URL} getResource (java.lang.String@w{ }@var{resourceName}, java.beans.beancontext.BeanContextChild@w{ }@var{requestor})
|
||
|
Get a resource. The @code{BeanContext} will typically
|
||
|
call @code{ClassLoader.getResource()}, but may do it any
|
||
|
way it wants to. This allows a @code{BeanContext} to
|
||
|
have its own set of resources separate from the rest of the
|
||
|
system.
|
||
|
|
||
|
|
||
|
|
||
|
|
||
|
Beans should call this method on their parent rather than the
|
||
|
associated @code{ClassLoader} method.
|
||
|
|
||
|
|
||
|
|
||
|
|
||
|
I am assuming, but am not entirely sure, that if a
|
||
|
@code{BeanContext} cannot find a resource, its
|
||
|
responsibility is to call the @code{getResource} method
|
||
|
of its parent @code{BeanContext}.
|
||
|
@end deftypemethod
|
||
|
@deftypemethod BeanContext {public InputStream} getResourceAsStream (java.lang.String@w{ }@var{resourceName}, java.beans.beancontext.BeanContextChild@w{ }@var{requestor})
|
||
|
Get a resource as a stream. The @code{BeanContext} will
|
||
|
typically call @code{ClassLoader.getResourceAsStream()},
|
||
|
but may do it any way it wants to. This allows a
|
||
|
@code{BeanContext}'s children to have their own set of
|
||
|
resources separate from the rest of the system.
|
||
|
|
||
|
|
||
|
|
||
|
|
||
|
Beans should call this method on their parent rather than the
|
||
|
associated @code{ClassLoader} method.
|
||
|
|
||
|
|
||
|
|
||
|
|
||
|
I am assuming, but am not entirely sure, that if a
|
||
|
@code{BeanContext} cannot find a resource, its
|
||
|
responsibility is to call the @code{getResourceAsStream}
|
||
|
method of its parent @code{BeanContext}.
|
||
|
@end deftypemethod
|
||
|
@deftypemethod BeanContext {public void} addBeanContextMembershipListener (java.beans.beancontext.BeanContextMembershipListener@w{ }@var{listener})
|
||
|
Add a listener on changes to the membership of this
|
||
|
@code{BeanContext} object.
|
||
|
@end deftypemethod
|
||
|
@deftypemethod BeanContext {public void} removeBeanContextMembershipListener (java.beans.beancontext.BeanContextMembershipListener@w{ }@var{listener})
|
||
|
Remove a listener on changes to the membership of this
|
||
|
@code{BeanContext} object.
|
||
|
@end deftypemethod
|
||
|
@deftypemethod BeanContextMembershipEvent {public int} size ()
|
||
|
The number of children removed or added.
|
||
|
@end deftypemethod
|
||
|
@deftypemethod BeanContextMembershipEvent {public Iterator} iterator ()
|
||
|
An iterator that will step through all the children.
|
||
|
@end deftypemethod
|
||
|
@deftypemethod BeanContextMembershipEvent {public Object} toArray ()
|
||
|
An array of the children.
|
||
|
@end deftypemethod
|
||
|
@deftypemethod BeanContextMembershipEvent {public boolean} contains (java.lang.Object@w{ }@var{child})
|
||
|
Tell whether the @code{Object} is one of the children added or removed.
|
||
|
@end deftypemethod
|
||
|
@deftypemethod BeanContextMembershipListener {public void} childrenAdded (java.beans.beancontext.BeanContextMembershipEvent@w{ }@var{event})
|
||
|
When beans are added to a @code{BeanContext},
|
||
|
this method is called to fire the event.
|
||
|
@end deftypemethod
|
||
|
@deftypemethod BeanContextMembershipListener {public void} childrenRemoved (java.beans.beancontext.BeanContextMembershipEvent@w{ }@var{event})
|
||
|
When beans are removed from a @code{BeanContext},
|
||
|
this method is called to fire the event.
|
||
|
@end deftypemethod
|
||
|
@deftypemethod BeanContextProxy {public BeanContextChild} getBeanContextProxy ()
|
||
|
Return the @code{BeanContextChild} associated with this
|
||
|
@code{Object}.
|
||
|
@end deftypemethod
|
||
|
@deftypemethod BeanContextServiceAvailableEvent {public Iterator} getCurrentServiceSelectors ()
|
||
|
Get the current service selectors of the service class.
|
||
|
This is identical to @code{getSourceAsBeanContextServices().getCurrentServiceSelectors(getServiceClass())}
|
||
|
@end deftypemethod
|
||
|
@deftypemethod BeanContextServiceAvailableEvent {public Class} getServiceClass ()
|
||
|
Get the newly available service class.
|
||
|
@end deftypemethod
|
||
|
@deftypemethod BeanContextServiceAvailableEvent {public BeanContextServices} getSourceAsBeanContextServices ()
|
||
|
Get the @code{BeanContextServices} through which the new service is available.
|
||
|
@end deftypemethod
|
||
|
@deftypemethod BeanContextServiceProviderBeanInfo {public BeanInfo} getServicesBeanInfo ()
|
||
|
Get @code{BeanInfo}s for all of the service classes of this @code{BeanInfoServiceProvider}.
|
||
|
@end deftypemethod
|
||
|
@deftypemethod BeanContextServiceProvider {public Object} getService (java.beans.beancontext.BeanContextServices@w{ }@var{services}, java.lang.Object@w{ }@var{requestor}, java.lang.Class@w{ }@var{serviceClass}, java.lang.Object@w{ }@var{serviceSelector})
|
||
|
Get a service.
|
||
|
Called from @code{BeanContextServices.getService().
|
||
|
|
||
|
|
||
|
|
||
|
|
||
|
If the requested service class is not available, or if this
|
||
|
@code{BeanContextServiceProvider} chooses not honor the
|
||
|
request for some reason, then this method will return
|
||
|
@code{null}.
|
||
|
|
||
|
|
||
|
|
||
|
|
||
|
This method may throw unchecked exceptions, so watch out.
|
||
|
@end deftypemethod
|
||
|
@deftypemethod BeanContextServiceProvider {public void} releaseService (java.beans.beancontext.BeanContextServices@w{ }@var{services}, java.lang.Object@w{ }@var{requestor}, java.lang.Object@w{ }@var{service})
|
||
|
Release the service.
|
||
|
|
||
|
|
||
|
|
||
|
|
||
|
Called by @code{BeanContextServices.releaseService()}.
|
||
|
|
||
|
|
||
|
|
||
|
|
||
|
Most @code{BeanContextServiceProvider}s won't have to do
|
||
|
anything here.
|
||
|
@end deftypemethod
|
||
|
@deftypemethod BeanContextServiceProvider {public Iterator} getCurrentServiceSelectors (java.beans.beancontext.BeanContextServices@w{ }@var{services}, java.lang.Class@w{ }@var{serviceClass})
|
||
|
Get a list of valid service selectors for the specified service class.
|
||
|
This method is called from
|
||
|
@code{BeanContextServices.getCurrentServiceSelectors()}.
|
||
|
|
||
|
|
||
|
|
||
|
|
||
|
If the specified service class does not have a finite number of
|
||
|
valid service selectors, it should return @code{null}.
|
||
|
If it takes a general @code{Integer} parameter, for
|
||
|
example, you may as well return @code{null} or the poor
|
||
|
soul who called this method will be iterating all day.
|
||
|
|
||
|
|
||
|
|
||
|
|
||
|
If it has no valid service selectors, it should still return an empty
|
||
|
@code{Iterator}.
|
||
|
@end deftypemethod
|
||
|
@deftypemethod BeanContextServiceRevokedEvent {public Class} getServiceClass ()
|
||
|
Get the revoked service class.
|
||
|
@end deftypemethod
|
||
|
@deftypemethod BeanContextServiceRevokedEvent {public boolean} isServiceClass (java.lang.Class@w{ }@var{c})
|
||
|
Tell whether the revoked service class is the same as the specified class.
|
||
|
Identical to @code{getServiceClass().equals(c)}.
|
||
|
@end deftypemethod
|
||
|
@deftypemethod BeanContextServiceRevokedEvent {public BeanContextServices} getSourceAsBeanContextServices ()
|
||
|
Get the @code{BeanContextServices} through which the service was available.
|
||
|
@end deftypemethod
|
||
|
@deftypemethod BeanContextServiceRevokedEvent {public boolean} isCurrentServiceInvalidNow ()
|
||
|
Tell whether current instances of the revoked service are usable or not.
|
||
|
This is determined by whether the service was revoked
|
||
|
immediately.
|
||
|
@end deftypemethod
|
||
|
@deftypemethod BeanContextServiceRevokedListener {public void} serviceRevoked (java.beans.beancontext.BeanContextServiceRevokedEvent@w{ }@var{event})
|
||
|
Called by @code{BeanContextServices.revokeService()} to indicate that a service has been revoked.
|
||
|
If you have a reference to such a service, it should be
|
||
|
discarded and may no longer function properly.
|
||
|
@code{getService()} will no longer work on the specified
|
||
|
service class after this event has been fired.
|
||
|
@end deftypemethod
|
||
|
@deftypemethod BeanContextServices {public boolean} addService (java.lang.Class@w{ }@var{serviceClass}, java.beans.beancontext.BeanContextServiceProvider@w{ }@var{provider})
|
||
|
Register a service to make it available to others.
|
||
|
This class may refuse to add the service based on whatever
|
||
|
information it can gather, including whether the service
|
||
|
provider is trusted.
|
||
|
@end deftypemethod
|
||
|
@deftypemethod BeanContextServices {public void} revokeService (java.lang.Class@w{ }@var{serviceClass}, java.beans.beancontext.BeanContextServiceProvider@w{ }@var{provider}, boolean@w{ }@var{revokeNow})
|
||
|
Make it so that no one else can use this service.
|
||
|
|
||
|
|
||
|
|
||
|
|
||
|
If @code{revokeNow} is @code{false}, the only
|
||
|
effect of this method is to make all subsequent calls to
|
||
|
@code{getService()} on this service class fail.
|
||
|
|
||
|
|
||
|
|
||
|
|
||
|
If it is @code{true}, a message is also sent out to all
|
||
|
listeners on the service and all references to it are released.
|
||
|
@end deftypemethod
|
||
|
@deftypemethod BeanContextServices {public void} releaseService (java.beans.beancontext.BeanContextChild@w{ }@var{requestorChild}, java.lang.Object@w{ }@var{requestor}, java.lang.Object@w{ }@var{service})
|
||
|
Release your copy of this service.
|
||
|
|
||
|
|
||
|
|
||
|
|
||
|
If all copies of the service's class have been relinquished by
|
||
|
the requestor, the @code{BeanContextServiceRevokedListener}
|
||
|
previously registered by @code{getService()} will be
|
||
|
unregistered.
|
||
|
@end deftypemethod
|
||
|
@deftypemethod BeanContextServices {public Object} getService (java.beans.beancontext.BeanContextChild@w{ }@var{requestorChild}, java.lang.Object@w{ }@var{requestor}, java.lang.Class@w{ }@var{serviceClass}, java.lang.Object@w{ }@var{serviceSelector}, java.beans.beancontext.BeanContextServiceRevokedListener@w{ }@var{listener})
|
||
|
Get a service from this @code{BeanContextServices}.
|
||
|
|
||
|
|
||
|
|
||
|
|
||
|
The specified listener will be registered to receive a
|
||
|
revocation notice for the specified serviceClass. One
|
||
|
notification per service class per requestor object will be
|
||
|
sent.
|
||
|
|
||
|
|
||
|
|
||
|
|
||
|
The listener will be unregistered when all services that were
|
||
|
obtained by that requestor for that service class are released.
|
||
|
|
||
|
|
||
|
|
||
|
|
||
|
If the requested service class is not available, or if this
|
||
|
@code{BeanContextServices} object chooses not honor the
|
||
|
request because the service class has been revoked or for some
|
||
|
other reason, then this method will return @code{null}.
|
||
|
|
||
|
|
||
|
|
||
|
|
||
|
This method may throw unchecked exceptions, so watch out.
|
||
|
@end deftypemethod
|
||
|
@deftypemethod BeanContextServices {public Iterator} getCurrentServiceClasses ()
|
||
|
Get a list of all service classes supported.
|
||
|
|
||
|
|
||
|
|
||
|
|
||
|
This method must synchronize on
|
||
|
@code{BeanContext.globalHierarchyLock}.
|
||
|
@end deftypemethod
|
||
|
@deftypemethod BeanContextServices {public Iterator} getCurrentServiceSelectors (java.lang.Class@w{ }@var{serviceClass})
|
||
|
Get a list of valid service selectors for the specified service class.
|
||
|
|
||
|
|
||
|
|
||
|
|
||
|
If the specified service class does not have a finite number of
|
||
|
valid service selectors, it should return @code{null}.
|
||
|
If it takes a general @code{Integer} parameter, for
|
||
|
example, you may as well return @code{null} or the poor
|
||
|
soul who called this method will be iterating all day.
|
||
|
|
||
|
|
||
|
|
||
|
|
||
|
If it has no valid service selectors, it should still return an empty
|
||
|
@code{Iterator}.
|
||
|
@end deftypemethod
|
||
|
@deftypemethod BeanContextServices {public boolean} hasService (java.lang.Class@w{ }@var{serviceClass})
|
||
|
Tell whether the specified service class is available.
|
||
|
Iff getService() could return a non-null value for the
|
||
|
specified service, this method will return @code{true}.
|
||
|
@end deftypemethod
|
||
|
@deftypemethod BeanContextServices {public void} addBeanContextServicesListener (java.beans.beancontext.BeanContextServicesListener@w{ }@var{listener})
|
||
|
Add a listener on all adds and removes of services.
|
||
|
@end deftypemethod
|
||
|
@deftypemethod BeanContextServices {public void} removeBeanContextServicesListener (java.beans.beancontext.BeanContextServicesListener@w{ }@var{listener})
|
||
|
Remove a listener on all adds and removes of services.
|
||
|
@end deftypemethod
|
||
|
@deftypemethod BeanContextServicesListener {public void} serviceAvailable (java.beans.beancontext.BeanContextServiceAvailableEvent@w{ }@var{event})
|
||
|
Called by @code{BeanContextServices} whenever a service is made available.
|
||
|
@end deftypemethod
|