Notice: This Wiki is now read only and edits are no longer possible. Please see: https://gitlab.eclipse.org/eclipsefdn/helpdesk/-/wikis/Wiki-shutdown-plan for the plan.
Difference between revisions of "STP/IM Component/Transformation Approaches/From BPMN/Runtime Technology Based"
Line 7: | Line 7: | ||
} | } | ||
</source> | </source> | ||
+ | |||
+ | ==Transformation Outline== | ||
+ | * The BPMN diagram version is read and a IM property is created with this version. | ||
+ | * "IM Iter Configuration" starts: the "im.iter" EAnnotation from the BPMN diagram is read and copied to the IM instance. | ||
+ | * The used runtimes in all <code>Pool</code>s are read from the BPMN diagram. For each used runtime: | ||
+ | ** Create a <code>ServiceBinding</code> | ||
+ | ** Create a <code>Service</code> and put it in a <code>ServiceCollection</code> | ||
+ | * For each <code>Pool</code>: | ||
+ | ** Create a <code>Process</code> | ||
+ | ** Copy BPMN process artifacts into IM process variables | ||
+ | ** For each <code>Activity</code> | ||
+ | *** Create a <code>Step</code>. If this <code>Activity</code> is a <code>Subprocess</code>, find inner activities and create more <code>Step</code>s. | ||
+ | ** For each <code>SequenceEdge</code> | ||
+ | *** Create a <code>Transition</code>. If this <code>SequenceEdge</code>'s <code>Activity</code> on the source side is a <code>Subprocess</code>, find inner <code>SequenceEdge</code>s and create more <code>Transition</code>s. | ||
+ | |||
+ | ==Transformation Rules Sketch== | ||
+ | {| class="wikitable" | ||
+ | |- | ||
+ | ! From | ||
+ | ! To | ||
+ | |- | ||
+ | | | ||
+ | | | ||
+ | |} | ||
+ | ==Comments== |
Revision as of 05:03, 11 May 2008
This transformation can be found in the class org.eclipse.stp.im.in.bpmn2im.Bpmn2ImWorkspaceOperation
under the method with the following signature:
public StpIntermediateModel createIntermediateModelFromBpmn(BpmnDiagram bpmnDiagram, List<String> selectedPools, IProgressMonitor monitor){ ... }
Transformation Outline
- The BPMN diagram version is read and a IM property is created with this version.
- "IM Iter Configuration" starts: the "im.iter" EAnnotation from the BPMN diagram is read and copied to the IM instance.
- The used runtimes in all
Pool
s are read from the BPMN diagram. For each used runtime:- Create a
ServiceBinding
- Create a
Service
and put it in aServiceCollection
- Create a
- For each
Pool
:- Create a
Process
- Copy BPMN process artifacts into IM process variables
- For each
Activity
- Create a
Step
. If thisActivity
is aSubprocess
, find inner activities and create moreStep
s.
- Create a
- For each
SequenceEdge
- Create a
Transition
. If thisSequenceEdge
'sActivity
on the source side is aSubprocess
, find innerSequenceEdge
s and create moreTransition
s.
- Create a
- Create a
Transformation Rules Sketch
From | To |
---|---|