Package com.sun.faces.util
Class RequestStateManager
java.lang.Object
com.sun.faces.util.RequestStateManager
public class RequestStateManager extends Object
This helper class is used a central location for per-request state that is needed by Mojarra. This class leverages FacesContext.getAttributes() which as added in 2.0 instead of the request scope to prevent the unecessary triggering of ServletRequestAttributeListeners.
-
Field Summary
Fields Modifier and Type Field Description static String
ACTUAL_VIEW_MAP
This attribute is used by the StateMangaer during restore view.static String
AFTER_VIEW_CONTENT
Attribute for storing any content within a page that is defined after the closing f:view.static String
DISABLED_VALIDATORS
Used to communicate which validators have been disabled for a particular nesting level within a view.static String
EL_RESOLVER_CHAIN_TYPE_NAME
Attribute describing the current ELResolver chain type (either JSP or Faces)static String
FACELET_FACTORY
Used to store the FaceletFactory as other components may need to use it during their processing.static String
FACES_VIEW_STATE
Leveraged by the RequestStateManager to allow deprecated ResponseStateManager methods to continue to work if called.static String
INVOCATION_PATH
Attribute to store theFacesServlet
path of the original request.static String
LOGICAL_VIEW_MAP
This attribute is used by the StateMangaer during restore view.static String
PROCESSED_RADIO_BUTTON_GROUPS
Used to store the Set of ResourceDependency annotations that have been processed.static String
PROCESSED_RESOURCE_DEPENDENCIES
Used to store the Set of ResourceDependency annotations that have been processed.static String
REENTRANT_GUARD
This attribute protects against infinite loops on expressions that touch a custom legacy VariableResolver that delegates to its parent VariableResolver.static String
RENDER_KIT_IMPL_REQ
Attribute defining theRenderKit
being used for this request.static String
RENDERED_RESOURCE_DEPENDENCIES
Used to store the Set of resource dependencies that have been rendered.static String
RESOURCE_REQUEST
Leveraged by ResourceHandlerImpl to denote whether or not a request is a resource request.static String
SCRIPT_STATE
Used to indicate whether or not JSF script has already been installed.static String
TARGET_COMPONENT_ATTRIBUTE_NAME
Attribute indicating the current component being processed.static String
VIEWTAG_STACK_ATTR_NAME
This attribute is used by the loadBundle tag for tracking views/subviews within the logical view (this is only used when 1.1 compatibility is enabled). -
Constructor Summary
Constructors Constructor Description RequestStateManager()
-
Method Summary
Modifier and Type Method Description static void
clearAttributesOnChangeOfView(FacesContext ctx)
Remove all request state attributes associated that need to be cleared on change of view.static boolean
containsKey(FacesContext ctx, String key)
static <T> T
get(FacesContext ctx, String key)
static Map<String,Object>
getStateMap(FacesContext ctx)
static Object
remove(FacesContext ctx, String key)
Remove the value associated with the specified key.static void
set(FacesContext ctx, String key, Object value)
Adds the specified key and value to the Map stored in the request.
-
Field Details
-
AFTER_VIEW_CONTENT
Attribute for storing any content within a page that is defined after the closing f:view.- See Also:
- Constant Field Values
-
EL_RESOLVER_CHAIN_TYPE_NAME
Attribute describing the current ELResolver chain type (either JSP or Faces)- See Also:
- Constant Field Values
-
TARGET_COMPONENT_ATTRIBUTE_NAME
Attribute indicating the current component being processed. This will be used when generating bytecode for custom converters.- See Also:
- Constant Field Values
-
RENDER_KIT_IMPL_REQ
Attribute defining theRenderKit
being used for this request.- See Also:
- Constant Field Values
-
LOGICAL_VIEW_MAP
This attribute is used by the StateMangaer during restore view. The values are stored in the request for later use.- See Also:
- Constant Field Values
-
ACTUAL_VIEW_MAP
This attribute is used by the StateMangaer during restore view. The values are stored in the request for later use.- See Also:
- Constant Field Values
-
VIEWTAG_STACK_ATTR_NAME
This attribute is used by the loadBundle tag for tracking views/subviews within the logical view (this is only used when 1.1 compatibility is enabled).- See Also:
- Constant Field Values
-
INVOCATION_PATH
Attribute to store theFacesServlet
path of the original request.- See Also:
- Constant Field Values
-
REENTRANT_GUARD
This attribute protects against infinite loops on expressions that touch a custom legacy VariableResolver that delegates to its parent VariableResolver.- See Also:
- Constant Field Values
-
FACES_VIEW_STATE
Leveraged by the RequestStateManager to allow deprecated ResponseStateManager methods to continue to work if called.- See Also:
- Constant Field Values
-
RESOURCE_REQUEST
Leveraged by ResourceHandlerImpl to denote whether or not a request is a resource request. ABoolean
value will be assoicated with this key.- See Also:
- Constant Field Values
-
FACELET_FACTORY
Used to store the FaceletFactory as other components may need to use it during their processing.- See Also:
- Constant Field Values
-
SCRIPT_STATE
Used to indicate whether or not JSF script has already been installed.- See Also:
- Constant Field Values
-
DISABLED_VALIDATORS
Used to communicate which validators have been disabled for a particular nesting level within a view.- See Also:
- Constant Field Values
-
PROCESSED_RESOURCE_DEPENDENCIES
Used to store the Set of ResourceDependency annotations that have been processed.- See Also:
- Constant Field Values
-
PROCESSED_RADIO_BUTTON_GROUPS
Used to store the Set of ResourceDependency annotations that have been processed.- See Also:
- Constant Field Values
-
RENDERED_RESOURCE_DEPENDENCIES
Used to store the Set of resource dependencies that have been rendered.- See Also:
- Constant Field Values
-
-
Constructor Details
-
RequestStateManager
public RequestStateManager()
-
-
Method Details
-
get
- Parameters:
ctx
- theFacesContext
for the current requestkey
- the key for the value- Returns:
- the value associated with the specified key.
-
set
Adds the specified key and value to the Map stored in the request. If
value
isnull
, that key/value pair will be removed from the Map.- Parameters:
ctx
- theFacesContext
for the current requestkey
- the key for the valuevalue
- the value to store
-
remove
Remove the value associated with the specified key.
- Parameters:
ctx
- theFacesContext
for the current requestkey
- the key for the value- Returns:
- the value previous associated with the specified key, if any
-
clearAttributesOnChangeOfView
Remove all request state attributes associated that need to be cleared on change of view.
- Parameters:
ctx
- theFacesContext
for the current request
-
containsKey
- Parameters:
ctx
- theFacesContext
for the current requestkey
- the key for the value- Returns:
- true if the specified key exists in the Map
-
getStateMap
- Parameters:
ctx
- theFacesContext
for the current request- Returns:
- the Map from the request containing the implementation specific attributes needed for processing
-