public class NavigationCase
extends java.lang.Object
NavigationCase represents a <navigation-case>
in
the navigation rule base, as well as the <from-view-id>
with
which this <navigation-case>
is a sibling.
Constructor and Description |
---|
NavigationCase(java.lang.String fromViewId,
java.lang.String fromAction,
java.lang.String fromOutcome,
java.lang.String condition,
java.lang.String toViewId,
java.util.Map<java.lang.String,java.util.List<java.lang.String>> parameters,
boolean redirect,
boolean includeViewParams)
Construct a new |
NavigationCase(java.lang.String fromViewId,
java.lang.String fromAction,
java.lang.String fromOutcome,
java.lang.String condition,
java.lang.String toViewId,
java.lang.String toFlowDocumentId,
java.util.Map<java.lang.String,java.util.List<java.lang.String>> parameters,
boolean redirect,
boolean includeViewParams)
Construct a new |
Modifier and Type | Method and Description |
---|---|
boolean |
equals(java.lang.Object o) |
java.net.URL |
getActionURL(FacesContext context)
Construct an absolute URL to this |
java.net.URL |
getBookmarkableURL(FacesContext context)
Construct an absolute URL suitable for a bookmarkable link to this |
java.lang.Boolean |
getCondition(FacesContext context)
Evaluates the |
java.lang.String |
getFromAction()
Return the |
java.lang.String |
getFromOutcome()
Return the |
java.lang.String |
getFromViewId()
Return the |
java.util.Map<java.lang.String,java.util.List<java.lang.String>> |
getParameters()
Return the parameters to be included for navigation cases requiring a redirect. |
java.net.URL |
getRedirectURL(FacesContext context)
Construct an absolute URL suitable for a "redirect" to this |
java.net.URL |
getResourceURL(FacesContext context)
Construct an absolute URL to this |
java.lang.String |
getToFlowDocumentId()
If this navigation case represents a flow invocation, this property is the documentId in which the flow whose id is
given by the return from |
java.lang.String |
getToViewId(FacesContext context)
Evaluates the |
boolean |
hasCondition()
Test if this navigation case has an associated |
int |
hashCode() |
boolean |
isIncludeViewParams()
Return the |
boolean |
isRedirect()
Return the |
java.lang.String |
toString() |
public NavigationCase(java.lang.String fromViewId, java.lang.String fromAction, java.lang.String fromOutcome, java.lang.String condition, java.lang.String toViewId, java.util.Map<java.lang.String,java.util.List<java.lang.String>> parameters, boolean redirect, boolean includeViewParams)
Construct a new NavigationCase
based on the provided arguments. See section 7.4.2 in the Jakarta Faces spec for how a
NavigationCase
is used by the standard ConfigurableNavigationHandler
fromViewId
- return from getFromViewId()
fromAction
- return from getFromAction()
fromOutcome
- return from getFromOutcome()
condition
- A string to be interpreted as a ValueExpression
by a call to getCondition(jakarta.faces.context.FacesContext)
toViewId
- return from getToViewId(jakarta.faces.context.FacesContext)
parameters
- return from getParameters()
redirect
- return from isRedirect()
includeViewParams
- return isIncludeViewParams()
public NavigationCase(java.lang.String fromViewId, java.lang.String fromAction, java.lang.String fromOutcome, java.lang.String condition, java.lang.String toViewId, java.lang.String toFlowDocumentId, java.util.Map<java.lang.String,java.util.List<java.lang.String>> parameters, boolean redirect, boolean includeViewParams)
Construct a new NavigationCase
based on the provided arguments. See section 7.4.2 of the spec prose document
for how a NavigationCase
is used by the standard ConfigurableNavigationHandler
fromViewId
- return from getFromViewId()
fromAction
- return from getFromAction()
fromOutcome
- return from getFromOutcome()
condition
- A string to be interpreted as a ValueExpression
by a call to getCondition(jakarta.faces.context.FacesContext)
toViewId
- return from getToViewId(jakarta.faces.context.FacesContext)
toFlowDocumentId
- the toFlow documentId.parameters
- return from getParameters()
redirect
- return from isRedirect()
includeViewParams
- return isIncludeViewParams()
public java.net.URL getActionURL(FacesContext context) throws java.net.MalformedURLException
Construct an absolute URL to this NavigationCase
instance using
ViewHandler.getActionURL(jakarta.faces.context.FacesContext, java.lang.String)
on the path portion of the url.
context
- the FacesContext
for the current requestjava.net.MalformedURLException
- if the process of constructing the URL causes this exception to be thrown.public java.net.URL getResourceURL(FacesContext context) throws java.net.MalformedURLException
Construct an absolute URL to this NavigationCase
instance using
ViewHandler.getResourceURL(jakarta.faces.context.FacesContext, java.lang.String)
on the path portion of the url.
context
- the FacesContext
for the current requestjava.net.MalformedURLException
- if the process of constructing the URL causes this exception to be thrown.public java.net.URL getRedirectURL(FacesContext context) throws java.net.MalformedURLException
Construct an absolute URL suitable for a "redirect" to this NavigationCase
instance using
ViewHandler.getRedirectURL(jakarta.faces.context.FacesContext, java.lang.String, java.util.Map<java.lang.String, java.util.List<java.lang.String>>, boolean)
on the path portion of the url.
context
- the FacesContext
for the current requestjava.net.MalformedURLException
- if the process of constructing the URL causes this exception to be thrown.public java.net.URL getBookmarkableURL(FacesContext context) throws java.net.MalformedURLException
Construct an absolute URL suitable for a bookmarkable link to this NavigationCase
instance using
ViewHandler.getBookmarkableURL(jakarta.faces.context.FacesContext, java.lang.String, java.util.Map<java.lang.String, java.util.List<java.lang.String>>, boolean)
on the path portion of the url. This URL may include
view parameters specified as metadata within the view.
context
- the FacesContext
for the current requestjava.net.MalformedURLException
- if the process of constructing the URL causes this exception to be thrown.public java.lang.String getFromViewId()
Return the <from-view-id>
of the <navigation-rule>
inside which this
<navigation-case>
is nested.
public java.lang.String getFromAction()
Return the <from-action>
for this <navigation-case>
public java.lang.String getFromOutcome()
Return the <from-outcome>
for this <navigation-case>
public java.lang.String getToViewId(FacesContext context)
Evaluates the <to-view-id>
for this <navigation-case>
context
- the FacesContext
for the current requestpublic java.lang.String getToFlowDocumentId()
If this navigation case represents a flow invocation, this property is the documentId in which the flow whose id is
given by the return from getFromOutcome()
is defined. Implementations must override this method to return
the value defined in the corresponding application configuration resources element. The base implementation returns
the empty string.
public boolean hasCondition()
Test if this navigation case has an associated <if>
element.
true
if there's an <if>
element associated with this
<navigation-case>
, otherwise false
public java.lang.Boolean getCondition(FacesContext context)
Evaluates the <if>
for this <navigation-case>
, if any. The expression to be
evaluated is passed into the constructor as a string. When the expression is evaluated, its value must be coerced
into a boolean
per the normal Jakarta Expression Language coercion rules.
context
- the FacesContext
for the current requestnull
if there is no <if>
element associated with this
<navigation-case>
, otherwise return the evaluation result of the conditionpublic java.util.Map<java.lang.String,java.util.List<java.lang.String>> getParameters()
Return the parameters to be included for navigation cases requiring a redirect. If no parameters are defined,
null
will be returned. The keys in the Map
are parameter names. For each key, the
corresponding value is a List
of unconverted values.
null
public boolean isRedirect()
Return the <redirect>
value for this <navigation-case>
. This will be
true
if the new view should be navigated to via a
ExternalContext.redirect(String)
true
if this is a redirect, false
otherwise.public boolean isIncludeViewParams()
Return the <redirect>
value for this <navigation-case>
. This will be
true
if the view parametets should be encoded into the redirect URL (only applies to redirect case)
true
if view parameters are to be included, false
otherwise.public boolean equals(java.lang.Object o)
equals
in class java.lang.Object
public int hashCode()
hashCode
in class java.lang.Object
public java.lang.String toString()
toString
in class java.lang.Object