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 ServiceTarget
delegate
-
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 ServiceTarget
addDependency(java.util.Collection<ServiceName> dependencies)
Add a collection of dependencies that will be added to the all ServiceBuilders installed in this targetServiceTarget
addDependency(ServiceName dependency)
Add a dependency that will be added to the all ServiceBuilders installed in this target.ServiceTarget
addDependency(ServiceName... dependencies)
Add a list of dependencies that will be added to the all ServiceBuilders installed in this target.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.ServiceTarget
addListener(ServiceListener<java.lang.Object> listener)
Add a service listener that will be added to all the ServiceBuilders installed in this target.ServiceTarget
addListener(ServiceListener<java.lang.Object>... listeners)
Add a list of service listener that will be added to all ServiceBuilders installed in this target.ServiceTarget
addMonitor(StabilityMonitor monitor)
Add a stability monitor that will be added to all the ServiceBuilders installed in this target.ServiceTarget
addMonitors(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.BatchServiceTarget
batchTarget()
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.ServiceTarget
removeDependency(ServiceName dependency)
Remove a dependency from this target.ServiceTarget
removeListener(ServiceListener<java.lang.Object> listener)
Remove a listener from this target, if it exists.ServiceTarget
removeMonitor(StabilityMonitor monitor)
Remove a monitor from this target, if it exists.ServiceTarget
subTarget()
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:
addServiceValue
in 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:
addService
in 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:
addListener
in 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:
addListener
in 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:
addListener
in 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:
removeListener
in 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:
getListeners
in 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:
addDependency
in 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:
addDependency
in 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:
addDependency
in 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:
removeDependency
in 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:
getDependencies
in interfaceServiceTarget
- Returns:
- all dependencies of this target
-
subTarget
public ServiceTarget subTarget()
Create a sub-target using this as the parent target.- Specified by:
subTarget
in 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:
batchTarget
in 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:
addMonitor
in 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:
addMonitors
in 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:
removeMonitor
in 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:
getMonitors
in interfaceServiceTarget
- Returns:
- the monitors added to this target
-
-