Class AbstractComponentManager<T>
- java.lang.Object
-
- org.codehaus.plexus.component.manager.AbstractComponentManager<T>
-
- All Implemented Interfaces:
ComponentManager<T>
- Direct Known Subclasses:
PerLookupComponentManager
,SingletonComponentManager
public abstract class AbstractComponentManager<T> extends Object implements ComponentManager<T>
-
-
Field Summary
Fields Modifier and Type Field Description protected ComponentBuilder<T>
builder
protected Map<Object,org.codehaus.plexus.classworlds.realm.ClassRealm>
componentContextRealms
Contains a mapping from singleton instances to the realms they were used to configure with.protected ComponentDescriptor<T>
componentDescriptor
protected MutablePlexusContainer
container
-
Fields inherited from interface org.codehaus.plexus.component.manager.ComponentManager
NEXT_START_ID, ROLE
-
-
Constructor Summary
Constructors Constructor Description AbstractComponentManager(MutablePlexusContainer container, LifecycleHandler lifecycleHandler, ComponentDescriptor<T> componentDescriptor, String role, String roleHint)
-
Method Summary
All Methods Instance Methods Concrete Methods Deprecated Methods Modifier and Type Method Description protected boolean
connected()
protected T
createComponentInstance()
protected void
decrementConnectionCount()
void
dissociateComponentRealm(org.codehaus.plexus.classworlds.realm.ClassRealm realm)
protected void
endComponentLifecycle(Object component)
ComponentDescriptor<T>
getComponentDescriptor()
int
getConnections()
MutablePlexusContainer
getContainer()
LifecycleHandler
getLifecycleHandler()
Logger
getLogger()
org.codehaus.plexus.classworlds.realm.ClassRealm
getRealm()
String
getRole()
String
getRoleHint()
long
getStartId()
Deprecated.for internal use only..Class<? extends T>
getType()
protected void
incrementConnectionCount()
void
start(Object component)
-
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
-
Methods inherited from interface org.codehaus.plexus.component.manager.ComponentManager
dispose, getComponent, release
-
-
-
-
Field Detail
-
container
protected final MutablePlexusContainer container
-
componentDescriptor
protected final ComponentDescriptor<T> componentDescriptor
-
builder
protected final ComponentBuilder<T> builder
-
componentContextRealms
protected final Map<Object,org.codehaus.plexus.classworlds.realm.ClassRealm> componentContextRealms
Contains a mapping from singleton instances to the realms they were used to configure with. This realm will be used to call all lifecycle methods. This will define a synchronized map, make sure to synchronize the map when iterating.
-
-
Constructor Detail
-
AbstractComponentManager
public AbstractComponentManager(MutablePlexusContainer container, LifecycleHandler lifecycleHandler, ComponentDescriptor<T> componentDescriptor, String role, String roleHint)
-
-
Method Detail
-
getComponentDescriptor
public ComponentDescriptor<T> getComponentDescriptor()
- Specified by:
getComponentDescriptor
in interfaceComponentManager<T>
-
getType
public Class<? extends T> getType()
- Specified by:
getType
in interfaceComponentManager<T>
-
getRealm
public org.codehaus.plexus.classworlds.realm.ClassRealm getRealm()
- Specified by:
getRealm
in interfaceComponentManager<T>
-
getRole
public String getRole()
- Specified by:
getRole
in interfaceComponentManager<T>
-
getRoleHint
public String getRoleHint()
- Specified by:
getRoleHint
in interfaceComponentManager<T>
-
getLifecycleHandler
public LifecycleHandler getLifecycleHandler()
- Specified by:
getLifecycleHandler
in interfaceComponentManager<T>
- Returns:
LifecycleHandler
.
-
incrementConnectionCount
protected void incrementConnectionCount()
-
decrementConnectionCount
protected void decrementConnectionCount()
-
connected
protected boolean connected()
-
getConnections
public int getConnections()
- Specified by:
getConnections
in interfaceComponentManager<T>
-
start
public void start(Object component) throws PhaseExecutionException
- Specified by:
start
in interfaceComponentManager<T>
- Throws:
PhaseExecutionException
-
getStartId
public long getStartId()
Deprecated.for internal use only.. will be removed- Specified by:
getStartId
in interfaceComponentManager<T>
- Returns:
- The start id.
-
createComponentInstance
protected T createComponentInstance() throws ComponentInstantiationException, ComponentLifecycleException
-
endComponentLifecycle
protected void endComponentLifecycle(Object component) throws ComponentLifecycleException
- Throws:
ComponentLifecycleException
-
getContainer
public MutablePlexusContainer getContainer()
- Specified by:
getContainer
in interfaceComponentManager<T>
-
getLogger
public Logger getLogger()
-
dissociateComponentRealm
public void dissociateComponentRealm(org.codehaus.plexus.classworlds.realm.ClassRealm realm) throws ComponentLifecycleException
- Specified by:
dissociateComponentRealm
in interfaceComponentManager<T>
- Throws:
ComponentLifecycleException
-
-