Class DynamicProcessDefinitionSummary

java.lang.Object
org.flowable.engine.dynamic.DynamicProcessDefinitionSummary
All Implemented Interfaces:
DynamicBpmnConstants

public class DynamicProcessDefinitionSummary extends Object implements DynamicBpmnConstants
Pojo class who can be used to check information between DynamicBpmnService.getProcessDefinitionInfo(String) and BpmnModel. Without exposing the internal behavior of the process engine's logic. Created by Pardo David on 5/12/2016.
  • Constructor Details

    • DynamicProcessDefinitionSummary

      public DynamicProcessDefinitionSummary(BpmnModel bpmnModel, tools.jackson.databind.node.ObjectNode processInfo, tools.jackson.databind.ObjectMapper objectMapper)
  • Method Details

    • getElement

      public tools.jackson.databind.node.ObjectNode getElement(String elementId) throws IllegalStateException
      Returns the summary in the following structure:
      {
          "elementId": (the elements id)
          "elementType": (the elements type)
          "elementSummary": {
              "DynamicBpmnConstants linked to the elementType": {
                  bpmnmodel : (array of strings | string | not provided if empty / blank / null)
                  dynamic: (array of strings or string or not provided if blank or empty)
              }
          }
      }
      

      If no value is found for a given DynamicBpmnConstants in the BpmnModel or ProcessDefinitionInfo. we don't store an key in the resulting ObjectNode. Null values should be avoided in JSON. Depending on the ObjectMapper configuration keys with a null value could even be removed when writing to json.

      Currently supported flow elements are:
      • UserTask
      • ScriptTask
      No summary will field will be created for other elements. ElementId, and elementType will be available.
      Parameters:
      elementId - the id of the FlowElement.
      Returns:
      an ObjectNode with the provided structure.
      Throws:
      IllegalStateException - if no FlowElement is found for the provided id.
    • getSummary

      public tools.jackson.databind.node.ObjectNode getSummary()
    • getBpmnProperties

      protected tools.jackson.databind.node.ObjectNode getBpmnProperties(String elementId, tools.jackson.databind.node.ObjectNode processInfoNode)