Package org.picocontainer.lifecycle
Class StartableLifecycleStrategy
- java.lang.Object
-
- org.picocontainer.lifecycle.AbstractMonitoringLifecycleStrategy
-
- org.picocontainer.lifecycle.StartableLifecycleStrategy
-
- All Implemented Interfaces:
Serializable
,ComponentMonitorStrategy
,LifecycleStrategy
public class StartableLifecycleStrategy extends AbstractMonitoringLifecycleStrategy
Startable lifecycle strategy. Starts and stops component if Startable, and disposes it if Disposable. A subclass of this class can define other intrfaces for Startable/Disposable as well as other method names for start/stop/dispose- See Also:
Startable
,Disposable
, Serialized Form
-
-
Constructor Summary
Constructors Constructor Description StartableLifecycleStrategy(ComponentMonitor monitor)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description void
dispose(Object component)
Invoke the "dispose" method on the component instance if this is disposable.protected void
disposeComponent(Object component)
protected Class
getDisposableInterface()
protected String
getDisposeMethodName()
Retrieve the lifecycle method name that represents the dispose method.protected Class
getStartableInterface()
protected String
getStartMethodName()
Retrieve the lifecycle method name that represents the start method.protected String
getStopMethodName()
Retrieve the lifecycle method name that represents the stop method.boolean
hasLifecycle(Class<?> type)
Test if a component instance has a lifecycle.void
start(Object component)
Invoke the "start" method on the component instance if this is startable.protected void
startComponent(Object component)
void
stop(Object component)
Invoke the "stop" method on the component instance if this is stoppable.protected void
stopComponent(Object component)
-
Methods inherited from class org.picocontainer.lifecycle.AbstractMonitoringLifecycleStrategy
changeMonitor, currentMonitor, isLazy
-
-
-
-
Constructor Detail
-
StartableLifecycleStrategy
public StartableLifecycleStrategy(ComponentMonitor monitor)
-
-
Method Detail
-
getDisposeMethodName
protected String getDisposeMethodName()
Retrieve the lifecycle method name that represents the dispose method.- Returns:
- the dispose method name. ('dispose')
-
getStopMethodName
protected String getStopMethodName()
Retrieve the lifecycle method name that represents the stop method.- Returns:
- the stop method name ('stop')
-
getStartMethodName
protected String getStartMethodName()
Retrieve the lifecycle method name that represents the start method.- Returns:
- the stop method name ('start')
-
start
public void start(Object component)
Invoke the "start" method on the component instance if this is startable. It is up to the implementation of the strategy what "start" and "startable" means.- Parameters:
component
- the instance of the component to start
-
startComponent
protected void startComponent(Object component)
-
stopComponent
protected void stopComponent(Object component)
-
disposeComponent
protected void disposeComponent(Object component)
-
stop
public void stop(Object component)
Invoke the "stop" method on the component instance if this is stoppable. It is up to the implementation of the strategy what "stop" and "stoppable" means.- Parameters:
component
- the instance of the component to stop
-
dispose
public void dispose(Object component)
Invoke the "dispose" method on the component instance if this is disposable. It is up to the implementation of the strategy what "dispose" and "disposable" means.- Parameters:
component
- the instance of the component to dispose
-
hasLifecycle
public boolean hasLifecycle(Class<?> type)
Test if a component instance has a lifecycle.- Parameters:
type
- the component's type- Returns:
true
if the component has a lifecycle
-
getDisposableInterface
protected Class getDisposableInterface()
-
getStartableInterface
protected Class getStartableInterface()
-
-