com.dtolabs.rundeck.core.plugins
Class BaseProviderRegistryService<T>
java.lang.Object
com.dtolabs.rundeck.core.plugins.BaseProviderRegistryService<T>
- All Implemented Interfaces:
- FrameworkSupportService, ProviderService<T>
- Direct Known Subclasses:
- NodeDispatcherService, PluggableProviderRegistryService, WorkflowExecutionService
public abstract class BaseProviderRegistryService<T>
- extends java.lang.Object
- implements ProviderService<T>
BaseProviderRegistryService is an abstract base that provides a registry of available service providers based on
simple names. The service providers classes must have a no-arg constructor or a single-argument constructor with a Framework
argument
Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
registry
protected java.util.HashMap<java.lang.String,java.lang.Class<? extends T>> registry
instanceregistry
protected java.util.HashMap<java.lang.String,T> instanceregistry
framework
protected final Framework framework
BaseProviderRegistryService
public BaseProviderRegistryService(Framework framework)
registerClass
public void registerClass(java.lang.String name,
java.lang.Class<? extends T> clazz)
registerInstance
public void registerInstance(java.lang.String name,
T object)
providerOfType
public T providerOfType(java.lang.String providerName)
throws ExecutionServiceException
- Return the provider instance of the given name.
- Specified by:
providerOfType
in interface ProviderService<T>
- Throws:
ExecutionServiceException
listProviders
public java.util.List<ProviderIdent> listProviders()
- Specified by:
listProviders
in interface ProviderService<T>
createProviderInstanceFromType
protected T createProviderInstanceFromType(java.lang.Class<? extends T> execClass,
java.lang.String providerName)
throws ProviderCreationException
- Throws:
ProviderCreationException
hasValidProviderSignature
protected boolean hasValidProviderSignature(java.lang.Class clazz)