public abstract class ConfigurableNavigationHandler extends NavigationHandler
ConfigurableNavigationHandler
extends the contract of NavigationHandler to allow runtime
inspection of the NavigationCases that make up the rule-base
for navigation. An implementation compliant with the version of the
specification in which this class was introduced (or a later version)
must make it so that its NavigationHandler is an
extension of this class.
| Constructor and Description |
|---|
ConfigurableNavigationHandler() |
| Modifier and Type | Method and Description |
|---|---|
abstract NavigationCase |
getNavigationCase(FacesContext context,
String fromAction,
String outcome)
Return the |
NavigationCase |
getNavigationCase(FacesContext context,
String fromAction,
String outcome,
String toFlowDocumentId)
Return the |
abstract Map<String,Set<NavigationCase>> |
getNavigationCases()
Return a |
void |
inspectFlow(FacesContext context,
Flow flow)
Called by the flow system to cause the flow to be inspected for navigation rules. |
void |
performNavigation(String outcome)
A convenience method to signal the JavaServer Faces implementation to perform navigation with the provided outcome. |
handleNavigation, handleNavigationpublic abstract NavigationCase getNavigationCase(FacesContext context, String fromAction, String outcome)
Return the NavigationCase
representing the navigation that would be taken had NavigationHandler.handleNavigation(javax.faces.context.FacesContext, java.lang.String, java.lang.String) been called with the same
arguments or null if there is no such case.
context - The FacesContext for the current requestfromAction - The action binding expression that was evaluated
to retrieve the specified outcome, or null if the
outcome was acquired by some other meansoutcome - The logical outcome returned by a previous invoked
application action (which may be null)null.NullPointerException - if context
is nullpublic NavigationCase getNavigationCase(FacesContext context, String fromAction, String outcome, String toFlowDocumentId)
Return the NavigationCase
representing the navigation that would be taken had NavigationHandler.handleNavigation(javax.faces.context.FacesContext, java.lang.String, java.lang.String) 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(javax.faces.context.FacesContext, java.lang.String, java.lang.String),
ignoring the toFlowDocumentId parameter.
context - The FacesContext for the current requestfromAction - The action binding expression that was evaluated
to retrieve the specified outcome, or null if the
outcome was acquired by some other meansoutcome - The logical outcome returned by a previous invoked
application action (which may be null)toFlowDocumentId - The value of the toFlowDocumentId property
for the navigation case (which may be null)null.NullPointerException - if context
is nullpublic abstract Map<String,Set<NavigationCase>> 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.
public void performNavigation(String outcome)
A convenience method to signal the JavaServer 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.
outcome - the provided outcome.IllegalStateException - if this method is called after
this instance has been releasedpublic void inspectFlow(FacesContext context, Flow flow)
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.
context - the Faces context.flow - the flow.Copyright © 1996-2017, Oracle and/or its affiliates. All Rights Reserved. Use is subject to license terms.