public abstract class Flow
extends java.lang.Object
Flow is the runtime representation of a Faces Flow. Once placed into service by the runtime, an instance of this class is immutable. The implementation must be thread-safe because instances will be shared across all usages of the flow within the application.
Constructor and Description |
---|
Flow() |
Modifier and Type | Method and Description |
---|---|
abstract java.lang.String |
getClientWindowFlowId(ClientWindow curWindow)
Get the |
abstract java.lang.String |
getDefiningDocumentId()
Return the immutable application unique identifier for the document in which the argument flow is defined. |
abstract MethodExpression |
getFinalizer()
Return the |
abstract FlowCallNode |
getFlowCall(Flow targetFlow)
Return the |
abstract java.util.Map<java.lang.String,FlowCallNode> |
getFlowCalls()
Return an immutable data structure containing all the flow call nodes declared for this flow. |
abstract java.lang.String |
getId()
Return the immutable id for this Flow. |
abstract java.util.Map<java.lang.String,Parameter> |
getInboundParameters()
Return an immutable data structure containing the inbound parameters that have been declared for this flow. |
abstract MethodExpression |
getInitializer()
Return the |
abstract java.util.List<MethodCallNode> |
getMethodCalls()
Return an immutable data structure containing all the method call nodes declared for this flow. |
abstract java.util.Map<java.lang.String,java.util.Set<NavigationCase>> |
getNavigationCases()
Return an unmodifiable view of the navigation cases within this flow. |
abstract FlowNode |
getNode(java.lang.String nodeId)
Return the generic |
abstract java.util.Map<java.lang.String,ReturnNode> |
getReturns()
Return an immutable data structure containing all of the return nodes declared for this flow. |
abstract java.lang.String |
getStartNodeId()
Return the immutable id for the default node that should be activated when this flow is entered. |
abstract java.util.Map<java.lang.String,SwitchNode> |
getSwitches()
Return an immutable data structure containing all of the switch nodes declared for this flow. |
abstract java.util.List<ViewNode> |
getViews()
Return an immutable data structure containing all of the view nodes declared for this flow. |
public abstract java.lang.String getId()
Return the immutable id for this Flow. This must be unique within the defining document (such as an Application Configuration Resources file), but need not be unique within the entire application.
public abstract java.lang.String getDefiningDocumentId()
Return the immutable application unique identifier for the document in which the argument flow is defined.
public abstract java.lang.String getStartNodeId()
Return the immutable id for the default node that should be activated when this flow is entered.
public abstract MethodExpression getFinalizer()
Return the MethodExpression
that must be called by the runtime as the last thing that happens
before exiting this flow. Any FlowScoped
beans declared
for this flow must remain in scope until after control returns
from the method referenced by this MethodExpression
.
MethodExpresion
for the finalizer.public abstract MethodExpression getInitializer()
Return the MethodExpression
that must be called by the runtime immediately after activating
any FlowScoped
beans declared for this flow.
MethodExpresion
for the initializer.public abstract java.util.Map<java.lang.String,Parameter> getInboundParameters()
Return an immutable data structure
containing the inbound parameters that have been declared for
this flow. See FlowHandler.transition(javax.faces.context.FacesContext, javax.faces.flow.Flow, javax.faces.flow.Flow, javax.faces.flow.FlowCallNode, java.lang.String)
for the
specification of how these parameters are used. Inbound
parameters are associated with a specific flow instance, while
outbound parameters are associated with a FlowCallNode
that causes the transition to a new flow.
public abstract java.util.List<ViewNode> getViews()
Return an immutable data structure containing all of the view nodes declared for this flow.
public abstract java.util.Map<java.lang.String,ReturnNode> getReturns()
Return an immutable data structure containing all of the return nodes declared for this flow.
public abstract java.util.Map<java.lang.String,SwitchNode> getSwitches()
Return an immutable data structure containing all of the switch nodes declared for this flow.
public abstract java.util.Map<java.lang.String,FlowCallNode> getFlowCalls()
Return an immutable data structure containing all the flow call nodes declared for this flow.
public abstract FlowCallNode getFlowCall(Flow targetFlow)
Return the FlowCallNode
that
represents calling the targetFlow
from this flow, or
null
if targetFlow
cannot be reached from this
flow.
targetFlow
- the flow for which the FlowCallNode
is to be returnedFlowCallNode
for the argument flow or null
public abstract java.util.List<MethodCallNode> getMethodCalls()
Return an immutable data structure containing all the method call nodes declared for this flow.
public abstract FlowNode getNode(java.lang.String nodeId)
Return the generic FlowNode
by id,
or null
if not found.
public abstract java.util.Map<java.lang.String,java.util.Set<NavigationCase>> getNavigationCases()
Return an unmodifiable view of the navigation cases within this flow.
public abstract java.lang.String getClientWindowFlowId(ClientWindow curWindow)
Get the ClientWindow
's id and
append "_" and the return from getId()
. Return the result.
curWindow
- the