Class DocumentEventDefinitionXmlParser

java.lang.Object
org.flowable.bpmn.converter.child.BaseChildElementParser
com.flowable.platform.bpmn.converter.documentevent.DocumentEventDefinitionXmlParser
All Implemented Interfaces:
org.flowable.bpmn.constants.BpmnXMLConstants

public class DocumentEventDefinitionXmlParser extends org.flowable.bpmn.converter.child.BaseChildElementParser
Reads <flowable:documentEvent .../> as a child of a BPMN event host (start / intermediate-catch / boundary) and produces a typed DocumentEventDefinition on the host's eventDefinitions list. Pair with DocumentEventDefinitionXmlWriter for round-trip support.

On non-event hosts the parser declines via accepts(BaseElement) so BpmnXMLUtil.parseChildElements falls through to the generic extension-element path.

Lifecycle values and location rows are read as nested <flowable:lifecycle> and <flowable:location scope="…"> child elements respectively. Empty / whitespace tokens are skipped; an empty / missing list passes the parser unchanged and surfaces as a validator error later.

  • Field Summary

    Fields
    Modifier and Type
    Field
    Description
    static final String
     
    static final String
     
    static final String
     
    static final String
     
    static final String
     
    static final String
     
    static final String
     
    static final String
     
    static final String
     
    static final String
     

    Fields inherited from class org.flowable.bpmn.converter.child.BaseChildElementParser

    LOGGER

    Fields inherited from interface org.flowable.bpmn.constants.BpmnXMLConstants

    ACTIVITI_EXTENSIONS_NAMESPACE, ACTIVITI_EXTENSIONS_PREFIX, ALFRESCO_TYPE, ATTRIBUTE_ACTIVITY_ASYNCHRONOUS, ATTRIBUTE_ACTIVITY_ASYNCHRONOUS_BEFORE, ATTRIBUTE_ACTIVITY_ASYNCHRONOUS_LEAVE, ATTRIBUTE_ACTIVITY_ASYNCHRONOUS_LEAVE_EXCLUSIVE, ATTRIBUTE_ACTIVITY_EXCLUSIVE, ATTRIBUTE_ACTIVITY_ISFORCOMPENSATION, ATTRIBUTE_ACTIVITY_TRIGGERABLE, ATTRIBUTE_ASSOCIATION_DIRECTION, ATTRIBUTE_BOUNDARY_ATTACHEDTOREF, ATTRIBUTE_BOUNDARY_CANCELACTIVITY, ATTRIBUTE_BUSINESS_KEY, ATTRIBUTE_CALENDAR_NAME, ATTRIBUTE_CALL_ACTIVITY_CALLEDELEMENT, ATTRIBUTE_CALL_ACTIVITY_CALLEDELEMENTTYPE, ATTRIBUTE_CALL_ACTIVITY_COMPLETE_ASYNC, ATTRIBUTE_CALL_ACTIVITY_INHERITVARIABLES, ATTRIBUTE_CALL_ACTIVITY_PROCESS_INSTANCE_NAME, ATTRIBUTE_CALL_ACTIVITY_USE_LOCALSCOPE_FOR_OUTPARAMETERS, ATTRIBUTE_CALLED_ELEMENT_BINDING, ATTRIBUTE_CANCEL_REMAINING_INSTANCES, ATTRIBUTE_CASE_TASK_CASE_DEFINITION_KEY, ATTRIBUTE_CASE_TASK_CASE_INSTANCE_NAME, ATTRIBUTE_COMPENSATE_ACTIVITYREF, ATTRIBUTE_COMPENSATE_WAITFORCOMPLETION, ATTRIBUTE_DATA_ID, ATTRIBUTE_DATA_ITEM_REF, ATTRIBUTE_DATA_NAME, ATTRIBUTE_DATA_STORE_REF, ATTRIBUTE_DEFAULT, ATTRIBUTE_DI_BPMNELEMENT, ATTRIBUTE_DI_HEIGHT, ATTRIBUTE_DI_IS_EXPANDED, ATTRIBUTE_DI_ROTATION, ATTRIBUTE_DI_SOURCE_DOCKER_X, ATTRIBUTE_DI_SOURCE_DOCKER_Y, ATTRIBUTE_DI_TARGET_DOCKER_X, ATTRIBUTE_DI_TARGET_DOCKER_Y, ATTRIBUTE_DI_WIDTH, ATTRIBUTE_DI_X, ATTRIBUTE_DI_Y, ATTRIBUTE_ELEMENT_NAME, ATTRIBUTE_END_DATE, ATTRIBUTE_ERROR_CODE, ATTRIBUTE_ERROR_REF, ATTRIBUTE_ERROR_VARIABLE_LOCAL_SCOPE, ATTRIBUTE_ERROR_VARIABLE_NAME, ATTRIBUTE_ERROR_VARIABLE_TRANSIENT, ATTRIBUTE_ESCALATION_CODE, ATTRIBUTE_ESCALATION_REF, ATTRIBUTE_EVENT_START_INITIATOR, ATTRIBUTE_EVENT_START_INTERRUPTING, ATTRIBUTE_EXPORTER, ATTRIBUTE_EXPORTER_VERSION, ATTRIBUTE_FALLBACK_TO_DEFAULT_TENANT, ATTRIBUTE_FIELD_EXPRESSION, ATTRIBUTE_FIELD_NAME, ATTRIBUTE_FIELD_STRING, ATTRIBUTE_FLOW_SKIP_EXPRESSION, ATTRIBUTE_FLOW_SOURCE_REF, ATTRIBUTE_FLOW_TARGET_REF, ATTRIBUTE_FORM_DATEPATTERN, ATTRIBUTE_FORM_DEFAULT, ATTRIBUTE_FORM_EXPRESSION, ATTRIBUTE_FORM_FIELD_VALIDATION, ATTRIBUTE_FORM_FORMKEY, ATTRIBUTE_FORM_ID, ATTRIBUTE_FORM_NAME, ATTRIBUTE_FORM_READABLE, ATTRIBUTE_FORM_REQUIRED, ATTRIBUTE_FORM_TYPE, ATTRIBUTE_FORM_VARIABLE, ATTRIBUTE_FORM_WRITABLE, ATTRIBUTE_ID, ATTRIBUTE_ID_VARIABLE_NAME, ATTRIBUTE_IMPLEMENTATION_REF, ATTRIBUTE_IMPORT_TYPE, ATTRIBUTE_INHERIT_BUSINESS_KEY, ATTRIBUTE_IOPARAMETER_SOURCE, ATTRIBUTE_IOPARAMETER_SOURCE_EXPRESSION, ATTRIBUTE_IOPARAMETER_SOURCE_TYPE, ATTRIBUTE_IOPARAMETER_TARGET, ATTRIBUTE_IOPARAMETER_TARGET_EXPRESSION, ATTRIBUTE_IOPARAMETER_TARGET_TYPE, ATTRIBUTE_IOPARAMETER_TRANSIENT, ATTRIBUTE_IOPARAMETER_VARIABLES, ATTRIBUTE_ITEM_KIND, ATTRIBUTE_ITEM_REF, ATTRIBUTE_ITEM_SUBJECT_REF, ATTRIBUTE_LISTENER_CLASS, ATTRIBUTE_LISTENER_CUSTOM_PROPERTIES_RESOLVER_CLASS, ATTRIBUTE_LISTENER_CUSTOM_PROPERTIES_RESOLVER_DELEGATEEXPRESSION, ATTRIBUTE_LISTENER_CUSTOM_PROPERTIES_RESOLVER_EXPRESSION, ATTRIBUTE_LISTENER_DELEGATEEXPRESSION, ATTRIBUTE_LISTENER_ENTITY_TYPE, ATTRIBUTE_LISTENER_EVENT, ATTRIBUTE_LISTENER_EVENTS, ATTRIBUTE_LISTENER_EXPRESSION, ATTRIBUTE_LISTENER_ON_TRANSACTION, ATTRIBUTE_LISTENER_THROW_ERROR_EVENT_CODE, ATTRIBUTE_LISTENER_THROW_EVENT_TYPE, ATTRIBUTE_LISTENER_THROW_EVENT_TYPE_ERROR, ATTRIBUTE_LISTENER_THROW_EVENT_TYPE_GLOBAL_SIGNAL, ATTRIBUTE_LISTENER_THROW_EVENT_TYPE_MESSAGE, ATTRIBUTE_LISTENER_THROW_EVENT_TYPE_SIGNAL, ATTRIBUTE_LISTENER_THROW_MESSAGE_EVENT_NAME, ATTRIBUTE_LISTENER_THROW_SIGNAL_EVENT_NAME, ATTRIBUTE_LISTENER_TYPE, ATTRIBUTE_LISTENER_TYPE_SCRIPT, ATTRIBUTE_LOCATION, ATTRIBUTE_MESSAGE_EXPRESSION, ATTRIBUTE_MESSAGE_REF, ATTRIBUTE_MULTIINSTANCE_COLLECTION, ATTRIBUTE_MULTIINSTANCE_COLLECTION_CLASS, ATTRIBUTE_MULTIINSTANCE_COLLECTION_DELEGATEEXPRESSION, ATTRIBUTE_MULTIINSTANCE_INDEX_VARIABLE, ATTRIBUTE_MULTIINSTANCE_NO_WAIT_STATES_ASYNC_LEAVE, ATTRIBUTE_MULTIINSTANCE_SEQUENTIAL, ATTRIBUTE_MULTIINSTANCE_VARIABLE, ATTRIBUTE_NAME, ATTRIBUTE_NAMESPACE, ATTRIBUTE_ORDERING, ATTRIBUTE_PROCESS_CANDIDATE_GROUPS, ATTRIBUTE_PROCESS_CANDIDATE_USERS, ATTRIBUTE_PROCESS_EAGER_EXECUTION_FETCHING, ATTRIBUTE_PROCESS_EXECUTABLE, ATTRIBUTE_PROCESS_REF, ATTRIBUTE_SAME_DEPLOYMENT, ATTRIBUTE_SCOPE, ATTRIBUTE_SCRIPT_LANGUAGE, ATTRIBUTE_SCRIPT_RESULTVARIABLE, ATTRIBUTE_SIGNAL_EXPRESSION, ATTRIBUTE_SIGNAL_REF, ATTRIBUTE_STRUCTURE_REF, ATTRIBUTE_TASK_COMPLETER_VARIABLE_NAME, ATTRIBUTE_TASK_EXTERNAL_WORKER_DO_NOT_INCLUDE_VARIABLES, ATTRIBUTE_TASK_EXTERNAL_WORKER_TOPIC, ATTRIBUTE_TASK_HTTP_PARALLEL_IN_SAME_TRANSACTION, ATTRIBUTE_TASK_ID_VARIABLE_NAME, ATTRIBUTE_TASK_IMPLEMENTATION, ATTRIBUTE_TASK_OPERATION_REF, ATTRIBUTE_TASK_RULE_CLASS, ATTRIBUTE_TASK_RULE_EXCLUDE, ATTRIBUTE_TASK_RULE_RESULT_VARIABLE, ATTRIBUTE_TASK_RULE_RULES, ATTRIBUTE_TASK_RULE_VARIABLES_INPUT, ATTRIBUTE_TASK_SCRIPT_AUTO_STORE_VARIABLE, ATTRIBUTE_TASK_SCRIPT_DO_NOT_INCLUDE_VARIABLES, ATTRIBUTE_TASK_SCRIPT_FORMAT, ATTRIBUTE_TASK_SCRIPT_RESULTVARIABLE, ATTRIBUTE_TASK_SCRIPT_SKIP_EXPRESSION, ATTRIBUTE_TASK_SCRIPT_TEXT, ATTRIBUTE_TASK_SERVICE_CLASS, ATTRIBUTE_TASK_SERVICE_DELEGATEEXPRESSION, ATTRIBUTE_TASK_SERVICE_EXPRESSION, ATTRIBUTE_TASK_SERVICE_EXTENSIONID, ATTRIBUTE_TASK_SERVICE_RESULT_VARIABLE, ATTRIBUTE_TASK_SERVICE_RESULT_VARIABLE_NAME, ATTRIBUTE_TASK_SERVICE_SKIP_EXPRESSION, ATTRIBUTE_TASK_SERVICE_STORE_RESULT_AS_TRANSIENT, ATTRIBUTE_TASK_SERVICE_USE_LOCAL_SCOPE_FOR_RESULT_VARIABLE, ATTRIBUTE_TASK_USER_ASSIGNEE, ATTRIBUTE_TASK_USER_BUSINESS_CALENDAR_NAME, ATTRIBUTE_TASK_USER_CANDIDATEGROUPS, ATTRIBUTE_TASK_USER_CANDIDATEUSERS, ATTRIBUTE_TASK_USER_CATEGORY, ATTRIBUTE_TASK_USER_DUEDATE, ATTRIBUTE_TASK_USER_OWNER, ATTRIBUTE_TASK_USER_PRIORITY, ATTRIBUTE_TASK_USER_SKIP_EXPRESSION, ATTRIBUTE_TERMINATE_ALL, ATTRIBUTE_TERMINATE_MULTI_INSTANCE, ATTRIBUTE_TEXTFORMAT, ATTRIBUTE_TIMER_CYCLE, ATTRIBUTE_TIMER_DATE, ATTRIBUTE_TIMER_DURATION, ATTRIBUTE_TRIGGERABLE, ATTRIBUTE_TRIGGERED_BY, ATTRIBUTE_TYPE, ATTRIBUTE_VALUE_FALSE, ATTRIBUTE_VALUE_TRUE, ATTRIBUTE_VARIABLE_AGGREGATION_CREATE_OVERVIEW, ATTRIBUTE_VARIABLE_AGGREGATION_STORE_AS_TRANSIENT_VARIABLE, ATTRIBUTE_VARIABLE_AGGREGATION_VARIABLE, ATTRIBUTE_VARIABLE_CHANGE_TYPE, ATTRIBUTE_VARIABLE_NAME, BPMN2_NAMESPACE, BPMNDI_NAMESPACE, BPMNDI_PREFIX, CAMUNDA_EXTENSIONS_NAMESPACE, ELEMENT_ADHOC_SUBPROCESS, ELEMENT_ASSIGNMENT, ELEMENT_ASSOCIATION, ELEMENT_CALL_ACTIVITY, ELEMENT_COLLABORATION, ELEMENT_COMPLETION_CONDITION, ELEMENT_CONDITION, ELEMENT_CUSTOM_RESOURCE, ELEMENT_DATA_INPUT, ELEMENT_DATA_INPUT_REFS, ELEMENT_DATA_OBJECT, ELEMENT_DATA_OUTPUT, ELEMENT_DATA_OUTPUT_REFS, ELEMENT_DATA_STATE, ELEMENT_DATA_STORE, ELEMENT_DATA_STORE_REFERENCE, ELEMENT_DATA_VALUE, ELEMENT_DEFINITIONS, ELEMENT_DI_BOUNDS, ELEMENT_DI_DIAGRAM, ELEMENT_DI_EDGE, ELEMENT_DI_LABEL, ELEMENT_DI_PLANE, ELEMENT_DI_SHAPE, ELEMENT_DI_WAYPOINT, ELEMENT_DOCUMENTATION, ELEMENT_ERROR, ELEMENT_ESCALATION, ELEMENT_EVENT_BOUNDARY, ELEMENT_EVENT_CANCELDEFINITION, ELEMENT_EVENT_CATCH, ELEMENT_EVENT_COMPENSATEDEFINITION, ELEMENT_EVENT_CONDITIONALDEFINITION, ELEMENT_EVENT_CORRELATION_PARAMETER, ELEMENT_EVENT_END, ELEMENT_EVENT_ERRORDEFINITION, ELEMENT_EVENT_ESCALATIONDEFINITION, ELEMENT_EVENT_IN_PARAMETER, ELEMENT_EVENT_LISTENER, ELEMENT_EVENT_MESSAGEDEFINITION, ELEMENT_EVENT_OUT_PARAMETER, ELEMENT_EVENT_SIGNALDEFINITION, ELEMENT_EVENT_START, ELEMENT_EVENT_TERMINATEDEFINITION, ELEMENT_EVENT_THROW, ELEMENT_EVENT_TIMERDEFINITION, ELEMENT_EVENT_TYPE, ELEMENT_EVENT_VARIABLELISTENERDEFINITION, ELEMENT_EXECUTION_LISTENER, ELEMENT_EXTENSIONS, ELEMENT_EXTERNAL_WORKER_IN_PARAMETER, ELEMENT_EXTERNAL_WORKER_OUT_PARAMETER, ELEMENT_FIELD, ELEMENT_FIELD_STRING, ELEMENT_FLOW_CONDITION, ELEMENT_FLOWNODE_REF, ELEMENT_FORM_REFERENCE, ELEMENT_FORMAL_EXPRESSION, ELEMENT_FORMPROPERTY, ELEMENT_FROM, ELEMENT_GATEWAY_COMPLEX, ELEMENT_GATEWAY_EVENT, ELEMENT_GATEWAY_EXCLUSIVE, ELEMENT_GATEWAY_INCLUSIVE, ELEMENT_GATEWAY_PARALLEL, ELEMENT_HTTP_REQUEST_HANDLER, ELEMENT_HTTP_RESPONSE_HANDLER, ELEMENT_IMPORT, ELEMENT_IN_MESSAGE, ELEMENT_IN_PARAMETERS, ELEMENT_INPUT_ASSOCIATION, ELEMENT_INTERFACE, ELEMENT_IOSPECIFICATION, ELEMENT_ITEM_DEFINITION, ELEMENT_LANE, ELEMENT_LANESET, ELEMENT_MESSAGE, ELEMENT_MESSAGE_FLOW, ELEMENT_MULTIINSTANCE, ELEMENT_MULTIINSTANCE_CARDINALITY, ELEMENT_MULTIINSTANCE_COLLECTION, ELEMENT_MULTIINSTANCE_COLLECTION_EXPRESSION, ELEMENT_MULTIINSTANCE_COLLECTION_STRING, ELEMENT_MULTIINSTANCE_CONDITION, ELEMENT_MULTIINSTANCE_DATAINPUT, ELEMENT_MULTIINSTANCE_DATAITEM, ELEMENT_OPERATION, ELEMENT_OUT_MESSAGE, ELEMENT_OUT_PARAMETERS, ELEMENT_OUTPUT_ASSOCIATION, ELEMENT_PARTICIPANT, ELEMENT_POTENTIAL_STARTER, ELEMENT_PROCESS, ELEMENT_RESOURCE, ELEMENT_RESOURCE_ASSIGNMENT, ELEMENT_RESOURCE_REF, ELEMENT_SCRIPT, ELEMENT_SEND_SYNCHRONOUSLY, ELEMENT_SEQUENCE_FLOW, ELEMENT_SIGNAL, ELEMENT_SOURCE_REF, ELEMENT_SUBPROCESS, ELEMENT_TARGET_REF, ELEMENT_TASK, ELEMENT_TASK_BUSINESSRULE, ELEMENT_TASK_LISTENER, ELEMENT_TASK_MAIL, ELEMENT_TASK_MANUAL, ELEMENT_TASK_RECEIVE, ELEMENT_TASK_SCRIPT, ELEMENT_TASK_SEND, ELEMENT_TASK_SERVICE, ELEMENT_TASK_USER, ELEMENT_TEXT_ANNOTATION, ELEMENT_TEXT_ANNOTATION_TEXT, ELEMENT_TO, ELEMENT_TRANSACTION, ELEMENT_TRANSFORMATION, ELEMENT_TRIGGER_EVENT_CORRELATION_PARAMETER, ELEMENT_TRIGGER_EVENT_TYPE, ELEMENT_VALUE, ELEMENT_VARIABLE_AGGREGATION, EXPRESSION_LANGUAGE_ATTRIBUTE, FAILED_JOB_RETRY_TIME_CYCLE, FLOWABLE_EXTENSIONS_NAMESPACE, FLOWABLE_EXTENSIONS_PREFIX, MAP_EXCEPTION, MAP_EXCEPTION_ANDCHILDREN, MAP_EXCEPTION_ERRORCODE, MAP_EXCEPTION_ROOTCAUSE, OMGDC_NAMESPACE, OMGDC_PREFIX, OMGDI_NAMESPACE, OMGDI_PREFIX, PROCESS_NAMESPACE, SCHEMA_NAMESPACE, START_EVENT_CORRELATION_CONFIGURATION, START_EVENT_CORRELATION_MANUAL, START_EVENT_CORRELATION_STORE_AS_UNIQUE_REFERENCE_ID, TARGET_NAMESPACE_ATTRIBUTE, TYPE_LANGUAGE_ATTRIBUTE, XPATH_NAMESPACE, XSD_PREFIX, XSI_NAMESPACE, XSI_PREFIX
  • Constructor Summary

    Constructors
    Constructor
    Description
     
  • Method Summary

    Modifier and Type
    Method
    Description
    boolean
    accepts(org.flowable.bpmn.model.BaseElement element)
     
     
    protected static boolean
    parseBooleanAttribute(XMLStreamReader xtr, String attributeName, boolean defaultValue)
     
    void
    parseChildElement(XMLStreamReader xtr, org.flowable.bpmn.model.BaseElement parentElement, org.flowable.bpmn.model.BpmnModel model)
     
    protected static void
    Walks the XML stream from the current position (start of <flowable:documentEvent>) and collects the <flowable:lifecycle> and <flowable:location> child elements until the closing </flowable:documentEvent> is reached.

    Methods inherited from class org.flowable.bpmn.converter.child.BaseChildElementParser

    parseChildElements

    Methods inherited from class Object

    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
  • Field Details

  • Constructor Details

    • DocumentEventDefinitionXmlParser

      public DocumentEventDefinitionXmlParser()
  • Method Details

    • getElementName

      public String getElementName()
      Specified by:
      getElementName in class org.flowable.bpmn.converter.child.BaseChildElementParser
    • accepts

      public boolean accepts(org.flowable.bpmn.model.BaseElement element)
      Overrides:
      accepts in class org.flowable.bpmn.converter.child.BaseChildElementParser
    • parseChildElement

      public void parseChildElement(XMLStreamReader xtr, org.flowable.bpmn.model.BaseElement parentElement, org.flowable.bpmn.model.BpmnModel model) throws Exception
      Specified by:
      parseChildElement in class org.flowable.bpmn.converter.child.BaseChildElementParser
      Throws:
      Exception
    • readChildren

      protected static void readChildren(XMLStreamReader xtr, DocumentEventDefinition definition) throws Exception
      Walks the XML stream from the current position (start of <flowable:documentEvent>) and collects the <flowable:lifecycle> and <flowable:location> child elements until the closing </flowable:documentEvent> is reached. Other children are skipped silently.
      Throws:
      Exception
    • parseBooleanAttribute

      protected static boolean parseBooleanAttribute(XMLStreamReader xtr, String attributeName, boolean defaultValue)