fix(import): ensure correctly import *associations

This commit ensures we correctly detect and import
Data*Associations and Associations.

It aligns logging across the import components, too, being slightly more
verbose and helpful.

Related to #112
This commit is contained in:
Nico Rehwaldt 2014-10-31 15:05:16 +01:00
parent 447086bbdf
commit 8deb9d30a1
14 changed files with 620 additions and 290 deletions

View File

@ -6,7 +6,8 @@ var LabelUtil = require('../util/Label');
var hasExternalLabel = LabelUtil.hasExternalLabel,
getExternalLabelBounds = LabelUtil.getExternalLabelBounds,
isExpanded = require('../util/Di').isExpanded;
isExpanded = require('../util/Di').isExpanded,
elementToString = require('./Util').elementToString;
function elementData(semantic, attrs) {
@ -89,10 +90,6 @@ BpmnImporter.prototype.add = function(semantic, parentElement) {
var source = this._getSource(semantic),
target = this._getTarget(semantic);
if (!source || !target) {
throw new Error('source or target not rendered for element <' + semantic.id + '>');
}
element = this._elementFactory.createConnection(elementData(semantic, {
source: source,
target: target,
@ -101,7 +98,7 @@ BpmnImporter.prototype.add = function(semantic, parentElement) {
this._canvas.addConnection(element, parentElement);
} else {
throw new Error('unknown di <' + di.$type + '> for element <' + semantic.id + '>');
throw new Error('unknown di ' + elementToString(di) + ' for element ' + elementToString(semantic));
}
// (optional) LABEL
@ -118,7 +115,7 @@ BpmnImporter.prototype.add = function(semantic, parentElement) {
/**
* add label for an element
*/
BpmnImporter.prototype.addLabel = function (semantic, element) {
BpmnImporter.prototype.addLabel = function(semantic, element) {
var bounds = getExternalLabelBounds(semantic, element);
var label = this._elementFactory.createLabel(elementData(semantic, {
@ -135,47 +132,53 @@ BpmnImporter.prototype.addLabel = function (semantic, element) {
return this._canvas.addShape(label, element.parent);
};
BpmnImporter.prototype._getSource = function(semantic) {
/**
* Return the drawn connection end based on the given side.
*
* @throws {Error} if the end is not yet drawn
*/
BpmnImporter.prototype._getEnd = function(semantic, side) {
var element,
elementSemantic = semantic.sourceRef;
refSemantic,
refIsParent,
type = semantic.$type;
refSemantic = semantic[side + 'Ref'];
// handle mysterious isMany DataAssociation#sourceRef
if (_.isArray(elementSemantic)) {
elementSemantic = elementSemantic[0];
if (side === 'source' && type === 'bpmn:DataInputAssociation') {
refSemantic = refSemantic && refSemantic[0];
}
if (elementSemantic && elementSemantic.$instanceOf('bpmn:DataOutput')) {
elementSemantic = elementSemantic.$parent.$parent;
// fix source / target for DataInputAssociation / DataOutputAssociation
if (side === 'source' && type === 'bpmn:DataOutputAssociation' ||
side === 'target' && type === 'bpmn:DataInputAssociation') {
refSemantic = semantic.$parent;
}
element = elementSemantic && this._getElement(elementSemantic);
element = refSemantic && this._getElement(refSemantic);
if (element) {
return element;
}
throw new Error('element <' + elementSemantic.id + '> referenced by <' + semantic.id + '> not yet drawn');
if (refSemantic) {
throw new Error(
'element ' + elementToString(refSemantic) + ' referenced by ' +
elementToString(semantic) + '#' + side + 'Ref not yet drawn');
} else {
throw new Error(elementToString(semantic) + '#' + side + 'Ref not specified');
}
};
BpmnImporter.prototype._getSource = function(semantic) {
return this._getEnd(semantic, 'source');
};
BpmnImporter.prototype._getTarget = function(semantic) {
var element,
elementSemantic = semantic.targetRef;
if (elementSemantic && elementSemantic.$instanceOf('bpmn:DataInput')) {
elementSemantic = elementSemantic.$parent.$parent;
}
element = elementSemantic && this._getElement(elementSemantic);
if (element) {
return element;
}
throw new Error('element <' + elementSemantic.id + '> referenced by <' + semantic.id + '> not yet drawn');
return this._getEnd(semantic, 'target');
};

View File

@ -4,11 +4,10 @@ var _ = require('lodash');
var Refs = require('object-refs');
var elementToString = require('./Util').elementToString;
var diRefs = new Refs({ name: 'bpmnElement', enumerable: true }, { name: 'di' });
function elementToString(e) {
return '<' + e.$type + (e.id ? ' id="' + e.id : '') + '" />';
}
/**
* Find a suitable display candidate for definitions where the DI does not
@ -61,9 +60,7 @@ function BpmnTreeWalker(handler) {
function visitIfDi(element, ctx) {
try {
if (element.di) {
return visit(element, ctx);
}
return element.di && visit(element, ctx);
} catch (e) {
logError(e.message, { element: element, error: e });
}
@ -225,7 +222,16 @@ function BpmnTreeWalker(handler) {
}
function handleArtifacts(artifacts, context) {
_.forEach(artifacts, contextual(handleArtifact, context));
_.forEach(artifacts, function(e) {
if (is(e, 'bpmn:Association')) {
deferred.push(function() {
handleArtifact(e, context);
});
} else {
handleArtifact(e, context);
}
});
}
function handleIoSpecification(ioSpecification, context) {
@ -346,7 +352,7 @@ function BpmnTreeWalker(handler) {
} else {
logError(
'unrecognized flowElement ' + elementToString(e) + ' in context ' +
(context ? elementToString(context) : null),
(context ? elementToString(context.businessObject) : null),
{ element: e, context: context });
}
});

7
lib/import/Util.js Normal file
View File

@ -0,0 +1,7 @@
module.exports.elementToString = function(e) {
if (!e) {
return '<null>';
}
return '<' + e.$type + (e.id ? ' id="' + e.id : '') + '" />';
};

View File

@ -1,249 +1,266 @@
<?xml version="1.0" encoding="UTF-8"?><definitions xmlns="http://www.omg.org/spec/BPMN/20100524/MODEL" xmlns:bpmndi="http://www.omg.org/spec/BPMN/20100524/DI" xmlns:omgdc="http://www.omg.org/spec/DD/20100524/DC" xmlns:omgdi="http://www.omg.org/spec/DD/20100524/DI" xmlns:signavio="http://www.signavio.com" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" exporter="Signavio Process Editor, http://www.signavio.com" exporterVersion="7.8.1" expressionLanguage="http://www.w3.org/1999/XPath" id="sid-c3c12b6b-ce2f-456c-b55a-3ce4f22db48b" targetNamespace="http://bpmn.io/schema/bpmn" typeLanguage="http://www.w3.org/2001/XMLSchema" xsi:schemaLocation="http://www.omg.org/spec/BPMN/20100524/MODEL http://www.omg.org/spec/BPMN/2.0/20100501/BPMN20.xsd">
<dataStore capacity="0" id="sid-09f814b1-f9a1-45c7-8ce0-65a0ab69fddc" isUnlimited="false" name="Data Store 2"/>
<dataStore capacity="0" id="sid-770aebf4-15fc-4ade-919f-d9558181997b" isUnlimited="false" name="Data Store"/>
<collaboration id="sid-efcaf392-1a95-40dc-be12-8a12c80ec1e5">
<?xml version="1.0" encoding="UTF-8"?>
<definitions xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://www.omg.org/spec/BPMN/20100524/MODEL" xmlns:bpmndi="http://www.omg.org/spec/BPMN/20100524/DI" xmlns:omgdc="http://www.omg.org/spec/DD/20100524/DC" xmlns:omgdi="http://www.omg.org/spec/DD/20100524/DI" xmlns:signavio="http://www.signavio.com" xsi:schemaLocation="http://www.omg.org/spec/BPMN/20100524/MODEL BPMN20.xsd" id="sid-c3c12b6b-ce2f-456c-b55a-3ce4f22db48b" exporter="Signavio Process Editor, http://www.signavio.com" exporterVersion="7.8.1" targetNamespace="http://bpmn.io/schema/bpmn">
<dataStore id="sid-09f814b1-f9a1-45c7-8ce0-65a0ab69fddc" isUnlimited="false" name="Data Store 2"/>
<dataStore id="sid-770aebf4-15fc-4ade-919f-d9558181997b" isUnlimited="false" name="Data Store"/>
<collaboration id="sid-efcaf392-1a95-40dc-be12-8a12c80ec1e5">
<extensionElements>
<signavio:signavioDiagramMetaData metaKey="revisionid" metaValue="e6626eeb5b644dc5b053dbbab17bed34"/>
</extensionElements>
<participant id="_Participant_4" name="Pool" processRef="Process_1">
<extensionElements>
<signavio:signavioMetaData metaKey="rolle" metaValue=""/>
<signavio:signavioMetaData metaKey="userstory" metaValue=""/>
</extensionElements>
</participant>
<participant id="Participant_1" name="Pool">
<extensionElements>
<signavio:signavioMetaData metaKey="rolle" metaValue=""/>
<signavio:signavioMetaData metaKey="userstory" metaValue=""/>
</extensionElements>
</participant>
</collaboration>
<process id="Process_1" isExecutable="false">
<ioSpecification id="sid-f47d8b56-ccb9-463e-97e1-d63887eab92c">
<dataInput id="DataInput_1">
<extensionElements>
<signavio:signavioDiagramMetaData metaKey="revisionid" metaValue="e6626eeb5b644dc5b053dbbab17bed34"/>
<signavio:signavioMetaData metaKey="bgcolor" metaValue="#ffffff"/>
<signavio:signavioMetaData metaKey="userstory" metaValue=""/>
<signavio:signavioLabel align="left" ref="text_name" valign="top" x="18.0" y="55.0"/>
</extensionElements>
<participant id="_Participant_4" name="Pool" processRef="Process_1">
<extensionElements>
<signavio:signavioMetaData metaKey="rolle" metaValue=""/>
<signavio:signavioMetaData metaKey="userstory" metaValue=""/>
</extensionElements>
</participant>
<participant id="Participant_1" name="Pool">
<extensionElements>
<signavio:signavioMetaData metaKey="rolle" metaValue=""/>
<signavio:signavioMetaData metaKey="userstory" metaValue=""/>
</extensionElements>
</participant>
</collaboration>
<process id="Process_1" isClosed="false" isExecutable="false" processType="None">
<ioSpecification id="sid-f47d8b56-ccb9-463e-97e1-d63887eab92c">
<dataInput id="DataInput_1" isCollection="false">
<extensionElements>
<signavio:signavioMetaData metaKey="bgcolor" metaValue="#ffffff"/>
<signavio:signavioMetaData metaKey="userstory" metaValue=""/>
<signavio:signavioLabel align="left" ref="text_name" valign="top" x="18.0" y="55.0"/>
</extensionElements>
</dataInput>
<dataInput id="sid-ADF95ACC-DEA6-4F6F-AF91-8F5BABB299AF" isCollection="true">
<extensionElements>
<signavio:signavioMetaData metaKey="bgcolor" metaValue="#ffffff"/>
<signavio:signavioMetaData metaKey="userstory" metaValue=""/>
</extensionElements>
</dataInput>
<dataOutput id="DataOutput_1" isCollection="false">
<extensionElements>
<signavio:signavioMetaData metaKey="bgcolor" metaValue="#ffffff"/>
<signavio:signavioMetaData metaKey="userstory" metaValue=""/>
<signavio:signavioLabel align="left" ref="text_name" valign="top" x="18.0" y="55.0"/>
</extensionElements>
</dataOutput>
<dataOutput id="sid-16646BD1-38D3-499A-95A6-42A75D8D2510" isCollection="true">
<extensionElements>
<signavio:signavioMetaData metaKey="bgcolor" metaValue="#ffffff"/>
<signavio:signavioMetaData metaKey="userstory" metaValue=""/>
</extensionElements>
</dataOutput>
<inputSet id="sid-8c0a0c80-098c-4972-bac0-8cc303d82bfd">
<dataInputRefs>DataInput_1</dataInputRefs>
<dataInputRefs>sid-ADF95ACC-DEA6-4F6F-AF91-8F5BABB299AF</dataInputRefs>
</inputSet>
<outputSet id="sid-60cf6782-0fff-4304-882d-7d2b33336aed">
<dataOutputRefs>DataOutput_1</dataOutputRefs>
<dataOutputRefs>sid-16646BD1-38D3-499A-95A6-42A75D8D2510</dataOutputRefs>
</outputSet>
</ioSpecification>
<dataObject id="sid-b71dc346-6ba3-481d-9ea6-03c3fe207b3f" isCollection="false" name="Data Object"/>
<dataObject id="sid-01513038-3f29-47f0-b464-9047955bf45d" isCollection="true"/>
<task completionQuantity="1" id="Task_1" isForCompensation="false" startQuantity="1">
<extensionElements>
<signavio:signavioMetaData metaKey="bgcolor" metaValue="#ffffcc"/>
<signavio:signavioMetaData metaKey="adaptereventtype" metaValue=""/>
<signavio:signavioMetaData metaKey="documentationlink" metaValue=""/>
<signavio:signavioMetaData metaKey="test" metaValue=""/>
<signavio:signavioMetaData metaKey="adaptertype" metaValue=""/>
<signavio:signavioMetaData metaKey="userstory" metaValue=""/>
<signavio:signavioMetaData metaKey="adapterconfiguration" metaValue=""/>
<signavio:signavioMetaData metaKey="adapterclassname" metaValue=""/>
<signavio:signavioMetaData metaKey="servicereferenz" metaValue=""/>
<signavio:signavioMetaData metaKey="risiko" metaValue=""/>
<signavio:signavioMetaData metaKey="erteiltfreigabe" metaValue=""/>
<signavio:signavioMetaData metaKey="riskandcontrols" metaValue=""/>
</extensionElements>
<ioSpecification id="sid-25be8f24-f1fe-4fcb-a120-6b46fbd41d43">
<dataInput id="sid-b4a08214-9dd4-40ad-8f82-4620ee384231"/>
<dataOutput id="sid-b4a589fa-6809-485d-ac79-9906084551f5"/>
<dataOutput id="sid-d5968987-50e5-4e42-9a3e-e8e3f6cc53bc"/>
<inputSet id="sid-bff296e6-46b4-4c63-9def-f68cdf80510d" name="DefaultInputSet">
<dataInputRefs>sid-b4a08214-9dd4-40ad-8f82-4620ee384231</dataInputRefs>
<outputSetRefs>sid-6c061a84-a3f2-4b69-93a5-8a3cafa27437</outputSetRefs>
</inputSet>
<outputSet id="sid-6c061a84-a3f2-4b69-93a5-8a3cafa27437" name="DefaultOutputSet">
<dataOutputRefs>sid-b4a589fa-6809-485d-ac79-9906084551f5</dataOutputRefs>
<dataOutputRefs>sid-d5968987-50e5-4e42-9a3e-e8e3f6cc53bc</dataOutputRefs>
<inputSetRefs>sid-bff296e6-46b4-4c63-9def-f68cdf80510d</inputSetRefs>
</outputSet>
</ioSpecification>
<dataInputAssociation id="DataInputAssociation_3">
<extensionElements>
<signavio:signavioMetaData metaKey="userstory" metaValue=""/>
</extensionElements>
<sourceRef>DataObjectReference_1</sourceRef>
<targetRef>sid-b4a08214-9dd4-40ad-8f82-4620ee384231</targetRef>
</dataInputAssociation>
<dataOutputAssociation id="DataOutputAssociation_1">
<extensionElements>
<signavio:signavioMetaData metaKey="userstory" metaValue=""/>
</extensionElements>
<sourceRef>Task_1</sourceRef>
<targetRef>_DataStoreReference_2</targetRef>
</dataOutputAssociation>
<dataOutputAssociation id="DataOutputAssociation_2">
<extensionElements>
<signavio:signavioMetaData metaKey="userstory" metaValue=""/>
</extensionElements>
<sourceRef>sid-b4a589fa-6809-485d-ac79-9906084551f5</sourceRef>
<targetRef>DataOutput_1</targetRef>
</dataOutputAssociation>
<dataOutputAssociation id="DataOutputAssociation_3">
<extensionElements>
<signavio:signavioMetaData metaKey="userstory" metaValue=""/>
</extensionElements>
<sourceRef>sid-d5968987-50e5-4e42-9a3e-e8e3f6cc53bc</sourceRef>
<targetRef>DataObjectReference_1</targetRef>
</dataOutputAssociation>
</task>
<task completionQuantity="1" id="Task_2" isForCompensation="false" startQuantity="1">
<extensionElements>
<signavio:signavioMetaData metaKey="bgcolor" metaValue="#ffffcc"/>
<signavio:signavioMetaData metaKey="adaptereventtype" metaValue=""/>
<signavio:signavioMetaData metaKey="documentationlink" metaValue=""/>
<signavio:signavioMetaData metaKey="test" metaValue=""/>
<signavio:signavioMetaData metaKey="adaptertype" metaValue=""/>
<signavio:signavioMetaData metaKey="userstory" metaValue=""/>
<signavio:signavioMetaData metaKey="adapterconfiguration" metaValue=""/>
<signavio:signavioMetaData metaKey="adapterclassname" metaValue=""/>
<signavio:signavioMetaData metaKey="servicereferenz" metaValue=""/>
<signavio:signavioMetaData metaKey="risiko" metaValue=""/>
<signavio:signavioMetaData metaKey="erteiltfreigabe" metaValue=""/>
<signavio:signavioMetaData metaKey="riskandcontrols" metaValue=""/>
</extensionElements>
<dataInputAssociation id="DataInputAssociation_1">
<extensionElements>
<signavio:signavioMetaData metaKey="userstory" metaValue=""/>
</extensionElements>
<sourceRef>_DataStoreReference_2</sourceRef>
<targetRef>Task_2</targetRef>
</dataInputAssociation>
</task>
<dataObjectReference dataObjectRef="sid-b71dc346-6ba3-481d-9ea6-03c3fe207b3f" id="DataObjectReference_1" name="Data Object">
<extensionElements>
<signavio:signavioMetaData metaKey="bgcolor" metaValue="#ffffff"/>
<signavio:signavioMetaData metaKey="userstory" metaValue=""/>
<signavio:signavioLabel align="left" ref="text_name" valign="top" x="-19.0" y="55.0"/>
</extensionElements>
</dataObjectReference>
<dataStoreReference dataStoreRef="sid-770aebf4-15fc-4ade-919f-d9558181997b" id="_DataStoreReference_2" name="Data Store">
<extensionElements>
<signavio:signavioMetaData metaKey="bgcolor" metaValue="#ffffff"/>
<signavio:signavioMetaData metaKey="userstory" metaValue=""/>
<signavio:signavioLabel align="left" ref="text_name" x="-2.499500000000012" y="60.5865"/>
</extensionElements>
</dataStoreReference>
<dataStoreReference dataStoreRef="sid-09f814b1-f9a1-45c7-8ce0-65a0ab69fddc" id="_DataStoreReference_3" name="Data Store 2">
<extensionElements>
<signavio:signavioMetaData metaKey="bgcolor" metaValue="#ffffff"/>
<signavio:signavioMetaData metaKey="userstory" metaValue=""/>
<signavio:signavioLabel align="left" ref="text_name" x="-7.499500000000012" y="60.5865"/>
</extensionElements>
</dataStoreReference>
<dataObjectReference dataObjectRef="sid-01513038-3f29-47f0-b464-9047955bf45d" id="sid-0B5F3253-68A7-4985-9E5F-EAA734C583B5">
<extensionElements>
<signavio:signavioMetaData metaKey="bgcolor" metaValue="#ffffff"/>
<signavio:signavioMetaData metaKey="userstory" metaValue=""/>
</extensionElements>
</dataObjectReference>
</process>
<bpmndi:BPMNDiagram id="sid-2afc2606-c2da-428e-a6df-1d046a82ed57">
<bpmndi:BPMNPlane bpmnElement="sid-efcaf392-1a95-40dc-be12-8a12c80ec1e5" id="sid-646a8f8e-d900-4b7d-8b7f-48364e1f53ce">
<bpmndi:BPMNShape bpmnElement="_Participant_4" id="_Participant_4_gui" isHorizontal="true">
<omgdc:Bounds height="277.0" width="529.0" x="132.0" y="60.0"/>
<bpmndi:BPMNLabel labelStyle="sid-80896269-9188-4a42-8603-3ff45af4c1f8">
<omgdc:Bounds height="24.85714340209961" width="12.0" x="138.0" y="186.0714282989502"/>
</bpmndi:BPMNLabel>
</bpmndi:BPMNShape>
<bpmndi:BPMNShape bpmnElement="Participant_1" id="Participant_1_gui" isHorizontal="true">
<omgdc:Bounds height="165.0" width="600.0" x="888.0" y="28.0"/>
<bpmndi:BPMNLabel labelStyle="sid-80896269-9188-4a42-8603-3ff45af4c1f8">
<omgdc:Bounds height="24.85714340209961" width="12.0" x="894.0" y="98.0714282989502"/>
</bpmndi:BPMNLabel>
</bpmndi:BPMNShape>
<bpmndi:BPMNShape bpmnElement="Task_1" id="Task_1_gui">
<omgdc:Bounds height="80.0" width="100.0" x="516.0" y="216.0"/>
</bpmndi:BPMNShape>
<bpmndi:BPMNShape bpmnElement="Task_2" id="Task_2_gui">
<omgdc:Bounds height="80.0" width="100.0" x="1029.0" y="68.0"/>
</bpmndi:BPMNShape>
<bpmndi:BPMNShape bpmnElement="DataObjectReference_1" id="DataObjectReference_1_gui">
<omgdc:Bounds height="50.0" width="36.0" x="396.0" y="231.0"/>
<bpmndi:BPMNLabel labelStyle="sid-80896269-9188-4a42-8603-3ff45af4c1f8">
<omgdc:Bounds height="36.0" width="34.28571319580078" x="377.0" y="286.0"/>
</bpmndi:BPMNLabel>
</bpmndi:BPMNShape>
<bpmndi:BPMNShape bpmnElement="_DataStoreReference_2" id="_DataStoreReference_2_gui">
<omgdc:Bounds height="60.173" width="62.000999999999976" x="755.4995" y="66.4135"/>
<bpmndi:BPMNLabel labelStyle="sid-80896269-9188-4a42-8603-3ff45af4c1f8">
<omgdc:Bounds height="12.0" width="66.0" x="752.9995" y="126.99949853515625"/>
</bpmndi:BPMNLabel>
</bpmndi:BPMNShape>
<bpmndi:BPMNShape bpmnElement="_DataStoreReference_3" id="_DataStoreReference_3_gui">
<omgdc:Bounds height="60.173" width="62.000999999999976" x="202.4995" y="72.4135"/>
<bpmndi:BPMNLabel labelStyle="sid-80896269-9188-4a42-8603-3ff45af4c1f8">
<omgdc:Bounds height="12.0" width="78.0" x="194.9995" y="132.99949853515625"/>
</bpmndi:BPMNLabel>
</bpmndi:BPMNShape>
<bpmndi:BPMNShape bpmnElement="sid-0B5F3253-68A7-4985-9E5F-EAA734C583B5" id="sid-0B5F3253-68A7-4985-9E5F-EAA734C583B5_gui">
<omgdc:Bounds height="97.0" width="88.0" x="263.0" y="382.0"/>
</bpmndi:BPMNShape>
<bpmndi:BPMNShape bpmnElement="DataInput_1" id="DataInput_1_gui">
<omgdc:Bounds height="50.0" width="36.0" x="355.0" y="84.0"/>
</bpmndi:BPMNShape>
<bpmndi:BPMNShape bpmnElement="sid-ADF95ACC-DEA6-4F6F-AF91-8F5BABB299AF" id="sid-ADF95ACC-DEA6-4F6F-AF91-8F5BABB299AF_gui">
<omgdc:Bounds height="97.0" width="88.0" x="420.0" y="382.0"/>
</bpmndi:BPMNShape>
<bpmndi:BPMNShape bpmnElement="DataOutput_1" id="DataOutput_1_gui">
<omgdc:Bounds height="50.0" width="36.0" x="480.0" y="84.0"/>
</bpmndi:BPMNShape>
<bpmndi:BPMNShape bpmnElement="sid-16646BD1-38D3-499A-95A6-42A75D8D2510" id="sid-16646BD1-38D3-499A-95A6-42A75D8D2510_gui">
<omgdc:Bounds height="97.0" width="88.0" x="624.0" y="382.0"/>
</bpmndi:BPMNShape>
<bpmndi:BPMNEdge bpmnElement="DataInputAssociation_3" id="DataInputAssociation_3_gui">
<omgdi:waypoint x="432.0" y="244.0"/>
<omgdi:waypoint x="478.0" y="215.0"/>
<omgdi:waypoint x="516.0" y="233.0"/>
</bpmndi:BPMNEdge>
<bpmndi:BPMNEdge bpmnElement="DataInputAssociation_1" id="DataInputAssociation_1_gui">
<omgdi:waypoint x="817.5005" y="97.71445257731959"/>
<omgdi:waypoint x="1029.0" y="106.0"/>
</bpmndi:BPMNEdge>
<bpmndi:BPMNEdge bpmnElement="DataOutputAssociation_1" id="DataOutputAssociation_1_gui">
<omgdi:waypoint x="616.0" y="220.0"/>
<omgdi:waypoint x="755.4995" y="118.95490762463342"/>
</bpmndi:BPMNEdge>
<bpmndi:BPMNEdge bpmnElement="DataOutputAssociation_2" id="DataOutputAssociation_2_gui">
<omgdi:waypoint x="547.0" y="216.0"/>
<omgdi:waypoint x="510.0" y="134.0"/>
</bpmndi:BPMNEdge>
<bpmndi:BPMNEdge bpmnElement="DataOutputAssociation_3" id="DataOutputAssociation_3_gui">
<omgdi:waypoint x="516.0" y="277.0"/>
<omgdi:waypoint x="471.0" y="296.0"/>
<omgdi:waypoint x="432.0" y="269.0"/>
</bpmndi:BPMNEdge>
</bpmndi:BPMNPlane>
<bpmndi:BPMNLabelStyle id="sid-80896269-9188-4a42-8603-3ff45af4c1f8">
<omgdc:Font isBold="false" isItalic="false" isStrikeThrough="false" isUnderline="false" name="Arial" size="12.0"/>
</bpmndi:BPMNLabelStyle>
</bpmndi:BPMNDiagram>
</definitions>
</dataInput>
<dataInput id="sid-ADF95ACC-DEA6-4F6F-AF91-8F5BABB299AF" isCollection="true">
<extensionElements>
<signavio:signavioMetaData metaKey="bgcolor" metaValue="#ffffff"/>
<signavio:signavioMetaData metaKey="userstory" metaValue=""/>
</extensionElements>
</dataInput>
<dataOutput id="DataOutput_1">
<extensionElements>
<signavio:signavioMetaData metaKey="bgcolor" metaValue="#ffffff"/>
<signavio:signavioMetaData metaKey="userstory" metaValue=""/>
<signavio:signavioLabel align="left" ref="text_name" valign="top" x="18.0" y="55.0"/>
</extensionElements>
</dataOutput>
<dataOutput id="sid-16646BD1-38D3-499A-95A6-42A75D8D2510" isCollection="true">
<extensionElements>
<signavio:signavioMetaData metaKey="bgcolor" metaValue="#ffffff"/>
<signavio:signavioMetaData metaKey="userstory" metaValue=""/>
</extensionElements>
</dataOutput>
<inputSet id="sid-8c0a0c80-098c-4972-bac0-8cc303d82bfd">
<dataInputRefs>DataInput_1</dataInputRefs>
<dataInputRefs>sid-ADF95ACC-DEA6-4F6F-AF91-8F5BABB299AF</dataInputRefs>
</inputSet>
<outputSet id="sid-60cf6782-0fff-4304-882d-7d2b33336aed">
<dataOutputRefs>DataOutput_1</dataOutputRefs>
<dataOutputRefs>sid-16646BD1-38D3-499A-95A6-42A75D8D2510</dataOutputRefs>
</outputSet>
</ioSpecification>
<dataObject id="sid-b71dc346-6ba3-481d-9ea6-03c3fe207b3f" name="Data Object"/>
<dataObject id="sid-01513038-3f29-47f0-b464-9047955bf45d" isCollection="true"/>
<task id="Task_1">
<extensionElements>
<signavio:signavioMetaData metaKey="bgcolor" metaValue="#ffffcc"/>
<signavio:signavioMetaData metaKey="adaptereventtype" metaValue=""/>
<signavio:signavioMetaData metaKey="documentationlink" metaValue=""/>
<signavio:signavioMetaData metaKey="test" metaValue=""/>
<signavio:signavioMetaData metaKey="adaptertype" metaValue=""/>
<signavio:signavioMetaData metaKey="userstory" metaValue=""/>
<signavio:signavioMetaData metaKey="adapterconfiguration" metaValue=""/>
<signavio:signavioMetaData metaKey="adapterclassname" metaValue=""/>
<signavio:signavioMetaData metaKey="servicereferenz" metaValue=""/>
<signavio:signavioMetaData metaKey="risiko" metaValue=""/>
<signavio:signavioMetaData metaKey="erteiltfreigabe" metaValue=""/>
<signavio:signavioMetaData metaKey="riskandcontrols" metaValue=""/>
</extensionElements>
<ioSpecification id="sid-25be8f24-f1fe-4fcb-a120-6b46fbd41d43">
<dataInput id="sid-b4a08214-9dd4-40ad-8f82-4620ee384231"/>
<dataOutput id="sid-b4a589fa-6809-485d-ac79-9906084551f5"/>
<dataOutput id="sid-d5968987-50e5-4e42-9a3e-e8e3f6cc53bc"/>
<inputSet id="sid-bff296e6-46b4-4c63-9def-f68cdf80510d" name="DefaultInputSet">
<dataInputRefs>sid-b4a08214-9dd4-40ad-8f82-4620ee384231</dataInputRefs>
<outputSetRefs>sid-6c061a84-a3f2-4b69-93a5-8a3cafa27437</outputSetRefs>
<outputSetRefs>sid-6c061a84-a3f2-4b69-93a5-8a3cafa27437</outputSetRefs>
</inputSet>
<outputSet id="sid-6c061a84-a3f2-4b69-93a5-8a3cafa27437" name="DefaultOutputSet">
<dataOutputRefs>sid-b4a589fa-6809-485d-ac79-9906084551f5</dataOutputRefs>
<dataOutputRefs>sid-d5968987-50e5-4e42-9a3e-e8e3f6cc53bc</dataOutputRefs>
<inputSetRefs>sid-bff296e6-46b4-4c63-9def-f68cdf80510d</inputSetRefs>
<inputSetRefs>sid-bff296e6-46b4-4c63-9def-f68cdf80510d</inputSetRefs>
</outputSet>
</ioSpecification>
<dataInputAssociation id="DataInputAssociation_3">
<extensionElements>
<signavio:signavioMetaData metaKey="userstory" metaValue=""/>
</extensionElements>
<sourceRef>DataObjectReference_1</sourceRef>
<targetRef>sid-b4a08214-9dd4-40ad-8f82-4620ee384231</targetRef>
</dataInputAssociation>
<dataInputAssociation id="DataInputAssociation_2">
<sourceRef>sid-ADF95ACC-DEA6-4F6F-AF91-8F5BABB299AF</sourceRef>
</dataInputAssociation>
<dataOutputAssociation id="DataOutputAssociation_1">
<extensionElements>
<signavio:signavioMetaData metaKey="userstory" metaValue=""/>
</extensionElements>
<targetRef>_DataStoreReference_2</targetRef>
</dataOutputAssociation>
<dataOutputAssociation id="DataOutputAssociation_2">
<extensionElements>
<signavio:signavioMetaData metaKey="userstory" metaValue=""/>
</extensionElements>
<sourceRef>sid-b4a589fa-6809-485d-ac79-9906084551f5</sourceRef>
<targetRef>DataOutput_1</targetRef>
</dataOutputAssociation>
<dataOutputAssociation id="DataOutputAssociation_3">
<extensionElements>
<signavio:signavioMetaData metaKey="userstory" metaValue=""/>
</extensionElements>
<sourceRef>sid-d5968987-50e5-4e42-9a3e-e8e3f6cc53bc</sourceRef>
<targetRef>DataObjectReference_1</targetRef>
</dataOutputAssociation>
<dataOutputAssociation id="DataOutputAssociation_5">
<targetRef>sid-16646BD1-38D3-499A-95A6-42A75D8D2510</targetRef>
</dataOutputAssociation>
</task>
<task id="Task_2">
<extensionElements>
<signavio:signavioMetaData metaKey="bgcolor" metaValue="#ffffcc"/>
<signavio:signavioMetaData metaKey="adaptereventtype" metaValue=""/>
<signavio:signavioMetaData metaKey="documentationlink" metaValue=""/>
<signavio:signavioMetaData metaKey="test" metaValue=""/>
<signavio:signavioMetaData metaKey="adaptertype" metaValue=""/>
<signavio:signavioMetaData metaKey="userstory" metaValue=""/>
<signavio:signavioMetaData metaKey="adapterconfiguration" metaValue=""/>
<signavio:signavioMetaData metaKey="adapterclassname" metaValue=""/>
<signavio:signavioMetaData metaKey="servicereferenz" metaValue=""/>
<signavio:signavioMetaData metaKey="risiko" metaValue=""/>
<signavio:signavioMetaData metaKey="erteiltfreigabe" metaValue=""/>
<signavio:signavioMetaData metaKey="riskandcontrols" metaValue=""/>
</extensionElements>
<dataInputAssociation id="DataInputAssociation_1">
<extensionElements>
<signavio:signavioMetaData metaKey="userstory" metaValue=""/>
</extensionElements>
<sourceRef>_DataStoreReference_2</sourceRef>
</dataInputAssociation>
</task>
<dataObjectReference id="DataObjectReference_1" name="Data Object" dataObjectRef="sid-b71dc346-6ba3-481d-9ea6-03c3fe207b3f">
<extensionElements>
<signavio:signavioMetaData metaKey="bgcolor" metaValue="#ffffff"/>
<signavio:signavioMetaData metaKey="userstory" metaValue=""/>
<signavio:signavioLabel align="left" ref="text_name" valign="top" x="-19.0" y="55.0"/>
</extensionElements>
</dataObjectReference>
<dataStoreReference id="_DataStoreReference_2" name="Data Store" dataStoreRef="sid-770aebf4-15fc-4ade-919f-d9558181997b">
<extensionElements>
<signavio:signavioMetaData metaKey="bgcolor" metaValue="#ffffff"/>
<signavio:signavioMetaData metaKey="userstory" metaValue=""/>
<signavio:signavioLabel align="left" ref="text_name" x="-2.499500000000012" y="60.5865"/>
</extensionElements>
</dataStoreReference>
<dataStoreReference id="_DataStoreReference_3" name="Data Store 2" dataStoreRef="sid-09f814b1-f9a1-45c7-8ce0-65a0ab69fddc">
<extensionElements>
<signavio:signavioMetaData metaKey="bgcolor" metaValue="#ffffff"/>
<signavio:signavioMetaData metaKey="userstory" metaValue=""/>
<signavio:signavioLabel align="left" ref="text_name" x="-7.499500000000012" y="60.5865"/>
</extensionElements>
</dataStoreReference>
<dataObjectReference id="sid-0B5F3253-68A7-4985-9E5F-EAA734C583B5" dataObjectRef="sid-01513038-3f29-47f0-b464-9047955bf45d">
<extensionElements>
<signavio:signavioMetaData metaKey="bgcolor" metaValue="#ffffff"/>
<signavio:signavioMetaData metaKey="userstory" metaValue=""/>
</extensionElements>
</dataObjectReference>
</process>
<bpmndi:BPMNDiagram id="sid-2afc2606-c2da-428e-a6df-1d046a82ed57">
<bpmndi:BPMNPlane id="sid-646a8f8e-d900-4b7d-8b7f-48364e1f53ce" bpmnElement="sid-efcaf392-1a95-40dc-be12-8a12c80ec1e5">
<bpmndi:BPMNShape id="_Participant_4_gui" bpmnElement="_Participant_4" isHorizontal="true">
<omgdc:Bounds height="277.0" width="529.0" x="132.0" y="60.0"/>
<bpmndi:BPMNLabel labelStyle="sid-80896269-9188-4a42-8603-3ff45af4c1f8">
<omgdc:Bounds height="24.857143" width="12.0" x="138.0" y="186.07143"/>
</bpmndi:BPMNLabel>
</bpmndi:BPMNShape>
<bpmndi:BPMNShape id="Participant_1_gui" bpmnElement="Participant_1" isHorizontal="true">
<omgdc:Bounds height="165.0" width="600.0" x="888.0" y="28.0"/>
<bpmndi:BPMNLabel labelStyle="sid-80896269-9188-4a42-8603-3ff45af4c1f8">
<omgdc:Bounds height="24.857143" width="12.0" x="894.0" y="98.07143"/>
</bpmndi:BPMNLabel>
</bpmndi:BPMNShape>
<bpmndi:BPMNShape id="Task_1_gui" bpmnElement="Task_1">
<omgdc:Bounds height="80.0" width="100.0" x="516.0" y="216.0"/>
</bpmndi:BPMNShape>
<bpmndi:BPMNShape id="Task_2_gui" bpmnElement="Task_2">
<omgdc:Bounds height="80.0" width="100.0" x="1029.0" y="68.0"/>
</bpmndi:BPMNShape>
<bpmndi:BPMNShape id="DataObjectReference_1_gui" bpmnElement="DataObjectReference_1">
<omgdc:Bounds height="50.0" width="36.0" x="396.0" y="231.0"/>
<bpmndi:BPMNLabel labelStyle="sid-80896269-9188-4a42-8603-3ff45af4c1f8">
<omgdc:Bounds height="36.0" width="34.285713" x="377.0" y="286.0"/>
</bpmndi:BPMNLabel>
</bpmndi:BPMNShape>
<bpmndi:BPMNShape id="_DataStoreReference_2_gui" bpmnElement="_DataStoreReference_2">
<omgdc:Bounds height="60.173" width="62.001" x="755.4995" y="66.4135"/>
<bpmndi:BPMNLabel labelStyle="sid-80896269-9188-4a42-8603-3ff45af4c1f8">
<omgdc:Bounds height="12.0" width="66.0" x="752.9995" y="126.9995"/>
</bpmndi:BPMNLabel>
</bpmndi:BPMNShape>
<bpmndi:BPMNShape id="_DataStoreReference_3_gui" bpmnElement="_DataStoreReference_3">
<omgdc:Bounds height="60.173" width="62.001" x="202.4995" y="72.4135"/>
<bpmndi:BPMNLabel labelStyle="sid-80896269-9188-4a42-8603-3ff45af4c1f8">
<omgdc:Bounds height="12.0" width="78.0" x="194.9995" y="132.9995"/>
</bpmndi:BPMNLabel>
</bpmndi:BPMNShape>
<bpmndi:BPMNShape id="sid-0B5F3253-68A7-4985-9E5F-EAA734C583B5_gui" bpmnElement="sid-0B5F3253-68A7-4985-9E5F-EAA734C583B5">
<omgdc:Bounds height="97.0" width="88.0" x="263.0" y="382.0"/>
</bpmndi:BPMNShape>
<bpmndi:BPMNShape id="DataInput_1_gui" bpmnElement="DataInput_1">
<omgdc:Bounds height="50.0" width="36.0" x="355.0" y="84.0"/>
</bpmndi:BPMNShape>
<bpmndi:BPMNShape id="sid-ADF95ACC-DEA6-4F6F-AF91-8F5BABB299AF_gui" bpmnElement="sid-ADF95ACC-DEA6-4F6F-AF91-8F5BABB299AF">
<omgdc:Bounds height="97.0" width="88.0" x="420.0" y="382.0"/>
</bpmndi:BPMNShape>
<bpmndi:BPMNShape id="DataOutput_1_gui" bpmnElement="DataOutput_1">
<omgdc:Bounds height="50.0" width="36.0" x="480.0" y="84.0"/>
</bpmndi:BPMNShape>
<bpmndi:BPMNShape id="sid-16646BD1-38D3-499A-95A6-42A75D8D2510_gui" bpmnElement="sid-16646BD1-38D3-499A-95A6-42A75D8D2510">
<omgdc:Bounds height="97.0" width="88.0" x="624.0" y="382.0"/>
</bpmndi:BPMNShape>
<bpmndi:BPMNEdge id="DataInputAssociation_3_gui" bpmnElement="DataInputAssociation_3">
<omgdi:waypoint xsi:type="omgdc:Point" x="432.0" y="244.0"/>
<omgdi:waypoint xsi:type="omgdc:Point" x="478.0" y="215.0"/>
<omgdi:waypoint xsi:type="omgdc:Point" x="516.0" y="233.0"/>
</bpmndi:BPMNEdge>
<bpmndi:BPMNEdge id="DataInputAssociation_1_gui" bpmnElement="DataInputAssociation_1">
<omgdi:waypoint xsi:type="omgdc:Point" x="817.5005" y="97.714455"/>
<omgdi:waypoint xsi:type="omgdc:Point" x="1029.0" y="106.0"/>
</bpmndi:BPMNEdge>
<bpmndi:BPMNEdge id="DataOutputAssociation_1_gui" bpmnElement="DataOutputAssociation_1">
<omgdi:waypoint xsi:type="omgdc:Point" x="616.0" y="220.0"/>
<omgdi:waypoint xsi:type="omgdc:Point" x="755.4995" y="118.95491"/>
</bpmndi:BPMNEdge>
<bpmndi:BPMNEdge id="DataOutputAssociation_2_gui" bpmnElement="DataOutputAssociation_2">
<omgdi:waypoint xsi:type="omgdc:Point" x="547.0" y="216.0"/>
<omgdi:waypoint xsi:type="omgdc:Point" x="510.0" y="134.0"/>
</bpmndi:BPMNEdge>
<bpmndi:BPMNEdge id="DataOutputAssociation_3_gui" bpmnElement="DataOutputAssociation_3">
<omgdi:waypoint xsi:type="omgdc:Point" x="516.0" y="277.0"/>
<omgdi:waypoint xsi:type="omgdc:Point" x="471.0" y="296.0"/>
<omgdi:waypoint xsi:type="omgdc:Point" x="432.0" y="269.0"/>
</bpmndi:BPMNEdge>
<bpmndi:BPMNEdge id="BPMNEdge_DataOutputAssociation_2" bpmnElement="DataOutputAssociation_5" sourceElement="Task_1_gui" targetElement="sid-16646BD1-38D3-499A-95A6-42A75D8D2510_gui">
<omgdi:waypoint xsi:type="omgdc:Point" x="572.0" y="296.0"/>
<omgdi:waypoint xsi:type="omgdc:Point" x="581.0" y="361.0"/>
<omgdi:waypoint xsi:type="omgdc:Point" x="624.0" y="395.0"/>
</bpmndi:BPMNEdge>
<bpmndi:BPMNEdge id="BPMNEdge_DataInputAssociation_1" bpmnElement="DataInputAssociation_2" sourceElement="sid-ADF95ACC-DEA6-4F6F-AF91-8F5BABB299AF_gui" targetElement="Task_1_gui">
<omgdi:waypoint xsi:type="omgdc:Point" x="508.0" y="397.0"/>
<omgdi:waypoint xsi:type="omgdc:Point" x="557.0" y="360.0"/>
<omgdi:waypoint xsi:type="omgdc:Point" x="563.0" y="296.0"/>
</bpmndi:BPMNEdge>
</bpmndi:BPMNPlane>
<bpmndi:BPMNLabelStyle id="sid-80896269-9188-4a42-8603-3ff45af4c1f8">
<omgdc:Font name="Arial" size="12.0"/>
</bpmndi:BPMNLabelStyle>
</bpmndi:BPMNDiagram>
</definitions>

View File

@ -13,7 +13,7 @@
</exclusiveGateway>
<exclusiveGateway gatewayDirection="Unspecified" id="sid-84DF847F-0735-450E-99C5-A62D974448C7">
</exclusiveGateway>
<association associationDirection="None" id="sid-31ADAC7A-ED0C-4A3E-966D-1705847A10A5" targetRef="sid-84DF847F-0735-450E-99C5-A62D974448C7">
<association associationDirection="None" id="sid-31ADAC7A-ED0C-4A3E-966D-1705847A10A5" sourceRef="sid-84DF847F-0735-450E-99C5-A62D974448C7" targetRef="sid-84DF847F-0735-450E-99C5-A62D974448C7">
</association>
<textAnnotation id="sid-7C319B57-5406-4CBB-BB14-AB42FB8CA81C" textFormat="text/plain">
<text>Should be blank</text>

View File

@ -0,0 +1,29 @@
<?xml version="1.0" encoding="UTF-8"?>
<bpmn2:definitions xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:bpmn2="http://www.omg.org/spec/BPMN/20100524/MODEL" xmlns:bpmndi="http://www.omg.org/spec/BPMN/20100524/DI" xmlns:dc="http://www.omg.org/spec/DD/20100524/DC" xmlns:di="http://www.omg.org/spec/DD/20100524/DI" xsi:schemaLocation="http://www.omg.org/spec/BPMN/20100524/MODEL BPMN20.xsd" id="_l0VD8GDfEeSr3-NpZeAM_A" exporter="camunda modeler" exporterVersion="2.6.0" targetNamespace="http://activiti.org/bpmn">
<bpmn2:process id="Process_1" isExecutable="false">
<bpmn2:task id="Task_1"/>
<bpmn2:boundaryEvent id="BoundaryEvent_1" name="" attachedToRef="Task_1">
<bpmn2:compensateEventDefinition id="_CompensateEventDefinition_2" waitForCompletion="false"/>
</bpmn2:boundaryEvent>
<bpmn2:task id="Task_2" isForCompensation="true"/>
<bpmn2:association id="Association_1" sourceRef="BoundaryEvent_1" targetRef="Task_2"/>
</bpmn2:process>
<bpmndi:BPMNDiagram id="BPMNDiagram_1">
<bpmndi:BPMNPlane id="BPMNPlane_1" bpmnElement="Process_1">
<bpmndi:BPMNShape id="_BPMNShape_Task_2" bpmnElement="Task_1">
<dc:Bounds height="80.0" width="100.0" x="468.0" y="83.0"/>
</bpmndi:BPMNShape>
<bpmndi:BPMNShape id="_BPMNShape_BoundaryEvent_2" bpmnElement="BoundaryEvent_1">
<dc:Bounds height="36.0" width="36.0" x="450.0" y="145.0"/>
</bpmndi:BPMNShape>
<bpmndi:BPMNShape id="_BPMNShape_Task_3" bpmnElement="Task_2">
<dc:Bounds height="80.0" width="100.0" x="536.0" y="223.0"/>
</bpmndi:BPMNShape>
<bpmndi:BPMNEdge id="BPMNEdge_Association_1" bpmnElement="Association_1" sourceElement="_BPMNShape_BoundaryEvent_2" targetElement="_BPMNShape_Task_3">
<di:waypoint xsi:type="dc:Point" x="468.0" y="181.0"/>
<di:waypoint xsi:type="dc:Point" x="468.0" y="262.0"/>
<di:waypoint xsi:type="dc:Point" x="536.0" y="263.0"/>
</bpmndi:BPMNEdge>
</bpmndi:BPMNPlane>
</bpmndi:BPMNDiagram>
</bpmn2:definitions>

View File

@ -0,0 +1,40 @@
<?xml version="1.0" encoding="UTF-8"?>
<bpmn2:definitions xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:bpmn2="http://www.omg.org/spec/BPMN/20100524/MODEL" xmlns:bpmndi="http://www.omg.org/spec/BPMN/20100524/DI" xmlns:dc="http://www.omg.org/spec/DD/20100524/DC" xmlns:di="http://www.omg.org/spec/DD/20100524/DI" xsi:schemaLocation="http://www.omg.org/spec/BPMN/20100524/MODEL BPMN20.xsd" id="_c7U8wGD8EeSCE95aAM9ZMQ" exporter="camunda modeler" exporterVersion="2.6.0" targetNamespace="http://activiti.org/bpmn">
<bpmn2:process id="Process_1" isExecutable="false">
<bpmn2:dataObject id="DataObject_1" name="Data Object 1"/>
<bpmn2:dataObjectReference id="DataObjectReference_1" name="" dataObjectRef="DataObject_1"/>
<bpmn2:task id="Task_1">
<bpmn2:dataOutputAssociation id="DataOutputAssociation_1">
<bpmn2:targetRef>DataObjectReference_1</bpmn2:targetRef>
</bpmn2:dataOutputAssociation>
</bpmn2:task>
<bpmn2:task id="Task_2">
<bpmn2:dataInputAssociation id="DataInputAssociation_1">
<bpmn2:sourceRef>DataObjectReference_1</bpmn2:sourceRef>
</bpmn2:dataInputAssociation>
</bpmn2:task>
</bpmn2:process>
<bpmndi:BPMNDiagram id="BPMNDiagram_1">
<bpmndi:BPMNPlane id="BPMNPlane_1" bpmnElement="Process_1">
<bpmndi:BPMNShape id="_BPMNShape_Task_2" bpmnElement="Task_1">
<dc:Bounds height="80.0" width="100.0" x="122.0" y="145.0"/>
</bpmndi:BPMNShape>
<bpmndi:BPMNShape id="_BPMNShape_Task_3" bpmnElement="Task_2">
<dc:Bounds height="80.0" width="100.0" x="504.0" y="145.0"/>
</bpmndi:BPMNShape>
<bpmndi:BPMNShape id="_BPMNShape_DataObjectReference_2" bpmnElement="DataObjectReference_1">
<dc:Bounds height="50.0" width="36.0" x="341.0" y="27.0"/>
</bpmndi:BPMNShape>
<bpmndi:BPMNEdge id="BPMNEdge_DataOutputAssociation_1" bpmnElement="DataOutputAssociation_1" sourceElement="_BPMNShape_Task_2" targetElement="_BPMNShape_DataObjectReference_2">
<di:waypoint xsi:type="dc:Point" x="172.0" y="145.0"/>
<di:waypoint xsi:type="dc:Point" x="172.0" y="52.0"/>
<di:waypoint xsi:type="dc:Point" x="341.0" y="52.0"/>
</bpmndi:BPMNEdge>
<bpmndi:BPMNEdge id="BPMNEdge_DataInputAssociation_1" bpmnElement="DataInputAssociation_1" sourceElement="_BPMNShape_DataObjectReference_2" targetElement="_BPMNShape_Task_3">
<di:waypoint xsi:type="dc:Point" x="377.0" y="52.0"/>
<di:waypoint xsi:type="dc:Point" x="554.0" y="52.0"/>
<di:waypoint xsi:type="dc:Point" x="554.0" y="145.0"/>
</bpmndi:BPMNEdge>
</bpmndi:BPMNPlane>
</bpmndi:BPMNDiagram>
</bpmn2:definitions>

View File

@ -0,0 +1,41 @@
<?xml version="1.0" encoding="UTF-8"?>
<bpmn2:definitions xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:bpmn2="http://www.omg.org/spec/BPMN/20100524/MODEL" xmlns:bpmndi="http://www.omg.org/spec/BPMN/20100524/DI" xmlns:dc="http://www.omg.org/spec/DD/20100524/DC" xmlns:di="http://www.omg.org/spec/DD/20100524/DI" xsi:schemaLocation="http://www.omg.org/spec/BPMN/20100524/MODEL BPMN20.xsd" id="_AupK8GEEEeSt-JfwT49W_w" exporter="camunda modeler" exporterVersion="2.6.0" targetNamespace="http://activiti.org/bpmn">
<bpmn2:process id="Process_1" isExecutable="false">
<bpmn2:ioSpecification id="InputOutputSpecification_1">
<bpmn2:dataInput id="DataInput_1"/>
<bpmn2:dataOutput id="DataOutput_1"/>
</bpmn2:ioSpecification>
<bpmn2:task id="Task_1">
<bpmn2:dataInputAssociation id="DataInputAssociation_1">
<bpmn2:sourceRef>DataInput_1</bpmn2:sourceRef>
</bpmn2:dataInputAssociation>
<bpmn2:dataOutputAssociation id="DataOutputAssociation_1">
<bpmn2:targetRef>DataOutput_1</bpmn2:targetRef>
</bpmn2:dataOutputAssociation>
</bpmn2:task>
</bpmn2:process>
<bpmndi:BPMNDiagram id="BPMNDiagram_1">
<bpmndi:BPMNPlane id="BPMNPlane_1" bpmnElement="Process_1">
<bpmndi:BPMNShape id="_BPMNShape_DataInput_2" bpmnElement="DataInput_1">
<dc:Bounds height="50.0" width="36.0" x="260.0" y="226.0"/>
</bpmndi:BPMNShape>
<bpmndi:BPMNShape id="_BPMNShape_DataOutput_2" bpmnElement="DataOutput_1">
<dc:Bounds height="50.0" width="36.0" x="462.0" y="226.0"/>
<bpmndi:BPMNLabel>
<dc:Bounds height="0.0" width="0.0" x="480.0" y="281.0"/>
</bpmndi:BPMNLabel>
</bpmndi:BPMNShape>
<bpmndi:BPMNShape id="_BPMNShape_Task_2" bpmnElement="Task_1">
<dc:Bounds height="80.0" width="100.0" x="324.0" y="84.0"/>
</bpmndi:BPMNShape>
<bpmndi:BPMNEdge id="BPMNEdge_DataInputAssociation_1" bpmnElement="DataInputAssociation_1" sourceElement="_BPMNShape_DataInput_2" targetElement="_BPMNShape_Task_2">
<di:waypoint xsi:type="dc:Point" x="296.0" y="227.0"/>
<di:waypoint xsi:type="dc:Point" x="344.0" y="164.0"/>
</bpmndi:BPMNEdge>
<bpmndi:BPMNEdge id="BPMNEdge_DataOutputAssociation_1" bpmnElement="DataOutputAssociation_1" sourceElement="_BPMNShape_Task_2" targetElement="_BPMNShape_DataOutput_2">
<di:waypoint xsi:type="dc:Point" x="407.0" y="164.0"/>
<di:waypoint xsi:type="dc:Point" x="462.0" y="229.0"/>
</bpmndi:BPMNEdge>
</bpmndi:BPMNPlane>
</bpmndi:BPMNDiagram>
</bpmn2:definitions>

View File

@ -0,0 +1,38 @@
<?xml version="1.0" encoding="UTF-8"?>
<definitions xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://www.omg.org/spec/BPMN/20100524/MODEL" xmlns:bpmndi="http://www.omg.org/spec/BPMN/20100524/DI" xmlns:omgdc="http://www.omg.org/spec/DD/20100524/DC" xmlns:omgdi="http://www.omg.org/spec/DD/20100524/DI" xmlns:signavio="http://www.signavio.com" xsi:schemaLocation="http://www.omg.org/spec/BPMN/20100524/MODEL BPMN20.xsd" id="sid-38422fae-e03e-43a3-bef4-bd33b32041b2" exporter="Signavio Process Editor, http://www.signavio.com" exporterVersion="7.9.1" targetNamespace="http://www.signavio.com/bpmn20">
<process id="sid-c8371393-9f09-410b-bd7f-b4838b26f391" isExecutable="false">
<task id="sid-8F82DC6C-AE16-41F6-9271-229FC57C00F4" name="">
</task>
<association id="Association_1" sourceRef="sid-8F82DC6C-AE16-41F6-9271-229FC57C00F4" targetRef="sid-A6E3D7E7-B739-4B08-993E-B5CB5F61C69F">
</association>
<textAnnotation id="sid-A6E3D7E7-B739-4B08-993E-B5CB5F61C69F">
<text>annotation</text>
</textAnnotation>
</process>
<bpmndi:BPMNDiagram id="sid-e568f3a9-31ad-4c0c-ab27-ac45c863f186">
<bpmndi:BPMNPlane id="sid-e5d306ed-2f42-4263-95b7-d9c187b0d06f" bpmnElement="sid-c8371393-9f09-410b-bd7f-b4838b26f391">
<bpmndi:BPMNShape id="sid-8F82DC6C-AE16-41F6-9271-229FC57C00F4_gui" bpmnElement="sid-8F82DC6C-AE16-41F6-9271-229FC57C00F4">
<omgdc:Bounds height="80.0" width="100.0" x="110.0" y="15.0"/>
<bpmndi:BPMNLabel labelStyle="sid-8b9b9c8e-9479-44ac-bdc1-f690e425822c">
<omgdc:Bounds height="12.0" width="82.285706" x="118.85715" y="47.0"/>
</bpmndi:BPMNLabel>
</bpmndi:BPMNShape>
<bpmndi:BPMNShape id="sid-A6E3D7E7-B739-4B08-993E-B5CB5F61C69F_gui" bpmnElement="sid-A6E3D7E7-B739-4B08-993E-B5CB5F61C69F">
<omgdc:Bounds height="31.0" width="100.0" x="115.0" y="131.0"/>
<bpmndi:BPMNLabel labelStyle="sid-08f9dfb8-726a-42d1-b3b6-5a0a9dfcc22e">
<omgdc:Bounds height="12.0" width="60.0" x="119.0" y="138.38"/>
</bpmndi:BPMNLabel>
</bpmndi:BPMNShape>
<bpmndi:BPMNEdge id="Association_1_gui" bpmnElement="Association_1">
<omgdi:waypoint xsi:type="omgdc:Point" x="141.0" y="95.0"/>
<omgdi:waypoint xsi:type="omgdc:Point" x="123.0" y="131.0"/>
</bpmndi:BPMNEdge>
</bpmndi:BPMNPlane>
<bpmndi:BPMNLabelStyle id="sid-08f9dfb8-726a-42d1-b3b6-5a0a9dfcc22e">
<omgdc:Font name="Arial" size="11.0"/>
</bpmndi:BPMNLabelStyle>
<bpmndi:BPMNLabelStyle id="sid-8b9b9c8e-9479-44ac-bdc1-f690e425822c">
<omgdc:Font name="Arial" size="12.0"/>
</bpmndi:BPMNLabelStyle>
</bpmndi:BPMNDiagram>
</definitions>

View File

@ -17,7 +17,7 @@ describe('features - context-pad', function() {
beforeEach(Matchers.addDeepEquals);
var diagramXML = fs.readFileSync('test/fixtures/bpmn/complex.bpmn', 'utf-8');
var diagramXML = fs.readFileSync('test/fixtures/bpmn/simple.bpmn', 'utf-8');
var testModules = [ contextPadModule, bpmnModule ];

View File

@ -152,7 +152,6 @@ describe('import - importer', function() {
done(err);
});
});
});
@ -275,7 +274,27 @@ describe('import - importer', function() {
done();
});
})
});
});
describe('integration', function() {
it('should import complex', function(done) {
// given
var xml = fs.readFileSync('test/fixtures/bpmn/complex.bpmn', 'utf8');
// when
runImport(diagram, xml, function(err, warnings) {
// then
expect(warnings.length).toBe(0);
done(err);
});
});
});

View File

@ -0,0 +1,130 @@
'use strict';
var TestHelper = require('../../../TestHelper');
/* global bootstrapViewer, inject */
var _ = require('lodash');
var fs = require('fs');
describe('import - associations', function() {
describe('should import association', function() {
it('connecting task -> text annotation', function(done) {
var xml = fs.readFileSync('test/fixtures/bpmn/import/association/text-annotation.bpmn', 'utf8');
// given
bootstrapViewer(xml)(function(err) {
if (err) {
return done(err);
}
// when
inject(function(elementRegistry) {
var association = elementRegistry.getById('Association_1');
// then
expect(association).toBeDefined();
done();
})();
});
});
it('connecting boundary -> compensate task', function(done) {
var xml = fs.readFileSync('test/fixtures/bpmn/import/association/compensation.bpmn', 'utf8');
// given
bootstrapViewer(xml)(function(err) {
if (err) {
return done(err);
}
// when
inject(function(elementRegistry) {
var association = elementRegistry.getById('Association_1');
// then
expect(association).toBeDefined();
done();
})();
});
});
});
describe('should import data association', function() {
it('task -> data object -> task', function(done) {
var xml = fs.readFileSync('test/fixtures/bpmn/import/association/data-association.bpmn', 'utf8');
// given
bootstrapViewer(xml)(function(err) {
if (err) {
return done(err);
}
// when
inject(function(elementRegistry) {
var dataInputAssociation = elementRegistry.getById('DataInputAssociation_1');
var dataOutputAssociation = elementRegistry.getById('DataOutputAssociation_1');
// then
expect(dataInputAssociation).toBeDefined();
expect(dataOutputAssociation).toBeDefined();
done();
})();
});
});
it('data input -> task -> data output', function(done) {
var xml = fs.readFileSync('test/fixtures/bpmn/import/association/data-input-output.bpmn', 'utf8');
// given
bootstrapViewer(xml)(function(err) {
if (err) {
return done(err);
}
// when
inject(function(elementRegistry) {
var dataInputAssociation = elementRegistry.getById('DataInputAssociation_1');
var dataOutputAssociation = elementRegistry.getById('DataOutputAssociation_1');
// then
expect(dataInputAssociation).toBeDefined();
expect(dataOutputAssociation).toBeDefined();
done();
})();
});
});
});
});