Package org.picocontainer.lifecycle
Class CompositeLifecycleStrategy
- java.lang.Object
-
- org.picocontainer.lifecycle.CompositeLifecycleStrategy
-
- All Implemented Interfaces:
LifecycleStrategy
public class CompositeLifecycleStrategy extends java.lang.Object implements LifecycleStrategy
Allow for use of alternate LifecycleStrategy strategies to be used at the same time. A component can be started/stopped/disposed according to *any* of the supplied LifecycleStrategy instances.- Author:
- Paul Hammant
-
-
Constructor Summary
Constructors Constructor Description CompositeLifecycleStrategy(LifecycleStrategy... alternateStrategies)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description void
dispose(java.lang.Object component)
Invoke the "dispose" method on the component instance if this is disposable.boolean
hasLifecycle(java.lang.Class<?> type)
Test if a component instance has a lifecycle.boolean
isLazy(ComponentAdapter<?> adapter)
Is a component eager (not lazy) in that it should start when start() or equivalent is called, or lazy (it will only start on first getComponent() ).void
start(java.lang.Object component)
Invoke the "start" method on the component instance if this is startable.void
stop(java.lang.Object component)
Invoke the "stop" method on the component instance if this is stoppable.
-
-
-
Constructor Detail
-
CompositeLifecycleStrategy
public CompositeLifecycleStrategy(LifecycleStrategy... alternateStrategies)
-
-
Method Detail
-
start
public void start(java.lang.Object component)
Description copied from interface:LifecycleStrategy
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.- Specified by:
start
in interfaceLifecycleStrategy
- Parameters:
component
- the instance of the component to start
-
stop
public void stop(java.lang.Object component)
Description copied from interface:LifecycleStrategy
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.- Specified by:
stop
in interfaceLifecycleStrategy
- Parameters:
component
- the instance of the component to stop
-
dispose
public void dispose(java.lang.Object component)
Description copied from interface:LifecycleStrategy
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.- Specified by:
dispose
in interfaceLifecycleStrategy
- Parameters:
component
- the instance of the component to dispose
-
hasLifecycle
public boolean hasLifecycle(java.lang.Class<?> type)
Description copied from interface:LifecycleStrategy
Test if a component instance has a lifecycle.- Specified by:
hasLifecycle
in interfaceLifecycleStrategy
- Parameters:
type
- the component's type- Returns:
true
if the component has a lifecycle
-
isLazy
public boolean isLazy(ComponentAdapter<?> adapter)
Description copied from interface:LifecycleStrategy
Is a component eager (not lazy) in that it should start when start() or equivalent is called, or lazy (it will only start on first getComponent() ). The default is the first of those two.- Specified by:
isLazy
in interfaceLifecycleStrategy
- Returns:
- true if lazy, false if not lazy
-
-