Top Description Fields Constructors Methods
jakarta.faces.application

public abstract Class ConfigurableNavigationHandlerWrapper

extends ConfigurableNavigationHandler
implements FacesWrapper<ConfigurableNavigationHandler>
Class Inheritance
All Implemented Interfaces
jakarta.faces.FacesWrapper
Imports
java.util.Map, .Set, jakarta.faces.FacesWrapper, jakarta.faces.context.FacesContext, jakarta.faces.flow.Flow

Provides a simple implementation of ConfigurableNavigationHandler that can be subclassed by developers wishing to provide specialized behavior to an existing ConfigurableNavigationHandler instance. The default implementation of all methods is to call through to the wrapped ConfigurableNavigationHandler.

Usage: extend this class and push the implementation being wrapped to the constructor and use getWrapped to access the instance being wrapped.

Since
2.2

Field Summary

Modifier and TypeField and Description
private ConfigurableNavigationHandler

Constructor Summary

AccessConstructor and Description
public
ConfigurableNavigationHandlerWrapper()
Deprecated Use the other constructor taking the implementation being wrapped.

public
ConfigurableNavigationHandlerWrapper(ConfigurableNavigationHandler
The implementation being wrapped.
wrapped
)

If this configurable navigation handler has been decorated, the implementation doing the decorating should push the implementation being wrapped to this constructor.

Method Summary

Modifier and TypeMethod and Description
public NavigationCase
getNavigationCase(FacesContext
The FacesContext for the current request
context
,
String
The action binding expression that was evaluated to retrieve the specified outcome, or null if the outcome was acquired by some other means
fromAction
,
String
The logical outcome returned by a previous invoked application action (which may be null)
outcome
)

Implements abstract jakarta.faces.application.ConfigurableNavigationHandler.getNavigationCase.

Return the NavigationCase representing the navigation that would be taken had NavigationHandler#handleNavigation been called with the same arguments or null if there is no such case.

public NavigationCase
getNavigationCase(FacesContext
The FacesContext for the current request
context
,
String
The action binding expression that was evaluated to retrieve the specified outcome, or null if the outcome was acquired by some other means
fromAction
,
String
The logical outcome returned by a previous invoked application action (which may be null)
outcome
,
String
The value of the toFlowDocumentId property for the navigation case (which may be null)
toFlowDocumentId
)

Overrides jakarta.faces.application.ConfigurableNavigationHandler.getNavigationCase.

Return the NavigationCase representing the navigation that would be taken had NavigationHandler#handleNavigation been called with the same arguments or null if there is no such case.

public Map<String, Set<NavigationCase>>
getNavigationCases()

Implements abstract jakarta.faces.application.ConfigurableNavigationHandler.getNavigationCases.

Return a Map<String, Set<NavigationCase>> where the keys are <from-view-id> values and the values are Set<NavigationCase> where each element in the Set is a NavigationCase that applies to that <from-view-id>.

public ConfigurableNavigationHandler
getWrapped()

Implements jakarta.faces.FacesWrapper.getWrapped.

A class that implements this interface uses this method to return an instance of the class being wrapped.

public void
handleNavigation(FacesContext
The FacesContext for the current request
context
,
String
The action binding expression that was evaluated to retrieve the specified outcome, or null if the outcome was acquired by some other means
fromAction
,
String
The logical outcome returned by a previous invoked application action (which may be null)
outcome
)

Implements abstract jakarta.faces.application.NavigationHandler.handleNavigation.

Perform navigation processing based on the state information in the specified FacesContext, plus the outcome string returned by an executed application action.

public void
inspectFlow(FacesContext
the Faces context.
context
,
Flow
the flow.
flow
)

Overrides jakarta.faces.application.ConfigurableNavigationHandler.inspectFlow.

Called by the flow system to cause the flow to be inspected for navigation rules.

public void
performNavigation(String
the provided outcome.
outcome
)

Overrides jakarta.faces.application.ConfigurableNavigationHandler.performNavigation.

A convenience method to signal the Jakarta Faces implementation to perform navigation with the provided outcome.

Field Detail

wrappedback to summary
private ConfigurableNavigationHandler wrapped

Constructor Detail

ConfigurableNavigationHandlerWrapperback to summary
public ConfigurableNavigationHandlerWrapper()

Deprecated

Use the other constructor taking the implementation being wrapped.

Annotations
@Deprecated
ConfigurableNavigationHandlerWrapperback to summary
public ConfigurableNavigationHandlerWrapper(ConfigurableNavigationHandler wrapped)

If this configurable navigation handler 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:ConfigurableNavigationHandler

The implementation being wrapped.

Since
2.3

Method Detail

getNavigationCaseback to summary
public NavigationCase getNavigationCase(FacesContext context, String fromAction, String outcome)

Implements abstract jakarta.faces.application.ConfigurableNavigationHandler.getNavigationCase.

Doc from jakarta.faces.application.ConfigurableNavigationHandler.getNavigationCase.

Return the NavigationCase representing the navigation that would be taken had NavigationHandler#handleNavigation been called with the same arguments or null if there is no such case.

Parameters
context:FacesContext

The FacesContext for the current request

fromAction:String

The action binding expression that was evaluated to retrieve the specified outcome, or null if the outcome was acquired by some other means

outcome:String

The logical outcome returned by a previous invoked application action (which may be null)

Returns:NavigationCase

the navigation case, or null.

Annotations
@Override
getNavigationCaseback to summary
public NavigationCase getNavigationCase(FacesContext context, String fromAction, String outcome, String toFlowDocumentId)

Overrides jakarta.faces.application.ConfigurableNavigationHandler.getNavigationCase.

Doc from jakarta.faces.application.ConfigurableNavigationHandler.getNavigationCase.

Return the NavigationCase representing the navigation that would be taken had NavigationHandler#handleNavigation been called with the same arguments or null if there is no such case. Implementations that comply the version of the specification in which this method was introduced must override this method. For compatibility with decorated implementations that comply with an earlier version of the specification, an implementation is provided that simply calls through to getNavigationCase(jakarta.faces.context.FacesContext, java.lang.String, java.lang.String), ignoring the toFlowDocumentId parameter.

Parameters
context:FacesContext

The FacesContext for the current request

fromAction:String

The action binding expression that was evaluated to retrieve the specified outcome, or null if the outcome was acquired by some other means

outcome:String

The logical outcome returned by a previous invoked application action (which may be null)

toFlowDocumentId:String

The value of the toFlowDocumentId property for the navigation case (which may be null)

Returns:NavigationCase

the navigation case, or null.

Annotations
@Override
getNavigationCasesback to summary
public Map<String, Set<NavigationCase>> getNavigationCases()

Implements abstract jakarta.faces.application.ConfigurableNavigationHandler.getNavigationCases.

Doc from jakarta.faces.application.ConfigurableNavigationHandler.getNavigationCases.

Return a Map<String, Set<NavigationCase>> where the keys are <from-view-id> values and the values are Set<NavigationCase> where each element in the Set is a NavigationCase that applies to that <from-view-id>. The implementation must support live modifications to this Map.

Returns:Map<String, Set<NavigationCase>>

a map with navigation cases.

Annotations
@Override
getWrappedback to summary
public ConfigurableNavigationHandler getWrapped()

Implements jakarta.faces.FacesWrapper.getWrapped.

Doc from jakarta.faces.FacesWrapper.getWrapped.

A class that implements this interface uses this method to return an instance of the class being wrapped.

Returns:ConfigurableNavigationHandler

the wrapped instance.

Annotations
@Override
handleNavigationback to summary
public void handleNavigation(FacesContext context, String fromAction, String outcome)

Implements abstract jakarta.faces.application.NavigationHandler.handleNavigation.

Doc from jakarta.faces.application.NavigationHandler.handleNavigation.

Perform navigation processing based on the state information in the specified FacesContext, plus the outcome string returned by an executed application action.

If the implementation class also extends ConfigurableNavigationHandler, the implementation must guarantee that the logic used in a call to ConfigurableNavigationHandler#getNavigationCase is used in this method to determine the correct navigation.

This method must set the render targets (used in partial rendering) to render all invoking jakarta.faces.context.PartialViewContext#setRenderAll) if the view identifier has changed as the result of an application action (to take into account Ajax requests).

Parameters
context:FacesContext

The FacesContext for the current request

fromAction:String

The action binding expression that was evaluated to retrieve the specified outcome, or null if the outcome was acquired by some other means

outcome:String

The logical outcome returned by a previous invoked application action (which may be null)

Annotations
@Override
inspectFlowback to summary
public void inspectFlow(FacesContext context, Flow flow)

Overrides jakarta.faces.application.ConfigurableNavigationHandler.inspectFlow.

Doc from jakarta.faces.application.ConfigurableNavigationHandler.inspectFlow.

Called by the flow system to cause the flow to be inspected for navigation rules. For backward compatibility with earlier implementations, an empty method is provided.

Parameters
context:FacesContext

the Faces context.

flow:Flow

the flow.

Annotations
@Override
performNavigationback to summary
public void performNavigation(String outcome)

Overrides jakarta.faces.application.ConfigurableNavigationHandler.performNavigation.

Doc from jakarta.faces.application.ConfigurableNavigationHandler.performNavigation.

A convenience method to signal the Jakarta Faces implementation to perform navigation with the provided outcome. When the NavigationHandler is invoked, the current viewId is treated as the "from viewId" and the "from action" is null.

Parameters
outcome:String

the provided outcome.

Annotations
@Override