Class LifecycleFactory
- java.lang.Object
-
- jakarta.faces.lifecycle.LifecycleFactory
-
- All Implemented Interfaces:
FacesWrapper<LifecycleFactory>
public abstract class LifecycleFactory extends Object implements FacesWrapper<LifecycleFactory>
LifecycleFactory is a factory object that creates (if needed) and returns
Lifecycle
instances. Implementations of Jakarta Faces must provide at least a default implementation ofLifecycle
. Advanced implementations (or external third party libraries) MAY provide additionalLifecycle
implementations (keyed by lifecycle identifiers) for performing different types of request processing on a per-request basis.There must be one
LifecycleFactory
instance per web application that is utilizing Jakarta Faces. This instance can be acquired, in a portable manner, by calling:LifecycleFactory factory = (LifecycleFactory) FactoryFinder.getFactory(FactoryFinder.LIFECYCLE_FACTORY);
Usage: extend this class and push the implementation being wrapped to the constructor and use
getWrapped()
to access the instance being wrapped.
-
-
Field Summary
Fields Modifier and Type Field Description static String
DEFAULT_LIFECYCLE
The lifecycle identifier for the defaultLifecycle
instance for this Jakarta Faces implementation.
-
Constructor Summary
Constructors Constructor Description LifecycleFactory()
Deprecated.Use the other constructor taking the implementation being wrapped.LifecycleFactory(LifecycleFactory wrapped)
If this factory has been decorated, the implementation doing the decorating should push the implementation being wrapped to this constructor.
-
Method Summary
All Methods Instance Methods Abstract Methods Concrete Methods Modifier and Type Method Description abstract void
addLifecycle(String lifecycleId, Lifecycle lifecycle)
Register a newLifecycle
instance, associated with the specifiedlifecycleId
, to be supported by thisLifecycleFactory
.abstract Lifecycle
getLifecycle(String lifecycleId)
Create (if needed) and return aLifecycle
instance for the specified lifecycle identifier.abstract Iterator<String>
getLifecycleIds()
Return anIterator
over the set of lifecycle identifiers supported by this factory.LifecycleFactory
getWrapped()
If this factory has been decorated, the implementation doing the decorating may override this method to provide access to the implementation being wrapped.
-
-
-
Field Detail
-
DEFAULT_LIFECYCLE
public static final String DEFAULT_LIFECYCLE
The lifecycle identifier for the default
Lifecycle
instance for this Jakarta Faces implementation.- See Also:
- Constant Field Values
-
-
Constructor Detail
-
LifecycleFactory
@Deprecated public LifecycleFactory()
Deprecated.Use the other constructor taking the implementation being wrapped.
-
LifecycleFactory
public LifecycleFactory(LifecycleFactory wrapped)
If this factory has been decorated, the implementation doing the decorating should push the implementation being wrapped to this constructor. The
getWrapped()
will then return the implementation being wrapped.- Parameters:
wrapped
- The implementation being wrapped.
-
-
Method Detail
-
getWrapped
public LifecycleFactory getWrapped()
If this factory has been decorated, the implementation doing the decorating may override this method to provide access to the implementation being wrapped.
- Specified by:
getWrapped
in interfaceFacesWrapper<LifecycleFactory>
- Returns:
- the wrapped instance.
- Since:
- 2.0
-
addLifecycle
public abstract void addLifecycle(String lifecycleId, Lifecycle lifecycle)
Register a new
Lifecycle
instance, associated with the specifiedlifecycleId
, to be supported by thisLifecycleFactory
. This method may be called at any time, and makes the correspondingLifecycle
instance available throughout the remaining lifetime of this web application.- Parameters:
lifecycleId
- Identifier of the newLifecycle
lifecycle
-Lifecycle
instance that we are registering- Throws:
IllegalArgumentException
- if aLifecycle
with the specifiedlifecycleId
has already been registeredNullPointerException
- iflifecycleId
orlifecycle
isnull
-
getLifecycle
public abstract Lifecycle getLifecycle(String lifecycleId)
Create (if needed) and return a
Lifecycle
instance for the specified lifecycle identifier. The set of available lifecycle identifiers is available via thegetLifecycleIds()
method.Each call to
getLifecycle()
for the samelifecycleId
, from within the same web application, must return the sameLifecycle
instance.- Parameters:
lifecycleId
- Lifecycle identifier of the requestedLifecycle
instance- Returns:
- the
Lifecycle
instance - Throws:
IllegalArgumentException
- if noLifecycle
instance can be returned for the specified identifierNullPointerException
- iflifecycleId
isnull
-
getLifecycleIds
public abstract Iterator<String> getLifecycleIds()
Return an
Iterator
over the set of lifecycle identifiers supported by this factory. This set must include the value specified byLifecycleFactory.DEFAULT_LIFECYCLE
.- Returns:
- an
Iterator
over the set of lifecycle identifiers supported by this factory
-
-