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 java.lang.Object implements ComponentManager<T>
-
-
Field Summary
Fields Modifier and Type Field Description protected ComponentBuilder<T>
builder
protected java.util.Map<java.lang.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
private int
connections
protected MutablePlexusContainer
container
private LifecycleHandler
lifecycleHandler
private org.codehaus.plexus.classworlds.realm.ClassRealm
realm
private java.lang.String
role
private java.lang.String
roleHint
private long
startId
private java.lang.Class<? extends T>
type
-
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, java.lang.String role, java.lang.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(java.lang.Object component)
ComponentDescriptor<T>
getComponentDescriptor()
int
getConnections()
MutablePlexusContainer
getContainer()
LifecycleHandler
getLifecycleHandler()
Logger
getLogger()
org.codehaus.plexus.classworlds.realm.ClassRealm
getRealm()
java.lang.String
getRole()
java.lang.String
getRoleHint()
long
getStartId()
Deprecated.for internal use only..java.lang.Class<? extends T>
getType()
protected void
incrementConnectionCount()
void
start(java.lang.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
-
realm
private final org.codehaus.plexus.classworlds.realm.ClassRealm realm
-
componentDescriptor
protected final ComponentDescriptor<T> componentDescriptor
-
type
private final java.lang.Class<? extends T> type
-
role
private final java.lang.String role
-
roleHint
private final java.lang.String roleHint
-
builder
protected final ComponentBuilder<T> builder
-
lifecycleHandler
private final LifecycleHandler lifecycleHandler
-
componentContextRealms
protected final java.util.Map<java.lang.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.
-
connections
private int connections
-
startId
private long startId
-
-
Constructor Detail
-
AbstractComponentManager
public AbstractComponentManager(MutablePlexusContainer container, LifecycleHandler lifecycleHandler, ComponentDescriptor<T> componentDescriptor, java.lang.String role, java.lang.String roleHint)
-
-
Method Detail
-
getComponentDescriptor
public ComponentDescriptor<T> getComponentDescriptor()
- Specified by:
getComponentDescriptor
in interfaceComponentManager<T>
-
getType
public java.lang.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 java.lang.String getRole()
- Specified by:
getRole
in interfaceComponentManager<T>
-
getRoleHint
public java.lang.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(java.lang.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(java.lang.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
-
-