Package org.flowable.bpmn.converter
Class BpmnXMLConverter
java.lang.Object
org.flowable.bpmn.converter.BpmnXMLConverter
- All Implemented Interfaces:
BpmnXMLConstants
- Author:
- Tijs Rademakers, Joram Barrez
-
Field Summary
FieldsModifier and TypeFieldDescriptionprotected static final Stringprotected BpmnEdgeParserprotected BpmnShapeParserprotected ClassLoaderprotected static Map<String, BaseBpmnXMLConverter> protected static Map<Class<? extends BaseElement>, BaseBpmnXMLConverter> protected DataStoreParserprotected static final Stringprotected DefinitionsParserprotected DocumentationParserprotected ExtensionElementsParserprotected ImportParserprotected InterfaceParserprotected IOSpecificationParserprotected ItemDefinitionParserprotected LaneParserprotected static final org.slf4j.Loggerprotected MessageFlowParserprotected MessageParserprotected MultiInstanceParserprotected BpmnXMLConverterOptionsprotected ParticipantParserprotected PotentialStarterParserprotected ProcessParserprotected ResourceParserprotected SignalParserprotected SubProcessParserFields 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 -
Method Summary
Modifier and TypeMethodDescriptionstatic voidaddConverter(BaseBpmnXMLConverter converter) static voidaddConverter(BaseBpmnXMLConverter converter, Class<? extends BaseElement> elementType) convertToBpmnModel(InputStreamProvider inputStreamProvider, boolean validateSchema, boolean enableSafeBpmnXml) convertToBpmnModel(InputStreamProvider inputStreamProvider, boolean validateSchema, boolean enableSafeBpmnXml, String encoding) byte[]convertToXML(BpmnModel model) byte[]convertToXML(BpmnModel model, String encoding) protected Schemaprotected voidcreateXML(Artifact artifact, BpmnModel model, XMLStreamWriter xtw) protected voidcreateXML(FlowElement flowElement, BpmnModel model, XMLStreamWriter xtw) protected FlowNodegetFlowNodeFromScope(String elementId, BaseElement scope) protected voidprocessFlowElements(Collection<FlowElement> flowElementList, BaseElement parentScope) voidvoidsetClassloader(ClassLoader classloader) voidsetStartEventFormTypes(List<String> startEventFormTypes) voidsetUserTaskFormTypes(List<String> userTaskFormTypes) voidvalidateModel(XMLStreamReader xmlStreamReader) voidvalidateModel(InputStreamProvider inputStreamProvider)
-
Field Details
-
LOGGER
protected static final org.slf4j.Logger LOGGER -
BPMN_XSD
- See Also:
-
DEFAULT_ENCODING
- See Also:
-
convertersToBpmnMap
-
convertersToXMLMap
-
classloader
-
userTaskFormTypes
-
startEventFormTypes
-
options
-
bpmnEdgeParser
-
bpmnShapeParser
-
definitionsParser
-
documentationParser
-
extensionElementsParser
-
importParser
-
interfaceParser
-
itemDefinitionParser
-
ioSpecificationParser
-
dataStoreParser
-
laneParser
-
messageParser
-
messageFlowParser
-
multiInstanceParser
-
participantParser
-
potentialStarterParser
-
processParser
-
resourceParser
-
signalParser
-
subProcessParser
-
-
Constructor Details
-
BpmnXMLConverter
public BpmnXMLConverter()
-
-
Method Details
-
addConverter
-
addConverter
public static void addConverter(BaseBpmnXMLConverter converter, Class<? extends BaseElement> elementType) -
getBpmnXmlConverterOptions
-
setBpmnXmlConverterOptions
-
setClassloader
-
setUserTaskFormTypes
-
setStartEventFormTypes
-
validateModel
- Throws:
Exception
-
validateModel
- Throws:
Exception
-
createSchema
- Throws:
SAXException
-
convertToBpmnModel
public BpmnModel convertToBpmnModel(InputStreamProvider inputStreamProvider, boolean validateSchema, boolean enableSafeBpmnXml) -
convertToBpmnModel
public BpmnModel convertToBpmnModel(InputStreamProvider inputStreamProvider, boolean validateSchema, boolean enableSafeBpmnXml, String encoding) -
convertToBpmnModel
-
processFlowElements
protected void processFlowElements(Collection<FlowElement> flowElementList, BaseElement parentScope) -
getFlowNodeFromScope
-
convertToXML
-
convertToXML
-
createXML
protected void createXML(FlowElement flowElement, BpmnModel model, XMLStreamWriter xtw) throws Exception - Throws:
Exception
-
createXML
- Throws:
Exception
-