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
Lifecycleinstances. Implementations of Jakarta Faces must provide at least a default implementation ofLifecycle. Advanced implementations (or external third party libraries) MAY provide additionalLifecycleimplementations (keyed by lifecycle identifiers) for performing different types of request processing on a per-request basis.There must be one
LifecycleFactoryinstance 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 StringDEFAULT_LIFECYCLEThe lifecycle identifier for the defaultLifecycleinstance 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 voidaddLifecycle(String lifecycleId, Lifecycle lifecycle)Register a newLifecycleinstance, associated with the specifiedlifecycleId, to be supported by thisLifecycleFactory.abstract LifecyclegetLifecycle(String lifecycleId)Create (if needed) and return aLifecycleinstance for the specified lifecycle identifier.abstract Iterator<String>getLifecycleIds()Return anIteratorover the set of lifecycle identifiers supported by this factory.LifecycleFactorygetWrapped()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
Lifecycleinstance 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:
getWrappedin interfaceFacesWrapper<LifecycleFactory>- Returns:
- the wrapped instance.
- Since:
- 2.0
-
addLifecycle
public abstract void addLifecycle(String lifecycleId, Lifecycle lifecycle)
Register a new
Lifecycleinstance, associated with the specifiedlifecycleId, to be supported by thisLifecycleFactory. This method may be called at any time, and makes the correspondingLifecycleinstance available throughout the remaining lifetime of this web application.- Parameters:
lifecycleId- Identifier of the newLifecyclelifecycle-Lifecycleinstance that we are registering- Throws:
IllegalArgumentException- if aLifecyclewith the specifiedlifecycleIdhas already been registeredNullPointerException- iflifecycleIdorlifecycleisnull
-
getLifecycle
public abstract Lifecycle getLifecycle(String lifecycleId)
Create (if needed) and return a
Lifecycleinstance 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 sameLifecycleinstance.- Parameters:
lifecycleId- Lifecycle identifier of the requestedLifecycleinstance- Returns:
- the
Lifecycleinstance - Throws:
IllegalArgumentException- if noLifecycleinstance can be returned for the specified identifierNullPointerException- iflifecycleIdisnull
-
getLifecycleIds
public abstract Iterator<String> getLifecycleIds()
Return an
Iteratorover the set of lifecycle identifiers supported by this factory. This set must include the value specified byLifecycleFactory.DEFAULT_LIFECYCLE.- Returns:
- an
Iteratorover the set of lifecycle identifiers supported by this factory
-
-