java.lang.Object
com.aquima.interactions.portal.model.flow.FlowNode
All Implemented Interfaces:
IFlowDetails

public class FlowNode extends Object implements IFlowDetails
Node class for the flow engine to represent a (sub)flow.
Since:
5.0
Author:
O. Kerpershoek
  • Constructor Details

    • FlowNode

      protected FlowNode(IFlowDS flowDS, boolean isTransactional, String[] channels, String[] roles)
  • Method Details

    • getFlowExits

      public FlowExit[] getFlowExits()
      This method returns an array containing the flow exits.
      Returns:
      array containing the flow exits.
    • getName

      public String getName()
      Description copied from interface: IFlowDetails
      Returns the name of the flow.
      Specified by:
      getName in interface IFlowDetails
      Returns:
      The name of the flow.
    • getType

      public FlowType getType()
      Description copied from interface: IFlowDetails
      Returns the type of the flow.
      Specified by:
      getType in interface IFlowDetails
      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 interface IFlowDetails
      Returns:
      a boolean indicating if the flow may be accessed.
    • onFlowWillStart

      public 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. 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

      public String toString()
      Overrides:
      toString in class Object