Set resolveProxies=true for remaining cross-file references
Some references intended to be cross-file by the spec did not
have resolveProxies set (ConversationLink.source/targetRef,
FlowElement.categoryValueRef).
Their opposite references had to be removed due to requirements
by EMF and will have to be implemented manually later. This
concerns InteractionNode.incoming/outgoingConversationLinks
(implemented in subclasses) and
CategoryValue.categorizedFlowElements.
See discussion on mailing list from 19th August.
diff --git a/org.eclipse.bpmn2/model/BPMN20.ecore b/org.eclipse.bpmn2/model/BPMN20.ecore
index 192810d..c701bab 100644
--- a/org.eclipse.bpmn2/model/BPMN20.ecore
+++ b/org.eclipse.bpmn2/model/BPMN20.ecore
@@ -1762,8 +1762,8 @@
</eAnnotations>
</eStructuralFeatures>
<eStructuralFeatures xsi:type="ecore:EReference" name="categorizedFlowElements"
- ordered="false" upperBound="-1" eType="#//FlowElement" transient="true" derived="true"
- resolveProxies="false" eOpposite="#//FlowElement/categoryValueRef"/>
+ ordered="false" upperBound="-1" eType="#//FlowElement" changeable="false"
+ volatile="true" transient="true" derived="true" resolveProxies="false"/>
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="Choreography" eSuperTypes="#//Collaboration #//FlowElementsContainer">
<eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
@@ -2045,14 +2045,14 @@
</eAnnotations>
</eStructuralFeatures>
<eStructuralFeatures xsi:type="ecore:EReference" name="sourceRef" ordered="false"
- lowerBound="1" eType="#//InteractionNode" resolveProxies="false" eOpposite="#//InteractionNode/outgoingConversationLinks">
+ lowerBound="1" eType="#//InteractionNode">
<eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
<details key="kind" value="attribute"/>
<details key="name" value="sourceRef"/>
</eAnnotations>
</eStructuralFeatures>
<eStructuralFeatures xsi:type="ecore:EReference" name="targetRef" ordered="false"
- lowerBound="1" eType="#//InteractionNode" resolveProxies="false" eOpposite="#//InteractionNode/incomingConversationLinks">
+ lowerBound="1" eType="#//InteractionNode">
<eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
<details key="kind" value="attribute"/>
<details key="name" value="targetRef"/>
@@ -2742,7 +2742,7 @@
</eAnnotations>
</eStructuralFeatures>
<eStructuralFeatures xsi:type="ecore:EReference" name="categoryValueRef" ordered="false"
- upperBound="-1" eType="#//CategoryValue" resolveProxies="false" eOpposite="#//CategoryValue/categorizedFlowElements">
+ upperBound="-1" eType="#//CategoryValue">
<eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
<details key="kind" value="element"/>
<details key="name" value="categoryValueRef"/>
@@ -3116,11 +3116,11 @@
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="InteractionNode" abstract="true">
<eStructuralFeatures xsi:type="ecore:EReference" name="incomingConversationLinks"
- ordered="false" upperBound="-1" eType="#//ConversationLink" transient="true"
- derived="true" resolveProxies="false" eOpposite="#//ConversationLink/targetRef"/>
+ ordered="false" upperBound="-1" eType="#//ConversationLink" changeable="false"
+ volatile="true" transient="true" derived="true" resolveProxies="false"/>
<eStructuralFeatures xsi:type="ecore:EReference" name="outgoingConversationLinks"
- ordered="false" upperBound="-1" eType="#//ConversationLink" transient="true"
- derived="true" eOpposite="#//ConversationLink/sourceRef"/>
+ ordered="false" upperBound="-1" eType="#//ConversationLink" changeable="false"
+ volatile="true" transient="true" derived="true"/>
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="Interface" eSuperTypes="#//RootElement">
<eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
diff --git a/org.eclipse.bpmn2/src/org/eclipse/bpmn2/CategoryValue.java b/org.eclipse.bpmn2/src/org/eclipse/bpmn2/CategoryValue.java
index 34f1850..49a43b6 100644
--- a/org.eclipse.bpmn2/src/org/eclipse/bpmn2/CategoryValue.java
+++ b/org.eclipse.bpmn2/src/org/eclipse/bpmn2/CategoryValue.java
@@ -64,7 +64,6 @@
/**
* Returns the value of the '<em><b>Categorized Flow Elements</b></em>' reference list.
* The list contents are of type {@link org.eclipse.bpmn2.FlowElement}.
- * It is bidirectional and its opposite is '{@link org.eclipse.bpmn2.FlowElement#getCategoryValueRef <em>Category Value Ref</em>}'.
* <!-- begin-user-doc -->
* <p>
* If the meaning of the '<em>Categorized Flow Elements</em>' reference list isn't clear,
@@ -73,8 +72,7 @@
* <!-- end-user-doc -->
* @return the value of the '<em>Categorized Flow Elements</em>' reference list.
* @see org.eclipse.bpmn2.Bpmn2Package#getCategoryValue_CategorizedFlowElements()
- * @see org.eclipse.bpmn2.FlowElement#getCategoryValueRef
- * @model opposite="categoryValueRef" resolveProxies="false" transient="true" derived="true" ordered="false"
+ * @model resolveProxies="false" transient="true" changeable="false" volatile="true" derived="true" ordered="false"
* @generated
*/
List<FlowElement> getCategorizedFlowElements();
diff --git a/org.eclipse.bpmn2/src/org/eclipse/bpmn2/ConversationLink.java b/org.eclipse.bpmn2/src/org/eclipse/bpmn2/ConversationLink.java
index f38e138..bdfa1ba 100644
--- a/org.eclipse.bpmn2/src/org/eclipse/bpmn2/ConversationLink.java
+++ b/org.eclipse.bpmn2/src/org/eclipse/bpmn2/ConversationLink.java
@@ -62,7 +62,6 @@
/**
* Returns the value of the '<em><b>Source Ref</b></em>' reference.
- * It is bidirectional and its opposite is '{@link org.eclipse.bpmn2.InteractionNode#getOutgoingConversationLinks <em>Outgoing Conversation Links</em>}'.
* <!-- begin-user-doc -->
* <p>
* If the meaning of the '<em>Source Ref</em>' reference isn't clear,
@@ -72,8 +71,7 @@
* @return the value of the '<em>Source Ref</em>' reference.
* @see #setSourceRef(InteractionNode)
* @see org.eclipse.bpmn2.Bpmn2Package#getConversationLink_SourceRef()
- * @see org.eclipse.bpmn2.InteractionNode#getOutgoingConversationLinks
- * @model opposite="outgoingConversationLinks" resolveProxies="false" required="true" ordered="false"
+ * @model required="true" ordered="false"
* extendedMetaData="kind='attribute' name='sourceRef'"
* @generated
*/
@@ -91,7 +89,6 @@
/**
* Returns the value of the '<em><b>Target Ref</b></em>' reference.
- * It is bidirectional and its opposite is '{@link org.eclipse.bpmn2.InteractionNode#getIncomingConversationLinks <em>Incoming Conversation Links</em>}'.
* <!-- begin-user-doc -->
* <p>
* If the meaning of the '<em>Target Ref</em>' reference isn't clear,
@@ -101,8 +98,7 @@
* @return the value of the '<em>Target Ref</em>' reference.
* @see #setTargetRef(InteractionNode)
* @see org.eclipse.bpmn2.Bpmn2Package#getConversationLink_TargetRef()
- * @see org.eclipse.bpmn2.InteractionNode#getIncomingConversationLinks
- * @model opposite="incomingConversationLinks" resolveProxies="false" required="true" ordered="false"
+ * @model required="true" ordered="false"
* extendedMetaData="kind='attribute' name='targetRef'"
* @generated
*/
diff --git a/org.eclipse.bpmn2/src/org/eclipse/bpmn2/FlowElement.java b/org.eclipse.bpmn2/src/org/eclipse/bpmn2/FlowElement.java
index dd343fa..0ab16c6 100644
--- a/org.eclipse.bpmn2/src/org/eclipse/bpmn2/FlowElement.java
+++ b/org.eclipse.bpmn2/src/org/eclipse/bpmn2/FlowElement.java
@@ -94,7 +94,6 @@
/**
* Returns the value of the '<em><b>Category Value Ref</b></em>' reference list.
* The list contents are of type {@link org.eclipse.bpmn2.CategoryValue}.
- * It is bidirectional and its opposite is '{@link org.eclipse.bpmn2.CategoryValue#getCategorizedFlowElements <em>Categorized Flow Elements</em>}'.
* <!-- begin-user-doc -->
* <p>
* If the meaning of the '<em>Category Value Ref</em>' reference list isn't clear,
@@ -103,8 +102,7 @@
* <!-- end-user-doc -->
* @return the value of the '<em>Category Value Ref</em>' reference list.
* @see org.eclipse.bpmn2.Bpmn2Package#getFlowElement_CategoryValueRef()
- * @see org.eclipse.bpmn2.CategoryValue#getCategorizedFlowElements
- * @model opposite="categorizedFlowElements" resolveProxies="false" ordered="false"
+ * @model ordered="false"
* extendedMetaData="kind='element' name='categoryValueRef' namespace='http://www.omg.org/spec/BPMN/20100524/MODEL'"
* @generated
*/
diff --git a/org.eclipse.bpmn2/src/org/eclipse/bpmn2/InteractionNode.java b/org.eclipse.bpmn2/src/org/eclipse/bpmn2/InteractionNode.java
index ad15c42..0f95190 100644
--- a/org.eclipse.bpmn2/src/org/eclipse/bpmn2/InteractionNode.java
+++ b/org.eclipse.bpmn2/src/org/eclipse/bpmn2/InteractionNode.java
@@ -39,7 +39,6 @@
/**
* Returns the value of the '<em><b>Incoming Conversation Links</b></em>' reference list.
* The list contents are of type {@link org.eclipse.bpmn2.ConversationLink}.
- * It is bidirectional and its opposite is '{@link org.eclipse.bpmn2.ConversationLink#getTargetRef <em>Target Ref</em>}'.
* <!-- begin-user-doc -->
* <p>
* If the meaning of the '<em>Incoming Conversation Links</em>' reference list isn't clear,
@@ -48,8 +47,7 @@
* <!-- end-user-doc -->
* @return the value of the '<em>Incoming Conversation Links</em>' reference list.
* @see org.eclipse.bpmn2.Bpmn2Package#getInteractionNode_IncomingConversationLinks()
- * @see org.eclipse.bpmn2.ConversationLink#getTargetRef
- * @model opposite="targetRef" resolveProxies="false" transient="true" derived="true" ordered="false"
+ * @model resolveProxies="false" transient="true" changeable="false" volatile="true" derived="true" ordered="false"
* @generated
*/
List<ConversationLink> getIncomingConversationLinks();
@@ -57,7 +55,6 @@
/**
* Returns the value of the '<em><b>Outgoing Conversation Links</b></em>' reference list.
* The list contents are of type {@link org.eclipse.bpmn2.ConversationLink}.
- * It is bidirectional and its opposite is '{@link org.eclipse.bpmn2.ConversationLink#getSourceRef <em>Source Ref</em>}'.
* <!-- begin-user-doc -->
* <p>
* If the meaning of the '<em>Outgoing Conversation Links</em>' reference list isn't clear,
@@ -66,8 +63,7 @@
* <!-- end-user-doc -->
* @return the value of the '<em>Outgoing Conversation Links</em>' reference list.
* @see org.eclipse.bpmn2.Bpmn2Package#getInteractionNode_OutgoingConversationLinks()
- * @see org.eclipse.bpmn2.ConversationLink#getSourceRef
- * @model opposite="sourceRef" transient="true" derived="true" ordered="false"
+ * @model transient="true" changeable="false" volatile="true" derived="true" ordered="false"
* @generated
*/
List<ConversationLink> getOutgoingConversationLinks();
diff --git a/org.eclipse.bpmn2/src/org/eclipse/bpmn2/impl/CategoryValueImpl.java b/org.eclipse.bpmn2/src/org/eclipse/bpmn2/impl/CategoryValueImpl.java
index a4d8ae6..4ad26af 100644
--- a/org.eclipse.bpmn2/src/org/eclipse/bpmn2/impl/CategoryValueImpl.java
+++ b/org.eclipse.bpmn2/src/org/eclipse/bpmn2/impl/CategoryValueImpl.java
@@ -65,16 +65,6 @@
protected String value = VALUE_EDEFAULT;
/**
- * The cached value of the '{@link #getCategorizedFlowElements() <em>Categorized Flow Elements</em>}' reference list.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @see #getCategorizedFlowElements()
- * @generated
- * @ordered
- */
- protected EList<FlowElement> categorizedFlowElements;
-
- /**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
@@ -117,49 +107,16 @@
/**
* <!-- begin-user-doc -->
+ * TODO: Implement as virtual opposite to Bpmn2Package.FLOW_ELEMENT__CATEGORY_VALUE_REF
* <!-- end-user-doc -->
* @generated
*/
public List<FlowElement> getCategorizedFlowElements() {
- if (categorizedFlowElements == null) {
- categorizedFlowElements = new EObjectWithInverseEList.ManyInverse<FlowElement>(
- FlowElement.class, this,
- Bpmn2Package.CATEGORY_VALUE__CATEGORIZED_FLOW_ELEMENTS,
- Bpmn2Package.FLOW_ELEMENT__CATEGORY_VALUE_REF);
- }
- return categorizedFlowElements;
- }
-
- /**
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- @SuppressWarnings("unchecked")
- @Override
- public NotificationChain eInverseAdd(InternalEObject otherEnd, int featureID,
- NotificationChain msgs) {
- switch (featureID) {
- case Bpmn2Package.CATEGORY_VALUE__CATEGORIZED_FLOW_ELEMENTS:
- return ((InternalEList<InternalEObject>) (InternalEList<?>) getCategorizedFlowElements())
- .basicAdd(otherEnd, msgs);
- }
- return super.eInverseAdd(otherEnd, featureID, msgs);
- }
-
- /**
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- @Override
- public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID,
- NotificationChain msgs) {
- switch (featureID) {
- case Bpmn2Package.CATEGORY_VALUE__CATEGORIZED_FLOW_ELEMENTS:
- return ((InternalEList<?>) getCategorizedFlowElements()).basicRemove(otherEnd, msgs);
- }
- return super.eInverseRemove(otherEnd, featureID, msgs);
+ // TODO: implement this method to return the 'Categorized Flow Elements' reference list
+ // Ensure that you remove @generated or mark it @generated NOT
+ // The list is expected to implement org.eclipse.emf.ecore.util.InternalEList and org.eclipse.emf.ecore.EStructuralFeature.Setting
+ // so it's likely that an appropriate subclass of org.eclipse.emf.ecore.util.EcoreEList should be used.
+ throw new UnsupportedOperationException();
}
/**
@@ -190,10 +147,6 @@
case Bpmn2Package.CATEGORY_VALUE__VALUE:
setValue((String) newValue);
return;
- case Bpmn2Package.CATEGORY_VALUE__CATEGORIZED_FLOW_ELEMENTS:
- getCategorizedFlowElements().clear();
- getCategorizedFlowElements().addAll((Collection<? extends FlowElement>) newValue);
- return;
}
super.eSet(featureID, newValue);
}
@@ -209,9 +162,6 @@
case Bpmn2Package.CATEGORY_VALUE__VALUE:
setValue(VALUE_EDEFAULT);
return;
- case Bpmn2Package.CATEGORY_VALUE__CATEGORIZED_FLOW_ELEMENTS:
- getCategorizedFlowElements().clear();
- return;
}
super.eUnset(featureID);
}
@@ -227,7 +177,7 @@
case Bpmn2Package.CATEGORY_VALUE__VALUE:
return VALUE_EDEFAULT == null ? value != null : !VALUE_EDEFAULT.equals(value);
case Bpmn2Package.CATEGORY_VALUE__CATEGORIZED_FLOW_ELEMENTS:
- return categorizedFlowElements != null && !categorizedFlowElements.isEmpty();
+ return !getCategorizedFlowElements().isEmpty();
}
return super.eIsSet(featureID);
}
diff --git a/org.eclipse.bpmn2/src/org/eclipse/bpmn2/impl/ConversationLinkImpl.java b/org.eclipse.bpmn2/src/org/eclipse/bpmn2/impl/ConversationLinkImpl.java
index 44972db..b7b706d 100644
--- a/org.eclipse.bpmn2/src/org/eclipse/bpmn2/impl/ConversationLinkImpl.java
+++ b/org.eclipse.bpmn2/src/org/eclipse/bpmn2/impl/ConversationLinkImpl.java
@@ -126,6 +126,15 @@
* @generated
*/
public InteractionNode getSourceRef() {
+ if (sourceRef != null && sourceRef.eIsProxy()) {
+ InternalEObject oldSourceRef = (InternalEObject) sourceRef;
+ sourceRef = (InteractionNode) eResolveProxy(oldSourceRef);
+ if (sourceRef != oldSourceRef) {
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.RESOLVE,
+ Bpmn2Package.CONVERSATION_LINK__SOURCE_REF, oldSourceRef, sourceRef));
+ }
+ }
return sourceRef;
}
@@ -134,18 +143,8 @@
* <!-- end-user-doc -->
* @generated
*/
- public NotificationChain basicSetSourceRef(InteractionNode newSourceRef, NotificationChain msgs) {
- InteractionNode oldSourceRef = sourceRef;
- sourceRef = newSourceRef;
- if (eNotificationRequired()) {
- ENotificationImpl notification = new ENotificationImpl(this, Notification.SET,
- Bpmn2Package.CONVERSATION_LINK__SOURCE_REF, oldSourceRef, newSourceRef);
- if (msgs == null)
- msgs = notification;
- else
- msgs.add(notification);
- }
- return msgs;
+ public InteractionNode basicGetSourceRef() {
+ return sourceRef;
}
/**
@@ -154,22 +153,11 @@
* @generated
*/
public void setSourceRef(InteractionNode newSourceRef) {
- if (newSourceRef != sourceRef) {
- NotificationChain msgs = null;
- if (sourceRef != null)
- msgs = ((InternalEObject) sourceRef).eInverseRemove(this,
- Bpmn2Package.INTERACTION_NODE__OUTGOING_CONVERSATION_LINKS,
- InteractionNode.class, msgs);
- if (newSourceRef != null)
- msgs = ((InternalEObject) newSourceRef).eInverseAdd(this,
- Bpmn2Package.INTERACTION_NODE__OUTGOING_CONVERSATION_LINKS,
- InteractionNode.class, msgs);
- msgs = basicSetSourceRef(newSourceRef, msgs);
- if (msgs != null)
- msgs.dispatch();
- } else if (eNotificationRequired())
+ InteractionNode oldSourceRef = sourceRef;
+ sourceRef = newSourceRef;
+ if (eNotificationRequired())
eNotify(new ENotificationImpl(this, Notification.SET,
- Bpmn2Package.CONVERSATION_LINK__SOURCE_REF, newSourceRef, newSourceRef));
+ Bpmn2Package.CONVERSATION_LINK__SOURCE_REF, oldSourceRef, sourceRef));
}
/**
@@ -178,6 +166,15 @@
* @generated
*/
public InteractionNode getTargetRef() {
+ if (targetRef != null && targetRef.eIsProxy()) {
+ InternalEObject oldTargetRef = (InternalEObject) targetRef;
+ targetRef = (InteractionNode) eResolveProxy(oldTargetRef);
+ if (targetRef != oldTargetRef) {
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.RESOLVE,
+ Bpmn2Package.CONVERSATION_LINK__TARGET_REF, oldTargetRef, targetRef));
+ }
+ }
return targetRef;
}
@@ -186,18 +183,8 @@
* <!-- end-user-doc -->
* @generated
*/
- public NotificationChain basicSetTargetRef(InteractionNode newTargetRef, NotificationChain msgs) {
- InteractionNode oldTargetRef = targetRef;
- targetRef = newTargetRef;
- if (eNotificationRequired()) {
- ENotificationImpl notification = new ENotificationImpl(this, Notification.SET,
- Bpmn2Package.CONVERSATION_LINK__TARGET_REF, oldTargetRef, newTargetRef);
- if (msgs == null)
- msgs = notification;
- else
- msgs.add(notification);
- }
- return msgs;
+ public InteractionNode basicGetTargetRef() {
+ return targetRef;
}
/**
@@ -206,64 +193,11 @@
* @generated
*/
public void setTargetRef(InteractionNode newTargetRef) {
- if (newTargetRef != targetRef) {
- NotificationChain msgs = null;
- if (targetRef != null)
- msgs = ((InternalEObject) targetRef).eInverseRemove(this,
- Bpmn2Package.INTERACTION_NODE__INCOMING_CONVERSATION_LINKS,
- InteractionNode.class, msgs);
- if (newTargetRef != null)
- msgs = ((InternalEObject) newTargetRef).eInverseAdd(this,
- Bpmn2Package.INTERACTION_NODE__INCOMING_CONVERSATION_LINKS,
- InteractionNode.class, msgs);
- msgs = basicSetTargetRef(newTargetRef, msgs);
- if (msgs != null)
- msgs.dispatch();
- } else if (eNotificationRequired())
+ InteractionNode oldTargetRef = targetRef;
+ targetRef = newTargetRef;
+ if (eNotificationRequired())
eNotify(new ENotificationImpl(this, Notification.SET,
- Bpmn2Package.CONVERSATION_LINK__TARGET_REF, newTargetRef, newTargetRef));
- }
-
- /**
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- @Override
- public NotificationChain eInverseAdd(InternalEObject otherEnd, int featureID,
- NotificationChain msgs) {
- switch (featureID) {
- case Bpmn2Package.CONVERSATION_LINK__SOURCE_REF:
- if (sourceRef != null)
- msgs = ((InternalEObject) sourceRef).eInverseRemove(this,
- Bpmn2Package.INTERACTION_NODE__OUTGOING_CONVERSATION_LINKS,
- InteractionNode.class, msgs);
- return basicSetSourceRef((InteractionNode) otherEnd, msgs);
- case Bpmn2Package.CONVERSATION_LINK__TARGET_REF:
- if (targetRef != null)
- msgs = ((InternalEObject) targetRef).eInverseRemove(this,
- Bpmn2Package.INTERACTION_NODE__INCOMING_CONVERSATION_LINKS,
- InteractionNode.class, msgs);
- return basicSetTargetRef((InteractionNode) otherEnd, msgs);
- }
- return super.eInverseAdd(otherEnd, featureID, msgs);
- }
-
- /**
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- @Override
- public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID,
- NotificationChain msgs) {
- switch (featureID) {
- case Bpmn2Package.CONVERSATION_LINK__SOURCE_REF:
- return basicSetSourceRef(null, msgs);
- case Bpmn2Package.CONVERSATION_LINK__TARGET_REF:
- return basicSetTargetRef(null, msgs);
- }
- return super.eInverseRemove(otherEnd, featureID, msgs);
+ Bpmn2Package.CONVERSATION_LINK__TARGET_REF, oldTargetRef, targetRef));
}
/**
@@ -277,9 +211,13 @@
case Bpmn2Package.CONVERSATION_LINK__NAME:
return getName();
case Bpmn2Package.CONVERSATION_LINK__SOURCE_REF:
- return getSourceRef();
+ if (resolve)
+ return getSourceRef();
+ return basicGetSourceRef();
case Bpmn2Package.CONVERSATION_LINK__TARGET_REF:
- return getTargetRef();
+ if (resolve)
+ return getTargetRef();
+ return basicGetTargetRef();
}
return super.eGet(featureID, resolve, coreType);
}
diff --git a/org.eclipse.bpmn2/src/org/eclipse/bpmn2/impl/ConversationNodeImpl.java b/org.eclipse.bpmn2/src/org/eclipse/bpmn2/impl/ConversationNodeImpl.java
index 64ab203..91f5177 100644
--- a/org.eclipse.bpmn2/src/org/eclipse/bpmn2/impl/ConversationNodeImpl.java
+++ b/org.eclipse.bpmn2/src/org/eclipse/bpmn2/impl/ConversationNodeImpl.java
@@ -56,26 +56,6 @@
*/
public abstract class ConversationNodeImpl extends BaseElementImpl implements ConversationNode {
/**
- * The cached value of the '{@link #getIncomingConversationLinks() <em>Incoming Conversation Links</em>}' reference list.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @see #getIncomingConversationLinks()
- * @generated
- * @ordered
- */
- protected EList<ConversationLink> incomingConversationLinks;
-
- /**
- * The cached value of the '{@link #getOutgoingConversationLinks() <em>Outgoing Conversation Links</em>}' reference list.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @see #getOutgoingConversationLinks()
- * @generated
- * @ordered
- */
- protected EList<ConversationLink> outgoingConversationLinks;
-
- /**
* The cached value of the '{@link #getParticipantRefs() <em>Participant Refs</em>}' reference list.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
@@ -146,32 +126,30 @@
/**
* <!-- begin-user-doc -->
+ * TODO: implement as virtual opposite to Bpmn2Package.CONVERSATION_LINK__TARGET_REF
* <!-- end-user-doc -->
* @generated
*/
public List<ConversationLink> getIncomingConversationLinks() {
- if (incomingConversationLinks == null) {
- incomingConversationLinks = new EObjectWithInverseEList<ConversationLink>(
- ConversationLink.class, this,
- Bpmn2Package.CONVERSATION_NODE__INCOMING_CONVERSATION_LINKS,
- Bpmn2Package.CONVERSATION_LINK__TARGET_REF);
- }
- return incomingConversationLinks;
+ // TODO: implement this method to return the 'Incoming Conversation Links' reference list
+ // Ensure that you remove @generated or mark it @generated NOT
+ // The list is expected to implement org.eclipse.emf.ecore.util.InternalEList and org.eclipse.emf.ecore.EStructuralFeature.Setting
+ // so it's likely that an appropriate subclass of org.eclipse.emf.ecore.util.EcoreEList should be used.
+ throw new UnsupportedOperationException();
}
/**
* <!-- begin-user-doc -->
+ * TODO: implement as virtual opposite to Bpmn2Package.CONVERSATION_LINK__SOURCE_REF
* <!-- end-user-doc -->
* @generated
*/
public List<ConversationLink> getOutgoingConversationLinks() {
- if (outgoingConversationLinks == null) {
- outgoingConversationLinks = new EObjectWithInverseResolvingEList<ConversationLink>(
- ConversationLink.class, this,
- Bpmn2Package.CONVERSATION_NODE__OUTGOING_CONVERSATION_LINKS,
- Bpmn2Package.CONVERSATION_LINK__SOURCE_REF);
- }
- return outgoingConversationLinks;
+ // TODO: implement this method to return the 'Outgoing Conversation Links' reference list
+ // Ensure that you remove @generated or mark it @generated NOT
+ // The list is expected to implement org.eclipse.emf.ecore.util.InternalEList and org.eclipse.emf.ecore.EStructuralFeature.Setting
+ // so it's likely that an appropriate subclass of org.eclipse.emf.ecore.util.EcoreEList should be used.
+ throw new UnsupportedOperationException();
}
/**
@@ -240,34 +218,10 @@
* <!-- end-user-doc -->
* @generated
*/
- @SuppressWarnings("unchecked")
- @Override
- public NotificationChain eInverseAdd(InternalEObject otherEnd, int featureID,
- NotificationChain msgs) {
- switch (featureID) {
- case Bpmn2Package.CONVERSATION_NODE__INCOMING_CONVERSATION_LINKS:
- return ((InternalEList<InternalEObject>) (InternalEList<?>) getIncomingConversationLinks())
- .basicAdd(otherEnd, msgs);
- case Bpmn2Package.CONVERSATION_NODE__OUTGOING_CONVERSATION_LINKS:
- return ((InternalEList<InternalEObject>) (InternalEList<?>) getOutgoingConversationLinks())
- .basicAdd(otherEnd, msgs);
- }
- return super.eInverseAdd(otherEnd, featureID, msgs);
- }
-
- /**
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
@Override
public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID,
NotificationChain msgs) {
switch (featureID) {
- case Bpmn2Package.CONVERSATION_NODE__INCOMING_CONVERSATION_LINKS:
- return ((InternalEList<?>) getIncomingConversationLinks()).basicRemove(otherEnd, msgs);
- case Bpmn2Package.CONVERSATION_NODE__OUTGOING_CONVERSATION_LINKS:
- return ((InternalEList<?>) getOutgoingConversationLinks()).basicRemove(otherEnd, msgs);
case Bpmn2Package.CONVERSATION_NODE__CORRELATION_KEYS:
return ((InternalEList<?>) getCorrelationKeys()).basicRemove(otherEnd, msgs);
}
@@ -307,16 +261,6 @@
@Override
public void eSet(int featureID, Object newValue) {
switch (featureID) {
- case Bpmn2Package.CONVERSATION_NODE__INCOMING_CONVERSATION_LINKS:
- getIncomingConversationLinks().clear();
- getIncomingConversationLinks()
- .addAll((Collection<? extends ConversationLink>) newValue);
- return;
- case Bpmn2Package.CONVERSATION_NODE__OUTGOING_CONVERSATION_LINKS:
- getOutgoingConversationLinks().clear();
- getOutgoingConversationLinks()
- .addAll((Collection<? extends ConversationLink>) newValue);
- return;
case Bpmn2Package.CONVERSATION_NODE__PARTICIPANT_REFS:
getParticipantRefs().clear();
getParticipantRefs().addAll((Collection<? extends Participant>) newValue);
@@ -344,12 +288,6 @@
@Override
public void eUnset(int featureID) {
switch (featureID) {
- case Bpmn2Package.CONVERSATION_NODE__INCOMING_CONVERSATION_LINKS:
- getIncomingConversationLinks().clear();
- return;
- case Bpmn2Package.CONVERSATION_NODE__OUTGOING_CONVERSATION_LINKS:
- getOutgoingConversationLinks().clear();
- return;
case Bpmn2Package.CONVERSATION_NODE__PARTICIPANT_REFS:
getParticipantRefs().clear();
return;
@@ -375,9 +313,9 @@
public boolean eIsSet(int featureID) {
switch (featureID) {
case Bpmn2Package.CONVERSATION_NODE__INCOMING_CONVERSATION_LINKS:
- return incomingConversationLinks != null && !incomingConversationLinks.isEmpty();
+ return !getIncomingConversationLinks().isEmpty();
case Bpmn2Package.CONVERSATION_NODE__OUTGOING_CONVERSATION_LINKS:
- return outgoingConversationLinks != null && !outgoingConversationLinks.isEmpty();
+ return !getOutgoingConversationLinks().isEmpty();
case Bpmn2Package.CONVERSATION_NODE__PARTICIPANT_REFS:
return participantRefs != null && !participantRefs.isEmpty();
case Bpmn2Package.CONVERSATION_NODE__MESSAGE_FLOW_REFS:
diff --git a/org.eclipse.bpmn2/src/org/eclipse/bpmn2/impl/EventImpl.java b/org.eclipse.bpmn2/src/org/eclipse/bpmn2/impl/EventImpl.java
index 9f47ad8..e856d74 100644
--- a/org.eclipse.bpmn2/src/org/eclipse/bpmn2/impl/EventImpl.java
+++ b/org.eclipse.bpmn2/src/org/eclipse/bpmn2/impl/EventImpl.java
@@ -48,26 +48,6 @@
*/
public abstract class EventImpl extends FlowNodeImpl implements Event {
/**
- * The cached value of the '{@link #getIncomingConversationLinks() <em>Incoming Conversation Links</em>}' reference list.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @see #getIncomingConversationLinks()
- * @generated
- * @ordered
- */
- protected EList<ConversationLink> incomingConversationLinks;
-
- /**
- * The cached value of the '{@link #getOutgoingConversationLinks() <em>Outgoing Conversation Links</em>}' reference list.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @see #getOutgoingConversationLinks()
- * @generated
- * @ordered
- */
- protected EList<ConversationLink> outgoingConversationLinks;
-
- /**
* The cached value of the '{@link #getProperties() <em>Properties</em>}' containment reference list.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
@@ -98,30 +78,30 @@
/**
* <!-- begin-user-doc -->
+ * TODO: implement as virtual opposite to Bpmn2Package.CONVERSATION_LINK__TARGET_REF
* <!-- end-user-doc -->
* @generated
*/
public List<ConversationLink> getIncomingConversationLinks() {
- if (incomingConversationLinks == null) {
- incomingConversationLinks = new EObjectWithInverseEList<ConversationLink>(
- ConversationLink.class, this, Bpmn2Package.EVENT__INCOMING_CONVERSATION_LINKS,
- Bpmn2Package.CONVERSATION_LINK__TARGET_REF);
- }
- return incomingConversationLinks;
+ // TODO: implement this method to return the 'Incoming Conversation Links' reference list
+ // Ensure that you remove @generated or mark it @generated NOT
+ // The list is expected to implement org.eclipse.emf.ecore.util.InternalEList and org.eclipse.emf.ecore.EStructuralFeature.Setting
+ // so it's likely that an appropriate subclass of org.eclipse.emf.ecore.util.EcoreEList should be used.
+ throw new UnsupportedOperationException();
}
/**
* <!-- begin-user-doc -->
+ * TODO: implement as virtual opposite to Bpmn2Package.CONVERSATION_LINK__SOURCE_REF
* <!-- end-user-doc -->
* @generated
*/
public List<ConversationLink> getOutgoingConversationLinks() {
- if (outgoingConversationLinks == null) {
- outgoingConversationLinks = new EObjectWithInverseResolvingEList<ConversationLink>(
- ConversationLink.class, this, Bpmn2Package.EVENT__OUTGOING_CONVERSATION_LINKS,
- Bpmn2Package.CONVERSATION_LINK__SOURCE_REF);
- }
- return outgoingConversationLinks;
+ // TODO: implement this method to return the 'Outgoing Conversation Links' reference list
+ // Ensure that you remove @generated or mark it @generated NOT
+ // The list is expected to implement org.eclipse.emf.ecore.util.InternalEList and org.eclipse.emf.ecore.EStructuralFeature.Setting
+ // so it's likely that an appropriate subclass of org.eclipse.emf.ecore.util.EcoreEList should be used.
+ throw new UnsupportedOperationException();
}
/**
@@ -142,34 +122,10 @@
* <!-- end-user-doc -->
* @generated
*/
- @SuppressWarnings("unchecked")
- @Override
- public NotificationChain eInverseAdd(InternalEObject otherEnd, int featureID,
- NotificationChain msgs) {
- switch (featureID) {
- case Bpmn2Package.EVENT__INCOMING_CONVERSATION_LINKS:
- return ((InternalEList<InternalEObject>) (InternalEList<?>) getIncomingConversationLinks())
- .basicAdd(otherEnd, msgs);
- case Bpmn2Package.EVENT__OUTGOING_CONVERSATION_LINKS:
- return ((InternalEList<InternalEObject>) (InternalEList<?>) getOutgoingConversationLinks())
- .basicAdd(otherEnd, msgs);
- }
- return super.eInverseAdd(otherEnd, featureID, msgs);
- }
-
- /**
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
@Override
public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID,
NotificationChain msgs) {
switch (featureID) {
- case Bpmn2Package.EVENT__INCOMING_CONVERSATION_LINKS:
- return ((InternalEList<?>) getIncomingConversationLinks()).basicRemove(otherEnd, msgs);
- case Bpmn2Package.EVENT__OUTGOING_CONVERSATION_LINKS:
- return ((InternalEList<?>) getOutgoingConversationLinks()).basicRemove(otherEnd, msgs);
case Bpmn2Package.EVENT__PROPERTIES:
return ((InternalEList<?>) getProperties()).basicRemove(otherEnd, msgs);
}
@@ -203,16 +159,6 @@
@Override
public void eSet(int featureID, Object newValue) {
switch (featureID) {
- case Bpmn2Package.EVENT__INCOMING_CONVERSATION_LINKS:
- getIncomingConversationLinks().clear();
- getIncomingConversationLinks()
- .addAll((Collection<? extends ConversationLink>) newValue);
- return;
- case Bpmn2Package.EVENT__OUTGOING_CONVERSATION_LINKS:
- getOutgoingConversationLinks().clear();
- getOutgoingConversationLinks()
- .addAll((Collection<? extends ConversationLink>) newValue);
- return;
case Bpmn2Package.EVENT__PROPERTIES:
getProperties().clear();
getProperties().addAll((Collection<? extends Property>) newValue);
@@ -229,12 +175,6 @@
@Override
public void eUnset(int featureID) {
switch (featureID) {
- case Bpmn2Package.EVENT__INCOMING_CONVERSATION_LINKS:
- getIncomingConversationLinks().clear();
- return;
- case Bpmn2Package.EVENT__OUTGOING_CONVERSATION_LINKS:
- getOutgoingConversationLinks().clear();
- return;
case Bpmn2Package.EVENT__PROPERTIES:
getProperties().clear();
return;
@@ -251,9 +191,9 @@
public boolean eIsSet(int featureID) {
switch (featureID) {
case Bpmn2Package.EVENT__INCOMING_CONVERSATION_LINKS:
- return incomingConversationLinks != null && !incomingConversationLinks.isEmpty();
+ return !getIncomingConversationLinks().isEmpty();
case Bpmn2Package.EVENT__OUTGOING_CONVERSATION_LINKS:
- return outgoingConversationLinks != null && !outgoingConversationLinks.isEmpty();
+ return !getOutgoingConversationLinks().isEmpty();
case Bpmn2Package.EVENT__PROPERTIES:
return properties != null && !properties.isEmpty();
}
diff --git a/org.eclipse.bpmn2/src/org/eclipse/bpmn2/impl/FlowElementImpl.java b/org.eclipse.bpmn2/src/org/eclipse/bpmn2/impl/FlowElementImpl.java
index 6e14b38..24b3ad9 100644
--- a/org.eclipse.bpmn2/src/org/eclipse/bpmn2/impl/FlowElementImpl.java
+++ b/org.eclipse.bpmn2/src/org/eclipse/bpmn2/impl/FlowElementImpl.java
@@ -28,9 +28,7 @@
import org.eclipse.emf.ecore.EClass;
import org.eclipse.emf.ecore.InternalEObject;
import org.eclipse.emf.ecore.impl.ENotificationImpl;
-import org.eclipse.emf.ecore.util.EObjectWithInverseResolvingEList;
-import org.eclipse.emf.ecore.util.EObjectWithInverseEList;
-import org.eclipse.emf.ecore.util.InternalEList;
+import org.eclipse.emf.ecore.util.EObjectResolvingEList;
/**
* <!-- begin-user-doc -->
@@ -225,9 +223,8 @@
*/
public List<CategoryValue> getCategoryValueRef() {
if (categoryValueRef == null) {
- categoryValueRef = new EObjectWithInverseEList.ManyInverse<CategoryValue>(
- CategoryValue.class, this, Bpmn2Package.FLOW_ELEMENT__CATEGORY_VALUE_REF,
- Bpmn2Package.CATEGORY_VALUE__CATEGORIZED_FLOW_ELEMENTS);
+ categoryValueRef = new EObjectResolvingEList<CategoryValue>(CategoryValue.class, this,
+ Bpmn2Package.FLOW_ELEMENT__CATEGORY_VALUE_REF);
}
return categoryValueRef;
}
@@ -259,23 +256,6 @@
* <!-- end-user-doc -->
* @generated
*/
- @SuppressWarnings("unchecked")
- @Override
- public NotificationChain eInverseAdd(InternalEObject otherEnd, int featureID,
- NotificationChain msgs) {
- switch (featureID) {
- case Bpmn2Package.FLOW_ELEMENT__CATEGORY_VALUE_REF:
- return ((InternalEList<InternalEObject>) (InternalEList<?>) getCategoryValueRef())
- .basicAdd(otherEnd, msgs);
- }
- return super.eInverseAdd(otherEnd, featureID, msgs);
- }
-
- /**
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
@Override
public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID,
NotificationChain msgs) {
@@ -284,8 +264,6 @@
return basicSetAuditing(null, msgs);
case Bpmn2Package.FLOW_ELEMENT__MONITORING:
return basicSetMonitoring(null, msgs);
- case Bpmn2Package.FLOW_ELEMENT__CATEGORY_VALUE_REF:
- return ((InternalEList<?>) getCategoryValueRef()).basicRemove(otherEnd, msgs);
}
return super.eInverseRemove(otherEnd, featureID, msgs);
}
diff --git a/org.eclipse.bpmn2/src/org/eclipse/bpmn2/impl/InteractionNodeImpl.java b/org.eclipse.bpmn2/src/org/eclipse/bpmn2/impl/InteractionNodeImpl.java
index 78e57dc..832e7a6 100644
--- a/org.eclipse.bpmn2/src/org/eclipse/bpmn2/impl/InteractionNodeImpl.java
+++ b/org.eclipse.bpmn2/src/org/eclipse/bpmn2/impl/InteractionNodeImpl.java
@@ -45,26 +45,6 @@
*/
public abstract class InteractionNodeImpl extends EObjectImpl implements InteractionNode {
/**
- * The cached value of the '{@link #getIncomingConversationLinks() <em>Incoming Conversation Links</em>}' reference list.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @see #getIncomingConversationLinks()
- * @generated
- * @ordered
- */
- protected EList<ConversationLink> incomingConversationLinks;
-
- /**
- * The cached value of the '{@link #getOutgoingConversationLinks() <em>Outgoing Conversation Links</em>}' reference list.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @see #getOutgoingConversationLinks()
- * @generated
- * @ordered
- */
- protected EList<ConversationLink> outgoingConversationLinks;
-
- /**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
@@ -85,69 +65,30 @@
/**
* <!-- begin-user-doc -->
+ * TODO: implement as virtual opposite to Bpmn2Package.CONVERSATION_LINK__TARGET_REF
* <!-- end-user-doc -->
* @generated
*/
public List<ConversationLink> getIncomingConversationLinks() {
- if (incomingConversationLinks == null) {
- incomingConversationLinks = new EObjectWithInverseEList<ConversationLink>(
- ConversationLink.class, this,
- Bpmn2Package.INTERACTION_NODE__INCOMING_CONVERSATION_LINKS,
- Bpmn2Package.CONVERSATION_LINK__TARGET_REF);
- }
- return incomingConversationLinks;
+ // TODO: implement this method to return the 'Incoming Conversation Links' reference list
+ // Ensure that you remove @generated or mark it @generated NOT
+ // The list is expected to implement org.eclipse.emf.ecore.util.InternalEList and org.eclipse.emf.ecore.EStructuralFeature.Setting
+ // so it's likely that an appropriate subclass of org.eclipse.emf.ecore.util.EcoreEList should be used.
+ throw new UnsupportedOperationException();
}
/**
* <!-- begin-user-doc -->
+ * TODO: implement as virtual opposite to Bpmn2Package.CONVERSATION_LINK__SOURCE_REF
* <!-- end-user-doc -->
* @generated
*/
public List<ConversationLink> getOutgoingConversationLinks() {
- if (outgoingConversationLinks == null) {
- outgoingConversationLinks = new EObjectWithInverseResolvingEList<ConversationLink>(
- ConversationLink.class, this,
- Bpmn2Package.INTERACTION_NODE__OUTGOING_CONVERSATION_LINKS,
- Bpmn2Package.CONVERSATION_LINK__SOURCE_REF);
- }
- return outgoingConversationLinks;
- }
-
- /**
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- @SuppressWarnings("unchecked")
- @Override
- public NotificationChain eInverseAdd(InternalEObject otherEnd, int featureID,
- NotificationChain msgs) {
- switch (featureID) {
- case Bpmn2Package.INTERACTION_NODE__INCOMING_CONVERSATION_LINKS:
- return ((InternalEList<InternalEObject>) (InternalEList<?>) getIncomingConversationLinks())
- .basicAdd(otherEnd, msgs);
- case Bpmn2Package.INTERACTION_NODE__OUTGOING_CONVERSATION_LINKS:
- return ((InternalEList<InternalEObject>) (InternalEList<?>) getOutgoingConversationLinks())
- .basicAdd(otherEnd, msgs);
- }
- return super.eInverseAdd(otherEnd, featureID, msgs);
- }
-
- /**
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- @Override
- public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID,
- NotificationChain msgs) {
- switch (featureID) {
- case Bpmn2Package.INTERACTION_NODE__INCOMING_CONVERSATION_LINKS:
- return ((InternalEList<?>) getIncomingConversationLinks()).basicRemove(otherEnd, msgs);
- case Bpmn2Package.INTERACTION_NODE__OUTGOING_CONVERSATION_LINKS:
- return ((InternalEList<?>) getOutgoingConversationLinks()).basicRemove(otherEnd, msgs);
- }
- return super.eInverseRemove(otherEnd, featureID, msgs);
+ // TODO: implement this method to return the 'Outgoing Conversation Links' reference list
+ // Ensure that you remove @generated or mark it @generated NOT
+ // The list is expected to implement org.eclipse.emf.ecore.util.InternalEList and org.eclipse.emf.ecore.EStructuralFeature.Setting
+ // so it's likely that an appropriate subclass of org.eclipse.emf.ecore.util.EcoreEList should be used.
+ throw new UnsupportedOperationException();
}
/**
@@ -171,54 +112,13 @@
* <!-- end-user-doc -->
* @generated
*/
- @SuppressWarnings("unchecked")
- @Override
- public void eSet(int featureID, Object newValue) {
- switch (featureID) {
- case Bpmn2Package.INTERACTION_NODE__INCOMING_CONVERSATION_LINKS:
- getIncomingConversationLinks().clear();
- getIncomingConversationLinks()
- .addAll((Collection<? extends ConversationLink>) newValue);
- return;
- case Bpmn2Package.INTERACTION_NODE__OUTGOING_CONVERSATION_LINKS:
- getOutgoingConversationLinks().clear();
- getOutgoingConversationLinks()
- .addAll((Collection<? extends ConversationLink>) newValue);
- return;
- }
- super.eSet(featureID, newValue);
- }
-
- /**
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- @Override
- public void eUnset(int featureID) {
- switch (featureID) {
- case Bpmn2Package.INTERACTION_NODE__INCOMING_CONVERSATION_LINKS:
- getIncomingConversationLinks().clear();
- return;
- case Bpmn2Package.INTERACTION_NODE__OUTGOING_CONVERSATION_LINKS:
- getOutgoingConversationLinks().clear();
- return;
- }
- super.eUnset(featureID);
- }
-
- /**
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
@Override
public boolean eIsSet(int featureID) {
switch (featureID) {
case Bpmn2Package.INTERACTION_NODE__INCOMING_CONVERSATION_LINKS:
- return incomingConversationLinks != null && !incomingConversationLinks.isEmpty();
+ return !getIncomingConversationLinks().isEmpty();
case Bpmn2Package.INTERACTION_NODE__OUTGOING_CONVERSATION_LINKS:
- return outgoingConversationLinks != null && !outgoingConversationLinks.isEmpty();
+ return !getOutgoingConversationLinks().isEmpty();
}
return super.eIsSet(featureID);
}
diff --git a/org.eclipse.bpmn2/src/org/eclipse/bpmn2/impl/ParticipantImpl.java b/org.eclipse.bpmn2/src/org/eclipse/bpmn2/impl/ParticipantImpl.java
index a34b4b5..ea28b77 100644
--- a/org.eclipse.bpmn2/src/org/eclipse/bpmn2/impl/ParticipantImpl.java
+++ b/org.eclipse.bpmn2/src/org/eclipse/bpmn2/impl/ParticipantImpl.java
@@ -56,26 +56,6 @@
*/
public class ParticipantImpl extends BaseElementImpl implements Participant {
/**
- * The cached value of the '{@link #getIncomingConversationLinks() <em>Incoming Conversation Links</em>}' reference list.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @see #getIncomingConversationLinks()
- * @generated
- * @ordered
- */
- protected EList<ConversationLink> incomingConversationLinks;
-
- /**
- * The cached value of the '{@link #getOutgoingConversationLinks() <em>Outgoing Conversation Links</em>}' reference list.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @see #getOutgoingConversationLinks()
- * @generated
- * @ordered
- */
- protected EList<ConversationLink> outgoingConversationLinks;
-
- /**
* The cached value of the '{@link #getInterfaceRefs() <em>Interface Refs</em>}' reference list.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
@@ -156,32 +136,30 @@
/**
* <!-- begin-user-doc -->
+ * TODO: implement as virtual opposite to Bpmn2Package.CONVERSATION_LINK__TARGET_REF
* <!-- end-user-doc -->
* @generated
*/
public List<ConversationLink> getIncomingConversationLinks() {
- if (incomingConversationLinks == null) {
- incomingConversationLinks = new EObjectWithInverseEList<ConversationLink>(
- ConversationLink.class, this,
- Bpmn2Package.PARTICIPANT__INCOMING_CONVERSATION_LINKS,
- Bpmn2Package.CONVERSATION_LINK__TARGET_REF);
- }
- return incomingConversationLinks;
+ // TODO: implement this method to return the 'Incoming Conversation Links' reference list
+ // Ensure that you remove @generated or mark it @generated NOT
+ // The list is expected to implement org.eclipse.emf.ecore.util.InternalEList and org.eclipse.emf.ecore.EStructuralFeature.Setting
+ // so it's likely that an appropriate subclass of org.eclipse.emf.ecore.util.EcoreEList should be used.
+ throw new UnsupportedOperationException();
}
/**
* <!-- begin-user-doc -->
+ * TODO: implement as virtual opposite to Bpmn2Package.CONVERSATION_LINK__SOURCE_REF
* <!-- end-user-doc -->
* @generated
*/
public List<ConversationLink> getOutgoingConversationLinks() {
- if (outgoingConversationLinks == null) {
- outgoingConversationLinks = new EObjectWithInverseResolvingEList<ConversationLink>(
- ConversationLink.class, this,
- Bpmn2Package.PARTICIPANT__OUTGOING_CONVERSATION_LINKS,
- Bpmn2Package.CONVERSATION_LINK__SOURCE_REF);
- }
- return outgoingConversationLinks;
+ // TODO: implement this method to return the 'Outgoing Conversation Links' reference list
+ // Ensure that you remove @generated or mark it @generated NOT
+ // The list is expected to implement org.eclipse.emf.ecore.util.InternalEList and org.eclipse.emf.ecore.EStructuralFeature.Setting
+ // so it's likely that an appropriate subclass of org.eclipse.emf.ecore.util.EcoreEList should be used.
+ throw new UnsupportedOperationException();
}
/**
@@ -332,34 +310,10 @@
* <!-- end-user-doc -->
* @generated
*/
- @SuppressWarnings("unchecked")
- @Override
- public NotificationChain eInverseAdd(InternalEObject otherEnd, int featureID,
- NotificationChain msgs) {
- switch (featureID) {
- case Bpmn2Package.PARTICIPANT__INCOMING_CONVERSATION_LINKS:
- return ((InternalEList<InternalEObject>) (InternalEList<?>) getIncomingConversationLinks())
- .basicAdd(otherEnd, msgs);
- case Bpmn2Package.PARTICIPANT__OUTGOING_CONVERSATION_LINKS:
- return ((InternalEList<InternalEObject>) (InternalEList<?>) getOutgoingConversationLinks())
- .basicAdd(otherEnd, msgs);
- }
- return super.eInverseAdd(otherEnd, featureID, msgs);
- }
-
- /**
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
@Override
public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID,
NotificationChain msgs) {
switch (featureID) {
- case Bpmn2Package.PARTICIPANT__INCOMING_CONVERSATION_LINKS:
- return ((InternalEList<?>) getIncomingConversationLinks()).basicRemove(otherEnd, msgs);
- case Bpmn2Package.PARTICIPANT__OUTGOING_CONVERSATION_LINKS:
- return ((InternalEList<?>) getOutgoingConversationLinks()).basicRemove(otherEnd, msgs);
case Bpmn2Package.PARTICIPANT__PARTICIPANT_MULTIPLICITY:
return basicSetParticipantMultiplicity(null, msgs);
}
@@ -403,16 +357,6 @@
@Override
public void eSet(int featureID, Object newValue) {
switch (featureID) {
- case Bpmn2Package.PARTICIPANT__INCOMING_CONVERSATION_LINKS:
- getIncomingConversationLinks().clear();
- getIncomingConversationLinks()
- .addAll((Collection<? extends ConversationLink>) newValue);
- return;
- case Bpmn2Package.PARTICIPANT__OUTGOING_CONVERSATION_LINKS:
- getOutgoingConversationLinks().clear();
- getOutgoingConversationLinks()
- .addAll((Collection<? extends ConversationLink>) newValue);
- return;
case Bpmn2Package.PARTICIPANT__INTERFACE_REFS:
getInterfaceRefs().clear();
getInterfaceRefs().addAll((Collection<? extends Interface>) newValue);
@@ -442,12 +386,6 @@
@Override
public void eUnset(int featureID) {
switch (featureID) {
- case Bpmn2Package.PARTICIPANT__INCOMING_CONVERSATION_LINKS:
- getIncomingConversationLinks().clear();
- return;
- case Bpmn2Package.PARTICIPANT__OUTGOING_CONVERSATION_LINKS:
- getOutgoingConversationLinks().clear();
- return;
case Bpmn2Package.PARTICIPANT__INTERFACE_REFS:
getInterfaceRefs().clear();
return;
@@ -476,9 +414,9 @@
public boolean eIsSet(int featureID) {
switch (featureID) {
case Bpmn2Package.PARTICIPANT__INCOMING_CONVERSATION_LINKS:
- return incomingConversationLinks != null && !incomingConversationLinks.isEmpty();
+ return !getIncomingConversationLinks().isEmpty();
case Bpmn2Package.PARTICIPANT__OUTGOING_CONVERSATION_LINKS:
- return outgoingConversationLinks != null && !outgoingConversationLinks.isEmpty();
+ return !getOutgoingConversationLinks().isEmpty();
case Bpmn2Package.PARTICIPANT__INTERFACE_REFS:
return interfaceRefs != null && !interfaceRefs.isEmpty();
case Bpmn2Package.PARTICIPANT__END_POINT_REFS:
diff --git a/org.eclipse.bpmn2/src/org/eclipse/bpmn2/impl/TaskImpl.java b/org.eclipse.bpmn2/src/org/eclipse/bpmn2/impl/TaskImpl.java
index 27b8533..f3dae09 100644
--- a/org.eclipse.bpmn2/src/org/eclipse/bpmn2/impl/TaskImpl.java
+++ b/org.eclipse.bpmn2/src/org/eclipse/bpmn2/impl/TaskImpl.java
@@ -45,26 +45,6 @@
*/
public class TaskImpl extends ActivityImpl implements Task {
/**
- * The cached value of the '{@link #getIncomingConversationLinks() <em>Incoming Conversation Links</em>}' reference list.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @see #getIncomingConversationLinks()
- * @generated
- * @ordered
- */
- protected EList<ConversationLink> incomingConversationLinks;
-
- /**
- * The cached value of the '{@link #getOutgoingConversationLinks() <em>Outgoing Conversation Links</em>}' reference list.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @see #getOutgoingConversationLinks()
- * @generated
- * @ordered
- */
- protected EList<ConversationLink> outgoingConversationLinks;
-
- /**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
@@ -85,67 +65,30 @@
/**
* <!-- begin-user-doc -->
+ * TODO: implement as virtual opposite to Bpmn2Package.CONVERSATION_LINK__TARGET_REF
* <!-- end-user-doc -->
* @generated
*/
public List<ConversationLink> getIncomingConversationLinks() {
- if (incomingConversationLinks == null) {
- incomingConversationLinks = new EObjectWithInverseEList<ConversationLink>(
- ConversationLink.class, this, Bpmn2Package.TASK__INCOMING_CONVERSATION_LINKS,
- Bpmn2Package.CONVERSATION_LINK__TARGET_REF);
- }
- return incomingConversationLinks;
+ // TODO: implement this method to return the 'Incoming Conversation Links' reference list
+ // Ensure that you remove @generated or mark it @generated NOT
+ // The list is expected to implement org.eclipse.emf.ecore.util.InternalEList and org.eclipse.emf.ecore.EStructuralFeature.Setting
+ // so it's likely that an appropriate subclass of org.eclipse.emf.ecore.util.EcoreEList should be used.
+ throw new UnsupportedOperationException();
}
/**
* <!-- begin-user-doc -->
+ * TODO: implement as virtual opposite to Bpmn2Package.CONVERSATION_LINK__SOURCE_REF
* <!-- end-user-doc -->
* @generated
*/
public List<ConversationLink> getOutgoingConversationLinks() {
- if (outgoingConversationLinks == null) {
- outgoingConversationLinks = new EObjectWithInverseResolvingEList<ConversationLink>(
- ConversationLink.class, this, Bpmn2Package.TASK__OUTGOING_CONVERSATION_LINKS,
- Bpmn2Package.CONVERSATION_LINK__SOURCE_REF);
- }
- return outgoingConversationLinks;
- }
-
- /**
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- @SuppressWarnings("unchecked")
- @Override
- public NotificationChain eInverseAdd(InternalEObject otherEnd, int featureID,
- NotificationChain msgs) {
- switch (featureID) {
- case Bpmn2Package.TASK__INCOMING_CONVERSATION_LINKS:
- return ((InternalEList<InternalEObject>) (InternalEList<?>) getIncomingConversationLinks())
- .basicAdd(otherEnd, msgs);
- case Bpmn2Package.TASK__OUTGOING_CONVERSATION_LINKS:
- return ((InternalEList<InternalEObject>) (InternalEList<?>) getOutgoingConversationLinks())
- .basicAdd(otherEnd, msgs);
- }
- return super.eInverseAdd(otherEnd, featureID, msgs);
- }
-
- /**
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- @Override
- public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID,
- NotificationChain msgs) {
- switch (featureID) {
- case Bpmn2Package.TASK__INCOMING_CONVERSATION_LINKS:
- return ((InternalEList<?>) getIncomingConversationLinks()).basicRemove(otherEnd, msgs);
- case Bpmn2Package.TASK__OUTGOING_CONVERSATION_LINKS:
- return ((InternalEList<?>) getOutgoingConversationLinks()).basicRemove(otherEnd, msgs);
- }
- return super.eInverseRemove(otherEnd, featureID, msgs);
+ // TODO: implement this method to return the 'Outgoing Conversation Links' reference list
+ // Ensure that you remove @generated or mark it @generated NOT
+ // The list is expected to implement org.eclipse.emf.ecore.util.InternalEList and org.eclipse.emf.ecore.EStructuralFeature.Setting
+ // so it's likely that an appropriate subclass of org.eclipse.emf.ecore.util.EcoreEList should be used.
+ throw new UnsupportedOperationException();
}
/**
@@ -169,54 +112,13 @@
* <!-- end-user-doc -->
* @generated
*/
- @SuppressWarnings("unchecked")
- @Override
- public void eSet(int featureID, Object newValue) {
- switch (featureID) {
- case Bpmn2Package.TASK__INCOMING_CONVERSATION_LINKS:
- getIncomingConversationLinks().clear();
- getIncomingConversationLinks()
- .addAll((Collection<? extends ConversationLink>) newValue);
- return;
- case Bpmn2Package.TASK__OUTGOING_CONVERSATION_LINKS:
- getOutgoingConversationLinks().clear();
- getOutgoingConversationLinks()
- .addAll((Collection<? extends ConversationLink>) newValue);
- return;
- }
- super.eSet(featureID, newValue);
- }
-
- /**
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- @Override
- public void eUnset(int featureID) {
- switch (featureID) {
- case Bpmn2Package.TASK__INCOMING_CONVERSATION_LINKS:
- getIncomingConversationLinks().clear();
- return;
- case Bpmn2Package.TASK__OUTGOING_CONVERSATION_LINKS:
- getOutgoingConversationLinks().clear();
- return;
- }
- super.eUnset(featureID);
- }
-
- /**
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
@Override
public boolean eIsSet(int featureID) {
switch (featureID) {
case Bpmn2Package.TASK__INCOMING_CONVERSATION_LINKS:
- return incomingConversationLinks != null && !incomingConversationLinks.isEmpty();
+ return !getIncomingConversationLinks().isEmpty();
case Bpmn2Package.TASK__OUTGOING_CONVERSATION_LINKS:
- return outgoingConversationLinks != null && !outgoingConversationLinks.isEmpty();
+ return !getOutgoingConversationLinks().isEmpty();
}
return super.eIsSet(featureID);
}
diff --git a/org.eclipse.bpmn2/src/org/eclipse/bpmn2/impl/bpmn2.ecore b/org.eclipse.bpmn2/src/org/eclipse/bpmn2/impl/bpmn2.ecore
index 848340b..1091d05 100644
--- a/org.eclipse.bpmn2/src/org/eclipse/bpmn2/impl/bpmn2.ecore
+++ b/org.eclipse.bpmn2/src/org/eclipse/bpmn2/impl/bpmn2.ecore
@@ -1762,8 +1762,8 @@
</eAnnotations>
</eStructuralFeatures>
<eStructuralFeatures xsi:type="ecore:EReference" name="categorizedFlowElements"
- ordered="false" upperBound="-1" eType="#//FlowElement" transient="true" derived="true"
- resolveProxies="false" eOpposite="#//FlowElement/categoryValueRef"/>
+ ordered="false" upperBound="-1" eType="#//FlowElement" changeable="false"
+ volatile="true" transient="true" derived="true" resolveProxies="false"/>
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="Choreography" eSuperTypes="#//Collaboration #//FlowElementsContainer">
<eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
@@ -2045,14 +2045,14 @@
</eAnnotations>
</eStructuralFeatures>
<eStructuralFeatures xsi:type="ecore:EReference" name="sourceRef" ordered="false"
- lowerBound="1" eType="#//InteractionNode" resolveProxies="false" eOpposite="#//InteractionNode/outgoingConversationLinks">
+ lowerBound="1" eType="#//InteractionNode">
<eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
<details key="kind" value="attribute"/>
<details key="name" value="sourceRef"/>
</eAnnotations>
</eStructuralFeatures>
<eStructuralFeatures xsi:type="ecore:EReference" name="targetRef" ordered="false"
- lowerBound="1" eType="#//InteractionNode" resolveProxies="false" eOpposite="#//InteractionNode/incomingConversationLinks">
+ lowerBound="1" eType="#//InteractionNode">
<eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
<details key="kind" value="attribute"/>
<details key="name" value="targetRef"/>
@@ -2743,7 +2743,7 @@
</eAnnotations>
</eStructuralFeatures>
<eStructuralFeatures xsi:type="ecore:EReference" name="categoryValueRef" ordered="false"
- upperBound="-1" eType="#//CategoryValue" resolveProxies="false" eOpposite="#//CategoryValue/categorizedFlowElements">
+ upperBound="-1" eType="#//CategoryValue">
<eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
<details key="kind" value="element"/>
<details key="name" value="categoryValueRef"/>
@@ -3117,11 +3117,11 @@
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="InteractionNode" abstract="true">
<eStructuralFeatures xsi:type="ecore:EReference" name="incomingConversationLinks"
- ordered="false" upperBound="-1" eType="#//ConversationLink" transient="true"
- derived="true" resolveProxies="false" eOpposite="#//ConversationLink/targetRef"/>
+ ordered="false" upperBound="-1" eType="#//ConversationLink" changeable="false"
+ volatile="true" transient="true" derived="true" resolveProxies="false"/>
<eStructuralFeatures xsi:type="ecore:EReference" name="outgoingConversationLinks"
- ordered="false" upperBound="-1" eType="#//ConversationLink" transient="true"
- derived="true" eOpposite="#//ConversationLink/sourceRef"/>
+ ordered="false" upperBound="-1" eType="#//ConversationLink" changeable="false"
+ volatile="true" transient="true" derived="true"/>
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="Interface" eSuperTypes="#//RootElement">
<eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">