Class NavigationCase
- java.lang.Object
-
- javax.faces.application.NavigationCase
-
- Direct Known Subclasses:
NavigationCaseWrapper
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.- Since:
- 2.0
-
-
Constructor Summary
Constructors Constructor Description 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 newNavigationCase
based on the provided arguments.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 newNavigationCase
based on the provided arguments.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description boolean
equals(java.lang.Object o)
java.net.URL
getActionURL(FacesContext context)
Construct an absolute URL to thisNavigationCase
instance usingViewHandler.getActionURL(javax.faces.context.FacesContext, java.lang.String)
on the path portion of the url.java.net.URL
getBookmarkableURL(FacesContext context)
Construct an absolute URL suitable for a bookmarkable link to thisNavigationCase
instance usingViewHandler.getBookmarkableURL(javax.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.java.lang.Boolean
getCondition(FacesContext context)
Evaluates the<if>
for this<navigation-case>
, if any.java.lang.String
getFromAction()
Return the<from-action>
for this<navigation-case>
java.lang.String
getFromOutcome()
Return the<from-outcome>
for this<navigation-case>
java.lang.String
getFromViewId()
Return the<from-view-id>
of the<navigation-rule>
inside which this<navigation-case>
is nested.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 thisNavigationCase
instance usingViewHandler.getRedirectURL(javax.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.java.net.URL
getResourceURL(FacesContext context)
Construct an absolute URL to thisNavigationCase
instance usingViewHandler.getResourceURL(javax.faces.context.FacesContext, java.lang.String)
on the path portion of the url.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 fromgetFromOutcome()
is defined.java.lang.String
getToViewId(FacesContext context)
Evaluates the<to-view-id>
for this<navigation-case>
boolean
hasCondition()
Test if this navigation case has an associated<if>
element.int
hashCode()
boolean
isIncludeViewParams()
Return the<redirect>
value for this<navigation-case>
.boolean
isRedirect()
Return the<redirect>
value for this<navigation-case>
.java.lang.String
toString()
-
-
-
Constructor Detail
-
NavigationCase
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 JSF.7.4.2 for how aNavigationCase
is used by the standardConfigurableNavigationHandler
- Parameters:
fromViewId
- return fromgetFromViewId()
fromAction
- return fromgetFromAction()
fromOutcome
- return fromgetFromOutcome()
condition
- A string to be interpreted as aValueExpression
by a call togetCondition(javax.faces.context.FacesContext)
toViewId
- return fromgetToViewId(javax.faces.context.FacesContext)
parameters
- return fromgetParameters()
redirect
- return fromisRedirect()
includeViewParams
- returnisIncludeViewParams()
-
NavigationCase
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 JSF.7.4.2 for how aNavigationCase
is used by the standardConfigurableNavigationHandler
- Parameters:
fromViewId
- return fromgetFromViewId()
fromAction
- return fromgetFromAction()
fromOutcome
- return fromgetFromOutcome()
condition
- A string to be interpreted as aValueExpression
by a call togetCondition(javax.faces.context.FacesContext)
toViewId
- return fromgetToViewId(javax.faces.context.FacesContext)
toFlowDocumentId
- the toFlow documentId.parameters
- return fromgetParameters()
redirect
- return fromisRedirect()
includeViewParams
- returnisIncludeViewParams()
-
-
Method Detail
-
getActionURL
public java.net.URL getActionURL(FacesContext context) throws java.net.MalformedURLException
Construct an absolute URL to this
NavigationCase
instance usingViewHandler.getActionURL(javax.faces.context.FacesContext, java.lang.String)
on the path portion of the url.- Parameters:
context
- theFacesContext
for the current request- Returns:
- the action URL.
- Throws:
java.net.MalformedURLException
- if the process of constructing the URL causes this exception to be thrown.
-
getResourceURL
public java.net.URL getResourceURL(FacesContext context) throws java.net.MalformedURLException
Construct an absolute URL to this
NavigationCase
instance usingViewHandler.getResourceURL(javax.faces.context.FacesContext, java.lang.String)
on the path portion of the url.- Parameters:
context
- theFacesContext
for the current request- Returns:
- the resource URL.
- Throws:
java.net.MalformedURLException
- if the process of constructing the URL causes this exception to be thrown.
-
getRedirectURL
public java.net.URL getRedirectURL(FacesContext context) throws java.net.MalformedURLException
Construct an absolute URL suitable for a "redirect" to this
NavigationCase
instance usingViewHandler.getRedirectURL(javax.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.- Parameters:
context
- theFacesContext
for the current request- Returns:
- the redirect URL.
- Throws:
java.net.MalformedURLException
- if the process of constructing the URL causes this exception to be thrown.
-
getBookmarkableURL
public java.net.URL getBookmarkableURL(FacesContext context) throws java.net.MalformedURLException
Construct an absolute URL suitable for a bookmarkable link to this
NavigationCase
instance usingViewHandler.getBookmarkableURL(javax.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.- Parameters:
context
- theFacesContext
for the current request- Returns:
- the bookmarkable URL.
- Throws:
java.net.MalformedURLException
- if the process of constructing the URL causes this exception to be thrown.
-
getFromViewId
public java.lang.String getFromViewId()
Return the
<from-view-id>
of the<navigation-rule>
inside which this<navigation-case>
is nested.- Returns:
- the from viedId.
-
getFromAction
public java.lang.String getFromAction()
Return the
<from-action>
for this<navigation-case>
- Returns:
- the from action.
-
getFromOutcome
public java.lang.String getFromOutcome()
Return the
<from-outcome>
for this<navigation-case>
- Returns:
- the from outcome.
-
getToViewId
public java.lang.String getToViewId(FacesContext context)
Evaluates the
<to-view-id>
for this<navigation-case>
- Parameters:
context
- theFacesContext
for the current request- Returns:
- the view ID that should be navigated to
-
getToFlowDocumentId
public 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.- Returns:
- the toFlow documentId.
- Since:
- 2.2
-
hasCondition
public boolean hasCondition()
Test if this navigation case has an associated
<if>
element.- Returns:
true
if there's an<if>
element associated with this<navigation-case>
, otherwisefalse
-
getCondition
public java.lang.Boolean getCondition(FacesContext context)
Evaluates the
Note throws any exceptions encountered during the process of evaluating the expression or obtaining its value.<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 aboolean
per the normal EL coercion rules.- Parameters:
context
- theFacesContext
for the current request- Returns:
null
if there is no<if>
element associated with this<navigation-case>
, otherwise return the evaluation result of the condition
-
getParameters
public 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 theMap
are parameter names. For each key, the corresponding value is aList
of unconverted values.- Returns:
- the list of parameters, or
null
-
isRedirect
public boolean isRedirect()
Return the
<redirect>
value for this<navigation-case>
. This will betrue
if the new view should be navigated to via aExternalContext.redirect(String)
- Returns:
true
if this is a redirect,false
otherwise.
-
isIncludeViewParams
public boolean isIncludeViewParams()
Return the
<redirect>
value for this<navigation-case>
. This will betrue
if the view parametets should be encoded into the redirect URL (only applies to redirect case)- Returns:
true
if view parameters are to be included,false
otherwise.
-
equals
public boolean equals(java.lang.Object o)
- Overrides:
equals
in classjava.lang.Object
-
hashCode
public int hashCode()
- Overrides:
hashCode
in classjava.lang.Object
-
toString
public java.lang.String toString()
- Overrides:
toString
in classjava.lang.Object
-
-