| author | Simon Nikles | 2012-07-17 12:10:58 (EDT) |
|---|---|---|
| committer | Simon Nikles | 2012-07-17 12:10:58 (EDT) |
| commit | d184b9c14d732f0d65fcf869eef091c4d85815f1 (patch) (side-by-side diff) | |
| tree | 338776f16e5cca9a2ec66ca9eb787ee833542359 | |
| parent | 7c5ecbc1b8f67be85381554c35b35ccae5e59868 (diff) | |
| download | org.eclipse.stardust.ide-d184b9c14d732f0d65fcf869eef091c4d85815f1.zip org.eclipse.stardust.ide-d184b9c14d732f0d65fcf869eef091c4d85815f1.tar.gz org.eclipse.stardust.ide-d184b9c14d732f0d65fcf869eef091c4d85815f1.tar.bz2 | |
Initial commit: BPMN2-model project (stardust extensionrefs/changes/19/6819/1
definitions) and BPMN2-transformation project (bpmn2stardust
transformation).
Change-Id: I6d98c82429723a0c0759526f986aebc893826fe6
76 files changed, 16079 insertions, 0 deletions
diff --git a/model/org.eclipse.stardust.model.bpmn2.transform/.classpath b/model/org.eclipse.stardust.model.bpmn2.transform/.classpath new file mode 100644 index 0000000..bb6db0a --- a/dev/null +++ b/model/org.eclipse.stardust.model.bpmn2.transform/.classpath @@ -0,0 +1,9 @@ +<?xml version="1.0" encoding="UTF-8"?>
+<classpath>
+ <classpathentry kind="src" output="target/classes" path="src/main/java"/>
+ <classpathentry kind="src" output="target/test-classes" path="src/test/java"/>
+ <classpathentry excluding="**" kind="src" output="target/test-classes" path="src/test/resources"/>
+ <classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/J2SE-1.5"/>
+ <classpathentry kind="con" path="org.eclipse.m2e.MAVEN2_CLASSPATH_CONTAINER"/>
+ <classpathentry kind="output" path="target/classes"/>
+</classpath>
diff --git a/model/org.eclipse.stardust.model.bpmn2.transform/.project b/model/org.eclipse.stardust.model.bpmn2.transform/.project new file mode 100644 index 0000000..ece05c8 --- a/dev/null +++ b/model/org.eclipse.stardust.model.bpmn2.transform/.project @@ -0,0 +1,23 @@ +<?xml version="1.0" encoding="UTF-8"?>
+<projectDescription>
+ <name>org.eclipse.stardust.model.bpmn2.transform</name>
+ <comment></comment>
+ <projects>
+ </projects>
+ <buildSpec>
+ <buildCommand>
+ <name>org.eclipse.jdt.core.javabuilder</name>
+ <arguments>
+ </arguments>
+ </buildCommand>
+ <buildCommand>
+ <name>org.eclipse.m2e.core.maven2Builder</name>
+ <arguments>
+ </arguments>
+ </buildCommand>
+ </buildSpec>
+ <natures>
+ <nature>org.eclipse.jdt.core.javanature</nature>
+ <nature>org.eclipse.m2e.core.maven2Nature</nature>
+ </natures>
+</projectDescription>
diff --git a/model/org.eclipse.stardust.model.bpmn2.transform/pom.xml b/model/org.eclipse.stardust.model.bpmn2.transform/pom.xml new file mode 100644 index 0000000..e1e6428 --- a/dev/null +++ b/model/org.eclipse.stardust.model.bpmn2.transform/pom.xml @@ -0,0 +1,59 @@ +<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
+
+ <modelVersion>4.0.0</modelVersion>
+
+ <artifactId>org.eclipse.stardust.model.bpmn2.transform</artifactId>
+ <groupId>org.eclipse.stardust.modeling.model</groupId>
+ <version>0.0.1-SNAPSHOT</version>
+
+ <dependencies>
+ <dependency>
+ <groupId>org.eclipse.stardust.modeling.model</groupId>
+ <artifactId>org.eclipse.stardust.model.bpmn2</artifactId>
+ <version>0.0.1-SNAPSHOT</version>
+ </dependency>
+ <dependency>
+ <groupId>org.eclipse.stardust.modeling.model</groupId>
+ <artifactId>org.eclipse.stardust.model.xpdl</artifactId>
+ <version>9.9.9-SNAPSHOT</version>
+ </dependency>
+ <dependency>
+ <groupId>org.eclipse.stardust.modeling.model</groupId>
+ <artifactId>org.eclipse.stardust.model.xpdl.builder</artifactId>
+ <version>0.0.1-SNAPSHOT</version>
+ </dependency>
+ <dependency>
+ <groupId>org.eclipse.emf</groupId>
+ <artifactId>emf-ecore</artifactId>
+ <version>2.4.2</version>
+ </dependency>
+ <dependency>
+ <groupId>org.eclipse.emf</groupId>
+ <artifactId>emf-ecore-xmi</artifactId>
+ <version>2.4.2</version>
+ </dependency>
+<!-- <dependency> -->
+<!-- <groupId>org.eclipse.emf</groupId> -->
+<!-- <artifactId>org.eclipse.emf.ecore.xmi</artifactId> -->
+<!-- <version>2.5.0.v20100521-1846</version> -->
+<!-- </dependency> -->
+<!-- <dependency> -->
+<!-- <groupId>org.eclipse.emf</groupId> -->
+<!-- <artifactId>org.eclipse.emf.common</artifactId> -->
+<!-- <version>2.6.0.v20100614-1136</version> -->
+<!-- </dependency> -->
+ <dependency>
+ <groupId>commons-logging</groupId>
+ <artifactId>commons-logging</artifactId>
+ <version>1.1.1</version>
+ </dependency>
+ <dependency>
+ <groupId>log4j</groupId>
+ <artifactId>log4j</artifactId>
+ <version>1.2.17</version>
+ </dependency>
+
+ </dependencies>
+
+</project>
\ No newline at end of file diff --git a/model/org.eclipse.stardust.model.bpmn2.transform/schema/StardustBPMN20.genmodel b/model/org.eclipse.stardust.model.bpmn2.transform/schema/StardustBPMN20.genmodel new file mode 100644 index 0000000..99e5878 --- a/dev/null +++ b/model/org.eclipse.stardust.model.bpmn2.transform/schema/StardustBPMN20.genmodel @@ -0,0 +1,76 @@ +<?xml version="1.0" encoding="UTF-8"?>
+<genmodel:GenModel xmi:version="2.0"
+ xmlns:xmi="http://www.omg.org/XMI" xmlns:ecore="http://www.eclipse.org/emf/2002/Ecore"
+ xmlns:genmodel="http://www.eclipse.org/emf/2002/GenModel" modelDirectory="/stardust-bpmn2/src"
+ modelPluginID="stardust-bpmn2" modelName="StardustBPMN20" importerID="org.eclipse.xsd.ecore.importer"
+ complianceLevel="5.0" copyrightFields="false" usedGenPackages="platform:/plugin/org.eclipse.stardust.model.xpdl/model/carnot.genmodel#//carnot platform:/plugin/org.eclipse.stardust.model.xpdl/model/xpdl.genmodel#//xpdl platform:/plugin/org.eclipse.stardust.model.xpdl/model/xpdl.genmodel#//xpdl/extensions platform:/plugin/org.eclipse.xsd/model/XSD.genmodel#//xsd">
+ <foreignModel>StardustBPMN20.xsd</foreignModel>
+ <genPackages prefix="Sdbpmn" basePackage="org.eclipse.stardust.bpmn20" resource="XML"
+ disposableProviderFactory="true" ecorePackage="sdbpmn.ecore#/">
+ <genClasses ecoreClass="sdbpmn.ecore#//DocumentRoot">
+ <genFeatures property="None" notify="false" createChild="false" ecoreFeature="ecore:EAttribute sdbpmn.ecore#//DocumentRoot/mixed"/>
+ <genFeatures property="None" notify="false" createChild="false" ecoreFeature="ecore:EReference sdbpmn.ecore#//DocumentRoot/xMLNSPrefixMap"/>
+ <genFeatures property="None" notify="false" createChild="false" ecoreFeature="ecore:EReference sdbpmn.ecore#//DocumentRoot/xSISchemaLocation"/>
+ <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference sdbpmn.ecore#//DocumentRoot/stardustActivity"/>
+ <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference sdbpmn.ecore#//DocumentRoot/stardustAttributes"/>
+ <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference sdbpmn.ecore#//DocumentRoot/stardustCommon"/>
+ <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference sdbpmn.ecore#//DocumentRoot/stardustMessageStartEvent"/>
+ <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference sdbpmn.ecore#//DocumentRoot/stardustModel"/>
+ <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference sdbpmn.ecore#//DocumentRoot/stardustSeqenceFlow"/>
+ <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference sdbpmn.ecore#//DocumentRoot/stardustServiceTask"/>
+ <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference sdbpmn.ecore#//DocumentRoot/stardustStartEvent"/>
+ <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference sdbpmn.ecore#//DocumentRoot/stardustSubprocess"/>
+ <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference sdbpmn.ecore#//DocumentRoot/stardustTimerStartEvent"/>
+ <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference sdbpmn.ecore#//DocumentRoot/stardustUserTask"/>
+ <genFeatures createChild="false" ecoreFeature="ecore:EAttribute sdbpmn.ecore#//DocumentRoot/author"/>
+ <genFeatures createChild="false" ecoreFeature="ecore:EAttribute sdbpmn.ecore#//DocumentRoot/carnotVersion"/>
+ <genFeatures createChild="false" ecoreFeature="ecore:EAttribute sdbpmn.ecore#//DocumentRoot/created"/>
+ <genFeatures createChild="false" ecoreFeature="ecore:EAttribute sdbpmn.ecore#//DocumentRoot/modelOID"/>
+ <genFeatures createChild="false" ecoreFeature="ecore:EAttribute sdbpmn.ecore#//DocumentRoot/oid"/>
+ <genFeatures createChild="false" ecoreFeature="ecore:EAttribute sdbpmn.ecore#//DocumentRoot/vendor"/>
+ </genClasses>
+ <genClasses ecoreClass="sdbpmn.ecore#//StardustAttributesType">
+ <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference sdbpmn.ecore#//StardustAttributesType/attributeType"/>
+ </genClasses>
+ <genClasses ecoreClass="sdbpmn.ecore#//StardustMessageStartEventType">
+ <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference sdbpmn.ecore#//StardustMessageStartEventType/stardustAttributes"/>
+ <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference sdbpmn.ecore#//StardustMessageStartEventType/accessPoint"/>
+ <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference sdbpmn.ecore#//StardustMessageStartEventType/parameterMapping"/>
+ <genFeatures createChild="false" ecoreFeature="ecore:EAttribute sdbpmn.ecore#//StardustMessageStartEventType/type"/>
+ </genClasses>
+ <genClasses ecoreClass="sdbpmn.ecore#//StardustModelType">
+ <genFeatures createChild="false" ecoreFeature="ecore:EAttribute sdbpmn.ecore#//StardustModelType/author"/>
+ <genFeatures createChild="false" ecoreFeature="ecore:EAttribute sdbpmn.ecore#//StardustModelType/carnotVersion"/>
+ <genFeatures createChild="false" ecoreFeature="ecore:EAttribute sdbpmn.ecore#//StardustModelType/created"/>
+ <genFeatures createChild="false" ecoreFeature="ecore:EAttribute sdbpmn.ecore#//StardustModelType/modelOID"/>
+ <genFeatures createChild="false" ecoreFeature="ecore:EAttribute sdbpmn.ecore#//StardustModelType/oid"/>
+ <genFeatures createChild="false" ecoreFeature="ecore:EAttribute sdbpmn.ecore#//StardustModelType/vendor"/>
+ </genClasses>
+ <genClasses ecoreClass="sdbpmn.ecore#//StardustSeqenceFlowType">
+ <genFeatures createChild="false" ecoreFeature="ecore:EAttribute sdbpmn.ecore#//StardustSeqenceFlowType/forkOnTraversal"/>
+ </genClasses>
+ <genClasses ecoreClass="sdbpmn.ecore#//StardustServiceTaskType">
+ <genFeatures createChild="false" ecoreFeature="ecore:EAttribute sdbpmn.ecore#//StardustServiceTaskType/application"/>
+ </genClasses>
+ <genClasses ecoreClass="sdbpmn.ecore#//StardustStartEventType">
+ <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference sdbpmn.ecore#//StardustStartEventType/stardustAttributes"/>
+ </genClasses>
+ <genClasses ecoreClass="sdbpmn.ecore#//StardustSubprocessType">
+ <genFeatures createChild="false" ecoreFeature="ecore:EAttribute sdbpmn.ecore#//StardustSubprocessType/implementationProcess"/>
+ </genClasses>
+ <genClasses ecoreClass="sdbpmn.ecore#//StardustTimerStartEventType">
+ <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference sdbpmn.ecore#//StardustTimerStartEventType/stardustAttributes"/>
+ </genClasses>
+ <genClasses ecoreClass="sdbpmn.ecore#//StardustUserTaskType">
+ <genFeatures createChild="false" ecoreFeature="ecore:EAttribute sdbpmn.ecore#//StardustUserTaskType/allowsAbortByPerformer"/>
+ </genClasses>
+ <genClasses ecoreClass="sdbpmn.ecore#//TStardustActivity">
+ <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference sdbpmn.ecore#//TStardustActivity/eventHandler"/>
+ <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference sdbpmn.ecore#//TStardustActivity/dataMapping"/>
+ <genFeatures createChild="false" ecoreFeature="ecore:EAttribute sdbpmn.ecore#//TStardustActivity/hibernateOnCreation"/>
+ </genClasses>
+ <genClasses ecoreClass="sdbpmn.ecore#//TStardustCommon">
+ <genFeatures createChild="false" ecoreFeature="ecore:EAttribute sdbpmn.ecore#//TStardustCommon/elementOid"/>
+ </genClasses>
+ </genPackages>
+</genmodel:GenModel>
diff --git a/model/org.eclipse.stardust.model.bpmn2.transform/schema/StardustBPMN20.xsd b/model/org.eclipse.stardust.model.bpmn2.transform/schema/StardustBPMN20.xsd new file mode 100644 index 0000000..ef4436a --- a/dev/null +++ b/model/org.eclipse.stardust.model.bpmn2.transform/schema/StardustBPMN20.xsd @@ -0,0 +1,208 @@ +<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<schema xmlns="http://www.w3.org/2001/XMLSchema" xmlns:bpmn="http://www.omg.org/spec/BPMN/20100524/MODEL" xmlns:carnot="http://www.carnot.ag/workflowmodel/3.1"
+ xmlns:sdbpmn="http://www.eclipse.org/stardust/bpmn20/sdbpmn" xmlns:xsd="http://www.w3.org/2001/XMLSchema" elementFormDefault="qualified"
+ targetNamespace="http://www.eclipse.org/stardust/bpmn20/sdbpmn">
+ <import namespace="http://www.carnot.ag/workflowmodel/3.1" schemaLocation="CarnotWorkflowModelXML.xsd" />
+
+ <xsd:attribute name="author" type="xsd:string">
+ <xsd:annotation>
+ <xsd:documentation>
+ The name of the user editing this model last.
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:attribute>
+ <xsd:attribute name="carnotVersion" type="xsd:string">
+ <xsd:annotation>
+ <xsd:documentation>
+ The software version used to create and edit this model. Opening this
+ model in another version of the software may require an explicit
+ conversion.
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:attribute>
+ <xsd:attribute name="created" type="xsd:dateTime">
+ <xsd:annotation>
+ <xsd:documentation>The date this model was created.</xsd:documentation>
+ </xsd:annotation>
+ </xsd:attribute>
+ <xsd:attribute name="modelOID" type="xsd:integer">
+ <xsd:annotation>
+ <xsd:documentation>
+ A 32-bit number assigned to the model during deployment to an audit
+ trail. This number may be changed if the model is deployed to different
+ audit trails or even to the same audit trail multiple times.
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:attribute>
+ <xsd:attribute name="oid" type="xsd:long">
+ <xsd:annotation>
+ <xsd:documentation>
+ A 64-bit number uniquely identifying the model in the model repository.
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:attribute>
+ <xsd:attribute name="vendor" type="xsd:string">
+ <xsd:annotation>
+ <xsd:documentation>
+ The vendor of the software used to create and edit this model. Usually
+ this will be "carnot".
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:attribute>
+
+ <xsd:attributeGroup name="ModelAttributes" id="ModelAttributes">
+ <xsd:attribute ref="sdbpmn:oid"></xsd:attribute>
+ <xsd:attribute ref="sdbpmn:modelOID"></xsd:attribute>
+ <xsd:attribute ref="sdbpmn:author"></xsd:attribute>
+ <xsd:attribute ref="sdbpmn:created"></xsd:attribute>
+ <xsd:attribute ref="sdbpmn:carnotVersion"></xsd:attribute>
+ <xsd:attribute ref="sdbpmn:vendor"></xsd:attribute>
+ </xsd:attributeGroup>
+
+ <xsd:element name="StardustModel">
+ <xsd:complexType>
+ <xsd:attributeGroup ref="sdbpmn:ModelAttributes"></xsd:attributeGroup>
+ </xsd:complexType>
+ </xsd:element>
+
+ <xsd:element name="StardustCommon" type="sdbpmn:tStardustCommon" />
+ <xsd:complexType name="tStardustCommon">
+ <xsd:attribute name="elementOid" type="xsd:string" use="required" />
+ </xsd:complexType>
+
+ <xsd:element name="StardustAttributes">
+ <xsd:complexType>
+ <xsd:sequence>
+ <xsd:element ref="carnot:AttributeType" minOccurs="0" maxOccurs="unbounded"></xsd:element>
+ </xsd:sequence>
+ </xsd:complexType>
+ </xsd:element>
+
+ <xsd:element name="StardustTimerStartEvent">
+ <xsd:complexType>
+ <xsd:sequence>
+ <!-- <xsd:element name="ManualStartPerformer" type="carnot:AttributeType" maxOccurs="1"></xsd:element> -->
+ <xsd:element ref="sdbpmn:StardustAttributes" maxOccurs="1" />
+ </xsd:sequence>
+ </xsd:complexType>
+
+ </xsd:element>
+ <xsd:element name="StardustStartEvent">
+ <xsd:complexType>
+ <xsd:sequence>
+ <!-- <xsd:element name="ManualStartPerformer" type="carnot:AttributeType" maxOccurs="1"></xsd:element> -->
+ <xsd:element ref="sdbpmn:StardustAttributes" maxOccurs="1" />
+ </xsd:sequence>
+ </xsd:complexType>
+
+ </xsd:element>
+
+ <xsd:element name="StardustMessageStartEvent">
+ <xsd:complexType>
+ <xsd:sequence>
+ <xsd:element ref="sdbpmn:StardustAttributes" maxOccurs="1" />
+ <xsd:element maxOccurs="unbounded" minOccurs="0" name="accessPoint" type="carnot:AccessPointType">
+ <xsd:annotation>
+ <xsd:documentation>The list of access points.</xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ <xsd:element maxOccurs="unbounded" minOccurs="0" name="parameterMapping" type="carnot:ParameterMappingType">
+ <xsd:annotation>
+ <xsd:documentation>The list of parameter mappings.</xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ </xsd:sequence>
+ <xsd:attribute name="type" type="xsd:string">
+ <xsd:annotation>
+ <xsd:documentation>
+ The model id of one of the previously defined triggerType elements.
+ Actual implementation of a message start event: i.e. jms or e-mail
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:attribute>
+ </xsd:complexType>
+ </xsd:element>
+
+
+ <xsd:element name="StardustSeqenceFlow">
+ <xsd:complexType>
+ <xsd:attribute default="false" name="forkOnTraversal" type="xsd:boolean" />
+ </xsd:complexType>
+ </xsd:element>
+
+ <xsd:element name="StardustActivity" type="sdbpmn:tStardustActivity" />
+ <xsd:complexType name="tStardustActivity">
+ <xsd:complexContent>
+ <xsd:extension base="sdbpmn:tStardustCommon">
+ <xsd:sequence>
+ <xsd:element maxOccurs="unbounded" minOccurs="0" name="eventHandler" type="carnot:EventHandlerType">
+ <xsd:annotation>
+ <xsd:documentation>The list of event handlers defined for this model element.</xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ <xsd:element maxOccurs="unbounded" minOccurs="0" name="dataMapping" type="carnot:DataMappingType">
+ <xsd:annotation>
+ <xsd:documentation>The list of data mappings.</xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ </xsd:sequence>
+ <xsd:attribute name="hibernateOnCreation" type="xsd:boolean">
+ <xsd:annotation>
+ <xsd:documentation>
+ Determines whether an activity instance is hibernated immediately after beeing created.
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:attribute>
+ </xsd:extension>
+ </xsd:complexContent>
+ </xsd:complexType>
+
+ <xsd:element name="StardustSubprocess">
+ <xsd:complexType>
+ <xsd:complexContent>
+ <xsd:extension base="sdbpmn:tStardustActivity">
+ <xsd:attribute name="implementationProcess" type="xsd:string">
+ <xsd:annotation>
+ <xsd:documentation>
+ The model id of the subprocess implementing the activity when the
+ attribute "implementation" is set to "Subprocess".
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:attribute>
+ </xsd:extension>
+ </xsd:complexContent>
+ </xsd:complexType>
+ </xsd:element>
+
+ <xsd:element name="StardustUserTask">
+ <xsd:complexType>
+ <xsd:complexContent>
+ <xsd:extension base="sdbpmn:tStardustActivity">
+ <xsd:attribute name="allowsAbortByPerformer" type="xsd:boolean">
+ <xsd:annotation>
+ <xsd:documentation>Determines whether the activity is allowed to be aborted.</xsd:documentation>
+ </xsd:annotation>
+ </xsd:attribute>
+ </xsd:extension>
+ </xsd:complexContent>
+ </xsd:complexType>
+ </xsd:element>
+
+ <xsd:element name="StardustServiceTask">
+ <xsd:complexType>
+ <xsd:complexContent>
+ <xsd:extension base="sdbpmn:tStardustActivity">
+ <xsd:attribute name="application" type="xsd:string">
+ <xsd:annotation>
+ <xsd:documentation>
+ The model id of the application to execute when the attribute
+ "implementation" is set to "Application".
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:attribute>
+ </xsd:extension>
+ </xsd:complexContent>
+ </xsd:complexType>
+ </xsd:element>
+
+</schema>
diff --git a/model/org.eclipse.stardust.model.bpmn2.transform/schema/sdbpmn.ecore b/model/org.eclipse.stardust.model.bpmn2.transform/schema/sdbpmn.ecore new file mode 100644 index 0000000..8ca9b19 --- a/dev/null +++ b/model/org.eclipse.stardust.model.bpmn2.transform/schema/sdbpmn.ecore @@ -0,0 +1,466 @@ +<?xml version="1.0" encoding="UTF-8"?>
+<ecore:EPackage xmi:version="2.0"
+ xmlns:xmi="http://www.omg.org/XMI" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xmlns:ecore="http://www.eclipse.org/emf/2002/Ecore" name="sdbpmn"
+ nsURI="http://www.eclipse.org/stardust/bpmn20/sdbpmn" nsPrefix="sdbpmn">
+ <eClassifiers xsi:type="ecore:EClass" name="DocumentRoot">
+ <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
+ <details key="name" value=""/>
+ <details key="kind" value="mixed"/>
+ </eAnnotations>
+ <eStructuralFeatures xsi:type="ecore:EAttribute" name="mixed" unique="false" upperBound="-1"
+ eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EFeatureMapEntry">
+ <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
+ <details key="kind" value="elementWildcard"/>
+ <details key="name" value=":mixed"/>
+ </eAnnotations>
+ </eStructuralFeatures>
+ <eStructuralFeatures xsi:type="ecore:EReference" name="xMLNSPrefixMap" upperBound="-1"
+ eType="ecore:EClass http://www.eclipse.org/emf/2002/Ecore#//EStringToStringMapEntry"
+ transient="true" containment="true" resolveProxies="false">
+ <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
+ <details key="kind" value="attribute"/>
+ <details key="name" value="xmlns:prefix"/>
+ </eAnnotations>
+ </eStructuralFeatures>
+ <eStructuralFeatures xsi:type="ecore:EReference" name="xSISchemaLocation" upperBound="-1"
+ eType="ecore:EClass http://www.eclipse.org/emf/2002/Ecore#//EStringToStringMapEntry"
+ transient="true" containment="true" resolveProxies="false">
+ <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
+ <details key="kind" value="attribute"/>
+ <details key="name" value="xsi:schemaLocation"/>
+ </eAnnotations>
+ </eStructuralFeatures>
+ <eStructuralFeatures xsi:type="ecore:EReference" name="stardustActivity" upperBound="-2"
+ eType="#//TStardustActivity" volatile="true" transient="true" derived="true"
+ containment="true" resolveProxies="false">
+ <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
+ <details key="kind" value="element"/>
+ <details key="name" value="StardustActivity"/>
+ <details key="namespace" value="##targetNamespace"/>
+ </eAnnotations>
+ </eStructuralFeatures>
+ <eStructuralFeatures xsi:type="ecore:EReference" name="stardustAttributes" upperBound="-2"
+ eType="#//StardustAttributesType" volatile="true" transient="true" derived="true"
+ containment="true" resolveProxies="false">
+ <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
+ <details key="kind" value="element"/>
+ <details key="name" value="StardustAttributes"/>
+ <details key="namespace" value="##targetNamespace"/>
+ </eAnnotations>
+ </eStructuralFeatures>
+ <eStructuralFeatures xsi:type="ecore:EReference" name="stardustCommon" upperBound="-2"
+ eType="#//TStardustCommon" volatile="true" transient="true" derived="true"
+ containment="true" resolveProxies="false">
+ <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
+ <details key="kind" value="element"/>
+ <details key="name" value="StardustCommon"/>
+ <details key="namespace" value="##targetNamespace"/>
+ </eAnnotations>
+ </eStructuralFeatures>
+ <eStructuralFeatures xsi:type="ecore:EReference" name="stardustMessageStartEvent"
+ upperBound="-2" eType="#//StardustMessageStartEventType" volatile="true" transient="true"
+ derived="true" containment="true" resolveProxies="false">
+ <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
+ <details key="kind" value="element"/>
+ <details key="name" value="StardustMessageStartEvent"/>
+ <details key="namespace" value="##targetNamespace"/>
+ </eAnnotations>
+ </eStructuralFeatures>
+ <eStructuralFeatures xsi:type="ecore:EReference" name="stardustModel" upperBound="-2"
+ eType="#//StardustModelType" volatile="true" transient="true" derived="true"
+ containment="true" resolveProxies="false">
+ <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
+ <details key="kind" value="element"/>
+ <details key="name" value="StardustModel"/>
+ <details key="namespace" value="##targetNamespace"/>
+ </eAnnotations>
+ </eStructuralFeatures>
+ <eStructuralFeatures xsi:type="ecore:EReference" name="stardustSeqenceFlow" upperBound="-2"
+ eType="#//StardustSeqenceFlowType" volatile="true" transient="true" derived="true"
+ containment="true" resolveProxies="false">
+ <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
+ <details key="kind" value="element"/>
+ <details key="name" value="StardustSeqenceFlow"/>
+ <details key="namespace" value="##targetNamespace"/>
+ </eAnnotations>
+ </eStructuralFeatures>
+ <eStructuralFeatures xsi:type="ecore:EReference" name="stardustServiceTask" upperBound="-2"
+ eType="#//StardustServiceTaskType" volatile="true" transient="true" derived="true"
+ containment="true" resolveProxies="false">
+ <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
+ <details key="kind" value="element"/>
+ <details key="name" value="StardustServiceTask"/>
+ <details key="namespace" value="##targetNamespace"/>
+ </eAnnotations>
+ </eStructuralFeatures>
+ <eStructuralFeatures xsi:type="ecore:EReference" name="stardustStartEvent" upperBound="-2"
+ eType="#//StardustStartEventType" volatile="true" transient="true" derived="true"
+ containment="true" resolveProxies="false">
+ <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
+ <details key="kind" value="element"/>
+ <details key="name" value="StardustStartEvent"/>
+ <details key="namespace" value="##targetNamespace"/>
+ </eAnnotations>
+ </eStructuralFeatures>
+ <eStructuralFeatures xsi:type="ecore:EReference" name="stardustSubprocess" upperBound="-2"
+ eType="#//StardustSubprocessType" volatile="true" transient="true" derived="true"
+ containment="true" resolveProxies="false">
+ <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
+ <details key="kind" value="element"/>
+ <details key="name" value="StardustSubprocess"/>
+ <details key="namespace" value="##targetNamespace"/>
+ </eAnnotations>
+ </eStructuralFeatures>
+ <eStructuralFeatures xsi:type="ecore:EReference" name="stardustTimerStartEvent"
+ upperBound="-2" eType="#//StardustTimerStartEventType" volatile="true" transient="true"
+ derived="true" containment="true" resolveProxies="false">
+ <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
+ <details key="kind" value="element"/>
+ <details key="name" value="StardustTimerStartEvent"/>
+ <details key="namespace" value="##targetNamespace"/>
+ </eAnnotations>
+ </eStructuralFeatures>
+ <eStructuralFeatures xsi:type="ecore:EReference" name="stardustUserTask" upperBound="-2"
+ eType="#//StardustUserTaskType" volatile="true" transient="true" derived="true"
+ containment="true" resolveProxies="false">
+ <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
+ <details key="kind" value="element"/>
+ <details key="name" value="StardustUserTask"/>
+ <details key="namespace" value="##targetNamespace"/>
+ </eAnnotations>
+ </eStructuralFeatures>
+ <eStructuralFeatures xsi:type="ecore:EAttribute" name="author" eType="ecore:EDataType http://www.eclipse.org/emf/2003/XMLType#//String">
+ <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
+ <details key="documentation" value="
				The name of the user editing this model last.
 "/>
+ </eAnnotations>
+ <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
+ <details key="kind" value="attribute"/>
+ <details key="name" value="author"/>
+ <details key="namespace" value="##targetNamespace"/>
+ </eAnnotations>
+ </eStructuralFeatures>
+ <eStructuralFeatures xsi:type="ecore:EAttribute" name="carnotVersion" eType="ecore:EDataType http://www.eclipse.org/emf/2003/XMLType#//String">
+ <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
+ <details key="documentation" value="
				The software version used to create and edit this model. Opening this
				model in another version of the software may require an explicit
				conversion.
 "/>
+ </eAnnotations>
+ <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
+ <details key="kind" value="attribute"/>
+ <details key="name" value="carnotVersion"/>
+ <details key="namespace" value="##targetNamespace"/>
+ </eAnnotations>
+ </eStructuralFeatures>
+ <eStructuralFeatures xsi:type="ecore:EAttribute" name="created" eType="ecore:EDataType http://www.eclipse.org/emf/2003/XMLType#//DateTime">
+ <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
+ <details key="documentation" value="The date this model was created."/>
+ </eAnnotations>
+ <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
+ <details key="kind" value="attribute"/>
+ <details key="name" value="created"/>
+ <details key="namespace" value="##targetNamespace"/>
+ </eAnnotations>
+ </eStructuralFeatures>
+ <eStructuralFeatures xsi:type="ecore:EAttribute" name="modelOID" eType="ecore:EDataType http://www.eclipse.org/emf/2003/XMLType#//Integer">
+ <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
+ <details key="documentation" value="
				A 32-bit number assigned to the model during deployment to an audit
				trail. This number may be changed if the model is deployed to different
				audit trails or even to the same audit trail multiple times.
 "/>
+ </eAnnotations>
+ <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
+ <details key="kind" value="attribute"/>
+ <details key="name" value="modelOID"/>
+ <details key="namespace" value="##targetNamespace"/>
+ </eAnnotations>
+ </eStructuralFeatures>
+ <eStructuralFeatures xsi:type="ecore:EAttribute" name="oid" eType="ecore:EDataType http://www.eclipse.org/emf/2003/XMLType#//Long"
+ unsettable="true">
+ <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
+ <details key="documentation" value="
				A 64-bit number uniquely identifying the model in the model repository.
 "/>
+ </eAnnotations>
+ <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
+ <details key="kind" value="attribute"/>
+ <details key="name" value="oid"/>
+ <details key="namespace" value="##targetNamespace"/>
+ </eAnnotations>
+ </eStructuralFeatures>
+ <eStructuralFeatures xsi:type="ecore:EAttribute" name="vendor" eType="ecore:EDataType http://www.eclipse.org/emf/2003/XMLType#//String">
+ <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
+ <details key="documentation" value="
				The vendor of the software used to create and edit this model. Usually
				this will be "carnot".
 "/>
+ </eAnnotations>
+ <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
+ <details key="kind" value="attribute"/>
+ <details key="name" value="vendor"/>
+ <details key="namespace" value="##targetNamespace"/>
+ </eAnnotations>
+ </eStructuralFeatures>
+ </eClassifiers>
+ <eClassifiers xsi:type="ecore:EClass" name="StardustAttributesType">
+ <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
+ <details key="name" value="StardustAttributes_._type"/>
+ <details key="kind" value="elementOnly"/>
+ </eAnnotations>
+ <eStructuralFeatures xsi:type="ecore:EReference" name="attributeType" upperBound="-1"
+ eType="ecore:EClass platform:/plugin/org.eclipse.stardust.model.xpdl/model/carnot.ecore#//AttributeType"
+ containment="true" resolveProxies="false">
+ <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
+ <details key="kind" value="element"/>
+ <details key="name" value="AttributeType"/>
+ <details key="namespace" value="http://www.carnot.ag/workflowmodel/3.1"/>
+ </eAnnotations>
+ </eStructuralFeatures>
+ </eClassifiers>
+ <eClassifiers xsi:type="ecore:EClass" name="StardustMessageStartEventType">
+ <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
+ <details key="name" value="StardustMessageStartEvent_._type"/>
+ <details key="kind" value="elementOnly"/>
+ </eAnnotations>
+ <eStructuralFeatures xsi:type="ecore:EReference" name="stardustAttributes" lowerBound="1"
+ eType="#//StardustAttributesType" containment="true" resolveProxies="false">
+ <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
+ <details key="kind" value="element"/>
+ <details key="name" value="StardustAttributes"/>
+ <details key="namespace" value="##targetNamespace"/>
+ </eAnnotations>
+ </eStructuralFeatures>
+ <eStructuralFeatures xsi:type="ecore:EReference" name="accessPoint" upperBound="-1"
+ eType="ecore:EClass platform:/plugin/org.eclipse.stardust.model.xpdl/model/carnot.ecore#//AccessPointType"
+ containment="true" resolveProxies="false">
+ <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
+ <details key="documentation" value="The list of access points."/>
+ </eAnnotations>
+ <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
+ <details key="kind" value="element"/>
+ <details key="name" value="accessPoint"/>
+ <details key="namespace" value="##targetNamespace"/>
+ </eAnnotations>
+ </eStructuralFeatures>
+ <eStructuralFeatures xsi:type="ecore:EReference" name="parameterMapping" upperBound="-1"
+ eType="ecore:EClass platform:/plugin/org.eclipse.stardust.model.xpdl/model/carnot.ecore#//ParameterMappingType"
+ containment="true" resolveProxies="false">
+ <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
+ <details key="documentation" value="The list of parameter mappings."/>
+ </eAnnotations>
+ <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
+ <details key="kind" value="element"/>
+ <details key="name" value="parameterMapping"/>
+ <details key="namespace" value="##targetNamespace"/>
+ </eAnnotations>
+ </eStructuralFeatures>
+ <eStructuralFeatures xsi:type="ecore:EAttribute" name="type" eType="ecore:EDataType http://www.eclipse.org/emf/2003/XMLType#//String">
+ <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
+ <details key="documentation" value="
 The model id of one of the previously defined triggerType elements.
 Actual implementation of a message start event: i.e. jms or e-mail
 "/>
+ </eAnnotations>
+ <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
+ <details key="kind" value="attribute"/>
+ <details key="name" value="type"/>
+ </eAnnotations>
+ </eStructuralFeatures>
+ </eClassifiers>
+ <eClassifiers xsi:type="ecore:EClass" name="StardustModelType">
+ <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
+ <details key="name" value="StardustModel_._type"/>
+ <details key="kind" value="empty"/>
+ </eAnnotations>
+ <eStructuralFeatures xsi:type="ecore:EAttribute" name="author" eType="ecore:EDataType http://www.eclipse.org/emf/2003/XMLType#//String">
+ <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
+ <details key="documentation" value="
				The name of the user editing this model last.
 "/>
+ </eAnnotations>
+ <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
+ <details key="kind" value="attribute"/>
+ <details key="name" value="author"/>
+ <details key="namespace" value="##targetNamespace"/>
+ </eAnnotations>
+ </eStructuralFeatures>
+ <eStructuralFeatures xsi:type="ecore:EAttribute" name="carnotVersion" eType="ecore:EDataType http://www.eclipse.org/emf/2003/XMLType#//String">
+ <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
+ <details key="documentation" value="
				The software version used to create and edit this model. Opening this
				model in another version of the software may require an explicit
				conversion.
 "/>
+ </eAnnotations>
+ <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
+ <details key="kind" value="attribute"/>
+ <details key="name" value="carnotVersion"/>
+ <details key="namespace" value="##targetNamespace"/>
+ </eAnnotations>
+ </eStructuralFeatures>
+ <eStructuralFeatures xsi:type="ecore:EAttribute" name="created" eType="ecore:EDataType http://www.eclipse.org/emf/2003/XMLType#//DateTime">
+ <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
+ <details key="documentation" value="The date this model was created."/>
+ </eAnnotations>
+ <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
+ <details key="kind" value="attribute"/>
+ <details key="name" value="created"/>
+ <details key="namespace" value="##targetNamespace"/>
+ </eAnnotations>
+ </eStructuralFeatures>
+ <eStructuralFeatures xsi:type="ecore:EAttribute" name="modelOID" eType="ecore:EDataType http://www.eclipse.org/emf/2003/XMLType#//Integer">
+ <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
+ <details key="documentation" value="
				A 32-bit number assigned to the model during deployment to an audit
				trail. This number may be changed if the model is deployed to different
				audit trails or even to the same audit trail multiple times.
 "/>
+ </eAnnotations>
+ <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
+ <details key="kind" value="attribute"/>
+ <details key="name" value="modelOID"/>
+ <details key="namespace" value="##targetNamespace"/>
+ </eAnnotations>
+ </eStructuralFeatures>
+ <eStructuralFeatures xsi:type="ecore:EAttribute" name="oid" eType="ecore:EDataType http://www.eclipse.org/emf/2003/XMLType#//Long"
+ unsettable="true">
+ <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
+ <details key="documentation" value="
				A 64-bit number uniquely identifying the model in the model repository.
 "/>
+ </eAnnotations>
+ <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
+ <details key="kind" value="attribute"/>
+ <details key="name" value="oid"/>
+ <details key="namespace" value="##targetNamespace"/>
+ </eAnnotations>
+ </eStructuralFeatures>
+ <eStructuralFeatures xsi:type="ecore:EAttribute" name="vendor" eType="ecore:EDataType http://www.eclipse.org/emf/2003/XMLType#//String">
+ <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
+ <details key="documentation" value="
				The vendor of the software used to create and edit this model. Usually
				this will be "carnot".
 "/>
+ </eAnnotations>
+ <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
+ <details key="kind" value="attribute"/>
+ <details key="name" value="vendor"/>
+ <details key="namespace" value="##targetNamespace"/>
+ </eAnnotations>
+ </eStructuralFeatures>
+ </eClassifiers>
+ <eClassifiers xsi:type="ecore:EClass" name="StardustSeqenceFlowType">
+ <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
+ <details key="name" value="StardustSeqenceFlow_._type"/>
+ <details key="kind" value="empty"/>
+ </eAnnotations>
+ <eStructuralFeatures xsi:type="ecore:EAttribute" name="forkOnTraversal" eType="ecore:EDataType http://www.eclipse.org/emf/2003/XMLType#//Boolean"
+ defaultValueLiteral="false" unsettable="true">
+ <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
+ <details key="kind" value="attribute"/>
+ <details key="name" value="forkOnTraversal"/>
+ </eAnnotations>
+ </eStructuralFeatures>
+ </eClassifiers>
+ <eClassifiers xsi:type="ecore:EClass" name="StardustServiceTaskType" eSuperTypes="#//TStardustActivity">
+ <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
+ <details key="name" value="StardustServiceTask_._type"/>
+ <details key="kind" value="elementOnly"/>
+ </eAnnotations>
+ <eStructuralFeatures xsi:type="ecore:EAttribute" name="application" eType="ecore:EDataType http://www.eclipse.org/emf/2003/XMLType#//String">
+ <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
+ <details key="documentation" value="
								The model id of the application to execute when the attribute
								"implementation" is set to "Application".
			 "/>
+ </eAnnotations>
+ <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
+ <details key="kind" value="attribute"/>
+ <details key="name" value="application"/>
+ </eAnnotations>
+ </eStructuralFeatures>
+ </eClassifiers>
+ <eClassifiers xsi:type="ecore:EClass" name="StardustStartEventType">
+ <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
+ <details key="name" value="StardustStartEvent_._type"/>
+ <details key="kind" value="elementOnly"/>
+ </eAnnotations>
+ <eStructuralFeatures xsi:type="ecore:EReference" name="stardustAttributes" lowerBound="1"
+ eType="#//StardustAttributesType" containment="true" resolveProxies="false">
+ <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
+ <details key="kind" value="element"/>
+ <details key="name" value="StardustAttributes"/>
+ <details key="namespace" value="##targetNamespace"/>
+ </eAnnotations>
+ </eStructuralFeatures>
+ </eClassifiers>
+ <eClassifiers xsi:type="ecore:EClass" name="StardustSubprocessType" eSuperTypes="#//TStardustActivity">
+ <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
+ <details key="name" value="StardustSubprocess_._type"/>
+ <details key="kind" value="elementOnly"/>
+ </eAnnotations>
+ <eStructuralFeatures xsi:type="ecore:EAttribute" name="implementationProcess"
+ eType="ecore:EDataType http://www.eclipse.org/emf/2003/XMLType#//String">
+ <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
+ <details key="documentation" value="
								The model id of the subprocess implementing the activity when the
								attribute "implementation" is set to "Subprocess".
							"/>
+ </eAnnotations>
+ <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
+ <details key="kind" value="attribute"/>
+ <details key="name" value="implementationProcess"/>
+ </eAnnotations>
+ </eStructuralFeatures>
+ </eClassifiers>
+ <eClassifiers xsi:type="ecore:EClass" name="StardustTimerStartEventType">
+ <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
+ <details key="name" value="StardustTimerStartEvent_._type"/>
+ <details key="kind" value="elementOnly"/>
+ </eAnnotations>
+ <eStructuralFeatures xsi:type="ecore:EReference" name="stardustAttributes" lowerBound="1"
+ eType="#//StardustAttributesType" containment="true" resolveProxies="false">
+ <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
+ <details key="kind" value="element"/>
+ <details key="name" value="StardustAttributes"/>
+ <details key="namespace" value="##targetNamespace"/>
+ </eAnnotations>
+ </eStructuralFeatures>
+ </eClassifiers>
+ <eClassifiers xsi:type="ecore:EClass" name="StardustUserTaskType" eSuperTypes="#//TStardustActivity">
+ <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
+ <details key="name" value="StardustUserTask_._type"/>
+ <details key="kind" value="elementOnly"/>
+ </eAnnotations>
+ <eStructuralFeatures xsi:type="ecore:EAttribute" name="allowsAbortByPerformer"
+ eType="ecore:EDataType http://www.eclipse.org/emf/2003/XMLType#//Boolean"
+ unsettable="true">
+ <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
+ <details key="documentation" value="Determines whether the activity is allowed to be aborted."/>
+ </eAnnotations>
+ <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
+ <details key="kind" value="attribute"/>
+ <details key="name" value="allowsAbortByPerformer"/>
+ </eAnnotations>
+ </eStructuralFeatures>
+ </eClassifiers>
+ <eClassifiers xsi:type="ecore:EClass" name="TStardustActivity" eSuperTypes="#//TStardustCommon">
+ <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
+ <details key="name" value="tStardustActivity"/>
+ <details key="kind" value="elementOnly"/>
+ </eAnnotations>
+ <eStructuralFeatures xsi:type="ecore:EReference" name="eventHandler" upperBound="-1"
+ eType="ecore:EClass platform:/plugin/org.eclipse.stardust.model.xpdl/model/carnot.ecore#//EventHandlerType"
+ containment="true" resolveProxies="false">
+ <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
+ <details key="documentation" value="The list of event handlers defined for this model element."/>
+ </eAnnotations>
+ <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
+ <details key="kind" value="element"/>
+ <details key="name" value="eventHandler"/>
+ <details key="namespace" value="##targetNamespace"/>
+ </eAnnotations>
+ </eStructuralFeatures>
+ <eStructuralFeatures xsi:type="ecore:EReference" name="dataMapping" upperBound="-1"
+ eType="ecore:EClass platform:/plugin/org.eclipse.stardust.model.xpdl/model/carnot.ecore#//DataMappingType"
+ containment="true" resolveProxies="false">
+ <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
+ <details key="documentation" value="The list of data mappings."/>
+ </eAnnotations>
+ <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
+ <details key="kind" value="element"/>
+ <details key="name" value="dataMapping"/>
+ <details key="namespace" value="##targetNamespace"/>
+ </eAnnotations>
+ </eStructuralFeatures>
+ <eStructuralFeatures xsi:type="ecore:EAttribute" name="hibernateOnCreation" eType="ecore:EDataType http://www.eclipse.org/emf/2003/XMLType#//Boolean"
+ unsettable="true">
+ <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
+ <details key="documentation" value="
							Determines whether an activity instance is hibernated immediately after beeing created.
 			"/>
+ </eAnnotations>
+ <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
+ <details key="kind" value="attribute"/>
+ <details key="name" value="hibernateOnCreation"/>
+ </eAnnotations>
+ </eStructuralFeatures>
+ </eClassifiers>
+ <eClassifiers xsi:type="ecore:EClass" name="TStardustCommon">
+ <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
+ <details key="name" value="tStardustCommon"/>
+ <details key="kind" value="empty"/>
+ </eAnnotations>
+ <eStructuralFeatures xsi:type="ecore:EAttribute" name="elementOid" lowerBound="1"
+ eType="ecore:EDataType http://www.eclipse.org/emf/2003/XMLType#//String">
+ <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
+ <details key="kind" value="attribute"/>
+ <details key="name" value="elementOid"/>
+ </eAnnotations>
+ </eStructuralFeatures>
+ </eClassifiers>
+</ecore:EPackage>
diff --git a/model/org.eclipse.stardust.model.bpmn2.transform/src/main/java/org/eclipse/stardust/model/bpmn2/transform/Dialect.java b/model/org.eclipse.stardust.model.bpmn2.transform/src/main/java/org/eclipse/stardust/model/bpmn2/transform/Dialect.java new file mode 100644 index 0000000..69bafca --- a/dev/null +++ b/model/org.eclipse.stardust.model.bpmn2.transform/src/main/java/org/eclipse/stardust/model/bpmn2/transform/Dialect.java @@ -0,0 +1,24 @@ +/*******************************************************************************
+ * Copyright (c) 2012 ITpearls AG and others.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * ITpearls - initial API and implementation and/or initial documentation
+ *******************************************************************************/
+package org.eclipse.stardust.model.bpmn2.transform;
+
+
+
+/**
+ * @author Simon Nikles
+ *
+ */
+public interface Dialect {
+
+ public Transformator getTransformator();
+ public String getDialectName();
+
+}
\ No newline at end of file diff --git a/model/org.eclipse.stardust.model.bpmn2.transform/src/main/java/org/eclipse/stardust/model/bpmn2/transform/TransformationControl.java b/model/org.eclipse.stardust.model.bpmn2.transform/src/main/java/org/eclipse/stardust/model/bpmn2/transform/TransformationControl.java new file mode 100644 index 0000000..3cf4d06 --- a/dev/null +++ b/model/org.eclipse.stardust.model.bpmn2.transform/src/main/java/org/eclipse/stardust/model/bpmn2/transform/TransformationControl.java @@ -0,0 +1,517 @@ +/*******************************************************************************
+ * Copyright (c) 2012 ITpearls AG and others.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * ITpearls - initial API and implementation and/or initial documentation
+ *******************************************************************************/
+package org.eclipse.stardust.model.bpmn2.transform;
+
+import java.util.ArrayList;
+import java.util.List;
+
+import org.apache.log4j.Logger;
+import org.eclipse.bpmn2.Activity;
+import org.eclipse.bpmn2.AdHocSubProcess;
+import org.eclipse.bpmn2.Artifact;
+import org.eclipse.bpmn2.BoundaryEvent;
+import org.eclipse.bpmn2.BusinessRuleTask;
+import org.eclipse.bpmn2.CallActivity;
+import org.eclipse.bpmn2.CallableElement;
+import org.eclipse.bpmn2.Category;
+import org.eclipse.bpmn2.ChoreographyActivity;
+import org.eclipse.bpmn2.Collaboration;
+import org.eclipse.bpmn2.ComplexGateway;
+import org.eclipse.bpmn2.CorrelationProperty;
+import org.eclipse.bpmn2.DataObject;
+import org.eclipse.bpmn2.DataObjectReference;
+import org.eclipse.bpmn2.DataStore;
+import org.eclipse.bpmn2.DataStoreReference;
+import org.eclipse.bpmn2.Definitions;
+import org.eclipse.bpmn2.EndEvent;
+import org.eclipse.bpmn2.EndPoint;
+import org.eclipse.bpmn2.Error;
+import org.eclipse.bpmn2.Escalation;
+import org.eclipse.bpmn2.Event;
+import org.eclipse.bpmn2.EventBasedGateway;
+import org.eclipse.bpmn2.EventDefinition;
+import org.eclipse.bpmn2.ExclusiveGateway;
+import org.eclipse.bpmn2.FlowElement;
+import org.eclipse.bpmn2.FlowElementsContainer;
+import org.eclipse.bpmn2.FlowNode;
+import org.eclipse.bpmn2.Gateway;
+import org.eclipse.bpmn2.GlobalTask;
+import org.eclipse.bpmn2.ImplicitThrowEvent;
+import org.eclipse.bpmn2.InclusiveGateway;
+import org.eclipse.bpmn2.Interface;
+import org.eclipse.bpmn2.IntermediateCatchEvent;
+import org.eclipse.bpmn2.IntermediateThrowEvent;
+import org.eclipse.bpmn2.ItemDefinition;
+import org.eclipse.bpmn2.Lane;
+import org.eclipse.bpmn2.LaneSet;
+import org.eclipse.bpmn2.ManualTask;
+import org.eclipse.bpmn2.Message;
+import org.eclipse.bpmn2.ParallelGateway;
+import org.eclipse.bpmn2.Participant;
+import org.eclipse.bpmn2.PartnerEntity;
+import org.eclipse.bpmn2.PartnerRole;
+import org.eclipse.bpmn2.Process;
+import org.eclipse.bpmn2.ReceiveTask;
+import org.eclipse.bpmn2.Resource;
+import org.eclipse.bpmn2.RootElement;
+import org.eclipse.bpmn2.ScriptTask;
+import org.eclipse.bpmn2.SendTask;
+import org.eclipse.bpmn2.SequenceFlow;
+import org.eclipse.bpmn2.ServiceTask;
+import org.eclipse.bpmn2.Signal;
+import org.eclipse.bpmn2.StartEvent;
+import org.eclipse.bpmn2.SubProcess;
+import org.eclipse.bpmn2.Task;
+import org.eclipse.bpmn2.Transaction;
+import org.eclipse.bpmn2.UserTask;
+import org.eclipse.emf.common.util.URI;
+import org.eclipse.emf.ecore.InternalEObject;
+
+/**
+ * @author Simon Nikles
+ *
+ */
+public class TransformationControl {
+
+ private static final String NOT_SUPPORTED = ": element transformation not supported\n";
+ private final Dialect dialect;
+ private Transformator transf;
+ private String processingInfo = "";
+ private Logger log;
+
+ public static TransformationControl getInstance(Dialect dialect) {
+ return new TransformationControl(dialect);
+ }
+
+ private TransformationControl(Dialect dialect) {
+ this.dialect = dialect;
+ log = Logger.getLogger(this.getClass());
+ }
+
+ public String transformToTarget(Definitions definitions, String outputFile) {
+ processingInfo = "";
+ transf = dialect.getTransformator();
+ processBpmn(definitions, transf);
+ transf.serializeTargetModel(outputFile);
+
+ for (String msg : transf.getTransformationMessages()) {
+ log.info(msg);
+ }
+ log.info(processingInfo);
+ return processingInfo;
+ }
+
+ public Object getTargetModel() {
+ return transf.getTargetModel();
+ }
+
+ private void processBpmn(Definitions definitions, Transformator transf) {
+
+ transf.createTargetModel(definitions);
+
+ List<RootElement> roots = definitions.getRootElements();
+ List<Collaboration> collabs = new ArrayList<Collaboration>();
+
+ for (RootElement root : roots) {
+ if (root instanceof CallableElement) {
+ if (root instanceof Process) {
+ processProcess((Process)root);
+ } else if (root instanceof GlobalTask) {
+ processGlobalTask((GlobalTask)root);
+ }
+ } else if (root instanceof Category) {
+ processCategory((Category)root);
+ } else if (root instanceof CorrelationProperty) {
+ processCorrelationProperty((CorrelationProperty)root);
+ } else if (root instanceof DataStore) {
+ processDataStore((DataStore)root);
+ } else if (root instanceof EndPoint) {
+ processEndPoint((EndPoint)root);
+ } else if (root instanceof Error) {
+ processError((Error)root);
+ } else if (root instanceof Escalation) {
+ processEscalation((Escalation)root);
+ } else if (root instanceof EventDefinition) {
+ processEventDefinition((EventDefinition)root);
+ } else if (root instanceof Interface) {
+ processInterface((Interface)root);
+ } else if (root instanceof ItemDefinition) {
+ processItemDefinition((ItemDefinition)root);
+ } else if (root instanceof Message) {
+ processMessage((Message)root);
+ } else if (root instanceof PartnerEntity) {
+ processPartnerEntity((PartnerEntity)root);
+ } else if (root instanceof PartnerRole) {
+ processPartnerRole((PartnerRole)root);
+ } else if (root instanceof Resource) {
+ processResource((Resource)root);
+ } else if (root instanceof Signal) {
+ processSignal((Signal)root);
+ } else if (root instanceof Collaboration) {
+ collabs.add((Collaboration)root);
+ }
+ }
+ // process finally, as a transformator may want to set responsibilites (e.g. performing organisation).
+ for (Collaboration collab : collabs) {
+ processCollaboration(collab);
+ }
+ }
+
+ private void processProcess(Process process) {
+ transf.addProcess(process);
+ transf.addIOBinding(process.getIoBinding(), process);
+ for (@SuppressWarnings("unused") Artifact artifact : process.getArtifacts()) {
+ processingInfo += "Artifact" + NOT_SUPPORTED;
+ }
+ processFlowElementsContainer(process);
+ }
+
+ private void processFlowElementsContainer(FlowElementsContainer process) {
+ List<SequenceFlow> sequenceFlows = new ArrayList<SequenceFlow>();
+ List<Gateway> gateways = new ArrayList<Gateway>();
+
+ for (LaneSet laneset : process.getLaneSets()) {
+ processLaneset(laneset, process);
+ }
+ for (FlowElement flowElement : process.getFlowElements()) {
+ if (flowElement instanceof SequenceFlow) {
+ sequenceFlows.add((SequenceFlow)flowElement);
+ } else {
+ if (flowElement instanceof Gateway) {
+ //processGateway((Gateway)flowElement, container);
+ gateways.add((Gateway)flowElement);
+ } else {
+ processFlowElement(flowElement, process);
+ }
+ }
+ }
+ for (Gateway gate : gateways) {
+ processFlowElement(gate, process);
+ }
+ for (SequenceFlow flow : sequenceFlows) {
+ processSequenceFlow((SequenceFlow)flow, process);
+ }
+
+ // process finally, because a transformer may want to set responsibilities (e.g. performing role) of contained elements
+ for (LaneSet laneset : process.getLaneSets()) {
+ for (Lane lane : laneset.getLanes()) {
+ processLane(lane, laneset, null, process);
+ }
+ }
+ }
+
+ private void processLane(Lane lane, LaneSet laneset, Lane parentLane, FlowElementsContainer container) {
+ transf.addLane(lane, laneset, parentLane, container);
+ if (lane.getChildLaneSet() == null) return;
+ for (Lane childLane : lane.getChildLaneSet().getLanes()) {
+ processLane(childLane, lane.getChildLaneSet(), lane, container);
+ }
+ }
+
+ private void processFlowElement(FlowElement flowElement, FlowElementsContainer container) {
+
+ if (flowElement instanceof DataObject) {
+ transf.addDataObject((DataObject)flowElement, container);
+ } else if (flowElement instanceof DataObjectReference) {
+ transf.addDataObjectReference((DataObjectReference)flowElement, container);
+ } else if (flowElement instanceof DataStoreReference) {
+ transf.addDataStoreReference((DataStoreReference)flowElement, container);
+ } else if (flowElement instanceof FlowNode) {
+ if (flowElement instanceof Activity) {
+ processActivity((Activity)flowElement, container);
+ } else if (flowElement instanceof Event) {
+ processEvent((Event)flowElement, container);
+ } else if (flowElement instanceof Gateway) {
+ processGateway((Gateway)flowElement, container);
+ }
+ else if (flowElement instanceof ChoreographyActivity) {
+ processChoreographyActivity((ChoreographyActivity)flowElement, container);
+ }
+ }
+ }
+
+ private void processActivity(Activity activity, FlowElementsContainer container) {
+ if (activity instanceof Task) {
+ if (activity instanceof UserTask) {
+ processUserTask((UserTask)activity, container);
+ } else if (activity instanceof ServiceTask) {
+ processServiceTask((ServiceTask)activity, container);
+ } else if (activity instanceof SendTask) {
+ processSendTask((SendTask)activity, container);
+ } else if (activity instanceof ScriptTask) {
+ processScriptTask((ScriptTask)activity, container);
+ } else if (activity instanceof ReceiveTask) {
+ processReceiveTask((ReceiveTask)activity, container);
+ } else if (activity instanceof ManualTask) {
+ processManualTask((ManualTask)activity, container);
+ } else if (activity instanceof BusinessRuleTask) {
+ processBusinessRuleTask((BusinessRuleTask)activity, container);
+ }
+ } else if (activity instanceof SubProcess) {
+ processSubProcess((SubProcess)activity, container);
+
+ } else if (activity instanceof CallActivity) {
+ processCallActivity((CallActivity)activity, container);
+ }
+ }
+
+ private void processSubProcess(SubProcess activity, FlowElementsContainer container) {
+ if (activity instanceof Transaction) {
+ processTransaction((Transaction)activity, container);
+ } else if (activity instanceof AdHocSubProcess) {
+ processAdHocSubProcess((AdHocSubProcess)activity, container);
+ } else {
+ processSubProcessDefault(activity, container);
+ }
+ }
+
+ private void processGateway(Gateway gateway, FlowElementsContainer container) {
+ log.debug("ModelTransformator.processGateway() " + gateway);
+ if (gateway instanceof ExclusiveGateway) {
+ processExclusiveGateway((ExclusiveGateway)gateway, container);
+ } else if (gateway instanceof ParallelGateway) {
+ processParallelGateway((ParallelGateway)gateway, container);
+ } else if (gateway instanceof InclusiveGateway) {
+ processInclusiveGateway((InclusiveGateway)gateway, container);
+ } else if (gateway instanceof ComplexGateway) {
+ processComplexGateway((ComplexGateway)gateway, container);
+ } else if (gateway instanceof EventBasedGateway) {
+ processEventBasedGateway((EventBasedGateway)gateway, container);
+ }
+ }
+
+ private void processEvent(Event event, FlowElementsContainer container) {
+ if (event instanceof StartEvent) {
+ processStartEvent((StartEvent)event, container);
+ } else if (event instanceof EndEvent) {
+ processEndEvent((EndEvent)event, container);
+ } else if (event instanceof BoundaryEvent) {
+ processBoundaryEvent((BoundaryEvent)event, container);
+ } else if (event instanceof IntermediateCatchEvent) {
+ processIntermediateCatchEvent((IntermediateCatchEvent)event, container);
+ } else if (event instanceof IntermediateThrowEvent) {
+ processIntermediateThrowEvent((IntermediateThrowEvent)event, container);
+ } else if (event instanceof ImplicitThrowEvent) {
+ processImplicitThrowEvent((ImplicitThrowEvent)event, container);
+ }
+ }
+
+ private void processResource(Resource resource) {
+ processingInfo += "Resource" + NOT_SUPPORTED;
+ }
+
+ private void processCollaboration(Collaboration collab) {
+ for (Participant participant : collab.getParticipants()) {
+ Process proc = participant.getProcessRef();
+ if (proc != null && proc.eIsProxy()) {
+ URI proxyURI = ((InternalEObject) participant.getProcessRef()).eProxyURI();
+ proc = (Process)participant.eResource().getEObject(proxyURI.fragment());
+ }
+ transf.addParticipant(participant, proc);
+ }
+ }
+
+ private void processStartEvent(StartEvent event, FlowElementsContainer container) {
+ transf.addStartEvent(event, container);
+ }
+
+ private void processEndEvent(EndEvent event, FlowElementsContainer container) {
+ transf.addEndEvent(event, container);
+ }
+
+
+ private void processExclusiveGateway(ExclusiveGateway gateway, FlowElementsContainer container) {
+ //processingInfo += "ExclusiveGateway" + NOT_SUPPORTED;
+ transf.addExclusiveGateway(gateway, container);
+ }
+
+ private void processParallelGateway(ParallelGateway gateway, FlowElementsContainer container) {
+ processingInfo += "ParallelGateway" + NOT_SUPPORTED;
+ //transf.addParallelGateway(gateway, container);
+ }
+
+ private void processUserTask(UserTask activity, FlowElementsContainer container) {
+ transf.addUserTask(activity, container);
+ }
+
+ private void processServiceTask(ServiceTask activity, FlowElementsContainer container) {
+ processingInfo += "ServiceTask" + NOT_SUPPORTED;
+
+ }
+
+ private void processSubProcessDefault(SubProcess activity, FlowElementsContainer container) {
+ processingInfo += "SubProcess" + NOT_SUPPORTED;
+ transf.addSubProcess(activity, container);
+ processFlowElementsContainer(activity);
+ }
+
+
+ private void processSequenceFlow(SequenceFlow seq, FlowElementsContainer container) {
+ transf.addSequenceFlow(seq, container);
+ }
+
+ private void processPartnerEntity(PartnerEntity entity) {
+ transf.addPartnerEntity(entity);
+ }
+
+
+ private void processInclusiveGateway(InclusiveGateway gateway, FlowElementsContainer container) {
+ processingInfo += "InclusiveGateway" + NOT_SUPPORTED;
+
+ }
+
+ private void processComplexGateway(ComplexGateway gateway, FlowElementsContainer container) {
+ processingInfo += "ComplexGateway" + NOT_SUPPORTED;
+
+ }
+
+ private void processEventBasedGateway(EventBasedGateway gateway, FlowElementsContainer container) {
+ processingInfo += "EventBasedGateway" + NOT_SUPPORTED;
+
+ }
+
+ private void processBoundaryEvent(BoundaryEvent event, FlowElementsContainer container) {
+ processingInfo += "BoundaryEvent" + NOT_SUPPORTED;
+
+ }
+
+ private void processIntermediateCatchEvent(IntermediateCatchEvent event, FlowElementsContainer container) {
+ processingInfo += "IntermediateCatchEvent" + NOT_SUPPORTED;
+
+ }
+
+ private void processIntermediateThrowEvent(IntermediateThrowEvent event, FlowElementsContainer container) {
+ processingInfo += "IntermediateThrowEvent" + NOT_SUPPORTED;
+
+ }
+
+ private void processImplicitThrowEvent(ImplicitThrowEvent event, FlowElementsContainer container) {
+ processingInfo += "ImplicitThrowEvent" + NOT_SUPPORTED;
+
+ }
+
+ private void processLaneset(LaneSet laneset, FlowElementsContainer container) {
+ processingInfo += "laneset" + NOT_SUPPORTED;
+ }
+
+ private void processSendTask(SendTask activity, FlowElementsContainer container) {
+ processingInfo += "SendTask" + NOT_SUPPORTED;
+
+ }
+
+ private void processScriptTask(ScriptTask activity, FlowElementsContainer container) {
+ processingInfo += "ScriptTask" + NOT_SUPPORTED;
+
+ }
+
+ private void processReceiveTask(ReceiveTask activity, FlowElementsContainer container) {
+ processingInfo += "ReceiveTask" + NOT_SUPPORTED;
+
+ }
+
+ private void processManualTask(ManualTask activity, FlowElementsContainer container) {
+ processingInfo += "ManualTask" + NOT_SUPPORTED;
+
+ }
+
+ private void processBusinessRuleTask(BusinessRuleTask activity, FlowElementsContainer container) {
+ processingInfo += "BusinessRuleTask" + NOT_SUPPORTED;
+
+ }
+
+
+ private void processTransaction(Transaction activity, FlowElementsContainer container) {
+ processingInfo += "Transaction" + NOT_SUPPORTED;
+
+ }
+
+ private void processAdHocSubProcess(AdHocSubProcess activity, FlowElementsContainer container) {
+ processingInfo += "AdHocSubProcess" + NOT_SUPPORTED;
+
+ }
+
+ private void processCallActivity(CallActivity activity, FlowElementsContainer container) {
+ processingInfo += "CallActivity" + NOT_SUPPORTED;
+
+ }
+
+
+ private void processChoreographyActivity(ChoreographyActivity choreo, FlowElementsContainer container) {
+ processingInfo += "ChoreographyActivity" + NOT_SUPPORTED;
+
+ }
+
+ private void processGlobalTask(GlobalTask global) {
+ processingInfo += "GlobalTask" + NOT_SUPPORTED;
+ }
+
+ private void processDataStore(DataStore data) {
+ processingInfo += "DataStore" + NOT_SUPPORTED;
+
+ }
+
+ private void processPartnerRole(PartnerRole role) {
+ processingInfo += "PartnerRole" + NOT_SUPPORTED;
+ }
+
+
+ private void processEndPoint(EndPoint endpoint) {
+ processingInfo += "EndPoint" + NOT_SUPPORTED;
+
+ }
+
+ private void processError(Error error) {
+
+ processingInfo += "Error" + NOT_SUPPORTED;
+ }
+
+ private void processEscalation(Escalation escal) {
+ processingInfo += "Escalation" + NOT_SUPPORTED;
+
+ }
+
+ private void processEventDefinition(EventDefinition eventdef) {
+ processingInfo += "EventDefinition" + NOT_SUPPORTED;
+
+ }
+
+ private void processInterface(Interface iface) {
+ processingInfo += "Interface" + NOT_SUPPORTED;
+
+ }
+
+ private void processItemDefinition(ItemDefinition itemdef) {
+ processingInfo += "ItemDefinition" + NOT_SUPPORTED;
+
+ }
+
+
+ private void processSignal(Signal signal) {
+ processingInfo += "Signal" + NOT_SUPPORTED;
+
+ }
+
+ private void processMessage(Message root) {
+ processingInfo += "Message" + NOT_SUPPORTED;
+ }
+
+ private void processCorrelationProperty(CorrelationProperty root) {
+ processingInfo += "CorrelationProperty" + NOT_SUPPORTED;
+
+ }
+
+ private void processCategory(Category root) {
+ processingInfo += "Category" + NOT_SUPPORTED;
+
+ }
+
+
+}
diff --git a/model/org.eclipse.stardust.model.bpmn2.transform/src/main/java/org/eclipse/stardust/model/bpmn2/transform/Transformator.java b/model/org.eclipse.stardust.model.bpmn2.transform/src/main/java/org/eclipse/stardust/model/bpmn2/transform/Transformator.java new file mode 100644 index 0000000..34bb12d --- a/dev/null +++ b/model/org.eclipse.stardust.model.bpmn2.transform/src/main/java/org/eclipse/stardust/model/bpmn2/transform/Transformator.java @@ -0,0 +1,79 @@ +/*******************************************************************************
+ * Copyright (c) 2012 ITpearls AG and others.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * ITpearls - initial API and implementation and/or initial documentation
+ *******************************************************************************/
+package org.eclipse.stardust.model.bpmn2.transform;
+
+import java.util.List;
+
+import org.eclipse.bpmn2.DataObject;
+import org.eclipse.bpmn2.DataObjectReference;
+import org.eclipse.bpmn2.DataStoreReference;
+import org.eclipse.bpmn2.Definitions;
+import org.eclipse.bpmn2.EndEvent;
+import org.eclipse.bpmn2.ExclusiveGateway;
+import org.eclipse.bpmn2.FlowElementsContainer;
+import org.eclipse.bpmn2.InputOutputBinding;
+import org.eclipse.bpmn2.Lane;
+import org.eclipse.bpmn2.LaneSet;
+import org.eclipse.bpmn2.ParallelGateway;
+import org.eclipse.bpmn2.Participant;
+import org.eclipse.bpmn2.PartnerEntity;
+import org.eclipse.bpmn2.Process;
+import org.eclipse.bpmn2.SequenceFlow;
+import org.eclipse.bpmn2.StartEvent;
+import org.eclipse.bpmn2.SubProcess;
+import org.eclipse.bpmn2.UserTask;
+
+/**
+ * @author Simon Nikles
+ *
+ */
+public interface Transformator {
+
+ public void createTargetModel(Definitions definitions);
+
+ public Object getTargetModel();
+
+ public void addProcess(Process process);
+
+ public void addUserTask(UserTask task, FlowElementsContainer container);
+
+ public void addStartEvent(StartEvent event, FlowElementsContainer container);
+
+ public void addEndEvent(EndEvent event, FlowElementsContainer container);
+
+ public void serializeTargetModel(String outputFile);
+
+ public void addIOBinding(List<InputOutputBinding> ioBinding, FlowElementsContainer container);
+
+ public void addDataObject(DataObject flowElement, FlowElementsContainer container);
+
+ public void addDataObjectReference(DataObjectReference flowElement, FlowElementsContainer container);
+
+ public void addDataStoreReference(DataStoreReference flowElement, FlowElementsContainer container);
+
+ public void addSubProcess(SubProcess activity, FlowElementsContainer container);
+
+ public List<String> getTransformationMessages();
+
+ public void addSequenceFlow(SequenceFlow seq, FlowElementsContainer container);
+
+ public void addParticipant(Participant participant, Process proc);
+
+ public void addLane(Lane lane, LaneSet laneset, Lane parentLane, FlowElementsContainer container);
+
+ public void addExclusiveGateway(ExclusiveGateway gateway, FlowElementsContainer container);
+
+ public void addParallelGateway(ParallelGateway gateway, FlowElementsContainer container);
+
+ public void addPartnerEntity(PartnerEntity entity);
+
+
+}
diff --git a/model/org.eclipse.stardust.model.bpmn2.transform/src/main/java/org/eclipse/stardust/model/bpmn2/transform/carnot/Bpmn2CarnotXPDL.java b/model/org.eclipse.stardust.model.bpmn2.transform/src/main/java/org/eclipse/stardust/model/bpmn2/transform/carnot/Bpmn2CarnotXPDL.java new file mode 100644 index 0000000..dbdf9fe --- a/dev/null +++ b/model/org.eclipse.stardust.model.bpmn2.transform/src/main/java/org/eclipse/stardust/model/bpmn2/transform/carnot/Bpmn2CarnotXPDL.java @@ -0,0 +1,540 @@ +/*******************************************************************************
+ * Copyright (c) 2012 ITpearls AG and others.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * ITpearls - initial API and implementation and/or initial documentation
+ *******************************************************************************/
+package org.eclipse.stardust.model.bpmn2.transform.carnot;
+
+import static org.eclipse.stardust.model.xpdl.builder.BpmModelBuilder.newBpmModel;
+import static org.eclipse.stardust.model.xpdl.builder.BpmModelBuilder.newManualActivity;
+import static org.eclipse.stardust.model.xpdl.builder.BpmModelBuilder.newManualTrigger;
+import static org.eclipse.stardust.model.xpdl.builder.BpmModelBuilder.newOrganization;
+import static org.eclipse.stardust.model.xpdl.builder.BpmModelBuilder.newProcessDefinition;
+import static org.eclipse.stardust.model.xpdl.builder.BpmModelBuilder.newRole;
+import static org.eclipse.stardust.model.xpdl.builder.BpmModelBuilder.newSubProcessActivity;
+
+import java.io.File;
+import java.io.FileNotFoundException;
+import java.io.FileOutputStream;
+import java.io.IOException;
+import java.util.ArrayList;
+import java.util.List;
+
+import org.apache.log4j.Logger;
+import org.eclipse.bpmn2.Activity;
+import org.eclipse.bpmn2.CatchEvent;
+import org.eclipse.bpmn2.DataObject;
+import org.eclipse.bpmn2.DataObjectReference;
+import org.eclipse.bpmn2.DataStoreReference;
+import org.eclipse.bpmn2.Definitions;
+import org.eclipse.bpmn2.Documentation;
+import org.eclipse.bpmn2.EndEvent;
+import org.eclipse.bpmn2.EventDefinition;
+import org.eclipse.bpmn2.ExclusiveGateway;
+import org.eclipse.bpmn2.FlowElementsContainer;
+import org.eclipse.bpmn2.FlowNode;
+import org.eclipse.bpmn2.FormalExpression;
+import org.eclipse.bpmn2.InputOutputBinding;
+import org.eclipse.bpmn2.Lane;
+import org.eclipse.bpmn2.LaneSet;
+import org.eclipse.bpmn2.MessageEventDefinition;
+import org.eclipse.bpmn2.ParallelGateway;
+import org.eclipse.bpmn2.Participant;
+import org.eclipse.bpmn2.PartnerEntity;
+import org.eclipse.bpmn2.Performer;
+import org.eclipse.bpmn2.Process;
+import org.eclipse.bpmn2.Resource;
+import org.eclipse.bpmn2.ResourceRole;
+import org.eclipse.bpmn2.SequenceFlow;
+import org.eclipse.bpmn2.StartEvent;
+import org.eclipse.bpmn2.SubProcess;
+import org.eclipse.bpmn2.TimerEventDefinition;
+import org.eclipse.bpmn2.UserTask;
+import org.eclipse.emf.common.util.EList;
+import org.eclipse.stardust.engine.api.model.PredefinedConstants;
+import org.eclipse.stardust.engine.core.extensions.triggers.timer.TimerTriggerValidator;
+import org.eclipse.stardust.engine.extensions.jms.trigger.JMSTriggerValidator;
+import org.eclipse.stardust.engine.extensions.mail.trigger.MailTriggerValidator;
+import org.eclipse.stardust.model.bpmn2.transform.Transformator;
+import org.eclipse.stardust.model.bpmn2.transform.util.Bpmn2ProxyResolver;
+import org.eclipse.stardust.model.xpdl.builder.common.AbstractElementBuilder;
+import org.eclipse.stardust.model.xpdl.builder.defaults.DefaultTypesInitializer;
+import org.eclipse.stardust.model.xpdl.builder.utils.XpdlModelIoUtils;
+import org.eclipse.stardust.model.xpdl.builder.utils.XpdlModelUtils;
+import org.eclipse.stardust.model.xpdl.carnot.ActivityType;
+import org.eclipse.stardust.model.xpdl.carnot.CarnotWorkflowModelFactory;
+import org.eclipse.stardust.model.xpdl.carnot.CarnotWorkflowModelPackage;
+import org.eclipse.stardust.model.xpdl.carnot.DescriptionType;
+import org.eclipse.stardust.model.xpdl.carnot.IModelParticipant;
+import org.eclipse.stardust.model.xpdl.carnot.JoinSplitType;
+import org.eclipse.stardust.model.xpdl.carnot.ModelType;
+import org.eclipse.stardust.model.xpdl.carnot.OrganizationType;
+import org.eclipse.stardust.model.xpdl.carnot.ProcessDefinitionType;
+import org.eclipse.stardust.model.xpdl.carnot.RoleType;
+import org.eclipse.stardust.model.xpdl.carnot.TransitionType;
+import org.eclipse.stardust.model.xpdl.carnot.TriggerType;
+import org.eclipse.stardust.model.xpdl.carnot.TriggerTypeType;
+import org.eclipse.stardust.model.xpdl.carnot.XmlTextNode;
+import org.eclipse.stardust.model.xpdl.carnot.util.ModelUtils;
+/**
+ * @author Simon Nikles
+ *
+ */
+public class Bpmn2CarnotXPDL implements Transformator {
+
+ private static final String FAIL_NO_PROCESS_DEF = "Stardust Process definition not found";
+ private static final String FAIL_ELEMENT_CREATION = "Could not create Stardust element";
+ private static final String FAIL_ELEMENT_UNSUPPORTED_FEATURE = "Usupported feature: ";
+
+ private static final String CONDITION_KEY = "CONDITION";
+ private static final String OTHERWISE_KEY = "OTHERWISE";
+
+ private static final String EXPRESSION_LANGUAGE_JAVA = "http://www.sun.com/java";
+
+
+ private ModelType carnotModel = null;
+
+ private List<String> failures = new ArrayList<String>();
+
+ private final Logger logger = Logger.getLogger(this.getClass());
+
+ public void createTargetModel(Definitions definitions) {
+ carnotModel = newBpmModel()
+ .withIdAndName(definitions.getId(), definitions.getName())
+ .build();
+ Bpmn2CarnotXPDLExtension.addModelExtensions(definitions, carnotModel);
+ ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
+ //////////TODO REMOVE IF DEFAULTTYPESINITIALIZER IS COMPLETE!!! ////////////////////////////////////////////////////
+ DefaultTypesInitializer initializer = new DefaultTypesInitializer();
+ initializer.initializeTriggerType(carnotModel, PredefinedConstants.JMS_TRIGGER, "JMS Trigger",
+ false, JMSTriggerValidator.class);
+ initializer.initializeTriggerType(carnotModel, PredefinedConstants.MAIL_TRIGGER, "Mail Trigger",
+ false, MailTriggerValidator.class);
+ initializer.initializeTriggerType(carnotModel, PredefinedConstants.TIMER_TRIGGER, "Timer Trigger",
+ false, TimerTriggerValidator.class);
+ ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
+ ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
+ }
+
+ public ModelType getTargetModel() {
+ return carnotModel;
+ }
+
+ public List<String> getTransformationMessages() {
+ return failures;
+ }
+
+ public void serializeTargetModel(String outputPath) {
+ logger.debug("serializeTargetModel " + outputPath);
+ FileOutputStream fis;
+ try {
+ fis = new FileOutputStream(new File(outputPath));
+ fis.write(XpdlModelIoUtils.saveModel(carnotModel));
+ fis.close();
+ } catch (FileNotFoundException e) {
+ logger.error(e.getMessage());
+ } catch (IOException e) {
+ logger.error(e.getMessage());
+ }
+ }
+
+ public void addStartEvent(StartEvent event, FlowElementsContainer container) {
+ logger.debug("addStartEvent " + event);
+ int eventDefCount = countEventDefinitions(event);
+ EventDefinition def = getFirstEventDefinition(event);
+ if (eventDefCount > 1) {
+ failures.add(FAIL_ELEMENT_UNSUPPORTED_FEATURE + "StartEvent - Multiple Event definitions " + event.getId());
+ return;
+ }
+ ProcessDefinitionType processDef = findProcessDefinition(container.getId());
+ if (processDef != null) {
+ if (def == null) {
+ failures.add("StartEvent - no event definition available (" + event.getId() + "). Manual Start is assumed.");
+ addManualTrigger(event, container, processDef);
+ } else if (def instanceof MessageEventDefinition) {
+ def = event.getEventDefinitions().get(0);
+ addMessageTrigger(event, def, container, processDef);
+ } else if (def instanceof TimerEventDefinition) {
+ def = event.getEventDefinitions().get(0);
+ addTimerTrigger(event, def, container, processDef);
+ } else {
+ failures.add(FAIL_ELEMENT_UNSUPPORTED_FEATURE + "StartEvent " + event.getId() + " EventDefinition " + def.getClass().getName());
+ return;
+ }
+
+ } else {
+ failures.add(FAIL_NO_PROCESS_DEF + "(Id: " + container.getId() + ")");
+ }
+ }
+
+ public void addExclusiveGateway(ExclusiveGateway gateway, FlowElementsContainer container) {
+ logger.info("addExclusiveGateway" + gateway.getId() + " " + gateway.getName());
+ ProcessDefinitionType processDef = findProcessDefinition(container.getId());
+ List<SequenceFlow> incomings = gateway.getIncoming();
+ List<SequenceFlow> outgoings = gateway.getOutgoing();
+ if (processDef ==null) {
+ failures.add(FAIL_NO_PROCESS_DEF + "(Id: " + container.getId() + ")");
+ return;
+ }
+ if (incomings == null || outgoings == null) return;
+ if (incomings.size() == 0 || outgoings.size() == 0) return;
+
+ boolean isFork = outgoings.size() > 1;
+ boolean isJoin = incomings.size() > 1;
+
+ if (incomings.size() > 1 && outgoings.size() > 1) {
+ failures.add(FAIL_ELEMENT_UNSUPPORTED_FEATURE + " n:n exclusive gateway - target model incomplete.");
+ return;
+ }
+ if (isFork) {
+ ActivityType sourceActivity = findActivity(incomings.get(0).getSourceRef(), container);
+ if (sourceActivity != null) sourceActivity.setSplit(JoinSplitType.XOR_LITERAL);
+ for (SequenceFlow outgoing : outgoings) {
+ if (outgoing.getTargetRef() instanceof Activity) {
+ ActivityType targetActivity = findActivity(outgoing.getTargetRef(), container);
+ if (targetActivity == null) continue;
+ boolean hasCondition = outgoing.getConditionExpression() != null;
+ List<Documentation> conditionDoc = hasCondition ? outgoing.getConditionExpression().getDocumentation() : null;
+ String condition = hasCondition ? getDescriptionFromDocumentation(conditionDoc) : "";
+ String gatewayDoc = getDescriptionFromDocumentation(gateway.getDocumentation());
+ addGatewayTransition(gateway, condition, outgoing.getName(), outgoing.getId(), gatewayDoc, sourceActivity, targetActivity, container, processDef);
+ } else {
+ // TODO
+ failures.add(FAIL_ELEMENT_UNSUPPORTED_FEATURE + " exclusive gateway target other than activity - target model incomplete.");
+ continue;
+ }
+ }
+ } else if (isJoin) {
+ ActivityType targetActivity = findActivity(outgoings.get(0).getTargetRef(), container);
+ if (targetActivity != null) targetActivity.setJoin(JoinSplitType.XOR_LITERAL);
+ for (SequenceFlow incoming : incomings) {
+ if (incoming.getSourceRef() instanceof Activity) {
+ ActivityType sourceActivity = findActivity(incoming.getSourceRef(), container);
+ if (sourceActivity == null) continue;
+ addGatewayTransition(gateway, "", incoming.getId(), incoming.getId(), getDescriptionFromDocumentation(gateway.getDocumentation()), sourceActivity, targetActivity, container, processDef);
+ } else {
+ // TODO
+ failures.add(FAIL_ELEMENT_UNSUPPORTED_FEATURE + " exclusive gateway source other than activity - target model incomplete.");
+ continue;
+ }
+ }
+ }
+ }
+
+ public void addPartnerEntity(PartnerEntity entity) {
+ newOrganization(carnotModel)
+ .withIdAndName(entity.getId(), entity.getName())
+ .withDescription(getDescriptionFromDocumentation(entity.getDocumentation()))
+ .build();
+ }
+
+ public void addProcess(Process process) {
+ logger.debug("addProcess " + process);
+ List<Documentation> docs = process.getDocumentation();
+ String processDescription = getDescriptionFromDocumentation(docs);
+ newProcessDefinition(carnotModel)
+ .withIdAndName(process.getId(), process.getName())
+ .withDescription(processDescription)
+ .build();
+ }
+
+ public void addSequenceFlow(SequenceFlow seq, FlowElementsContainer container) {
+ logger.debug("addSequenceFlow " + seq);
+ ProcessDefinitionType processDef = findProcessDefinition(container.getId());
+ FlowNode sourceNode = seq.getSourceRef();
+ FlowNode targetNode = seq.getTargetRef();
+ if (processDef != null) {
+ if (sourceNode instanceof StartEvent || targetNode instanceof EndEvent) return;
+ if (sourceNode instanceof Activity && targetNode instanceof Activity) {
+ addActivityToActivityTransition(seq, sourceNode, targetNode, container, processDef);
+ }
+ } else {
+ failures.add(FAIL_NO_PROCESS_DEF + "(Id: " + container.getId() + ")");
+ }
+ }
+
+ public void addSubProcess(SubProcess subprocess, FlowElementsContainer container) {
+ logger.info("addSubProcess" + subprocess.getId() + " " + subprocess.getName());
+ ProcessDefinitionType processDef = findProcessDefinition(container.getId());
+ if (processDef != null) {
+ List<Documentation> docs = subprocess.getDocumentation();
+ String processDescription = getDescriptionFromDocumentation(docs);
+ ProcessDefinitionType implProcessDef = newProcessDefinition(carnotModel)
+ .withIdAndName(subprocess.getId(), subprocess.getName())
+ .withDescription(processDescription).build();
+ ActivityType activity = newSubProcessActivity(processDef)
+ .withIdAndName(subprocess.getId(), subprocess.getName())
+ .withDescription(processDescription)
+ .build();
+ activity.setImplementationProcess(implProcessDef);
+ } else {
+ failures.add(FAIL_NO_PROCESS_DEF + "(Id: " + container.getId() + ")");
+ }
+ }
+
+ public void addUserTask(UserTask task, FlowElementsContainer container) {
+ ProcessDefinitionType processDef = findProcessDefinition(container.getId());
+ if (processDef != null) {
+ String descr = getDescriptionFromDocumentation(task.getDocumentation());
+ ActivityType activity = newManualActivity(processDef)
+ .withIdAndName(task.getId(), task.getName())
+ .withDescription(descr)
+ .build();
+ Bpmn2CarnotXPDLExtension.addUserTaskExtensions(task, activity);
+
+ List<ResourceRole> resources = task.getResources();
+ for (ResourceRole role : resources) {
+ if (role instanceof Performer) {
+ setTaskPerformer(activity, role, task, container);
+ }
+ }
+ } else {
+ failures.add(FAIL_NO_PROCESS_DEF + "(Id: " + container.getId() + ")");
+ }
+
+ }
+
+ private void addActivityToActivityTransition(SequenceFlow seq, FlowNode sourceNode, FlowNode targetNode, FlowElementsContainer container, ProcessDefinitionType processDef) {
+ if (processDef != null) {
+ ActivityType sourceActivity = findActivity(sourceNode, container);
+ ActivityType targetActivity = findActivity(targetNode, container);
+ if (sourceActivity != null && targetActivity != null) {
+ String documentation = getDescriptionFromDocumentation(seq.getDocumentation());
+ TransitionType transition = createTransition(seq.getId(), seq.getName(), documentation, sourceActivity, targetActivity);
+ if (seq.getConditionExpression() != null) {
+ if (seq.getConditionExpression() instanceof FormalExpression) {
+ setSequenceFormalCondition(transition, (FormalExpression)seq.getConditionExpression());
+ } else if (seq.getConditionExpression().getDocumentation() != null
+ && seq.getConditionExpression().getDocumentation().get(0) != null
+ && !seq.getConditionExpression().getDocumentation().get(0).getText().equals("")) {
+ setSequenceInformalCondition(transition, seq.getConditionExpression().getDocumentation().get(0).getText());
+ } else {
+ setSequenceTrueCondition(transition);
+ }
+ }
+ // TODO transition.setForkOnTraversal()
+ processDef.getTransition().add(transition);
+ } else {
+ failures.add("No valid source and target for sequence flow: " + seq.getId() + " sourceRef " + seq.getSourceRef() + " targetRef " + seq.getTargetRef());
+ }
+ } else {
+ failures.add(FAIL_NO_PROCESS_DEF + "(Id: " + container.getId() + ")");
+ }
+ }
+
+ private void addGatewayTransition(ExclusiveGateway gateway, String condition, String name, String Id, String documentation, ActivityType sourceActivity, ActivityType targetActivity, FlowElementsContainer container, ProcessDefinitionType processDef) {
+ logger.info("addGatewayTransition from " + sourceActivity.getName() + " to " + targetActivity.getName());
+ if (processDef != null) {
+ if (sourceActivity != null && targetActivity != null) {
+ TransitionType transition = createTransition(Id, name, documentation, sourceActivity, targetActivity);
+ if (gateway.getDefault() != null && gateway.getDefault().getTargetRef().getId().equals(targetActivity.getId())) {
+ setSequenceOtherwiseCondition(transition);
+ } else if (!condition.equals("")) {
+ transition.setCondition(condition);
+ }
+ processDef.getTransition().add(transition);
+ } else {
+ failures.add("No valid source and target for gateway sequence: " + Id);
+ }
+ } else {
+ failures.add(FAIL_NO_PROCESS_DEF + "(Id: " + container.getId() + ")");
+ }
+ }
+
+ private void addManualTrigger(StartEvent event, FlowElementsContainer container, ProcessDefinitionType processDef) {
+ logger.debug("addManualTrigger " + event);
+ TriggerType trigger = newManualTrigger(processDef)
+ .withIdAndName(event.getId(), event.getName())
+ .build();
+ Bpmn2CarnotXPDLExtension.addStartEventExtensions(event, trigger);
+ }
+
+ private void addMessageTrigger(StartEvent event, EventDefinition def, FlowElementsContainer container, ProcessDefinitionType processDef) {
+ logger.debug("addMessageTrigger (JMS) " + event);
+ TriggerTypeType triggerType = Bpmn2CarnotXPDLExtension.getMessageStartEventTriggerType(event, carnotModel);
+ if (triggerType != null) {
+ TriggerType trigger = AbstractElementBuilder.F_CWM.createTriggerType();
+ trigger.setType(triggerType);
+ trigger.setId(event.getId());
+ trigger.setName(event.getName());
+ Bpmn2CarnotXPDLExtension.addMessageStartEventExtensions(event, trigger);
+ processDef.getTrigger().add(trigger);
+ } else {
+ failures.add(FAIL_ELEMENT_CREATION + "(Start event: " + event.getId() + " - trigger type + " + PredefinedConstants.JMS_TRIGGER + " not found)");
+ }
+ }
+
+ private void addTimerTrigger(StartEvent event, EventDefinition def, FlowElementsContainer container, ProcessDefinitionType processDef) {
+ logger.debug("addTimerTrigger " + event);
+ TriggerTypeType triggerType = XpdlModelUtils.findElementById(carnotModel.getTriggerType(), PredefinedConstants.TIMER_TRIGGER);
+ if (triggerType != null) {
+ TriggerType trigger = AbstractElementBuilder.F_CWM.createTriggerType();
+ trigger.setType(triggerType);
+ trigger.setId(event.getId());
+ trigger.setName(event.getName());
+ Bpmn2CarnotXPDLExtension.addTimerStartEventExtensions(event, trigger);
+ processDef.getTrigger().add(trigger);
+ } else {
+ failures.add(FAIL_ELEMENT_CREATION + "(Start event: " + event.getId() + " - trigger type + " + PredefinedConstants.JMS_TRIGGER + " not found)");
+ }
+ }
+
+ public void addParallelGateway(ParallelGateway gateway, FlowElementsContainer container) {
+ }
+
+ public void addParticipant(Participant participant, Process process) {
+ }
+
+ public void addLane(Lane lane, LaneSet laneset, Lane parentLane, FlowElementsContainer container) {
+
+ }
+
+ public void addIOBinding(List<InputOutputBinding> ioBinding, FlowElementsContainer container) {
+
+ }
+
+ public void addDataObject(DataObject flowElement, FlowElementsContainer container) {
+
+
+ }
+
+ public void addDataObjectReference(DataObjectReference flowElement, FlowElementsContainer container) {
+
+
+ }
+
+ public void addDataStoreReference(DataStoreReference flowElement, FlowElementsContainer container) {
+
+
+ }
+
+ public void addEndEvent(EndEvent event, FlowElementsContainer container) {
+
+
+ }
+
+ private int countEventDefinitions(CatchEvent event) {
+ if (event.getEventDefinitions() != null) return event.getEventDefinitions().size();
+ return 0;
+ }
+
+ private TransitionType createTransition(String id, String name, String documentation, ActivityType sourceActivity, ActivityType targetActivity) {
+ DescriptionType descrType = getDescription(documentation);
+ TransitionType transition = AbstractElementBuilder.F_CWM.createTransitionType();
+ transition.setFrom(sourceActivity);
+ transition.setTo(targetActivity);
+ transition.setId(id);
+ transition.setName(name);
+ transition.setDescription(descrType);
+ return transition;
+ }
+
+ private ActivityType findActivity(FlowNode node, FlowElementsContainer container) {
+ String nodeId = node != null ? node.getId() : null;
+ ProcessDefinitionType processDef = findProcessDefinition(container.getId());
+ if (processDef != null && nodeId != null) {
+ for (ActivityType activity : processDef.getActivity()) {
+ if (activity.getId().equals(nodeId)) return activity;
+ }
+ }
+ return null;
+ }
+
+ private ProcessDefinitionType findProcessDefinition(String id) {
+ EList<ProcessDefinitionType> processDefs = carnotModel.getProcessDefinition();
+ for (ProcessDefinitionType processDef : processDefs) {
+ if (processDef.getId().equals(id)) return processDef;
+ }
+ return null;
+ }
+
+ private IModelParticipant findResourceType(String id) {
+ EList<RoleType> roles = carnotModel.getRole();
+ EList<OrganizationType> orgs = carnotModel.getOrganization();
+ for (RoleType role : roles) {
+ if (role.getId().equals(id)) return role;
+ }
+ for (OrganizationType org : orgs) {
+ if (org.getId().equals(id)) return org;
+ }
+ return null;
+ }
+
+ private DescriptionType getDescription(String description) {
+ DescriptionType descriptor = AbstractElementBuilder.F_CWM.createDescriptionType();
+ XpdlModelUtils.setCDataString(descriptor.getMixed(), description, true);
+ return descriptor;
+ }
+
+ private String getDescriptionFromDocumentation(List<Documentation> documentation) {
+ String description = "";
+ for (Documentation doc : documentation) {
+ description = description.concat(doc.getText());
+ }
+ return description;
+ }
+
+ private EventDefinition getFirstEventDefinition(CatchEvent event) {
+ if (countEventDefinitions(event) > 0) {
+ return event.getEventDefinitions().get(0);
+ }
+ return null;
+ }
+
+ private void setSequenceFormalCondition(TransitionType transition, FormalExpression formalExpression) {
+ if (formalExpression.getLanguage().equals(EXPRESSION_LANGUAGE_JAVA)) {
+ transition.setCondition(CONDITION_KEY);
+ XmlTextNode expression = CarnotWorkflowModelFactory.eINSTANCE.createXmlTextNode();
+ ModelUtils.setCDataString(expression.getMixed(), formalExpression.getBody(), true);
+ transition.setExpression(expression);
+ } else {
+ String expr = formalExpression.getLanguage()
+ + " \n" + formalExpression.getBody();
+ setSequenceInformalCondition(transition, expr);
+ failures.add(FAIL_ELEMENT_UNSUPPORTED_FEATURE + "(Sequence - " + transition.getId() + " - Expression language (" + formalExpression.getLanguage() + ") not supported.");
+ }
+ }
+
+ private void setSequenceInformalCondition(TransitionType transition, String string) {
+ DescriptionType descrType = transition.getDescription();
+ String val = descrType.getMixed().getValue(CarnotWorkflowModelPackage.DESCRIPTION_TYPE__MIXED).toString();
+ descrType.getMixed().setValue(CarnotWorkflowModelPackage.DESCRIPTION_TYPE__MIXED, val + " " + string);
+ transition.setDescription(descrType);
+ }
+
+ private void setSequenceOtherwiseCondition(TransitionType transition) {
+ transition.setCondition(OTHERWISE_KEY);
+ }
+
+ private void setSequenceTrueCondition(TransitionType transition) {
+ transition.setCondition(CONDITION_KEY);
+ XmlTextNode expression = CarnotWorkflowModelFactory.eINSTANCE.createXmlTextNode();
+ ModelUtils.setCDataString(expression.getMixed(), "true", true);
+ transition.setExpression(expression);
+ }
+
+ private void setTaskPerformer(ActivityType activity, ResourceRole role, UserTask task, FlowElementsContainer container) {
+ if (role.getResourceAssignmentExpression() != null) failures.add(FAIL_ELEMENT_UNSUPPORTED_FEATURE + "(RESOURCE ASSIGNMENT EXPRESSION NOT IMPLEMENTED)");
+ if (role.getResourceParameterBindings() != null) failures.add(FAIL_ELEMENT_UNSUPPORTED_FEATURE + "RESOURCE PARAMETER BINDINGS NOT IMPLEMENTED");
+
+ if (role.eIsProxy()) role = Bpmn2ProxyResolver.resolveRoleProxy(role, container);
+ if (role.getResourceRef() != null) {
+ Resource resource = role.getResourceRef();
+ if (resource.eIsProxy()) resource = Bpmn2ProxyResolver.resolveResourceProxy(resource, container);
+ if (resource != null) {
+ IModelParticipant resourceType = findResourceType(resource.getId());
+ if (resourceType==null) {
+ String descr = getDescriptionFromDocumentation(resource.getDocumentation());
+ resourceType = newRole(carnotModel).withIdAndName(resource.getId(), resource.getName()).withDescription(descr).build();
+ }
+ activity.setPerformer(resourceType);
+ }
+ }
+ }
+
+}
diff --git a/model/org.eclipse.stardust.model.bpmn2.transform/src/main/java/org/eclipse/stardust/model/bpmn2/transform/carnot/Bpmn2CarnotXPDLExtension.java b/model/org.eclipse.stardust.model.bpmn2.transform/src/main/java/org/eclipse/stardust/model/bpmn2/transform/carnot/Bpmn2CarnotXPDLExtension.java new file mode 100644 index 0000000..36a6c7d --- a/dev/null +++ b/model/org.eclipse.stardust.model.bpmn2.transform/src/main/java/org/eclipse/stardust/model/bpmn2/transform/carnot/Bpmn2CarnotXPDLExtension.java @@ -0,0 +1,91 @@ +/*******************************************************************************
+ * Copyright (c) 2012 ITpearls AG and others.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * ITpearls - initial API and implementation and/or initial documentation
+ *******************************************************************************/
+package org.eclipse.stardust.model.bpmn2.transform.carnot;
+
+import org.eclipse.bpmn2.Definitions;
+import org.eclipse.bpmn2.StartEvent;
+import org.eclipse.bpmn2.UserTask;
+import org.eclipse.stardust.engine.api.model.PredefinedConstants;
+import org.eclipse.stardust.model.bpmn2.extension.ExtensionHelper;
+import org.eclipse.stardust.model.bpmn2.sdbpmn.StardustMessageStartEventType;
+import org.eclipse.stardust.model.bpmn2.sdbpmn.StardustModelType;
+import org.eclipse.stardust.model.bpmn2.sdbpmn.StardustStartEventType;
+import org.eclipse.stardust.model.bpmn2.sdbpmn.StardustTimerStartEventType;
+import org.eclipse.stardust.model.bpmn2.sdbpmn.StardustUserTaskType;
+import org.eclipse.stardust.model.xpdl.builder.utils.XpdlModelUtils;
+import org.eclipse.stardust.model.xpdl.carnot.ActivityType;
+import org.eclipse.stardust.model.xpdl.carnot.ModelType;
+import org.eclipse.stardust.model.xpdl.carnot.TriggerType;
+import org.eclipse.stardust.model.xpdl.carnot.TriggerTypeType;
+
+/**
+ * @author Simon Nikles
+ *
+ */
+public class Bpmn2CarnotXPDLExtension {
+
+ public static void addStartEventExtensions(StartEvent event, TriggerType trigger) {
+ StardustStartEventType extension = ExtensionHelper.getInstance().getStartEventExtension(event);
+ if (extension!=null) trigger.getAttribute().addAll(extension.getStardustAttributes().getAttributeType());
+ }
+
+ public static void addMessageStartEventExtensions(StartEvent event, TriggerType trigger) {
+ StardustMessageStartEventType extension = ExtensionHelper.getInstance().getMessageStartEventExtension(event);
+ if (extension == null) return;
+ trigger.getAccessPoint().addAll(extension.getAccessPoint());
+ trigger.getParameterMapping().addAll(extension.getParameterMapping());
+ trigger.getAttribute().addAll(extension.getStardustAttributes().getAttributeType());
+ }
+
+ public static void addTimerStartEventExtensions(StartEvent event, TriggerType trigger) {
+ StardustTimerStartEventType extension = ExtensionHelper.getInstance().getTimerStartEventExtension(event);
+ if (extension != null)
+ trigger.getAttribute().addAll(extension.getStardustAttributes().getAttributeType());
+ }
+
+ /**
+ * Defaults to JMS-Trigger
+ * @param event
+ * @param carnotModel
+ * @return
+ */
+ public static TriggerTypeType getMessageStartEventTriggerType(StartEvent event, ModelType carnotModel) {
+ StardustMessageStartEventType extension = ExtensionHelper.getInstance().getMessageStartEventExtension(event);
+ if (extension != null) {
+ String type = extension.getType();
+ return XpdlModelUtils.findElementById(carnotModel.getTriggerType(), type);
+ } else {
+ return XpdlModelUtils.findElementById(carnotModel.getTriggerType(), PredefinedConstants.JMS_TRIGGER);
+ }
+ }
+
+ public static void addUserTaskExtensions(UserTask task, ActivityType activity) {
+ StardustUserTaskType taskExt = ExtensionHelper.getInstance().getUserTaskExtension(task);
+ if (taskExt == null) return;
+ activity.setAllowsAbortByPerformer(taskExt.isAllowsAbortByPerformer());
+ activity.setHibernateOnCreation(taskExt.isHibernateOnCreation());
+ activity.setElementOid(Long.parseLong(taskExt.getElementOid()));
+ activity.getDataMapping().addAll(taskExt.getDataMapping());
+ activity.getEventHandler().addAll(taskExt.getEventHandler());
+ }
+
+ public static void addModelExtensions(Definitions definitions, ModelType carnotModel) {
+ StardustModelType modelValues = ExtensionHelper.getInstance().getModelAttributes(definitions);
+ if (modelValues == null) return;
+ carnotModel.setCarnotVersion(modelValues.getCarnotVersion());
+ carnotModel.setAuthor(modelValues.getAuthor());
+ carnotModel.setCreated(modelValues.getCreated().toXMLFormat());
+ carnotModel.setModelOID(Math.max(modelValues.getModelOID().intValue(), 1));
+ if (modelValues.getOid() > 0) carnotModel.setOid(modelValues.getOid());
+ carnotModel.setVendor(modelValues.getVendor());
+ }
+
+}
diff --git a/model/org.eclipse.stardust.model.bpmn2.transform/src/main/java/org/eclipse/stardust/model/bpmn2/transform/carnot/DialectCarnotXPDL.java b/model/org.eclipse.stardust.model.bpmn2.transform/src/main/java/org/eclipse/stardust/model/bpmn2/transform/carnot/DialectCarnotXPDL.java new file mode 100644 index 0000000..4f9115e --- a/dev/null +++ b/model/org.eclipse.stardust.model.bpmn2.transform/src/main/java/org/eclipse/stardust/model/bpmn2/transform/carnot/DialectCarnotXPDL.java @@ -0,0 +1,32 @@ +/*******************************************************************************
+ * Copyright (c) 2012 ITpearls AG and others.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * ITpearls - initial API and implementation and/or initial documentation
+ *******************************************************************************/
+package org.eclipse.stardust.model.bpmn2.transform.carnot;
+
+import org.eclipse.stardust.model.bpmn2.transform.Dialect;
+import org.eclipse.stardust.model.bpmn2.transform.Transformator;
+
+/**
+ * @author Simon Nikles
+ *
+ */
+public class DialectCarnotXPDL implements Dialect {
+
+ public static final String DIALECT_CARNOT = "carnot_xpdl";
+
+ public Transformator getTransformator() {
+ return new Bpmn2CarnotXPDL();
+ }
+
+ public String getDialectName() {
+ return DIALECT_CARNOT;
+ };
+
+}
diff --git a/model/org.eclipse.stardust.model.bpmn2.transform/src/main/java/org/eclipse/stardust/model/bpmn2/transform/util/Bpmn2ProxyResolver.java b/model/org.eclipse.stardust.model.bpmn2.transform/src/main/java/org/eclipse/stardust/model/bpmn2/transform/util/Bpmn2ProxyResolver.java new file mode 100644 index 0000000..e585301 --- a/dev/null +++ b/model/org.eclipse.stardust.model.bpmn2.transform/src/main/java/org/eclipse/stardust/model/bpmn2/transform/util/Bpmn2ProxyResolver.java @@ -0,0 +1,43 @@ +/*******************************************************************************
+ * Copyright (c) 2012 ITpearls AG and others.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * ITpearls - initial API and implementation and/or initial documentation
+ *******************************************************************************/
+package org.eclipse.stardust.model.bpmn2.transform.util;
+
+import org.eclipse.bpmn2.FlowElementsContainer;
+import org.eclipse.bpmn2.Resource;
+import org.eclipse.bpmn2.ResourceRole;
+import org.eclipse.emf.common.util.URI;
+import org.eclipse.emf.ecore.InternalEObject;
+
+/**
+ * @author Simon Nikles
+ *
+ */
+public class Bpmn2ProxyResolver {
+
+ public static Resource resolveResourceProxy(Resource resource, FlowElementsContainer container) {
+ URI proxyURI = ((InternalEObject) resource).eProxyURI();
+ if (container.eResource() != null) {
+ org.eclipse.emf.ecore.resource.Resource eRes = container.eResource();
+ resource = (Resource)eRes.getEObject(proxyURI.fragment());
+ }
+ return resource;
+ }
+
+ public static ResourceRole resolveRoleProxy(ResourceRole role, FlowElementsContainer container) {
+ URI proxyURI = ((InternalEObject) role).eProxyURI();
+ if (container.eResource() != null) {
+ org.eclipse.emf.ecore.resource.Resource eRes = container.eResource();
+ role = (ResourceRole)eRes.getEObject(proxyURI.fragment());
+ }
+ return role;
+ }
+
+}
diff --git a/model/org.eclipse.stardust.model.bpmn2.transform/src/test/java/org/eclipse/stardust/test/model/transformation/bpmn/Bpmn2CarnotXPDLTest.java b/model/org.eclipse.stardust.model.bpmn2.transform/src/test/java/org/eclipse/stardust/test/model/transformation/bpmn/Bpmn2CarnotXPDLTest.java new file mode 100644 index 0000000..a6afcf0 --- a/dev/null +++ b/model/org.eclipse.stardust.model.bpmn2.transform/src/test/java/org/eclipse/stardust/test/model/transformation/bpmn/Bpmn2CarnotXPDLTest.java @@ -0,0 +1,320 @@ +/*******************************************************************************
+ * Copyright (c) 2012 ITpearls AG and others.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * ITpearls - initial API and implementation and/or initial documentation
+ *******************************************************************************/
+package org.eclipse.stardust.test.model.transformation.bpmn;
+
+import java.io.File;
+import java.io.FileNotFoundException;
+import java.io.IOException;
+import java.net.URL;
+
+import junit.framework.Test;
+import junit.framework.TestCase;
+import junit.framework.TestSuite;
+
+import org.eclipse.bpmn2.Definitions;
+import org.eclipse.bpmn2.util.Bpmn2Resource;
+import org.eclipse.stardust.engine.api.model.PredefinedConstants;
+import org.eclipse.stardust.engine.core.model.beans.XMLConstants;
+import org.eclipse.stardust.model.bpmn2.input.BPMNModelImporter;
+import org.eclipse.stardust.model.bpmn2.transform.TransformationControl;
+import org.eclipse.stardust.model.bpmn2.transform.carnot.DialectCarnotXPDL;
+import org.eclipse.stardust.model.xpdl.carnot.ActivityImplementationType;
+import org.eclipse.stardust.model.xpdl.carnot.ActivityType;
+import org.eclipse.stardust.model.xpdl.carnot.IModelParticipant;
+import org.eclipse.stardust.model.xpdl.carnot.JoinSplitType;
+import org.eclipse.stardust.model.xpdl.carnot.ModelType;
+import org.eclipse.stardust.model.xpdl.carnot.OrganizationType;
+import org.eclipse.stardust.model.xpdl.carnot.ProcessDefinitionType;
+import org.eclipse.stardust.model.xpdl.carnot.RoleType;
+import org.eclipse.stardust.model.xpdl.carnot.TransitionType;
+import org.eclipse.stardust.model.xpdl.carnot.TriggerType;
+
+
+public class Bpmn2CarnotXPDLTest extends TestCase {
+
+ private static final String BPMN_MODEL_DIR = "models/bpmn/";
+ private static final String OUTPUT_DIR = "models/output/";
+ private static final String TEST_ID_START_EVENT = "TestModelStartEventId";
+ private static final String TEST_ID_POOL_P1 = "TestModelPool1";
+ private static final String TEST_ID_POOL_P2 = "TestModelPool2";
+ private static final String TEST_ID_LANE_L1 = "TestModelLane1";
+ private static final String TEST_ID_LANE_L2 = "TestModelLane2";
+ private static final String TEST_ID_TASK_A = "TestModelTaskA";
+ private static final String TEST_ID_TASK_B = "TestModelTaskB";
+ private static final String TEST_ID_TASK_C = "TestModelTaskC";
+ private static final String TEST_ID_TASK_D = "TestModelTaskD";
+ private static final String TEST_ID_TASK_E = "TestModelTaskE";
+ private static final String TEST_ID_SEQUENCE_A_TO_B = "TestModelSequenceAtoB";
+ private static final String TEST_ID_CONDITIONAL_SEQUENCE = "TestModelConditionalSequenceFlow1";
+ private static final String TEST_ID_DEFAULT_SEQUENCE = "TestModelDefaultSequenceFlow";
+ private static final String TEST_ID_XOR_SPLIT_GATEWAY = "TestModelXORSplitGateway";
+ private static final String TEST_ID_XOR_JOIN_GATEWAY = "TestModelXORJoinGateway";
+ private static final String TEST_ID_SUBPROCESS = "TestModelSubProcess";
+ private static final String TEST_ID_MAIN_PROCESS = "TestModelMainProcess";
+ private static final String TEST_ID_PARTNER_ENTITY_ORG_A = "TestOrganisationA";
+ private static final String TEST_ID_RESOURCE_ROLE_A = "TestPerformerRoleA";
+
+ public static Test suite() {
+ TestSuite suite = new TestSuite(Bpmn2CarnotXPDLTest.class);
+ createOutputDir();
+ return suite;
+ }
+
+
+ public void testStartEventNone() {
+ final String modelFile = BPMN_MODEL_DIR + "StartEventNone.bpmn";
+ final String fileOutput = getResourceFilePath(OUTPUT_DIR) + "testStartEventNone.xpdl";
+
+ ModelType result = transformModel(loadBpmnModel(modelFile), fileOutput);
+ ProcessDefinitionType process = result.getProcessDefinition().get(0);
+
+ assertNotNull(process);
+ assertNotNull(result);
+ TriggerType trigger = findTrigger(process, TEST_ID_START_EVENT);
+ assertNotNull(trigger);
+ assertEquals(PredefinedConstants.MANUAL_TRIGGER, trigger.getType().getId());
+ }
+
+ public void testStartEventMessage() {
+ // TODO JMS_TRIGGER type is not available
+ /*
+ final String modelFile = BPMN_MODEL_DIR + "StartEventMessage.bpmn";
+ final String fileOutput = getResourceFilePath(OUTPUT_DIR) + "testStartEventMessage.xpdl";
+
+ ModelType result = transformModel(loadBpmnModel(modelFile), fileOutput);
+ ProcessDefinitionType process = result.getProcessDefinition().get(0);
+
+ assertNotNull(process);
+ assertNotNull(result);
+ TriggerType trigger = findTrigger(process, TEST_ID_START_EVENT);
+ assertNotNull(trigger);
+ assertEquals(PredefinedConstants.JMS_TRIGGER, trigger.getType().getId());
+ */
+ }
+
+ public void testStartEventTimer() {
+ final String modelFile = BPMN_MODEL_DIR + "StartEventTimer.bpmn";
+ final String fileOutput = getResourceFilePath(OUTPUT_DIR) + "testStartEventTimer.xpdl";
+
+ ModelType result = transformModel(loadBpmnModel(modelFile), fileOutput);
+ ProcessDefinitionType process = result.getProcessDefinition().get(0);
+
+ assertNotNull(process);
+ assertNotNull(result);
+ TriggerType trigger = findTrigger(process, TEST_ID_START_EVENT);
+ assertNotNull(trigger);
+ assertEquals(PredefinedConstants.TIMER_TRIGGER, trigger.getType().getId());
+ }
+
+ public void testUserTask() {
+ final String modelFile = BPMN_MODEL_DIR + "UserTask.bpmn";
+ final String fileOutput = getResourceFilePath(OUTPUT_DIR) + "testUserTask.xpdl";
+
+ ModelType result = transformModel(loadBpmnModel(modelFile), fileOutput);
+ ProcessDefinitionType process = result.getProcessDefinition().get(0);
+
+ assertNotNull(process);
+ assertNotNull(result);
+ ActivityType activity = findActivity(process, TEST_ID_TASK_A);
+ assertNotNull(activity);
+ assertEquals(ActivityImplementationType.MANUAL_LITERAL, activity.getImplementation());
+ }
+
+ public void testTaskPerformerAndOrganisation() {
+ final String modelFile = BPMN_MODEL_DIR + "PerformerAndPartnerEntityOrg.bpmn";
+ final String fileOutput = getResourceFilePath(OUTPUT_DIR) + "PerformerAndPartnerEntityOrg.xpdl";
+
+ ModelType result = transformModel(loadBpmnModel(modelFile), fileOutput);
+ ProcessDefinitionType process = result.getProcessDefinition().get(0);
+ assertNotNull(process);
+ assertNotNull(result);
+
+ IModelParticipant orgParticipant = findParticipant(result, TEST_ID_PARTNER_ENTITY_ORG_A);
+ IModelParticipant resourceRole = findParticipant(result, TEST_ID_RESOURCE_ROLE_A);
+ ActivityType taskA = findActivity(process, TEST_ID_TASK_A);
+ assertNotNull(orgParticipant);
+ assertNotNull(resourceRole);
+ assertNotNull(taskA);
+ assertTrue(orgParticipant instanceof OrganizationType);
+ assertTrue(resourceRole instanceof RoleType);
+
+ assertNotNull(taskA.getPerformer());
+ assertTrue(taskA.getPerformer().equals(resourceRole));
+
+ }
+
+ public void testPoolToOrganization() {
+ }
+
+ public void testLaneToRole() {
+ /*final String modelFile = BPMN_MODEL_DIR + "Lane.bpmn";
+ final String fileOutput = getResourceFilePath(OUTPUT_DIR) + "testLane.xpdl";
+
+ ModelType result = transformModel(loadBpmnModel(modelFile), fileOutput);
+
+ assertNotNull(result);
+ IModelParticipant participant = findParticipant(result, TEST_ID_LANE_L1);
+ assertNotNull(participant);
+ assertTrue(participant instanceof RoleType); */
+ }
+
+ public void testPerformerDerivedFromPoolAndLane() {
+ }
+
+ public void testSequenceActivityToActivity(ActivityType taskA, ActivityType taskB, ProcessDefinitionType processDef) {
+ TransitionType sequenceFlow = findTransition(processDef, TEST_ID_SEQUENCE_A_TO_B);
+ assertNotNull(sequenceFlow);
+ assertNotNull(sequenceFlow.getFrom());
+ assertNotNull(sequenceFlow.getTo());
+ assertEquals(taskA, sequenceFlow.getFrom());
+ assertEquals(taskB, sequenceFlow.getTo());
+ }
+
+ public void testXORGatewayOneSplitOneMerge() {
+ final String modelFile = BPMN_MODEL_DIR + "XORGatewaysSingle.bpmn";
+ final String fileOutput = getResourceFilePath(OUTPUT_DIR) + "testXORGatewaysSingle.xpdl";
+ final String testCondition = "test='Condition to B'";
+ ModelType result = transformModel(loadBpmnModel(modelFile), fileOutput);
+ ProcessDefinitionType process = result.getProcessDefinition().get(0);
+
+ // A -> B, C or D -> E
+ // A has condition, D is default path
+ ActivityType taskA = findActivity(process, TEST_ID_TASK_A);
+ ActivityType taskB = findActivity(process, TEST_ID_TASK_B);
+ ActivityType taskC = findActivity(process, TEST_ID_TASK_C);
+ ActivityType taskD = findActivity(process, TEST_ID_TASK_D);
+ ActivityType taskE = findActivity(process, TEST_ID_TASK_E);
+
+ TransitionType transitionAB = findTransition(process, TEST_ID_CONDITIONAL_SEQUENCE);
+ TransitionType defaultTransitionAD = findTransition(process, TEST_ID_DEFAULT_SEQUENCE);
+
+ assertNotNull(taskA);
+ assertNotNull(taskB);
+ assertNotNull(taskC);
+ assertNotNull(taskD);
+ assertNotNull(taskE);
+
+ assertNotNull(transitionAB);
+ assertNotNull(defaultTransitionAD);
+
+ assertTrue(taskA.getOutTransitions().size()==3);
+ assertTrue(taskE.getInTransitions().size()==3);
+
+ assertEquals(JoinSplitType.XOR_LITERAL, taskA.getSplit());
+ assertEquals(JoinSplitType.XOR_LITERAL, taskE.getJoin());
+ System.out.println("sequence condition AB " + transitionAB.getCondition());
+ System.out.println("sequence condition AD " + defaultTransitionAD.getCondition());
+
+ assertEquals(testCondition, transitionAB.getCondition());
+ assertEquals(XMLConstants.CONDITION_OTHERWISE_VALUE, defaultTransitionAD.getCondition());
+
+ }
+
+ public void testCollapsedSubprocess() {
+ final String modelFile = BPMN_MODEL_DIR + "CollapsedSubprocess.bpmn";
+ final String fileOutput = getResourceFilePath(OUTPUT_DIR) + "testCollapsedSubprocess.xpdl";
+
+ ModelType result = transformModel(loadBpmnModel(modelFile), fileOutput);
+ ProcessDefinitionType mainprocess = findProcessDefinition(result, TEST_ID_MAIN_PROCESS);
+ ProcessDefinitionType subprocess = findProcessDefinition(result, TEST_ID_SUBPROCESS);
+
+ ActivityType taskA = findActivity(subprocess, TEST_ID_TASK_A);
+ ActivityType subprocessActivity = findActivity(mainprocess, TEST_ID_SUBPROCESS);
+
+ assertNotNull(mainprocess);
+ assertNotNull(subprocessActivity);
+ assertNotNull(subprocess);
+ assertNotNull(taskA);
+
+ assertEquals(ActivityImplementationType.SUBPROCESS_LITERAL, subprocessActivity.getImplementation());
+ assertEquals(subprocess, subprocessActivity.getImplementationProcess());
+
+ }
+
+ private ModelType transformModel(Definitions definitions, String fileOutput) {
+ TransformationControl transf = TransformationControl.getInstance(new DialectCarnotXPDL());
+ transf.transformToTarget(definitions, fileOutput);
+ return (ModelType)transf.getTargetModel();
+ }
+
+ private Definitions loadBpmnModel(String bpmnFile) {
+ String path = getResourceFilePath(bpmnFile);
+ Definitions definitions = null;
+ try {
+ Bpmn2Resource bpmnModel = BPMNModelImporter.importModel(path);
+ definitions = BPMNModelImporter.getDefinitions(bpmnModel);
+ } catch (FileNotFoundException e) {
+ e.printStackTrace();
+ } catch (IOException e) {
+ e.printStackTrace();
+ }
+
+ return definitions;
+ }
+
+ private String getResourceFilePath(String relativePath) {
+ URL fileUri = getClass().getClassLoader().getResource(relativePath);
+ return fileUri.getPath();
+ }
+
+ private static void createOutputDir() {
+ String path = Bpmn2CarnotXPDLTest.class.getClassLoader().getResource("").getPath();
+ path += "/" + OUTPUT_DIR;
+ File f = new File(path);
+ if (!f.exists()) f.mkdir();
+ }
+
+ private static ProcessDefinitionType findProcessInModel(ModelType model, String processId) {
+ for (ProcessDefinitionType processDef : model.getProcessDefinition()) {
+ if (processDef.getId().equals(processId)) return processDef;
+ }
+ return null;
+ }
+
+ private ProcessDefinitionType findProcessDefinition(ModelType model, String id) {
+ for (ProcessDefinitionType processDef : model.getProcessDefinition()) {
+ if (processDef.getId().equals(id)) return processDef;
+ }
+ return null;
+ }
+
+ private ActivityType findActivity(ProcessDefinitionType processDef, String id) {
+ for (ActivityType activity : processDef.getActivity()) {
+ if (activity.getId().equals(id)) return activity;
+ }
+ return null;
+ }
+
+ private TransitionType findTransition(ProcessDefinitionType processDef, String id) {
+ for (TransitionType transition : processDef.getTransition()) {
+ if (transition.getId().equals(id)) return transition;
+ }
+ return null;
+ }
+
+ private TriggerType findTrigger(ProcessDefinitionType processDef, String id) {
+ for (TriggerType trigger : processDef.getTrigger()) {
+ if (trigger.getId().equals(id)) return trigger;
+ }
+ return null;
+ }
+
+ private IModelParticipant findParticipant(ModelType model, String id) {
+ for (RoleType role : model.getRole()) {
+ if (role.getId().equals(id)) return role;
+ }
+ for (OrganizationType org : model.getOrganization()) {
+ if (org.getId().equals(id)) return org;
+ }
+ return null;
+ }
+
+}
diff --git a/model/org.eclipse.stardust.model.bpmn2.transform/src/test/resources/log4j.properties b/model/org.eclipse.stardust.model.bpmn2.transform/src/test/resources/log4j.properties new file mode 100644 index 0000000..a4a21aa --- a/dev/null +++ b/model/org.eclipse.stardust.model.bpmn2.transform/src/test/resources/log4j.properties @@ -0,0 +1,33 @@ +log4j.rootLogger=debugg
+#debug, stdout
+log4j.logger.org.eclipse.stardust.model.bpmn2=debug, R, stdout
+log4j.logger.org.eclipse=debug, Stardust
+log4j.logger.ag.carnot=debug, Stardust
+log = log/
+
+####################################################################
+
+log4j.appender.R=org.apache.log4j.RollingFileAppender
+log4j.appender.R.File=${log}/adapter.log
+
+log4j.appender.R.MaxFileSize=100KB
+# one backup file
+log4j.appender.R.MaxBackupIndex=1
+
+log4j.appender.R.layout=org.apache.log4j.PatternLayout
+log4j.appender.R.layout.ConversionPattern=%p %t %c - %m%n
+
+####################################################################
+
+log4j.appender.stdout=org.apache.log4j.ConsoleAppender
+log4j.appender.stdout.layout=org.apache.log4j.PatternLayout
+log4j.appender.stdout.layout.ConversionPattern=%5p (%F:%L) \t - %m%n
+
+####################################################################
+
+log4j.appender.Stardust=org.apache.log4j.RollingFileAppender
+log4j.appender.Stardust.File=${log}/stardust.log
+log4j.appender.Stardust.MaxFileSize=100KB
+log4j.appender.Stardust.MaxBackupIndex=1
+log4j.appender.Stardust.layout=org.apache.log4j.PatternLayout
+log4j.appender.Stardust.layout.ConversionPattern=%p %t %c - %m%n
diff --git a/model/org.eclipse.stardust.model.bpmn2.transform/src/test/resources/models/bpmn/CollapsedSubprocess.bpmn b/model/org.eclipse.stardust.model.bpmn2.transform/src/test/resources/models/bpmn/CollapsedSubprocess.bpmn new file mode 100644 index 0000000..325a79b --- a/dev/null +++ b/model/org.eclipse.stardust.model.bpmn2.transform/src/test/resources/models/bpmn/CollapsedSubprocess.bpmn @@ -0,0 +1,75 @@ +<?xml version="1.0" encoding="utf-8"?>
+<!--Created by Process Modeler 5 SR7 for Microsoft Visio (http://www.itp-commerce.com)-->
+<definitions targetNamespace="http://www.itp-commerce.com" xmlns="http://www.omg.org/spec/BPMN/20100524/MODEL" xmlns:itp="http://www.itp-commerce.com/BPMN2.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.omg.org/spec/BPMN/20100524/MODEL schemas/BPMN20.xsd" exporter="Process Modeler 5 for Microsoft Visio" exporterVersion="5.2769.13758 SR7" itp:name="Mein Diagramm" itp:version="1.0" itp:author="simon nikles" itp:creationDate="29.06.2012 11:30:07" itp:modificationDate="29.06.2012 11:31:47" itp:createdWithVersion="5.2769.13758 SR7" itp:conformanceSubClass="Full" id="_805507f8-0cdd-44e2-bd27-5f30d4bf88aa" xmlns:bpmndi="http://www.omg.org/spec/BPMN/20100524/DI" xmlns:di="http://www.omg.org/spec/DD/20100524/DI" xmlns:dc="http://www.omg.org/spec/DD/20100524/DC">
+ <process id="TestModelMainProcess" name="Hauptprozess" processType="None">
+ <extensionElements>
+ <itp:systemDefinedAttributes>
+ <attribute name="Hyperlinks" type="String" value="0 Hyperlinks" />
+ <attribute name="ExternalId" type="String" />
+ <attribute name="KPICost" type="Float" value="1" format="Currency;Fr.;;KPI;2" />
+ <attribute name="KPIDuration" type="Float" value="1" format="Duration;;;KPI;3">
+ <attribute name="KPIActiveTime" type="Float" value="1" format="Duration;;;KPI;3" />
+ <attribute name="KPIWaitTime" type="Float" value="0" format="Duration;;;KPI;3" />
+ </attribute>
+ </itp:systemDefinedAttributes>
+ <itp:localization>
+ <itp:label lang="unspecified" text="Hauptprozess" default="True" />
+ </itp:localization>
+ </extensionElements>
+ <subProcess id="TestModelSubProcess" name="Collapsed
SubProcess" itp:isCollapsed="true" itp:logicalSheetId="84213e91-1320-46ca-b242-1a8a4724ef72">
+ <extensionElements>
+ <itp:systemDefinedAttributes>
+ <attribute name="Hyperlinks" type="String" value="0 Hyperlinks" />
+ <attribute name="ExternalId" type="String" />
+ <attribute name="KPICost" type="Float" value="1" format="Currency;Fr.;;KPI;2" />
+ <attribute name="KPIDuration" type="Float" value="1" format="Duration;;;KPI;3">
+ <attribute name="KPIActiveTime" type="Float" value="1" format="Duration;;;KPI;3" />
+ <attribute name="KPIWaitTime" type="Float" value="0" format="Duration;;;KPI;3" />
+ </attribute>
+ </itp:systemDefinedAttributes>
+ <itp:localization>
+ <itp:label lang="unspecified" text="Collapsed
SubProcess" default="True" />
+ </itp:localization>
+ </extensionElements>
+ <userTask id="TestModelTaskA" name="UserTask
in Subprocess" implementation="unspecified">
+ <extensionElements>
+ <itp:systemDefinedAttributes>
+ <attribute name="Hyperlinks" type="String" value="0 Hyperlinks" />
+ <attribute name="ExternalId" type="String" />
+ <attribute name="KPICost" type="Float" value="1" format="Currency;Fr.;;KPI;2" />
+ <attribute name="KPIDuration" type="Float" value="1" format="Duration;;;KPI;3">
+ <attribute name="KPIActiveTime" type="Float" value="1" format="Duration;;;KPI;3" />
+ <attribute name="KPIWaitTime" type="Float" value="0" format="Duration;;;KPI;3" />
+ </attribute>
+ </itp:systemDefinedAttributes>
+ <itp:localization>
+ <itp:label lang="unspecified" text="UserTask
in Subprocess" default="True" />
+ </itp:localization>
+ </extensionElements>
+ </userTask>
+ </subProcess>
+ </process>
+ <bpmndi:BPMNDiagram name="Mein Diagramm (1)" resolution="72">
+ <bpmndi:BPMNPlane id="_1" bpmnElement="TestModelMainProcess">
+ <bpmndi:BPMNShape id="_F3D0E277-FBA8-4C1E-A3F3-288E89B7A289" bpmnElement="TestModelSubProcess" isExpanded="false" itp:label="Collapsed
SubProcess" itp:elementType="subProcess">
+ <dc:Bounds x="121.889763779528" y="113.385826771654" width="85.0393700787402" height="42.5196850393701" />
+ <bpmndi:BPMNLabel labelStyle="_7814d733-1169-4791-b53f-4fe462a23900">
+ <dc:Bounds x="133.92" y="113.235590551181" width="60.48" height="33.84" />
+ </bpmndi:BPMNLabel>
+ </bpmndi:BPMNShape>
+ </bpmndi:BPMNPlane>
+ </bpmndi:BPMNDiagram>
+ <bpmndi:BPMNDiagram name="Collapsed SubProcess (1)" resolution="72">
+ <bpmndi:BPMNPlane id="_2" bpmnElement="TestModelSubProcess">
+ <bpmndi:BPMNShape id="_97C7663C-B528-431D-BA05-E78A35F34B05" bpmnElement="TestModelTaskA" itp:label="UserTask
in Subprocess" itp:elementType="userTask">
+ <dc:Bounds x="143.149606299213" y="110.551181102362" width="85.0393700787402" height="42.5196850393701" />
+ <bpmndi:BPMNLabel labelStyle="_7814d733-1169-4791-b53f-4fe462a23900">
+ <dc:Bounds x="150.84" y="119.715590551181" width="69.84" height="23.76" />
+ </bpmndi:BPMNLabel>
+ </bpmndi:BPMNShape>
+ </bpmndi:BPMNPlane>
+ <bpmndi:BPMNLabelStyle id="_7814d733-1169-4791-b53f-4fe462a23900">
+ <dc:Font name="Arial" size="10" isBold="false" isItalic="false" isUnderline="false" isStrikeThrough="false" />
+ </bpmndi:BPMNLabelStyle>
+ </bpmndi:BPMNDiagram>
+</definitions>
\ No newline at end of file diff --git a/model/org.eclipse.stardust.model.bpmn2.transform/src/test/resources/models/bpmn/Lane.bpmn b/model/org.eclipse.stardust.model.bpmn2.transform/src/test/resources/models/bpmn/Lane.bpmn new file mode 100644 index 0000000..db3c03d --- a/dev/null +++ b/model/org.eclipse.stardust.model.bpmn2.transform/src/test/resources/models/bpmn/Lane.bpmn @@ -0,0 +1,47 @@ +<?xml version="1.0" encoding="utf-8"?>
+<!--Created by Process Modeler 5 SR7 for Microsoft Visio (http://www.itp-commerce.com)-->
+<definitions targetNamespace="http://www.itp-commerce.com" xmlns="http://www.omg.org/spec/BPMN/20100524/MODEL" xmlns:itp="http://www.itp-commerce.com/BPMN2.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.omg.org/spec/BPMN/20100524/MODEL schemas/BPMN20.xsd" exporter="Process Modeler 5 for Microsoft Visio" exporterVersion="5.2769.13758 SR7" itp:name="Mein Diagramm" itp:version="1.0" itp:author="simon nikles" itp:creationDate="28.06.2012 09:29:58" itp:modificationDate="28.06.2012 14:38:54" itp:createdWithVersion="5.2769.13758 SR7" itp:conformanceSubClass="Full" id="_9be861c8-bb4a-4f30-a848-d7f4eb178051" xmlns:bpmndi="http://www.omg.org/spec/BPMN/20100524/DI" xmlns:di="http://www.omg.org/spec/DD/20100524/DI" xmlns:dc="http://www.omg.org/spec/DD/20100524/DC">
+ <process id="_a1d182de-7971-4662-9009-cab25f298bdd" name="Hauptprozess" processType="None">
+ <extensionElements>
+ <itp:systemDefinedAttributes>
+ <attribute name="Hyperlinks" type="String" value="0 Hyperlinks" />
+ <attribute name="ExternalId" type="String" />
+ <attribute name="KPICost" type="Float" value="1" format="Currency;Fr.;;KPI;2" />
+ <attribute name="KPIDuration" type="Float" value="1" format="Duration;;;KPI;3">
+ <attribute name="KPIActiveTime" type="Float" value="1" format="Duration;;;KPI;3" />
+ <attribute name="KPIWaitTime" type="Float" value="0" format="Duration;;;KPI;3" />
+ </attribute>
+ </itp:systemDefinedAttributes>
+ <itp:localization>
+ <itp:label lang="unspecified" text="Hauptprozess" default="True" />
+ </itp:localization>
+ </extensionElements>
+ <laneSet>
+ <lane id="TestModelLane1" name="Lane 1">
+ <documentation>Documentation Lane 1</documentation>
+ <extensionElements>
+ <itp:systemDefinedAttributes>
+ <attribute name="Hyperlinks" type="String" value="0 Hyperlinks" />
+ <attribute name="ExternalId" type="String" />
+ </itp:systemDefinedAttributes>
+ <itp:localization>
+ <itp:label lang="unspecified" text="Lane 1" default="True" />
+ </itp:localization>
+ </extensionElements>
+ </lane>
+ </laneSet>
+ </process>
+ <bpmndi:BPMNDiagram name="Mein Diagramm (1)" resolution="72">
+ <bpmndi:BPMNPlane id="_1" bpmnElement="_ba2d7f88-eb78-443e-bd7f-ff5a37de8ef4">
+ <bpmndi:BPMNShape id="_AC5D1FA3-2DB6-4D5A-92CE-FB3456C4A74B" bpmnElement="TestModelLane1" isHorizontal="true" itp:label="Lane 1" itp:elementType="lane">
+ <dc:Bounds x="85.0393700787401" y="145.984251968504" width="311.811023622047" height="70.8661417322835" />
+ <bpmndi:BPMNLabel labelStyle="_39c44b00-3d42-41da-be5b-9e2a0c5ffef1">
+ <dc:Bounds x="63.36" y="159.315590551181" width="14.4" height="43.92" />
+ </bpmndi:BPMNLabel>
+ </bpmndi:BPMNShape>
+ </bpmndi:BPMNPlane>
+ <bpmndi:BPMNLabelStyle id="_39c44b00-3d42-41da-be5b-9e2a0c5ffef1">
+ <dc:Font name="Arial" size="12" isBold="false" isItalic="false" isUnderline="false" isStrikeThrough="false" />
+ </bpmndi:BPMNLabelStyle>
+ </bpmndi:BPMNDiagram>
+</definitions>
\ No newline at end of file diff --git a/model/org.eclipse.stardust.model.bpmn2.transform/src/test/resources/models/bpmn/PerformerAndPartnerEntityOrg.bpmn b/model/org.eclipse.stardust.model.bpmn2.transform/src/test/resources/models/bpmn/PerformerAndPartnerEntityOrg.bpmn new file mode 100644 index 0000000..9647b27 --- a/dev/null +++ b/model/org.eclipse.stardust.model.bpmn2.transform/src/test/resources/models/bpmn/PerformerAndPartnerEntityOrg.bpmn @@ -0,0 +1,206 @@ +<?xml version="1.0" encoding="utf-8"?>
+<!--Created by Process Modeler 5 SR7 for Microsoft Visio (http://www.itp-commerce.com)-->
+<definitions targetNamespace="http://www.itp-commerce.com" xmlns="http://www.omg.org/spec/BPMN/20100524/MODEL" xmlns:itp="http://www.itp-commerce.com/BPMN2.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.omg.org/spec/BPMN/20100524/MODEL schemas/BPMN20.xsd" exporter="Process Modeler 5 for Microsoft Visio" exporterVersion="5.2769.13758 SR7" itp:name="Mein Diagramm" itp:version="1.0" itp:author="simon nikles" itp:creationDate="28.06.2012 09:29:58" itp:modificationDate="28.06.2012 15:10:59" itp:createdWithVersion="5.2769.13758 SR7" itp:conformanceSubClass="Full" id="_9be861c8-bb4a-4f30-a848-d7f4eb178051" xmlns:bpmndi="http://www.omg.org/spec/BPMN/20100524/DI" xmlns:di="http://www.omg.org/spec/DD/20100524/DI" xmlns:dc="http://www.omg.org/spec/DD/20100524/DC">
+
+ <partnerEntity id="TestOrganisationA" name="Test Organisation A">
+ <participantRef>TestModelPool1</participantRef>
+ </partnerEntity>
+
+
+ <resource id="TestPerformerRoleA" name="Test Role A"></resource>
+
+ <collaboration id="_ba2d7f88-eb78-443e-bd7f-ff5a37de8ef4">
+ <participant id="TestModelPool1" name="Pool 1" processRef="_5561110d-efd3-4218-b5c6-2038bbc4ba3d">
+ <extensionElements>
+ <itp:localization>
+ <itp:label lang="unspecified" text="Pool 1" default="True" />
+ </itp:localization>
+ </extensionElements>
+ </participant>
+ </collaboration>
+ <process id="_5561110d-efd3-4218-b5c6-2038bbc4ba3d" name="Pool 1" processType="None">
+ <extensionElements>
+ <itp:systemDefinedAttributes>
+ <attribute name="Hyperlinks" type="String" value="0 Hyperlinks" />
+ <attribute name="ExternalId" type="String" />
+ <attribute name="KPICost" type="Float" value="1" format="Currency;Fr.;;KPI;2" />
+ <attribute name="KPIDuration" type="Float" value="1" format="Duration;;;KPI;3">
+ <attribute name="KPIActiveTime" type="Float" value="1" format="Duration;;;KPI;3" />
+ <attribute name="KPIWaitTime" type="Float" value="0" format="Duration;;;KPI;3" />
+ </attribute>
+ </itp:systemDefinedAttributes>
+ <itp:localization>
+ <itp:label lang="unspecified" text="Pool 1" default="True" />
+ </itp:localization>
+ </extensionElements>
+ <laneSet>
+ <lane id="TestModelLane1" name="Lane 1">
+ <extensionElements>
+ <itp:systemDefinedAttributes>
+ <attribute name="Hyperlinks" type="String" value="0 Hyperlinks" />
+ <attribute name="ExternalId" type="String" />
+ </itp:systemDefinedAttributes>
+ <itp:localization>
+ <itp:label lang="unspecified" text="Lane 1" default="True" />
+ </itp:localization>
+ </extensionElements>
+ <flowNodeRef>TestModelTaskA</flowNodeRef>
+ <flowNodeRef>TestModelTaskA</flowNodeRef>
+ </lane>
+ <lane id="TestModelLane2" name="Lane 2">
+ <extensionElements>
+ <itp:systemDefinedAttributes>
+ <attribute name="Hyperlinks" type="String" value="0 Hyperlinks" />
+ <attribute name="ExternalId" type="String" />
+ </itp:systemDefinedAttributes>
+ <itp:localization>
+ <itp:label lang="unspecified" text="Lane 2" default="True" />
+ </itp:localization>
+ </extensionElements>
+ <flowNodeRef>TestModelTaskB</flowNodeRef>
+ <flowNodeRef>TestModelTaskB</flowNodeRef>
+ </lane>
+ </laneSet>
+ <userTask id="TestModelTaskA" name="Task A" implementation="unspecified">
+ <extensionElements>
+ <itp:systemDefinedAttributes>
+ <attribute name="Hyperlinks" type="String" value="0 Hyperlinks" />
+ <attribute name="ExternalId" type="String" />
+ <attribute name="KPICost" type="Float" value="1" format="Currency;Fr.;;KPI;2" />
+ <attribute name="KPIDuration" type="Float" value="1" format="Duration;;;KPI;3">
+ <attribute name="KPIActiveTime" type="Float" value="1" format="Duration;;;KPI;3" />
+ <attribute name="KPIWaitTime" type="Float" value="0" format="Duration;;;KPI;3" />
+ </attribute>
+ </itp:systemDefinedAttributes>
+ <itp:localization>
+ <itp:label lang="unspecified" text="Task A" default="True" />
+ </itp:localization>
+ </extensionElements>
+ <performer id="TestPerformerTaskA" name="Test Performer Task A">
+ <resourceRef>TestPerformerRoleA</resourceRef>
+ </performer>
+
+ </userTask>
+ <userTask id="TestModelTaskB" name="Task B" implementation="unspecified">
+ <extensionElements>
+ <itp:systemDefinedAttributes>
+ <attribute name="Hyperlinks" type="String" value="0 Hyperlinks" />
+ <attribute name="ExternalId" type="String" />
+ <attribute name="KPICost" type="Float" value="1" format="Currency;Fr.;;KPI;2" />
+ <attribute name="KPIDuration" type="Float" value="1" format="Duration;;;KPI;3">
+ <attribute name="KPIActiveTime" type="Float" value="1" format="Duration;;;KPI;3" />
+ <attribute name="KPIWaitTime" type="Float" value="0" format="Duration;;;KPI;3" />
+ </attribute>
+ </itp:systemDefinedAttributes>
+ <itp:localization>
+ <itp:label lang="unspecified" text="Task B" default="True" />
+ </itp:localization>
+ </extensionElements>
+ </userTask>
+ <userTask id="TestModelTaskC" name="Task C" implementation="unspecified">
+ <extensionElements>
+ <itp:systemDefinedAttributes>
+ <attribute name="Hyperlinks" type="String" value="0 Hyperlinks" />
+ <attribute name="ExternalId" type="String" />
+ <attribute name="KPICost" type="Float" value="1" format="Currency;Fr.;;KPI;2" />
+ <attribute name="KPIDuration" type="Float" value="1" format="Duration;;;KPI;3">
+ <attribute name="KPIActiveTime" type="Float" value="1" format="Duration;;;KPI;3" />
+ <attribute name="KPIWaitTime" type="Float" value="0" format="Duration;;;KPI;3" />
+ </attribute>
+ </itp:systemDefinedAttributes>
+ <itp:localization>
+ <itp:label lang="unspecified" text="Task C" default="True" />
+ </itp:localization>
+ </extensionElements>
+ </userTask>
+ <sequenceFlow id="TestModelSequenceAtoB" sourceRef="TestModelTaskA" targetRef="TestModelTaskB">
+ <extensionElements>
+ <itp:systemDefinedAttributes>
+ <attribute name="Hyperlinks" type="String" value="0 Hyperlinks" />
+ <attribute name="ExternalId" type="String" />
+ </itp:systemDefinedAttributes>
+ <itp:localization>
+ <itp:label lang="unspecified" text="" default="True" />
+ </itp:localization>
+ </extensionElements>
+ </sequenceFlow>
+ <sequenceFlow id="_7fbbf87f-0a87-487b-ad5a-b6eb6cc9c2e2" sourceRef="TestModelTaskB" targetRef="TestModelTaskC">
+ <extensionElements>
+ <itp:systemDefinedAttributes>
+ <attribute name="Hyperlinks" type="String" value="0 Hyperlinks" />
+ <attribute name="ExternalId" type="String" />
+ </itp:systemDefinedAttributes>
+ <itp:localization>
+ <itp:label lang="unspecified" text="" default="True" />
+ </itp:localization>
+ </extensionElements>
+ </sequenceFlow>
+ </process>
+ <bpmndi:BPMNDiagram name="Mein Diagramm (1)" resolution="72">
+ <bpmndi:BPMNPlane id="_1" bpmnElement="_ba2d7f88-eb78-443e-bd7f-ff5a37de8ef4">
+ <bpmndi:BPMNShape id="_AD141325-0FB6-427F-95A7-44DCCC719152" bpmnElement="TestModelPool1" isHorizontal="true" itp:label="Pool 1" itp:elementType="participant">
+ <dc:Bounds x="93.7700645669291" y="79.3700787401575" width="680.088160629921" height="212.59842519685" />
+ <bpmndi:BPMNLabel labelStyle="_ff9cc401-a712-4307-be78-49b8608a04f2">
+ <dc:Bounds x="72" y="165.075590551181" width="14.4" height="41.04" />
+ </bpmndi:BPMNLabel>
+ </bpmndi:BPMNShape>
+ <bpmndi:BPMNShape id="_082CD16B-8C09-4ACD-8552-CF99840DDF21" bpmnElement="TestModelLane1" isHorizontal="true" itp:label="Lane 1" itp:elementType="lane">
+ <dc:Bounds x="93.7700645669291" y="79.3700787401575" width="680.088160629921" height="70.8661417322835" />
+ <bpmndi:BPMNLabel labelStyle="_ff9cc401-a712-4307-be78-49b8608a04f2">
+ <dc:Bounds x="72" y="93.0755905511811" width="14.4" height="43.92" />
+ </bpmndi:BPMNLabel>
+ </bpmndi:BPMNShape>
+ <bpmndi:BPMNShape id="_940DF887-B83D-40F0-ABD1-9F46E1BB1246" bpmnElement="TestModelLane2" isHorizontal="true" itp:label="Lane 2" itp:elementType="lane">
+ <dc:Bounds x="93.7700645669291" y="150.236220472441" width="680.088160629921" height="70.8661417322835" />
+ <bpmndi:BPMNLabel labelStyle="_ff9cc401-a712-4307-be78-49b8608a04f2">
+ <dc:Bounds x="72" y="163.635590551181" width="14.4" height="43.92" />
+ </bpmndi:BPMNLabel>
+ </bpmndi:BPMNShape>
+ <bpmndi:BPMNShape id="_158B096D-D2E6-4C4D-96B3-65F3604554E2" bpmnElement="TestModelTaskA" itp:label="Task A" itp:elementType="userTask">
+ <dc:Bounds x="178.582677165354" y="93.5433070866142" width="85.0393700787402" height="42.5196850393701" />
+ <bpmndi:BPMNLabel labelStyle="_69c7560c-ead4-446b-93a8-b7ca20626ace">
+ <dc:Bounds x="201.96" y="108.195590551181" width="38.16" height="13.68" />
+ </bpmndi:BPMNLabel>
+ </bpmndi:BPMNShape>
+ <bpmndi:BPMNShape id="_2FE1C5C0-6337-4A71-AE6C-8E035FC2BBFC" bpmnElement="TestModelTaskB" itp:label="Task B" itp:elementType="userTask">
+ <dc:Bounds x="311.811023622047" y="164.409448818898" width="85.0393700787402" height="42.5196850393701" />
+ <bpmndi:BPMNLabel labelStyle="_69c7560c-ead4-446b-93a8-b7ca20626ace">
+ <dc:Bounds x="335.16" y="178.755590551181" width="38.16" height="13.68" />
+ </bpmndi:BPMNLabel>
+ </bpmndi:BPMNShape>
+ <bpmndi:BPMNShape id="_CE06FB34-8947-46B1-A7D1-512249FEFF1E" bpmnElement="TestModelTaskC" itp:label="Task C" itp:elementType="userTask">
+ <dc:Bounds x="445.03937007874" y="238.110236220472" width="85.0393700787402" height="42.5196850393701" />
+ <bpmndi:BPMNLabel labelStyle="_69c7560c-ead4-446b-93a8-b7ca20626ace">
+ <dc:Bounds x="468.36" y="252.195590551181" width="38.16" height="13.68" />
+ </bpmndi:BPMNLabel>
+ </bpmndi:BPMNShape>
+ <bpmndi:BPMNEdge id="_C29998D6-EA29-4212-9FB3-62FA003F4951" bpmnElement="TestModelSequenceAtoB" itp:label="(unbenannt)" itp:elementType="sequenceFlow">
+ <di:waypoint x="263.622047244095" y="114.803149606299" />
+ <di:waypoint x="274.251968503937" y="114.803149606299" />
+ <di:waypoint x="274.251968503937" y="185.669291338583" />
+ <di:waypoint x="311.811023622047" y="185.669291338583" />
+ <bpmndi:BPMNLabel labelStyle="_96eaa0fb-7c0b-4af2-8497-9b3c1f6a7a14">
+ <dc:Bounds x="270.36" y="156.795590551181" width="7.92" height="17.28" />
+ </bpmndi:BPMNLabel>
+ </bpmndi:BPMNEdge>
+ <bpmndi:BPMNEdge id="_73D93602-6735-4C7D-875A-B45252C4E8FE" bpmnElement="_7fbbf87f-0a87-487b-ad5a-b6eb6cc9c2e2" itp:label="(unbenannt)" itp:elementType="sequenceFlow">
+ <di:waypoint x="396.850393700787" y="185.669291338583" />
+ <di:waypoint x="407.48031496063" y="185.669291338583" />
+ <di:waypoint x="407.48031496063" y="259.370078740158" />
+ <di:waypoint x="445.03937007874" y="259.370078740158" />
+ <bpmndi:BPMNLabel labelStyle="_96eaa0fb-7c0b-4af2-8497-9b3c1f6a7a14">
+ <dc:Bounds x="403.56" y="229.515590551181" width="7.92" height="17.28" />
+ </bpmndi:BPMNLabel>
+ </bpmndi:BPMNEdge>
+ </bpmndi:BPMNPlane>
+ <bpmndi:BPMNLabelStyle id="_ff9cc401-a712-4307-be78-49b8608a04f2">
+ <dc:Font name="Arial" size="12" isBold="false" isItalic="false" isUnderline="false" isStrikeThrough="false" />
+ </bpmndi:BPMNLabelStyle>
+ <bpmndi:BPMNLabelStyle id="_69c7560c-ead4-446b-93a8-b7ca20626ace">
+ <dc:Font name="Arial" size="10" isBold="false" isItalic="false" isUnderline="false" isStrikeThrough="false" />
+ </bpmndi:BPMNLabelStyle>
+ <bpmndi:BPMNLabelStyle id="_96eaa0fb-7c0b-4af2-8497-9b3c1f6a7a14">
+ <dc:Font name="Arial" size="8" isBold="false" isItalic="false" isUnderline="false" isStrikeThrough="false" />
+ </bpmndi:BPMNLabelStyle>
+ </bpmndi:BPMNDiagram>
+</definitions>
\ No newline at end of file diff --git a/model/org.eclipse.stardust.model.bpmn2.transform/src/test/resources/models/bpmn/PerformerFromPoolAndLane.bpmn b/model/org.eclipse.stardust.model.bpmn2.transform/src/test/resources/models/bpmn/PerformerFromPoolAndLane.bpmn new file mode 100644 index 0000000..1d504bf --- a/dev/null +++ b/model/org.eclipse.stardust.model.bpmn2.transform/src/test/resources/models/bpmn/PerformerFromPoolAndLane.bpmn @@ -0,0 +1,194 @@ +<?xml version="1.0" encoding="utf-8"?>
+<!--Created by Process Modeler 5 SR7 for Microsoft Visio (http://www.itp-commerce.com)-->
+<definitions targetNamespace="http://www.itp-commerce.com" xmlns="http://www.omg.org/spec/BPMN/20100524/MODEL" xmlns:itp="http://www.itp-commerce.com/BPMN2.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.omg.org/spec/BPMN/20100524/MODEL schemas/BPMN20.xsd" exporter="Process Modeler 5 for Microsoft Visio" exporterVersion="5.2769.13758 SR7" itp:name="Mein Diagramm" itp:version="1.0" itp:author="simon nikles" itp:creationDate="28.06.2012 09:29:58" itp:modificationDate="28.06.2012 15:10:59" itp:createdWithVersion="5.2769.13758 SR7" itp:conformanceSubClass="Full" id="_9be861c8-bb4a-4f30-a848-d7f4eb178051" xmlns:bpmndi="http://www.omg.org/spec/BPMN/20100524/DI" xmlns:di="http://www.omg.org/spec/DD/20100524/DI" xmlns:dc="http://www.omg.org/spec/DD/20100524/DC">
+ <collaboration id="_ba2d7f88-eb78-443e-bd7f-ff5a37de8ef4">
+ <participant id="TestModelPool1" name="Pool 1" processRef="_5561110d-efd3-4218-b5c6-2038bbc4ba3d">
+ <extensionElements>
+ <itp:localization>
+ <itp:label lang="unspecified" text="Pool 1" default="True" />
+ </itp:localization>
+ </extensionElements>
+ </participant>
+ </collaboration>
+ <process id="_5561110d-efd3-4218-b5c6-2038bbc4ba3d" name="Pool 1" processType="None">
+ <extensionElements>
+ <itp:systemDefinedAttributes>
+ <attribute name="Hyperlinks" type="String" value="0 Hyperlinks" />
+ <attribute name="ExternalId" type="String" />
+ <attribute name="KPICost" type="Float" value="1" format="Currency;Fr.;;KPI;2" />
+ <attribute name="KPIDuration" type="Float" value="1" format="Duration;;;KPI;3">
+ <attribute name="KPIActiveTime" type="Float" value="1" format="Duration;;;KPI;3" />
+ <attribute name="KPIWaitTime" type="Float" value="0" format="Duration;;;KPI;3" />
+ </attribute>
+ </itp:systemDefinedAttributes>
+ <itp:localization>
+ <itp:label lang="unspecified" text="Pool 1" default="True" />
+ </itp:localization>
+ </extensionElements>
+ <laneSet>
+ <lane id="TestModelLane1" name="Lane 1">
+ <extensionElements>
+ <itp:systemDefinedAttributes>
+ <attribute name="Hyperlinks" type="String" value="0 Hyperlinks" />
+ <attribute name="ExternalId" type="String" />
+ </itp:systemDefinedAttributes>
+ <itp:localization>
+ <itp:label lang="unspecified" text="Lane 1" default="True" />
+ </itp:localization>
+ </extensionElements>
+ <flowNodeRef>TestModelTaskA</flowNodeRef>
+ <flowNodeRef>TestModelTaskA</flowNodeRef>
+ </lane>
+ <lane id="TestModelLane2" name="Lane 2">
+ <extensionElements>
+ <itp:systemDefinedAttributes>
+ <attribute name="Hyperlinks" type="String" value="0 Hyperlinks" />
+ <attribute name="ExternalId" type="String" />
+ </itp:systemDefinedAttributes>
+ <itp:localization>
+ <itp:label lang="unspecified" text="Lane 2" default="True" />
+ </itp:localization>
+ </extensionElements>
+ <flowNodeRef>TestModelTaskB</flowNodeRef>
+ <flowNodeRef>TestModelTaskB</flowNodeRef>
+ </lane>
+ </laneSet>
+ <userTask id="TestModelTaskA" name="Task A" implementation="unspecified">
+ <extensionElements>
+ <itp:systemDefinedAttributes>
+ <attribute name="Hyperlinks" type="String" value="0 Hyperlinks" />
+ <attribute name="ExternalId" type="String" />
+ <attribute name="KPICost" type="Float" value="1" format="Currency;Fr.;;KPI;2" />
+ <attribute name="KPIDuration" type="Float" value="1" format="Duration;;;KPI;3">
+ <attribute name="KPIActiveTime" type="Float" value="1" format="Duration;;;KPI;3" />
+ <attribute name="KPIWaitTime" type="Float" value="0" format="Duration;;;KPI;3" />
+ </attribute>
+ </itp:systemDefinedAttributes>
+ <itp:localization>
+ <itp:label lang="unspecified" text="Task A" default="True" />
+ </itp:localization>
+ </extensionElements>
+ </userTask>
+ <userTask id="TestModelTaskB" name="Task B" implementation="unspecified">
+ <extensionElements>
+ <itp:systemDefinedAttributes>
+ <attribute name="Hyperlinks" type="String" value="0 Hyperlinks" />
+ <attribute name="ExternalId" type="String" />
+ <attribute name="KPICost" type="Float" value="1" format="Currency;Fr.;;KPI;2" />
+ <attribute name="KPIDuration" type="Float" value="1" format="Duration;;;KPI;3">
+ <attribute name="KPIActiveTime" type="Float" value="1" format="Duration;;;KPI;3" />
+ <attribute name="KPIWaitTime" type="Float" value="0" format="Duration;;;KPI;3" />
+ </attribute>
+ </itp:systemDefinedAttributes>
+ <itp:localization>
+ <itp:label lang="unspecified" text="Task B" default="True" />
+ </itp:localization>
+ </extensionElements>
+ </userTask>
+ <userTask id="TestModelTaskC" name="Task C" implementation="unspecified">
+ <extensionElements>
+ <itp:systemDefinedAttributes>
+ <attribute name="Hyperlinks" type="String" value="0 Hyperlinks" />
+ <attribute name="ExternalId" type="String" />
+ <attribute name="KPICost" type="Float" value="1" format="Currency;Fr.;;KPI;2" />
+ <attribute name="KPIDuration" type="Float" value="1" format="Duration;;;KPI;3">
+ <attribute name="KPIActiveTime" type="Float" value="1" format="Duration;;;KPI;3" />
+ <attribute name="KPIWaitTime" type="Float" value="0" format="Duration;;;KPI;3" />
+ </attribute>
+ </itp:systemDefinedAttributes>
+ <itp:localization>
+ <itp:label lang="unspecified" text="Task C" default="True" />
+ </itp:localization>
+ </extensionElements>
+ </userTask>
+ <sequenceFlow id="TestModelSequenceAtoB" sourceRef="TestModelTaskA" targetRef="TestModelTaskB">
+ <extensionElements>
+ <itp:systemDefinedAttributes>
+ <attribute name="Hyperlinks" type="String" value="0 Hyperlinks" />
+ <attribute name="ExternalId" type="String" />
+ </itp:systemDefinedAttributes>
+ <itp:localization>
+ <itp:label lang="unspecified" text="" default="True" />
+ </itp:localization>
+ </extensionElements>
+ </sequenceFlow>
+ <sequenceFlow id="_7fbbf87f-0a87-487b-ad5a-b6eb6cc9c2e2" sourceRef="TestModelTaskB" targetRef="TestModelTaskC">
+ <extensionElements>
+ <itp:systemDefinedAttributes>
+ <attribute name="Hyperlinks" type="String" value="0 Hyperlinks" />
+ <attribute name="ExternalId" type="String" />
+ </itp:systemDefinedAttributes>
+ <itp:localization>
+ <itp:label lang="unspecified" text="" default="True" />
+ </itp:localization>
+ </extensionElements>
+ </sequenceFlow>
+ </process>
+ <bpmndi:BPMNDiagram name="Mein Diagramm (1)" resolution="72">
+ <bpmndi:BPMNPlane id="_1" bpmnElement="_ba2d7f88-eb78-443e-bd7f-ff5a37de8ef4">
+ <bpmndi:BPMNShape id="_AD141325-0FB6-427F-95A7-44DCCC719152" bpmnElement="TestModelPool1" isHorizontal="true" itp:label="Pool 1" itp:elementType="participant">
+ <dc:Bounds x="93.7700645669291" y="79.3700787401575" width="680.088160629921" height="212.59842519685" />
+ <bpmndi:BPMNLabel labelStyle="_ff9cc401-a712-4307-be78-49b8608a04f2">
+ <dc:Bounds x="72" y="165.075590551181" width="14.4" height="41.04" />
+ </bpmndi:BPMNLabel>
+ </bpmndi:BPMNShape>
+ <bpmndi:BPMNShape id="_082CD16B-8C09-4ACD-8552-CF99840DDF21" bpmnElement="TestModelLane1" isHorizontal="true" itp:label="Lane 1" itp:elementType="lane">
+ <dc:Bounds x="93.7700645669291" y="79.3700787401575" width="680.088160629921" height="70.8661417322835" />
+ <bpmndi:BPMNLabel labelStyle="_ff9cc401-a712-4307-be78-49b8608a04f2">
+ <dc:Bounds x="72" y="93.0755905511811" width="14.4" height="43.92" />
+ </bpmndi:BPMNLabel>
+ </bpmndi:BPMNShape>
+ <bpmndi:BPMNShape id="_940DF887-B83D-40F0-ABD1-9F46E1BB1246" bpmnElement="TestModelLane2" isHorizontal="true" itp:label="Lane 2" itp:elementType="lane">
+ <dc:Bounds x="93.7700645669291" y="150.236220472441" width="680.088160629921" height="70.8661417322835" />
+ <bpmndi:BPMNLabel labelStyle="_ff9cc401-a712-4307-be78-49b8608a04f2">
+ <dc:Bounds x="72" y="163.635590551181" width="14.4" height="43.92" />
+ </bpmndi:BPMNLabel>
+ </bpmndi:BPMNShape>
+ <bpmndi:BPMNShape id="_158B096D-D2E6-4C4D-96B3-65F3604554E2" bpmnElement="TestModelTaskA" itp:label="Task A" itp:elementType="userTask">
+ <dc:Bounds x="178.582677165354" y="93.5433070866142" width="85.0393700787402" height="42.5196850393701" />
+ <bpmndi:BPMNLabel labelStyle="_69c7560c-ead4-446b-93a8-b7ca20626ace">
+ <dc:Bounds x="201.96" y="108.195590551181" width="38.16" height="13.68" />
+ </bpmndi:BPMNLabel>
+ </bpmndi:BPMNShape>
+ <bpmndi:BPMNShape id="_2FE1C5C0-6337-4A71-AE6C-8E035FC2BBFC" bpmnElement="TestModelTaskB" itp:label="Task B" itp:elementType="userTask">
+ <dc:Bounds x="311.811023622047" y="164.409448818898" width="85.0393700787402" height="42.5196850393701" />
+ <bpmndi:BPMNLabel labelStyle="_69c7560c-ead4-446b-93a8-b7ca20626ace">
+ <dc:Bounds x="335.16" y="178.755590551181" width="38.16" height="13.68" />
+ </bpmndi:BPMNLabel>
+ </bpmndi:BPMNShape>
+ <bpmndi:BPMNShape id="_CE06FB34-8947-46B1-A7D1-512249FEFF1E" bpmnElement="TestModelTaskC" itp:label="Task C" itp:elementType="userTask">
+ <dc:Bounds x="445.03937007874" y="238.110236220472" width="85.0393700787402" height="42.5196850393701" />
+ <bpmndi:BPMNLabel labelStyle="_69c7560c-ead4-446b-93a8-b7ca20626ace">
+ <dc:Bounds x="468.36" y="252.195590551181" width="38.16" height="13.68" />
+ </bpmndi:BPMNLabel>
+ </bpmndi:BPMNShape>
+ <bpmndi:BPMNEdge id="_C29998D6-EA29-4212-9FB3-62FA003F4951" bpmnElement="TestModelSequenceAtoB" itp:label="(unbenannt)" itp:elementType="sequenceFlow">
+ <di:waypoint x="263.622047244095" y="114.803149606299" />
+ <di:waypoint x="274.251968503937" y="114.803149606299" />
+ <di:waypoint x="274.251968503937" y="185.669291338583" />
+ <di:waypoint x="311.811023622047" y="185.669291338583" />
+ <bpmndi:BPMNLabel labelStyle="_96eaa0fb-7c0b-4af2-8497-9b3c1f6a7a14">
+ <dc:Bounds x="270.36" y="156.795590551181" width="7.92" height="17.28" />
+ </bpmndi:BPMNLabel>
+ </bpmndi:BPMNEdge>
+ <bpmndi:BPMNEdge id="_73D93602-6735-4C7D-875A-B45252C4E8FE" bpmnElement="_7fbbf87f-0a87-487b-ad5a-b6eb6cc9c2e2" itp:label="(unbenannt)" itp:elementType="sequenceFlow">
+ <di:waypoint x="396.850393700787" y="185.669291338583" />
+ <di:waypoint x="407.48031496063" y="185.669291338583" />
+ <di:waypoint x="407.48031496063" y="259.370078740158" />
+ <di:waypoint x="445.03937007874" y="259.370078740158" />
+ <bpmndi:BPMNLabel labelStyle="_96eaa0fb-7c0b-4af2-8497-9b3c1f6a7a14">
+ <dc:Bounds x="403.56" y="229.515590551181" width="7.92" height="17.28" />
+ </bpmndi:BPMNLabel>
+ </bpmndi:BPMNEdge>
+ </bpmndi:BPMNPlane>
+ <bpmndi:BPMNLabelStyle id="_ff9cc401-a712-4307-be78-49b8608a04f2">
+ <dc:Font name="Arial" size="12" isBold="false" isItalic="false" isUnderline="false" isStrikeThrough="false" />
+ </bpmndi:BPMNLabelStyle>
+ <bpmndi:BPMNLabelStyle id="_69c7560c-ead4-446b-93a8-b7ca20626ace">
+ <dc:Font name="Arial" size="10" isBold="false" isItalic="false" isUnderline="false" isStrikeThrough="false" />
+ </bpmndi:BPMNLabelStyle>
+ <bpmndi:BPMNLabelStyle id="_96eaa0fb-7c0b-4af2-8497-9b3c1f6a7a14">
+ <dc:Font name="Arial" size="8" isBold="false" isItalic="false" isUnderline="false" isStrikeThrough="false" />
+ </bpmndi:BPMNLabelStyle>
+ </bpmndi:BPMNDiagram>
+</definitions>
\ No newline at end of file diff --git a/model/org.eclipse.stardust.model.bpmn2.transform/src/test/resources/models/bpmn/Pool.bpmn b/model/org.eclipse.stardust.model.bpmn2.transform/src/test/resources/models/bpmn/Pool.bpmn new file mode 100644 index 0000000..10d4e44 --- a/dev/null +++ b/model/org.eclipse.stardust.model.bpmn2.transform/src/test/resources/models/bpmn/Pool.bpmn @@ -0,0 +1,36 @@ +<?xml version="1.0" encoding="utf-8"?>
+<!--Created by Process Modeler 5 SR7 for Microsoft Visio (http://www.itp-commerce.com)-->
+<definitions targetNamespace="http://www.itp-commerce.com" xmlns="http://www.omg.org/spec/BPMN/20100524/MODEL" xmlns:itp="http://www.itp-commerce.com/BPMN2.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.omg.org/spec/BPMN/20100524/MODEL schemas/BPMN20.xsd" exporter="Process Modeler 5 for Microsoft Visio" exporterVersion="5.2769.13758 SR7" itp:name="Mein Diagramm" itp:version="1.0" itp:author="simon nikles" itp:creationDate="28.06.2012 09:29:58" itp:modificationDate="28.06.2012 14:38:20" itp:createdWithVersion="5.2769.13758 SR7" itp:conformanceSubClass="Full" id="_9be861c8-bb4a-4f30-a848-d7f4eb178051" xmlns:bpmndi="http://www.omg.org/spec/BPMN/20100524/DI" xmlns:di="http://www.omg.org/spec/DD/20100524/DI" xmlns:dc="http://www.omg.org/spec/DD/20100524/DC">
+ <collaboration id="_ba2d7f88-eb78-443e-bd7f-ff5a37de8ef4">
+ <participant id="TestModelPool1" name="Pool1">
+ <documentation>Documentation Pool 1</documentation>
+ <extensionElements>
+ <itp:systemDefinedAttributes>
+ <attribute name="Hyperlinks" type="String" value="0 Hyperlinks" />
+ <attribute name="ExternalId" type="String" />
+ <attribute name="KPICost" type="Float" value="1" format="Currency;Fr.;;KPI;2" />
+ <attribute name="KPIDuration" type="Float" value="1" format="Duration;;;KPI;3">
+ <attribute name="KPIActiveTime" type="Float" value="1" format="Duration;;;KPI;3" />
+ <attribute name="KPIWaitTime" type="Float" value="0" format="Duration;;;KPI;3" />
+ </attribute>
+ </itp:systemDefinedAttributes>
+ <itp:localization>
+ <itp:label lang="unspecified" text="Pool1" default="True" />
+ </itp:localization>
+ </extensionElements>
+ </participant>
+ </collaboration>
+ <bpmndi:BPMNDiagram name="Mein Diagramm (1)" resolution="72">
+ <bpmndi:BPMNPlane id="_1" bpmnElement="_ba2d7f88-eb78-443e-bd7f-ff5a37de8ef4">
+ <bpmndi:BPMNShape id="_F6A52A95-CAE2-4995-944A-6C40C574E213" bpmnElement="TestModelPool1" isHorizontal="true" itp:label="Pool1" itp:elementType="participant">
+ <dc:Bounds x="79.5968362204724" y="73.7007874015748" width="680.088160629921" height="212.59842519685" />
+ <bpmndi:BPMNLabel labelStyle="_4b9e53cf-adcd-4387-8329-e69bc65b30c5">
+ <dc:Bounds x="58.32" y="160.755590551181" width="14.4" height="38.16" />
+ </bpmndi:BPMNLabel>
+ </bpmndi:BPMNShape>
+ </bpmndi:BPMNPlane>
+ <bpmndi:BPMNLabelStyle id="_4b9e53cf-adcd-4387-8329-e69bc65b30c5">
+ <dc:Font name="Arial" size="12" isBold="false" isItalic="false" isUnderline="false" isStrikeThrough="false" />
+ </bpmndi:BPMNLabelStyle>
+ </bpmndi:BPMNDiagram>
+</definitions>
\ No newline at end of file diff --git a/model/org.eclipse.stardust.model.bpmn2.transform/src/test/resources/models/bpmn/StartEventMessage.bpmn b/model/org.eclipse.stardust.model.bpmn2.transform/src/test/resources/models/bpmn/StartEventMessage.bpmn new file mode 100644 index 0000000..b2ba9a5 --- a/dev/null +++ b/model/org.eclipse.stardust.model.bpmn2.transform/src/test/resources/models/bpmn/StartEventMessage.bpmn @@ -0,0 +1,46 @@ +<?xml version="1.0" encoding="utf-8"?>
+<!--Created by Process Modeler 5 SR7 for Microsoft Visio (http://www.itp-commerce.com)-->
+<definitions targetNamespace="http://www.itp-commerce.com" xmlns="http://www.omg.org/spec/BPMN/20100524/MODEL" xmlns:itp="http://www.itp-commerce.com/BPMN2.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.omg.org/spec/BPMN/20100524/MODEL schemas/BPMN20.xsd" exporter="Process Modeler 5 for Microsoft Visio" exporterVersion="5.2769.13758 SR7" itp:name="Mein Diagramm" itp:version="1.0" itp:author="simon nikles" itp:creationDate="28.06.2012 09:29:58" itp:modificationDate="28.06.2012 09:35:36" itp:createdWithVersion="5.2769.13758 SR7" itp:conformanceSubClass="Full" id="_9be861c8-bb4a-4f30-a848-d7f4eb178051" xmlns:bpmndi="http://www.omg.org/spec/BPMN/20100524/DI" xmlns:di="http://www.omg.org/spec/DD/20100524/DI" xmlns:dc="http://www.omg.org/spec/DD/20100524/DC">
+ <process id="_a1d182de-7971-4662-9009-cab25f298bdd" name="Hauptprozess" processType="None">
+ <extensionElements>
+ <itp:systemDefinedAttributes>
+ <attribute name="Hyperlinks" type="String" value="0 Hyperlinks" />
+ <attribute name="ExternalId" type="String" />
+ <attribute name="KPICost" type="Float" value="1" format="Currency;Fr.;;KPI;2" />
+ <attribute name="KPIDuration" type="Float" value="1" format="Duration;;;KPI;3">
+ <attribute name="KPIActiveTime" type="Float" value="1" format="Duration;;;KPI;3" />
+ <attribute name="KPIWaitTime" type="Float" value="0" format="Duration;;;KPI;3" />
+ </attribute>
+ </itp:systemDefinedAttributes>
+ <itp:localization>
+ <itp:label lang="unspecified" text="Hauptprozess" default="True" />
+ </itp:localization>
+ </extensionElements>
+ <startEvent id="TestModelStartEventId" name="MessageStartEvent">
+ <documentation>Documentation: Message Start Event</documentation>
+ <extensionElements>
+ <itp:systemDefinedAttributes>
+ <attribute name="Hyperlinks" type="String" value="0 Hyperlinks" />
+ <attribute name="ExternalId" type="String" />
+ </itp:systemDefinedAttributes>
+ <itp:localization>
+ <itp:label lang="unspecified" text="MessageStartEvent" default="True" />
+ </itp:localization>
+ </extensionElements>
+ <messageEventDefinition />
+ </startEvent>
+ </process>
+ <bpmndi:BPMNDiagram name="Mein Diagramm (1)" resolution="72">
+ <bpmndi:BPMNPlane id="_1" bpmnElement="_a1d182de-7971-4662-9009-cab25f298bdd">
+ <bpmndi:BPMNShape id="_B962DEFE-088F-483D-8CDE-4B5A8CDDE82E" bpmnElement="TestModelStartEventId" itp:label="MessageStartEvent" itp:elementType="startEvent">
+ <dc:Bounds x="76.5354330708661" y="119.055118110236" width="17.007874015748" height="17.007874015748" />
+ <bpmndi:BPMNLabel labelStyle="_b132c033-84fd-4440-92e8-507dded792f2">
+ <dc:Bounds x="30" y="159.629653930664" width="25.4134788513184" height="3.74070143699646" />
+ </bpmndi:BPMNLabel>
+ </bpmndi:BPMNShape>
+ </bpmndi:BPMNPlane>
+ <bpmndi:BPMNLabelStyle id="_b132c033-84fd-4440-92e8-507dded792f2">
+ <dc:Font name="Arial" size="8" isBold="false" isItalic="false" isUnderline="false" isStrikeThrough="false" />
+ </bpmndi:BPMNLabelStyle>
+ </bpmndi:BPMNDiagram>
+</definitions>
\ No newline at end of file diff --git a/model/org.eclipse.stardust.model.bpmn2.transform/src/test/resources/models/bpmn/StartEventNone.bpmn b/model/org.eclipse.stardust.model.bpmn2.transform/src/test/resources/models/bpmn/StartEventNone.bpmn new file mode 100644 index 0000000..59aeb93 --- a/dev/null +++ b/model/org.eclipse.stardust.model.bpmn2.transform/src/test/resources/models/bpmn/StartEventNone.bpmn @@ -0,0 +1,45 @@ +<?xml version="1.0" encoding="utf-8"?>
+<!--Created by Process Modeler 5 SR7 for Microsoft Visio (http://www.itp-commerce.com)-->
+<definitions targetNamespace="http://www.itp-commerce.com" xmlns="http://www.omg.org/spec/BPMN/20100524/MODEL" xmlns:itp="http://www.itp-commerce.com/BPMN2.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.omg.org/spec/BPMN/20100524/MODEL schemas/BPMN20.xsd" exporter="Process Modeler 5 for Microsoft Visio" exporterVersion="5.2769.13758 SR7" itp:name="Mein Diagramm" itp:version="1.0" itp:author="simon nikles" itp:creationDate="28.06.2012 09:29:58" itp:modificationDate="28.06.2012 09:34:58" itp:createdWithVersion="5.2769.13758 SR7" itp:conformanceSubClass="Full" id="_9be861c8-bb4a-4f30-a848-d7f4eb178051" xmlns:bpmndi="http://www.omg.org/spec/BPMN/20100524/DI" xmlns:di="http://www.omg.org/spec/DD/20100524/DI" xmlns:dc="http://www.omg.org/spec/DD/20100524/DC">
+ <process id="_a1d182de-7971-4662-9009-cab25f298bdd" name="Hauptprozess" processType="None">
+ <extensionElements>
+ <itp:systemDefinedAttributes>
+ <attribute name="Hyperlinks" type="String" value="0 Hyperlinks" />
+ <attribute name="ExternalId" type="String" />
+ <attribute name="KPICost" type="Float" value="1" format="Currency;Fr.;;KPI;2" />
+ <attribute name="KPIDuration" type="Float" value="1" format="Duration;;;KPI;3">
+ <attribute name="KPIActiveTime" type="Float" value="1" format="Duration;;;KPI;3" />
+ <attribute name="KPIWaitTime" type="Float" value="0" format="Duration;;;KPI;3" />
+ </attribute>
+ </itp:systemDefinedAttributes>
+ <itp:localization>
+ <itp:label lang="unspecified" text="Hauptprozess" default="True" />
+ </itp:localization>
+ </extensionElements>
+ <startEvent id="TestModelStartEventId" name="NoneStartEvent">
+ <documentation>Documentation: None Start Event</documentation>
+ <extensionElements>
+ <itp:systemDefinedAttributes>
+ <attribute name="Hyperlinks" type="String" value="0 Hyperlinks" />
+ <attribute name="ExternalId" type="String" />
+ </itp:systemDefinedAttributes>
+ <itp:localization>
+ <itp:label lang="unspecified" text="NoneStartEvent" default="True" />
+ </itp:localization>
+ </extensionElements>
+ </startEvent>
+ </process>
+ <bpmndi:BPMNDiagram name="Mein Diagramm (1)" resolution="72">
+ <bpmndi:BPMNPlane id="_1" bpmnElement="_a1d182de-7971-4662-9009-cab25f298bdd">
+ <bpmndi:BPMNShape id="_B962DEFE-088F-483D-8CDE-4B5A8CDDE82E" bpmnElement="TestModelStartEventId" itp:label="NoneStartEvent" itp:elementType="startEvent">
+ <dc:Bounds x="76.5354330708661" y="119.055118110236" width="17.007874015748" height="17.007874015748" />
+ <bpmndi:BPMNLabel labelStyle="_e4b37c68-f7cd-4063-94b8-f58ac85d9d8a">
+ <dc:Bounds x="30" y="159.629653930664" width="20.7088241577148" height="3.74070143699646" />
+ </bpmndi:BPMNLabel>
+ </bpmndi:BPMNShape>
+ </bpmndi:BPMNPlane>
+ <bpmndi:BPMNLabelStyle id="_e4b37c68-f7cd-4063-94b8-f58ac85d9d8a">
+ <dc:Font name="Arial" size="8" isBold="false" isItalic="false" isUnderline="false" isStrikeThrough="false" />
+ </bpmndi:BPMNLabelStyle>
+ </bpmndi:BPMNDiagram>
+</definitions>
\ No newline at end of file diff --git a/model/org.eclipse.stardust.model.bpmn2.transform/src/test/resources/models/bpmn/StartEventTimer.bpmn b/model/org.eclipse.stardust.model.bpmn2.transform/src/test/resources/models/bpmn/StartEventTimer.bpmn new file mode 100644 index 0000000..5fd17ad --- a/dev/null +++ b/model/org.eclipse.stardust.model.bpmn2.transform/src/test/resources/models/bpmn/StartEventTimer.bpmn @@ -0,0 +1,48 @@ +<?xml version="1.0" encoding="utf-8"?>
+<!--Created by Process Modeler 5 SR7 for Microsoft Visio (http://www.itp-commerce.com)-->
+<definitions targetNamespace="http://www.itp-commerce.com" xmlns="http://www.omg.org/spec/BPMN/20100524/MODEL" xmlns:itp="http://www.itp-commerce.com/BPMN2.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.omg.org/spec/BPMN/20100524/MODEL schemas/BPMN20.xsd" exporter="Process Modeler 5 for Microsoft Visio" exporterVersion="5.2769.13758 SR7" itp:name="Mein Diagramm" itp:version="1.0" itp:author="simon nikles" itp:creationDate="28.06.2012 09:29:58" itp:modificationDate="28.06.2012 09:37:13" itp:createdWithVersion="5.2769.13758 SR7" itp:conformanceSubClass="Full" id="_9be861c8-bb4a-4f30-a848-d7f4eb178051" xmlns:bpmndi="http://www.omg.org/spec/BPMN/20100524/DI" xmlns:di="http://www.omg.org/spec/DD/20100524/DI" xmlns:dc="http://www.omg.org/spec/DD/20100524/DC">
+ <process id="_a1d182de-7971-4662-9009-cab25f298bdd" name="Hauptprozess" processType="None">
+ <extensionElements>
+ <itp:systemDefinedAttributes>
+ <attribute name="Hyperlinks" type="String" value="0 Hyperlinks" />
+ <attribute name="ExternalId" type="String" />
+ <attribute name="KPICost" type="Float" value="1" format="Currency;Fr.;;KPI;2" />
+ <attribute name="KPIDuration" type="Float" value="1" format="Duration;;;KPI;3">
+ <attribute name="KPIActiveTime" type="Float" value="1" format="Duration;;;KPI;3" />
+ <attribute name="KPIWaitTime" type="Float" value="0" format="Duration;;;KPI;3" />
+ </attribute>
+ </itp:systemDefinedAttributes>
+ <itp:localization>
+ <itp:label lang="unspecified" text="Hauptprozess" default="True" />
+ </itp:localization>
+ </extensionElements>
+ <startEvent id="TestModelStartEventId" name="TimerStartEvent">
+ <documentation>Documentation: Timer Start Event</documentation>
+ <extensionElements>
+ <itp:systemDefinedAttributes>
+ <attribute name="Hyperlinks" type="String" value="0 Hyperlinks" />
+ <attribute name="ExternalId" type="String" />
+ </itp:systemDefinedAttributes>
+ <itp:localization>
+ <itp:label lang="unspecified" text="TimerStartEvent" default="True" />
+ </itp:localization>
+ </extensionElements>
+ <timerEventDefinition>
+ <timeCycle>CycleValue</timeCycle>
+ </timerEventDefinition>
+ </startEvent>
+ </process>
+ <bpmndi:BPMNDiagram name="Mein Diagramm (1)" resolution="72">
+ <bpmndi:BPMNPlane id="_1" bpmnElement="_a1d182de-7971-4662-9009-cab25f298bdd">
+ <bpmndi:BPMNShape id="_B962DEFE-088F-483D-8CDE-4B5A8CDDE82E" bpmnElement="TestModelStartEventId" itp:label="TimerStartEvent" itp:elementType="startEvent">
+ <dc:Bounds x="76.5354330708661" y="119.055118110236" width="17.007874015748" height="17.007874015748" />
+ <bpmndi:BPMNLabel labelStyle="_d0ad1082-aeb8-4706-b536-8c1fb9156842">
+ <dc:Bounds x="30" y="159.629653930664" width="21.1732330322266" height="3.74070143699646" />
+ </bpmndi:BPMNLabel>
+ </bpmndi:BPMNShape>
+ </bpmndi:BPMNPlane>
+ <bpmndi:BPMNLabelStyle id="_d0ad1082-aeb8-4706-b536-8c1fb9156842">
+ <dc:Font name="Arial" size="8" isBold="false" isItalic="false" isUnderline="false" isStrikeThrough="false" />
+ </bpmndi:BPMNLabelStyle>
+ </bpmndi:BPMNDiagram>
+</definitions>
\ No newline at end of file diff --git a/model/org.eclipse.stardust.model.bpmn2.transform/src/test/resources/models/bpmn/UserTask.bpmn b/model/org.eclipse.stardust.model.bpmn2.transform/src/test/resources/models/bpmn/UserTask.bpmn new file mode 100644 index 0000000..bf98779 --- a/dev/null +++ b/model/org.eclipse.stardust.model.bpmn2.transform/src/test/resources/models/bpmn/UserTask.bpmn @@ -0,0 +1,49 @@ +<?xml version="1.0" encoding="utf-8"?>
+<!--Created by Process Modeler 5 SR7 for Microsoft Visio (http://www.itp-commerce.com)-->
+<definitions targetNamespace="http://www.itp-commerce.com" xmlns="http://www.omg.org/spec/BPMN/20100524/MODEL" xmlns:itp="http://www.itp-commerce.com/BPMN2.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.omg.org/spec/BPMN/20100524/MODEL schemas/BPMN20.xsd" exporter="Process Modeler 5 for Microsoft Visio" exporterVersion="5.2769.13758 SR7" itp:name="Mein Diagramm" itp:version="1.0" itp:author="simon nikles" itp:creationDate="28.06.2012 09:29:58" itp:modificationDate="28.06.2012 13:54:38" itp:createdWithVersion="5.2769.13758 SR7" itp:conformanceSubClass="Full" id="_9be861c8-bb4a-4f30-a848-d7f4eb178051" xmlns:bpmndi="http://www.omg.org/spec/BPMN/20100524/DI" xmlns:di="http://www.omg.org/spec/DD/20100524/DI" xmlns:dc="http://www.omg.org/spec/DD/20100524/DC">
+ <process id="_a1d182de-7971-4662-9009-cab25f298bdd" name="Hauptprozess" processType="None">
+ <extensionElements>
+ <itp:systemDefinedAttributes>
+ <attribute name="Hyperlinks" type="String" value="0 Hyperlinks" />
+ <attribute name="ExternalId" type="String" />
+ <attribute name="KPICost" type="Float" value="1" format="Currency;Fr.;;KPI;2" />
+ <attribute name="KPIDuration" type="Float" value="1" format="Duration;;;KPI;3">
+ <attribute name="KPIActiveTime" type="Float" value="1" format="Duration;;;KPI;3" />
+ <attribute name="KPIWaitTime" type="Float" value="0" format="Duration;;;KPI;3" />
+ </attribute>
+ </itp:systemDefinedAttributes>
+ <itp:localization>
+ <itp:label lang="unspecified" text="Hauptprozess" default="True" />
+ </itp:localization>
+ </extensionElements>
+ <userTask id="TestModelTaskA" name="Task A" implementation="unspecified">
+ <extensionElements>
+ <itp:systemDefinedAttributes>
+ <attribute name="Hyperlinks" type="String" value="0 Hyperlinks" />
+ <attribute name="ExternalId" type="String" />
+ <attribute name="KPICost" type="Float" value="1" format="Currency;Fr.;;KPI;2" />
+ <attribute name="KPIDuration" type="Float" value="1" format="Duration;;;KPI;3">
+ <attribute name="KPIActiveTime" type="Float" value="1" format="Duration;;;KPI;3" />
+ <attribute name="KPIWaitTime" type="Float" value="0" format="Duration;;;KPI;3" />
+ </attribute>
+ </itp:systemDefinedAttributes>
+ <itp:localization>
+ <itp:label lang="unspecified" text="Task A" default="True" />
+ </itp:localization>
+ </extensionElements>
+ </userTask>
+ </process>
+ <bpmndi:BPMNDiagram name="Mein Diagramm (1)" resolution="72">
+ <bpmndi:BPMNPlane id="_1" bpmnElement="_a1d182de-7971-4662-9009-cab25f298bdd">
+ <bpmndi:BPMNShape id="_9758DD46-72C0-4A6C-BE0E-7B5ADC5EEFDF" bpmnElement="TestModelTaskA" itp:label="UserTask" itp:elementType="userTask">
+ <dc:Bounds x="116.220472440945" y="126.141732283465" width="85.0393700787402" height="42.5196850393701" />
+ <bpmndi:BPMNLabel labelStyle="_32afcc3f-70c6-4c78-931e-fbb1d248dce5">
+ <dc:Bounds x="133.56" y="140.595590551181" width="49.68" height="13.68" />
+ </bpmndi:BPMNLabel>
+ </bpmndi:BPMNShape>
+ </bpmndi:BPMNPlane>
+ <bpmndi:BPMNLabelStyle id="_32afcc3f-70c6-4c78-931e-fbb1d248dce5">
+ <dc:Font name="Arial" size="10" isBold="false" isItalic="false" isUnderline="false" isStrikeThrough="false" />
+ </bpmndi:BPMNLabelStyle>
+ </bpmndi:BPMNDiagram>
+</definitions>
\ No newline at end of file diff --git a/model/org.eclipse.stardust.model.bpmn2.transform/src/test/resources/models/bpmn/XORGatewaysSingle.bpmn b/model/org.eclipse.stardust.model.bpmn2.transform/src/test/resources/models/bpmn/XORGatewaysSingle.bpmn new file mode 100644 index 0000000..36ecfda --- a/dev/null +++ b/model/org.eclipse.stardust.model.bpmn2.transform/src/test/resources/models/bpmn/XORGatewaysSingle.bpmn @@ -0,0 +1,325 @@ +<?xml version="1.0" encoding="utf-8"?>
+<!--Created by Process Modeler 5 SR7 for Microsoft Visio (http://www.itp-commerce.com)-->
+<definitions targetNamespace="http://www.itp-commerce.com" xmlns="http://www.omg.org/spec/BPMN/20100524/MODEL" xmlns:itp="http://www.itp-commerce.com/BPMN2.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.omg.org/spec/BPMN/20100524/MODEL schemas/BPMN20.xsd" exporter="Process Modeler 5 for Microsoft Visio" exporterVersion="5.2769.13758 SR7" itp:name="Mein Diagramm" itp:version="1.0" itp:author="simon nikles" itp:creationDate="27.06.2012 18:05:19" itp:modificationDate="28.06.2012 15:37:00" itp:createdWithVersion="5.2769.13758 SR7" itp:conformanceSubClass="Full" id="_3e3f9919-88b7-4628-ab18-e5ca675dbc64" xmlns:bpmndi="http://www.omg.org/spec/BPMN/20100524/DI" xmlns:di="http://www.omg.org/spec/DD/20100524/DI" xmlns:dc="http://www.omg.org/spec/DD/20100524/DC">
+ <process id="_7242afea-9c6c-4892-9875-f6390346905c" name="Hauptprozess" processType="None">
+ <extensionElements>
+ <itp:systemDefinedAttributes>
+ <attribute name="Hyperlinks" type="String" value="0 Hyperlinks" />
+ <attribute name="ExternalId" type="String" />
+ <attribute name="KPICost" type="Float" value="1" format="Currency;Fr.;;KPI;2" />
+ <attribute name="KPIDuration" type="Float" value="1" format="Duration;;;KPI;3">
+ <attribute name="KPIActiveTime" type="Float" value="1" format="Duration;;;KPI;3" />
+ <attribute name="KPIWaitTime" type="Float" value="0" format="Duration;;;KPI;3" />
+ </attribute>
+ </itp:systemDefinedAttributes>
+ <itp:localization>
+ <itp:label lang="unspecified" text="Hauptprozess" default="True" />
+ </itp:localization>
+ </extensionElements>
+ <exclusiveGateway id="TestModelXORSplitGateway" name="SplitXOrGate" gatewayDirection="Diverging" default="TestModelDefaultSequenceFlow">
+ <extensionElements>
+ <itp:systemDefinedAttributes>
+ <attribute name="Hyperlinks" type="String" value="0 Hyperlinks" />
+ <attribute name="ExternalId" type="String" />
+ </itp:systemDefinedAttributes>
+ <itp:localization>
+ <itp:label lang="unspecified" text="SplitXOrGate" default="True" />
+ </itp:localization>
+ </extensionElements>
+ </exclusiveGateway>
+ <exclusiveGateway id="TestModelXORJoinGateway" name="JoinXOrGate" gatewayDirection="Converging">
+ <extensionElements>
+ <itp:systemDefinedAttributes>
+ <attribute name="Hyperlinks" type="String" value="0 Hyperlinks" />
+ <attribute name="ExternalId" type="String" />
+ </itp:systemDefinedAttributes>
+ <itp:localization>
+ <itp:label lang="unspecified" text="JoinXOrGate" default="True" />
+ </itp:localization>
+ </extensionElements>
+ </exclusiveGateway>
+ <sequenceFlow id="_cb8558bb-fc7f-48d9-89fe-d2df6e37bbd2" sourceRef="TestModelTaskA" targetRef="TestModelXORSplitGateway">
+ <extensionElements>
+ <itp:systemDefinedAttributes>
+ <attribute name="Hyperlinks" type="String" value="0 Hyperlinks" />
+ <attribute name="ExternalId" type="String" />
+ </itp:systemDefinedAttributes>
+ <itp:localization>
+ <itp:label lang="unspecified" text="" default="True" />
+ </itp:localization>
+ </extensionElements>
+ </sequenceFlow>
+ <sequenceFlow id="TestModelConditionalSequenceFlow1" name="Condition to B" sourceRef="TestModelXORSplitGateway" targetRef="TestModelTaskB">
+ <extensionElements>
+ <itp:systemDefinedAttributes>
+ <attribute name="Hyperlinks" type="String" value="0 Hyperlinks" />
+ <attribute name="ExternalId" type="String" />
+ </itp:systemDefinedAttributes>
+ <itp:localization>
+ <itp:label lang="unspecified" text="Condition to B" default="True" />
+ </itp:localization>
+ </extensionElements>
+ <conditionExpression><documentation>test='Condition to B'</documentation></conditionExpression>
+ </sequenceFlow>
+ <sequenceFlow id="_b6a578ba-d556-4867-ab1d-31d05a33a35e" sourceRef="TestModelXORSplitGateway" targetRef="TestModelTaskC">
+ <extensionElements>
+ <itp:systemDefinedAttributes>
+ <attribute name="Hyperlinks" type="String" value="0 Hyperlinks" />
+ <attribute name="ExternalId" type="String" />
+ </itp:systemDefinedAttributes>
+ <itp:localization>
+ <itp:label lang="unspecified" text="" default="True" />
+ </itp:localization>
+ </extensionElements>
+ <conditionExpression>_undefined</conditionExpression>
+ </sequenceFlow>
+ <sequenceFlow id="TestModelDefaultSequenceFlow" sourceRef="TestModelXORSplitGateway" targetRef="TestModelTaskD">
+ <extensionElements>
+ <itp:systemDefinedAttributes>
+ <attribute name="Hyperlinks" type="String" value="0 Hyperlinks" />
+ <attribute name="ExternalId" type="String" />
+ </itp:systemDefinedAttributes>
+ <itp:localization>
+ <itp:label lang="unspecified" text="" default="True" />
+ </itp:localization>
+ </extensionElements>
+ </sequenceFlow>
+ <sequenceFlow id="_fb92c3da-c942-4350-bc9f-1b87e5f70023" sourceRef="TestModelTaskB" targetRef="TestModelXORJoinGateway">
+ <extensionElements>
+ <itp:systemDefinedAttributes>
+ <attribute name="Hyperlinks" type="String" value="0 Hyperlinks" />
+ <attribute name="ExternalId" type="String" />
+ </itp:systemDefinedAttributes>
+ <itp:localization>
+ <itp:label lang="unspecified" text="" default="True" />
+ </itp:localization>
+ </extensionElements>
+ </sequenceFlow>
+ <sequenceFlow id="_64cf5e6a-18c6-4689-ba93-2865f67c16d6" sourceRef="TestModelTaskC" targetRef="TestModelXORJoinGateway">
+ <extensionElements>
+ <itp:systemDefinedAttributes>
+ <attribute name="Hyperlinks" type="String" value="0 Hyperlinks" />
+ <attribute name="ExternalId" type="String" />
+ </itp:systemDefinedAttributes>
+ <itp:localization>
+ <itp:label lang="unspecified" text="" default="True" />
+ </itp:localization>
+ </extensionElements>
+ </sequenceFlow>
+ <sequenceFlow id="_5af8c969-22a2-485a-8356-8af176a7b3d2" sourceRef="TestModelTaskD" targetRef="TestModelXORJoinGateway">
+ <extensionElements>
+ <itp:systemDefinedAttributes>
+ <attribute name="Hyperlinks" type="String" value="0 Hyperlinks" />
+ <attribute name="ExternalId" type="String" />
+ </itp:systemDefinedAttributes>
+ <itp:localization>
+ <itp:label lang="unspecified" text="" default="True" />
+ </itp:localization>
+ </extensionElements>
+ </sequenceFlow>
+ <sequenceFlow id="_53472ed0-6bda-4cc3-8119-feb7e93b0ddb" sourceRef="TestModelXORJoinGateway" targetRef="TestModelTaskE">
+ <extensionElements>
+ <itp:systemDefinedAttributes>
+ <attribute name="Hyperlinks" type="String" value="0 Hyperlinks" />
+ <attribute name="ExternalId" type="String" />
+ </itp:systemDefinedAttributes>
+ <itp:localization>
+ <itp:label lang="unspecified" text="" default="True" />
+ </itp:localization>
+ </extensionElements>
+ </sequenceFlow>
+ <userTask id="TestModelTaskA" name="a" implementation="unspecified">
+ <extensionElements>
+ <itp:systemDefinedAttributes>
+ <attribute name="Hyperlinks" type="String" value="0 Hyperlinks" />
+ <attribute name="ExternalId" type="String" />
+ <attribute name="KPICost" type="Float" value="1" format="Currency;Fr.;;KPI;2" />
+ <attribute name="KPIDuration" type="Float" value="1" format="Duration;;;KPI;3">
+ <attribute name="KPIActiveTime" type="Float" value="1" format="Duration;;;KPI;3" />
+ <attribute name="KPIWaitTime" type="Float" value="0" format="Duration;;;KPI;3" />
+ </attribute>
+ </itp:systemDefinedAttributes>
+ <itp:localization>
+ <itp:label lang="unspecified" text="a" default="True" />
+ </itp:localization>
+ </extensionElements>
+ </userTask>
+ <userTask id="TestModelTaskB" name="b" implementation="unspecified">
+ <extensionElements>
+ <itp:systemDefinedAttributes>
+ <attribute name="Hyperlinks" type="String" value="0 Hyperlinks" />
+ <attribute name="ExternalId" type="String" />
+ <attribute name="KPICost" type="Float" value="1" format="Currency;Fr.;;KPI;2" />
+ <attribute name="KPIDuration" type="Float" value="1" format="Duration;;;KPI;3">
+ <attribute name="KPIActiveTime" type="Float" value="1" format="Duration;;;KPI;3" />
+ <attribute name="KPIWaitTime" type="Float" value="0" format="Duration;;;KPI;3" />
+ </attribute>
+ </itp:systemDefinedAttributes>
+ <itp:localization>
+ <itp:label lang="unspecified" text="b" default="True" />
+ </itp:localization>
+ </extensionElements>
+ </userTask>
+ <userTask id="TestModelTaskC" name="c" implementation="unspecified">
+ <extensionElements>
+ <itp:systemDefinedAttributes>
+ <attribute name="Hyperlinks" type="String" value="0 Hyperlinks" />
+ <attribute name="ExternalId" type="String" />
+ <attribute name="KPICost" type="Float" value="1" format="Currency;Fr.;;KPI;2" />
+ <attribute name="KPIDuration" type="Float" value="1" format="Duration;;;KPI;3">
+ <attribute name="KPIActiveTime" type="Float" value="1" format="Duration;;;KPI;3" />
+ <attribute name="KPIWaitTime" type="Float" value="0" format="Duration;;;KPI;3" />
+ </attribute>
+ </itp:systemDefinedAttributes>
+ <itp:localization>
+ <itp:label lang="unspecified" text="c" default="True" />
+ </itp:localization>
+ </extensionElements>
+ </userTask>
+ <userTask id="TestModelTaskD" name="d" implementation="unspecified">
+ <extensionElements>
+ <itp:systemDefinedAttributes>
+ <attribute name="Hyperlinks" type="String" value="0 Hyperlinks" />
+ <attribute name="ExternalId" type="String" />
+ <attribute name="KPICost" type="Float" value="1" format="Currency;Fr.;;KPI;2" />
+ <attribute name="KPIDuration" type="Float" value="1" format="Duration;;;KPI;3">
+ <attribute name="KPIActiveTime" type="Float" value="1" format="Duration;;;KPI;3" />
+ <attribute name="KPIWaitTime" type="Float" value="0" format="Duration;;;KPI;3" />
+ </attribute>
+ </itp:systemDefinedAttributes>
+ <itp:localization>
+ <itp:label lang="unspecified" text="d" default="True" />
+ </itp:localization>
+ </extensionElements>
+ </userTask>
+ <userTask id="TestModelTaskE" name="e" implementation="unspecified">
+ <extensionElements>
+ <itp:systemDefinedAttributes>
+ <attribute name="Hyperlinks" type="String" value="0 Hyperlinks" />
+ <attribute name="ExternalId" type="String" />
+ <attribute name="KPICost" type="Float" value="1" format="Currency;Fr.;;KPI;2" />
+ <attribute name="KPIDuration" type="Float" value="1" format="Duration;;;KPI;3">
+ <attribute name="KPIActiveTime" type="Float" value="1" format="Duration;;;KPI;3" />
+ <attribute name="KPIWaitTime" type="Float" value="0" format="Duration;;;KPI;3" />
+ </attribute>
+ </itp:systemDefinedAttributes>
+ <itp:localization>
+ <itp:label lang="unspecified" text="e" default="True" />
+ </itp:localization>
+ </extensionElements>
+ </userTask>
+ </process>
+ <bpmndi:BPMNDiagram name="Mein Diagramm (1)" resolution="72">
+ <bpmndi:BPMNPlane id="_1" bpmnElement="_7242afea-9c6c-4892-9875-f6390346905c">
+ <bpmndi:BPMNShape id="_7C016911-4224-437D-998A-4954EBFB6A97" bpmnElement="TestModelXORSplitGateway" isMarkerVisible="false" itp:label="SplitXOrGate" itp:elementType="exclusiveGateway">
+ <dc:Bounds x="185.669291338583" y="158.385826771654" width="42.5196850393701" height="31.8897637795276" />
+ <bpmndi:BPMNLabel labelStyle="_9146bd08-9804-4764-8e0c-0030121edd04">
+ <dc:Bounds x="181.8" y="193.155590551181" width="49.68" height="9.36" />
+ </bpmndi:BPMNLabel>
+ </bpmndi:BPMNShape>
+ <bpmndi:BPMNShape id="_B362E574-C11E-4B42-ADE2-EEC6DF06C3E9" bpmnElement="TestModelXORJoinGateway" isMarkerVisible="false" itp:label="JoinXOrGate" itp:elementType="exclusiveGateway">
+ <dc:Bounds x="388.346456692913" y="158.385826771654" width="42.5196850393701" height="31.8897637795276" />
+ <bpmndi:BPMNLabel labelStyle="_9146bd08-9804-4764-8e0c-0030121edd04">
+ <dc:Bounds x="385.56" y="193.155590551181" width="48.24" height="9.36" />
+ </bpmndi:BPMNLabel>
+ </bpmndi:BPMNShape>
+ <bpmndi:BPMNEdge id="_C5401613-4DF3-42B2-BF6F-210FC760806E" bpmnElement="_cb8558bb-fc7f-48d9-89fe-d2df6e37bbd2" itp:label="(unbenannt)" itp:elementType="sequenceFlow">
+ <di:waypoint x="164.409448818898" y="174.330708661417" />
+ <di:waypoint x="185.669291338583" y="174.330708661417" />
+ <bpmndi:BPMNLabel labelStyle="_9146bd08-9804-4764-8e0c-0030121edd04">
+ <dc:Bounds x="171.72" y="158.955590551181" width="7.92" height="17.28" />
+ </bpmndi:BPMNLabel>
+ </bpmndi:BPMNEdge>
+ <bpmndi:BPMNEdge id="_1542AC9F-2FD4-4179-AAEC-5992B2FFC1E8" bpmnElement="TestModelConditionalSequenceFlow1" itp:label="Condition to B" itp:elementType="sequenceFlow">
+ <di:waypoint x="206.929133858268" y="158.385826771654" />
+ <di:waypoint x="206.929133858268" y="90.7086614173229" />
+ <di:waypoint x="274.96062992126" y="90.7086614173229" />
+ <di:waypoint x="274.96062992126" y="90.7086614173228" />
+ <bpmndi:BPMNLabel labelStyle="_9146bd08-9804-4764-8e0c-0030121edd04">
+ <dc:Bounds x="181.44" y="83.3555905511811" width="60.48" height="17.28" />
+ </bpmndi:BPMNLabel>
+ </bpmndi:BPMNEdge>
+ <bpmndi:BPMNEdge id="_6BFC849C-5A53-47FD-BDB9-E45120C1C03C" bpmnElement="_b6a578ba-d556-4867-ab1d-31d05a33a35e" itp:label="(unbenannt)" itp:elementType="sequenceFlow">
+ <di:waypoint x="228.188976377953" y="174.330708661417" />
+ <di:waypoint x="274.96062992126" y="174.330708661417" />
+ <bpmndi:BPMNLabel labelStyle="_9146bd08-9804-4764-8e0c-0030121edd04">
+ <dc:Bounds x="248.76" y="158.955590551181" width="7.92" height="17.28" />
+ </bpmndi:BPMNLabel>
+ </bpmndi:BPMNEdge>
+ <bpmndi:BPMNEdge id="_C7F6000C-EED2-4098-9ABB-05B10A064B90" bpmnElement="TestModelDefaultSequenceFlow" itp:label="(unbenannt)" itp:elementType="sequenceFlow">
+ <di:waypoint x="206.929133858268" y="190.275590551181" />
+ <di:waypoint x="206.929133858268" y="257.952755905512" />
+ <di:waypoint x="274.96062992126" y="257.952755905512" />
+ <bpmndi:BPMNLabel labelStyle="_9146bd08-9804-4764-8e0c-0030121edd04">
+ <dc:Bounds x="207.72" y="248.235590551181" width="7.92" height="17.28" />
+ </bpmndi:BPMNLabel>
+ </bpmndi:BPMNEdge>
+ <bpmndi:BPMNEdge id="_59E68D69-5965-4B22-888E-509458461F50" bpmnElement="_fb92c3da-c942-4350-bc9f-1b87e5f70023" itp:label="(unbenannt)" itp:elementType="sequenceFlow">
+ <di:waypoint x="360" y="90.7086614173228" />
+ <di:waypoint x="409.606299212598" y="90.7086614173228" />
+ <di:waypoint x="409.606299212598" y="158.385826771654" />
+ <bpmndi:BPMNLabel labelStyle="_9146bd08-9804-4764-8e0c-0030121edd04">
+ <dc:Bounds x="405.72" y="94.8755905511812" width="7.92" height="17.28" />
+ </bpmndi:BPMNLabel>
+ </bpmndi:BPMNEdge>
+ <bpmndi:BPMNEdge id="_66573C18-B7AF-4670-BC45-EC7A18ADA015" bpmnElement="_64cf5e6a-18c6-4689-ba93-2865f67c16d6" itp:label="(unbenannt)" itp:elementType="sequenceFlow">
+ <di:waypoint x="360" y="174.330708661417" />
+ <di:waypoint x="388.346456692913" y="174.330708661417" />
+ <bpmndi:BPMNLabel labelStyle="_9146bd08-9804-4764-8e0c-0030121edd04">
+ <dc:Bounds x="370.44" y="158.955590551181" width="7.92" height="17.28" />
+ </bpmndi:BPMNLabel>
+ </bpmndi:BPMNEdge>
+ <bpmndi:BPMNEdge id="_1A524BEE-F7CC-4149-8501-B62E4934EE57" bpmnElement="_5af8c969-22a2-485a-8356-8af176a7b3d2" itp:label="(unbenannt)" itp:elementType="sequenceFlow">
+ <di:waypoint x="360" y="257.952755905512" />
+ <di:waypoint x="409.606299212598" y="257.952755905512" />
+ <di:waypoint x="409.606299212598" y="190.275590551181" />
+ <bpmndi:BPMNLabel labelStyle="_9146bd08-9804-4764-8e0c-0030121edd04">
+ <dc:Bounds x="405.72" y="236.715590551181" width="7.92" height="17.28" />
+ </bpmndi:BPMNLabel>
+ </bpmndi:BPMNEdge>
+ <bpmndi:BPMNEdge id="_B8EDA2CE-4127-4AA4-B9B9-1BE490CE7742" bpmnElement="_53472ed0-6bda-4cc3-8119-feb7e93b0ddb" itp:label="(unbenannt)" itp:elementType="sequenceFlow">
+ <di:waypoint x="430.866141732284" y="174.330708661417" />
+ <di:waypoint x="470.551181102362" y="174.330708661417" />
+ <bpmndi:BPMNLabel labelStyle="_9146bd08-9804-4764-8e0c-0030121edd04">
+ <dc:Bounds x="447.48" y="158.955590551181" width="7.92" height="17.28" />
+ </bpmndi:BPMNLabel>
+ </bpmndi:BPMNEdge>
+ <bpmndi:BPMNShape id="_09177A98-B288-465F-86DA-4C6A685A8BAB" bpmnElement="TestModelTaskA" itp:label="a" itp:elementType="userTask">
+ <dc:Bounds x="79.3700787401575" y="153.070866141732" width="85.0393700787402" height="42.5196850393701" />
+ <bpmndi:BPMNLabel labelStyle="_7a6f535f-42c0-426c-bd17-d17c7b451154">
+ <dc:Bounds x="115.56" y="167.235590551181" width="12.24" height="13.68" />
+ </bpmndi:BPMNLabel>
+ </bpmndi:BPMNShape>
+ <bpmndi:BPMNShape id="_DFF46673-9E63-4877-A0B7-BAAB9C42DA76" bpmnElement="TestModelTaskB" itp:label="b" itp:elementType="userTask">
+ <dc:Bounds x="274.96062992126" y="69.4488188976378" width="85.0393700787402" height="42.5196850393701" />
+ <bpmndi:BPMNLabel labelStyle="_7a6f535f-42c0-426c-bd17-d17c7b451154">
+ <dc:Bounds x="311.4" y="83.7155905511812" width="12.24" height="13.68" />
+ </bpmndi:BPMNLabel>
+ </bpmndi:BPMNShape>
+ <bpmndi:BPMNShape id="_8969DD4B-F91B-4255-916D-0F4695BCF01D" bpmnElement="TestModelTaskC" itp:label="c" itp:elementType="userTask">
+ <dc:Bounds x="274.96062992126" y="153.070866141732" width="85.0393700787402" height="42.5196850393701" />
+ <bpmndi:BPMNLabel labelStyle="_7a6f535f-42c0-426c-bd17-d17c7b451154">
+ <dc:Bounds x="311.76" y="167.235590551181" width="11.52" height="13.68" />
+ </bpmndi:BPMNLabel>
+ </bpmndi:BPMNShape>
+ <bpmndi:BPMNShape id="_24FA24B4-DBB0-4843-8523-A85FBE9289FB" bpmnElement="TestModelTaskD" itp:label="d" itp:elementType="userTask">
+ <dc:Bounds x="274.96062992126" y="236.692913385827" width="85.0393700787402" height="42.5196850393701" />
+ <bpmndi:BPMNLabel labelStyle="_7a6f535f-42c0-426c-bd17-d17c7b451154">
+ <dc:Bounds x="311.4" y="250.755590551181" width="12.24" height="13.68" />
+ </bpmndi:BPMNLabel>
+ </bpmndi:BPMNShape>
+ <bpmndi:BPMNShape id="_51146E01-297E-46A4-9A99-A9DF4CEF4CC8" bpmnElement="TestModelTaskE" itp:label="e" itp:elementType="userTask">
+ <dc:Bounds x="470.551181102362" y="153.070866141732" width="85.0393700787402" height="42.5196850393701" />
+ <bpmndi:BPMNLabel labelStyle="_7a6f535f-42c0-426c-bd17-d17c7b451154">
+ <dc:Bounds x="507.24" y="167.235590551181" width="12.24" height="13.68" />
+ </bpmndi:BPMNLabel>
+ </bpmndi:BPMNShape>
+ </bpmndi:BPMNPlane>
+ <bpmndi:BPMNLabelStyle id="_9146bd08-9804-4764-8e0c-0030121edd04">
+ <dc:Font name="Arial" size="8" isBold="false" isItalic="false" isUnderline="false" isStrikeThrough="false" />
+ </bpmndi:BPMNLabelStyle>
+ <bpmndi:BPMNLabelStyle id="_7a6f535f-42c0-426c-bd17-d17c7b451154">
+ <dc:Font name="Arial" size="10" isBold="false" isItalic="false" isUnderline="false" isStrikeThrough="false" />
+ </bpmndi:BPMNLabelStyle>
+ </bpmndi:BPMNDiagram>
+</definitions>
\ No newline at end of file diff --git a/model/org.eclipse.stardust.model.bpmn2.transform/src/test/resources/models/bpmn/schemas/BPMN20.xsd b/model/org.eclipse.stardust.model.bpmn2.transform/src/test/resources/models/bpmn/schemas/BPMN20.xsd new file mode 100644 index 0000000..463ef6e --- a/dev/null +++ b/model/org.eclipse.stardust.model.bpmn2.transform/src/test/resources/models/bpmn/schemas/BPMN20.xsd @@ -0,0 +1,37 @@ +<?xml version="1.0" encoding="UTF-8"?>
+<xsd:schema elementFormDefault="qualified" attributeFormDefault="unqualified"
+ xmlns="http://www.omg.org/spec/BPMN/20100524/MODEL"
+ xmlns:xsd="http://www.w3.org/2001/XMLSchema"
+ xmlns:bpmndi="http://www.omg.org/spec/BPMN/20100524/DI"
+ targetNamespace="http://www.omg.org/spec/BPMN/20100524/MODEL">
+
+ <xsd:import namespace="http://www.omg.org/spec/BPMN/20100524/DI" schemaLocation="BPMNDI.xsd"/>
+ <xsd:include schemaLocation="Semantic.xsd"/>
+
+ <xsd:element name="definitions" type="tDefinitions"/>
+ <xsd:complexType name="tDefinitions">
+ <xsd:sequence>
+ <xsd:element ref="import" minOccurs="0" maxOccurs="unbounded"/>
+ <xsd:element ref="extension" minOccurs="0" maxOccurs="unbounded"/>
+ <xsd:element ref="rootElement" minOccurs="0" maxOccurs="unbounded"/>
+ <xsd:element ref="bpmndi:BPMNDiagram" minOccurs="0" maxOccurs="unbounded"/>
+ <xsd:element ref="relationship" minOccurs="0" maxOccurs="unbounded"/>
+ </xsd:sequence>
+ <xsd:attribute name="id" type="xsd:ID" use="optional"/>
+ <xsd:attribute name="name" type="xsd:string"/>
+ <xsd:attribute name="targetNamespace" type="xsd:anyURI" use="required"/>
+ <xsd:attribute name="expressionLanguage" type="xsd:anyURI" use="optional" default="http://www.w3.org/1999/XPath"/>
+ <xsd:attribute name="typeLanguage" type="xsd:anyURI" use="optional" default="http://www.w3.org/2001/XMLSchema"/>
+ <xsd:attribute name="exporter" type="xsd:string"/>
+ <xsd:attribute name="exporterVersion" type="xsd:string"/>
+ <xsd:anyAttribute namespace="##other" processContents="lax"/>
+ </xsd:complexType>
+
+ <xsd:element name="import" type="tImport"/>
+ <xsd:complexType name="tImport">
+ <xsd:attribute name="namespace" type="xsd:anyURI" use="required"/>
+ <xsd:attribute name="location" type="xsd:string" use="required"/>
+ <xsd:attribute name="importType" type="xsd:anyURI" use="required"/>
+ </xsd:complexType>
+
+</xsd:schema>
\ No newline at end of file diff --git a/model/org.eclipse.stardust.model.bpmn2.transform/src/test/resources/models/bpmn/schemas/BPMNDI.xsd b/model/org.eclipse.stardust.model.bpmn2.transform/src/test/resources/models/bpmn/schemas/BPMNDI.xsd new file mode 100644 index 0000000..615740f --- a/dev/null +++ b/model/org.eclipse.stardust.model.bpmn2.transform/src/test/resources/models/bpmn/schemas/BPMNDI.xsd @@ -0,0 +1,100 @@ +<?xml version="1.0" encoding="UTF-8"?>
+<xsd:schema xmlns:xsd="http://www.w3.org/2001/XMLSchema" 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" targetNamespace="http://www.omg.org/spec/BPMN/20100524/DI" elementFormDefault="qualified" attributeFormDefault="unqualified">
+
+ <xsd:import namespace="http://www.omg.org/spec/DD/20100524/DC" schemaLocation="DC.xsd" />
+ <xsd:import namespace="http://www.omg.org/spec/DD/20100524/DI" schemaLocation="DI.xsd" />
+
+ <xsd:element name="BPMNDiagram" type="bpmndi:BPMNDiagram" />
+ <xsd:element name="BPMNPlane" type="bpmndi:BPMNPlane" />
+ <xsd:element name="BPMNLabelStyle" type="bpmndi:BPMNLabelStyle" />
+ <xsd:element name="BPMNShape" type="bpmndi:BPMNShape" substitutionGroup="di:DiagramElement" />
+ <xsd:element name="BPMNLabel" type="bpmndi:BPMNLabel" />
+ <xsd:element name="BPMNEdge" type="bpmndi:BPMNEdge" substitutionGroup="di:DiagramElement" />
+
+ <xsd:complexType name="BPMNDiagram">
+ <xsd:complexContent>
+ <xsd:extension base="di:Diagram">
+ <xsd:sequence>
+ <xsd:element ref="bpmndi:BPMNPlane" />
+ <xsd:element ref="bpmndi:BPMNLabelStyle" maxOccurs="unbounded" minOccurs="0" />
+ </xsd:sequence>
+ </xsd:extension>
+ </xsd:complexContent>
+ </xsd:complexType>
+
+ <xsd:complexType name="BPMNPlane">
+ <xsd:complexContent>
+ <xsd:extension base="di:Plane">
+ <xsd:attribute name="bpmnElement" type="xsd:QName" />
+ </xsd:extension>
+ </xsd:complexContent>
+ </xsd:complexType>
+
+ <xsd:complexType name="BPMNEdge">
+ <xsd:complexContent>
+ <xsd:extension base="di:LabeledEdge">
+ <xsd:sequence>
+ <xsd:element ref="bpmndi:BPMNLabel" minOccurs="0" />
+ </xsd:sequence>
+ <xsd:attribute name="bpmnElement" type="xsd:QName" />
+ <xsd:attribute name="sourceElement" type="xsd:QName" />
+ <xsd:attribute name="targetElement" type="xsd:QName" />
+ <xsd:attribute name="messageVisibleKind" type="bpmndi:MessageVisibleKind" />
+ </xsd:extension>
+ </xsd:complexContent>
+ </xsd:complexType>
+
+ <xsd:complexType name="BPMNShape">
+ <xsd:complexContent>
+ <xsd:extension base="di:LabeledShape">
+ <xsd:sequence>
+ <xsd:element ref="bpmndi:BPMNLabel" minOccurs="0" />
+ </xsd:sequence>
+ <xsd:attribute name="bpmnElement" type="xsd:QName" />
+ <xsd:attribute name="isHorizontal" type="xsd:boolean" />
+ <xsd:attribute name="isExpanded" type="xsd:boolean" />
+ <xsd:attribute name="isMarkerVisible" type="xsd:boolean" />
+ <xsd:attribute name="isMessageVisible" type="xsd:boolean" />
+ <xsd:attribute name="participantBandKind" type="bpmndi:ParticipantBandKind" />
+ <xsd:attribute name="choreographyActivityShape" type="xsd:QName"/>
+ </xsd:extension>
+ </xsd:complexContent>
+ </xsd:complexType>
+
+ <xsd:complexType name="BPMNLabel">
+ <xsd:complexContent>
+ <xsd:extension base="di:Label">
+ <xsd:attribute name="labelStyle" type="xsd:QName" />
+ </xsd:extension>
+ </xsd:complexContent>
+ </xsd:complexType>
+
+ <xsd:complexType name="BPMNLabelStyle">
+ <xsd:complexContent>
+ <xsd:extension base="di:Style">
+ <xsd:sequence>
+ <xsd:element ref="dc:Font" />
+ </xsd:sequence>
+ </xsd:extension>
+ </xsd:complexContent>
+ </xsd:complexType>
+
+ <xsd:simpleType name="ParticipantBandKind">
+ <xsd:restriction base="xsd:string">
+ <xsd:enumeration value="top_initiating" />
+ <xsd:enumeration value="middle_initiating" />
+ <xsd:enumeration value="bottom_initiating" />
+ <xsd:enumeration value="top_non_initiating" />
+ <xsd:enumeration value="middle_non_initiating" />
+ <xsd:enumeration value="bottom_non_initiating" />
+ </xsd:restriction>
+ </xsd:simpleType>
+
+ <xsd:simpleType name="MessageVisibleKind">
+ <xsd:restriction base="xsd:string">
+ <xsd:enumeration value="initiating" />
+ <xsd:enumeration value="non_initiating" />
+ </xsd:restriction>
+ </xsd:simpleType>
+
+</xsd:schema>
diff --git a/model/org.eclipse.stardust.model.bpmn2.transform/src/test/resources/models/bpmn/schemas/DC.xsd b/model/org.eclipse.stardust.model.bpmn2.transform/src/test/resources/models/bpmn/schemas/DC.xsd new file mode 100644 index 0000000..80e9fa8 --- a/dev/null +++ b/model/org.eclipse.stardust.model.bpmn2.transform/src/test/resources/models/bpmn/schemas/DC.xsd @@ -0,0 +1,29 @@ +<?xml version="1.0" encoding="UTF-8"?>
+<xsd:schema xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:dc="http://www.omg.org/spec/DD/20100524/DC" targetNamespace="http://www.omg.org/spec/DD/20100524/DC" elementFormDefault="qualified" attributeFormDefault="unqualified">
+
+ <xsd:element name="Font" type="dc:Font" />
+ <xsd:element name="Point" type="dc:Point" />
+ <xsd:element name="Bounds" type="dc:Bounds" />
+
+ <xsd:complexType name="Font">
+ <xsd:attribute name="name" type="xsd:string" />
+ <xsd:attribute name="size" type="xsd:double" />
+ <xsd:attribute name="isBold" type="xsd:boolean" />
+ <xsd:attribute name="isItalic" type="xsd:boolean" />
+ <xsd:attribute name="isUnderline" type="xsd:boolean" />
+ <xsd:attribute name="isStrikeThrough" type="xsd:boolean" />
+ </xsd:complexType>
+
+ <xsd:complexType name="Point">
+ <xsd:attribute name="x" type="xsd:double" use="required" />
+ <xsd:attribute name="y" type="xsd:double" use="required" />
+ </xsd:complexType>
+
+ <xsd:complexType name="Bounds">
+ <xsd:attribute name="x" type="xsd:double" use="required" />
+ <xsd:attribute name="y" type="xsd:double" use="required" />
+ <xsd:attribute name="width" type="xsd:double" use="required" />
+ <xsd:attribute name="height" type="xsd:double" use="required" />
+ </xsd:complexType>
+
+</xsd:schema>
diff --git a/model/org.eclipse.stardust.model.bpmn2.transform/src/test/resources/models/bpmn/schemas/DI.xsd b/model/org.eclipse.stardust.model.bpmn2.transform/src/test/resources/models/bpmn/schemas/DI.xsd new file mode 100644 index 0000000..4023d28 --- a/dev/null +++ b/model/org.eclipse.stardust.model.bpmn2.transform/src/test/resources/models/bpmn/schemas/DI.xsd @@ -0,0 +1,100 @@ +<?xml version="1.0" encoding="UTF-8"?>
+<xsd:schema xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:dc="http://www.omg.org/spec/DD/20100524/DC" xmlns:di="http://www.omg.org/spec/DD/20100524/DI" targetNamespace="http://www.omg.org/spec/DD/20100524/DI" elementFormDefault="qualified" attributeFormDefault="unqualified">
+
+ <xsd:import namespace="http://www.omg.org/spec/DD/20100524/DC" schemaLocation="DC.xsd" />
+
+ <xsd:element name="DiagramElement" type="di:DiagramElement" />
+ <xsd:element name="Diagram" type="di:Diagram" />
+ <xsd:element name="Style" type="di:Style" />
+ <xsd:element name="Node" type="di:Node" />
+ <xsd:element name="Edge" type="di:Edge" />
+ <xsd:element name="Shape" type="di:Shape" />
+ <xsd:element name="Plane" type="di:Plane" />
+ <xsd:element name="LabeledEdge" type="di:LabeledEdge" />
+ <xsd:element name="Label" type="di:Label" />
+ <xsd:element name="LabeledShape" type="di:LabeledShape" />
+
+ <xsd:complexType abstract="true" name="DiagramElement">
+ <xsd:sequence>
+ <xsd:element name="extension" minOccurs="0">
+ <xsd:complexType>
+ <xsd:sequence>
+ <xsd:any namespace="##other" minOccurs="0" maxOccurs="unbounded" />
+ </xsd:sequence>
+ </xsd:complexType>
+ </xsd:element>
+ </xsd:sequence>
+ <xsd:attribute name="id" type="xsd:ID" />
+ <xsd:anyAttribute namespace="##other" processContents="lax" />
+ </xsd:complexType>
+
+ <xsd:complexType abstract="true" name="Diagram">
+ <xsd:attribute name="name" type="xsd:string" />
+ <xsd:attribute name="documentation" type="xsd:string" />
+ <xsd:attribute name="resolution" type="xsd:double" />
+ <xsd:attribute name="id" type="xsd:ID" />
+ </xsd:complexType>
+
+ <xsd:complexType abstract="true" name="Node">
+ <xsd:complexContent>
+ <xsd:extension base="di:DiagramElement" />
+ </xsd:complexContent>
+ </xsd:complexType>
+
+ <xsd:complexType abstract="true" name="Edge">
+ <xsd:complexContent>
+ <xsd:extension base="di:DiagramElement">
+ <xsd:sequence>
+ <xsd:element maxOccurs="unbounded" minOccurs="2" name="waypoint" type="dc:Point" />
+ </xsd:sequence>
+ </xsd:extension>
+ </xsd:complexContent>
+ </xsd:complexType>
+
+ <xsd:complexType abstract="true" name="LabeledEdge">
+ <xsd:complexContent>
+ <xsd:extension base="di:Edge" />
+ </xsd:complexContent>
+ </xsd:complexType>
+
+ <xsd:complexType abstract="true" name="Shape">
+ <xsd:complexContent>
+ <xsd:extension base="di:Node">
+ <xsd:sequence>
+ <xsd:element ref="dc:Bounds" />
+ </xsd:sequence>
+ </xsd:extension>
+ </xsd:complexContent>
+ </xsd:complexType>
+
+ <xsd:complexType abstract="true" name="LabeledShape">
+ <xsd:complexContent>
+ <xsd:extension base="di:Shape" />
+ </xsd:complexContent>
+ </xsd:complexType>
+
+ <xsd:complexType abstract="true" name="Label">
+ <xsd:complexContent>
+ <xsd:extension base="di:Node">
+ <xsd:sequence>
+ <xsd:element ref="dc:Bounds" minOccurs="0" />
+ </xsd:sequence>
+ </xsd:extension>
+ </xsd:complexContent>
+ </xsd:complexType>
+
+ <xsd:complexType abstract="true" name="Plane">
+ <xsd:complexContent>
+ <xsd:extension base="di:Node">
+ <xsd:sequence>
+ <xsd:element ref="di:DiagramElement" maxOccurs="unbounded" minOccurs="0" />
+ </xsd:sequence>
+ </xsd:extension>
+ </xsd:complexContent>
+ </xsd:complexType>
+
+ <xsd:complexType abstract="true" name="Style">
+ <xsd:attribute name="id" type="xsd:ID" />
+ </xsd:complexType>
+
+</xsd:schema>
diff --git a/model/org.eclipse.stardust.model.bpmn2.transform/src/test/resources/models/bpmn/schemas/Semantic.xsd b/model/org.eclipse.stardust.model.bpmn2.transform/src/test/resources/models/bpmn/schemas/Semantic.xsd new file mode 100644 index 0000000..1c611da --- a/dev/null +++ b/model/org.eclipse.stardust.model.bpmn2.transform/src/test/resources/models/bpmn/schemas/Semantic.xsd @@ -0,0 +1,1562 @@ +<?xml version="1.0" encoding="UTF-8"?>
+<xsd:schema elementFormDefault="qualified" attributeFormDefault="unqualified"
+ xmlns="http://www.omg.org/spec/BPMN/20100524/MODEL"
+ xmlns:xsd="http://www.w3.org/2001/XMLSchema"
+ targetNamespace="http://www.omg.org/spec/BPMN/20100524/MODEL">
+
+ <xsd:element name="activity" type="tActivity"/>
+ <xsd:complexType name="tActivity" abstract="true">
+ <xsd:complexContent>
+ <xsd:extension base="tFlowNode">
+ <xsd:sequence>
+ <xsd:element ref="ioSpecification" minOccurs="0" maxOccurs="1"/>
+ <xsd:element ref="property" minOccurs="0" maxOccurs="unbounded"/>
+ <xsd:element ref="dataInputAssociation" minOccurs="0" maxOccurs="unbounded"/>
+ <xsd:element ref="dataOutputAssociation" minOccurs="0" maxOccurs="unbounded"/>
+ <xsd:element ref="resourceRole" minOccurs="0" maxOccurs="unbounded"/>
+ <xsd:element ref="loopCharacteristics" minOccurs="0"/>
+ </xsd:sequence>
+ <xsd:attribute name="isForCompensation" type="xsd:boolean" default="false"/>
+ <xsd:attribute name="startQuantity" type="xsd:integer" default="1"/>
+ <xsd:attribute name="completionQuantity" type="xsd:integer" default="1"/>
+ <xsd:attribute name="default" type="xsd:IDREF" use="optional"/>
+ </xsd:extension>
+ </xsd:complexContent>
+ </xsd:complexType>
+
+ <xsd:element name="adHocSubProcess" type="tAdHocSubProcess" substitutionGroup="flowElement"/>
+ <xsd:complexType name="tAdHocSubProcess">
+ <xsd:complexContent>
+ <xsd:extension base="tSubProcess">
+ <xsd:sequence>
+ <xsd:element name="completionCondition" type="tExpression" minOccurs="0" maxOccurs="1"/>
+ </xsd:sequence>
+ <xsd:attribute name="cancelRemainingInstances" type="xsd:boolean" default="true"/>
+ <xsd:attribute name="ordering" type="tAdHocOrdering"/>
+ </xsd:extension>
+ </xsd:complexContent>
+ </xsd:complexType>
+
+ <xsd:simpleType name="tAdHocOrdering">
+ <xsd:restriction base="xsd:string">
+ <xsd:enumeration value="Parallel"/>
+ <xsd:enumeration value="Sequential"/>
+ </xsd:restriction>
+ </xsd:simpleType>
+
+ <xsd:element name="artifact" type="tArtifact"/>
+ <xsd:complexType name="tArtifact" abstract="true">
+ <xsd:complexContent>
+ <xsd:extension base="tBaseElement"/>
+ </xsd:complexContent>
+ </xsd:complexType>
+
+ <xsd:element name="assignment" type="tAssignment" />
+ <xsd:complexType name="tAssignment">
+ <xsd:complexContent>
+ <xsd:extension base="tBaseElement">
+ <xsd:sequence>
+ <xsd:element name="from" type="tExpression" minOccurs="1" maxOccurs="1"/>
+ <xsd:element name="to" type="tExpression" minOccurs="1" maxOccurs="1"/>
+ </xsd:sequence>
+ </xsd:extension>
+ </xsd:complexContent>
+ </xsd:complexType>
+
+ <xsd:element name="association" type="tAssociation" substitutionGroup="artifact"/>
+ <xsd:complexType name="tAssociation">
+ <xsd:complexContent>
+ <xsd:extension base="tArtifact">
+ <xsd:attribute name="sourceRef" type="xsd:QName" use="required"/>
+ <xsd:attribute name="targetRef" type="xsd:QName" use="required"/>
+ <xsd:attribute name="associationDirection" type="tAssociationDirection" default="None"/>
+ </xsd:extension>
+ </xsd:complexContent>
+ </xsd:complexType>
+
+ <xsd:simpleType name="tAssociationDirection">
+ <xsd:restriction base="xsd:string">
+ <xsd:enumeration value="None"/>
+ <xsd:enumeration value="One"/>
+ <xsd:enumeration value="Both"/>
+ </xsd:restriction>
+ </xsd:simpleType>
+
+ <xsd:element name="auditing" type="tAuditing"/>
+ <xsd:complexType name="tAuditing">
+ <xsd:complexContent>
+ <xsd:extension base="tBaseElement"/>
+ </xsd:complexContent>
+ </xsd:complexType>
+
+ <xsd:element name="baseElement" type="tBaseElement"/>
+ <xsd:complexType name="tBaseElement" abstract="true">
+ <xsd:sequence>
+ <xsd:element ref="documentation" minOccurs="0" maxOccurs="unbounded"/>
+ <xsd:element ref="extensionElements" minOccurs="0" maxOccurs="1" />
+ </xsd:sequence>
+ <xsd:attribute name="id" type="xsd:ID" use="optional"/>
+ <xsd:anyAttribute namespace="##other" processContents="lax"/>
+ </xsd:complexType>
+
+ <xsd:element name="baseElementWithMixedContent" type="tBaseElementWithMixedContent"/>
+ <xsd:complexType name="tBaseElementWithMixedContent" abstract="true" mixed="true">
+ <xsd:sequence>
+ <xsd:element ref="documentation" minOccurs="0" maxOccurs="unbounded"/>
+ <xsd:element ref="extensionElements" minOccurs="0" maxOccurs="1" />
+ </xsd:sequence>
+ <xsd:attribute name="id" type="xsd:ID" use="optional"/>
+ <xsd:anyAttribute namespace="##other" processContents="lax"/>
+ </xsd:complexType>
+
+ <xsd:element name="boundaryEvent" type="tBoundaryEvent" substitutionGroup="flowElement"/>
+ <xsd:complexType name="tBoundaryEvent">
+ <xsd:complexContent>
+ <xsd:extension base="tCatchEvent">
+ <xsd:attribute name="cancelActivity" type="xsd:boolean" default="true"/>
+ <xsd:attribute name="attachedToRef" type="xsd:QName" use="required"/>
+ </xsd:extension>
+ </xsd:complexContent>
+ </xsd:complexType>
+
+ <xsd:element name="businessRuleTask" type="tBusinessRuleTask" substitutionGroup="flowElement"/>
+ <xsd:complexType name="tBusinessRuleTask">
+ <xsd:complexContent>
+ <xsd:extension base="tTask">
+ <xsd:attribute name="implementation" type="tImplementation" default="##unspecified"/>
+ </xsd:extension>
+ </xsd:complexContent>
+ </xsd:complexType>
+
+ <xsd:element name="callableElement" type="tCallableElement"/>
+ <xsd:complexType name="tCallableElement">
+ <xsd:complexContent>
+ <xsd:extension base="tRootElement">
+ <xsd:sequence>
+ <xsd:element name="supportedInterfaceRef" type="xsd:QName" minOccurs="0" maxOccurs="unbounded"/>
+ <xsd:element ref="ioSpecification" minOccurs="0" maxOccurs="1"/>
+ <xsd:element ref="ioBinding" minOccurs="0" maxOccurs="unbounded"/>
+ </xsd:sequence>
+ <xsd:attribute name="name" type="xsd:string"/>
+ </xsd:extension>
+ </xsd:complexContent>
+ </xsd:complexType>
+
+ <xsd:element name="callActivity" type="tCallActivity" substitutionGroup="flowElement"/>
+ <xsd:complexType name="tCallActivity">
+ <xsd:complexContent>
+ <xsd:extension base="tActivity">
+ <xsd:attribute name="calledElement" type="xsd:QName" use="optional"/>
+ </xsd:extension>
+ </xsd:complexContent>
+ </xsd:complexType>
+
+ <xsd:element name="callChoreography" type="tCallChoreography" substitutionGroup="flowElement"/>
+ <xsd:complexType name="tCallChoreography">
+ <xsd:complexContent>
+ <xsd:extension base="tChoreographyActivity">
+ <xsd:sequence>
+ <xsd:element ref="participantAssociation" minOccurs="0" maxOccurs="unbounded"/>
+ </xsd:sequence>
+ <xsd:attribute name="calledChoreographyRef" type="xsd:QName" use="optional"/>
+ </xsd:extension>
+ </xsd:complexContent>
+ </xsd:complexType>
+
+ <xsd:element name="callConversation" type="tCallConversation" substitutionGroup="conversationNode"/>
+ <xsd:complexType name="tCallConversation">
+ <xsd:complexContent>
+ <xsd:extension base="tConversationNode">
+ <xsd:sequence>
+ <xsd:element ref="participantAssociation" minOccurs="0" maxOccurs="unbounded"/>
+ </xsd:sequence>
+ <xsd:attribute name="calledCollaborationRef" type="xsd:QName" use="optional"/>
+ </xsd:extension>
+ </xsd:complexContent>
+ </xsd:complexType>
+
+ <xsd:element name="cancelEventDefinition" type="tCancelEventDefinition" substitutionGroup="eventDefinition"/>
+ <xsd:complexType name="tCancelEventDefinition">
+ <xsd:complexContent>
+ <xsd:extension base="tEventDefinition"/>
+ </xsd:complexContent>
+ </xsd:complexType>
+
+ <xsd:element name="catchEvent" type="tCatchEvent"/>
+ <xsd:complexType name="tCatchEvent" abstract="true">
+ <xsd:complexContent>
+ <xsd:extension base="tEvent">
+ <xsd:sequence>
+ <xsd:element ref="dataOutput" minOccurs="0" maxOccurs="unbounded"/>
+ <xsd:element ref="dataOutputAssociation" minOccurs="0" maxOccurs="unbounded"/>
+ <xsd:element ref="outputSet" minOccurs="0" maxOccurs="1"/>
+ <xsd:element ref="eventDefinition" minOccurs="0" maxOccurs="unbounded"/>
+ <xsd:element name="eventDefinitionRef" type="xsd:QName" minOccurs="0" maxOccurs="unbounded"/>
+ </xsd:sequence>
+ <xsd:attribute name="parallelMultiple" type="xsd:boolean" default="false"/>
+ </xsd:extension>
+ </xsd:complexContent>
+ </xsd:complexType>
+
+ <xsd:element name="category" type="tCategory" substitutionGroup="rootElement"/>
+ <xsd:complexType name="tCategory">
+ <xsd:complexContent>
+ <xsd:extension base="tRootElement">
+ <xsd:sequence>
+ <xsd:element ref="categoryValue" minOccurs="0" maxOccurs="unbounded"/>
+ </xsd:sequence>
+ <xsd:attribute name="name" type="xsd:string"/>
+ </xsd:extension>
+ </xsd:complexContent>
+ </xsd:complexType>
+
+ <xsd:element name="categoryValue" type="tCategoryValue"/>
+ <xsd:complexType name="tCategoryValue">
+ <xsd:complexContent>
+ <xsd:extension base="tBaseElement">
+ <xsd:attribute name="value" type="xsd:string" use="optional"/>
+ </xsd:extension>
+ </xsd:complexContent>
+ </xsd:complexType>
+
+ <xsd:element name="choreography" type="tChoreography" substitutionGroup="collaboration"/>
+ <xsd:complexType name="tChoreography">
+ <xsd:complexContent>
+ <xsd:extension base="tCollaboration">
+ <xsd:sequence>
+ <xsd:element ref="flowElement" minOccurs="0" maxOccurs="unbounded"/>
+ </xsd:sequence>
+ </xsd:extension>
+ </xsd:complexContent>
+ </xsd:complexType>
+
+ <xsd:element name="choreographyActivity" type="tChoreographyActivity"/>
+ <xsd:complexType name="tChoreographyActivity" abstract="true">
+ <xsd:complexContent>
+ <xsd:extension base="tFlowNode">
+ <xsd:sequence>
+ <xsd:element name="participantRef" type="xsd:QName" minOccurs="2" maxOccurs="unbounded"/>
+ <xsd:element ref="correlationKey" minOccurs="0" maxOccurs="unbounded"/>
+ </xsd:sequence>
+ <xsd:attribute name="initiatingParticipantRef" type="xsd:QName" use="required"/>
+ <xsd:attribute name="loopType" type="tChoreographyLoopType" default="None"/>
+ </xsd:extension>
+ </xsd:complexContent>
+ </xsd:complexType>
+
+ <xsd:simpleType name="tChoreographyLoopType">
+ <xsd:restriction base="xsd:string">
+ <xsd:enumeration value="None"/>
+ <xsd:enumeration value="Standard"/>
+ <xsd:enumeration value="MultiInstanceSequential"/>
+ <xsd:enumeration value="MultiInstanceParallel"/>
+ </xsd:restriction>
+ </xsd:simpleType>
+
+ <xsd:element name="choreographyTask" type="tChoreographyTask" substitutionGroup="flowElement"/>
+ <xsd:complexType name="tChoreographyTask">
+ <xsd:complexContent>
+ <xsd:extension base="tChoreographyActivity">
+ <xsd:sequence>
+ <xsd:element name="messageFlowRef" type="xsd:QName" minOccurs="1" maxOccurs="2"/>
+ </xsd:sequence>
+ </xsd:extension>
+ </xsd:complexContent>
+ </xsd:complexType>
+
+ <xsd:element name="collaboration" type="tCollaboration" substitutionGroup="rootElement"/>
+ <xsd:complexType name="tCollaboration">
+ <xsd:complexContent>
+ <xsd:extension base="tRootElement">
+ <xsd:sequence>
+ <xsd:element ref="participant" minOccurs="0" maxOccurs="unbounded"/>
+ <xsd:element ref="messageFlow" minOccurs="0" maxOccurs="unbounded"/>
+ <xsd:element ref="artifact" minOccurs="0" maxOccurs="unbounded"/>
+ <xsd:element ref="conversationNode" minOccurs="0" maxOccurs="unbounded"/>
+ <xsd:element ref="conversationAssociation" minOccurs="0" maxOccurs="unbounded"/>
+ <xsd:element ref="participantAssociation" minOccurs="0" maxOccurs="unbounded"/>
+ <xsd:element ref="messageFlowAssociation" minOccurs="0" maxOccurs="unbounded"/>
+ <xsd:element ref="correlationKey" minOccurs="0" maxOccurs="unbounded"/>
+ <xsd:element name="choreographyRef" type="xsd:QName" minOccurs="0" maxOccurs="unbounded"/>
+ <xsd:element ref="conversationLink" minOccurs="0" maxOccurs="unbounded"/>
+ </xsd:sequence>
+ <xsd:attribute name="name" type="xsd:string"/>
+ <xsd:attribute name="isClosed" type="xsd:boolean" default="false"/>
+ </xsd:extension>
+ </xsd:complexContent>
+ </xsd:complexType>
+
+ <xsd:element name="compensateEventDefinition" type="tCompensateEventDefinition" substitutionGroup="eventDefinition"/>
+ <xsd:complexType name="tCompensateEventDefinition">
+ <xsd:complexContent>
+ <xsd:extension base="tEventDefinition">
+ <xsd:attribute name="waitForCompletion" type="xsd:boolean"/>
+ <xsd:attribute name="activityRef" type="xsd:QName"/>
+ </xsd:extension>
+ </xsd:complexContent>
+ </xsd:complexType>
+
+ <xsd:element name="complexBehaviorDefinition" type="tComplexBehaviorDefinition"/>
+ <xsd:complexType name="tComplexBehaviorDefinition">
+ <xsd:complexContent>
+ <xsd:extension base="tBaseElement">
+ <xsd:sequence>
+ <xsd:element name="condition" type="tFormalExpression" minOccurs="1" maxOccurs="1"/>
+ <xsd:element name="event" type="tImplicitThrowEvent" minOccurs="0" maxOccurs="1"/>
+ </xsd:sequence>
+ </xsd:extension>
+ </xsd:complexContent>
+ </xsd:complexType>
+
+ <xsd:element name="complexGateway" type="tComplexGateway" substitutionGroup="flowElement"/>
+ <xsd:complexType name="tComplexGateway">
+ <xsd:complexContent>
+ <xsd:extension base="tGateway">
+ <xsd:sequence>
+ <xsd:element name="activationCondition" type="tExpression" minOccurs="0" maxOccurs="1"/>
+ </xsd:sequence>
+ <xsd:attribute name="default" type="xsd:IDREF"/>
+ </xsd:extension>
+ </xsd:complexContent>
+ </xsd:complexType>
+
+ <xsd:element name="conditionalEventDefinition" type="tConditionalEventDefinition" substitutionGroup="eventDefinition"/>
+ <xsd:complexType name="tConditionalEventDefinition">
+ <xsd:complexContent>
+ <xsd:extension base="tEventDefinition">
+ <xsd:sequence>
+ <xsd:element name="condition" type="tExpression"/>
+ </xsd:sequence>
+ </xsd:extension>
+ </xsd:complexContent>
+ </xsd:complexType>
+
+ <xsd:element name="conversation" type="tConversation" substitutionGroup="conversationNode"/>
+ <xsd:complexType name="tConversation">
+ <xsd:complexContent>
+ <xsd:extension base="tConversationNode"/>
+ </xsd:complexContent>
+ </xsd:complexType>
+
+ <xsd:element name="conversationAssociation" type="tConversationAssociation"/>
+ <xsd:complexType name="tConversationAssociation">
+ <xsd:complexContent>
+ <xsd:extension base="tBaseElement">
+ <xsd:attribute name="innerConversationNodeRef" type="xsd:QName" use="required"/>
+ <xsd:attribute name="outerConversationNodeRef" type="xsd:QName" use="required"/>
+ </xsd:extension>
+ </xsd:complexContent>
+ </xsd:complexType>
+
+ <xsd:element name="conversationLink" type="tConversationLink"/>
+ <xsd:complexType name="tConversationLink">
+ <xsd:complexContent>
+ <xsd:extension base="tBaseElement">
+ <xsd:attribute name="name" type="xsd:string" use="optional"/>
+ <xsd:attribute name="sourceRef" type="xsd:QName" use="required"/>
+ <xsd:attribute name="targetRef" type="xsd:QName" use="required"/>
+ </xsd:extension>
+ </xsd:complexContent>
+ </xsd:complexType>
+
+ <xsd:element name="conversationNode" type="tConversationNode"/>
+ <xsd:complexType name="tConversationNode" abstract="true">
+ <xsd:complexContent>
+ <xsd:extension base="tBaseElement">
+ <xsd:sequence>
+ <xsd:element name="participantRef" type="xsd:QName" minOccurs="0" maxOccurs="unbounded"/>
+ <xsd:element name="messageFlowRef" type="xsd:QName" minOccurs="0" maxOccurs="unbounded"/>
+ <xsd:element ref="correlationKey" minOccurs="0" maxOccurs="unbounded"/>
+ </xsd:sequence>
+ <xsd:attribute name="name" type="xsd:string"/>
+ </xsd:extension>
+ </xsd:complexContent>
+ </xsd:complexType>
+
+ <xsd:element name="correlationKey" type="tCorrelationKey"/>
+ <xsd:complexType name="tCorrelationKey">
+ <xsd:complexContent>
+ <xsd:extension base="tBaseElement">
+ <xsd:sequence>
+ <xsd:element name="correlationPropertyRef" type="xsd:QName" minOccurs="0" maxOccurs="unbounded"/>
+ </xsd:sequence>
+ <xsd:attribute name="name" type="xsd:string" use="optional"/>
+ </xsd:extension>
+ </xsd:complexContent>
+ </xsd:complexType>
+
+ <xsd:element name="correlationProperty" type="tCorrelationProperty" substitutionGroup="rootElement"/>
+ <xsd:complexType name="tCorrelationProperty">
+ <xsd:complexContent>
+ <xsd:extension base="tRootElement">
+ <xsd:sequence>
+ <xsd:element ref="correlationPropertyRetrievalExpression" minOccurs="1" maxOccurs="unbounded"/>
+ </xsd:sequence>
+ <xsd:attribute name="name" type="xsd:string" use="optional"/>
+ <xsd:attribute name="type" type="xsd:QName"/>
+ </xsd:extension>
+ </xsd:complexContent>
+ </xsd:complexType>
+
+ <xsd:element name="correlationPropertyBinding" type="tCorrelationPropertyBinding"/>
+ <xsd:complexType name="tCorrelationPropertyBinding">
+ <xsd:complexContent>
+ <xsd:extension base="tBaseElement">
+ <xsd:sequence>
+ <xsd:element name="dataPath" type="tFormalExpression" minOccurs="1" maxOccurs="1"/>
+ </xsd:sequence>
+ <xsd:attribute name="correlationPropertyRef" type="xsd:QName" use="required"/>
+ </xsd:extension>
+ </xsd:complexContent>
+ </xsd:complexType>
+
+ <xsd:element name="correlationPropertyRetrievalExpression" type="tCorrelationPropertyRetrievalExpression"/>
+ <xsd:complexType name="tCorrelationPropertyRetrievalExpression">
+ <xsd:complexContent>
+ <xsd:extension base="tBaseElement">
+ <xsd:sequence>
+ <xsd:element name="messagePath" type="tFormalExpression" minOccurs="1" maxOccurs="1"/>
+ </xsd:sequence>
+ <xsd:attribute name="messageRef" type="xsd:QName" use="required"/>
+ </xsd:extension>
+ </xsd:complexContent>
+ </xsd:complexType>
+
+ <xsd:element name="correlationSubscription" type="tCorrelationSubscription"/>
+ <xsd:complexType name="tCorrelationSubscription">
+ <xsd:complexContent>
+ <xsd:extension base="tBaseElement">
+ <xsd:sequence>
+ <xsd:element ref="correlationPropertyBinding" minOccurs="0" maxOccurs="unbounded"/>
+ </xsd:sequence>
+ <xsd:attribute name="correlationKeyRef" type="xsd:QName" use="required"/>
+ </xsd:extension>
+ </xsd:complexContent>
+ </xsd:complexType>
+
+ <xsd:element name="dataAssociation" type="tDataAssociation" />
+ <xsd:complexType name="tDataAssociation">
+ <xsd:complexContent>
+ <xsd:extension base="tBaseElement">
+ <xsd:sequence>
+ <xsd:element name="sourceRef" type="xsd:IDREF" minOccurs="0" maxOccurs="unbounded"/>
+ <xsd:element name="targetRef" type="xsd:IDREF" minOccurs="1" maxOccurs="1"/>
+ <xsd:element name="transformation" type="tFormalExpression" minOccurs="0" maxOccurs="1"/>
+ <xsd:element ref="assignment" minOccurs="0" maxOccurs="unbounded"/>
+ </xsd:sequence>
+ </xsd:extension>
+ </xsd:complexContent>
+ </xsd:complexType>
+
+ <xsd:element name="dataInput" type="tDataInput" />
+ <xsd:complexType name="tDataInput">
+ <xsd:complexContent>
+ <xsd:extension base="tBaseElement">
+ <xsd:sequence>
+ <xsd:element ref="dataState" minOccurs="0" maxOccurs="1"/>
+ </xsd:sequence>
+ <xsd:attribute name="name" type="xsd:string" use="optional"/>
+ <xsd:attribute name="itemSubjectRef" type="xsd:QName" />
+ <xsd:attribute name="isCollection" type="xsd:boolean" default="false"/>
+ </xsd:extension>
+ </xsd:complexContent>
+ </xsd:complexType>
+
+ <xsd:element name="dataInputAssociation" type="tDataInputAssociation" />
+ <xsd:complexType name="tDataInputAssociation">
+ <xsd:complexContent>
+ <xsd:extension base="tDataAssociation"/>
+ </xsd:complexContent>
+ </xsd:complexType>
+
+ <xsd:element name="dataObject" type="tDataObject" substitutionGroup="flowElement"/>
+ <xsd:complexType name="tDataObject">
+ <xsd:complexContent>
+ <xsd:extension base="tFlowElement">
+ <xsd:sequence>
+ <xsd:element ref="dataState" minOccurs="0" maxOccurs="1"/>
+ </xsd:sequence>
+ <xsd:attribute name="itemSubjectRef" type="xsd:QName"/>
+ <xsd:attribute name="isCollection" type="xsd:boolean" default="false"/>
+ </xsd:extension>
+ </xsd:complexContent>
+ </xsd:complexType>
+
+ <xsd:element name="dataObjectReference" type="tDataObjectReference" substitutionGroup="flowElement"/>
+ <xsd:complexType name="tDataObjectReference">
+ <xsd:complexContent>
+ <xsd:extension base="tFlowElement">
+ <xsd:sequence>
+ <xsd:element ref="dataState" minOccurs="0" maxOccurs="1"/>
+ </xsd:sequence>
+ <xsd:attribute name="itemSubjectRef" type="xsd:QName"/>
+ <xsd:attribute name="dataObjectRef" type="xsd:IDREF"/>
+ </xsd:extension>
+ </xsd:complexContent>
+ </xsd:complexType>
+
+ <xsd:element name="dataOutput" type="tDataOutput" />
+ <xsd:complexType name="tDataOutput">
+ <xsd:complexContent>
+ <xsd:extension base="tBaseElement">
+ <xsd:sequence>
+ <xsd:element ref="dataState" minOccurs="0" maxOccurs="1"/>
+ </xsd:sequence>
+ <xsd:attribute name="name" type="xsd:string" use="optional" />
+ <xsd:attribute name="itemSubjectRef" type="xsd:QName"/>
+ <xsd:attribute name="isCollection" type="xsd:boolean" default="false"/>
+ </xsd:extension>
+ </xsd:complexContent>
+ </xsd:complexType>
+
+ <xsd:element name="dataOutputAssociation" type="tDataOutputAssociation" />
+ <xsd:complexType name="tDataOutputAssociation">
+ <xsd:complexContent>
+ <xsd:extension base="tDataAssociation"/>
+ </xsd:complexContent>
+ </xsd:complexType>
+
+ <xsd:element name="dataState" type="tDataState" />
+ <xsd:complexType name="tDataState">
+ <xsd:complexContent>
+ <xsd:extension base="tBaseElement">
+ <xsd:attribute name="name" type="xsd:string"/>
+ </xsd:extension>
+ </xsd:complexContent>
+ </xsd:complexType>
+
+ <xsd:element name="dataStore" type="tDataStore" substitutionGroup="rootElement"/>
+ <xsd:complexType name="tDataStore">
+ <xsd:complexContent>
+ <xsd:extension base="tRootElement">
+ <xsd:sequence>
+ <xsd:element ref="dataState" minOccurs="0" maxOccurs="1"/>
+ </xsd:sequence>
+ <xsd:attribute name="name" type="xsd:string"/>
+ <xsd:attribute name="capacity" type="xsd:integer"/>
+ <xsd:attribute name="isUnlimited" type="xsd:boolean" default="true"/>
+ <xsd:attribute name="itemSubjectRef" type="xsd:QName"/>
+ </xsd:extension>
+ </xsd:complexContent>
+ </xsd:complexType>
+
+ <xsd:element name="dataStoreReference" type="tDataStoreReference" substitutionGroup="flowElement"/>
+ <xsd:complexType name="tDataStoreReference">
+ <xsd:complexContent>
+ <xsd:extension base="tFlowElement">
+ <xsd:sequence>
+ <xsd:element ref="dataState" minOccurs="0" maxOccurs="1"/>
+ </xsd:sequence>
+ <xsd:attribute name="itemSubjectRef" type="xsd:QName"/>
+ <xsd:attribute name="dataStoreRef" type="xsd:QName"/>
+ </xsd:extension>
+ </xsd:complexContent>
+ </xsd:complexType>
+
+ <xsd:element name="documentation" type="tDocumentation"/>
+ <xsd:complexType name="tDocumentation" mixed="true">
+ <xsd:sequence>
+ <xsd:any namespace="##any" processContents="lax" minOccurs="0"/>
+ </xsd:sequence>
+ <xsd:attribute name="id" type="xsd:ID" use="optional"/>
+ <xsd:attribute name="textFormat" type="xsd:string" default="text/plain"/>
+ </xsd:complexType>
+
+ <xsd:element name="endEvent" type="tEndEvent" substitutionGroup="flowElement"/>
+ <xsd:complexType name="tEndEvent">
+ <xsd:complexContent>
+ <xsd:extension base="tThrowEvent"/>
+ </xsd:complexContent>
+ </xsd:complexType>
+
+ <xsd:element name="endPoint" type="tEndPoint" substitutionGroup="rootElement"/>
+ <xsd:complexType name="tEndPoint">
+ <xsd:complexContent>
+ <xsd:extension base="tRootElement"/>
+ </xsd:complexContent>
+ </xsd:complexType>
+
+ <xsd:element name="error" type="tError" substitutionGroup="rootElement"/>
+ <xsd:complexType name="tError">
+ <xsd:complexContent>
+ <xsd:extension base="tRootElement">
+ <xsd:attribute name="name" type="xsd:string"/>
+ <xsd:attribute name="errorCode" type="xsd:string"/>
+ <xsd:attribute name="structureRef" type="xsd:QName"/>
+ </xsd:extension>
+ </xsd:complexContent>
+ </xsd:complexType>
+
+ <xsd:element name="errorEventDefinition" type="tErrorEventDefinition" substitutionGroup="eventDefinition"/>
+ <xsd:complexType name="tErrorEventDefinition">
+ <xsd:complexContent>
+ <xsd:extension base="tEventDefinition">
+ <xsd:attribute name="errorRef" type="xsd:QName"/>
+ </xsd:extension>
+ </xsd:complexContent>
+ </xsd:complexType>
+
+ <xsd:element name="escalation" type="tEscalation" substitutionGroup="rootElement"/>
+ <xsd:complexType name="tEscalation">
+ <xsd:complexContent>
+ <xsd:extension base="tRootElement">
+ <xsd:attribute name="name" type="xsd:string"/>
+ <xsd:attribute name="escalationCode" type="xsd:string"/>
+ <xsd:attribute name="structureRef" type="xsd:QName"/>
+ </xsd:extension>
+ </xsd:complexContent>
+ </xsd:complexType>
+
+ <xsd:element name="escalationEventDefinition" type="tEscalationEventDefinition" substitutionGroup="eventDefinition"/>
+ <xsd:complexType name="tEscalationEventDefinition">
+ <xsd:complexContent>
+ <xsd:extension base="tEventDefinition">
+ <xsd:attribute name="escalationRef" type="xsd:QName"/>
+ </xsd:extension>
+ </xsd:complexContent>
+ </xsd:complexType>
+
+ <xsd:element name="event" type="tEvent" substitutionGroup="flowElement"/>
+ <xsd:complexType name="tEvent" abstract="true">
+ <xsd:complexContent>
+ <xsd:extension base="tFlowNode">
+ <xsd:sequence>
+ <xsd:element ref="property" minOccurs="0" maxOccurs="unbounded"/>
+ </xsd:sequence>
+ </xsd:extension>
+ </xsd:complexContent>
+ </xsd:complexType>
+
+ <xsd:element name="eventBasedGateway" type="tEventBasedGateway" substitutionGroup="flowElement"/>
+ <xsd:complexType name="tEventBasedGateway">
+ <xsd:complexContent>
+ <xsd:extension base="tGateway">
+ <xsd:attribute name="instantiate" type="xsd:boolean" default="false"/>
+ <xsd:attribute name="eventGatewayType" type="tEventBasedGatewayType" default="Exclusive"/>
+ </xsd:extension>
+ </xsd:complexContent>
+ </xsd:complexType>
+
+ <xsd:simpleType name="tEventBasedGatewayType">
+ <xsd:restriction base="xsd:string">
+ <xsd:enumeration value="Exclusive"/>
+ <xsd:enumeration value="Parallel"/>
+ </xsd:restriction>
+ </xsd:simpleType>
+
+ <xsd:element name="eventDefinition" type="tEventDefinition" substitutionGroup="rootElement"/>
+ <xsd:complexType name="tEventDefinition" abstract="true">
+ <xsd:complexContent>
+ <xsd:extension base="tRootElement"/>
+ </xsd:complexContent>
+ </xsd:complexType>
+
+ <xsd:element name="exclusiveGateway" type="tExclusiveGateway" substitutionGroup="flowElement"/>
+ <xsd:complexType name="tExclusiveGateway">
+ <xsd:complexContent>
+ <xsd:extension base="tGateway">
+ <xsd:attribute name="default" type="xsd:IDREF" use="optional"/>
+ </xsd:extension>
+ </xsd:complexContent>
+ </xsd:complexType>
+
+ <xsd:element name="expression" type="tExpression"/>
+ <xsd:complexType name="tExpression">
+ <xsd:complexContent>
+ <xsd:extension base="tBaseElementWithMixedContent"/>
+ </xsd:complexContent>
+ </xsd:complexType>
+
+ <xsd:element name="extension" type="tExtension"/>
+ <xsd:complexType name="tExtension">
+ <xsd:sequence>
+ <xsd:element ref="documentation" minOccurs="0" maxOccurs="unbounded"/>
+ </xsd:sequence>
+ <xsd:attribute name="definition" type="xsd:QName"/>
+ <xsd:attribute name="mustUnderstand" type="xsd:boolean" use="optional" default="false"/>
+ </xsd:complexType>
+
+ <xsd:element name="extensionElements" type="tExtensionElements" />
+ <xsd:complexType name="tExtensionElements">
+ <xsd:sequence>
+ <xsd:any namespace="##other" processContents="lax" minOccurs="0" maxOccurs="unbounded" />
+ </xsd:sequence>
+ </xsd:complexType>
+
+ <xsd:element name="flowElement" type="tFlowElement"/>
+ <xsd:complexType name="tFlowElement" abstract="true">
+ <xsd:complexContent>
+ <xsd:extension base="tBaseElement">
+ <xsd:sequence>
+ <xsd:element ref="auditing" minOccurs="0" maxOccurs="1"/>
+ <xsd:element ref="monitoring" minOccurs="0" maxOccurs="1"/>
+ <xsd:element name="categoryValueRef" type="xsd:QName" minOccurs="0" maxOccurs="unbounded"/>
+ </xsd:sequence>
+ <xsd:attribute name="name" type="xsd:string"/>
+ </xsd:extension>
+ </xsd:complexContent>
+ </xsd:complexType>
+
+ <xsd:element name="flowNode" type="tFlowNode"/>
+ <xsd:complexType name="tFlowNode" abstract="true">
+ <xsd:complexContent>
+ <xsd:extension base="tFlowElement">
+ <xsd:sequence>
+ <xsd:element name="incoming" type="xsd:QName" minOccurs="0" maxOccurs="unbounded"/>
+ <xsd:element name="outgoing" type="xsd:QName" minOccurs="0" maxOccurs="unbounded"/>
+ </xsd:sequence>
+ </xsd:extension>
+ </xsd:complexContent>
+ </xsd:complexType>
+
+ <xsd:element name="formalExpression" type="tFormalExpression" substitutionGroup="expression"/>
+ <xsd:complexType name="tFormalExpression">
+ <xsd:complexContent>
+ <xsd:extension base="tExpression">
+ <xsd:attribute name="language" type="xsd:anyURI" use="optional"/>
+ <xsd:attribute name="evaluatesToTypeRef" type="xsd:QName"/>
+ </xsd:extension>
+ </xsd:complexContent>
+ </xsd:complexType>
+
+ <xsd:element name="gateway" type="tGateway" abstract="true"/>
+ <xsd:complexType name="tGateway">
+ <xsd:complexContent>
+ <xsd:extension base="tFlowNode">
+ <xsd:attribute name="gatewayDirection" type="tGatewayDirection" default="Unspecified"/>
+ </xsd:extension>
+ </xsd:complexContent>
+ </xsd:complexType>
+
+ <xsd:simpleType name="tGatewayDirection">
+ <xsd:restriction base="xsd:string">
+ <xsd:enumeration value="Unspecified"/>
+ <xsd:enumeration value="Converging"/>
+ <xsd:enumeration value="Diverging"/>
+ <xsd:enumeration value="Mixed"/>
+ </xsd:restriction>
+ </xsd:simpleType>
+
+ <xsd:element name="globalBusinessRuleTask" type="tGlobalBusinessRuleTask" substitutionGroup="rootElement"/>
+ <xsd:complexType name="tGlobalBusinessRuleTask">
+ <xsd:complexContent>
+ <xsd:extension base="tGlobalTask">
+ <xsd:attribute name="implementation" type="tImplementation" default="##unspecified"/>
+ </xsd:extension>
+ </xsd:complexContent>
+ </xsd:complexType>
+
+ <xsd:element name="globalChoreographyTask" type="tGlobalChoreographyTask" substitutionGroup="choreography"/>
+ <xsd:complexType name="tGlobalChoreographyTask">
+ <xsd:complexContent>
+ <xsd:extension base="tChoreography">
+ <xsd:attribute name="initiatingParticipantRef" type="xsd:QName"/>
+ </xsd:extension>
+ </xsd:complexContent>
+ </xsd:complexType>
+ <xsd:element name="globalConversation" type="tGlobalConversation" substitutionGroup="collaboration"/>
+ <xsd:complexType name="tGlobalConversation">
+ <xsd:complexContent>
+ <xsd:extension base="tCollaboration"/>
+ </xsd:complexContent>
+ </xsd:complexType>
+
+ <xsd:element name="globalManualTask" type="tGlobalManualTask" substitutionGroup="rootElement"/>
+ <xsd:complexType name="tGlobalManualTask">
+ <xsd:complexContent>
+ <xsd:extension base="tGlobalTask"/>
+ </xsd:complexContent>
+ </xsd:complexType>
+
+ <xsd:element name="globalScriptTask" type="tGlobalScriptTask" substitutionGroup="rootElement"/>
+ <xsd:complexType name="tGlobalScriptTask">
+ <xsd:complexContent>
+ <xsd:extension base="tGlobalTask">
+ <xsd:sequence>
+ <xsd:element ref="script" minOccurs="0" maxOccurs="1"/>
+ </xsd:sequence>
+ <xsd:attribute name="scriptLanguage" type="xsd:anyURI"/>
+ </xsd:extension>
+ </xsd:complexContent>
+ </xsd:complexType>
+
+ <xsd:element name="globalTask" type="tGlobalTask" substitutionGroup="rootElement"/>
+ <xsd:complexType name="tGlobalTask">
+ <xsd:complexContent>
+ <xsd:extension base="tCallableElement">
+ <xsd:sequence>
+ <xsd:element ref="resourceRole" minOccurs="0" maxOccurs="unbounded"/>
+ </xsd:sequence>
+ </xsd:extension>
+ </xsd:complexContent>
+ </xsd:complexType>
+
+ <xsd:element name="globalUserTask" type="tGlobalUserTask" substitutionGroup="rootElement"/>
+ <xsd:complexType name="tGlobalUserTask">
+ <xsd:complexContent>
+ <xsd:extension base="tGlobalTask">
+ <xsd:sequence>
+ <xsd:element ref="rendering" minOccurs="0" maxOccurs="unbounded"/>
+ </xsd:sequence>
+ <xsd:attribute name="implementation" type="tImplementation" default="##unspecified"/>
+ </xsd:extension>
+ </xsd:complexContent>
+ </xsd:complexType>
+
+ <xsd:element name="group" type="tGroup" substitutionGroup="artifact"/>
+ <xsd:complexType name="tGroup">
+ <xsd:complexContent>
+ <xsd:extension base="tArtifact">
+ <xsd:attribute name="categoryValueRef" type="xsd:QName" use="optional"/>
+ </xsd:extension>
+ </xsd:complexContent>
+ </xsd:complexType>
+
+ <xsd:element name="humanPerformer" type="tHumanPerformer" substitutionGroup="performer"/>
+ <xsd:complexType name="tHumanPerformer">
+ <xsd:complexContent>
+ <xsd:extension base="tPerformer"/>
+ </xsd:complexContent>
+ </xsd:complexType>
+
+ <xsd:simpleType name="tImplementation">
+ <xsd:union memberTypes="xsd:anyURI">
+ <xsd:simpleType>
+ <xsd:restriction base="xsd:token">
+ <xsd:enumeration value="##unspecified" />
+ <xsd:enumeration value="##WebService" />
+ </xsd:restriction>
+ </xsd:simpleType>
+ </xsd:union>
+ </xsd:simpleType>
+
+ <xsd:element name="implicitThrowEvent" type="tImplicitThrowEvent" substitutionGroup="flowElement"/>
+ <xsd:complexType name="tImplicitThrowEvent">
+ <xsd:complexContent>
+ <xsd:extension base="tThrowEvent"/>
+ </xsd:complexContent>
+ </xsd:complexType>
+
+ <xsd:element name="inclusiveGateway" type="tInclusiveGateway" substitutionGroup="flowElement"/>
+ <xsd:complexType name="tInclusiveGateway">
+ <xsd:complexContent>
+ <xsd:extension base="tGateway">
+ <xsd:attribute name="default" type="xsd:IDREF" use="optional"/>
+ </xsd:extension>
+ </xsd:complexContent>
+ </xsd:complexType>
+
+ <xsd:element name="inputSet" type="tInputSet" />
+ <xsd:complexType name="tInputSet">
+ <xsd:complexContent>
+ <xsd:extension base="tBaseElement">
+ <xsd:sequence>
+ <xsd:element name="dataInputRefs" type="xsd:IDREF" minOccurs="0" maxOccurs="unbounded"/>
+ <xsd:element name="optionalInputRefs" type="xsd:IDREF" minOccurs="0" maxOccurs="unbounded"/>
+ <xsd:element name="whileExecutingInputRefs" type="xsd:IDREF" minOccurs="0" maxOccurs="unbounded"/>
+ <xsd:element name="outputSetRefs" type="xsd:IDREF" minOccurs="0" maxOccurs="unbounded"/>
+ </xsd:sequence>
+ <xsd:attribute name="name" type="xsd:string" />
+ </xsd:extension>
+ </xsd:complexContent>
+ </xsd:complexType>
+
+ <xsd:element name="interface" type="tInterface" substitutionGroup="rootElement"/>
+ <xsd:complexType name="tInterface">
+ <xsd:complexContent>
+ <xsd:extension base="tRootElement">
+ <xsd:sequence>
+ <xsd:element ref="operation" minOccurs="1" maxOccurs="unbounded"/>
+ </xsd:sequence>
+ <xsd:attribute name="name" type="xsd:string" use="required"/>
+ <xsd:attribute name="implementationRef" type="xsd:QName"/>
+ </xsd:extension>
+ </xsd:complexContent>
+ </xsd:complexType>
+
+ <xsd:element name="intermediateCatchEvent" type="tIntermediateCatchEvent" substitutionGroup="flowElement"/>
+ <xsd:complexType name="tIntermediateCatchEvent">
+ <xsd:complexContent>
+ <xsd:extension base="tCatchEvent"/>
+ </xsd:complexContent>
+ </xsd:complexType>
+
+ <xsd:element name="intermediateThrowEvent" type="tIntermediateThrowEvent" substitutionGroup="flowElement"/>
+ <xsd:complexType name="tIntermediateThrowEvent">
+ <xsd:complexContent>
+ <xsd:extension base="tThrowEvent"/>
+ </xsd:complexContent>
+ </xsd:complexType>
+
+ <xsd:element name="ioBinding" type="tInputOutputBinding" />
+ <xsd:complexType name="tInputOutputBinding">
+ <xsd:complexContent>
+ <xsd:extension base="tBaseElement">
+ <xsd:attribute name="operationRef" type="xsd:QName" use="required"/>
+ <xsd:attribute name="inputDataRef" type="xsd:IDREF" use="required"/>
+ <xsd:attribute name="outputDataRef" type="xsd:IDREF" use="required"/>
+ </xsd:extension>
+ </xsd:complexContent>
+ </xsd:complexType>
+
+ <xsd:element name="ioSpecification" type="tInputOutputSpecification" />
+ <xsd:complexType name="tInputOutputSpecification">
+ <xsd:complexContent>
+ <xsd:extension base="tBaseElement">
+ <xsd:sequence>
+ <xsd:element ref="dataInput" minOccurs="0" maxOccurs="unbounded"/>
+ <xsd:element ref="dataOutput" minOccurs="0" maxOccurs="unbounded"/>
+ <xsd:element ref="inputSet" minOccurs="1" maxOccurs="unbounded"/>
+ <xsd:element ref="outputSet" minOccurs="1" maxOccurs="unbounded"/>
+ </xsd:sequence>
+ </xsd:extension>
+ </xsd:complexContent>
+ </xsd:complexType>
+
+ <xsd:element name="itemDefinition" type="tItemDefinition" substitutionGroup="rootElement"/>
+ <xsd:complexType name="tItemDefinition">
+ <xsd:complexContent>
+ <xsd:extension base="tRootElement">
+ <xsd:attribute name="structureRef" type="xsd:QName"/>
+ <xsd:attribute name="isCollection" type="xsd:boolean" default="false"/>
+ <xsd:attribute name="itemKind" type="tItemKind" default="Information"/>
+ </xsd:extension>
+ </xsd:complexContent>
+ </xsd:complexType>
+
+ <xsd:simpleType name="tItemKind">
+ <xsd:restriction base="xsd:string">
+ <xsd:enumeration value="Information"/>
+ <xsd:enumeration value="Physical"/>
+ </xsd:restriction>
+ </xsd:simpleType>
+
+ <xsd:element name="lane" type="tLane"/>
+ <xsd:complexType name="tLane">
+ <xsd:complexContent>
+ <xsd:extension base="tBaseElement">
+ <xsd:sequence>
+ <xsd:element name="partitionElement" type="tBaseElement" minOccurs="0" maxOccurs="1"/>
+ <xsd:element name="flowNodeRef" type="xsd:IDREF" minOccurs="0" maxOccurs="unbounded"/>
+ <xsd:element name="childLaneSet" type="tLaneSet" minOccurs="0" maxOccurs="1"/>
+ </xsd:sequence>
+ <xsd:attribute name="name" type="xsd:string"/>
+ <xsd:attribute name="partitionElementRef" type="xsd:QName"/>
+ </xsd:extension>
+ </xsd:complexContent>
+ </xsd:complexType>
+
+ <xsd:element name="laneSet" type="tLaneSet"/>
+ <xsd:complexType name="tLaneSet">
+ <xsd:complexContent>
+ <xsd:extension base="tBaseElement">
+ <xsd:sequence>
+ <xsd:element ref="lane" minOccurs="0" maxOccurs="unbounded"/>
+ </xsd:sequence>
+ <xsd:attribute name="name" type="xsd:string"/>
+ </xsd:extension>
+ </xsd:complexContent>
+ </xsd:complexType>
+
+ <xsd:element name="linkEventDefinition" type="tLinkEventDefinition" substitutionGroup="eventDefinition"/>
+ <xsd:complexType name="tLinkEventDefinition">
+ <xsd:complexContent>
+ <xsd:extension base="tEventDefinition">
+ <xsd:sequence>
+ <xsd:element name="source" type="xsd:QName" minOccurs="0" maxOccurs="unbounded"/>
+ <xsd:element name="target" type="xsd:QName" minOccurs="0" maxOccurs="1"/>
+ </xsd:sequence>
+ <xsd:attribute name="name" type="xsd:string" use="required"/>
+ </xsd:extension>
+ </xsd:complexContent>
+ </xsd:complexType>
+
+ <xsd:element name="loopCharacteristics" type="tLoopCharacteristics"/>
+ <xsd:complexType name="tLoopCharacteristics" abstract="true">
+ <xsd:complexContent>
+ <xsd:extension base="tBaseElement"/>
+ </xsd:complexContent>
+ </xsd:complexType>
+
+ <xsd:element name="manualTask" type="tManualTask" substitutionGroup="flowElement"/>
+ <xsd:complexType name="tManualTask">
+ <xsd:complexContent>
+ <xsd:extension base="tTask"/>
+ </xsd:complexContent>
+ </xsd:complexType>
+
+ <xsd:element name="message" type="tMessage" substitutionGroup="rootElement"/>
+ <xsd:complexType name="tMessage">
+ <xsd:complexContent>
+ <xsd:extension base="tRootElement">
+ <xsd:attribute name="name" type="xsd:string"/>
+ <xsd:attribute name="itemRef" type="xsd:QName"/>
+ </xsd:extension>
+ </xsd:complexContent>
+ </xsd:complexType>
+
+ <xsd:element name="messageEventDefinition" type="tMessageEventDefinition" substitutionGroup="eventDefinition"/>
+ <xsd:complexType name="tMessageEventDefinition">
+ <xsd:complexContent>
+ <xsd:extension base="tEventDefinition">
+ <xsd:sequence>
+ <xsd:element name="operationRef" type="xsd:QName" minOccurs="0" maxOccurs="1"/>
+ </xsd:sequence>
+ <xsd:attribute name="messageRef" type="xsd:QName"/>
+ </xsd:extension>
+ </xsd:complexContent>
+ </xsd:complexType>
+
+ <xsd:element name="messageFlow" type="tMessageFlow"/>
+ <xsd:complexType name="tMessageFlow">
+ <xsd:complexContent>
+ <xsd:extension base="tBaseElement">
+ <xsd:attribute name="name" type="xsd:string" use="optional"/>
+ <xsd:attribute name="sourceRef" type="xsd:QName" use="required"/>
+ <xsd:attribute name="targetRef" type="xsd:QName" use="required"/>
+ <xsd:attribute name="messageRef" type="xsd:QName"/>
+ </xsd:extension>
+ </xsd:complexContent>
+ </xsd:complexType>
+
+ <xsd:element name="messageFlowAssociation" type="tMessageFlowAssociation"/>
+ <xsd:complexType name="tMessageFlowAssociation">
+ <xsd:complexContent>
+ <xsd:extension base="tBaseElement">
+ <xsd:attribute name="innerMessageFlowRef" type="xsd:QName" use="required"/>
+ <xsd:attribute name="outerMessageFlowRef" type="xsd:QName" use="required"/>
+ </xsd:extension>
+ </xsd:complexContent>
+ </xsd:complexType>
+
+ <xsd:element name="monitoring" type="tMonitoring"/>
+ <xsd:complexType name="tMonitoring">
+ <xsd:complexContent>
+ <xsd:extension base="tBaseElement"/>
+ </xsd:complexContent>
+ </xsd:complexType>
+
+ <xsd:element name="multiInstanceLoopCharacteristics" type="tMultiInstanceLoopCharacteristics" substitutionGroup="loopCharacteristics"/>
+ <xsd:complexType name="tMultiInstanceLoopCharacteristics">
+ <xsd:complexContent>
+ <xsd:extension base="tLoopCharacteristics">
+ <xsd:sequence>
+ <xsd:element name="loopCardinality" type="tExpression" minOccurs="0" maxOccurs="1"/>
+ <xsd:element name="loopDataInputRef" type="xsd:QName" minOccurs="0" maxOccurs="1"/>
+ <xsd:element name="loopDataOutputRef" type="xsd:QName" minOccurs="0" maxOccurs="1"/>
+ <xsd:element name="inputDataItem" type="tDataInput" minOccurs="0" maxOccurs="1"/>
+ <xsd:element name="outputDataItem" type="tDataOutput" minOccurs="0" maxOccurs="1"/>
+ <xsd:element ref="complexBehaviorDefinition" minOccurs="0" maxOccurs="unbounded"/>
+ <xsd:element name="completionCondition" type="tExpression" minOccurs="0" maxOccurs="1"/>
+ </xsd:sequence>
+ <xsd:attribute name="isSequential" type="xsd:boolean" default="false"/>
+ <xsd:attribute name="behavior" type="tMultiInstanceFlowCondition" default="All"/>
+ <xsd:attribute name="oneBehaviorEventRef" type="xsd:QName" use="optional"/>
+ <xsd:attribute name="noneBehaviorEventRef" type="xsd:QName" use="optional"/>
+ </xsd:extension>
+ </xsd:complexContent>
+ </xsd:complexType>
+
+ <xsd:simpleType name="tMultiInstanceFlowCondition">
+ <xsd:restriction base="xsd:string">
+ <xsd:enumeration value="None"/>
+ <xsd:enumeration value="One"/>
+ <xsd:enumeration value="All"/>
+ <xsd:enumeration value="Complex"/>
+ </xsd:restriction>
+ </xsd:simpleType>
+
+ <xsd:element name="operation" type="tOperation"/>
+ <xsd:complexType name="tOperation">
+ <xsd:complexContent>
+ <xsd:extension base="tBaseElement">
+ <xsd:sequence>
+ <xsd:element name="inMessageRef" type="xsd:QName" minOccurs="1" maxOccurs="1"/>
+ <xsd:element name="outMessageRef" type="xsd:QName" minOccurs="0" maxOccurs="1"/>
+ <xsd:element name="errorRef" type="xsd:QName" minOccurs="0" maxOccurs="unbounded"/>
+ </xsd:sequence>
+ <xsd:attribute name="name" type="xsd:string" use="required"/>
+ <xsd:attribute name="implementationRef" type="xsd:QName"/>
+ </xsd:extension>
+ </xsd:complexContent>
+ </xsd:complexType>
+
+ <xsd:element name="outputSet" type="tOutputSet" />
+ <xsd:complexType name="tOutputSet">
+ <xsd:complexContent>
+ <xsd:extension base="tBaseElement">
+ <xsd:sequence>
+ <xsd:element name="dataOutputRefs" type="xsd:IDREF" minOccurs="0" maxOccurs="unbounded"/>
+ <xsd:element name="optionalOutputRefs" type="xsd:IDREF" minOccurs="0" maxOccurs="unbounded"/>
+ <xsd:element name="whileExecutingOutputRefs" type="xsd:IDREF" minOccurs="0" maxOccurs="unbounded"/>
+ <xsd:element name="inputSetRefs" type="xsd:IDREF" minOccurs="0" maxOccurs="unbounded"/>
+ </xsd:sequence>
+ <xsd:attribute name="name" type="xsd:string"/>
+ </xsd:extension>
+ </xsd:complexContent>
+ </xsd:complexType>
+
+ <xsd:element name="parallelGateway" type="tParallelGateway" substitutionGroup="flowElement"/>
+ <xsd:complexType name="tParallelGateway">
+ <xsd:complexContent>
+ <xsd:extension base="tGateway"/>
+ </xsd:complexContent>
+ </xsd:complexType>
+
+ <xsd:element name="participant" type="tParticipant"/>
+ <xsd:complexType name="tParticipant">
+ <xsd:complexContent>
+ <xsd:extension base="tBaseElement">
+ <xsd:sequence>
+ <xsd:element name="interfaceRef" type="xsd:QName" minOccurs="0" maxOccurs="unbounded"/>
+ <xsd:element name="endPointRef" type="xsd:QName" minOccurs="0" maxOccurs="unbounded"/>
+ <xsd:element ref="participantMultiplicity" minOccurs="0" maxOccurs="1"/>
+ </xsd:sequence>
+ <xsd:attribute name="name" type="xsd:string"/>
+ <xsd:attribute name="processRef" type="xsd:QName" use="optional"/>
+ </xsd:extension>
+ </xsd:complexContent>
+ </xsd:complexType>
+
+ <xsd:element name="participantAssociation" type="tParticipantAssociation"/>
+ <xsd:complexType name="tParticipantAssociation">
+ <xsd:complexContent>
+ <xsd:extension base="tBaseElement">
+ <xsd:sequence>
+ <xsd:element name="innerParticipantRef" type="xsd:QName" minOccurs="1" maxOccurs="1"/>
+ <xsd:element name="outerParticipantRef" type="xsd:QName" minOccurs="1" maxOccurs="1"/>
+ </xsd:sequence>
+ </xsd:extension>
+ </xsd:complexContent>
+ </xsd:complexType>
+
+ <xsd:element name="participantMultiplicity" type="tParticipantMultiplicity"/>
+ <xsd:complexType name="tParticipantMultiplicity">
+ <xsd:complexContent>
+ <xsd:extension base="tBaseElement">
+ <xsd:attribute name="minimum" type="xsd:int" default="0"/>
+ <xsd:attribute name="maximum" type="xsd:int" default="1"/>
+ </xsd:extension>
+ </xsd:complexContent>
+ </xsd:complexType>
+
+ <xsd:element name="partnerEntity" type="tPartnerEntity" substitutionGroup="rootElement"/>
+ <xsd:complexType name="tPartnerEntity">
+ <xsd:complexContent>
+ <xsd:extension base="tRootElement">
+ <xsd:sequence>
+ <xsd:element name="participantRef" type="xsd:QName" minOccurs="0" maxOccurs="unbounded"/>
+ </xsd:sequence>
+ <xsd:attribute name="name" type="xsd:string"/>
+ </xsd:extension>
+ </xsd:complexContent>
+ </xsd:complexType>
+
+ <xsd:element name="partnerRole" type="tPartnerRole" substitutionGroup="rootElement"/>
+ <xsd:complexType name="tPartnerRole">
+ <xsd:complexContent>
+ <xsd:extension base="tRootElement">
+ <xsd:sequence>
+ <xsd:element name="participantRef" type="xsd:QName" minOccurs="0" maxOccurs="unbounded"/>
+ </xsd:sequence>
+ <xsd:attribute name="name" type="xsd:string"/>
+ </xsd:extension>
+ </xsd:complexContent>
+ </xsd:complexType>
+
+ <xsd:element name="performer" type="tPerformer" substitutionGroup="resourceRole"/>
+ <xsd:complexType name="tPerformer">
+ <xsd:complexContent>
+ <xsd:extension base="tResourceRole"/>
+ </xsd:complexContent>
+ </xsd:complexType>
+
+ <xsd:element name="potentialOwner" type="tPotentialOwner" substitutionGroup="performer"/>
+ <xsd:complexType name="tPotentialOwner">
+ <xsd:complexContent>
+ <xsd:extension base="tHumanPerformer"/>
+ </xsd:complexContent>
+ </xsd:complexType>
+
+ <xsd:element name="process" type="tProcess" substitutionGroup="rootElement"/>
+ <xsd:complexType name="tProcess">
+ <xsd:complexContent>
+ <xsd:extension base="tCallableElement">
+ <xsd:sequence>
+ <xsd:element ref="auditing" minOccurs="0" maxOccurs="1"/>
+ <xsd:element ref="monitoring" minOccurs="0" maxOccurs="1"/>
+ <xsd:element ref="property" minOccurs="0" maxOccurs="unbounded"/>
+ <xsd:element ref="laneSet" minOccurs="0" maxOccurs="unbounded"/>
+ <xsd:element ref="flowElement" minOccurs="0" maxOccurs="unbounded"/>
+ <xsd:element ref="artifact" minOccurs="0" maxOccurs="unbounded"/>
+ <xsd:element ref="resourceRole" minOccurs="0" maxOccurs="unbounded"/>
+ <xsd:element ref="correlationSubscription" minOccurs="0" maxOccurs="unbounded"/>
+ <xsd:element name="supports" type="xsd:QName" minOccurs="0" maxOccurs="unbounded"/>
+ </xsd:sequence>
+ <xsd:attribute name="processType" type="tProcessType" default="None"/>
+ <xsd:attribute name="isClosed" type="xsd:boolean" default="false"/>
+ <xsd:attribute name="isExecutable" type="xsd:boolean"/>
+ <xsd:attribute name="definitionalCollaborationRef" type="xsd:QName" use="optional"/>
+ </xsd:extension>
+ </xsd:complexContent>
+ </xsd:complexType>
+
+ <xsd:simpleType name="tProcessType">
+ <xsd:restriction base="xsd:string">
+ <xsd:enumeration value="None"/>
+ <xsd:enumeration value="Public"/>
+ <xsd:enumeration value="Private"/>
+ </xsd:restriction>
+ </xsd:simpleType>
+
+ <xsd:element name="property" type="tProperty" />
+ <xsd:complexType name="tProperty">
+ <xsd:complexContent>
+ <xsd:extension base="tBaseElement">
+ <xsd:sequence>
+ <xsd:element ref="dataState" minOccurs="0" maxOccurs="1"/>
+ </xsd:sequence>
+ <xsd:attribute name="name" type="xsd:string"/>
+ <xsd:attribute name="itemSubjectRef" type="xsd:QName"/>
+ </xsd:extension>
+ </xsd:complexContent>
+ </xsd:complexType>
+
+ <xsd:element name="receiveTask" type="tReceiveTask" substitutionGroup="flowElement"/>
+ <xsd:complexType name="tReceiveTask">
+ <xsd:complexContent>
+ <xsd:extension base="tTask">
+ <xsd:attribute name="implementation" type="tImplementation" default="##WebService"/>
+ <xsd:attribute name="instantiate" type="xsd:boolean" default="false"/>
+ <xsd:attribute name="messageRef" type="xsd:QName" use="optional"/>
+ <xsd:attribute name="operationRef" type="xsd:QName" use="optional"/>
+ </xsd:extension>
+ </xsd:complexContent>
+ </xsd:complexType>
+
+ <xsd:element name="relationship" type="tRelationship"/>
+ <xsd:complexType name="tRelationship">
+ <xsd:complexContent>
+ <xsd:extension base="tBaseElement">
+ <xsd:sequence>
+ <xsd:element name="source" type="xsd:QName" minOccurs="1" maxOccurs="unbounded"/>
+ <xsd:element name="target" type="xsd:QName" minOccurs="1" maxOccurs="unbounded"/>
+ </xsd:sequence>
+ <xsd:attribute name="type" type="xsd:string" use="required"/>
+ <xsd:attribute name="direction" type="tRelationshipDirection"/>
+ </xsd:extension>
+ </xsd:complexContent>
+ </xsd:complexType>
+
+ <xsd:simpleType name="tRelationshipDirection">
+ <xsd:restriction base="xsd:string">
+ <xsd:enumeration value="None"/>
+ <xsd:enumeration value="Forward"/>
+ <xsd:enumeration value="Backward"/>
+ <xsd:enumeration value="Both"/>
+ </xsd:restriction>
+ </xsd:simpleType>
+
+ <xsd:element name="rendering" type="tRendering"/>
+ <xsd:complexType name="tRendering">
+ <xsd:complexContent>
+ <xsd:extension base="tBaseElement"/>
+ </xsd:complexContent>
+ </xsd:complexType>
+
+ <xsd:element name="resource" type="tResource" substitutionGroup="rootElement"/>
+ <xsd:complexType name="tResource">
+ <xsd:complexContent>
+ <xsd:extension base="tRootElement">
+ <xsd:sequence>
+ <xsd:element ref="resourceParameter" minOccurs="0" maxOccurs="unbounded"/>
+ </xsd:sequence>
+ <xsd:attribute name="name" type="xsd:string" use="required"/>
+ </xsd:extension>
+ </xsd:complexContent>
+ </xsd:complexType>
+
+ <xsd:element name="resourceAssignmentExpression" type="tResourceAssignmentExpression"/>
+ <xsd:complexType name="tResourceAssignmentExpression">
+ <xsd:complexContent>
+ <xsd:extension base="tBaseElement">
+ <xsd:sequence>
+ <xsd:element ref="expression" minOccurs="1" maxOccurs="1"/>
+ </xsd:sequence>
+ </xsd:extension>
+ </xsd:complexContent>
+ </xsd:complexType>
+
+ <xsd:element name="resourceParameter" type="tResourceParameter"/>
+ <xsd:complexType name="tResourceParameter">
+ <xsd:complexContent>
+ <xsd:extension base="tBaseElement">
+ <xsd:attribute name="name" type="xsd:string"/>
+ <xsd:attribute name="type" type="xsd:QName"/>
+ <xsd:attribute name="isRequired" type="xsd:boolean"/>
+ </xsd:extension>
+ </xsd:complexContent>
+ </xsd:complexType>
+
+ <xsd:element name="resourceParameterBinding" type="tResourceParameterBinding"/>
+ <xsd:complexType name="tResourceParameterBinding">
+ <xsd:complexContent>
+ <xsd:extension base="tBaseElement">
+ <xsd:sequence>
+ <xsd:element ref="expression" minOccurs="1" maxOccurs="1"/>
+ </xsd:sequence>
+ <xsd:attribute name="parameterRef" type="xsd:QName" use="required"/>
+ </xsd:extension>
+ </xsd:complexContent>
+ </xsd:complexType>
+
+ <xsd:element name="resourceRole" type="tResourceRole"/>
+ <xsd:complexType name="tResourceRole">
+ <xsd:complexContent>
+ <xsd:extension base="tBaseElement">
+ <xsd:choice>
+ <xsd:sequence>
+ <xsd:element name="resourceRef" type="xsd:QName"/>
+ <xsd:element ref="resourceParameterBinding" minOccurs="0" maxOccurs="unbounded"/>
+ </xsd:sequence>
+ <xsd:element ref="resourceAssignmentExpression" minOccurs="0" maxOccurs="1"/>
+ </xsd:choice>
+ <xsd:attribute name="name" type="xsd:string"/>
+ </xsd:extension>
+ </xsd:complexContent>
+ </xsd:complexType>
+
+ <xsd:element name="rootElement" type="tRootElement"/>
+ <xsd:complexType name="tRootElement" abstract="true">
+ <xsd:complexContent>
+ <xsd:extension base="tBaseElement"/>
+ </xsd:complexContent>
+ </xsd:complexType>
+
+ <xsd:element name="scriptTask" type="tScriptTask" substitutionGroup="flowElement"/>
+ <xsd:complexType name="tScriptTask">
+ <xsd:complexContent>
+ <xsd:extension base="tTask">
+ <xsd:sequence>
+ <xsd:element ref="script" minOccurs="0" maxOccurs="1"/>
+ </xsd:sequence>
+ <xsd:attribute name="scriptFormat" type="xsd:string"/>
+ </xsd:extension>
+ </xsd:complexContent>
+ </xsd:complexType>
+
+ <xsd:element name="script" type="tScript"/>
+ <xsd:complexType name="tScript" mixed="true">
+ <xsd:sequence>
+ <xsd:any namespace="##any" processContents="lax" minOccurs="0"/>
+ </xsd:sequence>
+ </xsd:complexType>
+
+ <xsd:element name="sendTask" type="tSendTask" substitutionGroup="flowElement"/>
+ <xsd:complexType name="tSendTask">
+ <xsd:complexContent>
+ <xsd:extension base="tTask">
+ <xsd:attribute name="implementation" type="tImplementation" default="##WebService"/>
+ <xsd:attribute name="messageRef" type="xsd:QName" use="optional"/>
+ <xsd:attribute name="operationRef" type="xsd:QName" use="optional"/>
+ </xsd:extension>
+ </xsd:complexContent>
+ </xsd:complexType>
+
+ <xsd:element name="sequenceFlow" type="tSequenceFlow" substitutionGroup="flowElement"/>
+ <xsd:complexType name="tSequenceFlow">
+ <xsd:complexContent>
+ <xsd:extension base="tFlowElement">
+ <xsd:sequence>
+ <xsd:element name="conditionExpression" type="tExpression" minOccurs="0" maxOccurs="1"/>
+ </xsd:sequence>
+ <xsd:attribute name="sourceRef" type="xsd:IDREF" use="required"/>
+ <xsd:attribute name="targetRef" type="xsd:IDREF" use="required"/>
+ <xsd:attribute name="isImmediate" type="xsd:boolean" use="optional"/>
+ </xsd:extension>
+ </xsd:complexContent>
+ </xsd:complexType>
+
+ <xsd:element name="serviceTask" type="tServiceTask" substitutionGroup="flowElement"/>
+ <xsd:complexType name="tServiceTask">
+ <xsd:complexContent>
+ <xsd:extension base="tTask">
+ <xsd:attribute name="implementation" type="tImplementation" default="##WebService"/>
+ <xsd:attribute name="operationRef" type="xsd:QName" use="optional"/>
+ </xsd:extension>
+ </xsd:complexContent>
+ </xsd:complexType>
+
+ <xsd:element name="signal" type="tSignal" substitutionGroup="rootElement"/>
+ <xsd:complexType name="tSignal">
+ <xsd:complexContent>
+ <xsd:extension base="tRootElement">
+ <xsd:attribute name="name" type="xsd:string"/>
+ <xsd:attribute name="structureRef" type="xsd:QName"/>
+ </xsd:extension>
+ </xsd:complexContent>
+ </xsd:complexType>
+
+ <xsd:element name="signalEventDefinition" type="tSignalEventDefinition" substitutionGroup="eventDefinition"/>
+ <xsd:complexType name="tSignalEventDefinition">
+ <xsd:complexContent>
+ <xsd:extension base="tEventDefinition">
+ <xsd:attribute name="signalRef" type="xsd:QName"/>
+ </xsd:extension>
+ </xsd:complexContent>
+ </xsd:complexType>
+
+ <xsd:element name="standardLoopCharacteristics" type="tStandardLoopCharacteristics" substitutionGroup="loopCharacteristics"/>
+ <xsd:complexType name="tStandardLoopCharacteristics">
+ <xsd:complexContent>
+ <xsd:extension base="tLoopCharacteristics">
+ <xsd:sequence>
+ <xsd:element name="loopCondition" type="tExpression" minOccurs="0"/>
+ </xsd:sequence>
+ <xsd:attribute name="testBefore" type="xsd:boolean" default="false"/>
+ <xsd:attribute name="loopMaximum" type="xsd:integer" use="optional"/>
+ </xsd:extension>
+ </xsd:complexContent>
+ </xsd:complexType>
+
+ <xsd:element name="startEvent" type="tStartEvent" substitutionGroup="flowElement"/>
+ <xsd:complexType name="tStartEvent">
+ <xsd:complexContent>
+ <xsd:extension base="tCatchEvent">
+ <xsd:attribute name="isInterrupting" type="xsd:boolean" default="true"/>
+ </xsd:extension>
+ </xsd:complexContent>
+ </xsd:complexType>
+
+ <xsd:element name="subChoreography" type="tSubChoreography" substitutionGroup="flowElement"/>
+ <xsd:complexType name="tSubChoreography">
+ <xsd:complexContent>
+ <xsd:extension base="tChoreographyActivity">
+ <xsd:sequence>
+ <xsd:element ref="flowElement" minOccurs="0" maxOccurs="unbounded"/>
+ <xsd:element ref="artifact" minOccurs="0" maxOccurs="unbounded"/>
+ </xsd:sequence>
+ </xsd:extension>
+ </xsd:complexContent>
+ </xsd:complexType>
+
+ <xsd:element name="subConversation" type="tSubConversation" substitutionGroup="conversationNode"/>
+ <xsd:complexType name="tSubConversation">
+ <xsd:complexContent>
+ <xsd:extension base="tConversationNode">
+ <xsd:sequence>
+ <xsd:element ref="conversationNode" minOccurs="0" maxOccurs="unbounded"/>
+ </xsd:sequence>
+ </xsd:extension>
+ </xsd:complexContent>
+ </xsd:complexType>
+
+ <xsd:element name="subProcess" type="tSubProcess" substitutionGroup="flowElement"/>
+ <xsd:complexType name="tSubProcess">
+ <xsd:complexContent>
+ <xsd:extension base="tActivity">
+ <xsd:sequence>
+ <xsd:element ref="laneSet" minOccurs="0" maxOccurs="unbounded"/>
+ <xsd:element ref="flowElement" minOccurs="0" maxOccurs="unbounded"/>
+ <xsd:element ref="artifact" minOccurs="0" maxOccurs="unbounded"/>
+ </xsd:sequence>
+ <xsd:attribute name="triggeredByEvent" type="xsd:boolean" default="false"/>
+ </xsd:extension>
+ </xsd:complexContent>
+ </xsd:complexType>
+
+ <xsd:element name="task" type="tTask" substitutionGroup="flowElement"/>
+ <xsd:complexType name="tTask">
+ <xsd:complexContent>
+ <xsd:extension base="tActivity"/>
+ </xsd:complexContent>
+ </xsd:complexType>
+
+ <xsd:element name="terminateEventDefinition" type="tTerminateEventDefinition" substitutionGroup="eventDefinition"/>
+ <xsd:complexType name="tTerminateEventDefinition">
+ <xsd:complexContent>
+ <xsd:extension base="tEventDefinition"/>
+ </xsd:complexContent>
+ </xsd:complexType>
+
+ <xsd:element name="textAnnotation" type="tTextAnnotation" substitutionGroup="artifact"/>
+ <xsd:complexType name="tTextAnnotation">
+ <xsd:complexContent>
+ <xsd:extension base="tArtifact">
+ <xsd:sequence>
+ <xsd:element ref="text" minOccurs="0" maxOccurs="1"/>
+ </xsd:sequence>
+ <xsd:attribute name="textFormat" type="xsd:string" default="text/plain"/>
+ </xsd:extension>
+ </xsd:complexContent>
+ </xsd:complexType>
+
+ <xsd:element name="text" type="tText"/>
+ <xsd:complexType name="tText" mixed="true">
+ <xsd:sequence>
+ <xsd:any namespace="##any" processContents="lax" minOccurs="0"/>
+ </xsd:sequence>
+ </xsd:complexType>
+
+ <xsd:element name="throwEvent" type="tThrowEvent"/>
+ <xsd:complexType name="tThrowEvent" abstract="true">
+ <xsd:complexContent>
+ <xsd:extension base="tEvent">
+ <xsd:sequence>
+ <xsd:element ref="dataInput" minOccurs="0" maxOccurs="unbounded"/>
+ <xsd:element ref="dataInputAssociation" minOccurs="0" maxOccurs="unbounded"/>
+ <xsd:element ref="inputSet" minOccurs="0" maxOccurs="1"/>
+ <xsd:element ref="eventDefinition" minOccurs="0" maxOccurs="unbounded"/>
+ <xsd:element name="eventDefinitionRef" type="xsd:QName" minOccurs="0" maxOccurs="unbounded"/>
+ </xsd:sequence>
+ </xsd:extension>
+ </xsd:complexContent>
+ </xsd:complexType>
+
+ <xsd:element name="timerEventDefinition" type="tTimerEventDefinition" substitutionGroup="eventDefinition"/>
+ <xsd:complexType name="tTimerEventDefinition">
+ <xsd:complexContent>
+ <xsd:extension base="tEventDefinition">
+ <xsd:choice>
+ <xsd:element name="timeDate" type="tExpression" minOccurs="0" maxOccurs="1"/>
+ <xsd:element name="timeDuration" type="tExpression" minOccurs="0" maxOccurs="1"/>
+ <xsd:element name="timeCycle" type="tExpression" minOccurs="0" maxOccurs="1"/>
+ </xsd:choice>
+ </xsd:extension>
+ </xsd:complexContent>
+ </xsd:complexType>
+
+ <xsd:element name="transaction" type="tTransaction" substitutionGroup="flowElement"/>
+ <xsd:complexType name="tTransaction">
+ <xsd:complexContent>
+ <xsd:extension base="tSubProcess">
+ <xsd:attribute name="method" type="tTransactionMethod" default="##Compensate"/>
+ </xsd:extension>
+ </xsd:complexContent>
+ </xsd:complexType>
+
+ <xsd:simpleType name="tTransactionMethod">
+ <xsd:union memberTypes="xsd:anyURI">
+ <xsd:simpleType>
+ <xsd:restriction base="xsd:token">
+ <xsd:enumeration value="##Compensate" />
+ <xsd:enumeration value="##Image" />
+ <xsd:enumeration value="##Store" />
+ </xsd:restriction>
+ </xsd:simpleType>
+ </xsd:union>
+ </xsd:simpleType>
+
+ <xsd:element name="userTask" type="tUserTask" substitutionGroup="flowElement"/>
+ <xsd:complexType name="tUserTask">
+ <xsd:complexContent>
+ <xsd:extension base="tTask">
+ <xsd:sequence>
+ <xsd:element ref="rendering" minOccurs="0" maxOccurs="unbounded"/>
+ </xsd:sequence>
+ <xsd:attribute name="implementation" type="tImplementation" default="##unspecified"/>
+ </xsd:extension>
+ </xsd:complexContent>
+ </xsd:complexType>
+
+</xsd:schema>
\ No newline at end of file diff --git a/model/org.eclipse.stardust.model.bpmn2.transform/src/test/resources/models/bpmn/unmod/XORGatewaysSingle.bpmn b/model/org.eclipse.stardust.model.bpmn2.transform/src/test/resources/models/bpmn/unmod/XORGatewaysSingle.bpmn new file mode 100644 index 0000000..f3f994d --- a/dev/null +++ b/model/org.eclipse.stardust.model.bpmn2.transform/src/test/resources/models/bpmn/unmod/XORGatewaysSingle.bpmn @@ -0,0 +1,325 @@ +<?xml version="1.0" encoding="utf-8"?>
+<!--Created by Process Modeler 5 SR7 for Microsoft Visio (http://www.itp-commerce.com)-->
+<definitions targetNamespace="http://www.itp-commerce.com" xmlns="http://www.omg.org/spec/BPMN/20100524/MODEL" xmlns:itp="http://www.itp-commerce.com/BPMN2.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.omg.org/spec/BPMN/20100524/MODEL schemas/BPMN20.xsd" exporter="Process Modeler 5 for Microsoft Visio" exporterVersion="5.2769.13758 SR7" itp:name="Mein Diagramm" itp:version="1.0" itp:author="simon nikles" itp:creationDate="27.06.2012 18:05:19" itp:modificationDate="28.06.2012 15:37:00" itp:createdWithVersion="5.2769.13758 SR7" itp:conformanceSubClass="Full" id="_3e3f9919-88b7-4628-ab18-e5ca675dbc64" xmlns:bpmndi="http://www.omg.org/spec/BPMN/20100524/DI" xmlns:di="http://www.omg.org/spec/DD/20100524/DI" xmlns:dc="http://www.omg.org/spec/DD/20100524/DC">
+ <process id="_7242afea-9c6c-4892-9875-f6390346905c" name="Hauptprozess" processType="None">
+ <extensionElements>
+ <itp:systemDefinedAttributes>
+ <attribute name="Hyperlinks" type="String" value="0 Hyperlinks" />
+ <attribute name="ExternalId" type="String" />
+ <attribute name="KPICost" type="Float" value="1" format="Currency;Fr.;;KPI;2" />
+ <attribute name="KPIDuration" type="Float" value="1" format="Duration;;;KPI;3">
+ <attribute name="KPIActiveTime" type="Float" value="1" format="Duration;;;KPI;3" />
+ <attribute name="KPIWaitTime" type="Float" value="0" format="Duration;;;KPI;3" />
+ </attribute>
+ </itp:systemDefinedAttributes>
+ <itp:localization>
+ <itp:label lang="unspecified" text="Hauptprozess" default="True" />
+ </itp:localization>
+ </extensionElements>
+ <exclusiveGateway id="TestModelXORSplitGateway" name="SplitXOrGate" gatewayDirection="Diverging" default="TestModelDefaultSequenceFlow">
+ <extensionElements>
+ <itp:systemDefinedAttributes>
+ <attribute name="Hyperlinks" type="String" value="0 Hyperlinks" />
+ <attribute name="ExternalId" type="String" />
+ </itp:systemDefinedAttributes>
+ <itp:localization>
+ <itp:label lang="unspecified" text="SplitXOrGate" default="True" />
+ </itp:localization>
+ </extensionElements>
+ </exclusiveGateway>
+ <exclusiveGateway id="TestModelXORJoinGateway" name="JoinXOrGate" gatewayDirection="Converging">
+ <extensionElements>
+ <itp:systemDefinedAttributes>
+ <attribute name="Hyperlinks" type="String" value="0 Hyperlinks" />
+ <attribute name="ExternalId" type="String" />
+ </itp:systemDefinedAttributes>
+ <itp:localization>
+ <itp:label lang="unspecified" text="JoinXOrGate" default="True" />
+ </itp:localization>
+ </extensionElements>
+ </exclusiveGateway>
+ <sequenceFlow id="_cb8558bb-fc7f-48d9-89fe-d2df6e37bbd2" sourceRef="TestModelTaskA" targetRef="TestModelXORSplitGateway">
+ <extensionElements>
+ <itp:systemDefinedAttributes>
+ <attribute name="Hyperlinks" type="String" value="0 Hyperlinks" />
+ <attribute name="ExternalId" type="String" />
+ </itp:systemDefinedAttributes>
+ <itp:localization>
+ <itp:label lang="unspecified" text="" default="True" />
+ </itp:localization>
+ </extensionElements>
+ </sequenceFlow>
+ <sequenceFlow id="TestModelConditionalSequenceFlow1" name="Condition to B" sourceRef="TestModelXORSplitGateway" targetRef="TestModelTaskB">
+ <extensionElements>
+ <itp:systemDefinedAttributes>
+ <attribute name="Hyperlinks" type="String" value="0 Hyperlinks" />
+ <attribute name="ExternalId" type="String" />
+ </itp:systemDefinedAttributes>
+ <itp:localization>
+ <itp:label lang="unspecified" text="Condition to B" default="True" />
+ </itp:localization>
+ </extensionElements>
+ <conditionExpression>test='Condition to B'</conditionExpression>
+ </sequenceFlow>
+ <sequenceFlow id="_b6a578ba-d556-4867-ab1d-31d05a33a35e" sourceRef="TestModelXORSplitGateway" targetRef="TestModelTaskC">
+ <extensionElements>
+ <itp:systemDefinedAttributes>
+ <attribute name="Hyperlinks" type="String" value="0 Hyperlinks" />
+ <attribute name="ExternalId" type="String" />
+ </itp:systemDefinedAttributes>
+ <itp:localization>
+ <itp:label lang="unspecified" text="" default="True" />
+ </itp:localization>
+ </extensionElements>
+ <conditionExpression>_undefined</conditionExpression>
+ </sequenceFlow>
+ <sequenceFlow id="TestModelDefaultSequenceFlow" sourceRef="TestModelXORSplitGateway" targetRef="TestModelTaskD">
+ <extensionElements>
+ <itp:systemDefinedAttributes>
+ <attribute name="Hyperlinks" type="String" value="0 Hyperlinks" />
+ <attribute name="ExternalId" type="String" />
+ </itp:systemDefinedAttributes>
+ <itp:localization>
+ <itp:label lang="unspecified" text="" default="True" />
+ </itp:localization>
+ </extensionElements>
+ </sequenceFlow>
+ <sequenceFlow id="_fb92c3da-c942-4350-bc9f-1b87e5f70023" sourceRef="TestModelTaskB" targetRef="TestModelXORJoinGateway">
+ <extensionElements>
+ <itp:systemDefinedAttributes>
+ <attribute name="Hyperlinks" type="String" value="0 Hyperlinks" />
+ <attribute name="ExternalId" type="String" />
+ </itp:systemDefinedAttributes>
+ <itp:localization>
+ <itp:label lang="unspecified" text="" default="True" />
+ </itp:localization>
+ </extensionElements>
+ </sequenceFlow>
+ <sequenceFlow id="_64cf5e6a-18c6-4689-ba93-2865f67c16d6" sourceRef="TestModelTaskC" targetRef="TestModelXORJoinGateway">
+ <extensionElements>
+ <itp:systemDefinedAttributes>
+ <attribute name="Hyperlinks" type="String" value="0 Hyperlinks" />
+ <attribute name="ExternalId" type="String" />
+ </itp:systemDefinedAttributes>
+ <itp:localization>
+ <itp:label lang="unspecified" text="" default="True" />
+ </itp:localization>
+ </extensionElements>
+ </sequenceFlow>
+ <sequenceFlow id="_5af8c969-22a2-485a-8356-8af176a7b3d2" sourceRef="TestModelTaskD" targetRef="TestModelXORJoinGateway">
+ <extensionElements>
+ <itp:systemDefinedAttributes>
+ <attribute name="Hyperlinks" type="String" value="0 Hyperlinks" />
+ <attribute name="ExternalId" type="String" />
+ </itp:systemDefinedAttributes>
+ <itp:localization>
+ <itp:label lang="unspecified" text="" default="True" />
+ </itp:localization>
+ </extensionElements>
+ </sequenceFlow>
+ <sequenceFlow id="_53472ed0-6bda-4cc3-8119-feb7e93b0ddb" sourceRef="TestModelXORJoinGateway" targetRef="TestModelTaskE">
+ <extensionElements>
+ <itp:systemDefinedAttributes>
+ <attribute name="Hyperlinks" type="String" value="0 Hyperlinks" />
+ <attribute name="ExternalId" type="String" />
+ </itp:systemDefinedAttributes>
+ <itp:localization>
+ <itp:label lang="unspecified" text="" default="True" />
+ </itp:localization>
+ </extensionElements>
+ </sequenceFlow>
+ <userTask id="TestModelTaskA" name="a" implementation="unspecified">
+ <extensionElements>
+ <itp:systemDefinedAttributes>
+ <attribute name="Hyperlinks" type="String" value="0 Hyperlinks" />
+ <attribute name="ExternalId" type="String" />
+ <attribute name="KPICost" type="Float" value="1" format="Currency;Fr.;;KPI;2" />
+ <attribute name="KPIDuration" type="Float" value="1" format="Duration;;;KPI;3">
+ <attribute name="KPIActiveTime" type="Float" value="1" format="Duration;;;KPI;3" />
+ <attribute name="KPIWaitTime" type="Float" value="0" format="Duration;;;KPI;3" />
+ </attribute>
+ </itp:systemDefinedAttributes>
+ <itp:localization>
+ <itp:label lang="unspecified" text="a" default="True" />
+ </itp:localization>
+ </extensionElements>
+ </userTask>
+ <userTask id="TestModelTaskB" name="b" implementation="unspecified">
+ <extensionElements>
+ <itp:systemDefinedAttributes>
+ <attribute name="Hyperlinks" type="String" value="0 Hyperlinks" />
+ <attribute name="ExternalId" type="String" />
+ <attribute name="KPICost" type="Float" value="1" format="Currency;Fr.;;KPI;2" />
+ <attribute name="KPIDuration" type="Float" value="1" format="Duration;;;KPI;3">
+ <attribute name="KPIActiveTime" type="Float" value="1" format="Duration;;;KPI;3" />
+ <attribute name="KPIWaitTime" type="Float" value="0" format="Duration;;;KPI;3" />
+ </attribute>
+ </itp:systemDefinedAttributes>
+ <itp:localization>
+ <itp:label lang="unspecified" text="b" default="True" />
+ </itp:localization>
+ </extensionElements>
+ </userTask>
+ <userTask id="TestModelTaskC" name="c" implementation="unspecified">
+ <extensionElements>
+ <itp:systemDefinedAttributes>
+ <attribute name="Hyperlinks" type="String" value="0 Hyperlinks" />
+ <attribute name="ExternalId" type="String" />
+ <attribute name="KPICost" type="Float" value="1" format="Currency;Fr.;;KPI;2" />
+ <attribute name="KPIDuration" type="Float" value="1" format="Duration;;;KPI;3">
+ <attribute name="KPIActiveTime" type="Float" value="1" format="Duration;;;KPI;3" />
+ <attribute name="KPIWaitTime" type="Float" value="0" format="Duration;;;KPI;3" />
+ </attribute>
+ </itp:systemDefinedAttributes>
+ <itp:localization>
+ <itp:label lang="unspecified" text="c" default="True" />
+ </itp:localization>
+ </extensionElements>
+ </userTask>
+ <userTask id="TestModelTaskD" name="d" implementation="unspecified">
+ <extensionElements>
+ <itp:systemDefinedAttributes>
+ <attribute name="Hyperlinks" type="String" value="0 Hyperlinks" />
+ <attribute name="ExternalId" type="String" />
+ <attribute name="KPICost" type="Float" value="1" format="Currency;Fr.;;KPI;2" />
+ <attribute name="KPIDuration" type="Float" value="1" format="Duration;;;KPI;3">
+ <attribute name="KPIActiveTime" type="Float" value="1" format="Duration;;;KPI;3" />
+ <attribute name="KPIWaitTime" type="Float" value="0" format="Duration;;;KPI;3" />
+ </attribute>
+ </itp:systemDefinedAttributes>
+ <itp:localization>
+ <itp:label lang="unspecified" text="d" default="True" />
+ </itp:localization>
+ </extensionElements>
+ </userTask>
+ <userTask id="TestModelTaskE" name="e" implementation="unspecified">
+ <extensionElements>
+ <itp:systemDefinedAttributes>
+ <attribute name="Hyperlinks" type="String" value="0 Hyperlinks" />
+ <attribute name="ExternalId" type="String" />
+ <attribute name="KPICost" type="Float" value="1" format="Currency;Fr.;;KPI;2" />
+ <attribute name="KPIDuration" type="Float" value="1" format="Duration;;;KPI;3">
+ <attribute name="KPIActiveTime" type="Float" value="1" format="Duration;;;KPI;3" />
+ <attribute name="KPIWaitTime" type="Float" value="0" format="Duration;;;KPI;3" />
+ </attribute>
+ </itp:systemDefinedAttributes>
+ <itp:localization>
+ <itp:label lang="unspecified" text="e" default="True" />
+ </itp:localization>
+ </extensionElements>
+ </userTask>
+ </process>
+ <bpmndi:BPMNDiagram name="Mein Diagramm (1)" resolution="72">
+ <bpmndi:BPMNPlane id="_1" bpmnElement="_7242afea-9c6c-4892-9875-f6390346905c">
+ <bpmndi:BPMNShape id="_7C016911-4224-437D-998A-4954EBFB6A97" bpmnElement="TestModelXORSplitGateway" isMarkerVisible="false" itp:label="SplitXOrGate" itp:elementType="exclusiveGateway">
+ <dc:Bounds x="185.669291338583" y="158.385826771654" width="42.5196850393701" height="31.8897637795276" />
+ <bpmndi:BPMNLabel labelStyle="_9146bd08-9804-4764-8e0c-0030121edd04">
+ <dc:Bounds x="181.8" y="193.155590551181" width="49.68" height="9.36" />
+ </bpmndi:BPMNLabel>
+ </bpmndi:BPMNShape>
+ <bpmndi:BPMNShape id="_B362E574-C11E-4B42-ADE2-EEC6DF06C3E9" bpmnElement="TestModelXORJoinGateway" isMarkerVisible="false" itp:label="JoinXOrGate" itp:elementType="exclusiveGateway">
+ <dc:Bounds x="388.346456692913" y="158.385826771654" width="42.5196850393701" height="31.8897637795276" />
+ <bpmndi:BPMNLabel labelStyle="_9146bd08-9804-4764-8e0c-0030121edd04">
+ <dc:Bounds x="385.56" y="193.155590551181" width="48.24" height="9.36" />
+ </bpmndi:BPMNLabel>
+ </bpmndi:BPMNShape>
+ <bpmndi:BPMNEdge id="_C5401613-4DF3-42B2-BF6F-210FC760806E" bpmnElement="_cb8558bb-fc7f-48d9-89fe-d2df6e37bbd2" itp:label="(unbenannt)" itp:elementType="sequenceFlow">
+ <di:waypoint x="164.409448818898" y="174.330708661417" />
+ <di:waypoint x="185.669291338583" y="174.330708661417" />
+ <bpmndi:BPMNLabel labelStyle="_9146bd08-9804-4764-8e0c-0030121edd04">
+ <dc:Bounds x="171.72" y="158.955590551181" width="7.92" height="17.28" />
+ </bpmndi:BPMNLabel>
+ </bpmndi:BPMNEdge>
+ <bpmndi:BPMNEdge id="_1542AC9F-2FD4-4179-AAEC-5992B2FFC1E8" bpmnElement="TestModelConditionalSequenceFlow1" itp:label="Condition to B" itp:elementType="sequenceFlow">
+ <di:waypoint x="206.929133858268" y="158.385826771654" />
+ <di:waypoint x="206.929133858268" y="90.7086614173229" />
+ <di:waypoint x="274.96062992126" y="90.7086614173229" />
+ <di:waypoint x="274.96062992126" y="90.7086614173228" />
+ <bpmndi:BPMNLabel labelStyle="_9146bd08-9804-4764-8e0c-0030121edd04">
+ <dc:Bounds x="181.44" y="83.3555905511811" width="60.48" height="17.28" />
+ </bpmndi:BPMNLabel>
+ </bpmndi:BPMNEdge>
+ <bpmndi:BPMNEdge id="_6BFC849C-5A53-47FD-BDB9-E45120C1C03C" bpmnElement="_b6a578ba-d556-4867-ab1d-31d05a33a35e" itp:label="(unbenannt)" itp:elementType="sequenceFlow">
+ <di:waypoint x="228.188976377953" y="174.330708661417" />
+ <di:waypoint x="274.96062992126" y="174.330708661417" />
+ <bpmndi:BPMNLabel labelStyle="_9146bd08-9804-4764-8e0c-0030121edd04">
+ <dc:Bounds x="248.76" y="158.955590551181" width="7.92" height="17.28" />
+ </bpmndi:BPMNLabel>
+ </bpmndi:BPMNEdge>
+ <bpmndi:BPMNEdge id="_C7F6000C-EED2-4098-9ABB-05B10A064B90" bpmnElement="TestModelDefaultSequenceFlow" itp:label="(unbenannt)" itp:elementType="sequenceFlow">
+ <di:waypoint x="206.929133858268" y="190.275590551181" />
+ <di:waypoint x="206.929133858268" y="257.952755905512" />
+ <di:waypoint x="274.96062992126" y="257.952755905512" />
+ <bpmndi:BPMNLabel labelStyle="_9146bd08-9804-4764-8e0c-0030121edd04">
+ <dc:Bounds x="207.72" y="248.235590551181" width="7.92" height="17.28" />
+ </bpmndi:BPMNLabel>
+ </bpmndi:BPMNEdge>
+ <bpmndi:BPMNEdge id="_59E68D69-5965-4B22-888E-509458461F50" bpmnElement="_fb92c3da-c942-4350-bc9f-1b87e5f70023" itp:label="(unbenannt)" itp:elementType="sequenceFlow">
+ <di:waypoint x="360" y="90.7086614173228" />
+ <di:waypoint x="409.606299212598" y="90.7086614173228" />
+ <di:waypoint x="409.606299212598" y="158.385826771654" />
+ <bpmndi:BPMNLabel labelStyle="_9146bd08-9804-4764-8e0c-0030121edd04">
+ <dc:Bounds x="405.72" y="94.8755905511812" width="7.92" height="17.28" />
+ </bpmndi:BPMNLabel>
+ </bpmndi:BPMNEdge>
+ <bpmndi:BPMNEdge id="_66573C18-B7AF-4670-BC45-EC7A18ADA015" bpmnElement="_64cf5e6a-18c6-4689-ba93-2865f67c16d6" itp:label="(unbenannt)" itp:elementType="sequenceFlow">
+ <di:waypoint x="360" y="174.330708661417" />
+ <di:waypoint x="388.346456692913" y="174.330708661417" />
+ <bpmndi:BPMNLabel labelStyle="_9146bd08-9804-4764-8e0c-0030121edd04">
+ <dc:Bounds x="370.44" y="158.955590551181" width="7.92" height="17.28" />
+ </bpmndi:BPMNLabel>
+ </bpmndi:BPMNEdge>
+ <bpmndi:BPMNEdge id="_1A524BEE-F7CC-4149-8501-B62E4934EE57" bpmnElement="_5af8c969-22a2-485a-8356-8af176a7b3d2" itp:label="(unbenannt)" itp:elementType="sequenceFlow">
+ <di:waypoint x="360" y="257.952755905512" />
+ <di:waypoint x="409.606299212598" y="257.952755905512" />
+ <di:waypoint x="409.606299212598" y="190.275590551181" />
+ <bpmndi:BPMNLabel labelStyle="_9146bd08-9804-4764-8e0c-0030121edd04">
+ <dc:Bounds x="405.72" y="236.715590551181" width="7.92" height="17.28" />
+ </bpmndi:BPMNLabel>
+ </bpmndi:BPMNEdge>
+ <bpmndi:BPMNEdge id="_B8EDA2CE-4127-4AA4-B9B9-1BE490CE7742" bpmnElement="_53472ed0-6bda-4cc3-8119-feb7e93b0ddb" itp:label="(unbenannt)" itp:elementType="sequenceFlow">
+ <di:waypoint x="430.866141732284" y="174.330708661417" />
+ <di:waypoint x="470.551181102362" y="174.330708661417" />
+ <bpmndi:BPMNLabel labelStyle="_9146bd08-9804-4764-8e0c-0030121edd04">
+ <dc:Bounds x="447.48" y="158.955590551181" width="7.92" height="17.28" />
+ </bpmndi:BPMNLabel>
+ </bpmndi:BPMNEdge>
+ <bpmndi:BPMNShape id="_09177A98-B288-465F-86DA-4C6A685A8BAB" bpmnElement="TestModelTaskA" itp:label="a" itp:elementType="userTask">
+ <dc:Bounds x="79.3700787401575" y="153.070866141732" width="85.0393700787402" height="42.5196850393701" />
+ <bpmndi:BPMNLabel labelStyle="_7a6f535f-42c0-426c-bd17-d17c7b451154">
+ <dc:Bounds x="115.56" y="167.235590551181" width="12.24" height="13.68" />
+ </bpmndi:BPMNLabel>
+ </bpmndi:BPMNShape>
+ <bpmndi:BPMNShape id="_DFF46673-9E63-4877-A0B7-BAAB9C42DA76" bpmnElement="TestModelTaskB" itp:label="b" itp:elementType="userTask">
+ <dc:Bounds x="274.96062992126" y="69.4488188976378" width="85.0393700787402" height="42.5196850393701" />
+ <bpmndi:BPMNLabel labelStyle="_7a6f535f-42c0-426c-bd17-d17c7b451154">
+ <dc:Bounds x="311.4" y="83.7155905511812" width="12.24" height="13.68" />
+ </bpmndi:BPMNLabel>
+ </bpmndi:BPMNShape>
+ <bpmndi:BPMNShape id="_8969DD4B-F91B-4255-916D-0F4695BCF01D" bpmnElement="TestModelTaskC" itp:label="c" itp:elementType="userTask">
+ <dc:Bounds x="274.96062992126" y="153.070866141732" width="85.0393700787402" height="42.5196850393701" />
+ <bpmndi:BPMNLabel labelStyle="_7a6f535f-42c0-426c-bd17-d17c7b451154">
+ <dc:Bounds x="311.76" y="167.235590551181" width="11.52" height="13.68" />
+ </bpmndi:BPMNLabel>
+ </bpmndi:BPMNShape>
+ <bpmndi:BPMNShape id="_24FA24B4-DBB0-4843-8523-A85FBE9289FB" bpmnElement="TestModelTaskD" itp:label="d" itp:elementType="userTask">
+ <dc:Bounds x="274.96062992126" y="236.692913385827" width="85.0393700787402" height="42.5196850393701" />
+ <bpmndi:BPMNLabel labelStyle="_7a6f535f-42c0-426c-bd17-d17c7b451154">
+ <dc:Bounds x="311.4" y="250.755590551181" width="12.24" height="13.68" />
+ </bpmndi:BPMNLabel>
+ </bpmndi:BPMNShape>
+ <bpmndi:BPMNShape id="_51146E01-297E-46A4-9A99-A9DF4CEF4CC8" bpmnElement="TestModelTaskE" itp:label="e" itp:elementType="userTask">
+ <dc:Bounds x="470.551181102362" y="153.070866141732" width="85.0393700787402" height="42.5196850393701" />
+ <bpmndi:BPMNLabel labelStyle="_7a6f535f-42c0-426c-bd17-d17c7b451154">
+ <dc:Bounds x="507.24" y="167.235590551181" width="12.24" height="13.68" />
+ </bpmndi:BPMNLabel>
+ </bpmndi:BPMNShape>
+ </bpmndi:BPMNPlane>
+ <bpmndi:BPMNLabelStyle id="_9146bd08-9804-4764-8e0c-0030121edd04">
+ <dc:Font name="Arial" size="8" isBold="false" isItalic="false" isUnderline="false" isStrikeThrough="false" />
+ </bpmndi:BPMNLabelStyle>
+ <bpmndi:BPMNLabelStyle id="_7a6f535f-42c0-426c-bd17-d17c7b451154">
+ <dc:Font name="Arial" size="10" isBold="false" isItalic="false" isUnderline="false" isStrikeThrough="false" />
+ </bpmndi:BPMNLabelStyle>
+ </bpmndi:BPMNDiagram>
+</definitions>
\ No newline at end of file diff --git a/model/org.eclipse.stardust.model.bpmn2/.classpath b/model/org.eclipse.stardust.model.bpmn2/.classpath new file mode 100644 index 0000000..bb6db0a --- a/dev/null +++ b/model/org.eclipse.stardust.model.bpmn2/.classpath @@ -0,0 +1,9 @@ +<?xml version="1.0" encoding="UTF-8"?>
+<classpath>
+ <classpathentry kind="src" output="target/classes" path="src/main/java"/>
+ <classpathentry kind="src" output="target/test-classes" path="src/test/java"/>
+ <classpathentry excluding="**" kind="src" output="target/test-classes" path="src/test/resources"/>
+ <classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/J2SE-1.5"/>
+ <classpathentry kind="con" path="org.eclipse.m2e.MAVEN2_CLASSPATH_CONTAINER"/>
+ <classpathentry kind="output" path="target/classes"/>
+</classpath>
diff --git a/model/org.eclipse.stardust.model.bpmn2/.project b/model/org.eclipse.stardust.model.bpmn2/.project new file mode 100644 index 0000000..44ad5fe --- a/dev/null +++ b/model/org.eclipse.stardust.model.bpmn2/.project @@ -0,0 +1,23 @@ +<?xml version="1.0" encoding="UTF-8"?>
+<projectDescription>
+ <name>org.eclipse.stardust.model.bpmn2</name>
+ <comment></comment>
+ <projects>
+ </projects>
+ <buildSpec>
+ <buildCommand>
+ <name>org.eclipse.jdt.core.javabuilder</name>
+ <arguments>
+ </arguments>
+ </buildCommand>
+ <buildCommand>
+ <name>org.eclipse.m2e.core.maven2Builder</name>
+ <arguments>
+ </arguments>
+ </buildCommand>
+ </buildSpec>
+ <natures>
+ <nature>org.eclipse.jdt.core.javanature</nature>
+ <nature>org.eclipse.m2e.core.maven2Nature</nature>
+ </natures>
+</projectDescription>
diff --git a/model/org.eclipse.stardust.model.bpmn2/pom.xml b/model/org.eclipse.stardust.model.bpmn2/pom.xml new file mode 100644 index 0000000..50c6f21 --- a/dev/null +++ b/model/org.eclipse.stardust.model.bpmn2/pom.xml @@ -0,0 +1,71 @@ +<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
+ <modelVersion>4.0.0</modelVersion>
+
+ <artifactId>org.eclipse.stardust.model.bpmn2</artifactId>
+ <groupId>org.eclipse.stardust.modeling.model</groupId>
+ <version>0.0.1-SNAPSHOT</version>
+
+ <dependencies>
+ <dependency>
+ <artifactId>org.eclipse.bpmn2</artifactId>
+ <groupId>org.eclipse.bpmn2</groupId>
+ <version>0.7.0-SNAPSHOT</version>
+ </dependency>
+ <dependency>
+ <groupId>org.eclipse.stardust.modeling.model</groupId>
+ <artifactId>org.eclipse.stardust.model.xpdl</artifactId>
+ <version>9.9.9-SNAPSHOT</version>
+ </dependency>
+ <!--
+ <dependency>
+ <groupId>org.eclipse.emf</groupId>
+ <artifactId>org.eclipse.emf.ecore.xmi</artifactId>
+ <version>2.5.0.v20100521-1846</version>
+ </dependency>
+ <dependency>
+ <groupId>org.eclipse.emf</groupId>
+ <artifactId>org.eclipse.emf.common</artifactId>
+ <version>2.6.0.v20100614-1136</version>
+ </dependency>
+ -->
+ <dependency>
+ <groupId>org.eclipse.emf</groupId>
+ <artifactId>emf-ecore</artifactId>
+ <version>2.4.2</version>
+ </dependency>
+ <dependency>
+ <groupId>org.eclipse.emf</groupId>
+ <artifactId>emf-ecore-xmi</artifactId>
+ <version>2.4.2</version>
+ </dependency>
+ <dependency>
+ <groupId>org.eclipse.osgi</groupId>
+ <artifactId>org.eclipse.osgi</artifactId>
+ <version>3.6.0.v20100517</version>
+ <scope>test</scope>
+ </dependency>
+ <dependency>
+ <groupId>org.eclipse.xsd</groupId>
+ <artifactId>xsd</artifactId>
+ <version>2.4.2</version>
+ <scope>test</scope>
+ </dependency>
+ <dependency>
+ <groupId>commons-logging</groupId>
+ <artifactId>commons-logging</artifactId>
+ <version>1.1.1</version>
+ </dependency>
+ <dependency>
+ <groupId>log4j</groupId>
+ <artifactId>log4j</artifactId>
+ <version>1.2.17</version>
+ </dependency>
+ <dependency>
+ <groupId>junit</groupId>
+ <artifactId>junit</artifactId>
+ <version>4.10</version>
+ </dependency>
+ </dependencies>
+
+</project>
\ No newline at end of file diff --git a/model/org.eclipse.stardust.model.bpmn2/src/main/java/org/eclipse/stardust/model/bpmn2/extension/ExtensionHelper.java b/model/org.eclipse.stardust.model.bpmn2/src/main/java/org/eclipse/stardust/model/bpmn2/extension/ExtensionHelper.java new file mode 100644 index 0000000..2e6c507 --- a/dev/null +++ b/model/org.eclipse.stardust.model.bpmn2/src/main/java/org/eclipse/stardust/model/bpmn2/extension/ExtensionHelper.java @@ -0,0 +1,224 @@ +/*******************************************************************************
+ * Copyright (c) 2012 ITpearls AG and others.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * ITpearls - initial API and implementation and/or initial documentation
+ *******************************************************************************/
+package org.eclipse.stardust.model.bpmn2.extension;
+
+import java.math.BigInteger;
+import java.util.Date;
+import java.util.List;
+
+import javax.xml.datatype.XMLGregorianCalendar;
+
+import org.eclipse.bpmn2.BaseElement;
+import org.eclipse.bpmn2.Bpmn2Factory;
+import org.eclipse.bpmn2.Definitions;
+import org.eclipse.bpmn2.ExtensionAttributeValue;
+import org.eclipse.bpmn2.SequenceFlow;
+import org.eclipse.bpmn2.ServiceTask;
+import org.eclipse.bpmn2.StartEvent;
+import org.eclipse.bpmn2.SubProcess;
+import org.eclipse.bpmn2.UserTask;
+import org.eclipse.emf.ecore.EStructuralFeature.Internal;
+import org.eclipse.emf.ecore.impl.EStructuralFeatureImpl.SimpleFeatureMapEntry;
+import org.eclipse.emf.ecore.util.FeatureMap;
+import org.eclipse.emf.ecore.xml.type.internal.XMLCalendar;
+import org.eclipse.stardust.model.bpmn2.sdbpmn.SdbpmnFactory;
+import org.eclipse.stardust.model.bpmn2.sdbpmn.SdbpmnPackage;
+import org.eclipse.stardust.model.bpmn2.sdbpmn.StardustMessageStartEventType;
+import org.eclipse.stardust.model.bpmn2.sdbpmn.StardustModelType;
+import org.eclipse.stardust.model.bpmn2.sdbpmn.StardustSeqenceFlowType;
+import org.eclipse.stardust.model.bpmn2.sdbpmn.StardustServiceTaskType;
+import org.eclipse.stardust.model.bpmn2.sdbpmn.StardustStartEventType;
+import org.eclipse.stardust.model.bpmn2.sdbpmn.StardustSubprocessType;
+import org.eclipse.stardust.model.bpmn2.sdbpmn.StardustTimerStartEventType;
+import org.eclipse.stardust.model.bpmn2.sdbpmn.StardustUserTaskType;
+
+/**
+ * @author Simon Nikles
+ *
+ */
+public class ExtensionHelper {
+
+ private static final Internal USER_TASK_EXT = (Internal)SdbpmnPackage.Literals.DOCUMENT_ROOT__STARDUST_USER_TASK;
+ private static final Internal SERVICE_TASK_EXT = (Internal)SdbpmnPackage.Literals.DOCUMENT_ROOT__STARDUST_SERVICE_TASK;
+ private static final Internal SUBPROCESS_EXT = (Internal)SdbpmnPackage.Literals.DOCUMENT_ROOT__STARDUST_SUBPROCESS;
+ private static final Internal SEQUENCE_FLOW_EXT = (Internal)SdbpmnPackage.Literals.DOCUMENT_ROOT__STARDUST_SEQENCE_FLOW;
+ private static final Internal START_EVENT_EXT = (Internal)SdbpmnPackage.Literals.DOCUMENT_ROOT__STARDUST_START_EVENT;
+ private static final Internal TIMER_START_EVENT_EXT = (Internal)SdbpmnPackage.Literals.DOCUMENT_ROOT__STARDUST_TIMER_START_EVENT;
+ private static final Internal MESSAGE_START_EVENT_EXT = (Internal)SdbpmnPackage.Literals.DOCUMENT_ROOT__STARDUST_MESSAGE_START_EVENT;
+
+ private static final Internal MODEL_ATT_OID = (Internal)SdbpmnPackage.Literals.DOCUMENT_ROOT__OID;
+ private static final Internal MODEL_ATT_MODEL_OID = (Internal)SdbpmnPackage.Literals.DOCUMENT_ROOT__MODEL_OID;
+ private static final Internal MODEL_ATT_VERSION = (Internal)SdbpmnPackage.Literals.DOCUMENT_ROOT__CARNOT_VERSION;
+ private static final Internal MODEL_ATT_CREATED = (Internal)SdbpmnPackage.Literals.DOCUMENT_ROOT__CREATED;
+ private static final Internal MODEL_ATT_VENDOR = (Internal)SdbpmnPackage.Literals.DOCUMENT_ROOT__VENDOR;
+ private static final Internal MODEL_ATT_AUTHOR = (Internal)SdbpmnPackage.Literals.DOCUMENT_ROOT__AUTHOR;
+
+
+
+ private static ExtensionHelper instance = null;
+
+ private ExtensionHelper() {}
+ public static ExtensionHelper getInstance() {
+ if (instance == null) {
+ instance = new ExtensionHelper();
+ }
+ return instance;
+ }
+
+ public void setStartEventExtension(StartEvent element, StardustStartEventType extensionValue) {
+ setExtension(element, extensionValue, START_EVENT_EXT);
+ }
+
+ public StardustStartEventType getStartEventExtension(StartEvent element) {
+ return getFirstExtension(StardustStartEventType.class, element, START_EVENT_EXT);
+ }
+
+ public void setMessageStartEventExtension(StartEvent element, StardustMessageStartEventType extensionValue) {
+ setExtension(element, extensionValue, MESSAGE_START_EVENT_EXT);
+ }
+
+ public StardustMessageStartEventType getMessageStartEventExtension(StartEvent element) {
+ return getFirstExtension(StardustMessageStartEventType.class, element, MESSAGE_START_EVENT_EXT);
+ }
+
+ public void setTimerStartEventExtension(StartEvent element, StardustTimerStartEventType extensionValue) {
+ setExtension(element, extensionValue, TIMER_START_EVENT_EXT);
+ }
+
+ public StardustTimerStartEventType getTimerStartEventExtension(StartEvent element) {
+ return getFirstExtension(StardustTimerStartEventType.class, element, TIMER_START_EVENT_EXT);
+ }
+
+ public void setUserTaskExtension(UserTask element, StardustUserTaskType extensionValue) {
+ setExtension(element, extensionValue, USER_TASK_EXT);
+ }
+
+ public StardustUserTaskType getUserTaskExtension(UserTask element) {
+ return getFirstExtension(StardustUserTaskType.class, element, USER_TASK_EXT);
+ }
+
+ public void setServiceTaskExtension(ServiceTask serviceTask, StardustServiceTaskType serviceTaskExtension) {
+ setExtension(serviceTask, serviceTaskExtension, SERVICE_TASK_EXT);
+ }
+
+ public StardustServiceTaskType getServiceTaskExtension(ServiceTask serviceTask) {
+ return getFirstExtension(StardustServiceTaskType.class, serviceTask, SERVICE_TASK_EXT);
+ }
+
+ public void setSubprocessExtension(SubProcess element, StardustSubprocessType extensionValue) {
+ setExtension(element, extensionValue, SUBPROCESS_EXT);
+ }
+
+ public StardustSubprocessType getSubprocessExtension(SubProcess element) {
+ return getFirstExtension(StardustSubprocessType.class, element, SUBPROCESS_EXT);
+ }
+
+ public void setSequenceFlowExtension(SequenceFlow element, StardustSeqenceFlowType extensionValue) {
+ setExtension(element, extensionValue, SEQUENCE_FLOW_EXT);
+ }
+
+ public StardustSeqenceFlowType getSequenceFlowExtension(SequenceFlow element) {
+ return getFirstExtension(StardustSeqenceFlowType.class, element, SEQUENCE_FLOW_EXT);
+ }
+
+ public void setModelAttributes(Definitions element, StardustModelType values) {
+ element.getAnyAttribute().add(createFeatureEntry(MODEL_ATT_AUTHOR, values.getAuthor()));
+ element.getAnyAttribute().add(createFeatureEntry(MODEL_ATT_VERSION, values.getCarnotVersion()));
+ element.getAnyAttribute().add(createFeatureEntry(MODEL_ATT_CREATED, values.getCreated()));
+ element.getAnyAttribute().add(createFeatureEntry(MODEL_ATT_MODEL_OID, values.getModelOID()));
+ element.getAnyAttribute().add(createFeatureEntry(MODEL_ATT_OID, values.getOid()));
+ element.getAnyAttribute().add(createFeatureEntry(MODEL_ATT_VENDOR, values.getVendor()));
+ }
+
+ public StardustModelType getModelAttributes(Definitions element) {
+ FeatureMap attributes = element.getAnyAttribute();
+ StardustModelType modelvalues = SdbpmnFactory.eINSTANCE.createStardustModelType();
+ modelvalues.setAuthor(getString(attributes, MODEL_ATT_AUTHOR));
+ modelvalues.setCarnotVersion(getString(attributes, MODEL_ATT_VERSION));
+ modelvalues.setCreated(getDate(attributes, MODEL_ATT_CREATED));
+ modelvalues.setModelOID(getInt(attributes, MODEL_ATT_MODEL_OID));
+ modelvalues.setOid(getLong(attributes, MODEL_ATT_OID));
+ modelvalues.setVendor(getString(attributes, MODEL_ATT_VENDOR));
+ return modelvalues;
+ }
+
+ private <T> T getFirstExtension(Class<T> type, BaseElement element, Internal feature) {
+ @SuppressWarnings("unchecked")
+ List<T> extensionList = (List<T>)getExtension(element, feature);
+ T taskExtension = extensionList.size() > 0 ? extensionList.get(0) : null;
+ return taskExtension;
+ }
+
+ private Object getExtension(BaseElement element, Internal feature) {
+ for (ExtensionAttributeValue extensionAttributeValue : element.getExtensionValues()) {
+ FeatureMap extensionElements = extensionAttributeValue.getValue();
+ Object extensionElement = extensionElements.get(feature, true);
+ if (extensionElement != null) return extensionElement;
+ }
+ return null;
+ }
+
+ private void setExtension(BaseElement element, Object extensionValue, Internal feature) {
+ ExtensionAttributeValue extensionElement;
+ if (element.getExtensionValues() != null && element.getExtensionValues().size() > 0) {
+ extensionElement = element.getExtensionValues().get(0);
+ } else {
+ extensionElement = Bpmn2Factory.eINSTANCE.createExtensionAttributeValue();
+ }
+ FeatureMap.Entry extensionElementEntry = createFeatureEntry(feature, extensionValue);
+ element.getExtensionValues().add(extensionElement);
+ extensionElement.getValue().add(extensionElementEntry);
+ }
+
+ private FeatureMap.Entry createFeatureEntry(Internal feature, Object value) {
+ return new SimpleFeatureMapEntry(feature, value);
+ }
+
+ private long getLong(FeatureMap attributes, Internal attribute) {
+ try {
+ long val = Long.parseLong(attributes.get(attribute, true).toString());
+ return val;
+ } catch (NumberFormatException e) {}
+ catch (NullPointerException e) {}
+ return 0;
+ }
+
+ private BigInteger getInt(FeatureMap attributes, Internal attribute) {
+ BigInteger empty = BigInteger.ZERO;
+ try {
+ BigInteger val = (BigInteger)(attributes.get(attribute, true));
+ if (val==null) return empty;
+ return val;
+ } catch (Exception e) {}
+ return empty;
+ }
+
+ private XMLGregorianCalendar getDate(FeatureMap attributes, Internal attribute) {
+ XMLGregorianCalendar empty = new XMLCalendar(new Date(), XMLCalendar.DATETIME);
+ try {
+ XMLGregorianCalendar val = (XMLGregorianCalendar)(attributes.get(attribute, true));
+ if (val==null) return empty;
+ return val;
+ } catch (Exception e) {}
+ return empty;
+ }
+
+ private String getString(FeatureMap attributes, Internal attribute) {
+ String empty = "";
+ try {
+ String val = (String)(attributes.get(attribute, true));
+ if (val==null) return empty;
+ return val;
+ } catch (Exception e) {}
+ return empty;
+ }
+
+}
diff --git a/model/org.eclipse.stardust.model.bpmn2/src/main/java/org/eclipse/stardust/model/bpmn2/input/BPMNModelImporter.java b/model/org.eclipse.stardust.model.bpmn2/src/main/java/org/eclipse/stardust/model/bpmn2/input/BPMNModelImporter.java new file mode 100644 index 0000000..987df53 --- a/dev/null +++ b/model/org.eclipse.stardust.model.bpmn2/src/main/java/org/eclipse/stardust/model/bpmn2/input/BPMNModelImporter.java @@ -0,0 +1,105 @@ +/*******************************************************************************
+ * Copyright (c) 2012 ITpearls AG and others.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * ITpearls - initial API and implementation and/or initial documentation
+ *******************************************************************************/
+package org.eclipse.stardust.model.bpmn2.input;
+
+import java.io.FileNotFoundException;
+import java.io.IOException;
+import java.util.HashMap;
+import java.util.Map;
+
+import org.apache.log4j.Logger;
+import org.eclipse.bpmn2.Definitions;
+import org.eclipse.bpmn2.DocumentRoot;
+import org.eclipse.bpmn2.SequenceFlow;
+import org.eclipse.bpmn2.util.Bpmn2Resource;
+import org.eclipse.bpmn2.util.Bpmn2ResourceFactoryImpl;
+import org.eclipse.emf.common.util.EList;
+import org.eclipse.emf.common.util.TreeIterator;
+import org.eclipse.emf.common.util.URI;
+import org.eclipse.emf.ecore.EObject;
+import org.eclipse.emf.ecore.xmi.XMLResource;
+import org.eclipse.emf.ecore.xml.type.AnyType;
+
+/**
+ * @author Simon Nikles
+ */
+public class BPMNModelImporter {
+
+ private static Logger log = Logger.getLogger(BPMNModelImporter.class);
+
+ public BPMNModelImporter() {
+
+ }
+
+ public static Bpmn2Resource importModel(String filePath) throws FileNotFoundException, IOException {
+ log.info("importModel " + filePath);
+ Bpmn2ResourceFactoryImpl factory = new Bpmn2ResourceFactoryImpl();
+
+ Bpmn2Resource loadedResource = (Bpmn2Resource) factory.createResource(URI.createFileURI(filePath));
+
+ Map<Object, Object> options = new HashMap<Object, Object>();
+ options.put(XMLResource.OPTION_RECORD_ANY_TYPE_NAMESPACE_DECLARATIONS, Boolean.TRUE);
+ options.put(XMLResource.OPTION_RECORD_UNKNOWN_FEATURE, Boolean.TRUE);
+ options.put(XMLResource.OPTION_DEFER_IDREF_RESOLUTION, Boolean.TRUE);
+ loadedResource.load(options);
+
+ //debugPrint(loadedResource);
+
+ return loadedResource;
+ }
+
+
+ public static Definitions getDefinitions(Bpmn2Resource loadedResource) {
+
+ EList<EObject> list = loadedResource.getContents();
+ for (EObject l : list) {
+ if (l instanceof DocumentRoot) {
+ return ((DocumentRoot) l).getDefinitions();
+ }
+ }
+ return null;
+ }
+
+ @SuppressWarnings("unused")
+ private static void debugPrint(Bpmn2Resource r) {
+
+ log.debug("BPMNModelGenerator.debugPrint()");
+
+ EList<EObject> list = r.getContents();
+ log.debug("Elist contents: ");
+ for (EObject l : list) {
+ debugPrintChildren(l, 1);
+ }
+ }
+
+ private static void debugPrintChildren(EObject parent, int level) {
+ TreeIterator<EObject> it = parent.eAllContents();
+ while(it.hasNext()) {
+ EObject obj = it.next();
+ String lvl = String.format("%"+level+"s", "").replace(' ', '-');
+
+ if (!(obj instanceof AnyType)) {
+ log.debug(lvl + obj.eClass().getName() + " (" + obj.toString() + ")");
+
+ if ("SequenceFlow".equals(obj.eClass().getName())) {
+ log.debug("SourceRef: " + ((SequenceFlow)obj).getSourceRef());
+ log.debug("TargetRef: " + ((SequenceFlow)obj).getTargetRef());
+ }
+ } else {
+ for ( Object attr : ((AnyType) obj).getAnyAttribute()) {
+ log.debug(" any attr " + attr.toString());
+ }
+ }
+ debugPrintChildren(obj, level+1);
+ }
+
+ }
+}
diff --git a/model/org.eclipse.stardust.model.bpmn2/src/main/java/org/eclipse/stardust/model/bpmn2/output/BPMNModelExporter.java b/model/org.eclipse.stardust.model.bpmn2/src/main/java/org/eclipse/stardust/model/bpmn2/output/BPMNModelExporter.java new file mode 100644 index 0000000..1aa1988 --- a/dev/null +++ b/model/org.eclipse.stardust.model.bpmn2/src/main/java/org/eclipse/stardust/model/bpmn2/output/BPMNModelExporter.java @@ -0,0 +1,37 @@ +package org.eclipse.stardust.model.bpmn2.output;
+
+import java.io.FileNotFoundException;
+import java.io.FileOutputStream;
+import java.io.IOException;
+import java.util.HashMap;
+import java.util.Map;
+
+import org.apache.log4j.Logger;
+import org.eclipse.bpmn2.util.Bpmn2Resource;
+import org.eclipse.emf.ecore.xmi.XMLResource;
+
+/**
+ * @author Simon Nikles
+ *
+ */
+public class BPMNModelExporter {
+
+ public BPMNModelExporter() {
+
+ }
+
+ public static void exportModel(Bpmn2Resource resource, String targetFilePath) throws FileNotFoundException, IOException {
+ Logger.getLogger(BPMNModelExporter.class).debug("BPMNModelExporter.exportModel() " + targetFilePath);
+
+ Map<Object, Object> options = new HashMap<Object, Object>();
+ options.put(XMLResource.OPTION_RECORD_ANY_TYPE_NAMESPACE_DECLARATIONS, Boolean.TRUE);
+ options.put(XMLResource.OPTION_RECORD_UNKNOWN_FEATURE, Boolean.TRUE);
+ options.put(XMLResource.OPTION_USE_DEPRECATED_METHODS, Boolean.FALSE);
+ options.put(XMLResource.OPTION_KEEP_DEFAULT_CONTENT, Boolean.TRUE);
+ FileOutputStream fos = new FileOutputStream(targetFilePath);
+
+ resource.save(fos, options);
+ fos.close();
+ }
+
+}
diff --git a/model/org.eclipse.stardust.model.bpmn2/src/main/java/org/eclipse/stardust/model/bpmn2/reader/ModelInfo.java b/model/org.eclipse.stardust.model.bpmn2/src/main/java/org/eclipse/stardust/model/bpmn2/reader/ModelInfo.java new file mode 100644 index 0000000..6fa7e6c --- a/dev/null +++ b/model/org.eclipse.stardust.model.bpmn2/src/main/java/org/eclipse/stardust/model/bpmn2/reader/ModelInfo.java @@ -0,0 +1,43 @@ +package org.eclipse.stardust.model.bpmn2.reader;
+
+import java.util.ArrayList;
+import java.util.List;
+
+import org.eclipse.bpmn2.Definitions;
+import org.eclipse.bpmn2.Participant;
+import org.eclipse.bpmn2.PartnerEntity;
+import org.eclipse.bpmn2.PartnerRole;
+import org.eclipse.bpmn2.RootElement;
+
+/**
+ * @author Simon Nikles
+ *
+ */
+public class ModelInfo {
+
+ public ModelInfo() {
+ }
+
+ public static List<PartnerRole> getParnterRolesOfParticipant(Definitions definitions, Participant participant) {
+ List<PartnerRole> roles = new ArrayList<PartnerRole>();
+ for (RootElement root : definitions.getRootElements()) {
+ if (root instanceof PartnerRole && ((PartnerRole)root).getParticipantRef().contains(participant)) {
+ roles.add((PartnerRole)root);
+ }
+ }
+ return roles;
+ }
+
+ public static List<PartnerEntity> getParnterEntitiesOfParticipant(Definitions definitions, Participant participant) {
+ List<PartnerEntity> entities = new ArrayList<PartnerEntity>();
+ for (RootElement root : definitions.getRootElements()) {
+ if (root instanceof PartnerEntity && ((PartnerEntity)root).getParticipantRef().contains(participant)) {
+ entities.add((PartnerEntity)root);
+ }
+ }
+ return entities;
+ }
+
+
+
+}
diff --git a/model/org.eclipse.stardust.model.bpmn2/src/main/java/org/eclipse/stardust/model/bpmn2/sdbpmn/DocumentRoot.java b/model/org.eclipse.stardust.model.bpmn2/src/main/java/org/eclipse/stardust/model/bpmn2/sdbpmn/DocumentRoot.java new file mode 100644 index 0000000..cd8daf8 --- a/dev/null +++ b/model/org.eclipse.stardust.model.bpmn2/src/main/java/org/eclipse/stardust/model/bpmn2/sdbpmn/DocumentRoot.java @@ -0,0 +1,603 @@ +/**
+ * <copyright>
+ * </copyright>
+ *
+ * $Id$
+ */
+package org.eclipse.stardust.model.bpmn2.sdbpmn;
+
+import java.math.BigInteger;
+
+import javax.xml.datatype.XMLGregorianCalendar;
+
+import org.eclipse.emf.common.util.EMap;
+
+import org.eclipse.emf.ecore.EObject;
+
+import org.eclipse.emf.ecore.util.FeatureMap;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Document Root</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * <ul>
+ * <li>{@link org.eclipse.stardust.model.bpmn2.sdbpmn.DocumentRoot#getMixed <em>Mixed</em>}</li>
+ * <li>{@link org.eclipse.stardust.model.bpmn2.sdbpmn.DocumentRoot#getXMLNSPrefixMap <em>XMLNS Prefix Map</em>}</li>
+ * <li>{@link org.eclipse.stardust.model.bpmn2.sdbpmn.DocumentRoot#getXSISchemaLocation <em>XSI Schema Location</em>}</li>
+ * <li>{@link org.eclipse.stardust.model.bpmn2.sdbpmn.DocumentRoot#getStardustActivity <em>Stardust Activity</em>}</li>
+ * <li>{@link org.eclipse.stardust.model.bpmn2.sdbpmn.DocumentRoot#getStardustAttributes <em>Stardust Attributes</em>}</li>
+ * <li>{@link org.eclipse.stardust.model.bpmn2.sdbpmn.DocumentRoot#getStardustCommon <em>Stardust Common</em>}</li>
+ * <li>{@link org.eclipse.stardust.model.bpmn2.sdbpmn.DocumentRoot#getStardustMessageStartEvent <em>Stardust Message Start Event</em>}</li>
+ * <li>{@link org.eclipse.stardust.model.bpmn2.sdbpmn.DocumentRoot#getStardustModel <em>Stardust Model</em>}</li>
+ * <li>{@link org.eclipse.stardust.model.bpmn2.sdbpmn.DocumentRoot#getStardustSeqenceFlow <em>Stardust Seqence Flow</em>}</li>
+ * <li>{@link org.eclipse.stardust.model.bpmn2.sdbpmn.DocumentRoot#getStardustServiceTask <em>Stardust Service Task</em>}</li>
+ * <li>{@link org.eclipse.stardust.model.bpmn2.sdbpmn.DocumentRoot#getStardustStartEvent <em>Stardust Start Event</em>}</li>
+ * <li>{@link org.eclipse.stardust.model.bpmn2.sdbpmn.DocumentRoot#getStardustSubprocess <em>Stardust Subprocess</em>}</li>
+ * <li>{@link org.eclipse.stardust.model.bpmn2.sdbpmn.DocumentRoot#getStardustTimerStartEvent <em>Stardust Timer Start Event</em>}</li>
+ * <li>{@link org.eclipse.stardust.model.bpmn2.sdbpmn.DocumentRoot#getStardustUserTask <em>Stardust User Task</em>}</li>
+ * <li>{@link org.eclipse.stardust.model.bpmn2.sdbpmn.DocumentRoot#getAuthor <em>Author</em>}</li>
+ * <li>{@link org.eclipse.stardust.model.bpmn2.sdbpmn.DocumentRoot#getCarnotVersion <em>Carnot Version</em>}</li>
+ * <li>{@link org.eclipse.stardust.model.bpmn2.sdbpmn.DocumentRoot#getCreated <em>Created</em>}</li>
+ * <li>{@link org.eclipse.stardust.model.bpmn2.sdbpmn.DocumentRoot#getModelOID <em>Model OID</em>}</li>
+ * <li>{@link org.eclipse.stardust.model.bpmn2.sdbpmn.DocumentRoot#getOid <em>Oid</em>}</li>
+ * <li>{@link org.eclipse.stardust.model.bpmn2.sdbpmn.DocumentRoot#getVendor <em>Vendor</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @see org.eclipse.stardust.model.bpmn2.sdbpmn.SdbpmnPackage#getDocumentRoot()
+ * @model extendedMetaData="name='' kind='mixed'"
+ * @generated
+ */
+public interface DocumentRoot extends EObject {
+ /**
+ * Returns the value of the '<em><b>Mixed</b></em>' attribute list.
+ * The list contents are of type {@link org.eclipse.emf.ecore.util.FeatureMap.Entry}.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Mixed</em>' attribute list isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Mixed</em>' attribute list.
+ * @see org.eclipse.stardust.model.bpmn2.sdbpmn.SdbpmnPackage#getDocumentRoot_Mixed()
+ * @model unique="false" dataType="org.eclipse.emf.ecore.EFeatureMapEntry" many="true"
+ * extendedMetaData="kind='elementWildcard' name=':mixed'"
+ * @generated
+ */
+ FeatureMap getMixed();
+
+ /**
+ * Returns the value of the '<em><b>XMLNS Prefix Map</b></em>' map.
+ * The key is of type {@link java.lang.String},
+ * and the value is of type {@link java.lang.String},
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>XMLNS Prefix Map</em>' map isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>XMLNS Prefix Map</em>' map.
+ * @see org.eclipse.stardust.model.bpmn2.sdbpmn.SdbpmnPackage#getDocumentRoot_XMLNSPrefixMap()
+ * @model mapType="org.eclipse.emf.ecore.EStringToStringMapEntry<org.eclipse.emf.ecore.EString, org.eclipse.emf.ecore.EString>" transient="true"
+ * extendedMetaData="kind='attribute' name='xmlns:prefix'"
+ * @generated
+ */
+ EMap<String, String> getXMLNSPrefixMap();
+
+ /**
+ * Returns the value of the '<em><b>XSI Schema Location</b></em>' map.
+ * The key is of type {@link java.lang.String},
+ * and the value is of type {@link java.lang.String},
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>XSI Schema Location</em>' map isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>XSI Schema Location</em>' map.
+ * @see org.eclipse.stardust.model.bpmn2.sdbpmn.SdbpmnPackage#getDocumentRoot_XSISchemaLocation()
+ * @model mapType="org.eclipse.emf.ecore.EStringToStringMapEntry<org.eclipse.emf.ecore.EString, org.eclipse.emf.ecore.EString>" transient="true"
+ * extendedMetaData="kind='attribute' name='xsi:schemaLocation'"
+ * @generated
+ */
+ EMap<String, String> getXSISchemaLocation();
+
+ /**
+ * Returns the value of the '<em><b>Stardust Activity</b></em>' containment reference.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Stardust Activity</em>' containment reference isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Stardust Activity</em>' containment reference.
+ * @see #setStardustActivity(TStardustActivity)
+ * @see org.eclipse.stardust.model.bpmn2.sdbpmn.SdbpmnPackage#getDocumentRoot_StardustActivity()
+ * @model containment="true" upper="-2" transient="true" volatile="true" derived="true"
+ * extendedMetaData="kind='element' name='StardustActivity' namespace='##targetNamespace'"
+ * @generated
+ */
+ TStardustActivity getStardustActivity();
+
+ /**
+ * Sets the value of the '{@link org.eclipse.stardust.model.bpmn2.sdbpmn.DocumentRoot#getStardustActivity <em>Stardust Activity</em>}' containment reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Stardust Activity</em>' containment reference.
+ * @see #getStardustActivity()
+ * @generated
+ */
+ void setStardustActivity(TStardustActivity value);
+
+ /**
+ * Returns the value of the '<em><b>Stardust Attributes</b></em>' containment reference.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Stardust Attributes</em>' containment reference isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Stardust Attributes</em>' containment reference.
+ * @see #setStardustAttributes(StardustAttributesType)
+ * @see org.eclipse.stardust.model.bpmn2.sdbpmn.SdbpmnPackage#getDocumentRoot_StardustAttributes()
+ * @model containment="true" upper="-2" transient="true" volatile="true" derived="true"
+ * extendedMetaData="kind='element' name='StardustAttributes' namespace='##targetNamespace'"
+ * @generated
+ */
+ StardustAttributesType getStardustAttributes();
+
+ /**
+ * Sets the value of the '{@link org.eclipse.stardust.model.bpmn2.sdbpmn.DocumentRoot#getStardustAttributes <em>Stardust Attributes</em>}' containment reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Stardust Attributes</em>' containment reference.
+ * @see #getStardustAttributes()
+ * @generated
+ */
+ void setStardustAttributes(StardustAttributesType value);
+
+ /**
+ * Returns the value of the '<em><b>Stardust Common</b></em>' containment reference.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Stardust Common</em>' containment reference isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Stardust Common</em>' containment reference.
+ * @see #setStardustCommon(TStardustCommon)
+ * @see org.eclipse.stardust.model.bpmn2.sdbpmn.SdbpmnPackage#getDocumentRoot_StardustCommon()
+ * @model containment="true" upper="-2" transient="true" volatile="true" derived="true"
+ * extendedMetaData="kind='element' name='StardustCommon' namespace='##targetNamespace'"
+ * @generated
+ */
+ TStardustCommon getStardustCommon();
+
+ /**
+ * Sets the value of the '{@link org.eclipse.stardust.model.bpmn2.sdbpmn.DocumentRoot#getStardustCommon <em>Stardust Common</em>}' containment reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Stardust Common</em>' containment reference.
+ * @see #getStardustCommon()
+ * @generated
+ */
+ void setStardustCommon(TStardustCommon value);
+
+ /**
+ * Returns the value of the '<em><b>Stardust Message Start Event</b></em>' containment reference.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Stardust Message Start Event</em>' containment reference isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Stardust Message Start Event</em>' containment reference.
+ * @see #setStardustMessageStartEvent(StardustMessageStartEventType)
+ * @see org.eclipse.stardust.model.bpmn2.sdbpmn.SdbpmnPackage#getDocumentRoot_StardustMessageStartEvent()
+ * @model containment="true" upper="-2" transient="true" volatile="true" derived="true"
+ * extendedMetaData="kind='element' name='StardustMessageStartEvent' namespace='##targetNamespace'"
+ * @generated
+ */
+ StardustMessageStartEventType getStardustMessageStartEvent();
+
+ /**
+ * Sets the value of the '{@link org.eclipse.stardust.model.bpmn2.sdbpmn.DocumentRoot#getStardustMessageStartEvent <em>Stardust Message Start Event</em>}' containment reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Stardust Message Start Event</em>' containment reference.
+ * @see #getStardustMessageStartEvent()
+ * @generated
+ */
+ void setStardustMessageStartEvent(StardustMessageStartEventType value);
+
+ /**
+ * Returns the value of the '<em><b>Stardust Model</b></em>' containment reference.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Stardust Model</em>' containment reference isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Stardust Model</em>' containment reference.
+ * @see #setStardustModel(StardustModelType)
+ * @see org.eclipse.stardust.model.bpmn2.sdbpmn.SdbpmnPackage#getDocumentRoot_StardustModel()
+ * @model containment="true" upper="-2" transient="true" volatile="true" derived="true"
+ * extendedMetaData="kind='element' name='StardustModel' namespace='##targetNamespace'"
+ * @generated
+ */
+ StardustModelType getStardustModel();
+
+ /**
+ * Sets the value of the '{@link org.eclipse.stardust.model.bpmn2.sdbpmn.DocumentRoot#getStardustModel <em>Stardust Model</em>}' containment reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Stardust Model</em>' containment reference.
+ * @see #getStardustModel()
+ * @generated
+ */
+ void setStardustModel(StardustModelType value);
+
+ /**
+ * Returns the value of the '<em><b>Stardust Seqence Flow</b></em>' containment reference.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Stardust Seqence Flow</em>' containment reference isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Stardust Seqence Flow</em>' containment reference.
+ * @see #setStardustSeqenceFlow(StardustSeqenceFlowType)
+ * @see org.eclipse.stardust.model.bpmn2.sdbpmn.SdbpmnPackage#getDocumentRoot_StardustSeqenceFlow()
+ * @model containment="true" upper="-2" transient="true" volatile="true" derived="true"
+ * extendedMetaData="kind='element' name='StardustSeqenceFlow' namespace='##targetNamespace'"
+ * @generated
+ */
+ StardustSeqenceFlowType getStardustSeqenceFlow();
+
+ /**
+ * Sets the value of the '{@link org.eclipse.stardust.model.bpmn2.sdbpmn.DocumentRoot#getStardustSeqenceFlow <em>Stardust Seqence Flow</em>}' containment reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Stardust Seqence Flow</em>' containment reference.
+ * @see #getStardustSeqenceFlow()
+ * @generated
+ */
+ void setStardustSeqenceFlow(StardustSeqenceFlowType value);
+
+ /**
+ * Returns the value of the '<em><b>Stardust Service Task</b></em>' containment reference.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Stardust Service Task</em>' containment reference isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Stardust Service Task</em>' containment reference.
+ * @see #setStardustServiceTask(StardustServiceTaskType)
+ * @see org.eclipse.stardust.model.bpmn2.sdbpmn.SdbpmnPackage#getDocumentRoot_StardustServiceTask()
+ * @model containment="true" upper="-2" transient="true" volatile="true" derived="true"
+ * extendedMetaData="kind='element' name='StardustServiceTask' namespace='##targetNamespace'"
+ * @generated
+ */
+ StardustServiceTaskType getStardustServiceTask();
+
+ /**
+ * Sets the value of the '{@link org.eclipse.stardust.model.bpmn2.sdbpmn.DocumentRoot#getStardustServiceTask <em>Stardust Service Task</em>}' containment reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Stardust Service Task</em>' containment reference.
+ * @see #getStardustServiceTask()
+ * @generated
+ */
+ void setStardustServiceTask(StardustServiceTaskType value);
+
+ /**
+ * Returns the value of the '<em><b>Stardust Start Event</b></em>' containment reference.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Stardust Start Event</em>' containment reference isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Stardust Start Event</em>' containment reference.
+ * @see #setStardustStartEvent(StardustStartEventType)
+ * @see org.eclipse.stardust.model.bpmn2.sdbpmn.SdbpmnPackage#getDocumentRoot_StardustStartEvent()
+ * @model containment="true" upper="-2" transient="true" volatile="true" derived="true"
+ * extendedMetaData="kind='element' name='StardustStartEvent' namespace='##targetNamespace'"
+ * @generated
+ */
+ StardustStartEventType getStardustStartEvent();
+
+ /**
+ * Sets the value of the '{@link org.eclipse.stardust.model.bpmn2.sdbpmn.DocumentRoot#getStardustStartEvent <em>Stardust Start Event</em>}' containment reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Stardust Start Event</em>' containment reference.
+ * @see #getStardustStartEvent()
+ * @generated
+ */
+ void setStardustStartEvent(StardustStartEventType value);
+
+ /**
+ * Returns the value of the '<em><b>Stardust Subprocess</b></em>' containment reference.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Stardust Subprocess</em>' containment reference isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Stardust Subprocess</em>' containment reference.
+ * @see #setStardustSubprocess(StardustSubprocessType)
+ * @see org.eclipse.stardust.model.bpmn2.sdbpmn.SdbpmnPackage#getDocumentRoot_StardustSubprocess()
+ * @model containment="true" upper="-2" transient="true" volatile="true" derived="true"
+ * extendedMetaData="kind='element' name='StardustSubprocess' namespace='##targetNamespace'"
+ * @generated
+ */
+ StardustSubprocessType getStardustSubprocess();
+
+ /**
+ * Sets the value of the '{@link org.eclipse.stardust.model.bpmn2.sdbpmn.DocumentRoot#getStardustSubprocess <em>Stardust Subprocess</em>}' containment reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Stardust Subprocess</em>' containment reference.
+ * @see #getStardustSubprocess()
+ * @generated
+ */
+ void setStardustSubprocess(StardustSubprocessType value);
+
+ /**
+ * Returns the value of the '<em><b>Stardust Timer Start Event</b></em>' containment reference.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Stardust Timer Start Event</em>' containment reference isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Stardust Timer Start Event</em>' containment reference.
+ * @see #setStardustTimerStartEvent(StardustTimerStartEventType)
+ * @see org.eclipse.stardust.model.bpmn2.sdbpmn.SdbpmnPackage#getDocumentRoot_StardustTimerStartEvent()
+ * @model containment="true" upper="-2" transient="true" volatile="true" derived="true"
+ * extendedMetaData="kind='element' name='StardustTimerStartEvent' namespace='##targetNamespace'"
+ * @generated
+ */
+ StardustTimerStartEventType getStardustTimerStartEvent();
+
+ /**
+ * Sets the value of the '{@link org.eclipse.stardust.model.bpmn2.sdbpmn.DocumentRoot#getStardustTimerStartEvent <em>Stardust Timer Start Event</em>}' containment reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Stardust Timer Start Event</em>' containment reference.
+ * @see #getStardustTimerStartEvent()
+ * @generated
+ */
+ void setStardustTimerStartEvent(StardustTimerStartEventType value);
+
+ /**
+ * Returns the value of the '<em><b>Stardust User Task</b></em>' containment reference.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Stardust User Task</em>' containment reference isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Stardust User Task</em>' containment reference.
+ * @see #setStardustUserTask(StardustUserTaskType)
+ * @see org.eclipse.stardust.model.bpmn2.sdbpmn.SdbpmnPackage#getDocumentRoot_StardustUserTask()
+ * @model containment="true" upper="-2" transient="true" volatile="true" derived="true"
+ * extendedMetaData="kind='element' name='StardustUserTask' namespace='##targetNamespace'"
+ * @generated
+ */
+ StardustUserTaskType getStardustUserTask();
+
+ /**
+ * Sets the value of the '{@link org.eclipse.stardust.model.bpmn2.sdbpmn.DocumentRoot#getStardustUserTask <em>Stardust User Task</em>}' containment reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Stardust User Task</em>' containment reference.
+ * @see #getStardustUserTask()
+ * @generated
+ */
+ void setStardustUserTask(StardustUserTaskType value);
+
+ /**
+ * Returns the value of the '<em><b>Author</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * <!-- begin-model-doc -->
+ *
+ * The name of the user editing this model last.
+ *
+ * <!-- end-model-doc -->
+ * @return the value of the '<em>Author</em>' attribute.
+ * @see #setAuthor(String)
+ * @see org.eclipse.stardust.model.bpmn2.sdbpmn.SdbpmnPackage#getDocumentRoot_Author()
+ * @model dataType="org.eclipse.emf.ecore.xml.type.String"
+ * extendedMetaData="kind='attribute' name='author' namespace='##targetNamespace'"
+ * @generated
+ */
+ String getAuthor();
+
+ /**
+ * Sets the value of the '{@link org.eclipse.stardust.model.bpmn2.sdbpmn.DocumentRoot#getAuthor <em>Author</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Author</em>' attribute.
+ * @see #getAuthor()
+ * @generated
+ */
+ void setAuthor(String value);
+
+ /**
+ * Returns the value of the '<em><b>Carnot Version</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * <!-- begin-model-doc -->
+ *
+ * The software version used to create and edit this model. Opening this
+ * model in another version of the software may require an explicit
+ * conversion.
+ *
+ * <!-- end-model-doc -->
+ * @return the value of the '<em>Carnot Version</em>' attribute.
+ * @see #setCarnotVersion(String)
+ * @see org.eclipse.stardust.model.bpmn2.sdbpmn.SdbpmnPackage#getDocumentRoot_CarnotVersion()
+ * @model dataType="org.eclipse.emf.ecore.xml.type.String"
+ * extendedMetaData="kind='attribute' name='carnotVersion' namespace='##targetNamespace'"
+ * @generated
+ */
+ String getCarnotVersion();
+
+ /**
+ * Sets the value of the '{@link org.eclipse.stardust.model.bpmn2.sdbpmn.DocumentRoot#getCarnotVersion <em>Carnot Version</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Carnot Version</em>' attribute.
+ * @see #getCarnotVersion()
+ * @generated
+ */
+ void setCarnotVersion(String value);
+
+ /**
+ * Returns the value of the '<em><b>Created</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * <!-- begin-model-doc -->
+ * The date this model was created.
+ * <!-- end-model-doc -->
+ * @return the value of the '<em>Created</em>' attribute.
+ * @see #setCreated(XMLGregorianCalendar)
+ * @see org.eclipse.stardust.model.bpmn2.sdbpmn.SdbpmnPackage#getDocumentRoot_Created()
+ * @model dataType="org.eclipse.emf.ecore.xml.type.DateTime"
+ * extendedMetaData="kind='attribute' name='created' namespace='##targetNamespace'"
+ * @generated
+ */
+ XMLGregorianCalendar getCreated();
+
+ /**
+ * Sets the value of the '{@link org.eclipse.stardust.model.bpmn2.sdbpmn.DocumentRoot#getCreated <em>Created</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Created</em>' attribute.
+ * @see #getCreated()
+ * @generated
+ */
+ void setCreated(XMLGregorianCalendar value);
+
+ /**
+ * Returns the value of the '<em><b>Model OID</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * <!-- begin-model-doc -->
+ *
+ * A 32-bit number assigned to the model during deployment to an audit
+ * trail. This number may be changed if the model is deployed to different
+ * audit trails or even to the same audit trail multiple times.
+ *
+ * <!-- end-model-doc -->
+ * @return the value of the '<em>Model OID</em>' attribute.
+ * @see #setModelOID(BigInteger)
+ * @see org.eclipse.stardust.model.bpmn2.sdbpmn.SdbpmnPackage#getDocumentRoot_ModelOID()
+ * @model dataType="org.eclipse.emf.ecore.xml.type.Integer"
+ * extendedMetaData="kind='attribute' name='modelOID' namespace='##targetNamespace'"
+ * @generated
+ */
+ BigInteger getModelOID();
+
+ /**
+ * Sets the value of the '{@link org.eclipse.stardust.model.bpmn2.sdbpmn.DocumentRoot#getModelOID <em>Model OID</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Model OID</em>' attribute.
+ * @see #getModelOID()
+ * @generated
+ */
+ void setModelOID(BigInteger value);
+
+ /**
+ * Returns the value of the '<em><b>Oid</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * <!-- begin-model-doc -->
+ *
+ * A 64-bit number uniquely identifying the model in the model repository.
+ *
+ * <!-- end-model-doc -->
+ * @return the value of the '<em>Oid</em>' attribute.
+ * @see #isSetOid()
+ * @see #unsetOid()
+ * @see #setOid(long)
+ * @see org.eclipse.stardust.model.bpmn2.sdbpmn.SdbpmnPackage#getDocumentRoot_Oid()
+ * @model unsettable="true" dataType="org.eclipse.emf.ecore.xml.type.Long"
+ * extendedMetaData="kind='attribute' name='oid' namespace='##targetNamespace'"
+ * @generated
+ */
+ long getOid();
+
+ /**
+ * Sets the value of the '{@link org.eclipse.stardust.model.bpmn2.sdbpmn.DocumentRoot#getOid <em>Oid</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Oid</em>' attribute.
+ * @see #isSetOid()
+ * @see #unsetOid()
+ * @see #getOid()
+ * @generated
+ */
+ void setOid(long value);
+
+ /**
+ * Unsets the value of the '{@link org.eclipse.stardust.model.bpmn2.sdbpmn.DocumentRoot#getOid <em>Oid</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #isSetOid()
+ * @see #getOid()
+ * @see #setOid(long)
+ * @generated
+ */
+ void unsetOid();
+
+ /**
+ * Returns whether the value of the '{@link org.eclipse.stardust.model.bpmn2.sdbpmn.DocumentRoot#getOid <em>Oid</em>}' attribute is set.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return whether the value of the '<em>Oid</em>' attribute is set.
+ * @see #unsetOid()
+ * @see #getOid()
+ * @see #setOid(long)
+ * @generated
+ */
+ boolean isSetOid();
+
+ /**
+ * Returns the value of the '<em><b>Vendor</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * <!-- begin-model-doc -->
+ *
+ * The vendor of the software used to create and edit this model. Usually
+ * this will be "carnot".
+ *
+ * <!-- end-model-doc -->
+ * @return the value of the '<em>Vendor</em>' attribute.
+ * @see #setVendor(String)
+ * @see org.eclipse.stardust.model.bpmn2.sdbpmn.SdbpmnPackage#getDocumentRoot_Vendor()
+ * @model dataType="org.eclipse.emf.ecore.xml.type.String"
+ * extendedMetaData="kind='attribute' name='vendor' namespace='##targetNamespace'"
+ * @generated
+ */
+ String getVendor();
+
+ /**
+ * Sets the value of the '{@link org.eclipse.stardust.model.bpmn2.sdbpmn.DocumentRoot#getVendor <em>Vendor</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Vendor</em>' attribute.
+ * @see #getVendor()
+ * @generated
+ */
+ void setVendor(String value);
+
+} // DocumentRoot
diff --git a/model/org.eclipse.stardust.model.bpmn2/src/main/java/org/eclipse/stardust/model/bpmn2/sdbpmn/SdbpmnFactory.java b/model/org.eclipse.stardust.model.bpmn2/src/main/java/org/eclipse/stardust/model/bpmn2/sdbpmn/SdbpmnFactory.java new file mode 100644 index 0000000..3c1329d --- a/dev/null +++ b/model/org.eclipse.stardust.model.bpmn2/src/main/java/org/eclipse/stardust/model/bpmn2/sdbpmn/SdbpmnFactory.java @@ -0,0 +1,145 @@ +/**
+ * <copyright>
+ * </copyright>
+ *
+ * $Id$
+ */
+package org.eclipse.stardust.model.bpmn2.sdbpmn;
+
+import org.eclipse.emf.ecore.EFactory;
+
+/**
+ * <!-- begin-user-doc -->
+ * The <b>Factory</b> for the model.
+ * It provides a create method for each non-abstract class of the model.
+ * <!-- end-user-doc -->
+ * @see org.eclipse.stardust.model.bpmn2.sdbpmn.SdbpmnPackage
+ * @generated
+ */
+public interface SdbpmnFactory extends EFactory {
+ /**
+ * The singleton instance of the factory.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ SdbpmnFactory eINSTANCE = org.eclipse.stardust.model.bpmn2.sdbpmn.impl.SdbpmnFactoryImpl.init();
+
+ /**
+ * Returns a new object of class '<em>Document Root</em>'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return a new object of class '<em>Document Root</em>'.
+ * @generated
+ */
+ DocumentRoot createDocumentRoot();
+
+ /**
+ * Returns a new object of class '<em>Stardust Attributes Type</em>'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return a new object of class '<em>Stardust Attributes Type</em>'.
+ * @generated
+ */
+ StardustAttributesType createStardustAttributesType();
+
+ /**
+ * Returns a new object of class '<em>Stardust Message Start Event Type</em>'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return a new object of class '<em>Stardust Message Start Event Type</em>'.
+ * @generated
+ */
+ StardustMessageStartEventType createStardustMessageStartEventType();
+
+ /**
+ * Returns a new object of class '<em>Stardust Model Type</em>'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return a new object of class '<em>Stardust Model Type</em>'.
+ * @generated
+ */
+ StardustModelType createStardustModelType();
+
+ /**
+ * Returns a new object of class '<em>Stardust Seqence Flow Type</em>'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return a new object of class '<em>Stardust Seqence Flow Type</em>'.
+ * @generated
+ */
+ StardustSeqenceFlowType createStardustSeqenceFlowType();
+
+ /**
+ * Returns a new object of class '<em>Stardust Service Task Type</em>'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return a new object of class '<em>Stardust Service Task Type</em>'.
+ * @generated
+ */
+ StardustServiceTaskType createStardustServiceTaskType();
+
+ /**
+ * Returns a new object of class '<em>Stardust Start Event Type</em>'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return a new object of class '<em>Stardust Start Event Type</em>'.
+ * @generated
+ */
+ StardustStartEventType createStardustStartEventType();
+
+ /**
+ * Returns a new object of class '<em>Stardust Subprocess Type</em>'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return a new object of class '<em>Stardust Subprocess Type</em>'.
+ * @generated
+ */
+ StardustSubprocessType createStardustSubprocessType();
+
+ /**
+ * Returns a new object of class '<em>Stardust Timer Start Event Type</em>'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return a new object of class '<em>Stardust Timer Start Event Type</em>'.
+ * @generated
+ */
+ StardustTimerStartEventType createStardustTimerStartEventType();
+
+ /**
+ * Returns a new object of class '<em>Stardust User Task Type</em>'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return a new object of class '<em>Stardust User Task Type</em>'.
+ * @generated
+ */
+ StardustUserTaskType createStardustUserTaskType();
+
+ /**
+ * Returns a new object of class '<em>TStardust Activity</em>'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return a new object of class '<em>TStardust Activity</em>'.
+ * @generated
+ */
+ TStardustActivity createTStardustActivity();
+
+ /**
+ * Returns a new object of class '<em>TStardust Common</em>'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return a new object of class '<em>TStardust Common</em>'.
+ * @generated
+ */
+ TStardustCommon createTStardustCommon();
+
+ /**
+ * Returns the package supported by this factory.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the package supported by this factory.
+ * @generated
+ */
+ SdbpmnPackage getSdbpmnPackage();
+
+} //SdbpmnFactory
diff --git a/model/org.eclipse.stardust.model.bpmn2/src/main/java/org/eclipse/stardust/model/bpmn2/sdbpmn/SdbpmnPackage.java b/model/org.eclipse.stardust.model.bpmn2/src/main/java/org/eclipse/stardust/model/bpmn2/sdbpmn/SdbpmnPackage.java new file mode 100644 index 0000000..8500ea5 --- a/dev/null +++ b/model/org.eclipse.stardust.model.bpmn2/src/main/java/org/eclipse/stardust/model/bpmn2/sdbpmn/SdbpmnPackage.java @@ -0,0 +1,1820 @@ +/**
+ * <copyright>
+ * </copyright>
+ *
+ * $Id$
+ */
+package org.eclipse.stardust.model.bpmn2.sdbpmn;
+
+import org.eclipse.emf.ecore.EAttribute;
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.EPackage;
+import org.eclipse.emf.ecore.EReference;
+
+/**
+ * <!-- begin-user-doc -->
+ * The <b>Package</b> for the model.
+ * It contains accessors for the meta objects to represent
+ * <ul>
+ * <li>each class,</li>
+ * <li>each feature of each class,</li>
+ * <li>each enum,</li>
+ * <li>and each data type</li>
+ * </ul>
+ * <!-- end-user-doc -->
+ * @see org.eclipse.stardust.model.bpmn2.sdbpmn.SdbpmnFactory
+ * @model kind="package"
+ * @generated
+ */
+public interface SdbpmnPackage extends EPackage {
+ /**
+ * The package name.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ String eNAME = "sdbpmn";
+
+ /**
+ * The package namespace URI.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ String eNS_URI = "http://www.eclipse.org/stardust/bpmn20/sdbpmn";
+
+ /**
+ * The package namespace name.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ String eNS_PREFIX = "sdbpmn";
+
+ /**
+ * The singleton instance of the package.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ SdbpmnPackage eINSTANCE = org.eclipse.stardust.model.bpmn2.sdbpmn.impl.SdbpmnPackageImpl.init();
+
+ /**
+ * The meta object id for the '{@link org.eclipse.stardust.model.bpmn2.sdbpmn.impl.DocumentRootImpl <em>Document Root</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.stardust.model.bpmn2.sdbpmn.impl.DocumentRootImpl
+ * @see org.eclipse.stardust.model.bpmn2.sdbpmn.impl.SdbpmnPackageImpl#getDocumentRoot()
+ * @generated
+ */
+ int DOCUMENT_ROOT = 0;
+
+ /**
+ * The feature id for the '<em><b>Mixed</b></em>' attribute list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int DOCUMENT_ROOT__MIXED = 0;
+
+ /**
+ * The feature id for the '<em><b>XMLNS Prefix Map</b></em>' map.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int DOCUMENT_ROOT__XMLNS_PREFIX_MAP = 1;
+
+ /**
+ * The feature id for the '<em><b>XSI Schema Location</b></em>' map.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int DOCUMENT_ROOT__XSI_SCHEMA_LOCATION = 2;
+
+ /**
+ * The feature id for the '<em><b>Stardust Activity</b></em>' containment reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int DOCUMENT_ROOT__STARDUST_ACTIVITY = 3;
+
+ /**
+ * The feature id for the '<em><b>Stardust Attributes</b></em>' containment reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int DOCUMENT_ROOT__STARDUST_ATTRIBUTES = 4;
+
+ /**
+ * The feature id for the '<em><b>Stardust Common</b></em>' containment reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int DOCUMENT_ROOT__STARDUST_COMMON = 5;
+
+ /**
+ * The feature id for the '<em><b>Stardust Message Start Event</b></em>' containment reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int DOCUMENT_ROOT__STARDUST_MESSAGE_START_EVENT = 6;
+
+ /**
+ * The feature id for the '<em><b>Stardust Model</b></em>' containment reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int DOCUMENT_ROOT__STARDUST_MODEL = 7;
+
+ /**
+ * The feature id for the '<em><b>Stardust Seqence Flow</b></em>' containment reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int DOCUMENT_ROOT__STARDUST_SEQENCE_FLOW = 8;
+
+ /**
+ * The feature id for the '<em><b>Stardust Service Task</b></em>' containment reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int DOCUMENT_ROOT__STARDUST_SERVICE_TASK = 9;
+
+ /**
+ * The feature id for the '<em><b>Stardust Start Event</b></em>' containment reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int DOCUMENT_ROOT__STARDUST_START_EVENT = 10;
+
+ /**
+ * The feature id for the '<em><b>Stardust Subprocess</b></em>' containment reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int DOCUMENT_ROOT__STARDUST_SUBPROCESS = 11;
+
+ /**
+ * The feature id for the '<em><b>Stardust Timer Start Event</b></em>' containment reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int DOCUMENT_ROOT__STARDUST_TIMER_START_EVENT = 12;
+
+ /**
+ * The feature id for the '<em><b>Stardust User Task</b></em>' containment reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int DOCUMENT_ROOT__STARDUST_USER_TASK = 13;
+
+ /**
+ * The feature id for the '<em><b>Author</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int DOCUMENT_ROOT__AUTHOR = 14;
+
+ /**
+ * The feature id for the '<em><b>Carnot Version</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int DOCUMENT_ROOT__CARNOT_VERSION = 15;
+
+ /**
+ * The feature id for the '<em><b>Created</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int DOCUMENT_ROOT__CREATED = 16;
+
+ /**
+ * The feature id for the '<em><b>Model OID</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int DOCUMENT_ROOT__MODEL_OID = 17;
+
+ /**
+ * The feature id for the '<em><b>Oid</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int DOCUMENT_ROOT__OID = 18;
+
+ /**
+ * The feature id for the '<em><b>Vendor</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int DOCUMENT_ROOT__VENDOR = 19;
+
+ /**
+ * The number of structural features of the '<em>Document Root</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int DOCUMENT_ROOT_FEATURE_COUNT = 20;
+
+ /**
+ * The meta object id for the '{@link org.eclipse.stardust.model.bpmn2.sdbpmn.impl.StardustAttributesTypeImpl <em>Stardust Attributes Type</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.stardust.model.bpmn2.sdbpmn.impl.StardustAttributesTypeImpl
+ * @see org.eclipse.stardust.model.bpmn2.sdbpmn.impl.SdbpmnPackageImpl#getStardustAttributesType()
+ * @generated
+ */
+ int STARDUST_ATTRIBUTES_TYPE = 1;
+
+ /**
+ * The feature id for the '<em><b>Attribute Type</b></em>' containment reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int STARDUST_ATTRIBUTES_TYPE__ATTRIBUTE_TYPE = 0;
+
+ /**
+ * The number of structural features of the '<em>Stardust Attributes Type</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int STARDUST_ATTRIBUTES_TYPE_FEATURE_COUNT = 1;
+
+ /**
+ * The meta object id for the '{@link org.eclipse.stardust.model.bpmn2.sdbpmn.impl.StardustMessageStartEventTypeImpl <em>Stardust Message Start Event Type</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.stardust.model.bpmn2.sdbpmn.impl.StardustMessageStartEventTypeImpl
+ * @see org.eclipse.stardust.model.bpmn2.sdbpmn.impl.SdbpmnPackageImpl#getStardustMessageStartEventType()
+ * @generated
+ */
+ int STARDUST_MESSAGE_START_EVENT_TYPE = 2;
+
+ /**
+ * The feature id for the '<em><b>Stardust Attributes</b></em>' containment reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int STARDUST_MESSAGE_START_EVENT_TYPE__STARDUST_ATTRIBUTES = 0;
+
+ /**
+ * The feature id for the '<em><b>Access Point</b></em>' containment reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int STARDUST_MESSAGE_START_EVENT_TYPE__ACCESS_POINT = 1;
+
+ /**
+ * The feature id for the '<em><b>Parameter Mapping</b></em>' containment reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int STARDUST_MESSAGE_START_EVENT_TYPE__PARAMETER_MAPPING = 2;
+
+ /**
+ * The feature id for the '<em><b>Type</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int STARDUST_MESSAGE_START_EVENT_TYPE__TYPE = 3;
+
+ /**
+ * The number of structural features of the '<em>Stardust Message Start Event Type</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int STARDUST_MESSAGE_START_EVENT_TYPE_FEATURE_COUNT = 4;
+
+ /**
+ * The meta object id for the '{@link org.eclipse.stardust.model.bpmn2.sdbpmn.impl.StardustModelTypeImpl <em>Stardust Model Type</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.stardust.model.bpmn2.sdbpmn.impl.StardustModelTypeImpl
+ * @see org.eclipse.stardust.model.bpmn2.sdbpmn.impl.SdbpmnPackageImpl#getStardustModelType()
+ * @generated
+ */
+ int STARDUST_MODEL_TYPE = 3;
+
+ /**
+ * The feature id for the '<em><b>Author</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int STARDUST_MODEL_TYPE__AUTHOR = 0;
+
+ /**
+ * The feature id for the '<em><b>Carnot Version</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int STARDUST_MODEL_TYPE__CARNOT_VERSION = 1;
+
+ /**
+ * The feature id for the '<em><b>Created</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int STARDUST_MODEL_TYPE__CREATED = 2;
+
+ /**
+ * The feature id for the '<em><b>Model OID</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int STARDUST_MODEL_TYPE__MODEL_OID = 3;
+
+ /**
+ * The feature id for the '<em><b>Oid</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int STARDUST_MODEL_TYPE__OID = 4;
+
+ /**
+ * The feature id for the '<em><b>Vendor</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int STARDUST_MODEL_TYPE__VENDOR = 5;
+
+ /**
+ * The number of structural features of the '<em>Stardust Model Type</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int STARDUST_MODEL_TYPE_FEATURE_COUNT = 6;
+
+ /**
+ * The meta object id for the '{@link org.eclipse.stardust.model.bpmn2.sdbpmn.impl.StardustSeqenceFlowTypeImpl <em>Stardust Seqence Flow Type</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.stardust.model.bpmn2.sdbpmn.impl.StardustSeqenceFlowTypeImpl
+ * @see org.eclipse.stardust.model.bpmn2.sdbpmn.impl.SdbpmnPackageImpl#getStardustSeqenceFlowType()
+ * @generated
+ */
+ int STARDUST_SEQENCE_FLOW_TYPE = 4;
+
+ /**
+ * The feature id for the '<em><b>Fork On Traversal</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int STARDUST_SEQENCE_FLOW_TYPE__FORK_ON_TRAVERSAL = 0;
+
+ /**
+ * The number of structural features of the '<em>Stardust Seqence Flow Type</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int STARDUST_SEQENCE_FLOW_TYPE_FEATURE_COUNT = 1;
+
+ /**
+ * The meta object id for the '{@link org.eclipse.stardust.model.bpmn2.sdbpmn.impl.TStardustCommonImpl <em>TStardust Common</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.stardust.model.bpmn2.sdbpmn.impl.TStardustCommonImpl
+ * @see org.eclipse.stardust.model.bpmn2.sdbpmn.impl.SdbpmnPackageImpl#getTStardustCommon()
+ * @generated
+ */
+ int TSTARDUST_COMMON = 11;
+
+ /**
+ * The feature id for the '<em><b>Element Oid</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int TSTARDUST_COMMON__ELEMENT_OID = 0;
+
+ /**
+ * The number of structural features of the '<em>TStardust Common</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int TSTARDUST_COMMON_FEATURE_COUNT = 1;
+
+ /**
+ * The meta object id for the '{@link org.eclipse.stardust.model.bpmn2.sdbpmn.impl.TStardustActivityImpl <em>TStardust Activity</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.stardust.model.bpmn2.sdbpmn.impl.TStardustActivityImpl
+ * @see org.eclipse.stardust.model.bpmn2.sdbpmn.impl.SdbpmnPackageImpl#getTStardustActivity()
+ * @generated
+ */
+ int TSTARDUST_ACTIVITY = 10;
+
+ /**
+ * The feature id for the '<em><b>Element Oid</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int TSTARDUST_ACTIVITY__ELEMENT_OID = TSTARDUST_COMMON__ELEMENT_OID;
+
+ /**
+ * The feature id for the '<em><b>Event Handler</b></em>' containment reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int TSTARDUST_ACTIVITY__EVENT_HANDLER = TSTARDUST_COMMON_FEATURE_COUNT + 0;
+
+ /**
+ * The feature id for the '<em><b>Data Mapping</b></em>' containment reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int TSTARDUST_ACTIVITY__DATA_MAPPING = TSTARDUST_COMMON_FEATURE_COUNT + 1;
+
+ /**
+ * The feature id for the '<em><b>Hibernate On Creation</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int TSTARDUST_ACTIVITY__HIBERNATE_ON_CREATION = TSTARDUST_COMMON_FEATURE_COUNT + 2;
+
+ /**
+ * The number of structural features of the '<em>TStardust Activity</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int TSTARDUST_ACTIVITY_FEATURE_COUNT = TSTARDUST_COMMON_FEATURE_COUNT + 3;
+
+ /**
+ * The meta object id for the '{@link org.eclipse.stardust.model.bpmn2.sdbpmn.impl.StardustServiceTaskTypeImpl <em>Stardust Service Task Type</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.stardust.model.bpmn2.sdbpmn.impl.StardustServiceTaskTypeImpl
+ * @see org.eclipse.stardust.model.bpmn2.sdbpmn.impl.SdbpmnPackageImpl#getStardustServiceTaskType()
+ * @generated
+ */
+ int STARDUST_SERVICE_TASK_TYPE = 5;
+
+ /**
+ * The feature id for the '<em><b>Element Oid</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int STARDUST_SERVICE_TASK_TYPE__ELEMENT_OID = TSTARDUST_ACTIVITY__ELEMENT_OID;
+
+ /**
+ * The feature id for the '<em><b>Event Handler</b></em>' containment reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int STARDUST_SERVICE_TASK_TYPE__EVENT_HANDLER = TSTARDUST_ACTIVITY__EVENT_HANDLER;
+
+ /**
+ * The feature id for the '<em><b>Data Mapping</b></em>' containment reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int STARDUST_SERVICE_TASK_TYPE__DATA_MAPPING = TSTARDUST_ACTIVITY__DATA_MAPPING;
+
+ /**
+ * The feature id for the '<em><b>Hibernate On Creation</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int STARDUST_SERVICE_TASK_TYPE__HIBERNATE_ON_CREATION = TSTARDUST_ACTIVITY__HIBERNATE_ON_CREATION;
+
+ /**
+ * The feature id for the '<em><b>Application</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int STARDUST_SERVICE_TASK_TYPE__APPLICATION = TSTARDUST_ACTIVITY_FEATURE_COUNT + 0;
+
+ /**
+ * The number of structural features of the '<em>Stardust Service Task Type</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int STARDUST_SERVICE_TASK_TYPE_FEATURE_COUNT = TSTARDUST_ACTIVITY_FEATURE_COUNT + 1;
+
+ /**
+ * The meta object id for the '{@link org.eclipse.stardust.model.bpmn2.sdbpmn.impl.StardustStartEventTypeImpl <em>Stardust Start Event Type</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.stardust.model.bpmn2.sdbpmn.impl.StardustStartEventTypeImpl
+ * @see org.eclipse.stardust.model.bpmn2.sdbpmn.impl.SdbpmnPackageImpl#getStardustStartEventType()
+ * @generated
+ */
+ int STARDUST_START_EVENT_TYPE = 6;
+
+ /**
+ * The feature id for the '<em><b>Stardust Attributes</b></em>' containment reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int STARDUST_START_EVENT_TYPE__STARDUST_ATTRIBUTES = 0;
+
+ /**
+ * The number of structural features of the '<em>Stardust Start Event Type</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int STARDUST_START_EVENT_TYPE_FEATURE_COUNT = 1;
+
+ /**
+ * The meta object id for the '{@link org.eclipse.stardust.model.bpmn2.sdbpmn.impl.StardustSubprocessTypeImpl <em>Stardust Subprocess Type</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.stardust.model.bpmn2.sdbpmn.impl.StardustSubprocessTypeImpl
+ * @see org.eclipse.stardust.model.bpmn2.sdbpmn.impl.SdbpmnPackageImpl#getStardustSubprocessType()
+ * @generated
+ */
+ int STARDUST_SUBPROCESS_TYPE = 7;
+
+ /**
+ * The feature id for the '<em><b>Element Oid</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int STARDUST_SUBPROCESS_TYPE__ELEMENT_OID = TSTARDUST_ACTIVITY__ELEMENT_OID;
+
+ /**
+ * The feature id for the '<em><b>Event Handler</b></em>' containment reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int STARDUST_SUBPROCESS_TYPE__EVENT_HANDLER = TSTARDUST_ACTIVITY__EVENT_HANDLER;
+
+ /**
+ * The feature id for the '<em><b>Data Mapping</b></em>' containment reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int STARDUST_SUBPROCESS_TYPE__DATA_MAPPING = TSTARDUST_ACTIVITY__DATA_MAPPING;
+
+ /**
+ * The feature id for the '<em><b>Hibernate On Creation</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int STARDUST_SUBPROCESS_TYPE__HIBERNATE_ON_CREATION = TSTARDUST_ACTIVITY__HIBERNATE_ON_CREATION;
+
+ /**
+ * The feature id for the '<em><b>Implementation Process</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int STARDUST_SUBPROCESS_TYPE__IMPLEMENTATION_PROCESS = TSTARDUST_ACTIVITY_FEATURE_COUNT + 0;
+
+ /**
+ * The number of structural features of the '<em>Stardust Subprocess Type</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int STARDUST_SUBPROCESS_TYPE_FEATURE_COUNT = TSTARDUST_ACTIVITY_FEATURE_COUNT + 1;
+
+ /**
+ * The meta object id for the '{@link org.eclipse.stardust.model.bpmn2.sdbpmn.impl.StardustTimerStartEventTypeImpl <em>Stardust Timer Start Event Type</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.stardust.model.bpmn2.sdbpmn.impl.StardustTimerStartEventTypeImpl
+ * @see org.eclipse.stardust.model.bpmn2.sdbpmn.impl.SdbpmnPackageImpl#getStardustTimerStartEventType()
+ * @generated
+ */
+ int STARDUST_TIMER_START_EVENT_TYPE = 8;
+
+ /**
+ * The feature id for the '<em><b>Stardust Attributes</b></em>' containment reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int STARDUST_TIMER_START_EVENT_TYPE__STARDUST_ATTRIBUTES = 0;
+
+ /**
+ * The number of structural features of the '<em>Stardust Timer Start Event Type</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int STARDUST_TIMER_START_EVENT_TYPE_FEATURE_COUNT = 1;
+
+ /**
+ * The meta object id for the '{@link org.eclipse.stardust.model.bpmn2.sdbpmn.impl.StardustUserTaskTypeImpl <em>Stardust User Task Type</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.stardust.model.bpmn2.sdbpmn.impl.StardustUserTaskTypeImpl
+ * @see org.eclipse.stardust.model.bpmn2.sdbpmn.impl.SdbpmnPackageImpl#getStardustUserTaskType()
+ * @generated
+ */
+ int STARDUST_USER_TASK_TYPE = 9;
+
+ /**
+ * The feature id for the '<em><b>Element Oid</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int STARDUST_USER_TASK_TYPE__ELEMENT_OID = TSTARDUST_ACTIVITY__ELEMENT_OID;
+
+ /**
+ * The feature id for the '<em><b>Event Handler</b></em>' containment reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int STARDUST_USER_TASK_TYPE__EVENT_HANDLER = TSTARDUST_ACTIVITY__EVENT_HANDLER;
+
+ /**
+ * The feature id for the '<em><b>Data Mapping</b></em>' containment reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int STARDUST_USER_TASK_TYPE__DATA_MAPPING = TSTARDUST_ACTIVITY__DATA_MAPPING;
+
+ /**
+ * The feature id for the '<em><b>Hibernate On Creation</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int STARDUST_USER_TASK_TYPE__HIBERNATE_ON_CREATION = TSTARDUST_ACTIVITY__HIBERNATE_ON_CREATION;
+
+ /**
+ * The feature id for the '<em><b>Allows Abort By Performer</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int STARDUST_USER_TASK_TYPE__ALLOWS_ABORT_BY_PERFORMER = TSTARDUST_ACTIVITY_FEATURE_COUNT + 0;
+
+ /**
+ * The number of structural features of the '<em>Stardust User Task Type</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int STARDUST_USER_TASK_TYPE_FEATURE_COUNT = TSTARDUST_ACTIVITY_FEATURE_COUNT + 1;
+
+
+ /**
+ * Returns the meta object for class '{@link org.eclipse.stardust.model.bpmn2.sdbpmn.DocumentRoot <em>Document Root</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for class '<em>Document Root</em>'.
+ * @see org.eclipse.stardust.model.bpmn2.sdbpmn.DocumentRoot
+ * @generated
+ */
+ EClass getDocumentRoot();
+
+ /**
+ * Returns the meta object for the attribute list '{@link org.eclipse.stardust.model.bpmn2.sdbpmn.DocumentRoot#getMixed <em>Mixed</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the attribute list '<em>Mixed</em>'.
+ * @see org.eclipse.stardust.model.bpmn2.sdbpmn.DocumentRoot#getMixed()
+ * @see #getDocumentRoot()
+ * @generated
+ */
+ EAttribute getDocumentRoot_Mixed();
+
+ /**
+ * Returns the meta object for the map '{@link org.eclipse.stardust.model.bpmn2.sdbpmn.DocumentRoot#getXMLNSPrefixMap <em>XMLNS Prefix Map</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the map '<em>XMLNS Prefix Map</em>'.
+ * @see org.eclipse.stardust.model.bpmn2.sdbpmn.DocumentRoot#getXMLNSPrefixMap()
+ * @see #getDocumentRoot()
+ * @generated
+ */
+ EReference getDocumentRoot_XMLNSPrefixMap();
+
+ /**
+ * Returns the meta object for the map '{@link org.eclipse.stardust.model.bpmn2.sdbpmn.DocumentRoot#getXSISchemaLocation <em>XSI Schema Location</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the map '<em>XSI Schema Location</em>'.
+ * @see org.eclipse.stardust.model.bpmn2.sdbpmn.DocumentRoot#getXSISchemaLocation()
+ * @see #getDocumentRoot()
+ * @generated
+ */
+ EReference getDocumentRoot_XSISchemaLocation();
+
+ /**
+ * Returns the meta object for the containment reference '{@link org.eclipse.stardust.model.bpmn2.sdbpmn.DocumentRoot#getStardustActivity <em>Stardust Activity</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the containment reference '<em>Stardust Activity</em>'.
+ * @see org.eclipse.stardust.model.bpmn2.sdbpmn.DocumentRoot#getStardustActivity()
+ * @see #getDocumentRoot()
+ * @generated
+ */
+ EReference getDocumentRoot_StardustActivity();
+
+ /**
+ * Returns the meta object for the containment reference '{@link org.eclipse.stardust.model.bpmn2.sdbpmn.DocumentRoot#getStardustAttributes <em>Stardust Attributes</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the containment reference '<em>Stardust Attributes</em>'.
+ * @see org.eclipse.stardust.model.bpmn2.sdbpmn.DocumentRoot#getStardustAttributes()
+ * @see #getDocumentRoot()
+ * @generated
+ */
+ EReference getDocumentRoot_StardustAttributes();
+
+ /**
+ * Returns the meta object for the containment reference '{@link org.eclipse.stardust.model.bpmn2.sdbpmn.DocumentRoot#getStardustCommon <em>Stardust Common</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the containment reference '<em>Stardust Common</em>'.
+ * @see org.eclipse.stardust.model.bpmn2.sdbpmn.DocumentRoot#getStardustCommon()
+ * @see #getDocumentRoot()
+ * @generated
+ */
+ EReference getDocumentRoot_StardustCommon();
+
+ /**
+ * Returns the meta object for the containment reference '{@link org.eclipse.stardust.model.bpmn2.sdbpmn.DocumentRoot#getStardustMessageStartEvent <em>Stardust Message Start Event</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the containment reference '<em>Stardust Message Start Event</em>'.
+ * @see org.eclipse.stardust.model.bpmn2.sdbpmn.DocumentRoot#getStardustMessageStartEvent()
+ * @see #getDocumentRoot()
+ * @generated
+ */
+ EReference getDocumentRoot_StardustMessageStartEvent();
+
+ /**
+ * Returns the meta object for the containment reference '{@link org.eclipse.stardust.model.bpmn2.sdbpmn.DocumentRoot#getStardustModel <em>Stardust Model</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the containment reference '<em>Stardust Model</em>'.
+ * @see org.eclipse.stardust.model.bpmn2.sdbpmn.DocumentRoot#getStardustModel()
+ * @see #getDocumentRoot()
+ * @generated
+ */
+ EReference getDocumentRoot_StardustModel();
+
+ /**
+ * Returns the meta object for the containment reference '{@link org.eclipse.stardust.model.bpmn2.sdbpmn.DocumentRoot#getStardustSeqenceFlow <em>Stardust Seqence Flow</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the containment reference '<em>Stardust Seqence Flow</em>'.
+ * @see org.eclipse.stardust.model.bpmn2.sdbpmn.DocumentRoot#getStardustSeqenceFlow()
+ * @see #getDocumentRoot()
+ * @generated
+ */
+ EReference getDocumentRoot_StardustSeqenceFlow();
+
+ /**
+ * Returns the meta object for the containment reference '{@link org.eclipse.stardust.model.bpmn2.sdbpmn.DocumentRoot#getStardustServiceTask <em>Stardust Service Task</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the containment reference '<em>Stardust Service Task</em>'.
+ * @see org.eclipse.stardust.model.bpmn2.sdbpmn.DocumentRoot#getStardustServiceTask()
+ * @see #getDocumentRoot()
+ * @generated
+ */
+ EReference getDocumentRoot_StardustServiceTask();
+
+ /**
+ * Returns the meta object for the containment reference '{@link org.eclipse.stardust.model.bpmn2.sdbpmn.DocumentRoot#getStardustStartEvent <em>Stardust Start Event</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the containment reference '<em>Stardust Start Event</em>'.
+ * @see org.eclipse.stardust.model.bpmn2.sdbpmn.DocumentRoot#getStardustStartEvent()
+ * @see #getDocumentRoot()
+ * @generated
+ */
+ EReference getDocumentRoot_StardustStartEvent();
+
+ /**
+ * Returns the meta object for the containment reference '{@link org.eclipse.stardust.model.bpmn2.sdbpmn.DocumentRoot#getStardustSubprocess <em>Stardust Subprocess</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the containment reference '<em>Stardust Subprocess</em>'.
+ * @see org.eclipse.stardust.model.bpmn2.sdbpmn.DocumentRoot#getStardustSubprocess()
+ * @see #getDocumentRoot()
+ * @generated
+ */
+ EReference getDocumentRoot_StardustSubprocess();
+
+ /**
+ * Returns the meta object for the containment reference '{@link org.eclipse.stardust.model.bpmn2.sdbpmn.DocumentRoot#getStardustTimerStartEvent <em>Stardust Timer Start Event</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the containment reference '<em>Stardust Timer Start Event</em>'.
+ * @see org.eclipse.stardust.model.bpmn2.sdbpmn.DocumentRoot#getStardustTimerStartEvent()
+ * @see #getDocumentRoot()
+ * @generated
+ */
+ EReference getDocumentRoot_StardustTimerStartEvent();
+
+ /**
+ * Returns the meta object for the containment reference '{@link org.eclipse.stardust.model.bpmn2.sdbpmn.DocumentRoot#getStardustUserTask <em>Stardust User Task</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the containment reference '<em>Stardust User Task</em>'.
+ * @see org.eclipse.stardust.model.bpmn2.sdbpmn.DocumentRoot#getStardustUserTask()
+ * @see #getDocumentRoot()
+ * @generated
+ */
+ EReference getDocumentRoot_StardustUserTask();
+
+ /**
+ * Returns the meta object for the attribute '{@link org.eclipse.stardust.model.bpmn2.sdbpmn.DocumentRoot#getAuthor <em>Author</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the attribute '<em>Author</em>'.
+ * @see org.eclipse.stardust.model.bpmn2.sdbpmn.DocumentRoot#getAuthor()
+ * @see #getDocumentRoot()
+ * @generated
+ */
+ EAttribute getDocumentRoot_Author();
+
+ /**
+ * Returns the meta object for the attribute '{@link org.eclipse.stardust.model.bpmn2.sdbpmn.DocumentRoot#getCarnotVersion <em>Carnot Version</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the attribute '<em>Carnot Version</em>'.
+ * @see org.eclipse.stardust.model.bpmn2.sdbpmn.DocumentRoot#getCarnotVersion()
+ * @see #getDocumentRoot()
+ * @generated
+ */
+ EAttribute getDocumentRoot_CarnotVersion();
+
+ /**
+ * Returns the meta object for the attribute '{@link org.eclipse.stardust.model.bpmn2.sdbpmn.DocumentRoot#getCreated <em>Created</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the attribute '<em>Created</em>'.
+ * @see org.eclipse.stardust.model.bpmn2.sdbpmn.DocumentRoot#getCreated()
+ * @see #getDocumentRoot()
+ * @generated
+ */
+ EAttribute getDocumentRoot_Created();
+
+ /**
+ * Returns the meta object for the attribute '{@link org.eclipse.stardust.model.bpmn2.sdbpmn.DocumentRoot#getModelOID <em>Model OID</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the attribute '<em>Model OID</em>'.
+ * @see org.eclipse.stardust.model.bpmn2.sdbpmn.DocumentRoot#getModelOID()
+ * @see #getDocumentRoot()
+ * @generated
+ */
+ EAttribute getDocumentRoot_ModelOID();
+
+ /**
+ * Returns the meta object for the attribute '{@link org.eclipse.stardust.model.bpmn2.sdbpmn.DocumentRoot#getOid <em>Oid</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the attribute '<em>Oid</em>'.
+ * @see org.eclipse.stardust.model.bpmn2.sdbpmn.DocumentRoot#getOid()
+ * @see #getDocumentRoot()
+ * @generated
+ */
+ EAttribute getDocumentRoot_Oid();
+
+ /**
+ * Returns the meta object for the attribute '{@link org.eclipse.stardust.model.bpmn2.sdbpmn.DocumentRoot#getVendor <em>Vendor</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the attribute '<em>Vendor</em>'.
+ * @see org.eclipse.stardust.model.bpmn2.sdbpmn.DocumentRoot#getVendor()
+ * @see #getDocumentRoot()
+ * @generated
+ */
+ EAttribute getDocumentRoot_Vendor();
+
+ /**
+ * Returns the meta object for class '{@link org.eclipse.stardust.model.bpmn2.sdbpmn.StardustAttributesType <em>Stardust Attributes Type</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for class '<em>Stardust Attributes Type</em>'.
+ * @see org.eclipse.stardust.model.bpmn2.sdbpmn.StardustAttributesType
+ * @generated
+ */
+ EClass getStardustAttributesType();
+
+ /**
+ * Returns the meta object for the containment reference list '{@link org.eclipse.stardust.model.bpmn2.sdbpmn.StardustAttributesType#getAttributeType <em>Attribute Type</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the containment reference list '<em>Attribute Type</em>'.
+ * @see org.eclipse.stardust.model.bpmn2.sdbpmn.StardustAttributesType#getAttributeType()
+ * @see #getStardustAttributesType()
+ * @generated
+ */
+ EReference getStardustAttributesType_AttributeType();
+
+ /**
+ * Returns the meta object for class '{@link org.eclipse.stardust.model.bpmn2.sdbpmn.StardustMessageStartEventType <em>Stardust Message Start Event Type</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for class '<em>Stardust Message Start Event Type</em>'.
+ * @see org.eclipse.stardust.model.bpmn2.sdbpmn.StardustMessageStartEventType
+ * @generated
+ */
+ EClass getStardustMessageStartEventType();
+
+ /**
+ * Returns the meta object for the containment reference '{@link org.eclipse.stardust.model.bpmn2.sdbpmn.StardustMessageStartEventType#getStardustAttributes <em>Stardust Attributes</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the containment reference '<em>Stardust Attributes</em>'.
+ * @see org.eclipse.stardust.model.bpmn2.sdbpmn.StardustMessageStartEventType#getStardustAttributes()
+ * @see #getStardustMessageStartEventType()
+ * @generated
+ */
+ EReference getStardustMessageStartEventType_StardustAttributes();
+
+ /**
+ * Returns the meta object for the containment reference list '{@link org.eclipse.stardust.model.bpmn2.sdbpmn.StardustMessageStartEventType#getAccessPoint <em>Access Point</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the containment reference list '<em>Access Point</em>'.
+ * @see org.eclipse.stardust.model.bpmn2.sdbpmn.StardustMessageStartEventType#getAccessPoint()
+ * @see #getStardustMessageStartEventType()
+ * @generated
+ */
+ EReference getStardustMessageStartEventType_AccessPoint();
+
+ /**
+ * Returns the meta object for the containment reference list '{@link org.eclipse.stardust.model.bpmn2.sdbpmn.StardustMessageStartEventType#getParameterMapping <em>Parameter Mapping</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the containment reference list '<em>Parameter Mapping</em>'.
+ * @see org.eclipse.stardust.model.bpmn2.sdbpmn.StardustMessageStartEventType#getParameterMapping()
+ * @see #getStardustMessageStartEventType()
+ * @generated
+ */
+ EReference getStardustMessageStartEventType_ParameterMapping();
+
+ /**
+ * Returns the meta object for the attribute '{@link org.eclipse.stardust.model.bpmn2.sdbpmn.StardustMessageStartEventType#getType <em>Type</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the attribute '<em>Type</em>'.
+ * @see org.eclipse.stardust.model.bpmn2.sdbpmn.StardustMessageStartEventType#getType()
+ * @see #getStardustMessageStartEventType()
+ * @generated
+ */
+ EAttribute getStardustMessageStartEventType_Type();
+
+ /**
+ * Returns the meta object for class '{@link org.eclipse.stardust.model.bpmn2.sdbpmn.StardustModelType <em>Stardust Model Type</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for class '<em>Stardust Model Type</em>'.
+ * @see org.eclipse.stardust.model.bpmn2.sdbpmn.StardustModelType
+ * @generated
+ */
+ EClass getStardustModelType();
+
+ /**
+ * Returns the meta object for the attribute '{@link org.eclipse.stardust.model.bpmn2.sdbpmn.StardustModelType#getAuthor <em>Author</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the attribute '<em>Author</em>'.
+ * @see org.eclipse.stardust.model.bpmn2.sdbpmn.StardustModelType#getAuthor()
+ * @see #getStardustModelType()
+ * @generated
+ */
+ EAttribute getStardustModelType_Author();
+
+ /**
+ * Returns the meta object for the attribute '{@link org.eclipse.stardust.model.bpmn2.sdbpmn.StardustModelType#getCarnotVersion <em>Carnot Version</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the attribute '<em>Carnot Version</em>'.
+ * @see org.eclipse.stardust.model.bpmn2.sdbpmn.StardustModelType#getCarnotVersion()
+ * @see #getStardustModelType()
+ * @generated
+ */
+ EAttribute getStardustModelType_CarnotVersion();
+
+ /**
+ * Returns the meta object for the attribute '{@link org.eclipse.stardust.model.bpmn2.sdbpmn.StardustModelType#getCreated <em>Created</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the attribute '<em>Created</em>'.
+ * @see org.eclipse.stardust.model.bpmn2.sdbpmn.StardustModelType#getCreated()
+ * @see #getStardustModelType()
+ * @generated
+ */
+ EAttribute getStardustModelType_Created();
+
+ /**
+ * Returns the meta object for the attribute '{@link org.eclipse.stardust.model.bpmn2.sdbpmn.StardustModelType#getModelOID <em>Model OID</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the attribute '<em>Model OID</em>'.
+ * @see org.eclipse.stardust.model.bpmn2.sdbpmn.StardustModelType#getModelOID()
+ * @see #getStardustModelType()
+ * @generated
+ */
+ EAttribute getStardustModelType_ModelOID();
+
+ /**
+ * Returns the meta object for the attribute '{@link org.eclipse.stardust.model.bpmn2.sdbpmn.StardustModelType#getOid <em>Oid</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the attribute '<em>Oid</em>'.
+ * @see org.eclipse.stardust.model.bpmn2.sdbpmn.StardustModelType#getOid()
+ * @see #getStardustModelType()
+ * @generated
+ */
+ EAttribute getStardustModelType_Oid();
+
+ /**
+ * Returns the meta object for the attribute '{@link org.eclipse.stardust.model.bpmn2.sdbpmn.StardustModelType#getVendor <em>Vendor</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the attribute '<em>Vendor</em>'.
+ * @see org.eclipse.stardust.model.bpmn2.sdbpmn.StardustModelType#getVendor()
+ * @see #getStardustModelType()
+ * @generated
+ */
+ EAttribute getStardustModelType_Vendor();
+
+ /**
+ * Returns the meta object for class '{@link org.eclipse.stardust.model.bpmn2.sdbpmn.StardustSeqenceFlowType <em>Stardust Seqence Flow Type</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for class '<em>Stardust Seqence Flow Type</em>'.
+ * @see org.eclipse.stardust.model.bpmn2.sdbpmn.StardustSeqenceFlowType
+ * @generated
+ */
+ EClass getStardustSeqenceFlowType();
+
+ /**
+ * Returns the meta object for the attribute '{@link org.eclipse.stardust.model.bpmn2.sdbpmn.StardustSeqenceFlowType#isForkOnTraversal <em>Fork On Traversal</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the attribute '<em>Fork On Traversal</em>'.
+ * @see org.eclipse.stardust.model.bpmn2.sdbpmn.StardustSeqenceFlowType#isForkOnTraversal()
+ * @see #getStardustSeqenceFlowType()
+ * @generated
+ */
+ EAttribute getStardustSeqenceFlowType_ForkOnTraversal();
+
+ /**
+ * Returns the meta object for class '{@link org.eclipse.stardust.model.bpmn2.sdbpmn.StardustServiceTaskType <em>Stardust Service Task Type</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for class '<em>Stardust Service Task Type</em>'.
+ * @see org.eclipse.stardust.model.bpmn2.sdbpmn.StardustServiceTaskType
+ * @generated
+ */
+ EClass getStardustServiceTaskType();
+
+ /**
+ * Returns the meta object for the attribute '{@link org.eclipse.stardust.model.bpmn2.sdbpmn.StardustServiceTaskType#getApplication <em>Application</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the attribute '<em>Application</em>'.
+ * @see org.eclipse.stardust.model.bpmn2.sdbpmn.StardustServiceTaskType#getApplication()
+ * @see #getStardustServiceTaskType()
+ * @generated
+ */
+ EAttribute getStardustServiceTaskType_Application();
+
+ /**
+ * Returns the meta object for class '{@link org.eclipse.stardust.model.bpmn2.sdbpmn.StardustStartEventType <em>Stardust Start Event Type</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for class '<em>Stardust Start Event Type</em>'.
+ * @see org.eclipse.stardust.model.bpmn2.sdbpmn.StardustStartEventType
+ * @generated
+ */
+ EClass getStardustStartEventType();
+
+ /**
+ * Returns the meta object for the containment reference '{@link org.eclipse.stardust.model.bpmn2.sdbpmn.StardustStartEventType#getStardustAttributes <em>Stardust Attributes</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the containment reference '<em>Stardust Attributes</em>'.
+ * @see org.eclipse.stardust.model.bpmn2.sdbpmn.StardustStartEventType#getStardustAttributes()
+ * @see #getStardustStartEventType()
+ * @generated
+ */
+ EReference getStardustStartEventType_StardustAttributes();
+
+ /**
+ * Returns the meta object for class '{@link org.eclipse.stardust.model.bpmn2.sdbpmn.StardustSubprocessType <em>Stardust Subprocess Type</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for class '<em>Stardust Subprocess Type</em>'.
+ * @see org.eclipse.stardust.model.bpmn2.sdbpmn.StardustSubprocessType
+ * @generated
+ */
+ EClass getStardustSubprocessType();
+
+ /**
+ * Returns the meta object for the attribute '{@link org.eclipse.stardust.model.bpmn2.sdbpmn.StardustSubprocessType#getImplementationProcess <em>Implementation Process</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the attribute '<em>Implementation Process</em>'.
+ * @see org.eclipse.stardust.model.bpmn2.sdbpmn.StardustSubprocessType#getImplementationProcess()
+ * @see #getStardustSubprocessType()
+ * @generated
+ */
+ EAttribute getStardustSubprocessType_ImplementationProcess();
+
+ /**
+ * Returns the meta object for class '{@link org.eclipse.stardust.model.bpmn2.sdbpmn.StardustTimerStartEventType <em>Stardust Timer Start Event Type</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for class '<em>Stardust Timer Start Event Type</em>'.
+ * @see org.eclipse.stardust.model.bpmn2.sdbpmn.StardustTimerStartEventType
+ * @generated
+ */
+ EClass getStardustTimerStartEventType();
+
+ /**
+ * Returns the meta object for the containment reference '{@link org.eclipse.stardust.model.bpmn2.sdbpmn.StardustTimerStartEventType#getStardustAttributes <em>Stardust Attributes</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the containment reference '<em>Stardust Attributes</em>'.
+ * @see org.eclipse.stardust.model.bpmn2.sdbpmn.StardustTimerStartEventType#getStardustAttributes()
+ * @see #getStardustTimerStartEventType()
+ * @generated
+ */
+ EReference getStardustTimerStartEventType_StardustAttributes();
+
+ /**
+ * Returns the meta object for class '{@link org.eclipse.stardust.model.bpmn2.sdbpmn.StardustUserTaskType <em>Stardust User Task Type</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for class '<em>Stardust User Task Type</em>'.
+ * @see org.eclipse.stardust.model.bpmn2.sdbpmn.StardustUserTaskType
+ * @generated
+ */
+ EClass getStardustUserTaskType();
+
+ /**
+ * Returns the meta object for the attribute '{@link org.eclipse.stardust.model.bpmn2.sdbpmn.StardustUserTaskType#isAllowsAbortByPerformer <em>Allows Abort By Performer</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the attribute '<em>Allows Abort By Performer</em>'.
+ * @see org.eclipse.stardust.model.bpmn2.sdbpmn.StardustUserTaskType#isAllowsAbortByPerformer()
+ * @see #getStardustUserTaskType()
+ * @generated
+ */
+ EAttribute getStardustUserTaskType_AllowsAbortByPerformer();
+
+ /**
+ * Returns the meta object for class '{@link org.eclipse.stardust.model.bpmn2.sdbpmn.TStardustActivity <em>TStardust Activity</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for class '<em>TStardust Activity</em>'.
+ * @see org.eclipse.stardust.model.bpmn2.sdbpmn.TStardustActivity
+ * @generated
+ */
+ EClass getTStardustActivity();
+
+ /**
+ * Returns the meta object for the containment reference list '{@link org.eclipse.stardust.model.bpmn2.sdbpmn.TStardustActivity#getEventHandler <em>Event Handler</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the containment reference list '<em>Event Handler</em>'.
+ * @see org.eclipse.stardust.model.bpmn2.sdbpmn.TStardustActivity#getEventHandler()
+ * @see #getTStardustActivity()
+ * @generated
+ */
+ EReference getTStardustActivity_EventHandler();
+
+ /**
+ * Returns the meta object for the containment reference list '{@link org.eclipse.stardust.model.bpmn2.sdbpmn.TStardustActivity#getDataMapping <em>Data Mapping</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the containment reference list '<em>Data Mapping</em>'.
+ * @see org.eclipse.stardust.model.bpmn2.sdbpmn.TStardustActivity#getDataMapping()
+ * @see #getTStardustActivity()
+ * @generated
+ */
+ EReference getTStardustActivity_DataMapping();
+
+ /**
+ * Returns the meta object for the attribute '{@link org.eclipse.stardust.model.bpmn2.sdbpmn.TStardustActivity#isHibernateOnCreation <em>Hibernate On Creation</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the attribute '<em>Hibernate On Creation</em>'.
+ * @see org.eclipse.stardust.model.bpmn2.sdbpmn.TStardustActivity#isHibernateOnCreation()
+ * @see #getTStardustActivity()
+ * @generated
+ */
+ EAttribute getTStardustActivity_HibernateOnCreation();
+
+ /**
+ * Returns the meta object for class '{@link org.eclipse.stardust.model.bpmn2.sdbpmn.TStardustCommon <em>TStardust Common</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for class '<em>TStardust Common</em>'.
+ * @see org.eclipse.stardust.model.bpmn2.sdbpmn.TStardustCommon
+ * @generated
+ */
+ EClass getTStardustCommon();
+
+ /**
+ * Returns the meta object for the attribute '{@link org.eclipse.stardust.model.bpmn2.sdbpmn.TStardustCommon#getElementOid <em>Element Oid</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the attribute '<em>Element Oid</em>'.
+ * @see org.eclipse.stardust.model.bpmn2.sdbpmn.TStardustCommon#getElementOid()
+ * @see #getTStardustCommon()
+ * @generated
+ */
+ EAttribute getTStardustCommon_ElementOid();
+
+ /**
+ * Returns the factory that creates the instances of the model.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the factory that creates the instances of the model.
+ * @generated
+ */
+ SdbpmnFactory getSdbpmnFactory();
+
+ /**
+ * <!-- begin-user-doc -->
+ * Defines literals for the meta objects that represent
+ * <ul>
+ * <li>each class,</li>
+ * <li>each feature of each class,</li>
+ * <li>each enum,</li>
+ * <li>and each data type</li>
+ * </ul>
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ interface Literals {
+ /**
+ * The meta object literal for the '{@link org.eclipse.stardust.model.bpmn2.sdbpmn.impl.DocumentRootImpl <em>Document Root</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.stardust.model.bpmn2.sdbpmn.impl.DocumentRootImpl
+ * @see org.eclipse.stardust.model.bpmn2.sdbpmn.impl.SdbpmnPackageImpl#getDocumentRoot()
+ * @generated
+ */
+ EClass DOCUMENT_ROOT = eINSTANCE.getDocumentRoot();
+
+ /**
+ * The meta object literal for the '<em><b>Mixed</b></em>' attribute list feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EAttribute DOCUMENT_ROOT__MIXED = eINSTANCE.getDocumentRoot_Mixed();
+
+ /**
+ * The meta object literal for the '<em><b>XMLNS Prefix Map</b></em>' map feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EReference DOCUMENT_ROOT__XMLNS_PREFIX_MAP = eINSTANCE.getDocumentRoot_XMLNSPrefixMap();
+
+ /**
+ * The meta object literal for the '<em><b>XSI Schema Location</b></em>' map feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EReference DOCUMENT_ROOT__XSI_SCHEMA_LOCATION = eINSTANCE.getDocumentRoot_XSISchemaLocation();
+
+ /**
+ * The meta object literal for the '<em><b>Stardust Activity</b></em>' containment reference feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EReference DOCUMENT_ROOT__STARDUST_ACTIVITY = eINSTANCE.getDocumentRoot_StardustActivity();
+
+ /**
+ * The meta object literal for the '<em><b>Stardust Attributes</b></em>' containment reference feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EReference DOCUMENT_ROOT__STARDUST_ATTRIBUTES = eINSTANCE.getDocumentRoot_StardustAttributes();
+
+ /**
+ * The meta object literal for the '<em><b>Stardust Common</b></em>' containment reference feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EReference DOCUMENT_ROOT__STARDUST_COMMON = eINSTANCE.getDocumentRoot_StardustCommon();
+
+ /**
+ * The meta object literal for the '<em><b>Stardust Message Start Event</b></em>' containment reference feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EReference DOCUMENT_ROOT__STARDUST_MESSAGE_START_EVENT = eINSTANCE.getDocumentRoot_StardustMessageStartEvent();
+
+ /**
+ * The meta object literal for the '<em><b>Stardust Model</b></em>' containment reference feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EReference DOCUMENT_ROOT__STARDUST_MODEL = eINSTANCE.getDocumentRoot_StardustModel();
+
+ /**
+ * The meta object literal for the '<em><b>Stardust Seqence Flow</b></em>' containment reference feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EReference DOCUMENT_ROOT__STARDUST_SEQENCE_FLOW = eINSTANCE.getDocumentRoot_StardustSeqenceFlow();
+
+ /**
+ * The meta object literal for the '<em><b>Stardust Service Task</b></em>' containment reference feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EReference DOCUMENT_ROOT__STARDUST_SERVICE_TASK = eINSTANCE.getDocumentRoot_StardustServiceTask();
+
+ /**
+ * The meta object literal for the '<em><b>Stardust Start Event</b></em>' containment reference feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EReference DOCUMENT_ROOT__STARDUST_START_EVENT = eINSTANCE.getDocumentRoot_StardustStartEvent();
+
+ /**
+ * The meta object literal for the '<em><b>Stardust Subprocess</b></em>' containment reference feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EReference DOCUMENT_ROOT__STARDUST_SUBPROCESS = eINSTANCE.getDocumentRoot_StardustSubprocess();
+
+ /**
+ * The meta object literal for the '<em><b>Stardust Timer Start Event</b></em>' containment reference feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EReference DOCUMENT_ROOT__STARDUST_TIMER_START_EVENT = eINSTANCE.getDocumentRoot_StardustTimerStartEvent();
+
+ /**
+ * The meta object literal for the '<em><b>Stardust User Task</b></em>' containment reference feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EReference DOCUMENT_ROOT__STARDUST_USER_TASK = eINSTANCE.getDocumentRoot_StardustUserTask();
+
+ /**
+ * The meta object literal for the '<em><b>Author</b></em>' attribute feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EAttribute DOCUMENT_ROOT__AUTHOR = eINSTANCE.getDocumentRoot_Author();
+
+ /**
+ * The meta object literal for the '<em><b>Carnot Version</b></em>' attribute feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EAttribute DOCUMENT_ROOT__CARNOT_VERSION = eINSTANCE.getDocumentRoot_CarnotVersion();
+
+ /**
+ * The meta object literal for the '<em><b>Created</b></em>' attribute feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EAttribute DOCUMENT_ROOT__CREATED = eINSTANCE.getDocumentRoot_Created();
+
+ /**
+ * The meta object literal for the '<em><b>Model OID</b></em>' attribute feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EAttribute DOCUMENT_ROOT__MODEL_OID = eINSTANCE.getDocumentRoot_ModelOID();
+
+ /**
+ * The meta object literal for the '<em><b>Oid</b></em>' attribute feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EAttribute DOCUMENT_ROOT__OID = eINSTANCE.getDocumentRoot_Oid();
+
+ /**
+ * The meta object literal for the '<em><b>Vendor</b></em>' attribute feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EAttribute DOCUMENT_ROOT__VENDOR = eINSTANCE.getDocumentRoot_Vendor();
+
+ /**
+ * The meta object literal for the '{@link org.eclipse.stardust.model.bpmn2.sdbpmn.impl.StardustAttributesTypeImpl <em>Stardust Attributes Type</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.stardust.model.bpmn2.sdbpmn.impl.StardustAttributesTypeImpl
+ * @see org.eclipse.stardust.model.bpmn2.sdbpmn.impl.SdbpmnPackageImpl#getStardustAttributesType()
+ * @generated
+ */
+ EClass STARDUST_ATTRIBUTES_TYPE = eINSTANCE.getStardustAttributesType();
+
+ /**
+ * The meta object literal for the '<em><b>Attribute Type</b></em>' containment reference list feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EReference STARDUST_ATTRIBUTES_TYPE__ATTRIBUTE_TYPE = eINSTANCE.getStardustAttributesType_AttributeType();
+
+ /**
+ * The meta object literal for the '{@link org.eclipse.stardust.model.bpmn2.sdbpmn.impl.StardustMessageStartEventTypeImpl <em>Stardust Message Start Event Type</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.stardust.model.bpmn2.sdbpmn.impl.StardustMessageStartEventTypeImpl
+ * @see org.eclipse.stardust.model.bpmn2.sdbpmn.impl.SdbpmnPackageImpl#getStardustMessageStartEventType()
+ * @generated
+ */
+ EClass STARDUST_MESSAGE_START_EVENT_TYPE = eINSTANCE.getStardustMessageStartEventType();
+
+ /**
+ * The meta object literal for the '<em><b>Stardust Attributes</b></em>' containment reference feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EReference STARDUST_MESSAGE_START_EVENT_TYPE__STARDUST_ATTRIBUTES = eINSTANCE.getStardustMessageStartEventType_StardustAttributes();
+
+ /**
+ * The meta object literal for the '<em><b>Access Point</b></em>' containment reference list feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EReference STARDUST_MESSAGE_START_EVENT_TYPE__ACCESS_POINT = eINSTANCE.getStardustMessageStartEventType_AccessPoint();
+
+ /**
+ * The meta object literal for the '<em><b>Parameter Mapping</b></em>' containment reference list feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EReference STARDUST_MESSAGE_START_EVENT_TYPE__PARAMETER_MAPPING = eINSTANCE.getStardustMessageStartEventType_ParameterMapping();
+
+ /**
+ * The meta object literal for the '<em><b>Type</b></em>' attribute feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EAttribute STARDUST_MESSAGE_START_EVENT_TYPE__TYPE = eINSTANCE.getStardustMessageStartEventType_Type();
+
+ /**
+ * The meta object literal for the '{@link org.eclipse.stardust.model.bpmn2.sdbpmn.impl.StardustModelTypeImpl <em>Stardust Model Type</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.stardust.model.bpmn2.sdbpmn.impl.StardustModelTypeImpl
+ * @see org.eclipse.stardust.model.bpmn2.sdbpmn.impl.SdbpmnPackageImpl#getStardustModelType()
+ * @generated
+ */
+ EClass STARDUST_MODEL_TYPE = eINSTANCE.getStardustModelType();
+
+ /**
+ * The meta object literal for the '<em><b>Author</b></em>' attribute feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EAttribute STARDUST_MODEL_TYPE__AUTHOR = eINSTANCE.getStardustModelType_Author();
+
+ /**
+ * The meta object literal for the '<em><b>Carnot Version</b></em>' attribute feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EAttribute STARDUST_MODEL_TYPE__CARNOT_VERSION = eINSTANCE.getStardustModelType_CarnotVersion();
+
+ /**
+ * The meta object literal for the '<em><b>Created</b></em>' attribute feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EAttribute STARDUST_MODEL_TYPE__CREATED = eINSTANCE.getStardustModelType_Created();
+
+ /**
+ * The meta object literal for the '<em><b>Model OID</b></em>' attribute feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EAttribute STARDUST_MODEL_TYPE__MODEL_OID = eINSTANCE.getStardustModelType_ModelOID();
+
+ /**
+ * The meta object literal for the '<em><b>Oid</b></em>' attribute feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EAttribute STARDUST_MODEL_TYPE__OID = eINSTANCE.getStardustModelType_Oid();
+
+ /**
+ * The meta object literal for the '<em><b>Vendor</b></em>' attribute feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EAttribute STARDUST_MODEL_TYPE__VENDOR = eINSTANCE.getStardustModelType_Vendor();
+
+ /**
+ * The meta object literal for the '{@link org.eclipse.stardust.model.bpmn2.sdbpmn.impl.StardustSeqenceFlowTypeImpl <em>Stardust Seqence Flow Type</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.stardust.model.bpmn2.sdbpmn.impl.StardustSeqenceFlowTypeImpl
+ * @see org.eclipse.stardust.model.bpmn2.sdbpmn.impl.SdbpmnPackageImpl#getStardustSeqenceFlowType()
+ * @generated
+ */
+ EClass STARDUST_SEQENCE_FLOW_TYPE = eINSTANCE.getStardustSeqenceFlowType();
+
+ /**
+ * The meta object literal for the '<em><b>Fork On Traversal</b></em>' attribute feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EAttribute STARDUST_SEQENCE_FLOW_TYPE__FORK_ON_TRAVERSAL = eINSTANCE.getStardustSeqenceFlowType_ForkOnTraversal();
+
+ /**
+ * The meta object literal for the '{@link org.eclipse.stardust.model.bpmn2.sdbpmn.impl.StardustServiceTaskTypeImpl <em>Stardust Service Task Type</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.stardust.model.bpmn2.sdbpmn.impl.StardustServiceTaskTypeImpl
+ * @see org.eclipse.stardust.model.bpmn2.sdbpmn.impl.SdbpmnPackageImpl#getStardustServiceTaskType()
+ * @generated
+ */
+ EClass STARDUST_SERVICE_TASK_TYPE = eINSTANCE.getStardustServiceTaskType();
+
+ /**
+ * The meta object literal for the '<em><b>Application</b></em>' attribute feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EAttribute STARDUST_SERVICE_TASK_TYPE__APPLICATION = eINSTANCE.getStardustServiceTaskType_Application();
+
+ /**
+ * The meta object literal for the '{@link org.eclipse.stardust.model.bpmn2.sdbpmn.impl.StardustStartEventTypeImpl <em>Stardust Start Event Type</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.stardust.model.bpmn2.sdbpmn.impl.StardustStartEventTypeImpl
+ * @see org.eclipse.stardust.model.bpmn2.sdbpmn.impl.SdbpmnPackageImpl#getStardustStartEventType()
+ * @generated
+ */
+ EClass STARDUST_START_EVENT_TYPE = eINSTANCE.getStardustStartEventType();
+
+ /**
+ * The meta object literal for the '<em><b>Stardust Attributes</b></em>' containment reference feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EReference STARDUST_START_EVENT_TYPE__STARDUST_ATTRIBUTES = eINSTANCE.getStardustStartEventType_StardustAttributes();
+
+ /**
+ * The meta object literal for the '{@link org.eclipse.stardust.model.bpmn2.sdbpmn.impl.StardustSubprocessTypeImpl <em>Stardust Subprocess Type</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.stardust.model.bpmn2.sdbpmn.impl.StardustSubprocessTypeImpl
+ * @see org.eclipse.stardust.model.bpmn2.sdbpmn.impl.SdbpmnPackageImpl#getStardustSubprocessType()
+ * @generated
+ */
+ EClass STARDUST_SUBPROCESS_TYPE = eINSTANCE.getStardustSubprocessType();
+
+ /**
+ * The meta object literal for the '<em><b>Implementation Process</b></em>' attribute feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EAttribute STARDUST_SUBPROCESS_TYPE__IMPLEMENTATION_PROCESS = eINSTANCE.getStardustSubprocessType_ImplementationProcess();
+
+ /**
+ * The meta object literal for the '{@link org.eclipse.stardust.model.bpmn2.sdbpmn.impl.StardustTimerStartEventTypeImpl <em>Stardust Timer Start Event Type</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.stardust.model.bpmn2.sdbpmn.impl.StardustTimerStartEventTypeImpl
+ * @see org.eclipse.stardust.model.bpmn2.sdbpmn.impl.SdbpmnPackageImpl#getStardustTimerStartEventType()
+ * @generated
+ */
+ EClass STARDUST_TIMER_START_EVENT_TYPE = eINSTANCE.getStardustTimerStartEventType();
+
+ /**
+ * The meta object literal for the '<em><b>Stardust Attributes</b></em>' containment reference feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EReference STARDUST_TIMER_START_EVENT_TYPE__STARDUST_ATTRIBUTES = eINSTANCE.getStardustTimerStartEventType_StardustAttributes();
+
+ /**
+ * The meta object literal for the '{@link org.eclipse.stardust.model.bpmn2.sdbpmn.impl.StardustUserTaskTypeImpl <em>Stardust User Task Type</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.stardust.model.bpmn2.sdbpmn.impl.StardustUserTaskTypeImpl
+ * @see org.eclipse.stardust.model.bpmn2.sdbpmn.impl.SdbpmnPackageImpl#getStardustUserTaskType()
+ * @generated
+ */
+ EClass STARDUST_USER_TASK_TYPE = eINSTANCE.getStardustUserTaskType();
+
+ /**
+ * The meta object literal for the '<em><b>Allows Abort By Performer</b></em>' attribute feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EAttribute STARDUST_USER_TASK_TYPE__ALLOWS_ABORT_BY_PERFORMER = eINSTANCE.getStardustUserTaskType_AllowsAbortByPerformer();
+
+ /**
+ * The meta object literal for the '{@link org.eclipse.stardust.model.bpmn2.sdbpmn.impl.TStardustActivityImpl <em>TStardust Activity</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.stardust.model.bpmn2.sdbpmn.impl.TStardustActivityImpl
+ * @see org.eclipse.stardust.model.bpmn2.sdbpmn.impl.SdbpmnPackageImpl#getTStardustActivity()
+ * @generated
+ */
+ EClass TSTARDUST_ACTIVITY = eINSTANCE.getTStardustActivity();
+
+ /**
+ * The meta object literal for the '<em><b>Event Handler</b></em>' containment reference list feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EReference TSTARDUST_ACTIVITY__EVENT_HANDLER = eINSTANCE.getTStardustActivity_EventHandler();
+
+ /**
+ * The meta object literal for the '<em><b>Data Mapping</b></em>' containment reference list feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EReference TSTARDUST_ACTIVITY__DATA_MAPPING = eINSTANCE.getTStardustActivity_DataMapping();
+
+ /**
+ * The meta object literal for the '<em><b>Hibernate On Creation</b></em>' attribute feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EAttribute TSTARDUST_ACTIVITY__HIBERNATE_ON_CREATION = eINSTANCE.getTStardustActivity_HibernateOnCreation();
+
+ /**
+ * The meta object literal for the '{@link org.eclipse.stardust.model.bpmn2.sdbpmn.impl.TStardustCommonImpl <em>TStardust Common</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.stardust.model.bpmn2.sdbpmn.impl.TStardustCommonImpl
+ * @see org.eclipse.stardust.model.bpmn2.sdbpmn.impl.SdbpmnPackageImpl#getTStardustCommon()
+ * @generated
+ */
+ EClass TSTARDUST_COMMON = eINSTANCE.getTStardustCommon();
+
+ /**
+ * The meta object literal for the '<em><b>Element Oid</b></em>' attribute feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EAttribute TSTARDUST_COMMON__ELEMENT_OID = eINSTANCE.getTStardustCommon_ElementOid();
+
+ }
+
+} //SdbpmnPackage
diff --git a/model/org.eclipse.stardust.model.bpmn2/src/main/java/org/eclipse/stardust/model/bpmn2/sdbpmn/StardustAttributesType.java b/model/org.eclipse.stardust.model.bpmn2/src/main/java/org/eclipse/stardust/model/bpmn2/sdbpmn/StardustAttributesType.java new file mode 100644 index 0000000..f1db761 --- a/dev/null +++ b/model/org.eclipse.stardust.model.bpmn2/src/main/java/org/eclipse/stardust/model/bpmn2/sdbpmn/StardustAttributesType.java @@ -0,0 +1,49 @@ +/**
+ * <copyright>
+ * </copyright>
+ *
+ * $Id$
+ */
+package org.eclipse.stardust.model.bpmn2.sdbpmn;
+
+import org.eclipse.emf.common.util.EList;
+
+import org.eclipse.emf.ecore.EObject;
+
+import org.eclipse.stardust.model.xpdl.carnot.AttributeType;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Stardust Attributes Type</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * <ul>
+ * <li>{@link org.eclipse.stardust.model.bpmn2.sdbpmn.StardustAttributesType#getAttributeType <em>Attribute Type</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @see org.eclipse.stardust.model.bpmn2.sdbpmn.SdbpmnPackage#getStardustAttributesType()
+ * @model extendedMetaData="name='StardustAttributes_._type' kind='elementOnly'"
+ * @generated
+ */
+public interface StardustAttributesType extends EObject {
+ /**
+ * Returns the value of the '<em><b>Attribute Type</b></em>' containment reference list.
+ * The list contents are of type {@link org.eclipse.stardust.model.xpdl.carnot.AttributeType}.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Attribute Type</em>' containment reference list isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Attribute Type</em>' containment reference list.
+ * @see org.eclipse.stardust.model.bpmn2.sdbpmn.SdbpmnPackage#getStardustAttributesType_AttributeType()
+ * @model containment="true"
+ * extendedMetaData="kind='element' name='AttributeType' namespace='http://www.carnot.ag/workflowmodel/3.1'"
+ * @generated
+ */
+ EList<AttributeType> getAttributeType();
+
+} // StardustAttributesType
diff --git a/model/org.eclipse.stardust.model.bpmn2/src/main/java/org/eclipse/stardust/model/bpmn2/sdbpmn/StardustMessageStartEventType.java b/model/org.eclipse.stardust.model.bpmn2/src/main/java/org/eclipse/stardust/model/bpmn2/sdbpmn/StardustMessageStartEventType.java new file mode 100644 index 0000000..ff4bb82 --- a/dev/null +++ b/model/org.eclipse.stardust.model.bpmn2/src/main/java/org/eclipse/stardust/model/bpmn2/sdbpmn/StardustMessageStartEventType.java @@ -0,0 +1,124 @@ +/**
+ * <copyright>
+ * </copyright>
+ *
+ * $Id$
+ */
+package org.eclipse.stardust.model.bpmn2.sdbpmn;
+
+import org.eclipse.emf.common.util.EList;
+
+import org.eclipse.emf.ecore.EObject;
+
+import org.eclipse.stardust.model.xpdl.carnot.AccessPointType;
+import org.eclipse.stardust.model.xpdl.carnot.ParameterMappingType;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Stardust Message Start Event Type</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * <ul>
+ * <li>{@link org.eclipse.stardust.model.bpmn2.sdbpmn.StardustMessageStartEventType#getStardustAttributes <em>Stardust Attributes</em>}</li>
+ * <li>{@link org.eclipse.stardust.model.bpmn2.sdbpmn.StardustMessageStartEventType#getAccessPoint <em>Access Point</em>}</li>
+ * <li>{@link org.eclipse.stardust.model.bpmn2.sdbpmn.StardustMessageStartEventType#getParameterMapping <em>Parameter Mapping</em>}</li>
+ * <li>{@link org.eclipse.stardust.model.bpmn2.sdbpmn.StardustMessageStartEventType#getType <em>Type</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @see org.eclipse.stardust.model.bpmn2.sdbpmn.SdbpmnPackage#getStardustMessageStartEventType()
+ * @model extendedMetaData="name='StardustMessageStartEvent_._type' kind='elementOnly'"
+ * @generated
+ */
+public interface StardustMessageStartEventType extends EObject {
+ /**
+ * Returns the value of the '<em><b>Stardust Attributes</b></em>' containment reference.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Stardust Attributes</em>' containment reference isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Stardust Attributes</em>' containment reference.
+ * @see #setStardustAttributes(StardustAttributesType)
+ * @see org.eclipse.stardust.model.bpmn2.sdbpmn.SdbpmnPackage#getStardustMessageStartEventType_StardustAttributes()
+ * @model containment="true" required="true"
+ * extendedMetaData="kind='element' name='StardustAttributes' namespace='##targetNamespace'"
+ * @generated
+ */
+ StardustAttributesType getStardustAttributes();
+
+ /**
+ * Sets the value of the '{@link org.eclipse.stardust.model.bpmn2.sdbpmn.StardustMessageStartEventType#getStardustAttributes <em>Stardust Attributes</em>}' containment reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Stardust Attributes</em>' containment reference.
+ * @see #getStardustAttributes()
+ * @generated
+ */
+ void setStardustAttributes(StardustAttributesType value);
+
+ /**
+ * Returns the value of the '<em><b>Access Point</b></em>' containment reference list.
+ * The list contents are of type {@link org.eclipse.stardust.model.xpdl.carnot.AccessPointType}.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * <!-- begin-model-doc -->
+ * The list of access points.
+ * <!-- end-model-doc -->
+ * @return the value of the '<em>Access Point</em>' containment reference list.
+ * @see org.eclipse.stardust.model.bpmn2.sdbpmn.SdbpmnPackage#getStardustMessageStartEventType_AccessPoint()
+ * @model containment="true"
+ * extendedMetaData="kind='element' name='accessPoint' namespace='##targetNamespace'"
+ * @generated
+ */
+ EList<AccessPointType> getAccessPoint();
+
+ /**
+ * Returns the value of the '<em><b>Parameter Mapping</b></em>' containment reference list.
+ * The list contents are of type {@link org.eclipse.stardust.model.xpdl.carnot.ParameterMappingType}.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * <!-- begin-model-doc -->
+ * The list of parameter mappings.
+ * <!-- end-model-doc -->
+ * @return the value of the '<em>Parameter Mapping</em>' containment reference list.
+ * @see org.eclipse.stardust.model.bpmn2.sdbpmn.SdbpmnPackage#getStardustMessageStartEventType_ParameterMapping()
+ * @model containment="true"
+ * extendedMetaData="kind='element' name='parameterMapping' namespace='##targetNamespace'"
+ * @generated
+ */
+ EList<ParameterMappingType> getParameterMapping();
+
+ /**
+ * Returns the value of the '<em><b>Type</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * <!-- begin-model-doc -->
+ *
+ * The model id of one of the previously defined triggerType elements.
+ * Actual implementation of a message start event: i.e. jms or e-mail
+ *
+ * <!-- end-model-doc -->
+ * @return the value of the '<em>Type</em>' attribute.
+ * @see #setType(String)
+ * @see org.eclipse.stardust.model.bpmn2.sdbpmn.SdbpmnPackage#getStardustMessageStartEventType_Type()
+ * @model dataType="org.eclipse.emf.ecore.xml.type.String"
+ * extendedMetaData="kind='attribute' name='type'"
+ * @generated
+ */
+ String getType();
+
+ /**
+ * Sets the value of the '{@link org.eclipse.stardust.model.bpmn2.sdbpmn.StardustMessageStartEventType#getType <em>Type</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Type</em>' attribute.
+ * @see #getType()
+ * @generated
+ */
+ void setType(String value);
+
+} // StardustMessageStartEventType
diff --git a/model/org.eclipse.stardust.model.bpmn2/src/main/java/org/eclipse/stardust/model/bpmn2/sdbpmn/StardustModelType.java b/model/org.eclipse.stardust.model.bpmn2/src/main/java/org/eclipse/stardust/model/bpmn2/sdbpmn/StardustModelType.java new file mode 100644 index 0000000..97107a3 --- a/dev/null +++ b/model/org.eclipse.stardust.model.bpmn2/src/main/java/org/eclipse/stardust/model/bpmn2/sdbpmn/StardustModelType.java @@ -0,0 +1,235 @@ +/**
+ * <copyright>
+ * </copyright>
+ *
+ * $Id$
+ */
+package org.eclipse.stardust.model.bpmn2.sdbpmn;
+
+import java.math.BigInteger;
+
+import javax.xml.datatype.XMLGregorianCalendar;
+
+import org.eclipse.emf.ecore.EObject;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Stardust Model Type</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * <ul>
+ * <li>{@link org.eclipse.stardust.model.bpmn2.sdbpmn.StardustModelType#getAuthor <em>Author</em>}</li>
+ * <li>{@link org.eclipse.stardust.model.bpmn2.sdbpmn.StardustModelType#getCarnotVersion <em>Carnot Version</em>}</li>
+ * <li>{@link org.eclipse.stardust.model.bpmn2.sdbpmn.StardustModelType#getCreated <em>Created</em>}</li>
+ * <li>{@link org.eclipse.stardust.model.bpmn2.sdbpmn.StardustModelType#getModelOID <em>Model OID</em>}</li>
+ * <li>{@link org.eclipse.stardust.model.bpmn2.sdbpmn.StardustModelType#getOid <em>Oid</em>}</li>
+ * <li>{@link org.eclipse.stardust.model.bpmn2.sdbpmn.StardustModelType#getVendor <em>Vendor</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @see org.eclipse.stardust.model.bpmn2.sdbpmn.SdbpmnPackage#getStardustModelType()
+ * @model extendedMetaData="name='StardustModel_._type' kind='empty'"
+ * @generated
+ */
+public interface StardustModelType extends EObject {
+ /**
+ * Returns the value of the '<em><b>Author</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * <!-- begin-model-doc -->
+ *
+ * The name of the user editing this model last.
+ *
+ * <!-- end-model-doc -->
+ * @return the value of the '<em>Author</em>' attribute.
+ * @see #setAuthor(String)
+ * @see org.eclipse.stardust.model.bpmn2.sdbpmn.SdbpmnPackage#getStardustModelType_Author()
+ * @model dataType="org.eclipse.emf.ecore.xml.type.String"
+ * extendedMetaData="kind='attribute' name='author' namespace='##targetNamespace'"
+ * @generated
+ */
+ String getAuthor();
+
+ /**
+ * Sets the value of the '{@link org.eclipse.stardust.model.bpmn2.sdbpmn.StardustModelType#getAuthor <em>Author</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Author</em>' attribute.
+ * @see #getAuthor()
+ * @generated
+ */
+ void setAuthor(String value);
+
+ /**
+ * Returns the value of the '<em><b>Carnot Version</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * <!-- begin-model-doc -->
+ *
+ * The software version used to create and edit this model. Opening this
+ * model in another version of the software may require an explicit
+ * conversion.
+ *
+ * <!-- end-model-doc -->
+ * @return the value of the '<em>Carnot Version</em>' attribute.
+ * @see #setCarnotVersion(String)
+ * @see org.eclipse.stardust.model.bpmn2.sdbpmn.SdbpmnPackage#getStardustModelType_CarnotVersion()
+ * @model dataType="org.eclipse.emf.ecore.xml.type.String"
+ * extendedMetaData="kind='attribute' name='carnotVersion' namespace='##targetNamespace'"
+ * @generated
+ */
+ String getCarnotVersion();
+
+ /**
+ * Sets the value of the '{@link org.eclipse.stardust.model.bpmn2.sdbpmn.StardustModelType#getCarnotVersion <em>Carnot Version</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Carnot Version</em>' attribute.
+ * @see #getCarnotVersion()
+ * @generated
+ */
+ void setCarnotVersion(String value);
+
+ /**
+ * Returns the value of the '<em><b>Created</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * <!-- begin-model-doc -->
+ * The date this model was created.
+ * <!-- end-model-doc -->
+ * @return the value of the '<em>Created</em>' attribute.
+ * @see #setCreated(XMLGregorianCalendar)
+ * @see org.eclipse.stardust.model.bpmn2.sdbpmn.SdbpmnPackage#getStardustModelType_Created()
+ * @model dataType="org.eclipse.emf.ecore.xml.type.DateTime"
+ * extendedMetaData="kind='attribute' name='created' namespace='##targetNamespace'"
+ * @generated
+ */
+ XMLGregorianCalendar getCreated();
+
+ /**
+ * Sets the value of the '{@link org.eclipse.stardust.model.bpmn2.sdbpmn.StardustModelType#getCreated <em>Created</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Created</em>' attribute.
+ * @see #getCreated()
+ * @generated
+ */
+ void setCreated(XMLGregorianCalendar value);
+
+ /**
+ * Returns the value of the '<em><b>Model OID</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * <!-- begin-model-doc -->
+ *
+ * A 32-bit number assigned to the model during deployment to an audit
+ * trail. This number may be changed if the model is deployed to different
+ * audit trails or even to the same audit trail multiple times.
+ *
+ * <!-- end-model-doc -->
+ * @return the value of the '<em>Model OID</em>' attribute.
+ * @see #setModelOID(BigInteger)
+ * @see org.eclipse.stardust.model.bpmn2.sdbpmn.SdbpmnPackage#getStardustModelType_ModelOID()
+ * @model dataType="org.eclipse.emf.ecore.xml.type.Integer"
+ * extendedMetaData="kind='attribute' name='modelOID' namespace='##targetNamespace'"
+ * @generated
+ */
+ BigInteger getModelOID();
+
+ /**
+ * Sets the value of the '{@link org.eclipse.stardust.model.bpmn2.sdbpmn.StardustModelType#getModelOID <em>Model OID</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Model OID</em>' attribute.
+ * @see #getModelOID()
+ * @generated
+ */
+ void setModelOID(BigInteger value);
+
+ /**
+ * Returns the value of the '<em><b>Oid</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * <!-- begin-model-doc -->
+ *
+ * A 64-bit number uniquely identifying the model in the model repository.
+ *
+ * <!-- end-model-doc -->
+ * @return the value of the '<em>Oid</em>' attribute.
+ * @see #isSetOid()
+ * @see #unsetOid()
+ * @see #setOid(long)
+ * @see org.eclipse.stardust.model.bpmn2.sdbpmn.SdbpmnPackage#getStardustModelType_Oid()
+ * @model unsettable="true" dataType="org.eclipse.emf.ecore.xml.type.Long"
+ * extendedMetaData="kind='attribute' name='oid' namespace='##targetNamespace'"
+ * @generated
+ */
+ long getOid();
+
+ /**
+ * Sets the value of the '{@link org.eclipse.stardust.model.bpmn2.sdbpmn.StardustModelType#getOid <em>Oid</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Oid</em>' attribute.
+ * @see #isSetOid()
+ * @see #unsetOid()
+ * @see #getOid()
+ * @generated
+ */
+ void setOid(long value);
+
+ /**
+ * Unsets the value of the '{@link org.eclipse.stardust.model.bpmn2.sdbpmn.StardustModelType#getOid <em>Oid</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #isSetOid()
+ * @see #getOid()
+ * @see #setOid(long)
+ * @generated
+ */
+ void unsetOid();
+
+ /**
+ * Returns whether the value of the '{@link org.eclipse.stardust.model.bpmn2.sdbpmn.StardustModelType#getOid <em>Oid</em>}' attribute is set.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return whether the value of the '<em>Oid</em>' attribute is set.
+ * @see #unsetOid()
+ * @see #getOid()
+ * @see #setOid(long)
+ * @generated
+ */
+ boolean isSetOid();
+
+ /**
+ * Returns the value of the '<em><b>Vendor</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * <!-- begin-model-doc -->
+ *
+ * The vendor of the software used to create and edit this model. Usually
+ * this will be "carnot".
+ *
+ * <!-- end-model-doc -->
+ * @return the value of the '<em>Vendor</em>' attribute.
+ * @see #setVendor(String)
+ * @see org.eclipse.stardust.model.bpmn2.sdbpmn.SdbpmnPackage#getStardustModelType_Vendor()
+ * @model dataType="org.eclipse.emf.ecore.xml.type.String"
+ * extendedMetaData="kind='attribute' name='vendor' namespace='##targetNamespace'"
+ * @generated
+ */
+ String getVendor();
+
+ /**
+ * Sets the value of the '{@link org.eclipse.stardust.model.bpmn2.sdbpmn.StardustModelType#getVendor <em>Vendor</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Vendor</em>' attribute.
+ * @see #getVendor()
+ * @generated
+ */
+ void setVendor(String value);
+
+} // StardustModelType
diff --git a/model/org.eclipse.stardust.model.bpmn2/src/main/java/org/eclipse/stardust/model/bpmn2/sdbpmn/StardustSeqenceFlowType.java b/model/org.eclipse.stardust.model.bpmn2/src/main/java/org/eclipse/stardust/model/bpmn2/sdbpmn/StardustSeqenceFlowType.java new file mode 100644 index 0000000..856b8a9 --- a/dev/null +++ b/model/org.eclipse.stardust.model.bpmn2/src/main/java/org/eclipse/stardust/model/bpmn2/sdbpmn/StardustSeqenceFlowType.java @@ -0,0 +1,83 @@ +/**
+ * <copyright>
+ * </copyright>
+ *
+ * $Id$
+ */
+package org.eclipse.stardust.model.bpmn2.sdbpmn;
+
+import org.eclipse.emf.ecore.EObject;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Stardust Seqence Flow Type</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * <ul>
+ * <li>{@link org.eclipse.stardust.model.bpmn2.sdbpmn.StardustSeqenceFlowType#isForkOnTraversal <em>Fork On Traversal</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @see org.eclipse.stardust.model.bpmn2.sdbpmn.SdbpmnPackage#getStardustSeqenceFlowType()
+ * @model extendedMetaData="name='StardustSeqenceFlow_._type' kind='empty'"
+ * @generated
+ */
+public interface StardustSeqenceFlowType extends EObject {
+ /**
+ * Returns the value of the '<em><b>Fork On Traversal</b></em>' attribute.
+ * The default value is <code>"false"</code>.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Fork On Traversal</em>' attribute isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Fork On Traversal</em>' attribute.
+ * @see #isSetForkOnTraversal()
+ * @see #unsetForkOnTraversal()
+ * @see #setForkOnTraversal(boolean)
+ * @see org.eclipse.stardust.model.bpmn2.sdbpmn.SdbpmnPackage#getStardustSeqenceFlowType_ForkOnTraversal()
+ * @model default="false" unsettable="true" dataType="org.eclipse.emf.ecore.xml.type.Boolean"
+ * extendedMetaData="kind='attribute' name='forkOnTraversal'"
+ * @generated
+ */
+ boolean isForkOnTraversal();
+
+ /**
+ * Sets the value of the '{@link org.eclipse.stardust.model.bpmn2.sdbpmn.StardustSeqenceFlowType#isForkOnTraversal <em>Fork On Traversal</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Fork On Traversal</em>' attribute.
+ * @see #isSetForkOnTraversal()
+ * @see #unsetForkOnTraversal()
+ * @see #isForkOnTraversal()
+ * @generated
+ */
+ void setForkOnTraversal(boolean value);
+
+ /**
+ * Unsets the value of the '{@link org.eclipse.stardust.model.bpmn2.sdbpmn.StardustSeqenceFlowType#isForkOnTraversal <em>Fork On Traversal</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #isSetForkOnTraversal()
+ * @see #isForkOnTraversal()
+ * @see #setForkOnTraversal(boolean)
+ * @generated
+ */
+ void unsetForkOnTraversal();
+
+ /**
+ * Returns whether the value of the '{@link org.eclipse.stardust.model.bpmn2.sdbpmn.StardustSeqenceFlowType#isForkOnTraversal <em>Fork On Traversal</em>}' attribute is set.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return whether the value of the '<em>Fork On Traversal</em>' attribute is set.
+ * @see #unsetForkOnTraversal()
+ * @see #isForkOnTraversal()
+ * @see #setForkOnTraversal(boolean)
+ * @generated
+ */
+ boolean isSetForkOnTraversal();
+
+} // StardustSeqenceFlowType
diff --git a/model/org.eclipse.stardust.model.bpmn2/src/main/java/org/eclipse/stardust/model/bpmn2/sdbpmn/StardustServiceTaskType.java b/model/org.eclipse.stardust.model.bpmn2/src/main/java/org/eclipse/stardust/model/bpmn2/sdbpmn/StardustServiceTaskType.java new file mode 100644 index 0000000..c365a8c --- a/dev/null +++ b/model/org.eclipse.stardust.model.bpmn2/src/main/java/org/eclipse/stardust/model/bpmn2/sdbpmn/StardustServiceTaskType.java @@ -0,0 +1,56 @@ +/**
+ * <copyright>
+ * </copyright>
+ *
+ * $Id$
+ */
+package org.eclipse.stardust.model.bpmn2.sdbpmn;
+
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Stardust Service Task Type</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * <ul>
+ * <li>{@link org.eclipse.stardust.model.bpmn2.sdbpmn.StardustServiceTaskType#getApplication <em>Application</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @see org.eclipse.stardust.model.bpmn2.sdbpmn.SdbpmnPackage#getStardustServiceTaskType()
+ * @model extendedMetaData="name='StardustServiceTask_._type' kind='elementOnly'"
+ * @generated
+ */
+public interface StardustServiceTaskType extends TStardustActivity {
+ /**
+ * Returns the value of the '<em><b>Application</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * <!-- begin-model-doc -->
+ *
+ * The model id of the application to execute when the attribute
+ * "implementation" is set to "Application".
+ *
+ * <!-- end-model-doc -->
+ * @return the value of the '<em>Application</em>' attribute.
+ * @see #setApplication(String)
+ * @see org.eclipse.stardust.model.bpmn2.sdbpmn.SdbpmnPackage#getStardustServiceTaskType_Application()
+ * @model dataType="org.eclipse.emf.ecore.xml.type.String"
+ * extendedMetaData="kind='attribute' name='application'"
+ * @generated
+ */
+ String getApplication();
+
+ /**
+ * Sets the value of the '{@link org.eclipse.stardust.model.bpmn2.sdbpmn.StardustServiceTaskType#getApplication <em>Application</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Application</em>' attribute.
+ * @see #getApplication()
+ * @generated
+ */
+ void setApplication(String value);
+
+} // StardustServiceTaskType
diff --git a/model/org.eclipse.stardust.model.bpmn2/src/main/java/org/eclipse/stardust/model/bpmn2/sdbpmn/StardustStartEventType.java b/model/org.eclipse.stardust.model.bpmn2/src/main/java/org/eclipse/stardust/model/bpmn2/sdbpmn/StardustStartEventType.java new file mode 100644 index 0000000..6e52aec --- a/dev/null +++ b/model/org.eclipse.stardust.model.bpmn2/src/main/java/org/eclipse/stardust/model/bpmn2/sdbpmn/StardustStartEventType.java @@ -0,0 +1,55 @@ +/**
+ * <copyright>
+ * </copyright>
+ *
+ * $Id$
+ */
+package org.eclipse.stardust.model.bpmn2.sdbpmn;
+
+import org.eclipse.emf.ecore.EObject;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Stardust Start Event Type</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * <ul>
+ * <li>{@link org.eclipse.stardust.model.bpmn2.sdbpmn.StardustStartEventType#getStardustAttributes <em>Stardust Attributes</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @see org.eclipse.stardust.model.bpmn2.sdbpmn.SdbpmnPackage#getStardustStartEventType()
+ * @model extendedMetaData="name='StardustStartEvent_._type' kind='elementOnly'"
+ * @generated
+ */
+public interface StardustStartEventType extends EObject {
+ /**
+ * Returns the value of the '<em><b>Stardust Attributes</b></em>' containment reference.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Stardust Attributes</em>' containment reference isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Stardust Attributes</em>' containment reference.
+ * @see #setStardustAttributes(StardustAttributesType)
+ * @see org.eclipse.stardust.model.bpmn2.sdbpmn.SdbpmnPackage#getStardustStartEventType_StardustAttributes()
+ * @model containment="true" required="true"
+ * extendedMetaData="kind='element' name='StardustAttributes' namespace='##targetNamespace'"
+ * @generated
+ */
+ StardustAttributesType getStardustAttributes();
+
+ /**
+ * Sets the value of the '{@link org.eclipse.stardust.model.bpmn2.sdbpmn.StardustStartEventType#getStardustAttributes <em>Stardust Attributes</em>}' containment reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Stardust Attributes</em>' containment reference.
+ * @see #getStardustAttributes()
+ * @generated
+ */
+ void setStardustAttributes(StardustAttributesType value);
+
+} // StardustStartEventType
diff --git a/model/org.eclipse.stardust.model.bpmn2/src/main/java/org/eclipse/stardust/model/bpmn2/sdbpmn/StardustSubprocessType.java b/model/org.eclipse.stardust.model.bpmn2/src/main/java/org/eclipse/stardust/model/bpmn2/sdbpmn/StardustSubprocessType.java new file mode 100644 index 0000000..52f6d02 --- a/dev/null +++ b/model/org.eclipse.stardust.model.bpmn2/src/main/java/org/eclipse/stardust/model/bpmn2/sdbpmn/StardustSubprocessType.java @@ -0,0 +1,56 @@ +/**
+ * <copyright>
+ * </copyright>
+ *
+ * $Id$
+ */
+package org.eclipse.stardust.model.bpmn2.sdbpmn;
+
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Stardust Subprocess Type</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * <ul>
+ * <li>{@link org.eclipse.stardust.model.bpmn2.sdbpmn.StardustSubprocessType#getImplementationProcess <em>Implementation Process</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @see org.eclipse.stardust.model.bpmn2.sdbpmn.SdbpmnPackage#getStardustSubprocessType()
+ * @model extendedMetaData="name='StardustSubprocess_._type' kind='elementOnly'"
+ * @generated
+ */
+public interface StardustSubprocessType extends TStardustActivity {
+ /**
+ * Returns the value of the '<em><b>Implementation Process</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * <!-- begin-model-doc -->
+ *
+ * The model id of the subprocess implementing the activity when the
+ * attribute "implementation" is set to "Subprocess".
+ *
+ * <!-- end-model-doc -->
+ * @return the value of the '<em>Implementation Process</em>' attribute.
+ * @see #setImplementationProcess(String)
+ * @see org.eclipse.stardust.model.bpmn2.sdbpmn.SdbpmnPackage#getStardustSubprocessType_ImplementationProcess()
+ * @model dataType="org.eclipse.emf.ecore.xml.type.String"
+ * extendedMetaData="kind='attribute' name='implementationProcess'"
+ * @generated
+ */
+ String getImplementationProcess();
+
+ /**
+ * Sets the value of the '{@link org.eclipse.stardust.model.bpmn2.sdbpmn.StardustSubprocessType#getImplementationProcess <em>Implementation Process</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Implementation Process</em>' attribute.
+ * @see #getImplementationProcess()
+ * @generated
+ */
+ void setImplementationProcess(String value);
+
+} // StardustSubprocessType
diff --git a/model/org.eclipse.stardust.model.bpmn2/src/main/java/org/eclipse/stardust/model/bpmn2/sdbpmn/StardustTimerStartEventType.java b/model/org.eclipse.stardust.model.bpmn2/src/main/java/org/eclipse/stardust/model/bpmn2/sdbpmn/StardustTimerStartEventType.java new file mode 100644 index 0000000..8f45ecd --- a/dev/null +++ b/model/org.eclipse.stardust.model.bpmn2/src/main/java/org/eclipse/stardust/model/bpmn2/sdbpmn/StardustTimerStartEventType.java @@ -0,0 +1,55 @@ +/**
+ * <copyright>
+ * </copyright>
+ *
+ * $Id$
+ */
+package org.eclipse.stardust.model.bpmn2.sdbpmn;
+
+import org.eclipse.emf.ecore.EObject;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Stardust Timer Start Event Type</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * <ul>
+ * <li>{@link org.eclipse.stardust.model.bpmn2.sdbpmn.StardustTimerStartEventType#getStardustAttributes <em>Stardust Attributes</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @see org.eclipse.stardust.model.bpmn2.sdbpmn.SdbpmnPackage#getStardustTimerStartEventType()
+ * @model extendedMetaData="name='StardustTimerStartEvent_._type' kind='elementOnly'"
+ * @generated
+ */
+public interface StardustTimerStartEventType extends EObject {
+ /**
+ * Returns the value of the '<em><b>Stardust Attributes</b></em>' containment reference.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Stardust Attributes</em>' containment reference isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Stardust Attributes</em>' containment reference.
+ * @see #setStardustAttributes(StardustAttributesType)
+ * @see org.eclipse.stardust.model.bpmn2.sdbpmn.SdbpmnPackage#getStardustTimerStartEventType_StardustAttributes()
+ * @model containment="true" required="true"
+ * extendedMetaData="kind='element' name='StardustAttributes' namespace='##targetNamespace'"
+ * @generated
+ */
+ StardustAttributesType getStardustAttributes();
+
+ /**
+ * Sets the value of the '{@link org.eclipse.stardust.model.bpmn2.sdbpmn.StardustTimerStartEventType#getStardustAttributes <em>Stardust Attributes</em>}' containment reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Stardust Attributes</em>' containment reference.
+ * @see #getStardustAttributes()
+ * @generated
+ */
+ void setStardustAttributes(StardustAttributesType value);
+
+} // StardustTimerStartEventType
diff --git a/model/org.eclipse.stardust.model.bpmn2/src/main/java/org/eclipse/stardust/model/bpmn2/sdbpmn/StardustUserTaskType.java b/model/org.eclipse.stardust.model.bpmn2/src/main/java/org/eclipse/stardust/model/bpmn2/sdbpmn/StardustUserTaskType.java new file mode 100644 index 0000000..a6ac2fb --- a/dev/null +++ b/model/org.eclipse.stardust.model.bpmn2/src/main/java/org/eclipse/stardust/model/bpmn2/sdbpmn/StardustUserTaskType.java @@ -0,0 +1,80 @@ +/**
+ * <copyright>
+ * </copyright>
+ *
+ * $Id$
+ */
+package org.eclipse.stardust.model.bpmn2.sdbpmn;
+
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Stardust User Task Type</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * <ul>
+ * <li>{@link org.eclipse.stardust.model.bpmn2.sdbpmn.StardustUserTaskType#isAllowsAbortByPerformer <em>Allows Abort By Performer</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @see org.eclipse.stardust.model.bpmn2.sdbpmn.SdbpmnPackage#getStardustUserTaskType()
+ * @model extendedMetaData="name='StardustUserTask_._type' kind='elementOnly'"
+ * @generated
+ */
+public interface StardustUserTaskType extends TStardustActivity {
+ /**
+ * Returns the value of the '<em><b>Allows Abort By Performer</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * <!-- begin-model-doc -->
+ * Determines whether the activity is allowed to be aborted.
+ * <!-- end-model-doc -->
+ * @return the value of the '<em>Allows Abort By Performer</em>' attribute.
+ * @see #isSetAllowsAbortByPerformer()
+ * @see #unsetAllowsAbortByPerformer()
+ * @see #setAllowsAbortByPerformer(boolean)
+ * @see org.eclipse.stardust.model.bpmn2.sdbpmn.SdbpmnPackage#getStardustUserTaskType_AllowsAbortByPerformer()
+ * @model unsettable="true" dataType="org.eclipse.emf.ecore.xml.type.Boolean"
+ * extendedMetaData="kind='attribute' name='allowsAbortByPerformer'"
+ * @generated
+ */
+ boolean isAllowsAbortByPerformer();
+
+ /**
+ * Sets the value of the '{@link org.eclipse.stardust.model.bpmn2.sdbpmn.StardustUserTaskType#isAllowsAbortByPerformer <em>Allows Abort By Performer</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Allows Abort By Performer</em>' attribute.
+ * @see #isSetAllowsAbortByPerformer()
+ * @see #unsetAllowsAbortByPerformer()
+ * @see #isAllowsAbortByPerformer()
+ * @generated
+ */
+ void setAllowsAbortByPerformer(boolean value);
+
+ /**
+ * Unsets the value of the '{@link org.eclipse.stardust.model.bpmn2.sdbpmn.StardustUserTaskType#isAllowsAbortByPerformer <em>Allows Abort By Performer</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #isSetAllowsAbortByPerformer()
+ * @see #isAllowsAbortByPerformer()
+ * @see #setAllowsAbortByPerformer(boolean)
+ * @generated
+ */
+ void unsetAllowsAbortByPerformer();
+
+ /**
+ * Returns whether the value of the '{@link org.eclipse.stardust.model.bpmn2.sdbpmn.StardustUserTaskType#isAllowsAbortByPerformer <em>Allows Abort By Performer</em>}' attribute is set.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return whether the value of the '<em>Allows Abort By Performer</em>' attribute is set.
+ * @see #unsetAllowsAbortByPerformer()
+ * @see #isAllowsAbortByPerformer()
+ * @see #setAllowsAbortByPerformer(boolean)
+ * @generated
+ */
+ boolean isSetAllowsAbortByPerformer();
+
+} // StardustUserTaskType
diff --git a/model/org.eclipse.stardust.model.bpmn2/src/main/java/org/eclipse/stardust/model/bpmn2/sdbpmn/TStardustActivity.java b/model/org.eclipse.stardust.model.bpmn2/src/main/java/org/eclipse/stardust/model/bpmn2/sdbpmn/TStardustActivity.java new file mode 100644 index 0000000..de5c233 --- a/dev/null +++ b/model/org.eclipse.stardust.model.bpmn2/src/main/java/org/eclipse/stardust/model/bpmn2/sdbpmn/TStardustActivity.java @@ -0,0 +1,120 @@ +/**
+ * <copyright>
+ * </copyright>
+ *
+ * $Id$
+ */
+package org.eclipse.stardust.model.bpmn2.sdbpmn;
+
+import org.eclipse.emf.common.util.EList;
+
+import org.eclipse.stardust.model.xpdl.carnot.DataMappingType;
+import org.eclipse.stardust.model.xpdl.carnot.EventHandlerType;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>TStardust Activity</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * <ul>
+ * <li>{@link org.eclipse.stardust.model.bpmn2.sdbpmn.TStardustActivity#getEventHandler <em>Event Handler</em>}</li>
+ * <li>{@link org.eclipse.stardust.model.bpmn2.sdbpmn.TStardustActivity#getDataMapping <em>Data Mapping</em>}</li>
+ * <li>{@link org.eclipse.stardust.model.bpmn2.sdbpmn.TStardustActivity#isHibernateOnCreation <em>Hibernate On Creation</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @see org.eclipse.stardust.model.bpmn2.sdbpmn.SdbpmnPackage#getTStardustActivity()
+ * @model extendedMetaData="name='tStardustActivity' kind='elementOnly'"
+ * @generated
+ */
+public interface TStardustActivity extends TStardustCommon {
+ /**
+ * Returns the value of the '<em><b>Event Handler</b></em>' containment reference list.
+ * The list contents are of type {@link org.eclipse.stardust.model.xpdl.carnot.EventHandlerType}.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * <!-- begin-model-doc -->
+ * The list of event handlers defined for this model element.
+ * <!-- end-model-doc -->
+ * @return the value of the '<em>Event Handler</em>' containment reference list.
+ * @see org.eclipse.stardust.model.bpmn2.sdbpmn.SdbpmnPackage#getTStardustActivity_EventHandler()
+ * @model containment="true"
+ * extendedMetaData="kind='element' name='eventHandler' namespace='##targetNamespace'"
+ * @generated
+ */
+ EList<EventHandlerType> getEventHandler();
+
+ /**
+ * Returns the value of the '<em><b>Data Mapping</b></em>' containment reference list.
+ * The list contents are of type {@link org.eclipse.stardust.model.xpdl.carnot.DataMappingType}.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * <!-- begin-model-doc -->
+ * The list of data mappings.
+ * <!-- end-model-doc -->
+ * @return the value of the '<em>Data Mapping</em>' containment reference list.
+ * @see org.eclipse.stardust.model.bpmn2.sdbpmn.SdbpmnPackage#getTStardustActivity_DataMapping()
+ * @model containment="true"
+ * extendedMetaData="kind='element' name='dataMapping' namespace='##targetNamespace'"
+ * @generated
+ */
+ EList<DataMappingType> getDataMapping();
+
+ /**
+ * Returns the value of the '<em><b>Hibernate On Creation</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * <!-- begin-model-doc -->
+ *
+ * Determines whether an activity instance is hibernated immediately after beeing created.
+ *
+ * <!-- end-model-doc -->
+ * @return the value of the '<em>Hibernate On Creation</em>' attribute.
+ * @see #isSetHibernateOnCreation()
+ * @see #unsetHibernateOnCreation()
+ * @see #setHibernateOnCreation(boolean)
+ * @see org.eclipse.stardust.model.bpmn2.sdbpmn.SdbpmnPackage#getTStardustActivity_HibernateOnCreation()
+ * @model unsettable="true" dataType="org.eclipse.emf.ecore.xml.type.Boolean"
+ * extendedMetaData="kind='attribute' name='hibernateOnCreation'"
+ * @generated
+ */
+ boolean isHibernateOnCreation();
+
+ /**
+ * Sets the value of the '{@link org.eclipse.stardust.model.bpmn2.sdbpmn.TStardustActivity#isHibernateOnCreation <em>Hibernate On Creation</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Hibernate On Creation</em>' attribute.
+ * @see #isSetHibernateOnCreation()
+ * @see #unsetHibernateOnCreation()
+ * @see #isHibernateOnCreation()
+ * @generated
+ */
+ void setHibernateOnCreation(boolean value);
+
+ /**
+ * Unsets the value of the '{@link org.eclipse.stardust.model.bpmn2.sdbpmn.TStardustActivity#isHibernateOnCreation <em>Hibernate On Creation</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #isSetHibernateOnCreation()
+ * @see #isHibernateOnCreation()
+ * @see #setHibernateOnCreation(boolean)
+ * @generated
+ */
+ void unsetHibernateOnCreation();
+
+ /**
+ * Returns whether the value of the '{@link org.eclipse.stardust.model.bpmn2.sdbpmn.TStardustActivity#isHibernateOnCreation <em>Hibernate On Creation</em>}' attribute is set.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return whether the value of the '<em>Hibernate On Creation</em>' attribute is set.
+ * @see #unsetHibernateOnCreation()
+ * @see #isHibernateOnCreation()
+ * @see #setHibernateOnCreation(boolean)
+ * @generated
+ */
+ boolean isSetHibernateOnCreation();
+
+} // TStardustActivity
diff --git a/model/org.eclipse.stardust.model.bpmn2/src/main/java/org/eclipse/stardust/model/bpmn2/sdbpmn/TStardustCommon.java b/model/org.eclipse.stardust.model.bpmn2/src/main/java/org/eclipse/stardust/model/bpmn2/sdbpmn/TStardustCommon.java new file mode 100644 index 0000000..8d7b3c6 --- a/dev/null +++ b/model/org.eclipse.stardust.model.bpmn2/src/main/java/org/eclipse/stardust/model/bpmn2/sdbpmn/TStardustCommon.java @@ -0,0 +1,55 @@ +/**
+ * <copyright>
+ * </copyright>
+ *
+ * $Id$
+ */
+package org.eclipse.stardust.model.bpmn2.sdbpmn;
+
+import org.eclipse.emf.ecore.EObject;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>TStardust Common</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * <ul>
+ * <li>{@link org.eclipse.stardust.model.bpmn2.sdbpmn.TStardustCommon#getElementOid <em>Element Oid</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @see org.eclipse.stardust.model.bpmn2.sdbpmn.SdbpmnPackage#getTStardustCommon()
+ * @model extendedMetaData="name='tStardustCommon' kind='empty'"
+ * @generated
+ */
+public interface TStardustCommon extends EObject {
+ /**
+ * Returns the value of the '<em><b>Element Oid</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Element Oid</em>' attribute isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Element Oid</em>' attribute.
+ * @see #setElementOid(String)
+ * @see org.eclipse.stardust.model.bpmn2.sdbpmn.SdbpmnPackage#getTStardustCommon_ElementOid()
+ * @model dataType="org.eclipse.emf.ecore.xml.type.String" required="true"
+ * extendedMetaData="kind='attribute' name='elementOid'"
+ * @generated
+ */
+ String getElementOid();
+
+ /**
+ * Sets the value of the '{@link org.eclipse.stardust.model.bpmn2.sdbpmn.TStardustCommon#getElementOid <em>Element Oid</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Element Oid</em>' attribute.
+ * @see #getElementOid()
+ * @generated
+ */
+ void setElementOid(String value);
+
+} // TStardustCommon
diff --git a/model/org.eclipse.stardust.model.bpmn2/src/main/java/org/eclipse/stardust/model/bpmn2/sdbpmn/impl/DocumentRootImpl.java b/model/org.eclipse.stardust.model.bpmn2/src/main/java/org/eclipse/stardust/model/bpmn2/sdbpmn/impl/DocumentRootImpl.java new file mode 100644 index 0000000..258c1c7 --- a/dev/null +++ b/model/org.eclipse.stardust.model.bpmn2/src/main/java/org/eclipse/stardust/model/bpmn2/sdbpmn/impl/DocumentRootImpl.java @@ -0,0 +1,1060 @@ +/**
+ * <copyright>
+ * </copyright>
+ *
+ * $Id$
+ */
+package org.eclipse.stardust.model.bpmn2.sdbpmn.impl;
+
+import java.math.BigInteger;
+
+import javax.xml.datatype.XMLGregorianCalendar;
+
+import org.eclipse.emf.common.notify.Notification;
+import org.eclipse.emf.common.notify.NotificationChain;
+
+import org.eclipse.emf.common.util.EMap;
+
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.EStructuralFeature;
+import org.eclipse.emf.ecore.EcorePackage;
+import org.eclipse.emf.ecore.InternalEObject;
+
+import org.eclipse.emf.ecore.impl.ENotificationImpl;
+import org.eclipse.emf.ecore.impl.EObjectImpl;
+import org.eclipse.emf.ecore.impl.EStringToStringMapEntryImpl;
+
+import org.eclipse.emf.ecore.util.BasicFeatureMap;
+import org.eclipse.emf.ecore.util.EcoreEMap;
+import org.eclipse.emf.ecore.util.FeatureMap;
+import org.eclipse.emf.ecore.util.InternalEList;
+
+import org.eclipse.stardust.model.bpmn2.sdbpmn.DocumentRoot;
+import org.eclipse.stardust.model.bpmn2.sdbpmn.SdbpmnPackage;
+import org.eclipse.stardust.model.bpmn2.sdbpmn.StardustAttributesType;
+import org.eclipse.stardust.model.bpmn2.sdbpmn.StardustMessageStartEventType;
+import org.eclipse.stardust.model.bpmn2.sdbpmn.StardustModelType;
+import org.eclipse.stardust.model.bpmn2.sdbpmn.StardustSeqenceFlowType;
+import org.eclipse.stardust.model.bpmn2.sdbpmn.StardustServiceTaskType;
+import org.eclipse.stardust.model.bpmn2.sdbpmn.StardustStartEventType;
+import org.eclipse.stardust.model.bpmn2.sdbpmn.StardustSubprocessType;
+import org.eclipse.stardust.model.bpmn2.sdbpmn.StardustTimerStartEventType;
+import org.eclipse.stardust.model.bpmn2.sdbpmn.StardustUserTaskType;
+import org.eclipse.stardust.model.bpmn2.sdbpmn.TStardustActivity;
+import org.eclipse.stardust.model.bpmn2.sdbpmn.TStardustCommon;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>Document Root</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * <ul>
+ * <li>{@link org.eclipse.stardust.model.bpmn2.sdbpmn.impl.DocumentRootImpl#getMixed <em>Mixed</em>}</li>
+ * <li>{@link org.eclipse.stardust.model.bpmn2.sdbpmn.impl.DocumentRootImpl#getXMLNSPrefixMap <em>XMLNS Prefix Map</em>}</li>
+ * <li>{@link org.eclipse.stardust.model.bpmn2.sdbpmn.impl.DocumentRootImpl#getXSISchemaLocation <em>XSI Schema Location</em>}</li>
+ * <li>{@link org.eclipse.stardust.model.bpmn2.sdbpmn.impl.DocumentRootImpl#getStardustActivity <em>Stardust Activity</em>}</li>
+ * <li>{@link org.eclipse.stardust.model.bpmn2.sdbpmn.impl.DocumentRootImpl#getStardustAttributes <em>Stardust Attributes</em>}</li>
+ * <li>{@link org.eclipse.stardust.model.bpmn2.sdbpmn.impl.DocumentRootImpl#getStardustCommon <em>Stardust Common</em>}</li>
+ * <li>{@link org.eclipse.stardust.model.bpmn2.sdbpmn.impl.DocumentRootImpl#getStardustMessageStartEvent <em>Stardust Message Start Event</em>}</li>
+ * <li>{@link org.eclipse.stardust.model.bpmn2.sdbpmn.impl.DocumentRootImpl#getStardustModel <em>Stardust Model</em>}</li>
+ * <li>{@link org.eclipse.stardust.model.bpmn2.sdbpmn.impl.DocumentRootImpl#getStardustSeqenceFlow <em>Stardust Seqence Flow</em>}</li>
+ * <li>{@link org.eclipse.stardust.model.bpmn2.sdbpmn.impl.DocumentRootImpl#getStardustServiceTask <em>Stardust Service Task</em>}</li>
+ * <li>{@link org.eclipse.stardust.model.bpmn2.sdbpmn.impl.DocumentRootImpl#getStardustStartEvent <em>Stardust Start Event</em>}</li>
+ * <li>{@link org.eclipse.stardust.model.bpmn2.sdbpmn.impl.DocumentRootImpl#getStardustSubprocess <em>Stardust Subprocess</em>}</li>
+ * <li>{@link org.eclipse.stardust.model.bpmn2.sdbpmn.impl.DocumentRootImpl#getStardustTimerStartEvent <em>Stardust Timer Start Event</em>}</li>
+ * <li>{@link org.eclipse.stardust.model.bpmn2.sdbpmn.impl.DocumentRootImpl#getStardustUserTask <em>Stardust User Task</em>}</li>
+ * <li>{@link org.eclipse.stardust.model.bpmn2.sdbpmn.impl.DocumentRootImpl#getAuthor <em>Author</em>}</li>
+ * <li>{@link org.eclipse.stardust.model.bpmn2.sdbpmn.impl.DocumentRootImpl#getCarnotVersion <em>Carnot Version</em>}</li>
+ * <li>{@link org.eclipse.stardust.model.bpmn2.sdbpmn.impl.DocumentRootImpl#getCreated <em>Created</em>}</li>
+ * <li>{@link org.eclipse.stardust.model.bpmn2.sdbpmn.impl.DocumentRootImpl#getModelOID <em>Model OID</em>}</li>
+ * <li>{@link org.eclipse.stardust.model.bpmn2.sdbpmn.impl.DocumentRootImpl#getOid <em>Oid</em>}</li>
+ * <li>{@link org.eclipse.stardust.model.bpmn2.sdbpmn.impl.DocumentRootImpl#getVendor <em>Vendor</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @generated
+ */
+public class DocumentRootImpl extends EObjectImpl implements DocumentRoot {
+ /**
+ * The cached value of the '{@link #getMixed() <em>Mixed</em>}' attribute list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getMixed()
+ * @generated
+ * @ordered
+ */
+ protected FeatureMap mixed;
+
+ /**
+ * The cached value of the '{@link #getXMLNSPrefixMap() <em>XMLNS Prefix Map</em>}' map.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getXMLNSPrefixMap()
+ * @generated
+ * @ordered
+ */
+ protected EMap<String, String> xMLNSPrefixMap;
+
+ /**
+ * The cached value of the '{@link #getXSISchemaLocation() <em>XSI Schema Location</em>}' map.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getXSISchemaLocation()
+ * @generated
+ * @ordered
+ */
+ protected EMap<String, String> xSISchemaLocation;
+
+ /**
+ * The default value of the '{@link #getAuthor() <em>Author</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getAuthor()
+ * @generated
+ * @ordered
+ */
+ protected static final String AUTHOR_EDEFAULT = null;
+
+ /**
+ * The cached value of the '{@link #getAuthor() <em>Author</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getAuthor()
+ * @generated
+ * @ordered
+ */
+ protected String author = AUTHOR_EDEFAULT;
+
+ /**
+ * The default value of the '{@link #getCarnotVersion() <em>Carnot Version</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getCarnotVersion()
+ * @generated
+ * @ordered
+ */
+ protected static final String CARNOT_VERSION_EDEFAULT = null;
+
+ /**
+ * The cached value of the '{@link #getCarnotVersion() <em>Carnot Version</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getCarnotVersion()
+ * @generated
+ * @ordered
+ */
+ protected String carnotVersion = CARNOT_VERSION_EDEFAULT;
+
+ /**
+ * The default value of the '{@link #getCreated() <em>Created</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getCreated()
+ * @generated
+ * @ordered
+ */
+ protected static final XMLGregorianCalendar CREATED_EDEFAULT = null;
+
+ /**
+ * The cached value of the '{@link #getCreated() <em>Created</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getCreated()
+ * @generated
+ * @ordered
+ */
+ protected XMLGregorianCalendar created = CREATED_EDEFAULT;
+
+ /**
+ * The default value of the '{@link #getModelOID() <em>Model OID</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getModelOID()
+ * @generated
+ * @ordered
+ */
+ protected static final BigInteger MODEL_OID_EDEFAULT = null;
+
+ /**
+ * The cached value of the '{@link #getModelOID() <em>Model OID</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getModelOID()
+ * @generated
+ * @ordered
+ */
+ protected BigInteger modelOID = MODEL_OID_EDEFAULT;
+
+ /**
+ * The default value of the '{@link #getOid() <em>Oid</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getOid()
+ * @generated
+ * @ordered
+ */
+ protected static final long OID_EDEFAULT = 0L;
+
+ /**
+ * The cached value of the '{@link #getOid() <em>Oid</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getOid()
+ * @generated
+ * @ordered
+ */
+ protected long oid = OID_EDEFAULT;
+
+ /**
+ * This is true if the Oid attribute has been set.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ protected boolean oidESet;
+
+ /**
+ * The default value of the '{@link #getVendor() <em>Vendor</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getVendor()
+ * @generated
+ * @ordered
+ */
+ protected static final String VENDOR_EDEFAULT = null;
+
+ /**
+ * The cached value of the '{@link #getVendor() <em>Vendor</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getVendor()
+ * @generated
+ * @ordered
+ */
+ protected String vendor = VENDOR_EDEFAULT;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected DocumentRootImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ protected EClass eStaticClass() {
+ return SdbpmnPackage.Literals.DOCUMENT_ROOT;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public FeatureMap getMixed() {
+ if (mixed == null) {
+ mixed = new BasicFeatureMap(this, SdbpmnPackage.DOCUMENT_ROOT__MIXED);
+ }
+ return mixed;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EMap<String, String> getXMLNSPrefixMap() {
+ if (xMLNSPrefixMap == null) {
+ xMLNSPrefixMap = new EcoreEMap<String,String>(EcorePackage.Literals.ESTRING_TO_STRING_MAP_ENTRY, EStringToStringMapEntryImpl.class, this, SdbpmnPackage.DOCUMENT_ROOT__XMLNS_PREFIX_MAP);
+ }
+ return xMLNSPrefixMap;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EMap<String, String> getXSISchemaLocation() {
+ if (xSISchemaLocation == null) {
+ xSISchemaLocation = new EcoreEMap<String,String>(EcorePackage.Literals.ESTRING_TO_STRING_MAP_ENTRY, EStringToStringMapEntryImpl.class, this, SdbpmnPackage.DOCUMENT_ROOT__XSI_SCHEMA_LOCATION);
+ }
+ return xSISchemaLocation;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public TStardustActivity getStardustActivity() {
+ return (TStardustActivity)getMixed().get(SdbpmnPackage.Literals.DOCUMENT_ROOT__STARDUST_ACTIVITY, true);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public NotificationChain basicSetStardustActivity(TStardustActivity newStardustActivity, NotificationChain msgs) {
+ return ((FeatureMap.Internal)getMixed()).basicAdd(SdbpmnPackage.Literals.DOCUMENT_ROOT__STARDUST_ACTIVITY, newStardustActivity, msgs);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void setStardustActivity(TStardustActivity newStardustActivity) {
+ ((FeatureMap.Internal)getMixed()).set(SdbpmnPackage.Literals.DOCUMENT_ROOT__STARDUST_ACTIVITY, newStardustActivity);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public StardustAttributesType getStardustAttributes() {
+ return (StardustAttributesType)getMixed().get(SdbpmnPackage.Literals.DOCUMENT_ROOT__STARDUST_ATTRIBUTES, true);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public NotificationChain basicSetStardustAttributes(StardustAttributesType newStardustAttributes, NotificationChain msgs) {
+ return ((FeatureMap.Internal)getMixed()).basicAdd(SdbpmnPackage.Literals.DOCUMENT_ROOT__STARDUST_ATTRIBUTES, newStardustAttributes, msgs);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void setStardustAttributes(StardustAttributesType newStardustAttributes) {
+ ((FeatureMap.Internal)getMixed()).set(SdbpmnPackage.Literals.DOCUMENT_ROOT__STARDUST_ATTRIBUTES, newStardustAttributes);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public TStardustCommon getStardustCommon() {
+ return (TStardustCommon)getMixed().get(SdbpmnPackage.Literals.DOCUMENT_ROOT__STARDUST_COMMON, true);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public NotificationChain basicSetStardustCommon(TStardustCommon newStardustCommon, NotificationChain msgs) {
+ return ((FeatureMap.Internal)getMixed()).basicAdd(SdbpmnPackage.Literals.DOCUMENT_ROOT__STARDUST_COMMON, newStardustCommon, msgs);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void setStardustCommon(TStardustCommon newStardustCommon) {
+ ((FeatureMap.Internal)getMixed()).set(SdbpmnPackage.Literals.DOCUMENT_ROOT__STARDUST_COMMON, newStardustCommon);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public StardustMessageStartEventType getStardustMessageStartEvent() {
+ return (StardustMessageStartEventType)getMixed().get(SdbpmnPackage.Literals.DOCUMENT_ROOT__STARDUST_MESSAGE_START_EVENT, true);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public NotificationChain basicSetStardustMessageStartEvent(StardustMessageStartEventType newStardustMessageStartEvent, NotificationChain msgs) {
+ return ((FeatureMap.Internal)getMixed()).basicAdd(SdbpmnPackage.Literals.DOCUMENT_ROOT__STARDUST_MESSAGE_START_EVENT, newStardustMessageStartEvent, msgs);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void setStardustMessageStartEvent(StardustMessageStartEventType newStardustMessageStartEvent) {
+ ((FeatureMap.Internal)getMixed()).set(SdbpmnPackage.Literals.DOCUMENT_ROOT__STARDUST_MESSAGE_START_EVENT, newStardustMessageStartEvent);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public StardustModelType getStardustModel() {
+ return (StardustModelType)getMixed().get(SdbpmnPackage.Literals.DOCUMENT_ROOT__STARDUST_MODEL, true);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public NotificationChain basicSetStardustModel(StardustModelType newStardustModel, NotificationChain msgs) {
+ return ((FeatureMap.Internal)getMixed()).basicAdd(SdbpmnPackage.Literals.DOCUMENT_ROOT__STARDUST_MODEL, newStardustModel, msgs);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void setStardustModel(StardustModelType newStardustModel) {
+ ((FeatureMap.Internal)getMixed()).set(SdbpmnPackage.Literals.DOCUMENT_ROOT__STARDUST_MODEL, newStardustModel);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public StardustSeqenceFlowType getStardustSeqenceFlow() {
+ return (StardustSeqenceFlowType)getMixed().get(SdbpmnPackage.Literals.DOCUMENT_ROOT__STARDUST_SEQENCE_FLOW, true);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public NotificationChain basicSetStardustSeqenceFlow(StardustSeqenceFlowType newStardustSeqenceFlow, NotificationChain msgs) {
+ return ((FeatureMap.Internal)getMixed()).basicAdd(SdbpmnPackage.Literals.DOCUMENT_ROOT__STARDUST_SEQENCE_FLOW, newStardustSeqenceFlow, msgs);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void setStardustSeqenceFlow(StardustSeqenceFlowType newStardustSeqenceFlow) {
+ ((FeatureMap.Internal)getMixed()).set(SdbpmnPackage.Literals.DOCUMENT_ROOT__STARDUST_SEQENCE_FLOW, newStardustSeqenceFlow);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public StardustServiceTaskType getStardustServiceTask() {
+ return (StardustServiceTaskType)getMixed().get(SdbpmnPackage.Literals.DOCUMENT_ROOT__STARDUST_SERVICE_TASK, true);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public NotificationChain basicSetStardustServiceTask(StardustServiceTaskType newStardustServiceTask, NotificationChain msgs) {
+ return ((FeatureMap.Internal)getMixed()).basicAdd(SdbpmnPackage.Literals.DOCUMENT_ROOT__STARDUST_SERVICE_TASK, newStardustServiceTask, msgs);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void setStardustServiceTask(StardustServiceTaskType newStardustServiceTask) {
+ ((FeatureMap.Internal)getMixed()).set(SdbpmnPackage.Literals.DOCUMENT_ROOT__STARDUST_SERVICE_TASK, newStardustServiceTask);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public StardustStartEventType getStardustStartEvent() {
+ return (StardustStartEventType)getMixed().get(SdbpmnPackage.Literals.DOCUMENT_ROOT__STARDUST_START_EVENT, true);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public NotificationChain basicSetStardustStartEvent(StardustStartEventType newStardustStartEvent, NotificationChain msgs) {
+ return ((FeatureMap.Internal)getMixed()).basicAdd(SdbpmnPackage.Literals.DOCUMENT_ROOT__STARDUST_START_EVENT, newStardustStartEvent, msgs);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void setStardustStartEvent(StardustStartEventType newStardustStartEvent) {
+ ((FeatureMap.Internal)getMixed()).set(SdbpmnPackage.Literals.DOCUMENT_ROOT__STARDUST_START_EVENT, newStardustStartEvent);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public StardustSubprocessType getStardustSubprocess() {
+ return (StardustSubprocessType)getMixed().get(SdbpmnPackage.Literals.DOCUMENT_ROOT__STARDUST_SUBPROCESS, true);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public NotificationChain basicSetStardustSubprocess(StardustSubprocessType newStardustSubprocess, NotificationChain msgs) {
+ return ((FeatureMap.Internal)getMixed()).basicAdd(SdbpmnPackage.Literals.DOCUMENT_ROOT__STARDUST_SUBPROCESS, newStardustSubprocess, msgs);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void setStardustSubprocess(StardustSubprocessType newStardustSubprocess) {
+ ((FeatureMap.Internal)getMixed()).set(SdbpmnPackage.Literals.DOCUMENT_ROOT__STARDUST_SUBPROCESS, newStardustSubprocess);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public StardustTimerStartEventType getStardustTimerStartEvent() {
+ return (StardustTimerStartEventType)getMixed().get(SdbpmnPackage.Literals.DOCUMENT_ROOT__STARDUST_TIMER_START_EVENT, true);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public NotificationChain basicSetStardustTimerStartEvent(StardustTimerStartEventType newStardustTimerStartEvent, NotificationChain msgs) {
+ return ((FeatureMap.Internal)getMixed()).basicAdd(SdbpmnPackage.Literals.DOCUMENT_ROOT__STARDUST_TIMER_START_EVENT, newStardustTimerStartEvent, msgs);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void setStardustTimerStartEvent(StardustTimerStartEventType newStardustTimerStartEvent) {
+ ((FeatureMap.Internal)getMixed()).set(SdbpmnPackage.Literals.DOCUMENT_ROOT__STARDUST_TIMER_START_EVENT, newStardustTimerStartEvent);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public StardustUserTaskType getStardustUserTask() {
+ return (StardustUserTaskType)getMixed().get(SdbpmnPackage.Literals.DOCUMENT_ROOT__STARDUST_USER_TASK, true);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public NotificationChain basicSetStardustUserTask(StardustUserTaskType newStardustUserTask, NotificationChain msgs) {
+ return ((FeatureMap.Internal)getMixed()).basicAdd(SdbpmnPackage.Literals.DOCUMENT_ROOT__STARDUST_USER_TASK, newStardustUserTask, msgs);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void setStardustUserTask(StardustUserTaskType newStardustUserTask) {
+ ((FeatureMap.Internal)getMixed()).set(SdbpmnPackage.Literals.DOCUMENT_ROOT__STARDUST_USER_TASK, newStardustUserTask);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public String getAuthor() {
+ return author;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void setAuthor(String newAuthor) {
+ String oldAuthor = author;
+ author = newAuthor;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, SdbpmnPackage.DOCUMENT_ROOT__AUTHOR, oldAuthor, author));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public String getCarnotVersion() {
+ return carnotVersion;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void setCarnotVersion(String newCarnotVersion) {
+ String oldCarnotVersion = carnotVersion;
+ carnotVersion = newCarnotVersion;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, SdbpmnPackage.DOCUMENT_ROOT__CARNOT_VERSION, oldCarnotVersion, carnotVersion));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public XMLGregorianCalendar getCreated() {
+ return created;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void setCreated(XMLGregorianCalendar newCreated) {
+ XMLGregorianCalendar oldCreated = created;
+ created = newCreated;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, SdbpmnPackage.DOCUMENT_ROOT__CREATED, oldCreated, created));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public BigInteger getModelOID() {
+ return modelOID;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void setModelOID(BigInteger newModelOID) {
+ BigInteger oldModelOID = modelOID;
+ modelOID = newModelOID;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, SdbpmnPackage.DOCUMENT_ROOT__MODEL_OID, oldModelOID, modelOID));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public long getOid() {
+ return oid;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void setOid(long newOid) {
+ long oldOid = oid;
+ oid = newOid;
+ boolean oldOidESet = oidESet;
+ oidESet = true;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, SdbpmnPackage.DOCUMENT_ROOT__OID, oldOid, oid, !oldOidESet));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void unsetOid() {
+ long oldOid = oid;
+ boolean oldOidESet = oidESet;
+ oid = OID_EDEFAULT;
+ oidESet = false;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.UNSET, SdbpmnPackage.DOCUMENT_ROOT__OID, oldOid, OID_EDEFAULT, oldOidESet));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public boolean isSetOid() {
+ return oidESet;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public String getVendor() {
+ return vendor;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void setVendor(String newVendor) {
+ String oldVendor = vendor;
+ vendor = newVendor;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, SdbpmnPackage.DOCUMENT_ROOT__VENDOR, oldVendor, vendor));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) {
+ switch (featureID) {
+ case SdbpmnPackage.DOCUMENT_ROOT__MIXED:
+ return ((InternalEList<?>)getMixed()).basicRemove(otherEnd, msgs);
+ case SdbpmnPackage.DOCUMENT_ROOT__XMLNS_PREFIX_MAP:
+ return ((InternalEList<?>)getXMLNSPrefixMap()).basicRemove(otherEnd, msgs);
+ case SdbpmnPackage.DOCUMENT_ROOT__XSI_SCHEMA_LOCATION:
+ return ((InternalEList<?>)getXSISchemaLocation()).basicRemove(otherEnd, msgs);
+ case SdbpmnPackage.DOCUMENT_ROOT__STARDUST_ACTIVITY:
+ return basicSetStardustActivity(null, msgs);
+ case SdbpmnPackage.DOCUMENT_ROOT__STARDUST_ATTRIBUTES:
+ return basicSetStardustAttributes(null, msgs);
+ case SdbpmnPackage.DOCUMENT_ROOT__STARDUST_COMMON:
+ return basicSetStardustCommon(null, msgs);
+ case SdbpmnPackage.DOCUMENT_ROOT__STARDUST_MESSAGE_START_EVENT:
+ return basicSetStardustMessageStartEvent(null, msgs);
+ case SdbpmnPackage.DOCUMENT_ROOT__STARDUST_MODEL:
+ return basicSetStardustModel(null, msgs);
+ case SdbpmnPackage.DOCUMENT_ROOT__STARDUST_SEQENCE_FLOW:
+ return basicSetStardustSeqenceFlow(null, msgs);
+ case SdbpmnPackage.DOCUMENT_ROOT__STARDUST_SERVICE_TASK:
+ return basicSetStardustServiceTask(null, msgs);
+ case SdbpmnPackage.DOCUMENT_ROOT__STARDUST_START_EVENT:
+ return basicSetStardustStartEvent(null, msgs);
+ case SdbpmnPackage.DOCUMENT_ROOT__STARDUST_SUBPROCESS:
+ return basicSetStardustSubprocess(null, msgs);
+ case SdbpmnPackage.DOCUMENT_ROOT__STARDUST_TIMER_START_EVENT:
+ return basicSetStardustTimerStartEvent(null, msgs);
+ case SdbpmnPackage.DOCUMENT_ROOT__STARDUST_USER_TASK:
+ return basicSetStardustUserTask(null, msgs);
+ }
+ return super.eInverseRemove(otherEnd, featureID, msgs);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Object eGet(int featureID, boolean resolve, boolean coreType) {
+ switch (featureID) {
+ case SdbpmnPackage.DOCUMENT_ROOT__MIXED:
+ if (coreType) return getMixed();
+ return ((FeatureMap.Internal)getMixed()).getWrapper();
+ case SdbpmnPackage.DOCUMENT_ROOT__XMLNS_PREFIX_MAP:
+ if (coreType) return getXMLNSPrefixMap();
+ else return getXMLNSPrefixMap().map();
+ case SdbpmnPackage.DOCUMENT_ROOT__XSI_SCHEMA_LOCATION:
+ if (coreType) return getXSISchemaLocation();
+ else return getXSISchemaLocation().map();
+ case SdbpmnPackage.DOCUMENT_ROOT__STARDUST_ACTIVITY:
+ return getStardustActivity();
+ case SdbpmnPackage.DOCUMENT_ROOT__STARDUST_ATTRIBUTES:
+ return getStardustAttributes();
+ case SdbpmnPackage.DOCUMENT_ROOT__STARDUST_COMMON:
+ return getStardustCommon();
+ case SdbpmnPackage.DOCUMENT_ROOT__STARDUST_MESSAGE_START_EVENT:
+ return getStardustMessageStartEvent();
+ case SdbpmnPackage.DOCUMENT_ROOT__STARDUST_MODEL:
+ return getStardustModel();
+ case SdbpmnPackage.DOCUMENT_ROOT__STARDUST_SEQENCE_FLOW:
+ return getStardustSeqenceFlow();
+ case SdbpmnPackage.DOCUMENT_ROOT__STARDUST_SERVICE_TASK:
+ return getStardustServiceTask();
+ case SdbpmnPackage.DOCUMENT_ROOT__STARDUST_START_EVENT:
+ return getStardustStartEvent();
+ case SdbpmnPackage.DOCUMENT_ROOT__STARDUST_SUBPROCESS:
+ return getStardustSubprocess();
+ case SdbpmnPackage.DOCUMENT_ROOT__STARDUST_TIMER_START_EVENT:
+ return getStardustTimerStartEvent();
+ case SdbpmnPackage.DOCUMENT_ROOT__STARDUST_USER_TASK:
+ return getStardustUserTask();
+ case SdbpmnPackage.DOCUMENT_ROOT__AUTHOR:
+ return getAuthor();
+ case SdbpmnPackage.DOCUMENT_ROOT__CARNOT_VERSION:
+ return getCarnotVersion();
+ case SdbpmnPackage.DOCUMENT_ROOT__CREATED:
+ return getCreated();
+ case SdbpmnPackage.DOCUMENT_ROOT__MODEL_OID:
+ return getModelOID();
+ case SdbpmnPackage.DOCUMENT_ROOT__OID:
+ return getOid();
+ case SdbpmnPackage.DOCUMENT_ROOT__VENDOR:
+ return getVendor();
+ }
+ return super.eGet(featureID, resolve, coreType);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void eSet(int featureID, Object newValue) {
+ switch (featureID) {
+ case SdbpmnPackage.DOCUMENT_ROOT__MIXED:
+ ((FeatureMap.Internal)getMixed()).set(newValue);
+ return;
+ case SdbpmnPackage.DOCUMENT_ROOT__XMLNS_PREFIX_MAP:
+ ((EStructuralFeature.Setting)getXMLNSPrefixMap()).set(newValue);
+ return;
+ case SdbpmnPackage.DOCUMENT_ROOT__XSI_SCHEMA_LOCATION:
+ ((EStructuralFeature.Setting)getXSISchemaLocation()).set(newValue);
+ return;
+ case SdbpmnPackage.DOCUMENT_ROOT__STARDUST_ACTIVITY:
+ setStardustActivity((TStardustActivity)newValue);
+ return;
+ case SdbpmnPackage.DOCUMENT_ROOT__STARDUST_ATTRIBUTES:
+ setStardustAttributes((StardustAttributesType)newValue);
+ return;
+ case SdbpmnPackage.DOCUMENT_ROOT__STARDUST_COMMON:
+ setStardustCommon((TStardustCommon)newValue);
+ return;
+ case SdbpmnPackage.DOCUMENT_ROOT__STARDUST_MESSAGE_START_EVENT:
+ setStardustMessageStartEvent((StardustMessageStartEventType)newValue);
+ return;
+ case SdbpmnPackage.DOCUMENT_ROOT__STARDUST_MODEL:
+ setStardustModel((StardustModelType)newValue);
+ return;
+ case SdbpmnPackage.DOCUMENT_ROOT__STARDUST_SEQENCE_FLOW:
+ setStardustSeqenceFlow((StardustSeqenceFlowType)newValue);
+ return;
+ case SdbpmnPackage.DOCUMENT_ROOT__STARDUST_SERVICE_TASK:
+ setStardustServiceTask((StardustServiceTaskType)newValue);
+ return;
+ case SdbpmnPackage.DOCUMENT_ROOT__STARDUST_START_EVENT:
+ setStardustStartEvent((StardustStartEventType)newValue);
+ return;
+ case SdbpmnPackage.DOCUMENT_ROOT__STARDUST_SUBPROCESS:
+ setStardustSubprocess((StardustSubprocessType)newValue);
+ return;
+ case SdbpmnPackage.DOCUMENT_ROOT__STARDUST_TIMER_START_EVENT:
+ setStardustTimerStartEvent((StardustTimerStartEventType)newValue);
+ return;
+ case SdbpmnPackage.DOCUMENT_ROOT__STARDUST_USER_TASK:
+ setStardustUserTask((StardustUserTaskType)newValue);
+ return;
+ case SdbpmnPackage.DOCUMENT_ROOT__AUTHOR:
+ setAuthor((String)newValue);
+ return;
+ case SdbpmnPackage.DOCUMENT_ROOT__CARNOT_VERSION:
+ setCarnotVersion((String)newValue);
+ return;
+ case SdbpmnPackage.DOCUMENT_ROOT__CREATED:
+ setCreated((XMLGregorianCalendar)newValue);
+ return;
+ case SdbpmnPackage.DOCUMENT_ROOT__MODEL_OID:
+ setModelOID((BigInteger)newValue);
+ return;
+ case SdbpmnPackage.DOCUMENT_ROOT__OID:
+ setOid((Long)newValue);
+ return;
+ case SdbpmnPackage.DOCUMENT_ROOT__VENDOR:
+ setVendor((String)newValue);
+ return;
+ }
+ super.eSet(featureID, newValue);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void eUnset(int featureID) {
+ switch (featureID) {
+ case SdbpmnPackage.DOCUMENT_ROOT__MIXED:
+ getMixed().clear();
+ return;
+ case SdbpmnPackage.DOCUMENT_ROOT__XMLNS_PREFIX_MAP:
+ getXMLNSPrefixMap().clear();
+ return;
+ case SdbpmnPackage.DOCUMENT_ROOT__XSI_SCHEMA_LOCATION:
+ getXSISchemaLocation().clear();
+ return;
+ case SdbpmnPackage.DOCUMENT_ROOT__STARDUST_ACTIVITY:
+ setStardustActivity((TStardustActivity)null);
+ return;
+ case SdbpmnPackage.DOCUMENT_ROOT__STARDUST_ATTRIBUTES:
+ setStardustAttributes((StardustAttributesType)null);
+ return;
+ case SdbpmnPackage.DOCUMENT_ROOT__STARDUST_COMMON:
+ setStardustCommon((TStardustCommon)null);
+ return;
+ case SdbpmnPackage.DOCUMENT_ROOT__STARDUST_MESSAGE_START_EVENT:
+ setStardustMessageStartEvent((StardustMessageStartEventType)null);
+ return;
+ case SdbpmnPackage.DOCUMENT_ROOT__STARDUST_MODEL:
+ setStardustModel((StardustModelType)null);
+ return;
+ case SdbpmnPackage.DOCUMENT_ROOT__STARDUST_SEQENCE_FLOW:
+ setStardustSeqenceFlow((StardustSeqenceFlowType)null);
+ return;
+ case SdbpmnPackage.DOCUMENT_ROOT__STARDUST_SERVICE_TASK:
+ setStardustServiceTask((StardustServiceTaskType)null);
+ return;
+ case SdbpmnPackage.DOCUMENT_ROOT__STARDUST_START_EVENT:
+ setStardustStartEvent((StardustStartEventType)null);
+ return;
+ case SdbpmnPackage.DOCUMENT_ROOT__STARDUST_SUBPROCESS:
+ setStardustSubprocess((StardustSubprocessType)null);
+ return;
+ case SdbpmnPackage.DOCUMENT_ROOT__STARDUST_TIMER_START_EVENT:
+ setStardustTimerStartEvent((StardustTimerStartEventType)null);
+ return;
+ case SdbpmnPackage.DOCUMENT_ROOT__STARDUST_USER_TASK:
+ setStardustUserTask((StardustUserTaskType)null);
+ return;
+ case SdbpmnPackage.DOCUMENT_ROOT__AUTHOR:
+ setAuthor(AUTHOR_EDEFAULT);
+ return;
+ case SdbpmnPackage.DOCUMENT_ROOT__CARNOT_VERSION:
+ setCarnotVersion(CARNOT_VERSION_EDEFAULT);
+ return;
+ case SdbpmnPackage.DOCUMENT_ROOT__CREATED:
+ setCreated(CREATED_EDEFAULT);
+ return;
+ case SdbpmnPackage.DOCUMENT_ROOT__MODEL_OID:
+ setModelOID(MODEL_OID_EDEFAULT);
+ return;
+ case SdbpmnPackage.DOCUMENT_ROOT__OID:
+ unsetOid();
+ return;
+ case SdbpmnPackage.DOCUMENT_ROOT__VENDOR:
+ setVendor(VENDOR_EDEFAULT);
+ return;
+ }
+ super.eUnset(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public boolean eIsSet(int featureID) {
+ switch (featureID) {
+ case SdbpmnPackage.DOCUMENT_ROOT__MIXED:
+ return mixed != null && !mixed.isEmpty();
+ case SdbpmnPackage.DOCUMENT_ROOT__XMLNS_PREFIX_MAP:
+ return xMLNSPrefixMap != null && !xMLNSPrefixMap.isEmpty();
+ case SdbpmnPackage.DOCUMENT_ROOT__XSI_SCHEMA_LOCATION:
+ return xSISchemaLocation != null && !xSISchemaLocation.isEmpty();
+ case SdbpmnPackage.DOCUMENT_ROOT__STARDUST_ACTIVITY:
+ return getStardustActivity() != null;
+ case SdbpmnPackage.DOCUMENT_ROOT__STARDUST_ATTRIBUTES:
+ return getStardustAttributes() != null;
+ case SdbpmnPackage.DOCUMENT_ROOT__STARDUST_COMMON:
+ return getStardustCommon() != null;
+ case SdbpmnPackage.DOCUMENT_ROOT__STARDUST_MESSAGE_START_EVENT:
+ return getStardustMessageStartEvent() != null;
+ case SdbpmnPackage.DOCUMENT_ROOT__STARDUST_MODEL:
+ return getStardustModel() != null;
+ case SdbpmnPackage.DOCUMENT_ROOT__STARDUST_SEQENCE_FLOW:
+ return getStardustSeqenceFlow() != null;
+ case SdbpmnPackage.DOCUMENT_ROOT__STARDUST_SERVICE_TASK:
+ return getStardustServiceTask() != null;
+ case SdbpmnPackage.DOCUMENT_ROOT__STARDUST_START_EVENT:
+ return getStardustStartEvent() != null;
+ case SdbpmnPackage.DOCUMENT_ROOT__STARDUST_SUBPROCESS:
+ return getStardustSubprocess() != null;
+ case SdbpmnPackage.DOCUMENT_ROOT__STARDUST_TIMER_START_EVENT:
+ return getStardustTimerStartEvent() != null;
+ case SdbpmnPackage.DOCUMENT_ROOT__STARDUST_USER_TASK:
+ return getStardustUserTask() != null;
+ case SdbpmnPackage.DOCUMENT_ROOT__AUTHOR:
+ return AUTHOR_EDEFAULT == null ? author != null : !AUTHOR_EDEFAULT.equals(author);
+ case SdbpmnPackage.DOCUMENT_ROOT__CARNOT_VERSION:
+ return CARNOT_VERSION_EDEFAULT == null ? carnotVersion != null : !CARNOT_VERSION_EDEFAULT.equals(carnotVersion);
+ case SdbpmnPackage.DOCUMENT_ROOT__CREATED:
+ return CREATED_EDEFAULT == null ? created != null : !CREATED_EDEFAULT.equals(created);
+ case SdbpmnPackage.DOCUMENT_ROOT__MODEL_OID:
+ return MODEL_OID_EDEFAULT == null ? modelOID != null : !MODEL_OID_EDEFAULT.equals(modelOID);
+ case SdbpmnPackage.DOCUMENT_ROOT__OID:
+ return isSetOid();
+ case SdbpmnPackage.DOCUMENT_ROOT__VENDOR:
+ return VENDOR_EDEFAULT == null ? vendor != null : !VENDOR_EDEFAULT.equals(vendor);
+ }
+ return super.eIsSet(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public String toString() {
+ if (eIsProxy()) return super.toString();
+
+ StringBuffer result = new StringBuffer(super.toString());
+ result.append(" (mixed: ");
+ result.append(mixed);
+ result.append(", author: ");
+ result.append(author);
+ result.append(", carnotVersion: ");
+ result.append(carnotVersion);
+ result.append(", created: ");
+ result.append(created);
+ result.append(", modelOID: ");
+ result.append(modelOID);
+ result.append(", oid: ");
+ if (oidESet) result.append(oid); else result.append("<unset>");
+ result.append(", vendor: ");
+ result.append(vendor);
+ result.append(')');
+ return result.toString();
+ }
+
+} //DocumentRootImpl
diff --git a/model/org.eclipse.stardust.model.bpmn2/src/main/java/org/eclipse/stardust/model/bpmn2/sdbpmn/impl/SdbpmnFactoryImpl.java b/model/org.eclipse.stardust.model.bpmn2/src/main/java/org/eclipse/stardust/model/bpmn2/sdbpmn/impl/SdbpmnFactoryImpl.java new file mode 100644 index 0000000..b03964a --- a/dev/null +++ b/model/org.eclipse.stardust.model.bpmn2/src/main/java/org/eclipse/stardust/model/bpmn2/sdbpmn/impl/SdbpmnFactoryImpl.java @@ -0,0 +1,220 @@ +/**
+ * <copyright>
+ * </copyright>
+ *
+ * $Id$
+ */
+package org.eclipse.stardust.model.bpmn2.sdbpmn.impl;
+
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.EObject;
+import org.eclipse.emf.ecore.EPackage;
+
+import org.eclipse.emf.ecore.impl.EFactoryImpl;
+
+import org.eclipse.emf.ecore.plugin.EcorePlugin;
+
+import org.eclipse.stardust.model.bpmn2.sdbpmn.*;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model <b>Factory</b>.
+ * <!-- end-user-doc -->
+ * @generated
+ */
+public class SdbpmnFactoryImpl extends EFactoryImpl implements SdbpmnFactory {
+ /**
+ * Creates the default factory implementation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public static SdbpmnFactory init() {
+ try {
+ SdbpmnFactory theSdbpmnFactory = (SdbpmnFactory)EPackage.Registry.INSTANCE.getEFactory("http://www.eclipse.org/stardust/bpmn20/sdbpmn");
+ if (theSdbpmnFactory != null) {
+ return theSdbpmnFactory;
+ }
+ }
+ catch (Exception exception) {
+ EcorePlugin.INSTANCE.log(exception);
+ }
+ return new SdbpmnFactoryImpl();
+ }
+
+ /**
+ * Creates an instance of the factory.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public SdbpmnFactoryImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public EObject create(EClass eClass) {
+ switch (eClass.getClassifierID()) {
+ case SdbpmnPackage.DOCUMENT_ROOT: return createDocumentRoot();
+ case SdbpmnPackage.STARDUST_ATTRIBUTES_TYPE: return createStardustAttributesType();
+ case SdbpmnPackage.STARDUST_MESSAGE_START_EVENT_TYPE: return createStardustMessageStartEventType();
+ case SdbpmnPackage.STARDUST_MODEL_TYPE: return createStardustModelType();
+ case SdbpmnPackage.STARDUST_SEQENCE_FLOW_TYPE: return createStardustSeqenceFlowType();
+ case SdbpmnPackage.STARDUST_SERVICE_TASK_TYPE: return createStardustServiceTaskType();
+ case SdbpmnPackage.STARDUST_START_EVENT_TYPE: return createStardustStartEventType();
+ case SdbpmnPackage.STARDUST_SUBPROCESS_TYPE: return createStardustSubprocessType();
+ case SdbpmnPackage.STARDUST_TIMER_START_EVENT_TYPE: return createStardustTimerStartEventType();
+ case SdbpmnPackage.STARDUST_USER_TASK_TYPE: return createStardustUserTaskType();
+ case SdbpmnPackage.TSTARDUST_ACTIVITY: return createTStardustActivity();
+ case SdbpmnPackage.TSTARDUST_COMMON: return createTStardustCommon();
+ default:
+ throw new IllegalArgumentException("The class '" + eClass.getName() + "' is not a valid classifier");
+ }
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public DocumentRoot createDocumentRoot() {
+ DocumentRootImpl documentRoot = new DocumentRootImpl();
+ return documentRoot;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public StardustAttributesType createStardustAttributesType() {
+ StardustAttributesTypeImpl stardustAttributesType = new StardustAttributesTypeImpl();
+ return stardustAttributesType;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public StardustMessageStartEventType createStardustMessageStartEventType() {
+ StardustMessageStartEventTypeImpl stardustMessageStartEventType = new StardustMessageStartEventTypeImpl();
+ return stardustMessageStartEventType;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public StardustModelType createStardustModelType() {
+ StardustModelTypeImpl stardustModelType = new StardustModelTypeImpl();
+ return stardustModelType;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public StardustSeqenceFlowType createStardustSeqenceFlowType() {
+ StardustSeqenceFlowTypeImpl stardustSeqenceFlowType = new StardustSeqenceFlowTypeImpl();
+ return stardustSeqenceFlowType;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public StardustServiceTaskType createStardustServiceTaskType() {
+ StardustServiceTaskTypeImpl stardustServiceTaskType = new StardustServiceTaskTypeImpl();
+ return stardustServiceTaskType;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public StardustStartEventType createStardustStartEventType() {
+ StardustStartEventTypeImpl stardustStartEventType = new StardustStartEventTypeImpl();
+ return stardustStartEventType;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public StardustSubprocessType createStardustSubprocessType() {
+ StardustSubprocessTypeImpl stardustSubprocessType = new StardustSubprocessTypeImpl();
+ return stardustSubprocessType;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public StardustTimerStartEventType createStardustTimerStartEventType() {
+ StardustTimerStartEventTypeImpl stardustTimerStartEventType = new StardustTimerStartEventTypeImpl();
+ return stardustTimerStartEventType;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public StardustUserTaskType createStardustUserTaskType() {
+ StardustUserTaskTypeImpl stardustUserTaskType = new StardustUserTaskTypeImpl();
+ return stardustUserTaskType;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public TStardustActivity createTStardustActivity() {
+ TStardustActivityImpl tStardustActivity = new TStardustActivityImpl();
+ return tStardustActivity;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public TStardustCommon createTStardustCommon() {
+ TStardustCommonImpl tStardustCommon = new TStardustCommonImpl();
+ return tStardustCommon;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public SdbpmnPackage getSdbpmnPackage() {
+ return (SdbpmnPackage)getEPackage();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @deprecated
+ * @generated
+ */
+ @Deprecated
+ public static SdbpmnPackage getPackage() {
+ return SdbpmnPackage.eINSTANCE;
+ }
+
+} //SdbpmnFactoryImpl
diff --git a/model/org.eclipse.stardust.model.bpmn2/src/main/java/org/eclipse/stardust/model/bpmn2/sdbpmn/impl/SdbpmnPackageImpl.java b/model/org.eclipse.stardust.model.bpmn2/src/main/java/org/eclipse/stardust/model/bpmn2/sdbpmn/impl/SdbpmnPackageImpl.java new file mode 100644 index 0000000..cf28283 --- a/dev/null +++ b/model/org.eclipse.stardust.model.bpmn2/src/main/java/org/eclipse/stardust/model/bpmn2/sdbpmn/impl/SdbpmnPackageImpl.java @@ -0,0 +1,1288 @@ +/**
+ * <copyright>
+ * </copyright>
+ *
+ * $Id$
+ */
+package org.eclipse.stardust.model.bpmn2.sdbpmn.impl;
+
+import org.eclipse.emf.ecore.EAttribute;
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.EPackage;
+import org.eclipse.emf.ecore.EReference;
+
+import org.eclipse.emf.ecore.impl.EPackageImpl;
+
+import org.eclipse.emf.ecore.xml.type.XMLTypePackage;
+
+
+import org.eclipse.stardust.model.bpmn2.sdbpmn.DocumentRoot;
+import org.eclipse.stardust.model.bpmn2.sdbpmn.SdbpmnFactory;
+import org.eclipse.stardust.model.bpmn2.sdbpmn.SdbpmnPackage;
+import org.eclipse.stardust.model.bpmn2.sdbpmn.StardustAttributesType;
+import org.eclipse.stardust.model.bpmn2.sdbpmn.StardustMessageStartEventType;
+import org.eclipse.stardust.model.bpmn2.sdbpmn.StardustModelType;
+import org.eclipse.stardust.model.bpmn2.sdbpmn.StardustSeqenceFlowType;
+import org.eclipse.stardust.model.bpmn2.sdbpmn.StardustServiceTaskType;
+import org.eclipse.stardust.model.bpmn2.sdbpmn.StardustStartEventType;
+import org.eclipse.stardust.model.bpmn2.sdbpmn.StardustSubprocessType;
+import org.eclipse.stardust.model.bpmn2.sdbpmn.StardustTimerStartEventType;
+import org.eclipse.stardust.model.bpmn2.sdbpmn.StardustUserTaskType;
+import org.eclipse.stardust.model.bpmn2.sdbpmn.TStardustActivity;
+import org.eclipse.stardust.model.bpmn2.sdbpmn.TStardustCommon;
+import org.eclipse.stardust.model.xpdl.carnot.CarnotWorkflowModelPackage;
+
+import org.eclipse.stardust.model.xpdl.xpdl2.extensions.ExtensionPackage;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model <b>Package</b>.
+ * <!-- end-user-doc -->
+ * @generated
+ */
+public class SdbpmnPackageImpl extends EPackageImpl implements SdbpmnPackage {
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private EClass documentRootEClass = null;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private EClass stardustAttributesTypeEClass = null;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private EClass stardustMessageStartEventTypeEClass = null;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private EClass stardustModelTypeEClass = null;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private EClass stardustSeqenceFlowTypeEClass = null;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private EClass stardustServiceTaskTypeEClass = null;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private EClass stardustStartEventTypeEClass = null;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private EClass stardustSubprocessTypeEClass = null;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private EClass stardustTimerStartEventTypeEClass = null;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private EClass stardustUserTaskTypeEClass = null;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private EClass tStardustActivityEClass = null;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private EClass tStardustCommonEClass = null;
+
+ /**
+ * Creates an instance of the model <b>Package</b>, registered with
+ * {@link org.eclipse.emf.ecore.EPackage.Registry EPackage.Registry} by the package
+ * package URI value.
+ * <p>Note: the correct way to create the package is via the static
+ * factory method {@link #init init()}, which also performs
+ * initialization of the package, or returns the registered package,
+ * if one already exists.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.emf.ecore.EPackage.Registry
+ * @see org.eclipse.stardust.model.bpmn2.sdbpmn.SdbpmnPackage#eNS_URI
+ * @see #init()
+ * @generated
+ */
+ private SdbpmnPackageImpl() {
+ super(eNS_URI, SdbpmnFactory.eINSTANCE);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private static boolean isInited = false;
+
+ /**
+ * Creates, registers, and initializes the <b>Package</b> for this model, and for any others upon which it depends.
+ *
+ * <p>This method is used to initialize {@link SdbpmnPackage#eINSTANCE} when that field is accessed.
+ * Clients should not invoke it directly. Instead, they should simply access that field to obtain the package.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #eNS_URI
+ * @see #createPackageContents()
+ * @see #initializePackageContents()
+ * @generated
+ */
+ public static SdbpmnPackage init() {
+ if (isInited) return (SdbpmnPackage)EPackage.Registry.INSTANCE.getEPackage(SdbpmnPackage.eNS_URI);
+
+ // Obtain or create and register package
+ SdbpmnPackageImpl theSdbpmnPackage = (SdbpmnPackageImpl)(EPackage.Registry.INSTANCE.get(eNS_URI) instanceof SdbpmnPackageImpl ? EPackage.Registry.INSTANCE.get(eNS_URI) : new SdbpmnPackageImpl());
+
+ isInited = true;
+
+ // Initialize simple dependencies
+ CarnotWorkflowModelPackage.eINSTANCE.eClass();
+ ExtensionPackage.eINSTANCE.eClass();
+ XMLTypePackage.eINSTANCE.eClass();
+
+ // Create package meta-data objects
+ theSdbpmnPackage.createPackageContents();
+
+ // Initialize created meta-data
+ theSdbpmnPackage.initializePackageContents();
+
+ // Mark meta-data to indicate it can't be changed
+ theSdbpmnPackage.freeze();
+
+
+ // Update the registry and return the package
+ EPackage.Registry.INSTANCE.put(SdbpmnPackage.eNS_URI, theSdbpmnPackage);
+ return theSdbpmnPackage;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EClass getDocumentRoot() {
+ return documentRootEClass;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EAttribute getDocumentRoot_Mixed() {
+ return (EAttribute)documentRootEClass.getEStructuralFeatures().get(0);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EReference getDocumentRoot_XMLNSPrefixMap() {
+ return (EReference)documentRootEClass.getEStructuralFeatures().get(1);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EReference getDocumentRoot_XSISchemaLocation() {
+ return (EReference)documentRootEClass.getEStructuralFeatures().get(2);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EReference getDocumentRoot_StardustActivity() {
+ return (EReference)documentRootEClass.getEStructuralFeatures().get(3);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EReference getDocumentRoot_StardustAttributes() {
+ return (EReference)documentRootEClass.getEStructuralFeatures().get(4);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EReference getDocumentRoot_StardustCommon() {
+ return (EReference)documentRootEClass.getEStructuralFeatures().get(5);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EReference getDocumentRoot_StardustMessageStartEvent() {
+ return (EReference)documentRootEClass.getEStructuralFeatures().get(6);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EReference getDocumentRoot_StardustModel() {
+ return (EReference)documentRootEClass.getEStructuralFeatures().get(7);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EReference getDocumentRoot_StardustSeqenceFlow() {
+ return (EReference)documentRootEClass.getEStructuralFeatures().get(8);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EReference getDocumentRoot_StardustServiceTask() {
+ return (EReference)documentRootEClass.getEStructuralFeatures().get(9);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EReference getDocumentRoot_StardustStartEvent() {
+ return (EReference)documentRootEClass.getEStructuralFeatures().get(10);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EReference getDocumentRoot_StardustSubprocess() {
+ return (EReference)documentRootEClass.getEStructuralFeatures().get(11);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EReference getDocumentRoot_StardustTimerStartEvent() {
+ return (EReference)documentRootEClass.getEStructuralFeatures().get(12);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EReference getDocumentRoot_StardustUserTask() {
+ return (EReference)documentRootEClass.getEStructuralFeatures().get(13);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EAttribute getDocumentRoot_Author() {
+ return (EAttribute)documentRootEClass.getEStructuralFeatures().get(14);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EAttribute getDocumentRoot_CarnotVersion() {
+ return (EAttribute)documentRootEClass.getEStructuralFeatures().get(15);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EAttribute getDocumentRoot_Created() {
+ return (EAttribute)documentRootEClass.getEStructuralFeatures().get(16);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EAttribute getDocumentRoot_ModelOID() {
+ return (EAttribute)documentRootEClass.getEStructuralFeatures().get(17);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EAttribute getDocumentRoot_Oid() {
+ return (EAttribute)documentRootEClass.getEStructuralFeatures().get(18);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EAttribute getDocumentRoot_Vendor() {
+ return (EAttribute)documentRootEClass.getEStructuralFeatures().get(19);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EClass getStardustAttributesType() {
+ return stardustAttributesTypeEClass;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EReference getStardustAttributesType_AttributeType() {
+ return (EReference)stardustAttributesTypeEClass.getEStructuralFeatures().get(0);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EClass getStardustMessageStartEventType() {
+ return stardustMessageStartEventTypeEClass;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EReference getStardustMessageStartEventType_StardustAttributes() {
+ return (EReference)stardustMessageStartEventTypeEClass.getEStructuralFeatures().get(0);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EReference getStardustMessageStartEventType_AccessPoint() {
+ return (EReference)stardustMessageStartEventTypeEClass.getEStructuralFeatures().get(1);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EReference getStardustMessageStartEventType_ParameterMapping() {
+ return (EReference)stardustMessageStartEventTypeEClass.getEStructuralFeatures().get(2);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EAttribute getStardustMessageStartEventType_Type() {
+ return (EAttribute)stardustMessageStartEventTypeEClass.getEStructuralFeatures().get(3);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EClass getStardustModelType() {
+ return stardustModelTypeEClass;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EAttribute getStardustModelType_Author() {
+ return (EAttribute)stardustModelTypeEClass.getEStructuralFeatures().get(0);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EAttribute getStardustModelType_CarnotVersion() {
+ return (EAttribute)stardustModelTypeEClass.getEStructuralFeatures().get(1);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EAttribute getStardustModelType_Created() {
+ return (EAttribute)stardustModelTypeEClass.getEStructuralFeatures().get(2);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EAttribute getStardustModelType_ModelOID() {
+ return (EAttribute)stardustModelTypeEClass.getEStructuralFeatures().get(3);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EAttribute getStardustModelType_Oid() {
+ return (EAttribute)stardustModelTypeEClass.getEStructuralFeatures().get(4);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EAttribute getStardustModelType_Vendor() {
+ return (EAttribute)stardustModelTypeEClass.getEStructuralFeatures().get(5);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EClass getStardustSeqenceFlowType() {
+ return stardustSeqenceFlowTypeEClass;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EAttribute getStardustSeqenceFlowType_ForkOnTraversal() {
+ return (EAttribute)stardustSeqenceFlowTypeEClass.getEStructuralFeatures().get(0);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EClass getStardustServiceTaskType() {
+ return stardustServiceTaskTypeEClass;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EAttribute getStardustServiceTaskType_Application() {
+ return (EAttribute)stardustServiceTaskTypeEClass.getEStructuralFeatures().get(0);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EClass getStardustStartEventType() {
+ return stardustStartEventTypeEClass;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EReference getStardustStartEventType_StardustAttributes() {
+ return (EReference)stardustStartEventTypeEClass.getEStructuralFeatures().get(0);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EClass getStardustSubprocessType() {
+ return stardustSubprocessTypeEClass;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EAttribute getStardustSubprocessType_ImplementationProcess() {
+ return (EAttribute)stardustSubprocessTypeEClass.getEStructuralFeatures().get(0);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EClass getStardustTimerStartEventType() {
+ return stardustTimerStartEventTypeEClass;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EReference getStardustTimerStartEventType_StardustAttributes() {
+ return (EReference)stardustTimerStartEventTypeEClass.getEStructuralFeatures().get(0);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EClass getStardustUserTaskType() {
+ return stardustUserTaskTypeEClass;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EAttribute getStardustUserTaskType_AllowsAbortByPerformer() {
+ return (EAttribute)stardustUserTaskTypeEClass.getEStructuralFeatures().get(0);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EClass getTStardustActivity() {
+ return tStardustActivityEClass;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EReference getTStardustActivity_EventHandler() {
+ return (EReference)tStardustActivityEClass.getEStructuralFeatures().get(0);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EReference getTStardustActivity_DataMapping() {
+ return (EReference)tStardustActivityEClass.getEStructuralFeatures().get(1);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EAttribute getTStardustActivity_HibernateOnCreation() {
+ return (EAttribute)tStardustActivityEClass.getEStructuralFeatures().get(2);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EClass getTStardustCommon() {
+ return tStardustCommonEClass;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EAttribute getTStardustCommon_ElementOid() {
+ return (EAttribute)tStardustCommonEClass.getEStructuralFeatures().get(0);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public SdbpmnFactory getSdbpmnFactory() {
+ return (SdbpmnFactory)getEFactoryInstance();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private boolean isCreated = false;
+
+ /**
+ * Creates the meta-model objects for the package. This method is
+ * guarded to have no affect on any invocation but its first.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void createPackageContents() {
+ if (isCreated) return;
+ isCreated = true;
+
+ // Create classes and their features
+ documentRootEClass = createEClass(DOCUMENT_ROOT);
+ createEAttribute(documentRootEClass, DOCUMENT_ROOT__MIXED);
+ createEReference(documentRootEClass, DOCUMENT_ROOT__XMLNS_PREFIX_MAP);
+ createEReference(documentRootEClass, DOCUMENT_ROOT__XSI_SCHEMA_LOCATION);
+ createEReference(documentRootEClass, DOCUMENT_ROOT__STARDUST_ACTIVITY);
+ createEReference(documentRootEClass, DOCUMENT_ROOT__STARDUST_ATTRIBUTES);
+ createEReference(documentRootEClass, DOCUMENT_ROOT__STARDUST_COMMON);
+ createEReference(documentRootEClass, DOCUMENT_ROOT__STARDUST_MESSAGE_START_EVENT);
+ createEReference(documentRootEClass, DOCUMENT_ROOT__STARDUST_MODEL);
+ createEReference(documentRootEClass, DOCUMENT_ROOT__STARDUST_SEQENCE_FLOW);
+ createEReference(documentRootEClass, DOCUMENT_ROOT__STARDUST_SERVICE_TASK);
+ createEReference(documentRootEClass, DOCUMENT_ROOT__STARDUST_START_EVENT);
+ createEReference(documentRootEClass, DOCUMENT_ROOT__STARDUST_SUBPROCESS);
+ createEReference(documentRootEClass, DOCUMENT_ROOT__STARDUST_TIMER_START_EVENT);
+ createEReference(documentRootEClass, DOCUMENT_ROOT__STARDUST_USER_TASK);
+ createEAttribute(documentRootEClass, DOCUMENT_ROOT__AUTHOR);
+ createEAttribute(documentRootEClass, DOCUMENT_ROOT__CARNOT_VERSION);
+ createEAttribute(documentRootEClass, DOCUMENT_ROOT__CREATED);
+ createEAttribute(documentRootEClass, DOCUMENT_ROOT__MODEL_OID);
+ createEAttribute(documentRootEClass, DOCUMENT_ROOT__OID);
+ createEAttribute(documentRootEClass, DOCUMENT_ROOT__VENDOR);
+
+ stardustAttributesTypeEClass = createEClass(STARDUST_ATTRIBUTES_TYPE);
+ createEReference(stardustAttributesTypeEClass, STARDUST_ATTRIBUTES_TYPE__ATTRIBUTE_TYPE);
+
+ stardustMessageStartEventTypeEClass = createEClass(STARDUST_MESSAGE_START_EVENT_TYPE);
+ createEReference(stardustMessageStartEventTypeEClass, STARDUST_MESSAGE_START_EVENT_TYPE__STARDUST_ATTRIBUTES);
+ createEReference(stardustMessageStartEventTypeEClass, STARDUST_MESSAGE_START_EVENT_TYPE__ACCESS_POINT);
+ createEReference(stardustMessageStartEventTypeEClass, STARDUST_MESSAGE_START_EVENT_TYPE__PARAMETER_MAPPING);
+ createEAttribute(stardustMessageStartEventTypeEClass, STARDUST_MESSAGE_START_EVENT_TYPE__TYPE);
+
+ stardustModelTypeEClass = createEClass(STARDUST_MODEL_TYPE);
+ createEAttribute(stardustModelTypeEClass, STARDUST_MODEL_TYPE__AUTHOR);
+ createEAttribute(stardustModelTypeEClass, STARDUST_MODEL_TYPE__CARNOT_VERSION);
+ createEAttribute(stardustModelTypeEClass, STARDUST_MODEL_TYPE__CREATED);
+ createEAttribute(stardustModelTypeEClass, STARDUST_MODEL_TYPE__MODEL_OID);
+ createEAttribute(stardustModelTypeEClass, STARDUST_MODEL_TYPE__OID);
+ createEAttribute(stardustModelTypeEClass, STARDUST_MODEL_TYPE__VENDOR);
+
+ stardustSeqenceFlowTypeEClass = createEClass(STARDUST_SEQENCE_FLOW_TYPE);
+ createEAttribute(stardustSeqenceFlowTypeEClass, STARDUST_SEQENCE_FLOW_TYPE__FORK_ON_TRAVERSAL);
+
+ stardustServiceTaskTypeEClass = createEClass(STARDUST_SERVICE_TASK_TYPE);
+ createEAttribute(stardustServiceTaskTypeEClass, STARDUST_SERVICE_TASK_TYPE__APPLICATION);
+
+ stardustStartEventTypeEClass = createEClass(STARDUST_START_EVENT_TYPE);
+ createEReference(stardustStartEventTypeEClass, STARDUST_START_EVENT_TYPE__STARDUST_ATTRIBUTES);
+
+ stardustSubprocessTypeEClass = createEClass(STARDUST_SUBPROCESS_TYPE);
+ createEAttribute(stardustSubprocessTypeEClass, STARDUST_SUBPROCESS_TYPE__IMPLEMENTATION_PROCESS);
+
+ stardustTimerStartEventTypeEClass = createEClass(STARDUST_TIMER_START_EVENT_TYPE);
+ createEReference(stardustTimerStartEventTypeEClass, STARDUST_TIMER_START_EVENT_TYPE__STARDUST_ATTRIBUTES);
+
+ stardustUserTaskTypeEClass = createEClass(STARDUST_USER_TASK_TYPE);
+ createEAttribute(stardustUserTaskTypeEClass, STARDUST_USER_TASK_TYPE__ALLOWS_ABORT_BY_PERFORMER);
+
+ tStardustActivityEClass = createEClass(TSTARDUST_ACTIVITY);
+ createEReference(tStardustActivityEClass, TSTARDUST_ACTIVITY__EVENT_HANDLER);
+ createEReference(tStardustActivityEClass, TSTARDUST_ACTIVITY__DATA_MAPPING);
+ createEAttribute(tStardustActivityEClass, TSTARDUST_ACTIVITY__HIBERNATE_ON_CREATION);
+
+ tStardustCommonEClass = createEClass(TSTARDUST_COMMON);
+ createEAttribute(tStardustCommonEClass, TSTARDUST_COMMON__ELEMENT_OID);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private boolean isInitialized = false;
+
+ /**
+ * Complete the initialization of the package and its meta-model. This
+ * method is guarded to have no affect on any invocation but its first.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void initializePackageContents() {
+ if (isInitialized) return;
+ isInitialized = true;
+
+ // Initialize package
+ setName(eNAME);
+ setNsPrefix(eNS_PREFIX);
+ setNsURI(eNS_URI);
+
+ // Obtain other dependent packages
+ XMLTypePackage theXMLTypePackage = (XMLTypePackage)EPackage.Registry.INSTANCE.getEPackage(XMLTypePackage.eNS_URI);
+ CarnotWorkflowModelPackage theCarnotWorkflowModelPackage = (CarnotWorkflowModelPackage)EPackage.Registry.INSTANCE.getEPackage(CarnotWorkflowModelPackage.eNS_URI);
+
+ // Create type parameters
+
+ // Set bounds for type parameters
+
+ // Add supertypes to classes
+ stardustServiceTaskTypeEClass.getESuperTypes().add(this.getTStardustActivity());
+ stardustSubprocessTypeEClass.getESuperTypes().add(this.getTStardustActivity());
+ stardustUserTaskTypeEClass.getESuperTypes().add(this.getTStardustActivity());
+ tStardustActivityEClass.getESuperTypes().add(this.getTStardustCommon());
+
+ // Initialize classes and features; add operations and parameters
+ initEClass(documentRootEClass, DocumentRoot.class, "DocumentRoot", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
+ initEAttribute(getDocumentRoot_Mixed(), ecorePackage.getEFeatureMapEntry(), "mixed", null, 0, -1, null, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, !IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+ initEReference(getDocumentRoot_XMLNSPrefixMap(), ecorePackage.getEStringToStringMapEntry(), null, "xMLNSPrefixMap", null, 0, -1, null, IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+ initEReference(getDocumentRoot_XSISchemaLocation(), ecorePackage.getEStringToStringMapEntry(), null, "xSISchemaLocation", null, 0, -1, null, IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+ initEReference(getDocumentRoot_StardustActivity(), this.getTStardustActivity(), null, "stardustActivity", null, 0, -2, null, IS_TRANSIENT, IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, IS_DERIVED, IS_ORDERED);
+ initEReference(getDocumentRoot_StardustAttributes(), this.getStardustAttributesType(), null, "stardustAttributes", null, 0, -2, null, IS_TRANSIENT, IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, IS_DERIVED, IS_ORDERED);
+ initEReference(getDocumentRoot_StardustCommon(), this.getTStardustCommon(), null, "stardustCommon", null, 0, -2, null, IS_TRANSIENT, IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, IS_DERIVED, IS_ORDERED);
+ initEReference(getDocumentRoot_StardustMessageStartEvent(), this.getStardustMessageStartEventType(), null, "stardustMessageStartEvent", null, 0, -2, null, IS_TRANSIENT, IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, IS_DERIVED, IS_ORDERED);
+ initEReference(getDocumentRoot_StardustModel(), this.getStardustModelType(), null, "stardustModel", null, 0, -2, null, IS_TRANSIENT, IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, IS_DERIVED, IS_ORDERED);
+ initEReference(getDocumentRoot_StardustSeqenceFlow(), this.getStardustSeqenceFlowType(), null, "stardustSeqenceFlow", null, 0, -2, null, IS_TRANSIENT, IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, IS_DERIVED, IS_ORDERED);
+ initEReference(getDocumentRoot_StardustServiceTask(), this.getStardustServiceTaskType(), null, "stardustServiceTask", null, 0, -2, null, IS_TRANSIENT, IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, IS_DERIVED, IS_ORDERED);
+ initEReference(getDocumentRoot_StardustStartEvent(), this.getStardustStartEventType(), null, "stardustStartEvent", null, 0, -2, null, IS_TRANSIENT, IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, IS_DERIVED, IS_ORDERED);
+ initEReference(getDocumentRoot_StardustSubprocess(), this.getStardustSubprocessType(), null, "stardustSubprocess", null, 0, -2, null, IS_TRANSIENT, IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, IS_DERIVED, IS_ORDERED);
+ initEReference(getDocumentRoot_StardustTimerStartEvent(), this.getStardustTimerStartEventType(), null, "stardustTimerStartEvent", null, 0, -2, null, IS_TRANSIENT, IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, IS_DERIVED, IS_ORDERED);
+ initEReference(getDocumentRoot_StardustUserTask(), this.getStardustUserTaskType(), null, "stardustUserTask", null, 0, -2, null, IS_TRANSIENT, IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, IS_DERIVED, IS_ORDERED);
+ initEAttribute(getDocumentRoot_Author(), theXMLTypePackage.getString(), "author", null, 0, 1, null, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+ initEAttribute(getDocumentRoot_CarnotVersion(), theXMLTypePackage.getString(), "carnotVersion", null, 0, 1, null, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+ initEAttribute(getDocumentRoot_Created(), theXMLTypePackage.getDateTime(), "created", null, 0, 1, null, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+ initEAttribute(getDocumentRoot_ModelOID(), theXMLTypePackage.getInteger(), "modelOID", null, 0, 1, null, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+ initEAttribute(getDocumentRoot_Oid(), theXMLTypePackage.getLong(), "oid", null, 0, 1, null, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+ initEAttribute(getDocumentRoot_Vendor(), theXMLTypePackage.getString(), "vendor", null, 0, 1, null, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+
+ initEClass(stardustAttributesTypeEClass, StardustAttributesType.class, "StardustAttributesType", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
+ initEReference(getStardustAttributesType_AttributeType(), theCarnotWorkflowModelPackage.getAttributeType(), null, "attributeType", null, 0, -1, StardustAttributesType.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+
+ initEClass(stardustMessageStartEventTypeEClass, StardustMessageStartEventType.class, "StardustMessageStartEventType", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
+ initEReference(getStardustMessageStartEventType_StardustAttributes(), this.getStardustAttributesType(), null, "stardustAttributes", null, 1, 1, StardustMessageStartEventType.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+ initEReference(getStardustMessageStartEventType_AccessPoint(), theCarnotWorkflowModelPackage.getAccessPointType(), null, "accessPoint", null, 0, -1, StardustMessageStartEventType.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+ initEReference(getStardustMessageStartEventType_ParameterMapping(), theCarnotWorkflowModelPackage.getParameterMappingType(), null, "parameterMapping", null, 0, -1, StardustMessageStartEventType.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+ initEAttribute(getStardustMessageStartEventType_Type(), theXMLTypePackage.getString(), "type", null, 0, 1, StardustMessageStartEventType.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+
+ initEClass(stardustModelTypeEClass, StardustModelType.class, "StardustModelType", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
+ initEAttribute(getStardustModelType_Author(), theXMLTypePackage.getString(), "author", null, 0, 1, StardustModelType.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+ initEAttribute(getStardustModelType_CarnotVersion(), theXMLTypePackage.getString(), "carnotVersion", null, 0, 1, StardustModelType.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+ initEAttribute(getStardustModelType_Created(), theXMLTypePackage.getDateTime(), "created", null, 0, 1, StardustModelType.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+ initEAttribute(getStardustModelType_ModelOID(), theXMLTypePackage.getInteger(), "modelOID", null, 0, 1, StardustModelType.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+ initEAttribute(getStardustModelType_Oid(), theXMLTypePackage.getLong(), "oid", null, 0, 1, StardustModelType.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+ initEAttribute(getStardustModelType_Vendor(), theXMLTypePackage.getString(), "vendor", null, 0, 1, StardustModelType.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+
+ initEClass(stardustSeqenceFlowTypeEClass, StardustSeqenceFlowType.class, "StardustSeqenceFlowType", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
+ initEAttribute(getStardustSeqenceFlowType_ForkOnTraversal(), theXMLTypePackage.getBoolean(), "forkOnTraversal", "false", 0, 1, StardustSeqenceFlowType.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+
+ initEClass(stardustServiceTaskTypeEClass, StardustServiceTaskType.class, "StardustServiceTaskType", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
+ initEAttribute(getStardustServiceTaskType_Application(), theXMLTypePackage.getString(), "application", null, 0, 1, StardustServiceTaskType.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+
+ initEClass(stardustStartEventTypeEClass, StardustStartEventType.class, "StardustStartEventType", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
+ initEReference(getStardustStartEventType_StardustAttributes(), this.getStardustAttributesType(), null, "stardustAttributes", null, 1, 1, StardustStartEventType.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+
+ initEClass(stardustSubprocessTypeEClass, StardustSubprocessType.class, "StardustSubprocessType", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
+ initEAttribute(getStardustSubprocessType_ImplementationProcess(), theXMLTypePackage.getString(), "implementationProcess", null, 0, 1, StardustSubprocessType.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+
+ initEClass(stardustTimerStartEventTypeEClass, StardustTimerStartEventType.class, "StardustTimerStartEventType", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
+ initEReference(getStardustTimerStartEventType_StardustAttributes(), this.getStardustAttributesType(), null, "stardustAttributes", null, 1, 1, StardustTimerStartEventType.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+
+ initEClass(stardustUserTaskTypeEClass, StardustUserTaskType.class, "StardustUserTaskType", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
+ initEAttribute(getStardustUserTaskType_AllowsAbortByPerformer(), theXMLTypePackage.getBoolean(), "allowsAbortByPerformer", null, 0, 1, StardustUserTaskType.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+
+ initEClass(tStardustActivityEClass, TStardustActivity.class, "TStardustActivity", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
+ initEReference(getTStardustActivity_EventHandler(), theCarnotWorkflowModelPackage.getEventHandlerType(), null, "eventHandler", null, 0, -1, TStardustActivity.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+ initEReference(getTStardustActivity_DataMapping(), theCarnotWorkflowModelPackage.getDataMappingType(), null, "dataMapping", null, 0, -1, TStardustActivity.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+ initEAttribute(getTStardustActivity_HibernateOnCreation(), theXMLTypePackage.getBoolean(), "hibernateOnCreation", null, 0, 1, TStardustActivity.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+
+ initEClass(tStardustCommonEClass, TStardustCommon.class, "TStardustCommon", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
+ initEAttribute(getTStardustCommon_ElementOid(), theXMLTypePackage.getString(), "elementOid", null, 1, 1, TStardustCommon.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+
+ // Create resource
+ createResource(eNS_URI);
+
+ // Create annotations
+ // http:///org/eclipse/emf/ecore/util/ExtendedMetaData
+ createExtendedMetaDataAnnotations();
+ }
+
+ /**
+ * Initializes the annotations for <b>http:///org/eclipse/emf/ecore/util/ExtendedMetaData</b>.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected void createExtendedMetaDataAnnotations() {
+ String source = "http:///org/eclipse/emf/ecore/util/ExtendedMetaData";
+ addAnnotation
+ (documentRootEClass,
+ source,
+ new String[] {
+ "name", "",
+ "kind", "mixed"
+ });
+ addAnnotation
+ (getDocumentRoot_Mixed(),
+ source,
+ new String[] {
+ "kind", "elementWildcard",
+ "name", ":mixed"
+ });
+ addAnnotation
+ (getDocumentRoot_XMLNSPrefixMap(),
+ source,
+ new String[] {
+ "kind", "attribute",
+ "name", "xmlns:prefix"
+ });
+ addAnnotation
+ (getDocumentRoot_XSISchemaLocation(),
+ source,
+ new String[] {
+ "kind", "attribute",
+ "name", "xsi:schemaLocation"
+ });
+ addAnnotation
+ (getDocumentRoot_StardustActivity(),
+ source,
+ new String[] {
+ "kind", "element",
+ "name", "StardustActivity",
+ "namespace", "##targetNamespace"
+ });
+ addAnnotation
+ (getDocumentRoot_StardustAttributes(),
+ source,
+ new String[] {
+ "kind", "element",
+ "name", "StardustAttributes",
+ "namespace", "##targetNamespace"
+ });
+ addAnnotation
+ (getDocumentRoot_StardustCommon(),
+ source,
+ new String[] {
+ "kind", "element",
+ "name", "StardustCommon",
+ "namespace", "##targetNamespace"
+ });
+ addAnnotation
+ (getDocumentRoot_StardustMessageStartEvent(),
+ source,
+ new String[] {
+ "kind", "element",
+ "name", "StardustMessageStartEvent",
+ "namespace", "##targetNamespace"
+ });
+ addAnnotation
+ (getDocumentRoot_StardustModel(),
+ source,
+ new String[] {
+ "kind", "element",
+ "name", "StardustModel",
+ "namespace", "##targetNamespace"
+ });
+ addAnnotation
+ (getDocumentRoot_StardustSeqenceFlow(),
+ source,
+ new String[] {
+ "kind", "element",
+ "name", "StardustSeqenceFlow",
+ "namespace", "##targetNamespace"
+ });
+ addAnnotation
+ (getDocumentRoot_StardustServiceTask(),
+ source,
+ new String[] {
+ "kind", "element",
+ "name", "StardustServiceTask",
+ "namespace", "##targetNamespace"
+ });
+ addAnnotation
+ (getDocumentRoot_StardustStartEvent(),
+ source,
+ new String[] {
+ "kind", "element",
+ "name", "StardustStartEvent",
+ "namespace", "##targetNamespace"
+ });
+ addAnnotation
+ (getDocumentRoot_StardustSubprocess(),
+ source,
+ new String[] {
+ "kind", "element",
+ "name", "StardustSubprocess",
+ "namespace", "##targetNamespace"
+ });
+ addAnnotation
+ (getDocumentRoot_StardustTimerStartEvent(),
+ source,
+ new String[] {
+ "kind", "element",
+ "name", "StardustTimerStartEvent",
+ "namespace", "##targetNamespace"
+ });
+ addAnnotation
+ (getDocumentRoot_StardustUserTask(),
+ source,
+ new String[] {
+ "kind", "element",
+ "name", "StardustUserTask",
+ "namespace", "##targetNamespace"
+ });
+ addAnnotation
+ (getDocumentRoot_Author(),
+ source,
+ new String[] {
+ "kind", "attribute",
+ "name", "author",
+ "namespace", "##targetNamespace"
+ });
+ addAnnotation
+ (getDocumentRoot_CarnotVersion(),
+ source,
+ new String[] {
+ "kind", "attribute",
+ "name", "carnotVersion",
+ "namespace", "##targetNamespace"
+ });
+ addAnnotation
+ (getDocumentRoot_Created(),
+ source,
+ new String[] {
+ "kind", "attribute",
+ "name", "created",
+ "namespace", "##targetNamespace"
+ });
+ addAnnotation
+ (getDocumentRoot_ModelOID(),
+ source,
+ new String[] {
+ "kind", "attribute",
+ "name", "modelOID",
+ "namespace", "##targetNamespace"
+ });
+ addAnnotation
+ (getDocumentRoot_Oid(),
+ source,
+ new String[] {
+ "kind", "attribute",
+ "name", "oid",
+ "namespace", "##targetNamespace"
+ });
+ addAnnotation
+ (getDocumentRoot_Vendor(),
+ source,
+ new String[] {
+ "kind", "attribute",
+ "name", "vendor",
+ "namespace", "##targetNamespace"
+ });
+ addAnnotation
+ (stardustAttributesTypeEClass,
+ source,
+ new String[] {
+ "name", "StardustAttributes_._type",
+ "kind", "elementOnly"
+ });
+ addAnnotation
+ (getStardustAttributesType_AttributeType(),
+ source,
+ new String[] {
+ "kind", "element",
+ "name", "AttributeType",
+ "namespace", "http://www.carnot.ag/workflowmodel/3.1"
+ });
+ addAnnotation
+ (stardustMessageStartEventTypeEClass,
+ source,
+ new String[] {
+ "name", "StardustMessageStartEvent_._type",
+ "kind", "elementOnly"
+ });
+ addAnnotation
+ (getStardustMessageStartEventType_StardustAttributes(),
+ source,
+ new String[] {
+ "kind", "element",
+ "name", "StardustAttributes",
+ "namespace", "##targetNamespace"
+ });
+ addAnnotation
+ (getStardustMessageStartEventType_AccessPoint(),
+ source,
+ new String[] {
+ "kind", "element",
+ "name", "accessPoint",
+ "namespace", "##targetNamespace"
+ });
+ addAnnotation
+ (getStardustMessageStartEventType_ParameterMapping(),
+ source,
+ new String[] {
+ "kind", "element",
+ "name", "parameterMapping",
+ "namespace", "##targetNamespace"
+ });
+ addAnnotation
+ (getStardustMessageStartEventType_Type(),
+ source,
+ new String[] {
+ "kind", "attribute",
+ "name", "type"
+ });
+ addAnnotation
+ (stardustModelTypeEClass,
+ source,
+ new String[] {
+ "name", "StardustModel_._type",
+ "kind", "empty"
+ });
+ addAnnotation
+ (getStardustModelType_Author(),
+ source,
+ new String[] {
+ "kind", "attribute",
+ "name", "author",
+ "namespace", "##targetNamespace"
+ });
+ addAnnotation
+ (getStardustModelType_CarnotVersion(),
+ source,
+ new String[] {
+ "kind", "attribute",
+ "name", "carnotVersion",
+ "namespace", "##targetNamespace"
+ });
+ addAnnotation
+ (getStardustModelType_Created(),
+ source,
+ new String[] {
+ "kind", "attribute",
+ "name", "created",
+ "namespace", "##targetNamespace"
+ });
+ addAnnotation
+ (getStardustModelType_ModelOID(),
+ source,
+ new String[] {
+ "kind", "attribute",
+ "name", "modelOID",
+ "namespace", "##targetNamespace"
+ });
+ addAnnotation
+ (getStardustModelType_Oid(),
+ source,
+ new String[] {
+ "kind", "attribute",
+ "name", "oid",
+ "namespace", "##targetNamespace"
+ });
+ addAnnotation
+ (getStardustModelType_Vendor(),
+ source,
+ new String[] {
+ "kind", "attribute",
+ "name", "vendor",
+ "namespace", "##targetNamespace"
+ });
+ addAnnotation
+ (stardustSeqenceFlowTypeEClass,
+ source,
+ new String[] {
+ "name", "StardustSeqenceFlow_._type",
+ "kind", "empty"
+ });
+ addAnnotation
+ (getStardustSeqenceFlowType_ForkOnTraversal(),
+ source,
+ new String[] {
+ "kind", "attribute",
+ "name", "forkOnTraversal"
+ });
+ addAnnotation
+ (stardustServiceTaskTypeEClass,
+ source,
+ new String[] {
+ "name", "StardustServiceTask_._type",
+ "kind", "elementOnly"
+ });
+ addAnnotation
+ (getStardustServiceTaskType_Application(),
+ source,
+ new String[] {
+ "kind", "attribute",
+ "name", "application"
+ });
+ addAnnotation
+ (stardustStartEventTypeEClass,
+ source,
+ new String[] {
+ "name", "StardustStartEvent_._type",
+ "kind", "elementOnly"
+ });
+ addAnnotation
+ (getStardustStartEventType_StardustAttributes(),
+ source,
+ new String[] {
+ "kind", "element",
+ "name", "StardustAttributes",
+ "namespace", "##targetNamespace"
+ });
+ addAnnotation
+ (stardustSubprocessTypeEClass,
+ source,
+ new String[] {
+ "name", "StardustSubprocess_._type",
+ "kind", "elementOnly"
+ });
+ addAnnotation
+ (getStardustSubprocessType_ImplementationProcess(),
+ source,
+ new String[] {
+ "kind", "attribute",
+ "name", "implementationProcess"
+ });
+ addAnnotation
+ (stardustTimerStartEventTypeEClass,
+ source,
+ new String[] {
+ "name", "StardustTimerStartEvent_._type",
+ "kind", "elementOnly"
+ });
+ addAnnotation
+ (getStardustTimerStartEventType_StardustAttributes(),
+ source,
+ new String[] {
+ "kind", "element",
+ "name", "StardustAttributes",
+ "namespace", "##targetNamespace"
+ });
+ addAnnotation
+ (stardustUserTaskTypeEClass,
+ source,
+ new String[] {
+ "name", "StardustUserTask_._type",
+ "kind", "elementOnly"
+ });
+ addAnnotation
+ (getStardustUserTaskType_AllowsAbortByPerformer(),
+ source,
+ new String[] {
+ "kind", "attribute",
+ "name", "allowsAbortByPerformer"
+ });
+ addAnnotation
+ (tStardustActivityEClass,
+ source,
+ new String[] {
+ "name", "tStardustActivity",
+ "kind", "elementOnly"
+ });
+ addAnnotation
+ (getTStardustActivity_EventHandler(),
+ source,
+ new String[] {
+ "kind", "element",
+ "name", "eventHandler",
+ "namespace", "##targetNamespace"
+ });
+ addAnnotation
+ (getTStardustActivity_DataMapping(),
+ source,
+ new String[] {
+ "kind", "element",
+ "name", "dataMapping",
+ "namespace", "##targetNamespace"
+ });
+ addAnnotation
+ (getTStardustActivity_HibernateOnCreation(),
+ source,
+ new String[] {
+ "kind", "attribute",
+ "name", "hibernateOnCreation"
+ });
+ addAnnotation
+ (tStardustCommonEClass,
+ source,
+ new String[] {
+ "name", "tStardustCommon",
+ "kind", "empty"
+ });
+ addAnnotation
+ (getTStardustCommon_ElementOid(),
+ source,
+ new String[] {
+ "kind", "attribute",
+ "name", "elementOid"
+ });
+ }
+
+} //SdbpmnPackageImpl
diff --git a/model/org.eclipse.stardust.model.bpmn2/src/main/java/org/eclipse/stardust/model/bpmn2/sdbpmn/impl/StardustAttributesTypeImpl.java b/model/org.eclipse.stardust.model.bpmn2/src/main/java/org/eclipse/stardust/model/bpmn2/sdbpmn/impl/StardustAttributesTypeImpl.java new file mode 100644 index 0000000..f79c7cd --- a/dev/null +++ b/model/org.eclipse.stardust.model.bpmn2/src/main/java/org/eclipse/stardust/model/bpmn2/sdbpmn/impl/StardustAttributesTypeImpl.java @@ -0,0 +1,157 @@ +/**
+ * <copyright>
+ * </copyright>
+ *
+ * $Id$
+ */
+package org.eclipse.stardust.model.bpmn2.sdbpmn.impl;
+
+import java.util.Collection;
+
+import org.eclipse.emf.common.notify.NotificationChain;
+
+import org.eclipse.emf.common.util.EList;
+
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.InternalEObject;
+
+import org.eclipse.emf.ecore.impl.EObjectImpl;
+
+import org.eclipse.emf.ecore.util.EObjectContainmentEList;
+import org.eclipse.emf.ecore.util.InternalEList;
+
+
+import org.eclipse.stardust.model.bpmn2.sdbpmn.SdbpmnPackage;
+import org.eclipse.stardust.model.bpmn2.sdbpmn.StardustAttributesType;
+import org.eclipse.stardust.model.xpdl.carnot.AttributeType;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>Stardust Attributes Type</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * <ul>
+ * <li>{@link org.eclipse.stardust.model.bpmn2.sdbpmn.impl.StardustAttributesTypeImpl#getAttributeType <em>Attribute Type</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @generated
+ */
+public class StardustAttributesTypeImpl extends EObjectImpl implements StardustAttributesType {
+ /**
+ * The cached value of the '{@link #getAttributeType() <em>Attribute Type</em>}' containment reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getAttributeType()
+ * @generated
+ * @ordered
+ */
+ protected EList<AttributeType> attributeType;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected StardustAttributesTypeImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ protected EClass eStaticClass() {
+ return SdbpmnPackage.Literals.STARDUST_ATTRIBUTES_TYPE;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EList<AttributeType> getAttributeType() {
+ if (attributeType == null) {
+ attributeType = new EObjectContainmentEList<AttributeType>(AttributeType.class, this, SdbpmnPackage.STARDUST_ATTRIBUTES_TYPE__ATTRIBUTE_TYPE);
+ }
+ return attributeType;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) {
+ switch (featureID) {
+ case SdbpmnPackage.STARDUST_ATTRIBUTES_TYPE__ATTRIBUTE_TYPE:
+ return ((InternalEList<?>)getAttributeType()).basicRemove(otherEnd, msgs);
+ }
+ return super.eInverseRemove(otherEnd, featureID, msgs);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Object eGet(int featureID, boolean resolve, boolean coreType) {
+ switch (featureID) {
+ case SdbpmnPackage.STARDUST_ATTRIBUTES_TYPE__ATTRIBUTE_TYPE:
+ return getAttributeType();
+ }
+ return super.eGet(featureID, resolve, coreType);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @SuppressWarnings("unchecked")
+ @Override
+ public void eSet(int featureID, Object newValue) {
+ switch (featureID) {
+ case SdbpmnPackage.STARDUST_ATTRIBUTES_TYPE__ATTRIBUTE_TYPE:
+ getAttributeType().clear();
+ getAttributeType().addAll((Collection<? extends AttributeType>)newValue);
+ return;
+ }
+ super.eSet(featureID, newValue);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void eUnset(int featureID) {
+ switch (featureID) {
+ case SdbpmnPackage.STARDUST_ATTRIBUTES_TYPE__ATTRIBUTE_TYPE:
+ getAttributeType().clear();
+ return;
+ }
+ super.eUnset(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public boolean eIsSet(int featureID) {
+ switch (featureID) {
+ case SdbpmnPackage.STARDUST_ATTRIBUTES_TYPE__ATTRIBUTE_TYPE:
+ return attributeType != null && !attributeType.isEmpty();
+ }
+ return super.eIsSet(featureID);
+ }
+
+} //StardustAttributesTypeImpl
diff --git a/model/org.eclipse.stardust.model.bpmn2/src/main/java/org/eclipse/stardust/model/bpmn2/sdbpmn/impl/StardustMessageStartEventTypeImpl.java b/model/org.eclipse.stardust.model.bpmn2/src/main/java/org/eclipse/stardust/model/bpmn2/sdbpmn/impl/StardustMessageStartEventTypeImpl.java new file mode 100644 index 0000000..e73f3a8 --- a/dev/null +++ b/model/org.eclipse.stardust.model.bpmn2/src/main/java/org/eclipse/stardust/model/bpmn2/sdbpmn/impl/StardustMessageStartEventTypeImpl.java @@ -0,0 +1,331 @@ +/**
+ * <copyright>
+ * </copyright>
+ *
+ * $Id$
+ */
+package org.eclipse.stardust.model.bpmn2.sdbpmn.impl;
+
+import java.util.Collection;
+
+import org.eclipse.emf.common.notify.Notification;
+import org.eclipse.emf.common.notify.NotificationChain;
+
+import org.eclipse.emf.common.util.EList;
+
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.InternalEObject;
+
+import org.eclipse.emf.ecore.impl.ENotificationImpl;
+import org.eclipse.emf.ecore.impl.EObjectImpl;
+
+import org.eclipse.emf.ecore.util.EObjectContainmentEList;
+import org.eclipse.emf.ecore.util.InternalEList;
+
+
+import org.eclipse.stardust.model.bpmn2.sdbpmn.SdbpmnPackage;
+import org.eclipse.stardust.model.bpmn2.sdbpmn.StardustAttributesType;
+import org.eclipse.stardust.model.bpmn2.sdbpmn.StardustMessageStartEventType;
+import org.eclipse.stardust.model.xpdl.carnot.AccessPointType;
+import org.eclipse.stardust.model.xpdl.carnot.ParameterMappingType;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>Stardust Message Start Event Type</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * <ul>
+ * <li>{@link org.eclipse.stardust.model.bpmn2.sdbpmn.impl.StardustMessageStartEventTypeImpl#getStardustAttributes <em>Stardust Attributes</em>}</li>
+ * <li>{@link org.eclipse.stardust.model.bpmn2.sdbpmn.impl.StardustMessageStartEventTypeImpl#getAccessPoint <em>Access Point</em>}</li>
+ * <li>{@link org.eclipse.stardust.model.bpmn2.sdbpmn.impl.StardustMessageStartEventTypeImpl#getParameterMapping <em>Parameter Mapping</em>}</li>
+ * <li>{@link org.eclipse.stardust.model.bpmn2.sdbpmn.impl.StardustMessageStartEventTypeImpl#getType <em>Type</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @generated
+ */
+public class StardustMessageStartEventTypeImpl extends EObjectImpl implements StardustMessageStartEventType {
+ /**
+ * The cached value of the '{@link #getStardustAttributes() <em>Stardust Attributes</em>}' containment reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getStardustAttributes()
+ * @generated
+ * @ordered
+ */
+ protected StardustAttributesType stardustAttributes;
+
+ /**
+ * The cached value of the '{@link #getAccessPoint() <em>Access Point</em>}' containment reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getAccessPoint()
+ * @generated
+ * @ordered
+ */
+ protected EList<AccessPointType> accessPoint;
+
+ /**
+ * The cached value of the '{@link #getParameterMapping() <em>Parameter Mapping</em>}' containment reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getParameterMapping()
+ * @generated
+ * @ordered
+ */
+ protected EList<ParameterMappingType> parameterMapping;
+
+ /**
+ * The default value of the '{@link #getType() <em>Type</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getType()
+ * @generated
+ * @ordered
+ */
+ protected static final String TYPE_EDEFAULT = null;
+
+ /**
+ * The cached value of the '{@link #getType() <em>Type</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getType()
+ * @generated
+ * @ordered
+ */
+ protected String type = TYPE_EDEFAULT;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected StardustMessageStartEventTypeImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ protected EClass eStaticClass() {
+ return SdbpmnPackage.Literals.STARDUST_MESSAGE_START_EVENT_TYPE;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public StardustAttributesType getStardustAttributes() {
+ return stardustAttributes;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public NotificationChain basicSetStardustAttributes(StardustAttributesType newStardustAttributes, NotificationChain msgs) {
+ StardustAttributesType oldStardustAttributes = stardustAttributes;
+ stardustAttributes = newStardustAttributes;
+ if (eNotificationRequired()) {
+ ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, SdbpmnPackage.STARDUST_MESSAGE_START_EVENT_TYPE__STARDUST_ATTRIBUTES, oldStardustAttributes, newStardustAttributes);
+ if (msgs == null) msgs = notification; else msgs.add(notification);
+ }
+ return msgs;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void setStardustAttributes(StardustAttributesType newStardustAttributes) {
+ if (newStardustAttributes != stardustAttributes) {
+ NotificationChain msgs = null;
+ if (stardustAttributes != null)
+ msgs = ((InternalEObject)stardustAttributes).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - SdbpmnPackage.STARDUST_MESSAGE_START_EVENT_TYPE__STARDUST_ATTRIBUTES, null, msgs);
+ if (newStardustAttributes != null)
+ msgs = ((InternalEObject)newStardustAttributes).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - SdbpmnPackage.STARDUST_MESSAGE_START_EVENT_TYPE__STARDUST_ATTRIBUTES, null, msgs);
+ msgs = basicSetStardustAttributes(newStardustAttributes, msgs);
+ if (msgs != null) msgs.dispatch();
+ }
+ else if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, SdbpmnPackage.STARDUST_MESSAGE_START_EVENT_TYPE__STARDUST_ATTRIBUTES, newStardustAttributes, newStardustAttributes));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EList<AccessPointType> getAccessPoint() {
+ if (accessPoint == null) {
+ accessPoint = new EObjectContainmentEList<AccessPointType>(AccessPointType.class, this, SdbpmnPackage.STARDUST_MESSAGE_START_EVENT_TYPE__ACCESS_POINT);
+ }
+ return accessPoint;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EList<ParameterMappingType> getParameterMapping() {
+ if (parameterMapping == null) {
+ parameterMapping = new EObjectContainmentEList<ParameterMappingType>(ParameterMappingType.class, this, SdbpmnPackage.STARDUST_MESSAGE_START_EVENT_TYPE__PARAMETER_MAPPING);
+ }
+ return parameterMapping;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public String getType() {
+ return type;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void setType(String newType) {
+ String oldType = type;
+ type = newType;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, SdbpmnPackage.STARDUST_MESSAGE_START_EVENT_TYPE__TYPE, oldType, type));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) {
+ switch (featureID) {
+ case SdbpmnPackage.STARDUST_MESSAGE_START_EVENT_TYPE__STARDUST_ATTRIBUTES:
+ return basicSetStardustAttributes(null, msgs);
+ case SdbpmnPackage.STARDUST_MESSAGE_START_EVENT_TYPE__ACCESS_POINT:
+ return ((InternalEList<?>)getAccessPoint()).basicRemove(otherEnd, msgs);
+ case SdbpmnPackage.STARDUST_MESSAGE_START_EVENT_TYPE__PARAMETER_MAPPING:
+ return ((InternalEList<?>)getParameterMapping()).basicRemove(otherEnd, msgs);
+ }
+ return super.eInverseRemove(otherEnd, featureID, msgs);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Object eGet(int featureID, boolean resolve, boolean coreType) {
+ switch (featureID) {
+ case SdbpmnPackage.STARDUST_MESSAGE_START_EVENT_TYPE__STARDUST_ATTRIBUTES:
+ return getStardustAttributes();
+ case SdbpmnPackage.STARDUST_MESSAGE_START_EVENT_TYPE__ACCESS_POINT:
+ return getAccessPoint();
+ case SdbpmnPackage.STARDUST_MESSAGE_START_EVENT_TYPE__PARAMETER_MAPPING:
+ return getParameterMapping();
+ case SdbpmnPackage.STARDUST_MESSAGE_START_EVENT_TYPE__TYPE:
+ return getType();
+ }
+ return super.eGet(featureID, resolve, coreType);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @SuppressWarnings("unchecked")
+ @Override
+ public void eSet(int featureID, Object newValue) {
+ switch (featureID) {
+ case SdbpmnPackage.STARDUST_MESSAGE_START_EVENT_TYPE__STARDUST_ATTRIBUTES:
+ setStardustAttributes((StardustAttributesType)newValue);
+ return;
+ case SdbpmnPackage.STARDUST_MESSAGE_START_EVENT_TYPE__ACCESS_POINT:
+ getAccessPoint().clear();
+ getAccessPoint().addAll((Collection<? extends AccessPointType>)newValue);
+ return;
+ case SdbpmnPackage.STARDUST_MESSAGE_START_EVENT_TYPE__PARAMETER_MAPPING:
+ getParameterMapping().clear();
+ getParameterMapping().addAll((Collection<? extends ParameterMappingType>)newValue);
+ return;
+ case SdbpmnPackage.STARDUST_MESSAGE_START_EVENT_TYPE__TYPE:
+ setType((String)newValue);
+ return;
+ }
+ super.eSet(featureID, newValue);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void eUnset(int featureID) {
+ switch (featureID) {
+ case SdbpmnPackage.STARDUST_MESSAGE_START_EVENT_TYPE__STARDUST_ATTRIBUTES:
+ setStardustAttributes((StardustAttributesType)null);
+ return;
+ case SdbpmnPackage.STARDUST_MESSAGE_START_EVENT_TYPE__ACCESS_POINT:
+ getAccessPoint().clear();
+ return;
+ case SdbpmnPackage.STARDUST_MESSAGE_START_EVENT_TYPE__PARAMETER_MAPPING:
+ getParameterMapping().clear();
+ return;
+ case SdbpmnPackage.STARDUST_MESSAGE_START_EVENT_TYPE__TYPE:
+ setType(TYPE_EDEFAULT);
+ return;
+ }
+ super.eUnset(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public boolean eIsSet(int featureID) {
+ switch (featureID) {
+ case SdbpmnPackage.STARDUST_MESSAGE_START_EVENT_TYPE__STARDUST_ATTRIBUTES:
+ return stardustAttributes != null;
+ case SdbpmnPackage.STARDUST_MESSAGE_START_EVENT_TYPE__ACCESS_POINT:
+ return accessPoint != null && !accessPoint.isEmpty();
+ case SdbpmnPackage.STARDUST_MESSAGE_START_EVENT_TYPE__PARAMETER_MAPPING:
+ return parameterMapping != null && !parameterMapping.isEmpty();
+ case SdbpmnPackage.STARDUST_MESSAGE_START_EVENT_TYPE__TYPE:
+ return TYPE_EDEFAULT == null ? type != null : !TYPE_EDEFAULT.equals(type);
+ }
+ return super.eIsSet(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public String toString() {
+ if (eIsProxy()) return super.toString();
+
+ StringBuffer result = new StringBuffer(super.toString());
+ result.append(" (type: ");
+ result.append(type);
+ result.append(')');
+ return result.toString();
+ }
+
+} //StardustMessageStartEventTypeImpl
diff --git a/model/org.eclipse.stardust.model.bpmn2/src/main/java/org/eclipse/stardust/model/bpmn2/sdbpmn/impl/StardustModelTypeImpl.java b/model/org.eclipse.stardust.model.bpmn2/src/main/java/org/eclipse/stardust/model/bpmn2/sdbpmn/impl/StardustModelTypeImpl.java new file mode 100644 index 0000000..88822f7 --- a/dev/null +++ b/model/org.eclipse.stardust.model.bpmn2/src/main/java/org/eclipse/stardust/model/bpmn2/sdbpmn/impl/StardustModelTypeImpl.java @@ -0,0 +1,475 @@ +/**
+ * <copyright>
+ * </copyright>
+ *
+ * $Id$
+ */
+package org.eclipse.stardust.model.bpmn2.sdbpmn.impl;
+
+import java.math.BigInteger;
+
+import javax.xml.datatype.XMLGregorianCalendar;
+
+import org.eclipse.emf.common.notify.Notification;
+
+import org.eclipse.emf.ecore.EClass;
+
+import org.eclipse.emf.ecore.impl.ENotificationImpl;
+import org.eclipse.emf.ecore.impl.EObjectImpl;
+
+import org.eclipse.stardust.model.bpmn2.sdbpmn.SdbpmnPackage;
+import org.eclipse.stardust.model.bpmn2.sdbpmn.StardustModelType;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>Stardust Model Type</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * <ul>
+ * <li>{@link org.eclipse.stardust.model.bpmn2.sdbpmn.impl.StardustModelTypeImpl#getAuthor <em>Author</em>}</li>
+ * <li>{@link org.eclipse.stardust.model.bpmn2.sdbpmn.impl.StardustModelTypeImpl#getCarnotVersion <em>Carnot Version</em>}</li>
+ * <li>{@link org.eclipse.stardust.model.bpmn2.sdbpmn.impl.StardustModelTypeImpl#getCreated <em>Created</em>}</li>
+ * <li>{@link org.eclipse.stardust.model.bpmn2.sdbpmn.impl.StardustModelTypeImpl#getModelOID <em>Model OID</em>}</li>
+ * <li>{@link org.eclipse.stardust.model.bpmn2.sdbpmn.impl.StardustModelTypeImpl#getOid <em>Oid</em>}</li>
+ * <li>{@link org.eclipse.stardust.model.bpmn2.sdbpmn.impl.StardustModelTypeImpl#getVendor <em>Vendor</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @generated
+ */
+public class StardustModelTypeImpl extends EObjectImpl implements StardustModelType {
+ /**
+ * The default value of the '{@link #getAuthor() <em>Author</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getAuthor()
+ * @generated
+ * @ordered
+ */
+ protected static final String AUTHOR_EDEFAULT = null;
+
+ /**
+ * The cached value of the '{@link #getAuthor() <em>Author</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getAuthor()
+ * @generated
+ * @ordered
+ */
+ protected String author = AUTHOR_EDEFAULT;
+
+ /**
+ * The default value of the '{@link #getCarnotVersion() <em>Carnot Version</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getCarnotVersion()
+ * @generated
+ * @ordered
+ */
+ protected static final String CARNOT_VERSION_EDEFAULT = null;
+
+ /**
+ * The cached value of the '{@link #getCarnotVersion() <em>Carnot Version</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getCarnotVersion()
+ * @generated
+ * @ordered
+ */
+ protected String carnotVersion = CARNOT_VERSION_EDEFAULT;
+
+ /**
+ * The default value of the '{@link #getCreated() <em>Created</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getCreated()
+ * @generated
+ * @ordered
+ */
+ protected static final XMLGregorianCalendar CREATED_EDEFAULT = null;
+
+ /**
+ * The cached value of the '{@link #getCreated() <em>Created</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getCreated()
+ * @generated
+ * @ordered
+ */
+ protected XMLGregorianCalendar created = CREATED_EDEFAULT;
+
+ /**
+ * The default value of the '{@link #getModelOID() <em>Model OID</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getModelOID()
+ * @generated
+ * @ordered
+ */
+ protected static final BigInteger MODEL_OID_EDEFAULT = null;
+
+ /**
+ * The cached value of the '{@link #getModelOID() <em>Model OID</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getModelOID()
+ * @generated
+ * @ordered
+ */
+ protected BigInteger modelOID = MODEL_OID_EDEFAULT;
+
+ /**
+ * The default value of the '{@link #getOid() <em>Oid</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getOid()
+ * @generated
+ * @ordered
+ */
+ protected static final long OID_EDEFAULT = 0L;
+
+ /**
+ * The cached value of the '{@link #getOid() <em>Oid</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getOid()
+ * @generated
+ * @ordered
+ */
+ protected long oid = OID_EDEFAULT;
+
+ /**
+ * This is true if the Oid attribute has been set.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ protected boolean oidESet;
+
+ /**
+ * The default value of the '{@link #getVendor() <em>Vendor</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getVendor()
+ * @generated
+ * @ordered
+ */
+ protected static final String VENDOR_EDEFAULT = null;
+
+ /**
+ * The cached value of the '{@link #getVendor() <em>Vendor</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getVendor()
+ * @generated
+ * @ordered
+ */
+ protected String vendor = VENDOR_EDEFAULT;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected StardustModelTypeImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ protected EClass eStaticClass() {
+ return SdbpmnPackage.Literals.STARDUST_MODEL_TYPE;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public String getAuthor() {
+ return author;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void setAuthor(String newAuthor) {
+ String oldAuthor = author;
+ author = newAuthor;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, SdbpmnPackage.STARDUST_MODEL_TYPE__AUTHOR, oldAuthor, author));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public String getCarnotVersion() {
+ return carnotVersion;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void setCarnotVersion(String newCarnotVersion) {
+ String oldCarnotVersion = carnotVersion;
+ carnotVersion = newCarnotVersion;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, SdbpmnPackage.STARDUST_MODEL_TYPE__CARNOT_VERSION, oldCarnotVersion, carnotVersion));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public XMLGregorianCalendar getCreated() {
+ return created;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void setCreated(XMLGregorianCalendar newCreated) {
+ XMLGregorianCalendar oldCreated = created;
+ created = newCreated;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, SdbpmnPackage.STARDUST_MODEL_TYPE__CREATED, oldCreated, created));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public BigInteger getModelOID() {
+ return modelOID;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void setModelOID(BigInteger newModelOID) {
+ BigInteger oldModelOID = modelOID;
+ modelOID = newModelOID;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, SdbpmnPackage.STARDUST_MODEL_TYPE__MODEL_OID, oldModelOID, modelOID));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public long getOid() {
+ return oid;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void setOid(long newOid) {
+ long oldOid = oid;
+ oid = newOid;
+ boolean oldOidESet = oidESet;
+ oidESet = true;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, SdbpmnPackage.STARDUST_MODEL_TYPE__OID, oldOid, oid, !oldOidESet));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void unsetOid() {
+ long oldOid = oid;
+ boolean oldOidESet = oidESet;
+ oid = OID_EDEFAULT;
+ oidESet = false;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.UNSET, SdbpmnPackage.STARDUST_MODEL_TYPE__OID, oldOid, OID_EDEFAULT, oldOidESet));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public boolean isSetOid() {
+ return oidESet;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public String getVendor() {
+ return vendor;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void setVendor(String newVendor) {
+ String oldVendor = vendor;
+ vendor = newVendor;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, SdbpmnPackage.STARDUST_MODEL_TYPE__VENDOR, oldVendor, vendor));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Object eGet(int featureID, boolean resolve, boolean coreType) {
+ switch (featureID) {
+ case SdbpmnPackage.STARDUST_MODEL_TYPE__AUTHOR:
+ return getAuthor();
+ case SdbpmnPackage.STARDUST_MODEL_TYPE__CARNOT_VERSION:
+ return getCarnotVersion();
+ case SdbpmnPackage.STARDUST_MODEL_TYPE__CREATED:
+ return getCreated();
+ case SdbpmnPackage.STARDUST_MODEL_TYPE__MODEL_OID:
+ return getModelOID();
+ case SdbpmnPackage.STARDUST_MODEL_TYPE__OID:
+ return getOid();
+ case SdbpmnPackage.STARDUST_MODEL_TYPE__VENDOR:
+ return getVendor();
+ }
+ return super.eGet(featureID, resolve, coreType);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void eSet(int featureID, Object newValue) {
+ switch (featureID) {
+ case SdbpmnPackage.STARDUST_MODEL_TYPE__AUTHOR:
+ setAuthor((String)newValue);
+ return;
+ case SdbpmnPackage.STARDUST_MODEL_TYPE__CARNOT_VERSION:
+ setCarnotVersion((String)newValue);
+ return;
+ case SdbpmnPackage.STARDUST_MODEL_TYPE__CREATED:
+ setCreated((XMLGregorianCalendar)newValue);
+ return;
+ case SdbpmnPackage.STARDUST_MODEL_TYPE__MODEL_OID:
+ setModelOID((BigInteger)newValue);
+ return;
+ case SdbpmnPackage.STARDUST_MODEL_TYPE__OID:
+ setOid((Long)newValue);
+ return;
+ case SdbpmnPackage.STARDUST_MODEL_TYPE__VENDOR:
+ setVendor((String)newValue);
+ return;
+ }
+ super.eSet(featureID, newValue);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void eUnset(int featureID) {
+ switch (featureID) {
+ case SdbpmnPackage.STARDUST_MODEL_TYPE__AUTHOR:
+ setAuthor(AUTHOR_EDEFAULT);
+ return;
+ case SdbpmnPackage.STARDUST_MODEL_TYPE__CARNOT_VERSION:
+ setCarnotVersion(CARNOT_VERSION_EDEFAULT);
+ return;
+ case SdbpmnPackage.STARDUST_MODEL_TYPE__CREATED:
+ setCreated(CREATED_EDEFAULT);
+ return;
+ case SdbpmnPackage.STARDUST_MODEL_TYPE__MODEL_OID:
+ setModelOID(MODEL_OID_EDEFAULT);
+ return;
+ case SdbpmnPackage.STARDUST_MODEL_TYPE__OID:
+ unsetOid();
+ return;
+ case SdbpmnPackage.STARDUST_MODEL_TYPE__VENDOR:
+ setVendor(VENDOR_EDEFAULT);
+ return;
+ }
+ super.eUnset(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public boolean eIsSet(int featureID) {
+ switch (featureID) {
+ case SdbpmnPackage.STARDUST_MODEL_TYPE__AUTHOR:
+ return AUTHOR_EDEFAULT == null ? author != null : !AUTHOR_EDEFAULT.equals(author);
+ case SdbpmnPackage.STARDUST_MODEL_TYPE__CARNOT_VERSION:
+ return CARNOT_VERSION_EDEFAULT == null ? carnotVersion != null : !CARNOT_VERSION_EDEFAULT.equals(carnotVersion);
+ case SdbpmnPackage.STARDUST_MODEL_TYPE__CREATED:
+ return CREATED_EDEFAULT == null ? created != null : !CREATED_EDEFAULT.equals(created);
+ case SdbpmnPackage.STARDUST_MODEL_TYPE__MODEL_OID:
+ return MODEL_OID_EDEFAULT == null ? modelOID != null : !MODEL_OID_EDEFAULT.equals(modelOID);
+ case SdbpmnPackage.STARDUST_MODEL_TYPE__OID:
+ return isSetOid();
+ case SdbpmnPackage.STARDUST_MODEL_TYPE__VENDOR:
+ return VENDOR_EDEFAULT == null ? vendor != null : !VENDOR_EDEFAULT.equals(vendor);
+ }
+ return super.eIsSet(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public String toString() {
+ if (eIsProxy()) return super.toString();
+
+ StringBuffer result = new StringBuffer(super.toString());
+ result.append(" (author: ");
+ result.append(author);
+ result.append(", carnotVersion: ");
+ result.append(carnotVersion);
+ result.append(", created: ");
+ result.append(created);
+ result.append(", modelOID: ");
+ result.append(modelOID);
+ result.append(", oid: ");
+ if (oidESet) result.append(oid); else result.append("<unset>");
+ result.append(", vendor: ");
+ result.append(vendor);
+ result.append(')');
+ return result.toString();
+ }
+
+} //StardustModelTypeImpl
diff --git a/model/org.eclipse.stardust.model.bpmn2/src/main/java/org/eclipse/stardust/model/bpmn2/sdbpmn/impl/StardustSeqenceFlowTypeImpl.java b/model/org.eclipse.stardust.model.bpmn2/src/main/java/org/eclipse/stardust/model/bpmn2/sdbpmn/impl/StardustSeqenceFlowTypeImpl.java new file mode 100644 index 0000000..f61f0b1 --- a/dev/null +++ b/model/org.eclipse.stardust.model.bpmn2/src/main/java/org/eclipse/stardust/model/bpmn2/sdbpmn/impl/StardustSeqenceFlowTypeImpl.java @@ -0,0 +1,201 @@ +/**
+ * <copyright>
+ * </copyright>
+ *
+ * $Id$
+ */
+package org.eclipse.stardust.model.bpmn2.sdbpmn.impl;
+
+import org.eclipse.emf.common.notify.Notification;
+
+import org.eclipse.emf.ecore.EClass;
+
+import org.eclipse.emf.ecore.impl.ENotificationImpl;
+import org.eclipse.emf.ecore.impl.EObjectImpl;
+
+import org.eclipse.stardust.model.bpmn2.sdbpmn.SdbpmnPackage;
+import org.eclipse.stardust.model.bpmn2.sdbpmn.StardustSeqenceFlowType;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>Stardust Seqence Flow Type</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * <ul>
+ * <li>{@link org.eclipse.stardust.model.bpmn2.sdbpmn.impl.StardustSeqenceFlowTypeImpl#isForkOnTraversal <em>Fork On Traversal</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @generated
+ */
+public class StardustSeqenceFlowTypeImpl extends EObjectImpl implements StardustSeqenceFlowType {
+ /**
+ * The default value of the '{@link #isForkOnTraversal() <em>Fork On Traversal</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #isForkOnTraversal()
+ * @generated
+ * @ordered
+ */
+ protected static final boolean FORK_ON_TRAVERSAL_EDEFAULT = false;
+
+ /**
+ * The cached value of the '{@link #isForkOnTraversal() <em>Fork On Traversal</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #isForkOnTraversal()
+ * @generated
+ * @ordered
+ */
+ protected boolean forkOnTraversal = FORK_ON_TRAVERSAL_EDEFAULT;
+
+ /**
+ * This is true if the Fork On Traversal attribute has been set.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ protected boolean forkOnTraversalESet;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected StardustSeqenceFlowTypeImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ protected EClass eStaticClass() {
+ return SdbpmnPackage.Literals.STARDUST_SEQENCE_FLOW_TYPE;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public boolean isForkOnTraversal() {
+ return forkOnTraversal;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void setForkOnTraversal(boolean newForkOnTraversal) {
+ boolean oldForkOnTraversal = forkOnTraversal;
+ forkOnTraversal = newForkOnTraversal;
+ boolean oldForkOnTraversalESet = forkOnTraversalESet;
+ forkOnTraversalESet = true;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, SdbpmnPackage.STARDUST_SEQENCE_FLOW_TYPE__FORK_ON_TRAVERSAL, oldForkOnTraversal, forkOnTraversal, !oldForkOnTraversalESet));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void unsetForkOnTraversal() {
+ boolean oldForkOnTraversal = forkOnTraversal;
+ boolean oldForkOnTraversalESet = forkOnTraversalESet;
+ forkOnTraversal = FORK_ON_TRAVERSAL_EDEFAULT;
+ forkOnTraversalESet = false;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.UNSET, SdbpmnPackage.STARDUST_SEQENCE_FLOW_TYPE__FORK_ON_TRAVERSAL, oldForkOnTraversal, FORK_ON_TRAVERSAL_EDEFAULT, oldForkOnTraversalESet));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public boolean isSetForkOnTraversal() {
+ return forkOnTraversalESet;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Object eGet(int featureID, boolean resolve, boolean coreType) {
+ switch (featureID) {
+ case SdbpmnPackage.STARDUST_SEQENCE_FLOW_TYPE__FORK_ON_TRAVERSAL:
+ return isForkOnTraversal();
+ }
+ return super.eGet(featureID, resolve, coreType);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void eSet(int featureID, Object newValue) {
+ switch (featureID) {
+ case SdbpmnPackage.STARDUST_SEQENCE_FLOW_TYPE__FORK_ON_TRAVERSAL:
+ setForkOnTraversal((Boolean)newValue);
+ return;
+ }
+ super.eSet(featureID, newValue);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void eUnset(int featureID) {
+ switch (featureID) {
+ case SdbpmnPackage.STARDUST_SEQENCE_FLOW_TYPE__FORK_ON_TRAVERSAL:
+ unsetForkOnTraversal();
+ return;
+ }
+ super.eUnset(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public boolean eIsSet(int featureID) {
+ switch (featureID) {
+ case SdbpmnPackage.STARDUST_SEQENCE_FLOW_TYPE__FORK_ON_TRAVERSAL:
+ return isSetForkOnTraversal();
+ }
+ return super.eIsSet(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public String toString() {
+ if (eIsProxy()) return super.toString();
+
+ StringBuffer result = new StringBuffer(super.toString());
+ result.append(" (forkOnTraversal: ");
+ if (forkOnTraversalESet) result.append(forkOnTraversal); else result.append("<unset>");
+ result.append(')');
+ return result.toString();
+ }
+
+} //StardustSeqenceFlowTypeImpl
diff --git a/model/org.eclipse.stardust.model.bpmn2/src/main/java/org/eclipse/stardust/model/bpmn2/sdbpmn/impl/StardustServiceTaskTypeImpl.java b/model/org.eclipse.stardust.model.bpmn2/src/main/java/org/eclipse/stardust/model/bpmn2/sdbpmn/impl/StardustServiceTaskTypeImpl.java new file mode 100644 index 0000000..a299984 --- a/dev/null +++ b/model/org.eclipse.stardust.model.bpmn2/src/main/java/org/eclipse/stardust/model/bpmn2/sdbpmn/impl/StardustServiceTaskTypeImpl.java @@ -0,0 +1,166 @@ +/**
+ * <copyright>
+ * </copyright>
+ *
+ * $Id$
+ */
+package org.eclipse.stardust.model.bpmn2.sdbpmn.impl;
+
+import org.eclipse.emf.common.notify.Notification;
+
+import org.eclipse.emf.ecore.EClass;
+
+import org.eclipse.emf.ecore.impl.ENotificationImpl;
+
+import org.eclipse.stardust.model.bpmn2.sdbpmn.SdbpmnPackage;
+import org.eclipse.stardust.model.bpmn2.sdbpmn.StardustServiceTaskType;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>Stardust Service Task Type</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * <ul>
+ * <li>{@link org.eclipse.stardust.model.bpmn2.sdbpmn.impl.StardustServiceTaskTypeImpl#getApplication <em>Application</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @generated
+ */
+public class StardustServiceTaskTypeImpl extends TStardustActivityImpl implements StardustServiceTaskType {
+ /**
+ * The default value of the '{@link #getApplication() <em>Application</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getApplication()
+ * @generated
+ * @ordered
+ */
+ protected static final String APPLICATION_EDEFAULT = null;
+
+ /**
+ * The cached value of the '{@link #getApplication() <em>Application</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getApplication()
+ * @generated
+ * @ordered
+ */
+ protected String application = APPLICATION_EDEFAULT;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected StardustServiceTaskTypeImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ protected EClass eStaticClass() {
+ return SdbpmnPackage.Literals.STARDUST_SERVICE_TASK_TYPE;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public String getApplication() {
+ return application;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void setApplication(String newApplication) {
+ String oldApplication = application;
+ application = newApplication;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, SdbpmnPackage.STARDUST_SERVICE_TASK_TYPE__APPLICATION, oldApplication, application));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Object eGet(int featureID, boolean resolve, boolean coreType) {
+ switch (featureID) {
+ case SdbpmnPackage.STARDUST_SERVICE_TASK_TYPE__APPLICATION:
+ return getApplication();
+ }
+ return super.eGet(featureID, resolve, coreType);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void eSet(int featureID, Object newValue) {
+ switch (featureID) {
+ case SdbpmnPackage.STARDUST_SERVICE_TASK_TYPE__APPLICATION:
+ setApplication((String)newValue);
+ return;
+ }
+ super.eSet(featureID, newValue);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void eUnset(int featureID) {
+ switch (featureID) {
+ case SdbpmnPackage.STARDUST_SERVICE_TASK_TYPE__APPLICATION:
+ setApplication(APPLICATION_EDEFAULT);
+ return;
+ }
+ super.eUnset(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public boolean eIsSet(int featureID) {
+ switch (featureID) {
+ case SdbpmnPackage.STARDUST_SERVICE_TASK_TYPE__APPLICATION:
+ return APPLICATION_EDEFAULT == null ? application != null : !APPLICATION_EDEFAULT.equals(application);
+ }
+ return super.eIsSet(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public String toString() {
+ if (eIsProxy()) return super.toString();
+
+ StringBuffer result = new StringBuffer(super.toString());
+ result.append(" (application: ");
+ result.append(application);
+ result.append(')');
+ return result.toString();
+ }
+
+} //StardustServiceTaskTypeImpl
diff --git a/model/org.eclipse.stardust.model.bpmn2/src/main/java/org/eclipse/stardust/model/bpmn2/sdbpmn/impl/StardustStartEventTypeImpl.java b/model/org.eclipse.stardust.model.bpmn2/src/main/java/org/eclipse/stardust/model/bpmn2/sdbpmn/impl/StardustStartEventTypeImpl.java new file mode 100644 index 0000000..e0139e5 --- a/dev/null +++ b/model/org.eclipse.stardust.model.bpmn2/src/main/java/org/eclipse/stardust/model/bpmn2/sdbpmn/impl/StardustStartEventTypeImpl.java @@ -0,0 +1,180 @@ +/**
+ * <copyright>
+ * </copyright>
+ *
+ * $Id$
+ */
+package org.eclipse.stardust.model.bpmn2.sdbpmn.impl;
+
+import org.eclipse.emf.common.notify.Notification;
+import org.eclipse.emf.common.notify.NotificationChain;
+
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.InternalEObject;
+
+import org.eclipse.emf.ecore.impl.ENotificationImpl;
+import org.eclipse.emf.ecore.impl.EObjectImpl;
+
+import org.eclipse.stardust.model.bpmn2.sdbpmn.SdbpmnPackage;
+import org.eclipse.stardust.model.bpmn2.sdbpmn.StardustAttributesType;
+import org.eclipse.stardust.model.bpmn2.sdbpmn.StardustStartEventType;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>Stardust Start Event Type</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * <ul>
+ * <li>{@link org.eclipse.stardust.model.bpmn2.sdbpmn.impl.StardustStartEventTypeImpl#getStardustAttributes <em>Stardust Attributes</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @generated
+ */
+public class StardustStartEventTypeImpl extends EObjectImpl implements StardustStartEventType {
+ /**
+ * The cached value of the '{@link #getStardustAttributes() <em>Stardust Attributes</em>}' containment reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getStardustAttributes()
+ * @generated
+ * @ordered
+ */
+ protected StardustAttributesType stardustAttributes;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected StardustStartEventTypeImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ protected EClass eStaticClass() {
+ return SdbpmnPackage.Literals.STARDUST_START_EVENT_TYPE;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public StardustAttributesType getStardustAttributes() {
+ return stardustAttributes;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public NotificationChain basicSetStardustAttributes(StardustAttributesType newStardustAttributes, NotificationChain msgs) {
+ StardustAttributesType oldStardustAttributes = stardustAttributes;
+ stardustAttributes = newStardustAttributes;
+ if (eNotificationRequired()) {
+ ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, SdbpmnPackage.STARDUST_START_EVENT_TYPE__STARDUST_ATTRIBUTES, oldStardustAttributes, newStardustAttributes);
+ if (msgs == null) msgs = notification; else msgs.add(notification);
+ }
+ return msgs;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void setStardustAttributes(StardustAttributesType newStardustAttributes) {
+ if (newStardustAttributes != stardustAttributes) {
+ NotificationChain msgs = null;
+ if (stardustAttributes != null)
+ msgs = ((InternalEObject)stardustAttributes).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - SdbpmnPackage.STARDUST_START_EVENT_TYPE__STARDUST_ATTRIBUTES, null, msgs);
+ if (newStardustAttributes != null)
+ msgs = ((InternalEObject)newStardustAttributes).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - SdbpmnPackage.STARDUST_START_EVENT_TYPE__STARDUST_ATTRIBUTES, null, msgs);
+ msgs = basicSetStardustAttributes(newStardustAttributes, msgs);
+ if (msgs != null) msgs.dispatch();
+ }
+ else if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, SdbpmnPackage.STARDUST_START_EVENT_TYPE__STARDUST_ATTRIBUTES, newStardustAttributes, newStardustAttributes));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) {
+ switch (featureID) {
+ case SdbpmnPackage.STARDUST_START_EVENT_TYPE__STARDUST_ATTRIBUTES:
+ return basicSetStardustAttributes(null, msgs);
+ }
+ return super.eInverseRemove(otherEnd, featureID, msgs);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Object eGet(int featureID, boolean resolve, boolean coreType) {
+ switch (featureID) {
+ case SdbpmnPackage.STARDUST_START_EVENT_TYPE__STARDUST_ATTRIBUTES:
+ return getStardustAttributes();
+ }
+ return super.eGet(featureID, resolve, coreType);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void eSet(int featureID, Object newValue) {
+ switch (featureID) {
+ case SdbpmnPackage.STARDUST_START_EVENT_TYPE__STARDUST_ATTRIBUTES:
+ setStardustAttributes((StardustAttributesType)newValue);
+ return;
+ }
+ super.eSet(featureID, newValue);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void eUnset(int featureID) {
+ switch (featureID) {
+ case SdbpmnPackage.STARDUST_START_EVENT_TYPE__STARDUST_ATTRIBUTES:
+ setStardustAttributes((StardustAttributesType)null);
+ return;
+ }
+ super.eUnset(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public boolean eIsSet(int featureID) {
+ switch (featureID) {
+ case SdbpmnPackage.STARDUST_START_EVENT_TYPE__STARDUST_ATTRIBUTES:
+ return stardustAttributes != null;
+ }
+ return super.eIsSet(featureID);
+ }
+
+} //StardustStartEventTypeImpl
diff --git a/model/org.eclipse.stardust.model.bpmn2/src/main/java/org/eclipse/stardust/model/bpmn2/sdbpmn/impl/StardustSubprocessTypeImpl.java b/model/org.eclipse.stardust.model.bpmn2/src/main/java/org/eclipse/stardust/model/bpmn2/sdbpmn/impl/StardustSubprocessTypeImpl.java new file mode 100644 index 0000000..189ab73 --- a/dev/null +++ b/model/org.eclipse.stardust.model.bpmn2/src/main/java/org/eclipse/stardust/model/bpmn2/sdbpmn/impl/StardustSubprocessTypeImpl.java @@ -0,0 +1,166 @@ +/**
+ * <copyright>
+ * </copyright>
+ *
+ * $Id$
+ */
+package org.eclipse.stardust.model.bpmn2.sdbpmn.impl;
+
+import org.eclipse.emf.common.notify.Notification;
+
+import org.eclipse.emf.ecore.EClass;
+
+import org.eclipse.emf.ecore.impl.ENotificationImpl;
+
+import org.eclipse.stardust.model.bpmn2.sdbpmn.SdbpmnPackage;
+import org.eclipse.stardust.model.bpmn2.sdbpmn.StardustSubprocessType;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>Stardust Subprocess Type</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * <ul>
+ * <li>{@link org.eclipse.stardust.model.bpmn2.sdbpmn.impl.StardustSubprocessTypeImpl#getImplementationProcess <em>Implementation Process</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @generated
+ */
+public class StardustSubprocessTypeImpl extends TStardustActivityImpl implements StardustSubprocessType {
+ /**
+ * The default value of the '{@link #getImplementationProcess() <em>Implementation Process</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getImplementationProcess()
+ * @generated
+ * @ordered
+ */
+ protected static final String IMPLEMENTATION_PROCESS_EDEFAULT = null;
+
+ /**
+ * The cached value of the '{@link #getImplementationProcess() <em>Implementation Process</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getImplementationProcess()
+ * @generated
+ * @ordered
+ */
+ protected String implementationProcess = IMPLEMENTATION_PROCESS_EDEFAULT;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected StardustSubprocessTypeImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ protected EClass eStaticClass() {
+ return SdbpmnPackage.Literals.STARDUST_SUBPROCESS_TYPE;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public String getImplementationProcess() {
+ return implementationProcess;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void setImplementationProcess(String newImplementationProcess) {
+ String oldImplementationProcess = implementationProcess;
+ implementationProcess = newImplementationProcess;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, SdbpmnPackage.STARDUST_SUBPROCESS_TYPE__IMPLEMENTATION_PROCESS, oldImplementationProcess, implementationProcess));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Object eGet(int featureID, boolean resolve, boolean coreType) {
+ switch (featureID) {
+ case SdbpmnPackage.STARDUST_SUBPROCESS_TYPE__IMPLEMENTATION_PROCESS:
+ return getImplementationProcess();
+ }
+ return super.eGet(featureID, resolve, coreType);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void eSet(int featureID, Object newValue) {
+ switch (featureID) {
+ case SdbpmnPackage.STARDUST_SUBPROCESS_TYPE__IMPLEMENTATION_PROCESS:
+ setImplementationProcess((String)newValue);
+ return;
+ }
+ super.eSet(featureID, newValue);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void eUnset(int featureID) {
+ switch (featureID) {
+ case SdbpmnPackage.STARDUST_SUBPROCESS_TYPE__IMPLEMENTATION_PROCESS:
+ setImplementationProcess(IMPLEMENTATION_PROCESS_EDEFAULT);
+ return;
+ }
+ super.eUnset(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public boolean eIsSet(int featureID) {
+ switch (featureID) {
+ case SdbpmnPackage.STARDUST_SUBPROCESS_TYPE__IMPLEMENTATION_PROCESS:
+ return IMPLEMENTATION_PROCESS_EDEFAULT == null ? implementationProcess != null : !IMPLEMENTATION_PROCESS_EDEFAULT.equals(implementationProcess);
+ }
+ return super.eIsSet(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public String toString() {
+ if (eIsProxy()) return super.toString();
+
+ StringBuffer result = new StringBuffer(super.toString());
+ result.append(" (implementationProcess: ");
+ result.append(implementationProcess);
+ result.append(')');
+ return result.toString();
+ }
+
+} //StardustSubprocessTypeImpl
diff --git a/model/org.eclipse.stardust.model.bpmn2/src/main/java/org/eclipse/stardust/model/bpmn2/sdbpmn/impl/StardustTimerStartEventTypeImpl.java b/model/org.eclipse.stardust.model.bpmn2/src/main/java/org/eclipse/stardust/model/bpmn2/sdbpmn/impl/StardustTimerStartEventTypeImpl.java new file mode 100644 index 0000000..fa75826 --- a/dev/null +++ b/model/org.eclipse.stardust.model.bpmn2/src/main/java/org/eclipse/stardust/model/bpmn2/sdbpmn/impl/StardustTimerStartEventTypeImpl.java @@ -0,0 +1,180 @@ +/**
+ * <copyright>
+ * </copyright>
+ *
+ * $Id$
+ */
+package org.eclipse.stardust.model.bpmn2.sdbpmn.impl;
+
+import org.eclipse.emf.common.notify.Notification;
+import org.eclipse.emf.common.notify.NotificationChain;
+
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.InternalEObject;
+
+import org.eclipse.emf.ecore.impl.ENotificationImpl;
+import org.eclipse.emf.ecore.impl.EObjectImpl;
+
+import org.eclipse.stardust.model.bpmn2.sdbpmn.SdbpmnPackage;
+import org.eclipse.stardust.model.bpmn2.sdbpmn.StardustAttributesType;
+import org.eclipse.stardust.model.bpmn2.sdbpmn.StardustTimerStartEventType;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>Stardust Timer Start Event Type</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * <ul>
+ * <li>{@link org.eclipse.stardust.model.bpmn2.sdbpmn.impl.StardustTimerStartEventTypeImpl#getStardustAttributes <em>Stardust Attributes</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @generated
+ */
+public class StardustTimerStartEventTypeImpl extends EObjectImpl implements StardustTimerStartEventType {
+ /**
+ * The cached value of the '{@link #getStardustAttributes() <em>Stardust Attributes</em>}' containment reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getStardustAttributes()
+ * @generated
+ * @ordered
+ */
+ protected StardustAttributesType stardustAttributes;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected StardustTimerStartEventTypeImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ protected EClass eStaticClass() {
+ return SdbpmnPackage.Literals.STARDUST_TIMER_START_EVENT_TYPE;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public StardustAttributesType getStardustAttributes() {
+ return stardustAttributes;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public NotificationChain basicSetStardustAttributes(StardustAttributesType newStardustAttributes, NotificationChain msgs) {
+ StardustAttributesType oldStardustAttributes = stardustAttributes;
+ stardustAttributes = newStardustAttributes;
+ if (eNotificationRequired()) {
+ ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, SdbpmnPackage.STARDUST_TIMER_START_EVENT_TYPE__STARDUST_ATTRIBUTES, oldStardustAttributes, newStardustAttributes);
+ if (msgs == null) msgs = notification; else msgs.add(notification);
+ }
+ return msgs;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void setStardustAttributes(StardustAttributesType newStardustAttributes) {
+ if (newStardustAttributes != stardustAttributes) {
+ NotificationChain msgs = null;
+ if (stardustAttributes != null)
+ msgs = ((InternalEObject)stardustAttributes).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - SdbpmnPackage.STARDUST_TIMER_START_EVENT_TYPE__STARDUST_ATTRIBUTES, null, msgs);
+ if (newStardustAttributes != null)
+ msgs = ((InternalEObject)newStardustAttributes).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - SdbpmnPackage.STARDUST_TIMER_START_EVENT_TYPE__STARDUST_ATTRIBUTES, null, msgs);
+ msgs = basicSetStardustAttributes(newStardustAttributes, msgs);
+ if (msgs != null) msgs.dispatch();
+ }
+ else if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, SdbpmnPackage.STARDUST_TIMER_START_EVENT_TYPE__STARDUST_ATTRIBUTES, newStardustAttributes, newStardustAttributes));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) {
+ switch (featureID) {
+ case SdbpmnPackage.STARDUST_TIMER_START_EVENT_TYPE__STARDUST_ATTRIBUTES:
+ return basicSetStardustAttributes(null, msgs);
+ }
+ return super.eInverseRemove(otherEnd, featureID, msgs);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Object eGet(int featureID, boolean resolve, boolean coreType) {
+ switch (featureID) {
+ case SdbpmnPackage.STARDUST_TIMER_START_EVENT_TYPE__STARDUST_ATTRIBUTES:
+ return getStardustAttributes();
+ }
+ return super.eGet(featureID, resolve, coreType);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void eSet(int featureID, Object newValue) {
+ switch (featureID) {
+ case SdbpmnPackage.STARDUST_TIMER_START_EVENT_TYPE__STARDUST_ATTRIBUTES:
+ setStardustAttributes((StardustAttributesType)newValue);
+ return;
+ }
+ super.eSet(featureID, newValue);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void eUnset(int featureID) {
+ switch (featureID) {
+ case SdbpmnPackage.STARDUST_TIMER_START_EVENT_TYPE__STARDUST_ATTRIBUTES:
+ setStardustAttributes((StardustAttributesType)null);
+ return;
+ }
+ super.eUnset(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public boolean eIsSet(int featureID) {
+ switch (featureID) {
+ case SdbpmnPackage.STARDUST_TIMER_START_EVENT_TYPE__STARDUST_ATTRIBUTES:
+ return stardustAttributes != null;
+ }
+ return super.eIsSet(featureID);
+ }
+
+} //StardustTimerStartEventTypeImpl
diff --git a/model/org.eclipse.stardust.model.bpmn2/src/main/java/org/eclipse/stardust/model/bpmn2/s |

