Class FlowNode
java.lang.Object
com.aquima.interactions.portal.model.flow.FlowNode
- All Implemented Interfaces:
IFlowDetails
Node class for the flow engine to represent a (sub)flow.
- Since:
- 5.0
- Author:
- O. Kerpershoek
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionFlowExit[]
This method returns an array containing the flow exits.getName()
Returns the name of the flow.getType()
Returns the type of the flow.boolean
This method returns a boolean indicating if the flow may be accessed, or if the flow is for internal use only.boolean
This method returns a boolean indicating if the entire flow should be transactional.void
onFlowWillStart
(IUserData user, Channel channel) This method returns a boolean indicating if the flow is allowed to be started given the current channel and roles.toString()
-
Constructor Details
-
FlowNode
-
-
Method Details
-
getFlowExits
This method returns an array containing the flow exits.- Returns:
- array containing the flow exits.
-
getName
Description copied from interface:IFlowDetails
Returns the name of the flow.- Specified by:
getName
in interfaceIFlowDetails
- Returns:
- The name of the flow.
-
getType
Description copied from interface:IFlowDetails
Returns the type of the flow.- Specified by:
getType
in interfaceIFlowDetails
- Returns:
- The flow type, never null.
-
isTransactional
public boolean isTransactional()This method returns a boolean indicating if the entire flow should be transactional. The transaction setting of a flow is used in the FlowHandler when a flow is started or completed.- Returns:
- a boolean indicating if the entire flow should be transactional.
-
isExposed
public boolean isExposed()Description copied from interface:IFlowDetails
This method returns a boolean indicating if the flow may be accessed, or if the flow is for internal use only.- Specified by:
isExposed
in interfaceIFlowDetails
- Returns:
- a boolean indicating if the flow may be accessed.
-
onFlowWillStart
This method returns a boolean indicating if the flow is allowed to be started given the current channel and roles. A flow may only be started when the flow is exposed, and when the flow has either no allowed roles or channels or the given channel and roles match the ones defined for this flow.- Parameters:
user
- The current user.channel
- The current channel.- Throws:
FlowAccessException
- This exception is thrown when the flow is not allowed to start.
-
toString
-