Package org.jboss.as.controller
Interface CapabilityServiceBuilder<T>
-
- Type Parameters:
T- the service type
- All Superinterfaces:
org.jboss.msc.service.ServiceBuilder<T>
public interface CapabilityServiceBuilder<T> extends org.jboss.msc.service.ServiceBuilder<T>A builder for an individual service in aCapabilityServiceTarget. Create an instance via theCapabilityServiceTarget.addCapability(RuntimeCapability),addCapabilityRequirement(String, Class, Injector)or other methods. Builder also add supports to add capability requirement for service injection viaaddCapabilityRequirement(String, Class, Injector)- Author:
- Tomaz Cerar (c) 2017 Red Hat Inc., Richard Opalka
-
-
Method Summary
All Methods Instance Methods Abstract Methods Deprecated Methods Modifier and Type Method Description <I> CapabilityServiceBuilder<T>addCapabilityRequirement(String capabilityName, Class<I> type)Deprecated.UserequiresCapability(String, Class, String...)instead.<I> CapabilityServiceBuilder<T>addCapabilityRequirement(String capabilityName, Class<I> type, org.jboss.msc.inject.Injector<I> target)Deprecated.UserequiresCapability(String, Class, String...)instead.<I> CapabilityServiceBuilder<T>addCapabilityRequirement(String capabilityName, Class<I> type, org.jboss.msc.inject.Injector<I> target, String... referenceNames)Deprecated.UserequiresCapability(String, Class, String...)instead.<V> Consumer<V>provides(RuntimeCapability<?>... capabilities)Provide value under given capabilities.<V> Consumer<V>provides(RuntimeCapability<?>[] capabilities, org.jboss.msc.service.ServiceName[] aliases)Provide value under given capabilities and alias names.<V> Consumer<V>provides(RuntimeCapability<?> capability, org.jboss.msc.service.ServiceName alias, org.jboss.msc.service.ServiceName... aliases)Provide value under given capability and aliases.<V> Supplier<V>requiresCapability(String capabilityName, Class<V> dependencyType, String... referenceNames)Capability requirement.CapabilityServiceBuilder<T>setInitialMode(org.jboss.msc.service.ServiceController.Mode mode)CapabilityServiceBuilder<T>setInstance(org.jboss.msc.Service service)-
Methods inherited from interface org.jboss.msc.service.ServiceBuilder
addAliases, addDependencies, addDependencies, addDependencies, addDependencies, addDependency, addDependency, addDependency, addDependency, addDependency, addDependency, addInjection, addInjection, addInjectionValue, addListener, addListener, addListener, addListener, addMonitor, addMonitors, install, provides, requires
-
-
-
-
Method Detail
-
addCapabilityRequirement
@Deprecated <I> CapabilityServiceBuilder<T> addCapabilityRequirement(String capabilityName, Class<I> type, org.jboss.msc.inject.Injector<I> target, String... referenceNames)
Deprecated.UserequiresCapability(String, Class, String...)instead. This method will be removed in a future release.Adds capability requirement with injection to service which we are building- Type Parameters:
I- the type of the value of the dependency- Parameters:
capabilityName- name of capability requirementtype- the class of the value of the dependencytarget- the injector into which the dependency should be storedreferenceNames- dynamic part(s) of capability name, only useful when using dynamic named capabilities- Returns:
- this builder
-
addCapabilityRequirement
@Deprecated <I> CapabilityServiceBuilder<T> addCapabilityRequirement(String capabilityName, Class<I> type, org.jboss.msc.inject.Injector<I> target)
Deprecated.UserequiresCapability(String, Class, String...)instead. This method will be removed in a future release.Adds capability requirement with injection to capability which we are building- Type Parameters:
I- the type of the value of the dependency- Parameters:
capabilityName- name of capability requirementtype- the class of the value of the dependencytarget- the injector into which the dependency should be stored- Returns:
- this builder
-
addCapabilityRequirement
@Deprecated <I> CapabilityServiceBuilder<T> addCapabilityRequirement(String capabilityName, Class<I> type)
Deprecated.UserequiresCapability(String, Class, String...)instead. This method will be removed in a future release.Adds capability requirement to capability which we are building- Type Parameters:
I- the type of the value of the dependency- Parameters:
capabilityName- name of capability requirementtype- the class of the value of the dependency- Returns:
- this builder
-
setInitialMode
CapabilityServiceBuilder<T> setInitialMode(org.jboss.msc.service.ServiceController.Mode mode)
- Specified by:
setInitialModein interfaceorg.jboss.msc.service.ServiceBuilder<T>- Returns:
- this builder
-
setInstance
CapabilityServiceBuilder<T> setInstance(org.jboss.msc.Service service)
- Specified by:
setInstancein interfaceorg.jboss.msc.service.ServiceBuilder<T>- Returns:
- this builder
-
provides
<V> Consumer<V> provides(RuntimeCapability<?>... capabilities)
Provide value under given capabilities.- Type Parameters:
V- consumed value type- Parameters:
capabilities- capabilities provided value represent- Returns:
- consumer providing value
-
provides
<V> Consumer<V> provides(RuntimeCapability<?> capability, org.jboss.msc.service.ServiceName alias, org.jboss.msc.service.ServiceName... aliases)
Provide value under given capability and aliases.- Type Parameters:
V- consumed value type- Parameters:
capability- name of capability provided value representalias- alias name of provided valuealiases- other aliases of provided value- Returns:
- consumer providing value
-
provides
<V> Consumer<V> provides(RuntimeCapability<?>[] capabilities, org.jboss.msc.service.ServiceName[] aliases)
Provide value under given capabilities and alias names.- Type Parameters:
V- consumed value type- Parameters:
capabilities- capabilities provided value representaliases- alias names of provided value- Returns:
- consumer providing value
-
requiresCapability
<V> Supplier<V> requiresCapability(String capabilityName, Class<V> dependencyType, String... referenceNames)
Capability requirement.- Type Parameters:
V- the type of the value of the dependency- Parameters:
capabilityName- name of capability requirementdependencyType- the class of the value of the dependencyreferenceNames- dynamic part(s) of capability name, only useful when using dynamic named capabilities- Returns:
- readonly dependency reference
-
-