Class FlowTemplate

java.lang.Object
com.aquima.interactions.test.templates.AbstractReportingTemplate
com.aquima.interactions.test.templates.flow.FlowTemplate

public class FlowTemplate extends AbstractReportingTemplate
This template represents a flow definition.
Since:
6.0
Author:
O. Kerpershoek, F. van der Meer
  • Constructor Details Link icon

    • FlowTemplate Link icon

      protected FlowTemplate(com.aquima.interactions.foundation.report.IInitializationReport report, ApplicationTemplate applicationTemplate, String flowName)
    • FlowTemplate Link icon

      protected FlowTemplate(com.aquima.interactions.foundation.report.IInitializationReport report, ApplicationTemplate applicationTemplate, String flowName, boolean exposed)
  • Method Details Link icon

    • getId Link icon

      protected com.aquima.interactions.foundation.GUID getId()
    • setIsExposed Link icon

      public void setIsExposed(boolean isExposed)
      This method may be used to change the 'exposed' setting of the flow (default is true).
      Parameters:
      isExposed - Boolean indicating if the flow is exposed.
    • isExposed Link icon

      public boolean isExposed()
      This method returns a boolean indicating the flow is exposed and can be started by a user.
      Returns:
      A boolean indicating the flow is exposed and can be started by a user.
    • addPageNode Link icon

      public PageNodeTemplate addPageNode(String pageName)
      This method may be used to add a page node to the current flow. The node itself is not connected yet.
      Parameters:
      pageName - The name of the page the node represents.
      Returns:
      Page node template representing the flow node.
    • addFlowNode Link icon

      public FlowNodeTemplate addFlowNode(String flowName)
      This method may be used to add a sub-flow node to the current flow. The node itself is not connected yet.
      Parameters:
      flowName - The name of the flow the node represents.
      Returns:
      Flow node template representing the node.
    • addConditionNode Link icon

      public ConditionNodeTemplate addConditionNode(String lhsExpression)
      This method may be used to add a condition node to the current flow. The node itself is not connected yet. This is done on the parent node by calling the NodeTemplate.getEdge(String) function
      Parameters:
      lhsExpression - The expression of the condition node.
      Returns:
      A new ConditionNodeTemplate node.
    • addServiceCallNode Link icon

      public ServiceNodeTemplate addServiceCallNode(String serviceCallName)
      This method may be used to add a service call node to the current flow node with a specified call name. The node itself is not connected yet. Note that if no service call is defined with this name (in ApplicationTemplate) a service call is created, the service type name will be equal to the service call name.
      Parameters:
      serviceCallName - The call name of the service.
      Returns:
      Service node template representing the service call node.
    • addServiceCallNode Link icon

      public ServiceNodeTemplate addServiceCallNode(String serviceCallName, String serviceTypeName, com.aquima.interactions.foundation.IParameters parameters)
      This method creates a new service call and adds a service call sub node to the current flow node.
      Parameters:
      serviceCallName - The call name of the service.
      serviceTypeName - The type name of the service.
      parameters - The service parameters.
      Returns:
      Service node template representing the service call node.
    • addServiceCallNode Link icon

      public ServiceNodeTemplate addServiceCallNode(String serviceCallName, String serviceTypeName, com.aquima.interactions.portal.ITypedParameters typedParameters)
      This method creates a new service call and adds a service call sub node to the current flow node.
      Parameters:
      serviceCallName - The call name of the service.
      serviceTypeName - The type name of the service.
      typedParameters - The service parameters.
      Returns:
      Service node template representing the service call node.
    • addFunctionCallNode Link icon

      public FunctionNodeTemplate addFunctionCallNode(String functionCallName, String moduleName, String flowName)
      This method creates a new function call and adds a function call sub node to the current flow node.
      Parameters:
      functionCallName - The call name of the function.
      moduleName - The module the function flow resides in
      flowName - The name of the flow to execute as function
      Returns:
      Function node template representing the function call node.
    • addEndNode Link icon

      public EndNodeTemplate addEndNode(String exitEvent)
      This method may be used to add an end node to the flow. If an end node is already defined with the same exit event, the existing node will be returned.
      Parameters:
      exitEvent - The exit event of the end node.
      Returns:
      Template representing the end node.
    • addEndNode Link icon

      public EndNodeTemplate addEndNode(String exitEvent, boolean checkTheSameExitEvents)
      This method may be used to add an end node to the flow. If an end node is already defined with the same exit event, the existing node will be returned. It also check if the exit events are the same.
      Parameters:
      exitEvent - The exit event of the end node.
      checkTheSameExitEvents - Flag for checking if the exit events are the same.
      Returns:
      Template representing the end node.
    • addEventNode Link icon

      public EventNodeTemplate addEventNode(com.aquima.interactions.flow.EventNodeType eventNodeType)
      This method may be used to add an event node to the flow. The event node is not connected to an existing node.
      Parameters:
      eventNodeType - The event type of the event node.
      Returns:
      Template representing the event node.
    • addRetryNode Link icon

      public RetryNodeTemplate addRetryNode()
      This method may be used to add an event node to the flow. The event node is not connected to an existing node.
      Returns:
      Template representing the retry event node.
    • getName Link icon

      protected String getName()
    • getStartNode Link icon

      public StartNodeTemplate getStartNode()
      This method returns the template that contains the reference to the first node in the flow.
      Returns:
      the template that contains the reference to the first node in the flow.
    • getAllNodes Link icon

      protected List<NodeTemplate> getAllNodes()
    • getAllEdges Link icon

      protected List<EdgeTemplate> getAllEdges()
    • registerEdge Link icon

      protected void registerEdge(EdgeTemplate edgeTemplate)
    • toDataSource Link icon

      public com.aquima.interactions.flow.ds.IFlowDS toDataSource()
      This method returns a data source implementation using the nodes defined in this template.
      Returns:
      a data source implementation using the nodes defined in this template.
    • makeFunctionFlow Link icon

      public FunctionFlowDefinitionTemplate makeFunctionFlow()
      This method makes the flow of type Function and returns a template to fill in function details
      Returns:
      the template that contains the reference to the definition of a function flow.
    • makeExternalFlow Link icon

      public ExternalFlowDefinitionTemplate makeExternalFlow()
      Converts the flow to an external flow and returns a template to fill in the details.
      Returns:
      the external flow template
    • makeDcmWidgetFlow Link icon

      public DcmWidgetFlowDefinitionTemplate makeDcmWidgetFlow()
      Converts the flow to a DCM widget flow and returns a template to fill in the details.
      Returns:
      the DCm widget flow template
    • makeAutomaticTaskFlow Link icon

      public AutomaticTaskFlowDefinitionTemplate makeAutomaticTaskFlow()
      Converts the flow to an automatic task flow and returns a template to fill in the details.
      Returns:
      the automatic task flow template
    • makeMessageEventFlow Link icon

      public MessageEventFlowDefinitionTemplate makeMessageEventFlow(String messageEvent, String dataMapping)
      Converts the flow to an message event flow and returns a template to fill in the details.
      Returns:
      the automatic task flow template
    • getServiceCall Link icon

      protected ServiceCallTemplate getServiceCall(String serviceCallName)
    • addServiceCall Link icon

      protected void addServiceCall(ServiceCallTemplate serviceCallTemplate)
    • getFunctionCall Link icon

      protected FunctionCallTemplate getFunctionCall(String functionCallName)
    • addFunctionCall Link icon

      protected void addFunctionCall(FunctionCallTemplate functionCallTemplate)
    • isTransactional Link icon

      protected boolean isTransactional()
    • setTransactional Link icon

      public void setTransactional(boolean isTransactional)
      This method may be used to mark a flow as transactional.
      Parameters:
      isTransactional - boolean indicating if the flow is transactional.
    • getAllowedRoles Link icon

      protected String[] getAllowedRoles()
    • setAllowedRoles Link icon

      public void setAllowedRoles(String... roles)
      This method may be used to specify the roles for which the flow is allowed to be executed.
      Parameters:
      roles - the roles for which the flow is allowed to be executed.
    • getAllowedChannels Link icon

      protected String[] getAllowedChannels()
    • setAllowedChannels Link icon

      public void setAllowedChannels(String... channels)
      This method may be used to specify the channels for which the flow is allowed to be executed.
      Parameters:
      channels - the channels for which the flow is allowed to be executed.
    • nextId Link icon

      protected String nextId()
    • getFlowTypeName Link icon

      protected String getFlowTypeName()
    • setFlowTypeName Link icon

      public void setFlowTypeName(String name)
      This method may be used to specify the name of the flow type. The default value is null.
      Parameters:
      name - the name of the flowtype
    • getFunctionFlowDefinition Link icon

      protected FunctionFlowDefinitionTemplate getFunctionFlowDefinition()
    • getExternalFlowDefinition Link icon

      protected ExternalFlowDefinitionTemplate getExternalFlowDefinition()
    • getDcmWidgetFlowDefinition Link icon

      protected DcmWidgetFlowDefinitionTemplate getDcmWidgetFlowDefinition()
    • getAutomaticTaskFlowDefinition Link icon

      protected AutomaticTaskFlowDefinitionTemplate getAutomaticTaskFlowDefinition()
    • getMessageEventFlowDefinition Link icon

      protected MessageEventFlowDefinitionTemplate getMessageEventFlowDefinition()