org.jboss.msc.service
Interface ServiceListener<S>

Type Parameters:
S - the service type
All Known Implementing Classes:
AbstractServiceListener, MultipleRemoveListener, TimingServiceListener

public interface ServiceListener<S>

A listener for service lifecycle events. The associated controller will not leave its current state until all listeners finish running.

Author:
David M. Lloyd, Flavia Rainone

Nested Class Summary
static class ServiceListener.Inheritance
          The inheritance type for a listener.
 
Method Summary
 void dependencyFailed(ServiceController<? extends S> controller)
          A dependency of the service has failed.
 void dependencyFailureCleared(ServiceController<? extends S> controller)
          A dependency of the service is retrying to start.
 void immediateDependencyAvailable(ServiceController<? extends S> controller)
          All unavailable immediate dependencies of the service are now available, i.e., they are installed and are not administratively disabled.
 void immediateDependencyUnavailable(ServiceController<? extends S> controller)
          An immediate dependency of the service is uninstalled or administratively disabled.
 void listenerAdded(ServiceController<? extends S> controller)
          The listener has been added to a controller.
 void serviceRemoveRequestCleared(ServiceController<? extends S> controller)
          The service removal is canceled.
 void serviceRemoveRequested(ServiceController<? extends S> controller)
          The service is going to be removed.
 void transition(ServiceController<? extends S> controller, ServiceController.Transition transition)
          The service has transitioned to a new sub-state.
 void transitiveDependencyAvailable(ServiceController<? extends S> controller)
          All unavailable transitive dependencies of the service are now available (installed and not administratively disabled).
 void transitiveDependencyUnavailable(ServiceController<? extends S> controller)
          A transitive dependency of the service is uninstalled or administratively disabled.
 

Method Detail

listenerAdded

void listenerAdded(ServiceController<? extends S> controller)
The listener has been added to a controller.

Parameters:
controller - the controller that this listener was added to

transition

void transition(ServiceController<? extends S> controller,
                ServiceController.Transition transition)
The service has transitioned to a new sub-state.

Parameters:
controller - the controller
transition - the transition that occurred

serviceRemoveRequested

void serviceRemoveRequested(ServiceController<? extends S> controller)
The service is going to be removed. Called when the service mode is changed to REMOVE.

Parameters:
controller - the controller

serviceRemoveRequestCleared

void serviceRemoveRequestCleared(ServiceController<? extends S> controller)
The service removal is canceled. Called when the service mode is changed from REMOVE to any other mode. Such a mode change can only be successfully performed if setMode is called before the service is removed.

Parameters:
controller - the controller.

dependencyFailed

void dependencyFailed(ServiceController<? extends S> controller)
A dependency of the service has failed. Called after the dependency state transitions from STARTING to START_FAILED.

Dependency failures that occur after the notified failure do not result in new dependencyFailed notifications. A new call to this method will be made to notify new failures only if the previous failures have been cleared.

This method is invoked to notify both immediate and transitive dependency failures.

Parameters:
controller - the controller

dependencyFailureCleared

void dependencyFailureCleared(ServiceController<? extends S> controller)
A dependency of the service is retrying to start. Called after the dependency state transitions from START_FAILED to STARTING.

Parameters:
controller - the controller

immediateDependencyUnavailable

void immediateDependencyUnavailable(ServiceController<? extends S> controller)
An immediate dependency of the service is uninstalled or administratively disabled.

Immediate dependencies that are subsequently unavailable do not result in new immediateDependencyUnavailable notifications. A new call to this method will only be made to notify newly found unavailable dependencies if the previously unavailable dependencies have been cleared.

Parameters:
controller - the controller

immediateDependencyAvailable

void immediateDependencyAvailable(ServiceController<? extends S> controller)
All unavailable immediate dependencies of the service are now available, i.e., they are installed and are not administratively disabled.
This method will be invoked only after immediateDependencyUnavailable(ServiceController) is called.

Parameters:
controller - the controller

transitiveDependencyUnavailable

void transitiveDependencyUnavailable(ServiceController<? extends S> controller)
A transitive dependency of the service is uninstalled or administratively disabled.

Transitive dependencies that are subsequently unavailable do not result in new transitiveDependencyUnavailable notifications. A new call to this method will only be made to notify newly found unavailable dependencies if the previously unavailable dependencies have all become available.

Parameters:
controller - the controller

transitiveDependencyAvailable

void transitiveDependencyAvailable(ServiceController<? extends S> controller)
All unavailable transitive dependencies of the service are now available (installed and not administratively disabled).
This method will be invoked only after transitiveDependencyUnavailable(ServiceController) is called.

Parameters:
controller - the controller


Copyright © 2011. All Rights Reserved.