Skip to main content
summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorArthur Daussy2014-12-10 10:13:45 -0500
committerMikael Barbero2014-12-16 03:19:51 -0500
commit8699a79682ac29b873ab9281e1edea5d194f4127 (patch)
tree17305e002b9d5ab3df384e9e37d751d1ece02feb
parenta849ec0449b6c6225ac465f0018c1eccb53bc911 (diff)
downloadorg.eclipse.emf.compare-8699a79682ac29b873ab9281e1edea5d194f4127.tar.gz
org.eclipse.emf.compare-8699a79682ac29b873ab9281e1edea5d194f4127.tar.xz
org.eclipse.emf.compare-8699a79682ac29b873ab9281e1edea5d194f4127.zip
Adds new node types in the "Nodes" metamodel to test EEnum
-rw-r--r--plugins/org.eclipse.emf.compare.tests/model/nodes.ecore13
-rw-r--r--plugins/org.eclipse.emf.compare.tests/src-gen/org/eclipse/emf/compare/tests/nodes/NodeEnum.java250
-rw-r--r--plugins/org.eclipse.emf.compare.tests/src-gen/org/eclipse/emf/compare/tests/nodes/NodeMultiValueEEnumAttribute.java57
-rw-r--r--plugins/org.eclipse.emf.compare.tests/src-gen/org/eclipse/emf/compare/tests/nodes/NodeSingleValueEEnumAttribute.java67
-rw-r--r--plugins/org.eclipse.emf.compare.tests/src-gen/org/eclipse/emf/compare/tests/nodes/NodesFactory.java18
-rw-r--r--plugins/org.eclipse.emf.compare.tests/src-gen/org/eclipse/emf/compare/tests/nodes/NodesPackage.java202
-rw-r--r--plugins/org.eclipse.emf.compare.tests/src-gen/org/eclipse/emf/compare/tests/nodes/impl/NodeMultiValueEEnumAttributeImpl.java163
-rw-r--r--plugins/org.eclipse.emf.compare.tests/src-gen/org/eclipse/emf/compare/tests/nodes/impl/NodeSingleValueEEnumAttributeImpl.java178
-rw-r--r--plugins/org.eclipse.emf.compare.tests/src-gen/org/eclipse/emf/compare/tests/nodes/impl/NodesFactoryImpl.java73
-rw-r--r--plugins/org.eclipse.emf.compare.tests/src-gen/org/eclipse/emf/compare/tests/nodes/impl/NodesPackageImpl.java111
-rw-r--r--plugins/org.eclipse.emf.compare.tests/src-gen/org/eclipse/emf/compare/tests/nodes/util/NodesAdapterFactory.java36
-rw-r--r--plugins/org.eclipse.emf.compare.tests/src-gen/org/eclipse/emf/compare/tests/nodes/util/NodesSwitch.java44
12 files changed, 1203 insertions, 9 deletions
diff --git a/plugins/org.eclipse.emf.compare.tests/model/nodes.ecore b/plugins/org.eclipse.emf.compare.tests/model/nodes.ecore
index 0dd749008..d85c30e7a 100644
--- a/plugins/org.eclipse.emf.compare.tests/model/nodes.ecore
+++ b/plugins/org.eclipse.emf.compare.tests/model/nodes.ecore
@@ -112,4 +112,17 @@
</eAnnotations>
</eStructuralFeatures>
</eClassifiers>
+ <eClassifiers xsi:type="ecore:EClass" name="NodeSingleValueEEnumAttribute" eSuperTypes="#//Node">
+ <eStructuralFeatures xsi:type="ecore:EAttribute" name="singlevalueEEnumAttribute"
+ eType="#//NodeEnum"/>
+ </eClassifiers>
+ <eClassifiers xsi:type="ecore:EEnum" name="NodeEnum">
+ <eLiterals name="A"/>
+ <eLiterals name="B" value="1"/>
+ <eLiterals name="C" value="2" literal="C"/>
+ </eClassifiers>
+ <eClassifiers xsi:type="ecore:EClass" name="NodeMultiValueEEnumAttribute" eSuperTypes="#//Node">
+ <eStructuralFeatures xsi:type="ecore:EAttribute" name="multiValueEEnumAttribute"
+ upperBound="-1" eType="#//NodeEnum"/>
+ </eClassifiers>
</ecore:EPackage>
diff --git a/plugins/org.eclipse.emf.compare.tests/src-gen/org/eclipse/emf/compare/tests/nodes/NodeEnum.java b/plugins/org.eclipse.emf.compare.tests/src-gen/org/eclipse/emf/compare/tests/nodes/NodeEnum.java
new file mode 100644
index 000000000..836029f92
--- /dev/null
+++ b/plugins/org.eclipse.emf.compare.tests/src-gen/org/eclipse/emf/compare/tests/nodes/NodeEnum.java
@@ -0,0 +1,250 @@
+/**
+ * Copyright (c) 2014 Obeo.
+ * 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:
+ * Obeo - initial API and implementation
+ */
+package org.eclipse.emf.compare.tests.nodes;
+
+import java.util.Arrays;
+import java.util.Collections;
+import java.util.List;
+
+import org.eclipse.emf.common.util.Enumerator;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the literals of the enumeration '<em><b>Node Enum</b></em>',
+ * and utility methods for working with them.
+ * <!-- end-user-doc -->
+ * @see org.eclipse.emf.compare.tests.nodes.NodesPackage#getNodeEnum()
+ * @model
+ * @generated
+ */
+public enum NodeEnum implements Enumerator {
+ /**
+ * The '<em><b>A</b></em>' literal object.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #A_VALUE
+ * @generated
+ * @ordered
+ */
+ A(0, "A", "A"), //$NON-NLS-1$ //$NON-NLS-2$
+
+ /**
+ * The '<em><b>B</b></em>' literal object.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #B_VALUE
+ * @generated
+ * @ordered
+ */
+ B(1, "B", "B"), //$NON-NLS-1$ //$NON-NLS-2$
+
+ /**
+ * The '<em><b>C</b></em>' literal object.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #C_VALUE
+ * @generated
+ * @ordered
+ */
+ C(2, "C", "C"); //$NON-NLS-1$ //$NON-NLS-2$
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public static final String copyright = "Copyright (c) 2011, 2012 Obeo.\r\nAll rights reserved. This program and the accompanying materials\r\nare made available under the terms of the Eclipse Public License v1.0\r\nwhich accompanies this distribution, and is available at\r\nhttp://www.eclipse.org/legal/epl-v10.html\r\n\r\nContributors:\r\n Obeo - initial API and implementation"; //$NON-NLS-1$
+
+ /**
+ * The '<em><b>A</b></em>' literal value.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of '<em><b>A</b></em>' literal object isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @see #A
+ * @model
+ * @generated
+ * @ordered
+ */
+ public static final int A_VALUE = 0;
+
+ /**
+ * The '<em><b>B</b></em>' literal value.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of '<em><b>B</b></em>' literal object isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @see #B
+ * @model
+ * @generated
+ * @ordered
+ */
+ public static final int B_VALUE = 1;
+
+ /**
+ * The '<em><b>C</b></em>' literal value.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of '<em><b>C</b></em>' literal object isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @see #C
+ * @model
+ * @generated
+ * @ordered
+ */
+ public static final int C_VALUE = 2;
+
+ /**
+ * An array of all the '<em><b>Node Enum</b></em>' enumerators.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private static final NodeEnum[] VALUES_ARRAY =
+ new NodeEnum[] {
+ A,
+ B,
+ C,
+ };
+
+ /**
+ * A public read-only list of all the '<em><b>Node Enum</b></em>' enumerators.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public static final List<NodeEnum> VALUES = Collections.unmodifiableList(Arrays.asList(VALUES_ARRAY));
+
+ /**
+ * Returns the '<em><b>Node Enum</b></em>' literal with the specified literal value.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public static NodeEnum get(String literal) {
+ for (int i = 0; i < VALUES_ARRAY.length; ++i) {
+ NodeEnum result = VALUES_ARRAY[i];
+ if (result.toString().equals(literal)) {
+ return result;
+ }
+ }
+ return null;
+ }
+
+ /**
+ * Returns the '<em><b>Node Enum</b></em>' literal with the specified name.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public static NodeEnum getByName(String name) {
+ for (int i = 0; i < VALUES_ARRAY.length; ++i) {
+ NodeEnum result = VALUES_ARRAY[i];
+ if (result.getName().equals(name)) {
+ return result;
+ }
+ }
+ return null;
+ }
+
+ /**
+ * Returns the '<em><b>Node Enum</b></em>' literal with the specified integer value.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public static NodeEnum get(int value) {
+ switch (value) {
+ case A_VALUE: return A;
+ case B_VALUE: return B;
+ case C_VALUE: return C;
+ }
+ return null;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private final int value;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private final String name;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private final String literal;
+
+ /**
+ * Only this class can construct instances.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private NodeEnum(int value, String name, String literal) {
+ this.value = value;
+ this.name = name;
+ this.literal = literal;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public int getValue() {
+ return value;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public String getName() {
+ return name;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public String getLiteral() {
+ return literal;
+ }
+
+ /**
+ * Returns the literal value of the enumerator, which is its string representation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public String toString() {
+ return literal;
+ }
+
+} //NodeEnum
diff --git a/plugins/org.eclipse.emf.compare.tests/src-gen/org/eclipse/emf/compare/tests/nodes/NodeMultiValueEEnumAttribute.java b/plugins/org.eclipse.emf.compare.tests/src-gen/org/eclipse/emf/compare/tests/nodes/NodeMultiValueEEnumAttribute.java
new file mode 100644
index 000000000..1b3993998
--- /dev/null
+++ b/plugins/org.eclipse.emf.compare.tests/src-gen/org/eclipse/emf/compare/tests/nodes/NodeMultiValueEEnumAttribute.java
@@ -0,0 +1,57 @@
+/**
+ * Copyright (c) 2014 Obeo.
+ * 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:
+ * Obeo - initial API and implementation
+ */
+package org.eclipse.emf.compare.tests.nodes;
+
+import org.eclipse.emf.common.util.EList;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Node Multi Value EEnum Attribute</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * <ul>
+ * <li>{@link org.eclipse.emf.compare.tests.nodes.NodeMultiValueEEnumAttribute#getMultiValueEEnumAttribute <em>Multi Value EEnum Attribute</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @see org.eclipse.emf.compare.tests.nodes.NodesPackage#getNodeMultiValueEEnumAttribute()
+ * @model
+ * @generated
+ */
+public interface NodeMultiValueEEnumAttribute extends Node {
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ String copyright = "Copyright (c) 2011, 2012 Obeo.\r\nAll rights reserved. This program and the accompanying materials\r\nare made available under the terms of the Eclipse Public License v1.0\r\nwhich accompanies this distribution, and is available at\r\nhttp://www.eclipse.org/legal/epl-v10.html\r\n\r\nContributors:\r\n Obeo - initial API and implementation"; //$NON-NLS-1$
+
+ /**
+ * Returns the value of the '<em><b>Multi Value EEnum Attribute</b></em>' attribute list.
+ * The list contents are of type {@link org.eclipse.emf.compare.tests.nodes.NodeEnum}.
+ * The literals are from the enumeration {@link org.eclipse.emf.compare.tests.nodes.NodeEnum}.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Multi Value EEnum Attribute</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>Multi Value EEnum Attribute</em>' attribute list.
+ * @see org.eclipse.emf.compare.tests.nodes.NodeEnum
+ * @see org.eclipse.emf.compare.tests.nodes.NodesPackage#getNodeMultiValueEEnumAttribute_MultiValueEEnumAttribute()
+ * @model
+ * @generated
+ */
+ EList<NodeEnum> getMultiValueEEnumAttribute();
+
+} // NodeMultiValueEEnumAttribute
diff --git a/plugins/org.eclipse.emf.compare.tests/src-gen/org/eclipse/emf/compare/tests/nodes/NodeSingleValueEEnumAttribute.java b/plugins/org.eclipse.emf.compare.tests/src-gen/org/eclipse/emf/compare/tests/nodes/NodeSingleValueEEnumAttribute.java
new file mode 100644
index 000000000..0fc9a5a69
--- /dev/null
+++ b/plugins/org.eclipse.emf.compare.tests/src-gen/org/eclipse/emf/compare/tests/nodes/NodeSingleValueEEnumAttribute.java
@@ -0,0 +1,67 @@
+/**
+ * Copyright (c) 2014 Obeo.
+ * 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:
+ * Obeo - initial API and implementation
+ */
+package org.eclipse.emf.compare.tests.nodes;
+
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Node Single Value EEnum Attribute</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * <ul>
+ * <li>{@link org.eclipse.emf.compare.tests.nodes.NodeSingleValueEEnumAttribute#getSinglevalueEEnumAttribute <em>Singlevalue EEnum Attribute</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @see org.eclipse.emf.compare.tests.nodes.NodesPackage#getNodeSingleValueEEnumAttribute()
+ * @model
+ * @generated
+ */
+public interface NodeSingleValueEEnumAttribute extends Node {
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ String copyright = "Copyright (c) 2011, 2012 Obeo.\r\nAll rights reserved. This program and the accompanying materials\r\nare made available under the terms of the Eclipse Public License v1.0\r\nwhich accompanies this distribution, and is available at\r\nhttp://www.eclipse.org/legal/epl-v10.html\r\n\r\nContributors:\r\n Obeo - initial API and implementation"; //$NON-NLS-1$
+
+ /**
+ * Returns the value of the '<em><b>Singlevalue EEnum Attribute</b></em>' attribute.
+ * The literals are from the enumeration {@link org.eclipse.emf.compare.tests.nodes.NodeEnum}.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Singlevalue EEnum Attribute</em>' attribute isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Singlevalue EEnum Attribute</em>' attribute.
+ * @see org.eclipse.emf.compare.tests.nodes.NodeEnum
+ * @see #setSinglevalueEEnumAttribute(NodeEnum)
+ * @see org.eclipse.emf.compare.tests.nodes.NodesPackage#getNodeSingleValueEEnumAttribute_SinglevalueEEnumAttribute()
+ * @model
+ * @generated
+ */
+ NodeEnum getSinglevalueEEnumAttribute();
+
+ /**
+ * Sets the value of the '{@link org.eclipse.emf.compare.tests.nodes.NodeSingleValueEEnumAttribute#getSinglevalueEEnumAttribute <em>Singlevalue EEnum Attribute</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Singlevalue EEnum Attribute</em>' attribute.
+ * @see org.eclipse.emf.compare.tests.nodes.NodeEnum
+ * @see #getSinglevalueEEnumAttribute()
+ * @generated
+ */
+ void setSinglevalueEEnumAttribute(NodeEnum value);
+
+} // NodeSingleValueEEnumAttribute
diff --git a/plugins/org.eclipse.emf.compare.tests/src-gen/org/eclipse/emf/compare/tests/nodes/NodesFactory.java b/plugins/org.eclipse.emf.compare.tests/src-gen/org/eclipse/emf/compare/tests/nodes/NodesFactory.java
index 6ec22d225..9827080d7 100644
--- a/plugins/org.eclipse.emf.compare.tests/src-gen/org/eclipse/emf/compare/tests/nodes/NodesFactory.java
+++ b/plugins/org.eclipse.emf.compare.tests/src-gen/org/eclipse/emf/compare/tests/nodes/NodesFactory.java
@@ -154,6 +154,24 @@ public interface NodesFactory extends EFactory {
NodeFeatureMapContainment2 createNodeFeatureMapContainment2();
/**
+ * Returns a new object of class '<em>Node Single Value EEnum Attribute</em>'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return a new object of class '<em>Node Single Value EEnum Attribute</em>'.
+ * @generated
+ */
+ NodeSingleValueEEnumAttribute createNodeSingleValueEEnumAttribute();
+
+ /**
+ * Returns a new object of class '<em>Node Multi Value EEnum Attribute</em>'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return a new object of class '<em>Node Multi Value EEnum Attribute</em>'.
+ * @generated
+ */
+ NodeMultiValueEEnumAttribute createNodeMultiValueEEnumAttribute();
+
+ /**
* Returns the package supported by this factory.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
diff --git a/plugins/org.eclipse.emf.compare.tests/src-gen/org/eclipse/emf/compare/tests/nodes/NodesPackage.java b/plugins/org.eclipse.emf.compare.tests/src-gen/org/eclipse/emf/compare/tests/nodes/NodesPackage.java
index ab45a7e58..f1237c98f 100644
--- a/plugins/org.eclipse.emf.compare.tests/src-gen/org/eclipse/emf/compare/tests/nodes/NodesPackage.java
+++ b/plugins/org.eclipse.emf.compare.tests/src-gen/org/eclipse/emf/compare/tests/nodes/NodesPackage.java
@@ -12,6 +12,7 @@ package org.eclipse.emf.compare.tests.nodes;
import org.eclipse.emf.ecore.EAttribute;
import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.EEnum;
import org.eclipse.emf.ecore.EPackage;
import org.eclipse.emf.ecore.EReference;
@@ -759,6 +760,109 @@ public interface NodesPackage extends EPackage {
/**
+ * The meta object id for the '{@link org.eclipse.emf.compare.tests.nodes.impl.NodeSingleValueEEnumAttributeImpl <em>Node Single Value EEnum Attribute</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.emf.compare.tests.nodes.impl.NodeSingleValueEEnumAttributeImpl
+ * @see org.eclipse.emf.compare.tests.nodes.impl.NodesPackageImpl#getNodeSingleValueEEnumAttribute()
+ * @generated
+ */
+ int NODE_SINGLE_VALUE_EENUM_ATTRIBUTE = 13;
+
+ /**
+ * The feature id for the '<em><b>Name</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int NODE_SINGLE_VALUE_EENUM_ATTRIBUTE__NAME = NODE__NAME;
+
+ /**
+ * The feature id for the '<em><b>Containment Ref1</b></em>' containment reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int NODE_SINGLE_VALUE_EENUM_ATTRIBUTE__CONTAINMENT_REF1 = NODE__CONTAINMENT_REF1;
+
+ /**
+ * The feature id for the '<em><b>Singlevalue EEnum Attribute</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int NODE_SINGLE_VALUE_EENUM_ATTRIBUTE__SINGLEVALUE_EENUM_ATTRIBUTE = NODE_FEATURE_COUNT + 0;
+
+ /**
+ * The number of structural features of the '<em>Node Single Value EEnum Attribute</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int NODE_SINGLE_VALUE_EENUM_ATTRIBUTE_FEATURE_COUNT = NODE_FEATURE_COUNT + 1;
+
+ /**
+ * The meta object id for the '{@link org.eclipse.emf.compare.tests.nodes.impl.NodeMultiValueEEnumAttributeImpl <em>Node Multi Value EEnum Attribute</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.emf.compare.tests.nodes.impl.NodeMultiValueEEnumAttributeImpl
+ * @see org.eclipse.emf.compare.tests.nodes.impl.NodesPackageImpl#getNodeMultiValueEEnumAttribute()
+ * @generated
+ */
+ int NODE_MULTI_VALUE_EENUM_ATTRIBUTE = 14;
+
+ /**
+ * The feature id for the '<em><b>Name</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int NODE_MULTI_VALUE_EENUM_ATTRIBUTE__NAME = NODE__NAME;
+
+ /**
+ * The feature id for the '<em><b>Containment Ref1</b></em>' containment reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int NODE_MULTI_VALUE_EENUM_ATTRIBUTE__CONTAINMENT_REF1 = NODE__CONTAINMENT_REF1;
+
+ /**
+ * The feature id for the '<em><b>Multi Value EEnum Attribute</b></em>' attribute list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int NODE_MULTI_VALUE_EENUM_ATTRIBUTE__MULTI_VALUE_EENUM_ATTRIBUTE = NODE_FEATURE_COUNT + 0;
+
+ /**
+ * The number of structural features of the '<em>Node Multi Value EEnum Attribute</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int NODE_MULTI_VALUE_EENUM_ATTRIBUTE_FEATURE_COUNT = NODE_FEATURE_COUNT + 1;
+
+ /**
+ * The meta object id for the '{@link org.eclipse.emf.compare.tests.nodes.NodeEnum <em>Node Enum</em>}' enum.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.emf.compare.tests.nodes.NodeEnum
+ * @see org.eclipse.emf.compare.tests.nodes.impl.NodesPackageImpl#getNodeEnum()
+ * @generated
+ */
+ int NODE_ENUM = 15;
+
+
+ /**
* Returns the meta object for class '{@link org.eclipse.emf.compare.tests.nodes.Node <em>Node</em>}'.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
@@ -1153,6 +1257,58 @@ public interface NodesPackage extends EPackage {
EReference getNodeFeatureMapContainment2_Single();
/**
+ * Returns the meta object for class '{@link org.eclipse.emf.compare.tests.nodes.NodeSingleValueEEnumAttribute <em>Node Single Value EEnum Attribute</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for class '<em>Node Single Value EEnum Attribute</em>'.
+ * @see org.eclipse.emf.compare.tests.nodes.NodeSingleValueEEnumAttribute
+ * @generated
+ */
+ EClass getNodeSingleValueEEnumAttribute();
+
+ /**
+ * Returns the meta object for the attribute '{@link org.eclipse.emf.compare.tests.nodes.NodeSingleValueEEnumAttribute#getSinglevalueEEnumAttribute <em>Singlevalue EEnum Attribute</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the attribute '<em>Singlevalue EEnum Attribute</em>'.
+ * @see org.eclipse.emf.compare.tests.nodes.NodeSingleValueEEnumAttribute#getSinglevalueEEnumAttribute()
+ * @see #getNodeSingleValueEEnumAttribute()
+ * @generated
+ */
+ EAttribute getNodeSingleValueEEnumAttribute_SinglevalueEEnumAttribute();
+
+ /**
+ * Returns the meta object for class '{@link org.eclipse.emf.compare.tests.nodes.NodeMultiValueEEnumAttribute <em>Node Multi Value EEnum Attribute</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for class '<em>Node Multi Value EEnum Attribute</em>'.
+ * @see org.eclipse.emf.compare.tests.nodes.NodeMultiValueEEnumAttribute
+ * @generated
+ */
+ EClass getNodeMultiValueEEnumAttribute();
+
+ /**
+ * Returns the meta object for the attribute list '{@link org.eclipse.emf.compare.tests.nodes.NodeMultiValueEEnumAttribute#getMultiValueEEnumAttribute <em>Multi Value EEnum Attribute</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the attribute list '<em>Multi Value EEnum Attribute</em>'.
+ * @see org.eclipse.emf.compare.tests.nodes.NodeMultiValueEEnumAttribute#getMultiValueEEnumAttribute()
+ * @see #getNodeMultiValueEEnumAttribute()
+ * @generated
+ */
+ EAttribute getNodeMultiValueEEnumAttribute_MultiValueEEnumAttribute();
+
+ /**
+ * Returns the meta object for enum '{@link org.eclipse.emf.compare.tests.nodes.NodeEnum <em>Node Enum</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for enum '<em>Node Enum</em>'.
+ * @see org.eclipse.emf.compare.tests.nodes.NodeEnum
+ * @generated
+ */
+ EEnum getNodeEnum();
+
+ /**
* Returns the factory that creates the instances of the model.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
@@ -1496,6 +1652,52 @@ public interface NodesPackage extends EPackage {
*/
EReference NODE_FEATURE_MAP_CONTAINMENT2__SINGLE = eINSTANCE.getNodeFeatureMapContainment2_Single();
+ /**
+ * The meta object literal for the '{@link org.eclipse.emf.compare.tests.nodes.impl.NodeSingleValueEEnumAttributeImpl <em>Node Single Value EEnum Attribute</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.emf.compare.tests.nodes.impl.NodeSingleValueEEnumAttributeImpl
+ * @see org.eclipse.emf.compare.tests.nodes.impl.NodesPackageImpl#getNodeSingleValueEEnumAttribute()
+ * @generated
+ */
+ EClass NODE_SINGLE_VALUE_EENUM_ATTRIBUTE = eINSTANCE.getNodeSingleValueEEnumAttribute();
+
+ /**
+ * The meta object literal for the '<em><b>Singlevalue EEnum Attribute</b></em>' attribute feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EAttribute NODE_SINGLE_VALUE_EENUM_ATTRIBUTE__SINGLEVALUE_EENUM_ATTRIBUTE = eINSTANCE.getNodeSingleValueEEnumAttribute_SinglevalueEEnumAttribute();
+
+ /**
+ * The meta object literal for the '{@link org.eclipse.emf.compare.tests.nodes.impl.NodeMultiValueEEnumAttributeImpl <em>Node Multi Value EEnum Attribute</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.emf.compare.tests.nodes.impl.NodeMultiValueEEnumAttributeImpl
+ * @see org.eclipse.emf.compare.tests.nodes.impl.NodesPackageImpl#getNodeMultiValueEEnumAttribute()
+ * @generated
+ */
+ EClass NODE_MULTI_VALUE_EENUM_ATTRIBUTE = eINSTANCE.getNodeMultiValueEEnumAttribute();
+
+ /**
+ * The meta object literal for the '<em><b>Multi Value EEnum Attribute</b></em>' attribute list feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EAttribute NODE_MULTI_VALUE_EENUM_ATTRIBUTE__MULTI_VALUE_EENUM_ATTRIBUTE = eINSTANCE.getNodeMultiValueEEnumAttribute_MultiValueEEnumAttribute();
+
+ /**
+ * The meta object literal for the '{@link org.eclipse.emf.compare.tests.nodes.NodeEnum <em>Node Enum</em>}' enum.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.emf.compare.tests.nodes.NodeEnum
+ * @see org.eclipse.emf.compare.tests.nodes.impl.NodesPackageImpl#getNodeEnum()
+ * @generated
+ */
+ EEnum NODE_ENUM = eINSTANCE.getNodeEnum();
+
}
} //NodesPackage
diff --git a/plugins/org.eclipse.emf.compare.tests/src-gen/org/eclipse/emf/compare/tests/nodes/impl/NodeMultiValueEEnumAttributeImpl.java b/plugins/org.eclipse.emf.compare.tests/src-gen/org/eclipse/emf/compare/tests/nodes/impl/NodeMultiValueEEnumAttributeImpl.java
new file mode 100644
index 000000000..b0c247574
--- /dev/null
+++ b/plugins/org.eclipse.emf.compare.tests/src-gen/org/eclipse/emf/compare/tests/nodes/impl/NodeMultiValueEEnumAttributeImpl.java
@@ -0,0 +1,163 @@
+/**
+ * Copyright (c) 2014 Obeo.
+ * 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:
+ * Obeo - initial API and implementation
+ */
+package org.eclipse.emf.compare.tests.nodes.impl;
+
+import java.util.Collection;
+
+import org.eclipse.emf.common.util.EList;
+
+import org.eclipse.emf.compare.tests.nodes.NodeEnum;
+import org.eclipse.emf.compare.tests.nodes.NodeMultiValueEEnumAttribute;
+import org.eclipse.emf.compare.tests.nodes.NodesPackage;
+
+import org.eclipse.emf.ecore.EClass;
+
+import org.eclipse.emf.ecore.util.EDataTypeUniqueEList;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>Node Multi Value EEnum Attribute</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * <ul>
+ * <li>{@link org.eclipse.emf.compare.tests.nodes.impl.NodeMultiValueEEnumAttributeImpl#getMultiValueEEnumAttribute <em>Multi Value EEnum Attribute</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @generated
+ */
+public class NodeMultiValueEEnumAttributeImpl extends NodeImpl implements NodeMultiValueEEnumAttribute {
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public static final String copyright = "Copyright (c) 2011, 2012 Obeo.\r\nAll rights reserved. This program and the accompanying materials\r\nare made available under the terms of the Eclipse Public License v1.0\r\nwhich accompanies this distribution, and is available at\r\nhttp://www.eclipse.org/legal/epl-v10.html\r\n\r\nContributors:\r\n Obeo - initial API and implementation"; //$NON-NLS-1$
+
+ /**
+ * The cached value of the '{@link #getMultiValueEEnumAttribute() <em>Multi Value EEnum Attribute</em>}' attribute list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getMultiValueEEnumAttribute()
+ * @generated
+ * @ordered
+ */
+ protected EList<NodeEnum> multiValueEEnumAttribute;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected NodeMultiValueEEnumAttributeImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ protected EClass eStaticClass() {
+ return NodesPackage.Literals.NODE_MULTI_VALUE_EENUM_ATTRIBUTE;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EList<NodeEnum> getMultiValueEEnumAttribute() {
+ if (multiValueEEnumAttribute == null) {
+ multiValueEEnumAttribute = new EDataTypeUniqueEList<NodeEnum>(NodeEnum.class, this, NodesPackage.NODE_MULTI_VALUE_EENUM_ATTRIBUTE__MULTI_VALUE_EENUM_ATTRIBUTE);
+ }
+ return multiValueEEnumAttribute;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Object eGet(int featureID, boolean resolve, boolean coreType) {
+ switch (featureID) {
+ case NodesPackage.NODE_MULTI_VALUE_EENUM_ATTRIBUTE__MULTI_VALUE_EENUM_ATTRIBUTE:
+ return getMultiValueEEnumAttribute();
+ }
+ 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 NodesPackage.NODE_MULTI_VALUE_EENUM_ATTRIBUTE__MULTI_VALUE_EENUM_ATTRIBUTE:
+ getMultiValueEEnumAttribute().clear();
+ getMultiValueEEnumAttribute().addAll((Collection<? extends NodeEnum>)newValue);
+ return;
+ }
+ super.eSet(featureID, newValue);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void eUnset(int featureID) {
+ switch (featureID) {
+ case NodesPackage.NODE_MULTI_VALUE_EENUM_ATTRIBUTE__MULTI_VALUE_EENUM_ATTRIBUTE:
+ getMultiValueEEnumAttribute().clear();
+ return;
+ }
+ super.eUnset(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public boolean eIsSet(int featureID) {
+ switch (featureID) {
+ case NodesPackage.NODE_MULTI_VALUE_EENUM_ATTRIBUTE__MULTI_VALUE_EENUM_ATTRIBUTE:
+ return multiValueEEnumAttribute != null && !multiValueEEnumAttribute.isEmpty();
+ }
+ 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(" (multiValueEEnumAttribute: "); //$NON-NLS-1$
+ result.append(multiValueEEnumAttribute);
+ result.append(')');
+ return result.toString();
+ }
+
+} //NodeMultiValueEEnumAttributeImpl
diff --git a/plugins/org.eclipse.emf.compare.tests/src-gen/org/eclipse/emf/compare/tests/nodes/impl/NodeSingleValueEEnumAttributeImpl.java b/plugins/org.eclipse.emf.compare.tests/src-gen/org/eclipse/emf/compare/tests/nodes/impl/NodeSingleValueEEnumAttributeImpl.java
new file mode 100644
index 000000000..81a13749a
--- /dev/null
+++ b/plugins/org.eclipse.emf.compare.tests/src-gen/org/eclipse/emf/compare/tests/nodes/impl/NodeSingleValueEEnumAttributeImpl.java
@@ -0,0 +1,178 @@
+/**
+ * Copyright (c) 2014 Obeo.
+ * 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:
+ * Obeo - initial API and implementation
+ */
+package org.eclipse.emf.compare.tests.nodes.impl;
+
+import org.eclipse.emf.common.notify.Notification;
+
+import org.eclipse.emf.compare.tests.nodes.NodeEnum;
+import org.eclipse.emf.compare.tests.nodes.NodeSingleValueEEnumAttribute;
+import org.eclipse.emf.compare.tests.nodes.NodesPackage;
+
+import org.eclipse.emf.ecore.EClass;
+
+import org.eclipse.emf.ecore.impl.ENotificationImpl;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>Node Single Value EEnum Attribute</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * <ul>
+ * <li>{@link org.eclipse.emf.compare.tests.nodes.impl.NodeSingleValueEEnumAttributeImpl#getSinglevalueEEnumAttribute <em>Singlevalue EEnum Attribute</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @generated
+ */
+public class NodeSingleValueEEnumAttributeImpl extends NodeImpl implements NodeSingleValueEEnumAttribute {
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public static final String copyright = "Copyright (c) 2011, 2012 Obeo.\r\nAll rights reserved. This program and the accompanying materials\r\nare made available under the terms of the Eclipse Public License v1.0\r\nwhich accompanies this distribution, and is available at\r\nhttp://www.eclipse.org/legal/epl-v10.html\r\n\r\nContributors:\r\n Obeo - initial API and implementation"; //$NON-NLS-1$
+
+ /**
+ * The default value of the '{@link #getSinglevalueEEnumAttribute() <em>Singlevalue EEnum Attribute</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getSinglevalueEEnumAttribute()
+ * @generated
+ * @ordered
+ */
+ protected static final NodeEnum SINGLEVALUE_EENUM_ATTRIBUTE_EDEFAULT = NodeEnum.A;
+
+ /**
+ * The cached value of the '{@link #getSinglevalueEEnumAttribute() <em>Singlevalue EEnum Attribute</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getSinglevalueEEnumAttribute()
+ * @generated
+ * @ordered
+ */
+ protected NodeEnum singlevalueEEnumAttribute = SINGLEVALUE_EENUM_ATTRIBUTE_EDEFAULT;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected NodeSingleValueEEnumAttributeImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ protected EClass eStaticClass() {
+ return NodesPackage.Literals.NODE_SINGLE_VALUE_EENUM_ATTRIBUTE;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public NodeEnum getSinglevalueEEnumAttribute() {
+ return singlevalueEEnumAttribute;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void setSinglevalueEEnumAttribute(NodeEnum newSinglevalueEEnumAttribute) {
+ NodeEnum oldSinglevalueEEnumAttribute = singlevalueEEnumAttribute;
+ singlevalueEEnumAttribute = newSinglevalueEEnumAttribute == null ? SINGLEVALUE_EENUM_ATTRIBUTE_EDEFAULT : newSinglevalueEEnumAttribute;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, NodesPackage.NODE_SINGLE_VALUE_EENUM_ATTRIBUTE__SINGLEVALUE_EENUM_ATTRIBUTE, oldSinglevalueEEnumAttribute, singlevalueEEnumAttribute));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Object eGet(int featureID, boolean resolve, boolean coreType) {
+ switch (featureID) {
+ case NodesPackage.NODE_SINGLE_VALUE_EENUM_ATTRIBUTE__SINGLEVALUE_EENUM_ATTRIBUTE:
+ return getSinglevalueEEnumAttribute();
+ }
+ return super.eGet(featureID, resolve, coreType);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void eSet(int featureID, Object newValue) {
+ switch (featureID) {
+ case NodesPackage.NODE_SINGLE_VALUE_EENUM_ATTRIBUTE__SINGLEVALUE_EENUM_ATTRIBUTE:
+ setSinglevalueEEnumAttribute((NodeEnum)newValue);
+ return;
+ }
+ super.eSet(featureID, newValue);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void eUnset(int featureID) {
+ switch (featureID) {
+ case NodesPackage.NODE_SINGLE_VALUE_EENUM_ATTRIBUTE__SINGLEVALUE_EENUM_ATTRIBUTE:
+ setSinglevalueEEnumAttribute(SINGLEVALUE_EENUM_ATTRIBUTE_EDEFAULT);
+ return;
+ }
+ super.eUnset(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public boolean eIsSet(int featureID) {
+ switch (featureID) {
+ case NodesPackage.NODE_SINGLE_VALUE_EENUM_ATTRIBUTE__SINGLEVALUE_EENUM_ATTRIBUTE:
+ return singlevalueEEnumAttribute != SINGLEVALUE_EENUM_ATTRIBUTE_EDEFAULT;
+ }
+ 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(" (singlevalueEEnumAttribute: "); //$NON-NLS-1$
+ result.append(singlevalueEEnumAttribute);
+ result.append(')');
+ return result.toString();
+ }
+
+} //NodeSingleValueEEnumAttributeImpl
diff --git a/plugins/org.eclipse.emf.compare.tests/src-gen/org/eclipse/emf/compare/tests/nodes/impl/NodesFactoryImpl.java b/plugins/org.eclipse.emf.compare.tests/src-gen/org/eclipse/emf/compare/tests/nodes/impl/NodesFactoryImpl.java
index b99f71420..f0d415e97 100644
--- a/plugins/org.eclipse.emf.compare.tests/src-gen/org/eclipse/emf/compare/tests/nodes/impl/NodesFactoryImpl.java
+++ b/plugins/org.eclipse.emf.compare.tests/src-gen/org/eclipse/emf/compare/tests/nodes/impl/NodesFactoryImpl.java
@@ -13,6 +13,7 @@ package org.eclipse.emf.compare.tests.nodes.impl;
import org.eclipse.emf.compare.tests.nodes.*;
import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.EDataType;
import org.eclipse.emf.ecore.EObject;
import org.eclipse.emf.ecore.EPackage;
@@ -84,6 +85,8 @@ public class NodesFactoryImpl extends EFactoryImpl implements NodesFactory {
case NodesPackage.NODE_FEATURE_MAP_CONTAINMENT: return createNodeFeatureMapContainment();
case NodesPackage.NODE_FEATURE_MAP_NON_CONTAINMENT: return createNodeFeatureMapNonContainment();
case NodesPackage.NODE_FEATURE_MAP_CONTAINMENT2: return createNodeFeatureMapContainment2();
+ case NodesPackage.NODE_SINGLE_VALUE_EENUM_ATTRIBUTE: return createNodeSingleValueEEnumAttribute();
+ case NodesPackage.NODE_MULTI_VALUE_EENUM_ATTRIBUTE: return createNodeMultiValueEEnumAttribute();
default:
throw new IllegalArgumentException("The class '" + eClass.getName() + "' is not a valid classifier"); //$NON-NLS-1$ //$NON-NLS-2$
}
@@ -94,6 +97,36 @@ public class NodesFactoryImpl extends EFactoryImpl implements NodesFactory {
* <!-- end-user-doc -->
* @generated
*/
+ @Override
+ public Object createFromString(EDataType eDataType, String initialValue) {
+ switch (eDataType.getClassifierID()) {
+ case NodesPackage.NODE_ENUM:
+ return createNodeEnumFromString(eDataType, initialValue);
+ default:
+ throw new IllegalArgumentException("The datatype '" + eDataType.getName() + "' is not a valid classifier"); //$NON-NLS-1$ //$NON-NLS-2$
+ }
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public String convertToString(EDataType eDataType, Object instanceValue) {
+ switch (eDataType.getClassifierID()) {
+ case NodesPackage.NODE_ENUM:
+ return convertNodeEnumToString(eDataType, instanceValue);
+ default:
+ throw new IllegalArgumentException("The datatype '" + eDataType.getName() + "' is not a valid classifier"); //$NON-NLS-1$ //$NON-NLS-2$
+ }
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
public Node createNode() {
NodeImpl node = new NodeImpl();
return node;
@@ -224,6 +257,46 @@ public class NodesFactoryImpl extends EFactoryImpl implements NodesFactory {
* <!-- end-user-doc -->
* @generated
*/
+ public NodeSingleValueEEnumAttribute createNodeSingleValueEEnumAttribute() {
+ NodeSingleValueEEnumAttributeImpl nodeSingleValueEEnumAttribute = new NodeSingleValueEEnumAttributeImpl();
+ return nodeSingleValueEEnumAttribute;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public NodeMultiValueEEnumAttribute createNodeMultiValueEEnumAttribute() {
+ NodeMultiValueEEnumAttributeImpl nodeMultiValueEEnumAttribute = new NodeMultiValueEEnumAttributeImpl();
+ return nodeMultiValueEEnumAttribute;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public NodeEnum createNodeEnumFromString(EDataType eDataType, String initialValue) {
+ NodeEnum result = NodeEnum.get(initialValue);
+ if (result == null) throw new IllegalArgumentException("The value '" + initialValue + "' is not a valid enumerator of '" + eDataType.getName() + "'"); //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+ return result;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public String convertNodeEnumToString(EDataType eDataType, Object instanceValue) {
+ return instanceValue == null ? null : instanceValue.toString();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
public NodesPackage getNodesPackage() {
return (NodesPackage)getEPackage();
}
diff --git a/plugins/org.eclipse.emf.compare.tests/src-gen/org/eclipse/emf/compare/tests/nodes/impl/NodesPackageImpl.java b/plugins/org.eclipse.emf.compare.tests/src-gen/org/eclipse/emf/compare/tests/nodes/impl/NodesPackageImpl.java
index 23e267ebe..a081f749e 100644
--- a/plugins/org.eclipse.emf.compare.tests/src-gen/org/eclipse/emf/compare/tests/nodes/impl/NodesPackageImpl.java
+++ b/plugins/org.eclipse.emf.compare.tests/src-gen/org/eclipse/emf/compare/tests/nodes/impl/NodesPackageImpl.java
@@ -11,9 +11,11 @@
package org.eclipse.emf.compare.tests.nodes.impl;
import org.eclipse.emf.compare.tests.nodes.Node;
+import org.eclipse.emf.compare.tests.nodes.NodeEnum;
import org.eclipse.emf.compare.tests.nodes.NodeFeatureMapContainment;
import org.eclipse.emf.compare.tests.nodes.NodeFeatureMapContainment2;
import org.eclipse.emf.compare.tests.nodes.NodeFeatureMapNonContainment;
+import org.eclipse.emf.compare.tests.nodes.NodeMultiValueEEnumAttribute;
import org.eclipse.emf.compare.tests.nodes.NodeMultiValueReference;
import org.eclipse.emf.compare.tests.nodes.NodeMultiValuedAttribute;
import org.eclipse.emf.compare.tests.nodes.NodeMultipleContainment;
@@ -22,12 +24,14 @@ import org.eclipse.emf.compare.tests.nodes.NodeOppositeRefOneToMany;
import org.eclipse.emf.compare.tests.nodes.NodeOppositeRefOneToOne;
import org.eclipse.emf.compare.tests.nodes.NodeSingleValueAttribute;
import org.eclipse.emf.compare.tests.nodes.NodeSingleValueContainment;
+import org.eclipse.emf.compare.tests.nodes.NodeSingleValueEEnumAttribute;
import org.eclipse.emf.compare.tests.nodes.NodeSingleValueReference;
import org.eclipse.emf.compare.tests.nodes.NodesFactory;
import org.eclipse.emf.compare.tests.nodes.NodesPackage;
import org.eclipse.emf.ecore.EAttribute;
import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.EEnum;
import org.eclipse.emf.ecore.EPackage;
import org.eclipse.emf.ecore.EReference;
@@ -139,6 +143,27 @@ public class NodesPackageImpl extends EPackageImpl implements NodesPackage {
private EClass nodeFeatureMapContainment2EClass = null;
/**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private EClass nodeSingleValueEEnumAttributeEClass = null;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private EClass nodeMultiValueEEnumAttributeEClass = null;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private EEnum nodeEnumEEnum = 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.
@@ -537,6 +562,51 @@ public class NodesPackageImpl extends EPackageImpl implements NodesPackage {
* <!-- end-user-doc -->
* @generated
*/
+ public EClass getNodeSingleValueEEnumAttribute() {
+ return nodeSingleValueEEnumAttributeEClass;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EAttribute getNodeSingleValueEEnumAttribute_SinglevalueEEnumAttribute() {
+ return (EAttribute)nodeSingleValueEEnumAttributeEClass.getEStructuralFeatures().get(0);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EClass getNodeMultiValueEEnumAttribute() {
+ return nodeMultiValueEEnumAttributeEClass;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EAttribute getNodeMultiValueEEnumAttribute_MultiValueEEnumAttribute() {
+ return (EAttribute)nodeMultiValueEEnumAttributeEClass.getEStructuralFeatures().get(0);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EEnum getNodeEnum() {
+ return nodeEnumEEnum;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
public NodesFactory getNodesFactory() {
return (NodesFactory)getEFactoryInstance();
}
@@ -609,6 +679,15 @@ public class NodesPackageImpl extends EPackageImpl implements NodesPackage {
createEAttribute(nodeFeatureMapContainment2EClass, NODE_FEATURE_MAP_CONTAINMENT2__MAP2);
createEReference(nodeFeatureMapContainment2EClass, NODE_FEATURE_MAP_CONTAINMENT2__MULTIPLE);
createEReference(nodeFeatureMapContainment2EClass, NODE_FEATURE_MAP_CONTAINMENT2__SINGLE);
+
+ nodeSingleValueEEnumAttributeEClass = createEClass(NODE_SINGLE_VALUE_EENUM_ATTRIBUTE);
+ createEAttribute(nodeSingleValueEEnumAttributeEClass, NODE_SINGLE_VALUE_EENUM_ATTRIBUTE__SINGLEVALUE_EENUM_ATTRIBUTE);
+
+ nodeMultiValueEEnumAttributeEClass = createEClass(NODE_MULTI_VALUE_EENUM_ATTRIBUTE);
+ createEAttribute(nodeMultiValueEEnumAttributeEClass, NODE_MULTI_VALUE_EENUM_ATTRIBUTE__MULTI_VALUE_EENUM_ATTRIBUTE);
+
+ // Create enums
+ nodeEnumEEnum = createEEnum(NODE_ENUM);
}
/**
@@ -651,6 +730,8 @@ public class NodesPackageImpl extends EPackageImpl implements NodesPackage {
nodeFeatureMapContainmentEClass.getESuperTypes().add(this.getNode());
nodeFeatureMapNonContainmentEClass.getESuperTypes().add(this.getNode());
nodeFeatureMapContainment2EClass.getESuperTypes().add(this.getNode());
+ nodeSingleValueEEnumAttributeEClass.getESuperTypes().add(this.getNode());
+ nodeMultiValueEEnumAttributeEClass.getESuperTypes().add(this.getNode());
// Initialize classes and features; add operations and parameters
initEClass(nodeEClass, Node.class, "Node", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); //$NON-NLS-1$
@@ -703,6 +784,18 @@ public class NodesPackageImpl extends EPackageImpl implements NodesPackage {
initEReference(getNodeFeatureMapContainment2_Multiple(), this.getNodeMultipleContainment(), null, "multiple", null, 0, -1, NodeFeatureMapContainment2.class, IS_TRANSIENT, IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, IS_DERIVED, IS_ORDERED); //$NON-NLS-1$
initEReference(getNodeFeatureMapContainment2_Single(), this.getNodeSingleValueContainment(), null, "single", null, 0, -1, NodeFeatureMapContainment2.class, IS_TRANSIENT, IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, IS_DERIVED, IS_ORDERED); //$NON-NLS-1$
+ initEClass(nodeSingleValueEEnumAttributeEClass, NodeSingleValueEEnumAttribute.class, "NodeSingleValueEEnumAttribute", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); //$NON-NLS-1$
+ initEAttribute(getNodeSingleValueEEnumAttribute_SinglevalueEEnumAttribute(), this.getNodeEnum(), "singlevalueEEnumAttribute", null, 0, 1, NodeSingleValueEEnumAttribute.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); //$NON-NLS-1$
+
+ initEClass(nodeMultiValueEEnumAttributeEClass, NodeMultiValueEEnumAttribute.class, "NodeMultiValueEEnumAttribute", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); //$NON-NLS-1$
+ initEAttribute(getNodeMultiValueEEnumAttribute_MultiValueEEnumAttribute(), this.getNodeEnum(), "multiValueEEnumAttribute", null, 0, -1, NodeMultiValueEEnumAttribute.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); //$NON-NLS-1$
+
+ // Initialize enums and add enum literals
+ initEEnum(nodeEnumEEnum, NodeEnum.class, "NodeEnum"); //$NON-NLS-1$
+ addEEnumLiteral(nodeEnumEEnum, NodeEnum.A);
+ addEEnumLiteral(nodeEnumEEnum, NodeEnum.B);
+ addEEnumLiteral(nodeEnumEEnum, NodeEnum.C);
+
// Create resource
createResource(eNS_URI);
@@ -718,55 +811,55 @@ public class NodesPackageImpl extends EPackageImpl implements NodesPackage {
* @generated
*/
protected void createExtendedMetaDataAnnotations() {
- String source = "http:///org/eclipse/emf/ecore/util/ExtendedMetaData"; //$NON-NLS-1$
+ String source = "http:///org/eclipse/emf/ecore/util/ExtendedMetaData"; //$NON-NLS-1$
addAnnotation
(getNodeFeatureMapContainment_Map(),
source,
new String[] {
"kind", "group" //$NON-NLS-1$ //$NON-NLS-2$
- });
+ });
addAnnotation
(getNodeFeatureMapContainment_FirstKey(),
source,
new String[] {
"group", "#map" //$NON-NLS-1$ //$NON-NLS-2$
- });
+ });
addAnnotation
(getNodeFeatureMapContainment_SecondKey(),
source,
new String[] {
"group", "#map" //$NON-NLS-1$ //$NON-NLS-2$
- });
+ });
addAnnotation
(getNodeFeatureMapNonContainment_MapNC(),
source,
new String[] {
"kind", "group" //$NON-NLS-1$ //$NON-NLS-2$
- });
+ });
addAnnotation
(getNodeFeatureMapNonContainment_FirstKeyNC(),
source,
new String[] {
"group", "#mapNC" //$NON-NLS-1$ //$NON-NLS-2$
- });
+ });
addAnnotation
(getNodeFeatureMapNonContainment_SecondKeyNC(),
source,
new String[] {
"group", "#mapNC" //$NON-NLS-1$ //$NON-NLS-2$
- });
+ });
addAnnotation
(getNodeFeatureMapContainment2_Map2(),
source,
new String[] {
"kind", "group" //$NON-NLS-1$ //$NON-NLS-2$
- });
+ });
addAnnotation
(getNodeFeatureMapContainment2_Multiple(),
source,
new String[] {
"group", "#map2" //$NON-NLS-1$ //$NON-NLS-2$
- });
+ });
addAnnotation
(getNodeFeatureMapContainment2_Single(),
source,
diff --git a/plugins/org.eclipse.emf.compare.tests/src-gen/org/eclipse/emf/compare/tests/nodes/util/NodesAdapterFactory.java b/plugins/org.eclipse.emf.compare.tests/src-gen/org/eclipse/emf/compare/tests/nodes/util/NodesAdapterFactory.java
index 42078381d..7f5d97b14 100644
--- a/plugins/org.eclipse.emf.compare.tests/src-gen/org/eclipse/emf/compare/tests/nodes/util/NodesAdapterFactory.java
+++ b/plugins/org.eclipse.emf.compare.tests/src-gen/org/eclipse/emf/compare/tests/nodes/util/NodesAdapterFactory.java
@@ -135,6 +135,14 @@ public class NodesAdapterFactory extends AdapterFactoryImpl {
return createNodeFeatureMapContainment2Adapter();
}
@Override
+ public Adapter caseNodeSingleValueEEnumAttribute(NodeSingleValueEEnumAttribute object) {
+ return createNodeSingleValueEEnumAttributeAdapter();
+ }
+ @Override
+ public Adapter caseNodeMultiValueEEnumAttribute(NodeMultiValueEEnumAttribute object) {
+ return createNodeMultiValueEEnumAttributeAdapter();
+ }
+ @Override
public Adapter defaultCase(EObject object) {
return createEObjectAdapter();
}
@@ -337,6 +345,34 @@ public class NodesAdapterFactory extends AdapterFactoryImpl {
}
/**
+ * Creates a new adapter for an object of class '{@link org.eclipse.emf.compare.tests.nodes.NodeSingleValueEEnumAttribute <em>Node Single Value EEnum Attribute</em>}'.
+ * <!-- begin-user-doc -->
+ * This default implementation returns null so that we can easily ignore cases;
+ * it's useful to ignore a case when inheritance will catch all the cases anyway.
+ * <!-- end-user-doc -->
+ * @return the new adapter.
+ * @see org.eclipse.emf.compare.tests.nodes.NodeSingleValueEEnumAttribute
+ * @generated
+ */
+ public Adapter createNodeSingleValueEEnumAttributeAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link org.eclipse.emf.compare.tests.nodes.NodeMultiValueEEnumAttribute <em>Node Multi Value EEnum Attribute</em>}'.
+ * <!-- begin-user-doc -->
+ * This default implementation returns null so that we can easily ignore cases;
+ * it's useful to ignore a case when inheritance will catch all the cases anyway.
+ * <!-- end-user-doc -->
+ * @return the new adapter.
+ * @see org.eclipse.emf.compare.tests.nodes.NodeMultiValueEEnumAttribute
+ * @generated
+ */
+ public Adapter createNodeMultiValueEEnumAttributeAdapter() {
+ return null;
+ }
+
+ /**
* Creates a new adapter for the default case.
* <!-- begin-user-doc -->
* This default implementation returns null.
diff --git a/plugins/org.eclipse.emf.compare.tests/src-gen/org/eclipse/emf/compare/tests/nodes/util/NodesSwitch.java b/plugins/org.eclipse.emf.compare.tests/src-gen/org/eclipse/emf/compare/tests/nodes/util/NodesSwitch.java
index e5fe8ff7b..183d91976 100644
--- a/plugins/org.eclipse.emf.compare.tests/src-gen/org/eclipse/emf/compare/tests/nodes/util/NodesSwitch.java
+++ b/plugins/org.eclipse.emf.compare.tests/src-gen/org/eclipse/emf/compare/tests/nodes/util/NodesSwitch.java
@@ -188,6 +188,20 @@ public class NodesSwitch<T> {
if (result == null) result = defaultCase(theEObject);
return result;
}
+ case NodesPackage.NODE_SINGLE_VALUE_EENUM_ATTRIBUTE: {
+ NodeSingleValueEEnumAttribute nodeSingleValueEEnumAttribute = (NodeSingleValueEEnumAttribute)theEObject;
+ T result = caseNodeSingleValueEEnumAttribute(nodeSingleValueEEnumAttribute);
+ if (result == null) result = caseNode(nodeSingleValueEEnumAttribute);
+ if (result == null) result = defaultCase(theEObject);
+ return result;
+ }
+ case NodesPackage.NODE_MULTI_VALUE_EENUM_ATTRIBUTE: {
+ NodeMultiValueEEnumAttribute nodeMultiValueEEnumAttribute = (NodeMultiValueEEnumAttribute)theEObject;
+ T result = caseNodeMultiValueEEnumAttribute(nodeMultiValueEEnumAttribute);
+ if (result == null) result = caseNode(nodeMultiValueEEnumAttribute);
+ if (result == null) result = defaultCase(theEObject);
+ return result;
+ }
default: return defaultCase(theEObject);
}
}
@@ -388,6 +402,36 @@ public class NodesSwitch<T> {
}
/**
+ * Returns the result of interpreting the object as an instance of '<em>Node Single Value EEnum Attribute</em>'.
+ * <!-- begin-user-doc -->
+ * This implementation returns null;
+ * returning a non-null result will terminate the switch.
+ * <!-- end-user-doc -->
+ * @param object the target of the switch.
+ * @return the result of interpreting the object as an instance of '<em>Node Single Value EEnum Attribute</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseNodeSingleValueEEnumAttribute(NodeSingleValueEEnumAttribute object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>Node Multi Value EEnum Attribute</em>'.
+ * <!-- begin-user-doc -->
+ * This implementation returns null;
+ * returning a non-null result will terminate the switch.
+ * <!-- end-user-doc -->
+ * @param object the target of the switch.
+ * @return the result of interpreting the object as an instance of '<em>Node Multi Value EEnum Attribute</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseNodeMultiValueEEnumAttribute(NodeMultiValueEEnumAttribute object) {
+ return null;
+ }
+
+ /**
* Returns the result of interpreting the object as an instance of '<em>EObject</em>'.
* <!-- begin-user-doc -->
* This implementation returns null;

Back to the top