Class Cached<T>

All Implemented Interfaces:
Serializable, Behavior<T>, ComponentAdapter<T>, ComponentLifecycle<T>, ComponentMonitorStrategy, LifecycleStrategy

public class Cached<T> extends Stored<T>

ComponentAdapter implementation that caches the component instance.

This adapter supports components with a lifecycle, as it is a lifecycle manager which will apply the delegate's lifecycle strategy to the cached component instance. The lifecycle state is maintained so that the component instance behaves in the expected way: it can't be started if already started, it can't be started or stopped if disposed, it can't be stopped if not started, it can't be disposed if already disposed.

Author:
Mauro Talevi
See Also: