Class DecisionTraceMessage

All Implemented Interfaces:
ITraceMessage, Serializable

public final class DecisionTraceMessage extends ProcessTraceMessage
This trace message is constructed to trace a decision tree from a process. This object is constructed with the required and optional properties.
Since:
9.3
Author:
J. Hermus
See Also:
  • Field Details

    • ACTION_DECISION_TASK_OPENED

      public static final String ACTION_DECISION_TASK_OPENED
      When a task is opened.
      See Also:
    • ACTION_DECISION_TASK_CLOSED

      public static final String ACTION_DECISION_TASK_CLOSED
      When a task is closed.
      See Also:
    • ACTION_DECISION_SPLIT_NODE

      public static final String ACTION_DECISION_SPLIT_NODE
      When a process has passed a split node.
      See Also:
    • ACTION_DECISION_TIMER_STARTED

      public static final String ACTION_DECISION_TIMER_STARTED
      When a timer node is started
      See Also:
    • ACTION_DECISION_CONDITION_TRIGGERED

      public static final String ACTION_DECISION_CONDITION_TRIGGERED
      When a conditional event evaluates to TRUE the logic should be stored as a decision. Both in sequence and ad-hoc
      See Also:
    • PROPERTY_DECISION_GRAPH

      public static final String PROPERTY_DECISION_GRAPH
      Properties
      See Also:
    • PROPERTY_NODE_ID

      public static final String PROPERTY_NODE_ID
      See Also:
    • PROPERTY_TASK_ID

      public static final String PROPERTY_TASK_ID
      See Also:
    • PROPERTY_SPLIT_ALTERNATIVE_NODE_ID

      public static final String PROPERTY_SPLIT_ALTERNATIVE_NODE_ID
      See Also:
  • Method Details

    • forTaskOpened

      public static ITraceMessage forTaskOpened(String applicationId, String processName, String userId, String userName, long processId, long taskId, GUID nodeId, DMNDecisionTree decisionGraph)
      This method constructs a DRGTraceMessage and needs to be called when an new instance of a task (adhoc task) is created and opened. The purpose for calling this method is to log the decision, if available, that was made to open this task.
      Parameters:
      applicationId - The unique id of the application.
      processName - The name of the case.
      userId - the user id
      userName - the user name
      processId - the case id
      taskId - the task id
      nodeId - the node id
      decisionGraph - the decision graph
      Returns:
      DecisionProcessTraceMessage The message that contains all required and optional properties to be logged.
    • forTaskClosed

      public static ITraceMessage forTaskClosed(String applicationId, String processName, String userId, String userName, long processId, long taskId, GUID nodeId, DMNDecisionTree decisionGraph)
      This method constructs a DRGTraceMessage and needs to be called when an instance of a task (adhoc task) is closed. The purpose for calling this method is to log the decision, if available, that was made to close this task.
      Parameters:
      applicationId - The unique id of the application.
      processName - The name of the case.
      userId - the user id
      userName - the user name
      processId - the case id
      taskId - the task id
      nodeId - the node id
      decisionGraph - the decision graph
      Returns:
      DecisionProcessTraceMessage The message that contains all required and optional properties to be logged.
    • forSplitNode

      public static ITraceMessage forSplitNode(String applicationId, String processName, long processId, String userId, String userName, GUID splitNodeId, GUID splitAlternativeNodeId, DMNDecisionTree decisionGraph)
      This method constructs an DRGTraceMessage and needs to be called when a process has passed a 'splitnode' and flowed one ore more paths based on one or more decisions.
      Parameters:
      applicationId - The unique id of the application.
      processName - The name of the case.
      processId - The id of the case instance.
      userId - the user id
      userName - the user name
      splitNodeId - the id of the split node
      splitAlternativeNodeId - the alternative split node id
      decisionGraph - the decision graph
      Returns:
      DecisionProcessTraceMessage The message that contains all required and optional properties to be logged.
    • forTimerStarted

      public static ITraceMessage forTimerStarted(String applicationId, String processName, String userId, String userName, long processId, long taskId, GUID nodeId, DMNDecisionTree decisionGraph)
      This method constructs an DRGTraceMessage and needs to be called when an attribute is inferred by the inference engine.
      Parameters:
      applicationId - The unique id of the application.
      processName - The name of the case.
      userId - the user id
      userName - the user name
      processId - the case id
      taskId - the task id
      nodeId - the node id
      decisionGraph - the decision graph
      Returns:
      DecisionProcessTraceMessage The message that contains all required and optional properties to be logged.
    • forConditionTriggered

      public static ITraceMessage forConditionTriggered(String applicationId, String processName, String userId, String userName, long processId, long taskId, GUID nodeId, DMNDecisionTree decisionGraph)
      This method constructs an DRGTraceMessage and needs to be called when an attribute is inferred by the inference engine.
      Parameters:
      applicationId - The unique id of the application.
      processName - The name of the case.
      userId - the user id
      userName - the user name
      processId - the case id
      taskId - the task id
      nodeId - the node id
      decisionGraph - the decision graph
      Returns:
      DecisionProcessTraceMessage The message that contains all required and optional properties to be logged.