Package org.jboss.msc.service
Class DelegatingServiceTarget
- java.lang.Object
-
- org.jboss.msc.service.DelegatingServiceTarget
-
- All Implemented Interfaces:
ServiceTarget
public final class DelegatingServiceTarget extends java.lang.Object implements ServiceTarget
An "insulated" view of a service target which prevents access to other public methods on the delegate target object.
-
-
Field Summary
Fields Modifier and Type Field Description private ServiceTargetdelegate
-
Constructor Summary
Constructors Constructor Description DelegatingServiceTarget(ServiceTarget delegate)Construct a new instance.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description ServiceTargetaddDependency(java.util.Collection<ServiceName> dependencies)Add a collection of dependencies that will be added to the all ServiceBuilders installed in this targetServiceTargetaddDependency(ServiceName dependency)Add a dependency that will be added to the all ServiceBuilders installed in this target.ServiceTargetaddDependency(ServiceName... dependencies)Add a list of dependencies that will be added to the all ServiceBuilders installed in this target.ServiceTargetaddListener(java.util.Collection<ServiceListener<java.lang.Object>> listeners)Add a collection of service listener that will be added to all ServiceBuilders installed in this target.ServiceTargetaddListener(ServiceListener<java.lang.Object> listener)Add a service listener that will be added to all the ServiceBuilders installed in this target.ServiceTargetaddListener(ServiceListener<java.lang.Object>... listeners)Add a list of service listener that will be added to all ServiceBuilders installed in this target.ServiceTargetaddMonitor(StabilityMonitor monitor)Add a stability monitor that will be added to all the ServiceBuilders installed in this target.ServiceTargetaddMonitors(StabilityMonitor... monitors)Add a stability monitors that will be added to all the ServiceBuilders installed in this target.<T> ServiceBuilder<T>addService(ServiceName name, Service<T> service)Get a builder which can be used to add a service to this target.<T> ServiceBuilder<T>addServiceValue(ServiceName name, Value<? extends Service<T>> value)Get a builder which can be used to add a service to this target.BatchServiceTargetbatchTarget()Create a new batch service target, which is used to install described services in this target.java.util.Set<ServiceName>getDependencies()Returns a set of all dependencies added to this target.java.util.Set<ServiceListener<java.lang.Object>>getListeners()Returns a set of the listeners added to this target.java.util.Set<StabilityMonitor>getMonitors()Returns a set of the monitors added to this target.ServiceTargetremoveDependency(ServiceName dependency)Remove a dependency from this target.ServiceTargetremoveListener(ServiceListener<java.lang.Object> listener)Remove a listener from this target, if it exists.ServiceTargetremoveMonitor(StabilityMonitor monitor)Remove a monitor from this target, if it exists.ServiceTargetsubTarget()Create a sub-target using this as the parent target.
-
-
-
Field Detail
-
delegate
private final ServiceTarget delegate
-
-
Constructor Detail
-
DelegatingServiceTarget
public DelegatingServiceTarget(ServiceTarget delegate)
Construct a new instance.- Parameters:
delegate- the delegate service target
-
-
Method Detail
-
addServiceValue
public <T> ServiceBuilder<T> addServiceValue(ServiceName name, Value<? extends Service<T>> value) throws java.lang.IllegalArgumentException
Get a builder which can be used to add a service to this target.- Specified by:
addServiceValuein interfaceServiceTarget- Parameters:
name- the service namevalue- the service value- Returns:
- the builder for the service
- Throws:
java.lang.IllegalArgumentException
-
addService
public <T> ServiceBuilder<T> addService(ServiceName name, Service<T> service) throws java.lang.IllegalArgumentException
Get a builder which can be used to add a service to this target.- Specified by:
addServicein interfaceServiceTarget- Parameters:
name- the service nameservice- the service- Returns:
- the builder for the service
- Throws:
java.lang.IllegalArgumentException
-
addListener
public ServiceTarget addListener(ServiceListener<java.lang.Object> listener)
Add a service listener that will be added to all the ServiceBuilders installed in this target.- Specified by:
addListenerin interfaceServiceTarget- Parameters:
listener- the listener to add to the target- Returns:
- this target
-
addListener
public ServiceTarget addListener(ServiceListener<java.lang.Object>... listeners)
Add a list of service listener that will be added to all ServiceBuilders installed in this target.- Specified by:
addListenerin interfaceServiceTarget- Parameters:
listeners- a list of listeners to add to the target- Returns:
- this target
-
addListener
public ServiceTarget addListener(java.util.Collection<ServiceListener<java.lang.Object>> listeners)
Add a collection of service listener that will be added to all ServiceBuilders installed in this target.- Specified by:
addListenerin interfaceServiceTarget- Parameters:
listeners- a collection of listeners to add to the target- Returns:
- this target
-
removeListener
public ServiceTarget removeListener(ServiceListener<java.lang.Object> listener)
Remove a listener from this target, if it exists.- Specified by:
removeListenerin interfaceServiceTarget- Parameters:
listener- the listener to remove- Returns:
- this target
-
getListeners
public java.util.Set<ServiceListener<java.lang.Object>> getListeners()
Returns a set of the listeners added to this target.- Specified by:
getListenersin interfaceServiceTarget- Returns:
- the listeners added to this target
-
addDependency
public ServiceTarget addDependency(ServiceName dependency)
Add a dependency that will be added to the all ServiceBuilders installed in this target.- Specified by:
addDependencyin interfaceServiceTarget- Parameters:
dependency- the dependency to add to the target- Returns:
- this target
-
addDependency
public ServiceTarget addDependency(ServiceName... dependencies)
Add a list of dependencies that will be added to the all ServiceBuilders installed in this target.- Specified by:
addDependencyin interfaceServiceTarget- Parameters:
dependencies- a list of dependencies to add to the target- Returns:
- this target
-
addDependency
public ServiceTarget addDependency(java.util.Collection<ServiceName> dependencies)
Add a collection of dependencies that will be added to the all ServiceBuilders installed in this target- Specified by:
addDependencyin interfaceServiceTarget- Parameters:
dependencies- a collection of dependencies to add to this target- Returns:
- this target
-
removeDependency
public ServiceTarget removeDependency(ServiceName dependency)
Remove a dependency from this target. Subsequently defined services will not have this dependency.- Specified by:
removeDependencyin interfaceServiceTarget- Parameters:
dependency- the dependency- Returns:
- this target
-
getDependencies
public java.util.Set<ServiceName> getDependencies()
Returns a set of all dependencies added to this target.- Specified by:
getDependenciesin interfaceServiceTarget- Returns:
- all dependencies of this target
-
subTarget
public ServiceTarget subTarget()
Create a sub-target using this as the parent target.- Specified by:
subTargetin interfaceServiceTarget- Returns:
- the new service target
-
batchTarget
public BatchServiceTarget batchTarget()
Create a new batch service target, which is used to install described services in this target.- Specified by:
batchTargetin interfaceServiceTarget- Returns:
- the new batch service target
-
addMonitor
public ServiceTarget addMonitor(StabilityMonitor monitor)
Add a stability monitor that will be added to all the ServiceBuilders installed in this target.- Specified by:
addMonitorin interfaceServiceTarget- Parameters:
monitor- the monitor to add to the target- Returns:
- this target
-
addMonitors
public ServiceTarget addMonitors(StabilityMonitor... monitors)
Add a stability monitors that will be added to all the ServiceBuilders installed in this target.- Specified by:
addMonitorsin interfaceServiceTarget- Parameters:
monitors- the monitors to add to the target- Returns:
- this target
-
removeMonitor
public ServiceTarget removeMonitor(StabilityMonitor monitor)
Remove a monitor from this target, if it exists.- Specified by:
removeMonitorin interfaceServiceTarget- Parameters:
monitor- the monitor to remove- Returns:
- this target
-
getMonitors
public java.util.Set<StabilityMonitor> getMonitors()
Returns a set of the monitors added to this target.- Specified by:
getMonitorsin interfaceServiceTarget- Returns:
- the monitors added to this target
-
-