Skip to main content
summaryrefslogtreecommitdiffstats
path: root/tests
diff options
context:
space:
mode:
authorOlivier Constant2017-06-09 10:32:41 +0000
committerOlivier Constant2017-06-09 10:32:41 +0000
commitc7c17452bbe2475836e5b2fba47330d4697e19f9 (patch)
tree793f98bebf42ca4a2124a538b39f628d6b0c97cc /tests
parenta7fca648cec4af7d04e009b5a40ba5cc65be4f29 (diff)
downloadorg.eclipse.emf.diffmerge.core-c7c17452bbe2475836e5b2fba47330d4697e19f9.tar.gz
org.eclipse.emf.diffmerge.core-c7c17452bbe2475836e5b2fba47330d4697e19f9.tar.xz
org.eclipse.emf.diffmerge.core-c7c17452bbe2475836e5b2fba47330d4697e19f9.zip
Updated copyrights
Change-Id: I1dd4cb74fc5dcb9ce75b981f42460d5ee17470f1 Signed-off-by: Olivier Constant <olivier.constant@thalesgroup.com>
Diffstat (limited to 'tests')
-rw-r--r--tests/org.eclipse.emf.diffmerge.tests.customization/build.properties24
-rw-r--r--tests/org.eclipse.emf.diffmerge.tests.customization/plugin.properties18
-rw-r--r--tests/org.eclipse.emf.diffmerge.tests.customization/plugin.xml48
-rw-r--r--tests/org.eclipse.emf.diffmerge.tests.customization/src/org/eclipse/emf/diffmerge/tests/customization/ElementsScope.java158
-rw-r--r--tests/org.eclipse.emf.diffmerge.tests.customization/src/org/eclipse/emf/diffmerge/tests/customization/ElementsScopeDefinitionFactory.java134
-rw-r--r--tests/org.eclipse.emf.diffmerge.tests.elements.edit/build.properties30
-rw-r--r--tests/org.eclipse.emf.diffmerge.tests.elements.edit/plugin.properties2
-rw-r--r--tests/org.eclipse.emf.diffmerge.tests.elements.edit/plugin.xml62
-rw-r--r--tests/org.eclipse.emf.diffmerge.tests.elements.edit/src/org/eclipse/emf/diffmerge/tests/elements/Elements/provider/EdgeItemProvider.java2
-rw-r--r--tests/org.eclipse.emf.diffmerge.tests.elements.edit/src/org/eclipse/emf/diffmerge/tests/elements/Elements/provider/ElementItemProvider.java2
-rw-r--r--tests/org.eclipse.emf.diffmerge.tests.elements.edit/src/org/eclipse/emf/diffmerge/tests/elements/Elements/provider/ElementsEditPlugin.java202
-rw-r--r--tests/org.eclipse.emf.diffmerge.tests.elements.edit/src/org/eclipse/emf/diffmerge/tests/elements/Elements/provider/ElementsItemProviderAdapterFactory.java662
-rw-r--r--tests/org.eclipse.emf.diffmerge.tests.elements.edit/src/org/eclipse/emf/diffmerge/tests/elements/Elements/provider/IdentifiedElementItemProvider.java316
-rw-r--r--tests/org.eclipse.emf.diffmerge.tests.elements.edit/src/org/eclipse/emf/diffmerge/tests/elements/Elements/provider/NamedElementItemProvider.java2
-rw-r--r--tests/org.eclipse.emf.diffmerge.tests.elements.edit/src/org/eclipse/emf/diffmerge/tests/elements/Elements/provider/NodeItemProvider.java2
-rw-r--r--tests/org.eclipse.emf.diffmerge.tests.elements.edit/src/org/eclipse/emf/diffmerge/tests/elements/Elements/provider/ReferencingNodeItemProvider.java2
-rw-r--r--tests/org.eclipse.emf.diffmerge.tests.elements.edit/src/org/eclipse/emf/diffmerge/tests/elements/Elements/provider/RootItemProvider.java2
-rw-r--r--tests/org.eclipse.emf.diffmerge.tests.elements.edit/src/org/eclipse/emf/diffmerge/tests/elements/Elements/provider/StrictElementItemProvider.java2
-rw-r--r--tests/org.eclipse.emf.diffmerge.tests.elements.editor/build.properties30
-rw-r--r--tests/org.eclipse.emf.diffmerge.tests.elements.editor/plugin.properties116
-rw-r--r--tests/org.eclipse.emf.diffmerge.tests.elements.editor/plugin.xml90
-rw-r--r--tests/org.eclipse.emf.diffmerge.tests.elements/build.properties30
-rw-r--r--tests/org.eclipse.emf.diffmerge.tests.elements/model/Elements.ecore10
-rw-r--r--tests/org.eclipse.emf.diffmerge.tests.elements/model/Elements.genmodel134
-rw-r--r--tests/org.eclipse.emf.diffmerge.tests.elements/plugin.properties18
-rw-r--r--tests/org.eclipse.emf.diffmerge.tests.elements/plugin.xml72
-rw-r--r--tests/org.eclipse.emf.diffmerge.tests.elements/src/org/eclipse/emf/diffmerge/tests/elements/Elements/Edge.java184
-rw-r--r--tests/org.eclipse.emf.diffmerge.tests.elements/src/org/eclipse/emf/diffmerge/tests/elements/Elements/Element.java2
-rw-r--r--tests/org.eclipse.emf.diffmerge.tests.elements/src/org/eclipse/emf/diffmerge/tests/elements/Elements/ElementsFactory.java198
-rw-r--r--tests/org.eclipse.emf.diffmerge.tests.elements/src/org/eclipse/emf/diffmerge/tests/elements/Elements/ElementsPackage.java2
-rw-r--r--tests/org.eclipse.emf.diffmerge.tests.elements/src/org/eclipse/emf/diffmerge/tests/elements/Elements/IdentifiedElement.java124
-rw-r--r--tests/org.eclipse.emf.diffmerge.tests.elements/src/org/eclipse/emf/diffmerge/tests/elements/Elements/NamedElement.java122
-rw-r--r--tests/org.eclipse.emf.diffmerge.tests.elements/src/org/eclipse/emf/diffmerge/tests/elements/Elements/Node.java180
-rw-r--r--tests/org.eclipse.emf.diffmerge.tests.elements/src/org/eclipse/emf/diffmerge/tests/elements/Elements/ReferencingNode.java122
-rw-r--r--tests/org.eclipse.emf.diffmerge.tests.elements/src/org/eclipse/emf/diffmerge/tests/elements/Elements/Root.java158
-rw-r--r--tests/org.eclipse.emf.diffmerge.tests.elements/src/org/eclipse/emf/diffmerge/tests/elements/Elements/StrictElement.java506
-rw-r--r--tests/org.eclipse.emf.diffmerge.tests.elements/src/org/eclipse/emf/diffmerge/tests/elements/Elements/impl/EdgeImpl.java618
-rw-r--r--tests/org.eclipse.emf.diffmerge.tests.elements/src/org/eclipse/emf/diffmerge/tests/elements/Elements/impl/ElementImpl.java2
-rw-r--r--tests/org.eclipse.emf.diffmerge.tests.elements/src/org/eclipse/emf/diffmerge/tests/elements/Elements/impl/ElementsFactoryImpl.java324
-rw-r--r--tests/org.eclipse.emf.diffmerge.tests.elements/src/org/eclipse/emf/diffmerge/tests/elements/Elements/impl/ElementsPackageImpl.java2
-rw-r--r--tests/org.eclipse.emf.diffmerge.tests.elements/src/org/eclipse/emf/diffmerge/tests/elements/Elements/impl/IdentifiedElementImpl.java354
-rw-r--r--tests/org.eclipse.emf.diffmerge.tests.elements/src/org/eclipse/emf/diffmerge/tests/elements/Elements/impl/NamedElementImpl.java348
-rw-r--r--tests/org.eclipse.emf.diffmerge.tests.elements/src/org/eclipse/emf/diffmerge/tests/elements/Elements/impl/NodeImpl.java506
-rw-r--r--tests/org.eclipse.emf.diffmerge.tests.elements/src/org/eclipse/emf/diffmerge/tests/elements/Elements/impl/ReferencingNodeImpl.java336
-rw-r--r--tests/org.eclipse.emf.diffmerge.tests.elements/src/org/eclipse/emf/diffmerge/tests/elements/Elements/impl/RootImpl.java466
-rw-r--r--tests/org.eclipse.emf.diffmerge.tests.elements/src/org/eclipse/emf/diffmerge/tests/elements/Elements/impl/StrictElementImpl.java1294
-rw-r--r--tests/org.eclipse.emf.diffmerge.tests.elements/src/org/eclipse/emf/diffmerge/tests/elements/Elements/util/ElementsAdapterFactory.java516
-rw-r--r--tests/org.eclipse.emf.diffmerge.tests.elements/src/org/eclipse/emf/diffmerge/tests/elements/Elements/util/ElementsSwitch.java598
48 files changed, 4571 insertions, 4561 deletions
diff --git a/tests/org.eclipse.emf.diffmerge.tests.customization/build.properties b/tests/org.eclipse.emf.diffmerge.tests.customization/build.properties
index 0119b569..9db13b63 100644
--- a/tests/org.eclipse.emf.diffmerge.tests.customization/build.properties
+++ b/tests/org.eclipse.emf.diffmerge.tests.customization/build.properties
@@ -1,12 +1,12 @@
-###############################################################################
-# Copyright (c) 2014-2016 Thales Global Services S.A.S.
-# 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
-###############################################################################
-source.. = src/
-output.. = bin/
-bin.includes = META-INF/,\
- .,\
- plugin.xml
+###############################################################################
+# Copyright (c) 2014-2017 Thales Global Services S.A.S.
+# 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
+###############################################################################
+source.. = src/
+output.. = bin/
+bin.includes = META-INF/,\
+ .,\
+ plugin.xml
diff --git a/tests/org.eclipse.emf.diffmerge.tests.customization/plugin.properties b/tests/org.eclipse.emf.diffmerge.tests.customization/plugin.properties
index 846f3220..4d3852c2 100644
--- a/tests/org.eclipse.emf.diffmerge.tests.customization/plugin.properties
+++ b/tests/org.eclipse.emf.diffmerge.tests.customization/plugin.properties
@@ -1,9 +1,9 @@
-###############################################################################
-# Copyright (c) 2014-2016 Thales Global Services S.A.S.
-# 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
-###############################################################################
-pluginName = EMF Diff/Merge Customization Test Plug-In
-providerName = Eclipse Modeling Project
+###############################################################################
+# Copyright (c) 2014-2017 Thales Global Services S.A.S.
+# 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
+###############################################################################
+pluginName = EMF Diff/Merge Customization Test Plug-In
+providerName = Eclipse Modeling Project
diff --git a/tests/org.eclipse.emf.diffmerge.tests.customization/plugin.xml b/tests/org.eclipse.emf.diffmerge.tests.customization/plugin.xml
index 18fedcbb..d6d2a3cb 100644
--- a/tests/org.eclipse.emf.diffmerge.tests.customization/plugin.xml
+++ b/tests/org.eclipse.emf.diffmerge.tests.customization/plugin.xml
@@ -1,24 +1,24 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<?eclipse version="3.4"?>
-<!--
- <copyright>
-
- Copyright (c) 2014-2016 Thales Global Services S.A.S.
- 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:
- Thales Global Services S.A.S - initial API and implementation
-
- </copyright>
--->
-<plugin>
- <extension
- point="org.eclipse.emf.diffmerge.ui.modelComparisonContext">
- <scopeDefinition
- factory="org.eclipse.emf.diffmerge.tests.customization.ElementsScopeDefinitionFactory"></scopeDefinition>
- </extension>
-
-</plugin>
+<?xml version="1.0" encoding="UTF-8"?>
+<?eclipse version="3.4"?>
+<!--
+ <copyright>
+
+ Copyright (c) 2014-2017 Thales Global Services S.A.S.
+ 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:
+ Thales Global Services S.A.S - initial API and implementation
+
+ </copyright>
+-->
+<plugin>
+ <extension
+ point="org.eclipse.emf.diffmerge.ui.modelComparisonContext">
+ <scopeDefinition
+ factory="org.eclipse.emf.diffmerge.tests.customization.ElementsScopeDefinitionFactory"></scopeDefinition>
+ </extension>
+
+</plugin>
diff --git a/tests/org.eclipse.emf.diffmerge.tests.customization/src/org/eclipse/emf/diffmerge/tests/customization/ElementsScope.java b/tests/org.eclipse.emf.diffmerge.tests.customization/src/org/eclipse/emf/diffmerge/tests/customization/ElementsScope.java
index 77a5ea1b..d1172a10 100644
--- a/tests/org.eclipse.emf.diffmerge.tests.customization/src/org/eclipse/emf/diffmerge/tests/customization/ElementsScope.java
+++ b/tests/org.eclipse.emf.diffmerge.tests.customization/src/org/eclipse/emf/diffmerge/tests/customization/ElementsScope.java
@@ -1,79 +1,79 @@
-/**
- * <copyright>
- *
- * Copyright (c) 2014-2016 Thales Global Services S.A.S.
- * 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:
- * Thales Global Services S.A.S. - initial API and implementation
- *
- * </copyright>
- */
-package org.eclipse.emf.diffmerge.tests.customization;
-
-import java.util.Arrays;
-import java.util.Collection;
-import java.util.List;
-
-import org.eclipse.emf.common.util.URI;
-import org.eclipse.emf.diffmerge.gmf.GMFScope;
-import org.eclipse.emf.diffmerge.tests.elements.Elements.Element;
-import org.eclipse.emf.diffmerge.tests.elements.Elements.ElementsPackage;
-import org.eclipse.emf.ecore.EObject;
-import org.eclipse.emf.ecore.EReference;
-import org.eclipse.emf.ecore.resource.ResourceSet;
-import org.eclipse.emf.edit.domain.EditingDomain;
-
-
-/**
- * A scope for fragmented Elements test models.
- * @author Olivier Constant
- */
-public class ElementsScope extends GMFScope {
-
- /** The set of cross-references in scope */
- protected static final List<EReference> REFERENCES_IN_SCOPE = Arrays.asList(
- ElementsPackage.eINSTANCE.getElement_ManyFromManyRef1(),
- ElementsPackage.eINSTANCE.getElement_ManyFromManyRef2(),
- ElementsPackage.eINSTANCE.getElement_ManyFromSingleRef(),
- ElementsPackage.eINSTANCE.getElement_ManyRef(),
- ElementsPackage.eINSTANCE.getElement_SingleFromManyRef(),
- ElementsPackage.eINSTANCE.getElement_SingleRef()
- );
-
-
- /**
- * Constructor
- * @param uri_p a non-null URI of the resource to load as root
- * @param editingDomain_p a non-null editing domain that encompasses the scope
- * @param readOnly_p whether the scope should be read-only, if supported
- */
- public ElementsScope(URI uri_p, EditingDomain editingDomain_p, boolean readOnly_p) {
- super(uri_p, editingDomain_p, readOnly_p);
- }
-
- /**
- * Constructor
- * @param uri_p a non-null resource URI
- * @param resourceSet_p a non-null resource set
- * @param readOnly_p whether the scope is in read-only mode, if applicable
- */
- public ElementsScope(URI uri_p, ResourceSet resourceSet_p, boolean readOnly_p) {
- super(uri_p, resourceSet_p, readOnly_p);
- }
-
- /**
- * @see org.eclipse.emf.diffmerge.impl.scopes.FragmentedModelScope#getCrossReferencesInScope(org.eclipse.emf.ecore.EObject)
- */
- @Override
- protected Collection<EReference> getCrossReferencesInScope(EObject element_p) {
- Collection<EReference> result = super.getCrossReferencesInScope(element_p);
- if (element_p instanceof Element)
- result.addAll(REFERENCES_IN_SCOPE);
- return result;
- }
-
-}
+/**
+ * <copyright>
+ *
+ * Copyright (c) 2014-2017 Thales Global Services S.A.S.
+ * 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:
+ * Thales Global Services S.A.S. - initial API and implementation
+ *
+ * </copyright>
+ */
+package org.eclipse.emf.diffmerge.tests.customization;
+
+import java.util.Arrays;
+import java.util.Collection;
+import java.util.List;
+
+import org.eclipse.emf.common.util.URI;
+import org.eclipse.emf.diffmerge.gmf.GMFScope;
+import org.eclipse.emf.diffmerge.tests.elements.Elements.Element;
+import org.eclipse.emf.diffmerge.tests.elements.Elements.ElementsPackage;
+import org.eclipse.emf.ecore.EObject;
+import org.eclipse.emf.ecore.EReference;
+import org.eclipse.emf.ecore.resource.ResourceSet;
+import org.eclipse.emf.edit.domain.EditingDomain;
+
+
+/**
+ * A scope for fragmented Elements test models.
+ * @author Olivier Constant
+ */
+public class ElementsScope extends GMFScope {
+
+ /** The set of cross-references in scope */
+ protected static final List<EReference> REFERENCES_IN_SCOPE = Arrays.asList(
+ ElementsPackage.eINSTANCE.getElement_ManyFromManyRef1(),
+ ElementsPackage.eINSTANCE.getElement_ManyFromManyRef2(),
+ ElementsPackage.eINSTANCE.getElement_ManyFromSingleRef(),
+ ElementsPackage.eINSTANCE.getElement_ManyRef(),
+ ElementsPackage.eINSTANCE.getElement_SingleFromManyRef(),
+ ElementsPackage.eINSTANCE.getElement_SingleRef()
+ );
+
+
+ /**
+ * Constructor
+ * @param uri_p a non-null URI of the resource to load as root
+ * @param editingDomain_p a non-null editing domain that encompasses the scope
+ * @param readOnly_p whether the scope should be read-only, if supported
+ */
+ public ElementsScope(URI uri_p, EditingDomain editingDomain_p, boolean readOnly_p) {
+ super(uri_p, editingDomain_p, readOnly_p);
+ }
+
+ /**
+ * Constructor
+ * @param uri_p a non-null resource URI
+ * @param resourceSet_p a non-null resource set
+ * @param readOnly_p whether the scope is in read-only mode, if applicable
+ */
+ public ElementsScope(URI uri_p, ResourceSet resourceSet_p, boolean readOnly_p) {
+ super(uri_p, resourceSet_p, readOnly_p);
+ }
+
+ /**
+ * @see org.eclipse.emf.diffmerge.impl.scopes.FragmentedModelScope#getCrossReferencesInScope(org.eclipse.emf.ecore.EObject)
+ */
+ @Override
+ protected Collection<EReference> getCrossReferencesInScope(EObject element_p) {
+ Collection<EReference> result = super.getCrossReferencesInScope(element_p);
+ if (element_p instanceof Element)
+ result.addAll(REFERENCES_IN_SCOPE);
+ return result;
+ }
+
+}
diff --git a/tests/org.eclipse.emf.diffmerge.tests.customization/src/org/eclipse/emf/diffmerge/tests/customization/ElementsScopeDefinitionFactory.java b/tests/org.eclipse.emf.diffmerge.tests.customization/src/org/eclipse/emf/diffmerge/tests/customization/ElementsScopeDefinitionFactory.java
index 48f3f6e4..25278f27 100644
--- a/tests/org.eclipse.emf.diffmerge.tests.customization/src/org/eclipse/emf/diffmerge/tests/customization/ElementsScopeDefinitionFactory.java
+++ b/tests/org.eclipse.emf.diffmerge.tests.customization/src/org/eclipse/emf/diffmerge/tests/customization/ElementsScopeDefinitionFactory.java
@@ -1,67 +1,67 @@
-/**
- * <copyright>
- *
- * Copyright (c) 2014-2016 Thales Global Services S.A.S.
- * 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:
- * Thales Global Services S.A.S. - initial API and implementation
- *
- * </copyright>
- */
-package org.eclipse.emf.diffmerge.tests.customization;
-
-import java.util.Collection;
-import java.util.Collections;
-
-import org.eclipse.emf.common.util.URI;
-import org.eclipse.emf.diffmerge.api.scopes.IEditableModelScope;
-import org.eclipse.emf.diffmerge.ui.gmf.GMFScopeDefinitionFactory;
-import org.eclipse.emf.diffmerge.ui.specification.IModelScopeDefinition;
-import org.eclipse.emf.diffmerge.ui.specification.ext.URIScopeDefinition;
-import org.eclipse.emf.ecore.resource.ResourceSet;
-import org.eclipse.emf.edit.domain.EditingDomain;
-
-
-/**
- * A factory for model scopes of Elements test models.
- * @author Olivier Constant
- */
-public class ElementsScopeDefinitionFactory extends GMFScopeDefinitionFactory {
-
- /**
- * @see org.eclipse.emf.diffmerge.ui.gmf.GMFScopeDefinitionFactory#createScopeDefinitionFromURI(org.eclipse.emf.common.util.URI, java.lang.String, boolean)
- */
- @Override
- protected IModelScopeDefinition createScopeDefinitionFromURI(URI uri_p, String label_p,
- boolean editable_p) {
- return new URIScopeDefinition(uri_p, label_p, editable_p) {
- /**
- * @see org.eclipse.emf.diffmerge.ui.specification.ext.URIScopeDefinition#createScopeOnEditingDomain(org.eclipse.emf.edit.domain.EditingDomain)
- */
- @Override
- protected IEditableModelScope createScopeOnEditingDomain(EditingDomain editingDomain_p) {
- return new ElementsScope(getEntrypoint(), editingDomain_p, !isEditable());
- }
- /**
- * @see org.eclipse.emf.diffmerge.ui.specification.ext.URIScopeDefinition#createScopeOnResourceSet(org.eclipse.emf.ecore.resource.ResourceSet)
- */
- @Override
- protected IEditableModelScope createScopeOnResourceSet(ResourceSet resourceSet_p) {
- return new ElementsScope(getEntrypoint(), resourceSet_p, !isEditable());
- }
- };
- }
-
- /**
- * @see org.eclipse.emf.diffmerge.ui.gmf.GMFScopeDefinitionFactory#getOverridenClasses()
- */
- @Override
- public Collection<? extends Class<?>> getOverridenClasses() {
- return Collections.<Class<?>>singleton(GMFScopeDefinitionFactory.class);
- }
-
-}
+/**
+ * <copyright>
+ *
+ * Copyright (c) 2014-2017 Thales Global Services S.A.S.
+ * 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:
+ * Thales Global Services S.A.S. - initial API and implementation
+ *
+ * </copyright>
+ */
+package org.eclipse.emf.diffmerge.tests.customization;
+
+import java.util.Collection;
+import java.util.Collections;
+
+import org.eclipse.emf.common.util.URI;
+import org.eclipse.emf.diffmerge.api.scopes.IEditableModelScope;
+import org.eclipse.emf.diffmerge.ui.gmf.GMFScopeDefinitionFactory;
+import org.eclipse.emf.diffmerge.ui.specification.IModelScopeDefinition;
+import org.eclipse.emf.diffmerge.ui.specification.ext.URIScopeDefinition;
+import org.eclipse.emf.ecore.resource.ResourceSet;
+import org.eclipse.emf.edit.domain.EditingDomain;
+
+
+/**
+ * A factory for model scopes of Elements test models.
+ * @author Olivier Constant
+ */
+public class ElementsScopeDefinitionFactory extends GMFScopeDefinitionFactory {
+
+ /**
+ * @see org.eclipse.emf.diffmerge.ui.gmf.GMFScopeDefinitionFactory#createScopeDefinitionFromURI(org.eclipse.emf.common.util.URI, java.lang.String, boolean)
+ */
+ @Override
+ protected IModelScopeDefinition createScopeDefinitionFromURI(URI uri_p, String label_p,
+ boolean editable_p) {
+ return new URIScopeDefinition(uri_p, label_p, editable_p) {
+ /**
+ * @see org.eclipse.emf.diffmerge.ui.specification.ext.URIScopeDefinition#createScopeOnEditingDomain(org.eclipse.emf.edit.domain.EditingDomain)
+ */
+ @Override
+ protected IEditableModelScope createScopeOnEditingDomain(EditingDomain editingDomain_p) {
+ return new ElementsScope(getEntrypoint(), editingDomain_p, !isEditable());
+ }
+ /**
+ * @see org.eclipse.emf.diffmerge.ui.specification.ext.URIScopeDefinition#createScopeOnResourceSet(org.eclipse.emf.ecore.resource.ResourceSet)
+ */
+ @Override
+ protected IEditableModelScope createScopeOnResourceSet(ResourceSet resourceSet_p) {
+ return new ElementsScope(getEntrypoint(), resourceSet_p, !isEditable());
+ }
+ };
+ }
+
+ /**
+ * @see org.eclipse.emf.diffmerge.ui.gmf.GMFScopeDefinitionFactory#getOverridenClasses()
+ */
+ @Override
+ public Collection<? extends Class<?>> getOverridenClasses() {
+ return Collections.<Class<?>>singleton(GMFScopeDefinitionFactory.class);
+ }
+
+}
diff --git a/tests/org.eclipse.emf.diffmerge.tests.elements.edit/build.properties b/tests/org.eclipse.emf.diffmerge.tests.elements.edit/build.properties
index ac5508e4..bacb25cd 100644
--- a/tests/org.eclipse.emf.diffmerge.tests.elements.edit/build.properties
+++ b/tests/org.eclipse.emf.diffmerge.tests.elements.edit/build.properties
@@ -1,15 +1,15 @@
-###############################################################################
-# Copyright (c) 2010-2016 Thales Global Services S.A.S.
-# 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
-###############################################################################
-bin.includes = .,\
- icons/,\
- META-INF/,\
- plugin.xml,\
- plugin.properties
-jars.compile.order = .
-source.. = src/
-output.. = bin/
+###############################################################################
+# Copyright (c) 2010-2017 Thales Global Services S.A.S.
+# 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
+###############################################################################
+bin.includes = .,\
+ icons/,\
+ META-INF/,\
+ plugin.xml,\
+ plugin.properties
+jars.compile.order = .
+source.. = src/
+output.. = bin/
diff --git a/tests/org.eclipse.emf.diffmerge.tests.elements.edit/plugin.properties b/tests/org.eclipse.emf.diffmerge.tests.elements.edit/plugin.properties
index 10764131..81ccf8be 100644
--- a/tests/org.eclipse.emf.diffmerge.tests.elements.edit/plugin.properties
+++ b/tests/org.eclipse.emf.diffmerge.tests.elements.edit/plugin.properties
@@ -1,5 +1,5 @@
###############################################################################
-# Copyright (c) 2010-2016 Thales Global Services S.A.S.
+# Copyright (c) 2010-2017 Thales Global Services S.A.S.
# 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
diff --git a/tests/org.eclipse.emf.diffmerge.tests.elements.edit/plugin.xml b/tests/org.eclipse.emf.diffmerge.tests.elements.edit/plugin.xml
index 198f9134..525b7253 100644
--- a/tests/org.eclipse.emf.diffmerge.tests.elements.edit/plugin.xml
+++ b/tests/org.eclipse.emf.diffmerge.tests.elements.edit/plugin.xml
@@ -1,31 +1,31 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<?eclipse version="3.0"?>
-<!--
- <copyright>
-
- Copyright (c) 2010-2016 Thales Global Services S.A.S.
- 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:
- Thales Global Services S.A.S - initial API and implementation
-
- </copyright>
--->
-<plugin>
-
- <extension point="org.eclipse.emf.edit.itemProviderAdapterFactories">
- <factory
- uri="http://www.eclipse.org/emf/diffmerge/tests/elements/1.0.0"
- class="org.eclipse.emf.diffmerge.tests.elements.Elements.provider.ElementsItemProviderAdapterFactory"
- supportedTypes=
- "org.eclipse.emf.edit.provider.IEditingDomainItemProvider
- org.eclipse.emf.edit.provider.IStructuredItemContentProvider
- org.eclipse.emf.edit.provider.ITreeItemContentProvider
- org.eclipse.emf.edit.provider.IItemLabelProvider
- org.eclipse.emf.edit.provider.IItemPropertySource"/>
- </extension>
-
-</plugin>
+<?xml version="1.0" encoding="UTF-8"?>
+<?eclipse version="3.0"?>
+<!--
+ <copyright>
+
+ Copyright (c) 2010-2017 Thales Global Services S.A.S.
+ 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:
+ Thales Global Services S.A.S - initial API and implementation
+
+ </copyright>
+-->
+<plugin>
+
+ <extension point="org.eclipse.emf.edit.itemProviderAdapterFactories">
+ <factory
+ uri="http://www.eclipse.org/emf/diffmerge/tests/elements/1.0.0"
+ class="org.eclipse.emf.diffmerge.tests.elements.Elements.provider.ElementsItemProviderAdapterFactory"
+ supportedTypes=
+ "org.eclipse.emf.edit.provider.IEditingDomainItemProvider
+ org.eclipse.emf.edit.provider.IStructuredItemContentProvider
+ org.eclipse.emf.edit.provider.ITreeItemContentProvider
+ org.eclipse.emf.edit.provider.IItemLabelProvider
+ org.eclipse.emf.edit.provider.IItemPropertySource"/>
+ </extension>
+
+</plugin>
diff --git a/tests/org.eclipse.emf.diffmerge.tests.elements.edit/src/org/eclipse/emf/diffmerge/tests/elements/Elements/provider/EdgeItemProvider.java b/tests/org.eclipse.emf.diffmerge.tests.elements.edit/src/org/eclipse/emf/diffmerge/tests/elements/Elements/provider/EdgeItemProvider.java
index d0249312..34b00ded 100644
--- a/tests/org.eclipse.emf.diffmerge.tests.elements.edit/src/org/eclipse/emf/diffmerge/tests/elements/Elements/provider/EdgeItemProvider.java
+++ b/tests/org.eclipse.emf.diffmerge.tests.elements.edit/src/org/eclipse/emf/diffmerge/tests/elements/Elements/provider/EdgeItemProvider.java
@@ -1,7 +1,7 @@
/**
* <copyright>
*
- * Copyright (c) 2010-2016 Thales Global Services S.A.S.
+ * Copyright (c) 2010-2017 Thales Global Services S.A.S.
* 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
diff --git a/tests/org.eclipse.emf.diffmerge.tests.elements.edit/src/org/eclipse/emf/diffmerge/tests/elements/Elements/provider/ElementItemProvider.java b/tests/org.eclipse.emf.diffmerge.tests.elements.edit/src/org/eclipse/emf/diffmerge/tests/elements/Elements/provider/ElementItemProvider.java
index 57839e91..8429789f 100644
--- a/tests/org.eclipse.emf.diffmerge.tests.elements.edit/src/org/eclipse/emf/diffmerge/tests/elements/Elements/provider/ElementItemProvider.java
+++ b/tests/org.eclipse.emf.diffmerge.tests.elements.edit/src/org/eclipse/emf/diffmerge/tests/elements/Elements/provider/ElementItemProvider.java
@@ -1,7 +1,7 @@
/**
* <copyright>
*
- * Copyright (c) 2010-2016 Thales Global Services S.A.S.
+ * Copyright (c) 2010-2017 Thales Global Services S.A.S.
* 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
diff --git a/tests/org.eclipse.emf.diffmerge.tests.elements.edit/src/org/eclipse/emf/diffmerge/tests/elements/Elements/provider/ElementsEditPlugin.java b/tests/org.eclipse.emf.diffmerge.tests.elements.edit/src/org/eclipse/emf/diffmerge/tests/elements/Elements/provider/ElementsEditPlugin.java
index 225fa8f4..9729de15 100644
--- a/tests/org.eclipse.emf.diffmerge.tests.elements.edit/src/org/eclipse/emf/diffmerge/tests/elements/Elements/provider/ElementsEditPlugin.java
+++ b/tests/org.eclipse.emf.diffmerge.tests.elements.edit/src/org/eclipse/emf/diffmerge/tests/elements/Elements/provider/ElementsEditPlugin.java
@@ -1,101 +1,101 @@
-/**
- * <copyright>
- *
- * Copyright (c) 2010-2016 Thales Global Services S.A.S.
- * 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:
- * Thales Global Services S.A.S. - initial API and implementation
- *
- * </copyright>
- */
-package org.eclipse.emf.diffmerge.tests.elements.Elements.provider;
-
-import org.eclipse.emf.common.EMFPlugin;
-
-import org.eclipse.emf.common.util.ResourceLocator;
-
-/**
- * This is the central singleton for the Elements edit plugin.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
-public final class ElementsEditPlugin extends EMFPlugin {
- /**
- * Keep track of the singleton.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- public static final ElementsEditPlugin INSTANCE = new ElementsEditPlugin();
-
- /**
- * Keep track of the singleton.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- private static Implementation plugin;
-
- /**
- * Create the instance.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- public ElementsEditPlugin() {
- super
- (new ResourceLocator [] {
- });
- }
-
- /**
- * Returns the singleton instance of the Eclipse plugin.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @return the singleton instance.
- * @generated
- */
- @Override
- public ResourceLocator getPluginResourceLocator() {
- return plugin;
- }
-
- /**
- * Returns the singleton instance of the Eclipse plugin.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @return the singleton instance.
- * @generated
- */
- public static Implementation getPlugin() {
- return plugin;
- }
-
- /**
- * The actual implementation of the Eclipse <b>Plugin</b>.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- public static class Implementation extends EclipsePlugin {
- /**
- * Creates an instance.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- public Implementation() {
- super();
-
- // Remember the static instance.
- //
- plugin = this;
- }
- }
-
-}
+/**
+ * <copyright>
+ *
+ * Copyright (c) 2010-2017 Thales Global Services S.A.S.
+ * 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:
+ * Thales Global Services S.A.S. - initial API and implementation
+ *
+ * </copyright>
+ */
+package org.eclipse.emf.diffmerge.tests.elements.Elements.provider;
+
+import org.eclipse.emf.common.EMFPlugin;
+
+import org.eclipse.emf.common.util.ResourceLocator;
+
+/**
+ * This is the central singleton for the Elements edit plugin.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+public final class ElementsEditPlugin extends EMFPlugin {
+ /**
+ * Keep track of the singleton.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public static final ElementsEditPlugin INSTANCE = new ElementsEditPlugin();
+
+ /**
+ * Keep track of the singleton.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private static Implementation plugin;
+
+ /**
+ * Create the instance.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public ElementsEditPlugin() {
+ super
+ (new ResourceLocator [] {
+ });
+ }
+
+ /**
+ * Returns the singleton instance of the Eclipse plugin.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the singleton instance.
+ * @generated
+ */
+ @Override
+ public ResourceLocator getPluginResourceLocator() {
+ return plugin;
+ }
+
+ /**
+ * Returns the singleton instance of the Eclipse plugin.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the singleton instance.
+ * @generated
+ */
+ public static Implementation getPlugin() {
+ return plugin;
+ }
+
+ /**
+ * The actual implementation of the Eclipse <b>Plugin</b>.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public static class Implementation extends EclipsePlugin {
+ /**
+ * Creates an instance.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public Implementation() {
+ super();
+
+ // Remember the static instance.
+ //
+ plugin = this;
+ }
+ }
+
+}
diff --git a/tests/org.eclipse.emf.diffmerge.tests.elements.edit/src/org/eclipse/emf/diffmerge/tests/elements/Elements/provider/ElementsItemProviderAdapterFactory.java b/tests/org.eclipse.emf.diffmerge.tests.elements.edit/src/org/eclipse/emf/diffmerge/tests/elements/Elements/provider/ElementsItemProviderAdapterFactory.java
index 111c699f..6ce934d0 100644
--- a/tests/org.eclipse.emf.diffmerge.tests.elements.edit/src/org/eclipse/emf/diffmerge/tests/elements/Elements/provider/ElementsItemProviderAdapterFactory.java
+++ b/tests/org.eclipse.emf.diffmerge.tests.elements.edit/src/org/eclipse/emf/diffmerge/tests/elements/Elements/provider/ElementsItemProviderAdapterFactory.java
@@ -1,331 +1,331 @@
-/**
- * <copyright>
- *
- * Copyright (c) 2010-2016 Thales Global Services S.A.S.
- * 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:
- * Thales Global Services S.A.S. - initial API and implementation
- *
- * </copyright>
- */
-package org.eclipse.emf.diffmerge.tests.elements.Elements.provider;
-
-import java.util.ArrayList;
-import java.util.Collection;
-
-import org.eclipse.emf.common.notify.Adapter;
-import org.eclipse.emf.common.notify.Notification;
-import org.eclipse.emf.common.notify.Notifier;
-
-import org.eclipse.emf.diffmerge.tests.elements.Elements.util.ElementsAdapterFactory;
-
-import org.eclipse.emf.edit.provider.ChangeNotifier;
-import org.eclipse.emf.edit.provider.ComposeableAdapterFactory;
-import org.eclipse.emf.edit.provider.ComposedAdapterFactory;
-import org.eclipse.emf.edit.provider.IChangeNotifier;
-import org.eclipse.emf.edit.provider.IDisposable;
-import org.eclipse.emf.edit.provider.IEditingDomainItemProvider;
-import org.eclipse.emf.edit.provider.IItemLabelProvider;
-import org.eclipse.emf.edit.provider.IItemPropertySource;
-import org.eclipse.emf.edit.provider.INotifyChangedListener;
-import org.eclipse.emf.edit.provider.IStructuredItemContentProvider;
-import org.eclipse.emf.edit.provider.ITreeItemContentProvider;
-
-/**
- * This is the factory that is used to provide the interfaces needed to support Viewers.
- * The adapters generated by this factory convert EMF adapter notifications into calls to {@link #fireNotifyChanged fireNotifyChanged}.
- * The adapters also support Eclipse property sheets.
- * Note that most of the adapters are shared among multiple instances.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
-public class ElementsItemProviderAdapterFactory extends ElementsAdapterFactory implements ComposeableAdapterFactory, IChangeNotifier, IDisposable {
- /**
- * This keeps track of the root adapter factory that delegates to this adapter factory.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- protected ComposedAdapterFactory parentAdapterFactory;
-
- /**
- * This is used to implement {@link org.eclipse.emf.edit.provider.IChangeNotifier}.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- protected IChangeNotifier changeNotifier = new ChangeNotifier();
-
- /**
- * This keeps track of all the supported types checked by {@link #isFactoryForType isFactoryForType}.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- protected Collection<Object> supportedTypes = new ArrayList<Object>();
-
- /**
- * This constructs an instance.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- public ElementsItemProviderAdapterFactory() {
- supportedTypes.add(IEditingDomainItemProvider.class);
- supportedTypes.add(IStructuredItemContentProvider.class);
- supportedTypes.add(ITreeItemContentProvider.class);
- supportedTypes.add(IItemLabelProvider.class);
- supportedTypes.add(IItemPropertySource.class);
- }
-
- /**
- * This keeps track of the one adapter used for all {@link org.eclipse.emf.diffmerge.tests.elements.Elements.Root} instances.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- protected RootItemProvider rootItemProvider;
-
- /**
- * This creates an adapter for a {@link org.eclipse.emf.diffmerge.tests.elements.Elements.Root}.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- @Override
- public Adapter createRootAdapter() {
- if (rootItemProvider == null) {
- rootItemProvider = new RootItemProvider(this);
- }
-
- return rootItemProvider;
- }
-
- /**
- * This keeps track of the one adapter used for all {@link org.eclipse.emf.diffmerge.tests.elements.Elements.Element} instances.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- protected ElementItemProvider elementItemProvider;
-
- /**
- * This creates an adapter for a {@link org.eclipse.emf.diffmerge.tests.elements.Elements.Element}.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- @Override
- public Adapter createElementAdapter() {
- if (elementItemProvider == null) {
- elementItemProvider = new ElementItemProvider(this);
- }
-
- return elementItemProvider;
- }
-
- /**
- * This keeps track of the one adapter used for all {@link org.eclipse.emf.diffmerge.tests.elements.Elements.StrictElement} instances.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- protected StrictElementItemProvider strictElementItemProvider;
-
- /**
- * This creates an adapter for a {@link org.eclipse.emf.diffmerge.tests.elements.Elements.StrictElement}.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- @Override
- public Adapter createStrictElementAdapter() {
- if (strictElementItemProvider == null) {
- strictElementItemProvider = new StrictElementItemProvider(this);
- }
-
- return strictElementItemProvider;
- }
-
- /**
- * This keeps track of the one adapter used for all {@link org.eclipse.emf.diffmerge.tests.elements.Elements.Node} instances.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- protected NodeItemProvider nodeItemProvider;
-
- /**
- * This creates an adapter for a {@link org.eclipse.emf.diffmerge.tests.elements.Elements.Node}.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- @Override
- public Adapter createNodeAdapter() {
- if (nodeItemProvider == null) {
- nodeItemProvider = new NodeItemProvider(this);
- }
-
- return nodeItemProvider;
- }
-
- /**
- * This keeps track of the one adapter used for all {@link org.eclipse.emf.diffmerge.tests.elements.Elements.Edge} instances.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- protected EdgeItemProvider edgeItemProvider;
-
- /**
- * This creates an adapter for a {@link org.eclipse.emf.diffmerge.tests.elements.Elements.Edge}.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- @Override
- public Adapter createEdgeAdapter() {
- if (edgeItemProvider == null) {
- edgeItemProvider = new EdgeItemProvider(this);
- }
-
- return edgeItemProvider;
- }
-
- /**
- * This keeps track of the one adapter used for all {@link org.eclipse.emf.diffmerge.tests.elements.Elements.ReferencingNode} instances.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- protected ReferencingNodeItemProvider referencingNodeItemProvider;
-
- /**
- * This creates an adapter for a {@link org.eclipse.emf.diffmerge.tests.elements.Elements.ReferencingNode}.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- @Override
- public Adapter createReferencingNodeAdapter() {
- if (referencingNodeItemProvider == null) {
- referencingNodeItemProvider = new ReferencingNodeItemProvider(this);
- }
-
- return referencingNodeItemProvider;
- }
-
- /**
- * This returns the root adapter factory that contains this factory.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- public ComposeableAdapterFactory getRootAdapterFactory() {
- return parentAdapterFactory == null ? this : parentAdapterFactory.getRootAdapterFactory();
- }
-
- /**
- * This sets the composed adapter factory that contains this factory.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- public void setParentAdapterFactory(ComposedAdapterFactory parentAdapterFactory) {
- this.parentAdapterFactory = parentAdapterFactory;
- }
-
- /**
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- @Override
- public boolean isFactoryForType(Object type) {
- return supportedTypes.contains(type) || super.isFactoryForType(type);
- }
-
- /**
- * This implementation substitutes the factory itself as the key for the adapter.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- @Override
- public Adapter adapt(Notifier notifier, Object type) {
- return super.adapt(notifier, this);
- }
-
- /**
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- @Override
- public Object adapt(Object object, Object type) {
- if (isFactoryForType(type)) {
- Object adapter = super.adapt(object, type);
- if (!(type instanceof Class<?>) || (((Class<?>)type).isInstance(adapter))) {
- return adapter;
- }
- }
-
- return null;
- }
-
- /**
- * This adds a listener.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- public void addListener(INotifyChangedListener notifyChangedListener) {
- changeNotifier.addListener(notifyChangedListener);
- }
-
- /**
- * This removes a listener.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- public void removeListener(INotifyChangedListener notifyChangedListener) {
- changeNotifier.removeListener(notifyChangedListener);
- }
-
- /**
- * This delegates to {@link #changeNotifier} and to {@link #parentAdapterFactory}.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- public void fireNotifyChanged(Notification notification) {
- changeNotifier.fireNotifyChanged(notification);
-
- if (parentAdapterFactory != null) {
- parentAdapterFactory.fireNotifyChanged(notification);
- }
- }
-
- /**
- * This disposes all of the item providers created by this factory.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- public void dispose() {
- if (rootItemProvider != null) rootItemProvider.dispose();
- if (elementItemProvider != null) elementItemProvider.dispose();
- if (strictElementItemProvider != null) strictElementItemProvider.dispose();
- if (nodeItemProvider != null) nodeItemProvider.dispose();
- if (edgeItemProvider != null) edgeItemProvider.dispose();
- if (referencingNodeItemProvider != null) referencingNodeItemProvider.dispose();
- }
-
-}
+/**
+ * <copyright>
+ *
+ * Copyright (c) 2010-2017 Thales Global Services S.A.S.
+ * 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:
+ * Thales Global Services S.A.S. - initial API and implementation
+ *
+ * </copyright>
+ */
+package org.eclipse.emf.diffmerge.tests.elements.Elements.provider;
+
+import java.util.ArrayList;
+import java.util.Collection;
+
+import org.eclipse.emf.common.notify.Adapter;
+import org.eclipse.emf.common.notify.Notification;
+import org.eclipse.emf.common.notify.Notifier;
+
+import org.eclipse.emf.diffmerge.tests.elements.Elements.util.ElementsAdapterFactory;
+
+import org.eclipse.emf.edit.provider.ChangeNotifier;
+import org.eclipse.emf.edit.provider.ComposeableAdapterFactory;
+import org.eclipse.emf.edit.provider.ComposedAdapterFactory;
+import org.eclipse.emf.edit.provider.IChangeNotifier;
+import org.eclipse.emf.edit.provider.IDisposable;
+import org.eclipse.emf.edit.provider.IEditingDomainItemProvider;
+import org.eclipse.emf.edit.provider.IItemLabelProvider;
+import org.eclipse.emf.edit.provider.IItemPropertySource;
+import org.eclipse.emf.edit.provider.INotifyChangedListener;
+import org.eclipse.emf.edit.provider.IStructuredItemContentProvider;
+import org.eclipse.emf.edit.provider.ITreeItemContentProvider;
+
+/**
+ * This is the factory that is used to provide the interfaces needed to support Viewers.
+ * The adapters generated by this factory convert EMF adapter notifications into calls to {@link #fireNotifyChanged fireNotifyChanged}.
+ * The adapters also support Eclipse property sheets.
+ * Note that most of the adapters are shared among multiple instances.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+public class ElementsItemProviderAdapterFactory extends ElementsAdapterFactory implements ComposeableAdapterFactory, IChangeNotifier, IDisposable {
+ /**
+ * This keeps track of the root adapter factory that delegates to this adapter factory.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected ComposedAdapterFactory parentAdapterFactory;
+
+ /**
+ * This is used to implement {@link org.eclipse.emf.edit.provider.IChangeNotifier}.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected IChangeNotifier changeNotifier = new ChangeNotifier();
+
+ /**
+ * This keeps track of all the supported types checked by {@link #isFactoryForType isFactoryForType}.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected Collection<Object> supportedTypes = new ArrayList<Object>();
+
+ /**
+ * This constructs an instance.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public ElementsItemProviderAdapterFactory() {
+ supportedTypes.add(IEditingDomainItemProvider.class);
+ supportedTypes.add(IStructuredItemContentProvider.class);
+ supportedTypes.add(ITreeItemContentProvider.class);
+ supportedTypes.add(IItemLabelProvider.class);
+ supportedTypes.add(IItemPropertySource.class);
+ }
+
+ /**
+ * This keeps track of the one adapter used for all {@link org.eclipse.emf.diffmerge.tests.elements.Elements.Root} instances.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected RootItemProvider rootItemProvider;
+
+ /**
+ * This creates an adapter for a {@link org.eclipse.emf.diffmerge.tests.elements.Elements.Root}.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Adapter createRootAdapter() {
+ if (rootItemProvider == null) {
+ rootItemProvider = new RootItemProvider(this);
+ }
+
+ return rootItemProvider;
+ }
+
+ /**
+ * This keeps track of the one adapter used for all {@link org.eclipse.emf.diffmerge.tests.elements.Elements.Element} instances.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected ElementItemProvider elementItemProvider;
+
+ /**
+ * This creates an adapter for a {@link org.eclipse.emf.diffmerge.tests.elements.Elements.Element}.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Adapter createElementAdapter() {
+ if (elementItemProvider == null) {
+ elementItemProvider = new ElementItemProvider(this);
+ }
+
+ return elementItemProvider;
+ }
+
+ /**
+ * This keeps track of the one adapter used for all {@link org.eclipse.emf.diffmerge.tests.elements.Elements.StrictElement} instances.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected StrictElementItemProvider strictElementItemProvider;
+
+ /**
+ * This creates an adapter for a {@link org.eclipse.emf.diffmerge.tests.elements.Elements.StrictElement}.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Adapter createStrictElementAdapter() {
+ if (strictElementItemProvider == null) {
+ strictElementItemProvider = new StrictElementItemProvider(this);
+ }
+
+ return strictElementItemProvider;
+ }
+
+ /**
+ * This keeps track of the one adapter used for all {@link org.eclipse.emf.diffmerge.tests.elements.Elements.Node} instances.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected NodeItemProvider nodeItemProvider;
+
+ /**
+ * This creates an adapter for a {@link org.eclipse.emf.diffmerge.tests.elements.Elements.Node}.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Adapter createNodeAdapter() {
+ if (nodeItemProvider == null) {
+ nodeItemProvider = new NodeItemProvider(this);
+ }
+
+ return nodeItemProvider;
+ }
+
+ /**
+ * This keeps track of the one adapter used for all {@link org.eclipse.emf.diffmerge.tests.elements.Elements.Edge} instances.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected EdgeItemProvider edgeItemProvider;
+
+ /**
+ * This creates an adapter for a {@link org.eclipse.emf.diffmerge.tests.elements.Elements.Edge}.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Adapter createEdgeAdapter() {
+ if (edgeItemProvider == null) {
+ edgeItemProvider = new EdgeItemProvider(this);
+ }
+
+ return edgeItemProvider;
+ }
+
+ /**
+ * This keeps track of the one adapter used for all {@link org.eclipse.emf.diffmerge.tests.elements.Elements.ReferencingNode} instances.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected ReferencingNodeItemProvider referencingNodeItemProvider;
+
+ /**
+ * This creates an adapter for a {@link org.eclipse.emf.diffmerge.tests.elements.Elements.ReferencingNode}.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Adapter createReferencingNodeAdapter() {
+ if (referencingNodeItemProvider == null) {
+ referencingNodeItemProvider = new ReferencingNodeItemProvider(this);
+ }
+
+ return referencingNodeItemProvider;
+ }
+
+ /**
+ * This returns the root adapter factory that contains this factory.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public ComposeableAdapterFactory getRootAdapterFactory() {
+ return parentAdapterFactory == null ? this : parentAdapterFactory.getRootAdapterFactory();
+ }
+
+ /**
+ * This sets the composed adapter factory that contains this factory.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void setParentAdapterFactory(ComposedAdapterFactory parentAdapterFactory) {
+ this.parentAdapterFactory = parentAdapterFactory;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public boolean isFactoryForType(Object type) {
+ return supportedTypes.contains(type) || super.isFactoryForType(type);
+ }
+
+ /**
+ * This implementation substitutes the factory itself as the key for the adapter.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Adapter adapt(Notifier notifier, Object type) {
+ return super.adapt(notifier, this);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Object adapt(Object object, Object type) {
+ if (isFactoryForType(type)) {
+ Object adapter = super.adapt(object, type);
+ if (!(type instanceof Class<?>) || (((Class<?>)type).isInstance(adapter))) {
+ return adapter;
+ }
+ }
+
+ return null;
+ }
+
+ /**
+ * This adds a listener.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void addListener(INotifyChangedListener notifyChangedListener) {
+ changeNotifier.addListener(notifyChangedListener);
+ }
+
+ /**
+ * This removes a listener.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void removeListener(INotifyChangedListener notifyChangedListener) {
+ changeNotifier.removeListener(notifyChangedListener);
+ }
+
+ /**
+ * This delegates to {@link #changeNotifier} and to {@link #parentAdapterFactory}.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void fireNotifyChanged(Notification notification) {
+ changeNotifier.fireNotifyChanged(notification);
+
+ if (parentAdapterFactory != null) {
+ parentAdapterFactory.fireNotifyChanged(notification);
+ }
+ }
+
+ /**
+ * This disposes all of the item providers created by this factory.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void dispose() {
+ if (rootItemProvider != null) rootItemProvider.dispose();
+ if (elementItemProvider != null) elementItemProvider.dispose();
+ if (strictElementItemProvider != null) strictElementItemProvider.dispose();
+ if (nodeItemProvider != null) nodeItemProvider.dispose();
+ if (edgeItemProvider != null) edgeItemProvider.dispose();
+ if (referencingNodeItemProvider != null) referencingNodeItemProvider.dispose();
+ }
+
+}
diff --git a/tests/org.eclipse.emf.diffmerge.tests.elements.edit/src/org/eclipse/emf/diffmerge/tests/elements/Elements/provider/IdentifiedElementItemProvider.java b/tests/org.eclipse.emf.diffmerge.tests.elements.edit/src/org/eclipse/emf/diffmerge/tests/elements/Elements/provider/IdentifiedElementItemProvider.java
index 53c55891..3001e227 100644
--- a/tests/org.eclipse.emf.diffmerge.tests.elements.edit/src/org/eclipse/emf/diffmerge/tests/elements/Elements/provider/IdentifiedElementItemProvider.java
+++ b/tests/org.eclipse.emf.diffmerge.tests.elements.edit/src/org/eclipse/emf/diffmerge/tests/elements/Elements/provider/IdentifiedElementItemProvider.java
@@ -1,158 +1,158 @@
-/**
- * <copyright>
- *
- * Copyright (c) 2010-2016 Thales Global Services S.A.S.
- * 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:
- * Thales Global Services S.A.S. - initial API and implementation
- *
- * </copyright>
- */
-package org.eclipse.emf.diffmerge.tests.elements.Elements.provider;
-
-
-import java.util.Collection;
-import java.util.List;
-
-import org.eclipse.emf.common.notify.AdapterFactory;
-import org.eclipse.emf.common.notify.Notification;
-
-import org.eclipse.emf.common.util.ResourceLocator;
-
-import org.eclipse.emf.diffmerge.tests.elements.Elements.ElementsPackage;
-import org.eclipse.emf.diffmerge.tests.elements.Elements.IdentifiedElement;
-
-import org.eclipse.emf.edit.provider.ComposeableAdapterFactory;
-import org.eclipse.emf.edit.provider.IEditingDomainItemProvider;
-import org.eclipse.emf.edit.provider.IItemLabelProvider;
-import org.eclipse.emf.edit.provider.IItemPropertyDescriptor;
-import org.eclipse.emf.edit.provider.IItemPropertySource;
-import org.eclipse.emf.edit.provider.IStructuredItemContentProvider;
-import org.eclipse.emf.edit.provider.ITreeItemContentProvider;
-import org.eclipse.emf.edit.provider.ItemPropertyDescriptor;
-import org.eclipse.emf.edit.provider.ItemProviderAdapter;
-import org.eclipse.emf.edit.provider.ViewerNotification;
-
-/**
- * This is the item provider adapter for a {@link org.eclipse.emf.diffmerge.tests.elements.Elements.IdentifiedElement} object.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
-public class IdentifiedElementItemProvider
- extends ItemProviderAdapter
- implements
- IEditingDomainItemProvider,
- IStructuredItemContentProvider,
- ITreeItemContentProvider,
- IItemLabelProvider,
- IItemPropertySource {
- /**
- * This constructs an instance from a factory and a notifier.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- public IdentifiedElementItemProvider(AdapterFactory adapterFactory) {
- super(adapterFactory);
- }
-
- /**
- * This returns the property descriptors for the adapted class.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- @Override
- public List<IItemPropertyDescriptor> getPropertyDescriptors(Object object) {
- if (itemPropertyDescriptors == null) {
- super.getPropertyDescriptors(object);
-
- addIdPropertyDescriptor(object);
- }
- return itemPropertyDescriptors;
- }
-
- /**
- * This adds a property descriptor for the Id feature.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- protected void addIdPropertyDescriptor(Object object) {
- itemPropertyDescriptors.add
- (createItemPropertyDescriptor
- (((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
- getResourceLocator(),
- getString("_UI_IdentifiedElement_id_feature"),
- getString("_UI_PropertyDescriptor_description", "_UI_IdentifiedElement_id_feature", "_UI_IdentifiedElement_type"),
- ElementsPackage.Literals.IDENTIFIED_ELEMENT__ID,
- true,
- false,
- false,
- ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
- null,
- null));
- }
-
- /**
- * This returns the label text for the adapted class.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- @Override
- public String getText(Object object) {
- String label = ((IdentifiedElement)object).getId();
- return label == null || label.length() == 0 ?
- getString("_UI_IdentifiedElement_type") :
- getString("_UI_IdentifiedElement_type") + " " + label;
- }
-
- /**
- * This handles model notifications by calling {@link #updateChildren} to update any cached
- * children and by creating a viewer notification, which it passes to {@link #fireNotifyChanged}.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- @Override
- public void notifyChanged(Notification notification) {
- updateChildren(notification);
-
- switch (notification.getFeatureID(IdentifiedElement.class)) {
- case ElementsPackage.IDENTIFIED_ELEMENT__ID:
- fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), false, true));
- return;
- }
- super.notifyChanged(notification);
- }
-
- /**
- * This adds {@link org.eclipse.emf.edit.command.CommandParameter}s describing the children
- * that can be created under this object.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- @Override
- protected void collectNewChildDescriptors(Collection<Object> newChildDescriptors, Object object) {
- super.collectNewChildDescriptors(newChildDescriptors, object);
- }
-
- /**
- * Return the resource locator for this item provider's resources.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- @Override
- public ResourceLocator getResourceLocator() {
- return ElementsEditPlugin.INSTANCE;
- }
-
-}
+/**
+ * <copyright>
+ *
+ * Copyright (c) 2010-2017 Thales Global Services S.A.S.
+ * 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:
+ * Thales Global Services S.A.S. - initial API and implementation
+ *
+ * </copyright>
+ */
+package org.eclipse.emf.diffmerge.tests.elements.Elements.provider;
+
+
+import java.util.Collection;
+import java.util.List;
+
+import org.eclipse.emf.common.notify.AdapterFactory;
+import org.eclipse.emf.common.notify.Notification;
+
+import org.eclipse.emf.common.util.ResourceLocator;
+
+import org.eclipse.emf.diffmerge.tests.elements.Elements.ElementsPackage;
+import org.eclipse.emf.diffmerge.tests.elements.Elements.IdentifiedElement;
+
+import org.eclipse.emf.edit.provider.ComposeableAdapterFactory;
+import org.eclipse.emf.edit.provider.IEditingDomainItemProvider;
+import org.eclipse.emf.edit.provider.IItemLabelProvider;
+import org.eclipse.emf.edit.provider.IItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.IItemPropertySource;
+import org.eclipse.emf.edit.provider.IStructuredItemContentProvider;
+import org.eclipse.emf.edit.provider.ITreeItemContentProvider;
+import org.eclipse.emf.edit.provider.ItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.ItemProviderAdapter;
+import org.eclipse.emf.edit.provider.ViewerNotification;
+
+/**
+ * This is the item provider adapter for a {@link org.eclipse.emf.diffmerge.tests.elements.Elements.IdentifiedElement} object.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+public class IdentifiedElementItemProvider
+ extends ItemProviderAdapter
+ implements
+ IEditingDomainItemProvider,
+ IStructuredItemContentProvider,
+ ITreeItemContentProvider,
+ IItemLabelProvider,
+ IItemPropertySource {
+ /**
+ * This constructs an instance from a factory and a notifier.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public IdentifiedElementItemProvider(AdapterFactory adapterFactory) {
+ super(adapterFactory);
+ }
+
+ /**
+ * This returns the property descriptors for the adapted class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public List<IItemPropertyDescriptor> getPropertyDescriptors(Object object) {
+ if (itemPropertyDescriptors == null) {
+ super.getPropertyDescriptors(object);
+
+ addIdPropertyDescriptor(object);
+ }
+ return itemPropertyDescriptors;
+ }
+
+ /**
+ * This adds a property descriptor for the Id feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected void addIdPropertyDescriptor(Object object) {
+ itemPropertyDescriptors.add
+ (createItemPropertyDescriptor
+ (((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+ getResourceLocator(),
+ getString("_UI_IdentifiedElement_id_feature"),
+ getString("_UI_PropertyDescriptor_description", "_UI_IdentifiedElement_id_feature", "_UI_IdentifiedElement_type"),
+ ElementsPackage.Literals.IDENTIFIED_ELEMENT__ID,
+ true,
+ false,
+ false,
+ ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+ null,
+ null));
+ }
+
+ /**
+ * This returns the label text for the adapted class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public String getText(Object object) {
+ String label = ((IdentifiedElement)object).getId();
+ return label == null || label.length() == 0 ?
+ getString("_UI_IdentifiedElement_type") :
+ getString("_UI_IdentifiedElement_type") + " " + label;
+ }
+
+ /**
+ * This handles model notifications by calling {@link #updateChildren} to update any cached
+ * children and by creating a viewer notification, which it passes to {@link #fireNotifyChanged}.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void notifyChanged(Notification notification) {
+ updateChildren(notification);
+
+ switch (notification.getFeatureID(IdentifiedElement.class)) {
+ case ElementsPackage.IDENTIFIED_ELEMENT__ID:
+ fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), false, true));
+ return;
+ }
+ super.notifyChanged(notification);
+ }
+
+ /**
+ * This adds {@link org.eclipse.emf.edit.command.CommandParameter}s describing the children
+ * that can be created under this object.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ protected void collectNewChildDescriptors(Collection<Object> newChildDescriptors, Object object) {
+ super.collectNewChildDescriptors(newChildDescriptors, object);
+ }
+
+ /**
+ * Return the resource locator for this item provider's resources.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public ResourceLocator getResourceLocator() {
+ return ElementsEditPlugin.INSTANCE;
+ }
+
+}
diff --git a/tests/org.eclipse.emf.diffmerge.tests.elements.edit/src/org/eclipse/emf/diffmerge/tests/elements/Elements/provider/NamedElementItemProvider.java b/tests/org.eclipse.emf.diffmerge.tests.elements.edit/src/org/eclipse/emf/diffmerge/tests/elements/Elements/provider/NamedElementItemProvider.java
index 10aad515..78228f0c 100644
--- a/tests/org.eclipse.emf.diffmerge.tests.elements.edit/src/org/eclipse/emf/diffmerge/tests/elements/Elements/provider/NamedElementItemProvider.java
+++ b/tests/org.eclipse.emf.diffmerge.tests.elements.edit/src/org/eclipse/emf/diffmerge/tests/elements/Elements/provider/NamedElementItemProvider.java
@@ -1,7 +1,7 @@
/**
* <copyright>
*
- * Copyright (c) 2010-2016 Thales Global Services S.A.S.
+ * Copyright (c) 2010-2017 Thales Global Services S.A.S.
* 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
diff --git a/tests/org.eclipse.emf.diffmerge.tests.elements.edit/src/org/eclipse/emf/diffmerge/tests/elements/Elements/provider/NodeItemProvider.java b/tests/org.eclipse.emf.diffmerge.tests.elements.edit/src/org/eclipse/emf/diffmerge/tests/elements/Elements/provider/NodeItemProvider.java
index 28099469..468233b5 100644
--- a/tests/org.eclipse.emf.diffmerge.tests.elements.edit/src/org/eclipse/emf/diffmerge/tests/elements/Elements/provider/NodeItemProvider.java
+++ b/tests/org.eclipse.emf.diffmerge.tests.elements.edit/src/org/eclipse/emf/diffmerge/tests/elements/Elements/provider/NodeItemProvider.java
@@ -1,7 +1,7 @@
/**
* <copyright>
*
- * Copyright (c) 2010-2016 Thales Global Services S.A.S.
+ * Copyright (c) 2010-2017 Thales Global Services S.A.S.
* 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
diff --git a/tests/org.eclipse.emf.diffmerge.tests.elements.edit/src/org/eclipse/emf/diffmerge/tests/elements/Elements/provider/ReferencingNodeItemProvider.java b/tests/org.eclipse.emf.diffmerge.tests.elements.edit/src/org/eclipse/emf/diffmerge/tests/elements/Elements/provider/ReferencingNodeItemProvider.java
index aa17860a..cd8fcd3a 100644
--- a/tests/org.eclipse.emf.diffmerge.tests.elements.edit/src/org/eclipse/emf/diffmerge/tests/elements/Elements/provider/ReferencingNodeItemProvider.java
+++ b/tests/org.eclipse.emf.diffmerge.tests.elements.edit/src/org/eclipse/emf/diffmerge/tests/elements/Elements/provider/ReferencingNodeItemProvider.java
@@ -1,7 +1,7 @@
/**
* <copyright>
*
- * Copyright (c) 2010-2016 Thales Global Services S.A.S.
+ * Copyright (c) 2010-2017 Thales Global Services S.A.S.
* 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
diff --git a/tests/org.eclipse.emf.diffmerge.tests.elements.edit/src/org/eclipse/emf/diffmerge/tests/elements/Elements/provider/RootItemProvider.java b/tests/org.eclipse.emf.diffmerge.tests.elements.edit/src/org/eclipse/emf/diffmerge/tests/elements/Elements/provider/RootItemProvider.java
index 5370952d..b0443800 100644
--- a/tests/org.eclipse.emf.diffmerge.tests.elements.edit/src/org/eclipse/emf/diffmerge/tests/elements/Elements/provider/RootItemProvider.java
+++ b/tests/org.eclipse.emf.diffmerge.tests.elements.edit/src/org/eclipse/emf/diffmerge/tests/elements/Elements/provider/RootItemProvider.java
@@ -1,7 +1,7 @@
/**
* <copyright>
*
- * Copyright (c) 2010-2016 Thales Global Services S.A.S.
+ * Copyright (c) 2010-2017 Thales Global Services S.A.S.
* 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
diff --git a/tests/org.eclipse.emf.diffmerge.tests.elements.edit/src/org/eclipse/emf/diffmerge/tests/elements/Elements/provider/StrictElementItemProvider.java b/tests/org.eclipse.emf.diffmerge.tests.elements.edit/src/org/eclipse/emf/diffmerge/tests/elements/Elements/provider/StrictElementItemProvider.java
index 2daa388d..16d13440 100644
--- a/tests/org.eclipse.emf.diffmerge.tests.elements.edit/src/org/eclipse/emf/diffmerge/tests/elements/Elements/provider/StrictElementItemProvider.java
+++ b/tests/org.eclipse.emf.diffmerge.tests.elements.edit/src/org/eclipse/emf/diffmerge/tests/elements/Elements/provider/StrictElementItemProvider.java
@@ -1,7 +1,7 @@
/**
* <copyright>
*
- * Copyright (c) 2010-2016 Thales Global Services S.A.S.
+ * Copyright (c) 2010-2017 Thales Global Services S.A.S.
* 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
diff --git a/tests/org.eclipse.emf.diffmerge.tests.elements.editor/build.properties b/tests/org.eclipse.emf.diffmerge.tests.elements.editor/build.properties
index 10c7b2d4..66237444 100644
--- a/tests/org.eclipse.emf.diffmerge.tests.elements.editor/build.properties
+++ b/tests/org.eclipse.emf.diffmerge.tests.elements.editor/build.properties
@@ -1,15 +1,15 @@
-###############################################################################
-# Copyright (c) 2010-2016 Thales Global Services S.A.S.
-# 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
-###############################################################################
-bin.includes = .,\
- icons/,\
- META-INF/,\
- plugin.xml,\
- plugin.properties
-jars.compile.order = .
-source.. = src/
-output.. = bin
+###############################################################################
+# Copyright (c) 2010-2017 Thales Global Services S.A.S.
+# 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
+###############################################################################
+bin.includes = .,\
+ icons/,\
+ META-INF/,\
+ plugin.xml,\
+ plugin.properties
+jars.compile.order = .
+source.. = src/
+output.. = bin
diff --git a/tests/org.eclipse.emf.diffmerge.tests.elements.editor/plugin.properties b/tests/org.eclipse.emf.diffmerge.tests.elements.editor/plugin.properties
index 76f23ffa..ef4e3b79 100644
--- a/tests/org.eclipse.emf.diffmerge.tests.elements.editor/plugin.properties
+++ b/tests/org.eclipse.emf.diffmerge.tests.elements.editor/plugin.properties
@@ -1,58 +1,58 @@
-###############################################################################
-# Copyright (c) 2010-2016 Thales Global Services S.A.S.
-# 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
-###############################################################################
-pluginName = Elements Editor
-providerName = Eclipse Modeling Project
-
-_UI_ElementsEditor_menu = &Elements Editor
-
-_UI_CreateChild_menu_item = &New Child
-_UI_CreateSibling_menu_item = N&ew Sibling
-
-_UI_ShowPropertiesView_menu_item = Show &Properties View
-_UI_RefreshViewer_menu_item = &Refresh
-
-_UI_SelectionPage_label = Selection
-_UI_ParentPage_label = Parent
-_UI_ListPage_label = List
-_UI_TreePage_label = Tree
-_UI_TablePage_label = Table
-_UI_TreeWithColumnsPage_label = Tree with Columns
-_UI_ObjectColumn_label = Object
-_UI_SelfColumn_label = Self
-
-_UI_NoObjectSelected = Selected Nothing
-_UI_SingleObjectSelected = Selected Object: {0}
-_UI_MultiObjectSelected = Selected {0} Objects
-
-_UI_OpenEditorError_label = Open Editor
-
-_UI_Wizard_category = Example EMF Model Creation Wizards
-
-_UI_CreateModelError_message = Problems encountered in file "{0}"
-
-_UI_ElementsModelWizard_label = Elements Model
-_UI_ElementsModelWizard_description = Create a new Elements model
-
-_UI_ElementsEditor_label = Elements Model Editor
-
-_UI_ElementsEditorFilenameDefaultBase = My
-_UI_ElementsEditorFilenameExtensions = elements
-
-_UI_Wizard_label = New
-
-_WARN_FilenameExtension = The file name must end in ''.{0}''
-_WARN_FilenameExtensions = The file name must have one of the following extensions: {0}
-
-_UI_ModelObject = &Model Object
-_UI_XMLEncoding = &XML Encoding
-_UI_XMLEncodingChoices = UTF-8 ASCII UTF-16 UTF-16BE UTF-16LE ISO-8859-1
-_UI_Wizard_initial_object_description = Select a model object to create
-
-_UI_FileConflict_label = File Conflict
-_WARN_FileConflict = There are unsaved changes that conflict with changes made outside the editor. Do you wish to discard this editor's changes?
-
+###############################################################################
+# Copyright (c) 2010-2017 Thales Global Services S.A.S.
+# 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
+###############################################################################
+pluginName = Elements Editor
+providerName = Eclipse Modeling Project
+
+_UI_ElementsEditor_menu = &Elements Editor
+
+_UI_CreateChild_menu_item = &New Child
+_UI_CreateSibling_menu_item = N&ew Sibling
+
+_UI_ShowPropertiesView_menu_item = Show &Properties View
+_UI_RefreshViewer_menu_item = &Refresh
+
+_UI_SelectionPage_label = Selection
+_UI_ParentPage_label = Parent
+_UI_ListPage_label = List
+_UI_TreePage_label = Tree
+_UI_TablePage_label = Table
+_UI_TreeWithColumnsPage_label = Tree with Columns
+_UI_ObjectColumn_label = Object
+_UI_SelfColumn_label = Self
+
+_UI_NoObjectSelected = Selected Nothing
+_UI_SingleObjectSelected = Selected Object: {0}
+_UI_MultiObjectSelected = Selected {0} Objects
+
+_UI_OpenEditorError_label = Open Editor
+
+_UI_Wizard_category = Example EMF Model Creation Wizards
+
+_UI_CreateModelError_message = Problems encountered in file "{0}"
+
+_UI_ElementsModelWizard_label = Elements Model
+_UI_ElementsModelWizard_description = Create a new Elements model
+
+_UI_ElementsEditor_label = Elements Model Editor
+
+_UI_ElementsEditorFilenameDefaultBase = My
+_UI_ElementsEditorFilenameExtensions = elements
+
+_UI_Wizard_label = New
+
+_WARN_FilenameExtension = The file name must end in ''.{0}''
+_WARN_FilenameExtensions = The file name must have one of the following extensions: {0}
+
+_UI_ModelObject = &Model Object
+_UI_XMLEncoding = &XML Encoding
+_UI_XMLEncodingChoices = UTF-8 ASCII UTF-16 UTF-16BE UTF-16LE ISO-8859-1
+_UI_Wizard_initial_object_description = Select a model object to create
+
+_UI_FileConflict_label = File Conflict
+_WARN_FileConflict = There are unsaved changes that conflict with changes made outside the editor. Do you wish to discard this editor's changes?
+
diff --git a/tests/org.eclipse.emf.diffmerge.tests.elements.editor/plugin.xml b/tests/org.eclipse.emf.diffmerge.tests.elements.editor/plugin.xml
index 4fc1ea80..f91b0b18 100644
--- a/tests/org.eclipse.emf.diffmerge.tests.elements.editor/plugin.xml
+++ b/tests/org.eclipse.emf.diffmerge.tests.elements.editor/plugin.xml
@@ -1,45 +1,45 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<?eclipse version="3.0"?>
-<!--
- <copyright>
-
- Copyright (c) 2010-2016 Thales Global Services S.A.S.
- 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:
- Thales Global Services S.A.S - initial API and implementation
-
- </copyright>
--->
-<plugin>
-
- <extension point="org.eclipse.ui.newWizards">
- <category
- id="org.eclipse.emf.ecore.Wizard.category.ID"
- name="%_UI_Wizard_category"/>
- <wizard
- id="org.eclipse.emf.diffmerge.tests.elements.Elements.presentation.ElementsModelWizardID"
- name="%_UI_ElementsModelWizard_label"
- class="org.eclipse.emf.diffmerge.tests.elements.Elements.presentation.ElementsModelWizard"
- category="org.eclipse.emf.ecore.Wizard.category.ID"
- icon="icons/full/obj16/ElementsModelFile.gif">
- <description>%_UI_ElementsModelWizard_description</description>
- <selection class="org.eclipse.core.resources.IResource"/>
- </wizard>
- </extension>
-
- <extension point="org.eclipse.ui.editors">
- <editor
- id="org.eclipse.emf.diffmerge.tests.elements.Elements.presentation.ElementsEditorID"
- name="%_UI_ElementsEditor_label"
- icon="icons/full/obj16/ElementsModelFile.gif"
- extensions="elements"
- class="org.eclipse.emf.diffmerge.tests.elements.Elements.presentation.ElementsEditor"
- contributorClass="org.eclipse.emf.diffmerge.tests.elements.Elements.presentation.ElementsActionBarContributor">
- </editor>
- </extension>
-
-</plugin>
+<?xml version="1.0" encoding="UTF-8"?>
+<?eclipse version="3.0"?>
+<!--
+ <copyright>
+
+ Copyright (c) 2010-2017 Thales Global Services S.A.S.
+ 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:
+ Thales Global Services S.A.S - initial API and implementation
+
+ </copyright>
+-->
+<plugin>
+
+ <extension point="org.eclipse.ui.newWizards">
+ <category
+ id="org.eclipse.emf.ecore.Wizard.category.ID"
+ name="%_UI_Wizard_category"/>
+ <wizard
+ id="org.eclipse.emf.diffmerge.tests.elements.Elements.presentation.ElementsModelWizardID"
+ name="%_UI_ElementsModelWizard_label"
+ class="org.eclipse.emf.diffmerge.tests.elements.Elements.presentation.ElementsModelWizard"
+ category="org.eclipse.emf.ecore.Wizard.category.ID"
+ icon="icons/full/obj16/ElementsModelFile.gif">
+ <description>%_UI_ElementsModelWizard_description</description>
+ <selection class="org.eclipse.core.resources.IResource"/>
+ </wizard>
+ </extension>
+
+ <extension point="org.eclipse.ui.editors">
+ <editor
+ id="org.eclipse.emf.diffmerge.tests.elements.Elements.presentation.ElementsEditorID"
+ name="%_UI_ElementsEditor_label"
+ icon="icons/full/obj16/ElementsModelFile.gif"
+ extensions="elements"
+ class="org.eclipse.emf.diffmerge.tests.elements.Elements.presentation.ElementsEditor"
+ contributorClass="org.eclipse.emf.diffmerge.tests.elements.Elements.presentation.ElementsActionBarContributor">
+ </editor>
+ </extension>
+
+</plugin>
diff --git a/tests/org.eclipse.emf.diffmerge.tests.elements/build.properties b/tests/org.eclipse.emf.diffmerge.tests.elements/build.properties
index 48a12c94..3d1bc0d1 100644
--- a/tests/org.eclipse.emf.diffmerge.tests.elements/build.properties
+++ b/tests/org.eclipse.emf.diffmerge.tests.elements/build.properties
@@ -1,15 +1,15 @@
-###############################################################################
-# Copyright (c) 2010-2016 Thales Global Services S.A.S.
-# 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
-###############################################################################
-bin.includes = .,\
- model/,\
- META-INF/,\
- plugin.xml,\
- plugin.properties
-jars.compile.order = .
-source.. = src/
-output.. = bin/
+###############################################################################
+# Copyright (c) 2010-2017 Thales Global Services S.A.S.
+# 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
+###############################################################################
+bin.includes = .,\
+ model/,\
+ META-INF/,\
+ plugin.xml,\
+ plugin.properties
+jars.compile.order = .
+source.. = src/
+output.. = bin/
diff --git a/tests/org.eclipse.emf.diffmerge.tests.elements/model/Elements.ecore b/tests/org.eclipse.emf.diffmerge.tests.elements/model/Elements.ecore
index 7d74ccde..df513a17 100644
--- a/tests/org.eclipse.emf.diffmerge.tests.elements/model/Elements.ecore
+++ b/tests/org.eclipse.emf.diffmerge.tests.elements/model/Elements.ecore
@@ -1,4 +1,14 @@
<?xml version="1.0" encoding="UTF-8"?>
+<!--
+ Copyright (c) 2010-2017 Thales Global Services S.A.S.
+ 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:
+ Thales Global Services S.A.S - initial API and implementation
+-->
<ecore:EPackage xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:ecore="http://www.eclipse.org/emf/2002/Ecore" name="Elements" nsURI="http://www.eclipse.org/emf/diffmerge/tests/elements/1.0.0"
nsPrefix="org.eclipse.emf.diffmerge.tests.elements">
diff --git a/tests/org.eclipse.emf.diffmerge.tests.elements/model/Elements.genmodel b/tests/org.eclipse.emf.diffmerge.tests.elements/model/Elements.genmodel
index d43b2221..be55f607 100644
--- a/tests/org.eclipse.emf.diffmerge.tests.elements/model/Elements.genmodel
+++ b/tests/org.eclipse.emf.diffmerge.tests.elements/model/Elements.genmodel
@@ -1,67 +1,67 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!--
- Copyright (c) 2010-2016 Thales Global Services S.A.S.
- 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:
- Thales Global Services S.A.S - initial API and implementation
--->
-<genmodel:GenModel xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:ecore="http://www.eclipse.org/emf/2002/Ecore"
- xmlns:genmodel="http://www.eclipse.org/emf/2002/GenModel" modelDirectory="/org.eclipse.emf.diffmerge.tests.elements/src"
- modelPluginID="org.eclipse.emf.diffmerge.tests.elements" modelName="Elements"
- importerID="org.eclipse.emf.importer.ecore" complianceLevel="6.0" copyrightFields="false"
- runtimeVersion="2.6">
- <foreignModel>../../Misc/Elements.ecore</foreignModel>
- <genPackages prefix="Elements" basePackage="org.eclipse.emf.diffmerge.tests.elements"
- disposableProviderFactory="true" ecorePackage="Elements.ecore#/">
- <genClasses image="false" ecoreClass="Elements.ecore#//IdentifiedElement">
- <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Elements.ecore#//IdentifiedElement/id"/>
- </genClasses>
- <genClasses image="false" ecoreClass="Elements.ecore#//NamedElement">
- <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Elements.ecore#//NamedElement/name"/>
- </genClasses>
- <genClasses ecoreClass="Elements.ecore#//Root">
- <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Elements.ecore#//Root/name"/>
- <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Elements.ecore#//Root/content"/>
- </genClasses>
- <genClasses ecoreClass="Elements.ecore#//Element">
- <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Elements.ecore#//Element/value"/>
- <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Elements.ecore#//Element/values"/>
- <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Elements.ecore#//Element/manyContent"/>
- <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Elements.ecore#//Element/singleContent"/>
- <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference Elements.ecore#//Element/manyRef"/>
- <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference Elements.ecore#//Element/singleRef"/>
- <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference Elements.ecore#//Element/manyFromSingleRef"/>
- <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference Elements.ecore#//Element/singleFromManyRef"/>
- <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference Elements.ecore#//Element/manyFromManyRef1"/>
- <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference Elements.ecore#//Element/manyFromManyRef2"/>
- </genClasses>
- <genClasses ecoreClass="Elements.ecore#//StrictElement">
- <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Elements.ecore#//StrictElement/sValue"/>
- <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Elements.ecore#//StrictElement/sValues"/>
- <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Elements.ecore#//StrictElement/sManyContent"/>
- <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Elements.ecore#//StrictElement/sSingleContent"/>
- <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference Elements.ecore#//StrictElement/sManyRef"/>
- <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference Elements.ecore#//StrictElement/sSingleRef"/>
- <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference Elements.ecore#//StrictElement/sManyFromSingleRef"/>
- <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference Elements.ecore#//StrictElement/sSingleFromManyRef"/>
- <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference Elements.ecore#//StrictElement/sManyFromManyRef1"/>
- <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference Elements.ecore#//StrictElement/sManyFromManyRef2"/>
- </genClasses>
- <genClasses ecoreClass="Elements.ecore#//Node">
- <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference Elements.ecore#//Node/incoming"/>
- <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference Elements.ecore#//Node/outgoing"/>
- <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Elements.ecore#//Node/subNodes"/>
- </genClasses>
- <genClasses ecoreClass="Elements.ecore#//Edge">
- <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference Elements.ecore#//Edge/target"/>
- <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference Elements.ecore#//Edge/source"/>
- </genClasses>
- <genClasses ecoreClass="Elements.ecore#//ReferencingNode">
- <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference Elements.ecore#//ReferencingNode/referenced"/>
- </genClasses>
- </genPackages>
-</genmodel:GenModel>
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+ Copyright (c) 2010-2017 Thales Global Services S.A.S.
+ 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:
+ Thales Global Services S.A.S - initial API and implementation
+-->
+<genmodel:GenModel xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:ecore="http://www.eclipse.org/emf/2002/Ecore"
+ xmlns:genmodel="http://www.eclipse.org/emf/2002/GenModel" modelDirectory="/org.eclipse.emf.diffmerge.tests.elements/src"
+ modelPluginID="org.eclipse.emf.diffmerge.tests.elements" modelName="Elements"
+ importerID="org.eclipse.emf.importer.ecore" complianceLevel="6.0" copyrightFields="false"
+ runtimeVersion="2.6">
+ <foreignModel>../../Misc/Elements.ecore</foreignModel>
+ <genPackages prefix="Elements" basePackage="org.eclipse.emf.diffmerge.tests.elements"
+ disposableProviderFactory="true" ecorePackage="Elements.ecore#/">
+ <genClasses image="false" ecoreClass="Elements.ecore#//IdentifiedElement">
+ <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Elements.ecore#//IdentifiedElement/id"/>
+ </genClasses>
+ <genClasses image="false" ecoreClass="Elements.ecore#//NamedElement">
+ <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Elements.ecore#//NamedElement/name"/>
+ </genClasses>
+ <genClasses ecoreClass="Elements.ecore#//Root">
+ <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Elements.ecore#//Root/name"/>
+ <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Elements.ecore#//Root/content"/>
+ </genClasses>
+ <genClasses ecoreClass="Elements.ecore#//Element">
+ <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Elements.ecore#//Element/value"/>
+ <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Elements.ecore#//Element/values"/>
+ <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Elements.ecore#//Element/manyContent"/>
+ <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Elements.ecore#//Element/singleContent"/>
+ <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference Elements.ecore#//Element/manyRef"/>
+ <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference Elements.ecore#//Element/singleRef"/>
+ <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference Elements.ecore#//Element/manyFromSingleRef"/>
+ <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference Elements.ecore#//Element/singleFromManyRef"/>
+ <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference Elements.ecore#//Element/manyFromManyRef1"/>
+ <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference Elements.ecore#//Element/manyFromManyRef2"/>
+ </genClasses>
+ <genClasses ecoreClass="Elements.ecore#//StrictElement">
+ <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Elements.ecore#//StrictElement/sValue"/>
+ <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Elements.ecore#//StrictElement/sValues"/>
+ <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Elements.ecore#//StrictElement/sManyContent"/>
+ <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Elements.ecore#//StrictElement/sSingleContent"/>
+ <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference Elements.ecore#//StrictElement/sManyRef"/>
+ <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference Elements.ecore#//StrictElement/sSingleRef"/>
+ <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference Elements.ecore#//StrictElement/sManyFromSingleRef"/>
+ <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference Elements.ecore#//StrictElement/sSingleFromManyRef"/>
+ <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference Elements.ecore#//StrictElement/sManyFromManyRef1"/>
+ <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference Elements.ecore#//StrictElement/sManyFromManyRef2"/>
+ </genClasses>
+ <genClasses ecoreClass="Elements.ecore#//Node">
+ <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference Elements.ecore#//Node/incoming"/>
+ <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference Elements.ecore#//Node/outgoing"/>
+ <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Elements.ecore#//Node/subNodes"/>
+ </genClasses>
+ <genClasses ecoreClass="Elements.ecore#//Edge">
+ <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference Elements.ecore#//Edge/target"/>
+ <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference Elements.ecore#//Edge/source"/>
+ </genClasses>
+ <genClasses ecoreClass="Elements.ecore#//ReferencingNode">
+ <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference Elements.ecore#//ReferencingNode/referenced"/>
+ </genClasses>
+ </genPackages>
+</genmodel:GenModel>
diff --git a/tests/org.eclipse.emf.diffmerge.tests.elements/plugin.properties b/tests/org.eclipse.emf.diffmerge.tests.elements/plugin.properties
index 3c714ce5..531a90e4 100644
--- a/tests/org.eclipse.emf.diffmerge.tests.elements/plugin.properties
+++ b/tests/org.eclipse.emf.diffmerge.tests.elements/plugin.properties
@@ -1,9 +1,9 @@
-###############################################################################
-# Copyright (c) 2010-2016 Thales Global Services S.A.S.
-# 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
-###############################################################################
-pluginName = Elements Model
-providerName = Eclipse Modeling Project
+###############################################################################
+# Copyright (c) 2010-2017 Thales Global Services S.A.S.
+# 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
+###############################################################################
+pluginName = Elements Model
+providerName = Eclipse Modeling Project
diff --git a/tests/org.eclipse.emf.diffmerge.tests.elements/plugin.xml b/tests/org.eclipse.emf.diffmerge.tests.elements/plugin.xml
index 8c6a8736..a2523413 100644
--- a/tests/org.eclipse.emf.diffmerge.tests.elements/plugin.xml
+++ b/tests/org.eclipse.emf.diffmerge.tests.elements/plugin.xml
@@ -1,36 +1,36 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<?eclipse version="3.0"?>
-<!--
- <copyright>
-
- Copyright (c) 2010-2016 Thales Global Services S.A.S.
- 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:
- Thales Global Services S.A.S - initial API and implementation
-
- </copyright>
--->
-<plugin>
-
- <extension point="org.eclipse.emf.ecore.generated_package">
- <package
- uri="http://www.eclipse.org/emf/diffmerge/tests/elements/1.0.0"
- class="org.eclipse.emf.diffmerge.tests.elements.Elements.ElementsPackage"
- genModel="model/Elements.genmodel"/>
- </extension>
- <extension
- point="org.eclipse.core.contenttype.contentTypes">
- <content-type
- base-type="org.eclipse.emf.ecore.xmi"
- file-extensions="elements"
- id="org.eclipse.emf.diffmerge.tests.elements.content-type"
- name="elements"
- priority="normal">
- </content-type>
- </extension>
-
-</plugin>
+<?xml version="1.0" encoding="UTF-8"?>
+<?eclipse version="3.0"?>
+<!--
+ <copyright>
+
+ Copyright (c) 2010-2017 Thales Global Services S.A.S.
+ 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:
+ Thales Global Services S.A.S - initial API and implementation
+
+ </copyright>
+-->
+<plugin>
+
+ <extension point="org.eclipse.emf.ecore.generated_package">
+ <package
+ uri="http://www.eclipse.org/emf/diffmerge/tests/elements/1.0.0"
+ class="org.eclipse.emf.diffmerge.tests.elements.Elements.ElementsPackage"
+ genModel="model/Elements.genmodel"/>
+ </extension>
+ <extension
+ point="org.eclipse.core.contenttype.contentTypes">
+ <content-type
+ base-type="org.eclipse.emf.ecore.xmi"
+ file-extensions="elements"
+ id="org.eclipse.emf.diffmerge.tests.elements.content-type"
+ name="elements"
+ priority="normal">
+ </content-type>
+ </extension>
+
+</plugin>
diff --git a/tests/org.eclipse.emf.diffmerge.tests.elements/src/org/eclipse/emf/diffmerge/tests/elements/Elements/Edge.java b/tests/org.eclipse.emf.diffmerge.tests.elements/src/org/eclipse/emf/diffmerge/tests/elements/Elements/Edge.java
index 2e7a0d7a..dd9a2810 100644
--- a/tests/org.eclipse.emf.diffmerge.tests.elements/src/org/eclipse/emf/diffmerge/tests/elements/Elements/Edge.java
+++ b/tests/org.eclipse.emf.diffmerge.tests.elements/src/org/eclipse/emf/diffmerge/tests/elements/Elements/Edge.java
@@ -1,92 +1,92 @@
-/**
- * <copyright>
- *
- * Copyright (c) 2010-2016 Thales Global Services S.A.S.
- * 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:
- * Thales Global Services S.A.S. - initial API and implementation
- *
- * </copyright>
- */
-package org.eclipse.emf.diffmerge.tests.elements.Elements;
-
-
-/**
- * <!-- begin-user-doc -->
- * A representation of the model object '<em><b>Edge</b></em>'.
- * <!-- end-user-doc -->
- *
- * <p>
- * The following features are supported:
- * <ul>
- * <li>{@link org.eclipse.emf.diffmerge.tests.elements.Elements.Edge#getTarget <em>Target</em>}</li>
- * <li>{@link org.eclipse.emf.diffmerge.tests.elements.Elements.Edge#getSource <em>Source</em>}</li>
- * </ul>
- * </p>
- *
- * @see org.eclipse.emf.diffmerge.tests.elements.Elements.ElementsPackage#getEdge()
- * @model
- * @generated
- */
-public interface Edge extends NamedElement {
- /**
- * Returns the value of the '<em><b>Target</b></em>' reference.
- * It is bidirectional and its opposite is '{@link org.eclipse.emf.diffmerge.tests.elements.Elements.Node#getIncoming <em>Incoming</em>}'.
- * <!-- begin-user-doc -->
- * <p>
- * If the meaning of the '<em>Target</em>' reference isn't clear,
- * there really should be more of a description here...
- * </p>
- * <!-- end-user-doc -->
- * @return the value of the '<em>Target</em>' reference.
- * @see #setTarget(Node)
- * @see org.eclipse.emf.diffmerge.tests.elements.Elements.ElementsPackage#getEdge_Target()
- * @see org.eclipse.emf.diffmerge.tests.elements.Elements.Node#getIncoming
- * @model opposite="incoming" required="true"
- * @generated
- */
- Node getTarget();
-
- /**
- * Sets the value of the '{@link org.eclipse.emf.diffmerge.tests.elements.Elements.Edge#getTarget <em>Target</em>}' reference.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @param value the new value of the '<em>Target</em>' reference.
- * @see #getTarget()
- * @generated
- */
- void setTarget(Node value);
-
- /**
- * Returns the value of the '<em><b>Source</b></em>' reference.
- * It is bidirectional and its opposite is '{@link org.eclipse.emf.diffmerge.tests.elements.Elements.Node#getOutgoing <em>Outgoing</em>}'.
- * <!-- begin-user-doc -->
- * <p>
- * If the meaning of the '<em>Source</em>' reference isn't clear,
- * there really should be more of a description here...
- * </p>
- * <!-- end-user-doc -->
- * @return the value of the '<em>Source</em>' reference.
- * @see #setSource(Node)
- * @see org.eclipse.emf.diffmerge.tests.elements.Elements.ElementsPackage#getEdge_Source()
- * @see org.eclipse.emf.diffmerge.tests.elements.Elements.Node#getOutgoing
- * @model opposite="outgoing" required="true"
- * @generated
- */
- Node getSource();
-
- /**
- * Sets the value of the '{@link org.eclipse.emf.diffmerge.tests.elements.Elements.Edge#getSource <em>Source</em>}' reference.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @param value the new value of the '<em>Source</em>' reference.
- * @see #getSource()
- * @generated
- */
- void setSource(Node value);
-
-} // Edge
+/**
+ * <copyright>
+ *
+ * Copyright (c) 2010-2017 Thales Global Services S.A.S.
+ * 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:
+ * Thales Global Services S.A.S. - initial API and implementation
+ *
+ * </copyright>
+ */
+package org.eclipse.emf.diffmerge.tests.elements.Elements;
+
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Edge</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * <ul>
+ * <li>{@link org.eclipse.emf.diffmerge.tests.elements.Elements.Edge#getTarget <em>Target</em>}</li>
+ * <li>{@link org.eclipse.emf.diffmerge.tests.elements.Elements.Edge#getSource <em>Source</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @see org.eclipse.emf.diffmerge.tests.elements.Elements.ElementsPackage#getEdge()
+ * @model
+ * @generated
+ */
+public interface Edge extends NamedElement {
+ /**
+ * Returns the value of the '<em><b>Target</b></em>' reference.
+ * It is bidirectional and its opposite is '{@link org.eclipse.emf.diffmerge.tests.elements.Elements.Node#getIncoming <em>Incoming</em>}'.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Target</em>' reference isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Target</em>' reference.
+ * @see #setTarget(Node)
+ * @see org.eclipse.emf.diffmerge.tests.elements.Elements.ElementsPackage#getEdge_Target()
+ * @see org.eclipse.emf.diffmerge.tests.elements.Elements.Node#getIncoming
+ * @model opposite="incoming" required="true"
+ * @generated
+ */
+ Node getTarget();
+
+ /**
+ * Sets the value of the '{@link org.eclipse.emf.diffmerge.tests.elements.Elements.Edge#getTarget <em>Target</em>}' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Target</em>' reference.
+ * @see #getTarget()
+ * @generated
+ */
+ void setTarget(Node value);
+
+ /**
+ * Returns the value of the '<em><b>Source</b></em>' reference.
+ * It is bidirectional and its opposite is '{@link org.eclipse.emf.diffmerge.tests.elements.Elements.Node#getOutgoing <em>Outgoing</em>}'.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Source</em>' reference isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Source</em>' reference.
+ * @see #setSource(Node)
+ * @see org.eclipse.emf.diffmerge.tests.elements.Elements.ElementsPackage#getEdge_Source()
+ * @see org.eclipse.emf.diffmerge.tests.elements.Elements.Node#getOutgoing
+ * @model opposite="outgoing" required="true"
+ * @generated
+ */
+ Node getSource();
+
+ /**
+ * Sets the value of the '{@link org.eclipse.emf.diffmerge.tests.elements.Elements.Edge#getSource <em>Source</em>}' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Source</em>' reference.
+ * @see #getSource()
+ * @generated
+ */
+ void setSource(Node value);
+
+} // Edge
diff --git a/tests/org.eclipse.emf.diffmerge.tests.elements/src/org/eclipse/emf/diffmerge/tests/elements/Elements/Element.java b/tests/org.eclipse.emf.diffmerge.tests.elements/src/org/eclipse/emf/diffmerge/tests/elements/Elements/Element.java
index 4042db98..9be70540 100644
--- a/tests/org.eclipse.emf.diffmerge.tests.elements/src/org/eclipse/emf/diffmerge/tests/elements/Elements/Element.java
+++ b/tests/org.eclipse.emf.diffmerge.tests.elements/src/org/eclipse/emf/diffmerge/tests/elements/Elements/Element.java
@@ -1,7 +1,7 @@
/**
* <copyright>
*
- * Copyright (c) 2010-2016 Thales Global Services S.A.S.
+ * Copyright (c) 2010-2017 Thales Global Services S.A.S.
* 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
diff --git a/tests/org.eclipse.emf.diffmerge.tests.elements/src/org/eclipse/emf/diffmerge/tests/elements/Elements/ElementsFactory.java b/tests/org.eclipse.emf.diffmerge.tests.elements/src/org/eclipse/emf/diffmerge/tests/elements/Elements/ElementsFactory.java
index eaa3948a..d4aa9f05 100644
--- a/tests/org.eclipse.emf.diffmerge.tests.elements/src/org/eclipse/emf/diffmerge/tests/elements/Elements/ElementsFactory.java
+++ b/tests/org.eclipse.emf.diffmerge.tests.elements/src/org/eclipse/emf/diffmerge/tests/elements/Elements/ElementsFactory.java
@@ -1,99 +1,99 @@
-/**
- * <copyright>
- *
- * Copyright (c) 2010-2016 Thales Global Services S.A.S.
- * 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:
- * Thales Global Services S.A.S. - initial API and implementation
- *
- * </copyright>
- */
-package org.eclipse.emf.diffmerge.tests.elements.Elements;
-
-import org.eclipse.emf.ecore.EFactory;
-
-/**
- * <!-- begin-user-doc -->
- * The <b>Factory</b> for the model.
- * It provides a create method for each non-abstract class of the model.
- * <!-- end-user-doc -->
- * @see org.eclipse.emf.diffmerge.tests.elements.Elements.ElementsPackage
- * @generated
- */
-public interface ElementsFactory extends EFactory {
- /**
- * The singleton instance of the factory.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- ElementsFactory eINSTANCE = org.eclipse.emf.diffmerge.tests.elements.Elements.impl.ElementsFactoryImpl.init();
-
- /**
- * Returns a new object of class '<em>Root</em>'.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @return a new object of class '<em>Root</em>'.
- * @generated
- */
- Root createRoot();
-
- /**
- * Returns a new object of class '<em>Element</em>'.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @return a new object of class '<em>Element</em>'.
- * @generated
- */
- Element createElement();
-
- /**
- * Returns a new object of class '<em>Strict Element</em>'.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @return a new object of class '<em>Strict Element</em>'.
- * @generated
- */
- StrictElement createStrictElement();
-
- /**
- * Returns a new object of class '<em>Node</em>'.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @return a new object of class '<em>Node</em>'.
- * @generated
- */
- Node createNode();
-
- /**
- * Returns a new object of class '<em>Edge</em>'.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @return a new object of class '<em>Edge</em>'.
- * @generated
- */
- Edge createEdge();
-
- /**
- * Returns a new object of class '<em>Referencing Node</em>'.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @return a new object of class '<em>Referencing Node</em>'.
- * @generated
- */
- ReferencingNode createReferencingNode();
-
- /**
- * Returns the package supported by this factory.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @return the package supported by this factory.
- * @generated
- */
- ElementsPackage getElementsPackage();
-
-} //ElementsFactory
+/**
+ * <copyright>
+ *
+ * Copyright (c) 2010-2017 Thales Global Services S.A.S.
+ * 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:
+ * Thales Global Services S.A.S. - initial API and implementation
+ *
+ * </copyright>
+ */
+package org.eclipse.emf.diffmerge.tests.elements.Elements;
+
+import org.eclipse.emf.ecore.EFactory;
+
+/**
+ * <!-- begin-user-doc -->
+ * The <b>Factory</b> for the model.
+ * It provides a create method for each non-abstract class of the model.
+ * <!-- end-user-doc -->
+ * @see org.eclipse.emf.diffmerge.tests.elements.Elements.ElementsPackage
+ * @generated
+ */
+public interface ElementsFactory extends EFactory {
+ /**
+ * The singleton instance of the factory.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ ElementsFactory eINSTANCE = org.eclipse.emf.diffmerge.tests.elements.Elements.impl.ElementsFactoryImpl.init();
+
+ /**
+ * Returns a new object of class '<em>Root</em>'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return a new object of class '<em>Root</em>'.
+ * @generated
+ */
+ Root createRoot();
+
+ /**
+ * Returns a new object of class '<em>Element</em>'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return a new object of class '<em>Element</em>'.
+ * @generated
+ */
+ Element createElement();
+
+ /**
+ * Returns a new object of class '<em>Strict Element</em>'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return a new object of class '<em>Strict Element</em>'.
+ * @generated
+ */
+ StrictElement createStrictElement();
+
+ /**
+ * Returns a new object of class '<em>Node</em>'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return a new object of class '<em>Node</em>'.
+ * @generated
+ */
+ Node createNode();
+
+ /**
+ * Returns a new object of class '<em>Edge</em>'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return a new object of class '<em>Edge</em>'.
+ * @generated
+ */
+ Edge createEdge();
+
+ /**
+ * Returns a new object of class '<em>Referencing Node</em>'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return a new object of class '<em>Referencing Node</em>'.
+ * @generated
+ */
+ ReferencingNode createReferencingNode();
+
+ /**
+ * Returns the package supported by this factory.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the package supported by this factory.
+ * @generated
+ */
+ ElementsPackage getElementsPackage();
+
+} //ElementsFactory
diff --git a/tests/org.eclipse.emf.diffmerge.tests.elements/src/org/eclipse/emf/diffmerge/tests/elements/Elements/ElementsPackage.java b/tests/org.eclipse.emf.diffmerge.tests.elements/src/org/eclipse/emf/diffmerge/tests/elements/Elements/ElementsPackage.java
index c57b04bd..8884ac31 100644
--- a/tests/org.eclipse.emf.diffmerge.tests.elements/src/org/eclipse/emf/diffmerge/tests/elements/Elements/ElementsPackage.java
+++ b/tests/org.eclipse.emf.diffmerge.tests.elements/src/org/eclipse/emf/diffmerge/tests/elements/Elements/ElementsPackage.java
@@ -1,7 +1,7 @@
/**
* <copyright>
*
- * Copyright (c) 2010-2016 Thales Global Services S.A.S.
+ * Copyright (c) 2010-2017 Thales Global Services S.A.S.
* 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
diff --git a/tests/org.eclipse.emf.diffmerge.tests.elements/src/org/eclipse/emf/diffmerge/tests/elements/Elements/IdentifiedElement.java b/tests/org.eclipse.emf.diffmerge.tests.elements/src/org/eclipse/emf/diffmerge/tests/elements/Elements/IdentifiedElement.java
index 33914438..16bebd04 100644
--- a/tests/org.eclipse.emf.diffmerge.tests.elements/src/org/eclipse/emf/diffmerge/tests/elements/Elements/IdentifiedElement.java
+++ b/tests/org.eclipse.emf.diffmerge.tests.elements/src/org/eclipse/emf/diffmerge/tests/elements/Elements/IdentifiedElement.java
@@ -1,62 +1,62 @@
-/**
- * <copyright>
- *
- * Copyright (c) 2010-2016 Thales Global Services S.A.S.
- * 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:
- * Thales Global Services S.A.S. - initial API and implementation
- *
- * </copyright>
- */
-package org.eclipse.emf.diffmerge.tests.elements.Elements;
-
-import org.eclipse.emf.ecore.EObject;
-
-/**
- * <!-- begin-user-doc -->
- * A representation of the model object '<em><b>Identified Element</b></em>'.
- * <!-- end-user-doc -->
- *
- * <p>
- * The following features are supported:
- * <ul>
- * <li>{@link org.eclipse.emf.diffmerge.tests.elements.Elements.IdentifiedElement#getId <em>Id</em>}</li>
- * </ul>
- * </p>
- *
- * @see org.eclipse.emf.diffmerge.tests.elements.Elements.ElementsPackage#getIdentifiedElement()
- * @model abstract="true"
- * @generated
- */
-public interface IdentifiedElement extends EObject {
- /**
- * Returns the value of the '<em><b>Id</b></em>' attribute.
- * <!-- begin-user-doc -->
- * <p>
- * If the meaning of the '<em>Id</em>' attribute isn't clear,
- * there really should be more of a description here...
- * </p>
- * <!-- end-user-doc -->
- * @return the value of the '<em>Id</em>' attribute.
- * @see #setId(String)
- * @see org.eclipse.emf.diffmerge.tests.elements.Elements.ElementsPackage#getIdentifiedElement_Id()
- * @model id="true" required="true"
- * @generated
- */
- String getId();
-
- /**
- * Sets the value of the '{@link org.eclipse.emf.diffmerge.tests.elements.Elements.IdentifiedElement#getId <em>Id</em>}' attribute.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @param value the new value of the '<em>Id</em>' attribute.
- * @see #getId()
- * @generated
- */
- void setId(String value);
-
-} // IdentifiedElement
+/**
+ * <copyright>
+ *
+ * Copyright (c) 2010-2017 Thales Global Services S.A.S.
+ * 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:
+ * Thales Global Services S.A.S. - initial API and implementation
+ *
+ * </copyright>
+ */
+package org.eclipse.emf.diffmerge.tests.elements.Elements;
+
+import org.eclipse.emf.ecore.EObject;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Identified Element</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * <ul>
+ * <li>{@link org.eclipse.emf.diffmerge.tests.elements.Elements.IdentifiedElement#getId <em>Id</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @see org.eclipse.emf.diffmerge.tests.elements.Elements.ElementsPackage#getIdentifiedElement()
+ * @model abstract="true"
+ * @generated
+ */
+public interface IdentifiedElement extends EObject {
+ /**
+ * Returns the value of the '<em><b>Id</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Id</em>' attribute isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Id</em>' attribute.
+ * @see #setId(String)
+ * @see org.eclipse.emf.diffmerge.tests.elements.Elements.ElementsPackage#getIdentifiedElement_Id()
+ * @model id="true" required="true"
+ * @generated
+ */
+ String getId();
+
+ /**
+ * Sets the value of the '{@link org.eclipse.emf.diffmerge.tests.elements.Elements.IdentifiedElement#getId <em>Id</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Id</em>' attribute.
+ * @see #getId()
+ * @generated
+ */
+ void setId(String value);
+
+} // IdentifiedElement
diff --git a/tests/org.eclipse.emf.diffmerge.tests.elements/src/org/eclipse/emf/diffmerge/tests/elements/Elements/NamedElement.java b/tests/org.eclipse.emf.diffmerge.tests.elements/src/org/eclipse/emf/diffmerge/tests/elements/Elements/NamedElement.java
index 1cb15390..e0131971 100644
--- a/tests/org.eclipse.emf.diffmerge.tests.elements/src/org/eclipse/emf/diffmerge/tests/elements/Elements/NamedElement.java
+++ b/tests/org.eclipse.emf.diffmerge.tests.elements/src/org/eclipse/emf/diffmerge/tests/elements/Elements/NamedElement.java
@@ -1,61 +1,61 @@
-/**
- * <copyright>
- *
- * Copyright (c) 2010-2016 Thales Global Services S.A.S.
- * 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:
- * Thales Global Services S.A.S. - initial API and implementation
- *
- * </copyright>
- */
-package org.eclipse.emf.diffmerge.tests.elements.Elements;
-
-
-/**
- * <!-- begin-user-doc -->
- * A representation of the model object '<em><b>Named Element</b></em>'.
- * <!-- end-user-doc -->
- *
- * <p>
- * The following features are supported:
- * <ul>
- * <li>{@link org.eclipse.emf.diffmerge.tests.elements.Elements.NamedElement#getName <em>Name</em>}</li>
- * </ul>
- * </p>
- *
- * @see org.eclipse.emf.diffmerge.tests.elements.Elements.ElementsPackage#getNamedElement()
- * @model abstract="true"
- * @generated
- */
-public interface NamedElement extends IdentifiedElement {
- /**
- * Returns the value of the '<em><b>Name</b></em>' attribute.
- * <!-- begin-user-doc -->
- * <p>
- * If the meaning of the '<em>Name</em>' attribute isn't clear,
- * there really should be more of a description here...
- * </p>
- * <!-- end-user-doc -->
- * @return the value of the '<em>Name</em>' attribute.
- * @see #setName(String)
- * @see org.eclipse.emf.diffmerge.tests.elements.Elements.ElementsPackage#getNamedElement_Name()
- * @model required="true"
- * @generated
- */
- String getName();
-
- /**
- * Sets the value of the '{@link org.eclipse.emf.diffmerge.tests.elements.Elements.NamedElement#getName <em>Name</em>}' attribute.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @param value the new value of the '<em>Name</em>' attribute.
- * @see #getName()
- * @generated
- */
- void setName(String value);
-
-} // NamedElement
+/**
+ * <copyright>
+ *
+ * Copyright (c) 2010-2017 Thales Global Services S.A.S.
+ * 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:
+ * Thales Global Services S.A.S. - initial API and implementation
+ *
+ * </copyright>
+ */
+package org.eclipse.emf.diffmerge.tests.elements.Elements;
+
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Named Element</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * <ul>
+ * <li>{@link org.eclipse.emf.diffmerge.tests.elements.Elements.NamedElement#getName <em>Name</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @see org.eclipse.emf.diffmerge.tests.elements.Elements.ElementsPackage#getNamedElement()
+ * @model abstract="true"
+ * @generated
+ */
+public interface NamedElement extends IdentifiedElement {
+ /**
+ * Returns the value of the '<em><b>Name</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Name</em>' attribute isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Name</em>' attribute.
+ * @see #setName(String)
+ * @see org.eclipse.emf.diffmerge.tests.elements.Elements.ElementsPackage#getNamedElement_Name()
+ * @model required="true"
+ * @generated
+ */
+ String getName();
+
+ /**
+ * Sets the value of the '{@link org.eclipse.emf.diffmerge.tests.elements.Elements.NamedElement#getName <em>Name</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Name</em>' attribute.
+ * @see #getName()
+ * @generated
+ */
+ void setName(String value);
+
+} // NamedElement
diff --git a/tests/org.eclipse.emf.diffmerge.tests.elements/src/org/eclipse/emf/diffmerge/tests/elements/Elements/Node.java b/tests/org.eclipse.emf.diffmerge.tests.elements/src/org/eclipse/emf/diffmerge/tests/elements/Elements/Node.java
index 6f2ba9d0..241ec14c 100644
--- a/tests/org.eclipse.emf.diffmerge.tests.elements/src/org/eclipse/emf/diffmerge/tests/elements/Elements/Node.java
+++ b/tests/org.eclipse.emf.diffmerge.tests.elements/src/org/eclipse/emf/diffmerge/tests/elements/Elements/Node.java
@@ -1,90 +1,90 @@
-/**
- * <copyright>
- *
- * Copyright (c) 2010-2016 Thales Global Services S.A.S.
- * 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:
- * Thales Global Services S.A.S. - initial API and implementation
- *
- * </copyright>
- */
-package org.eclipse.emf.diffmerge.tests.elements.Elements;
-
-import org.eclipse.emf.common.util.EList;
-
-/**
- * <!-- begin-user-doc -->
- * A representation of the model object '<em><b>Node</b></em>'.
- * <!-- end-user-doc -->
- *
- * <p>
- * The following features are supported:
- * <ul>
- * <li>{@link org.eclipse.emf.diffmerge.tests.elements.Elements.Node#getIncoming <em>Incoming</em>}</li>
- * <li>{@link org.eclipse.emf.diffmerge.tests.elements.Elements.Node#getOutgoing <em>Outgoing</em>}</li>
- * <li>{@link org.eclipse.emf.diffmerge.tests.elements.Elements.Node#getSubNodes <em>Sub Nodes</em>}</li>
- * </ul>
- * </p>
- *
- * @see org.eclipse.emf.diffmerge.tests.elements.Elements.ElementsPackage#getNode()
- * @model
- * @generated
- */
-public interface Node extends NamedElement {
- /**
- * Returns the value of the '<em><b>Incoming</b></em>' reference list.
- * The list contents are of type {@link org.eclipse.emf.diffmerge.tests.elements.Elements.Edge}.
- * It is bidirectional and its opposite is '{@link org.eclipse.emf.diffmerge.tests.elements.Elements.Edge#getTarget <em>Target</em>}'.
- * <!-- begin-user-doc -->
- * <p>
- * If the meaning of the '<em>Incoming</em>' reference list isn't clear,
- * there really should be more of a description here...
- * </p>
- * <!-- end-user-doc -->
- * @return the value of the '<em>Incoming</em>' reference list.
- * @see org.eclipse.emf.diffmerge.tests.elements.Elements.ElementsPackage#getNode_Incoming()
- * @see org.eclipse.emf.diffmerge.tests.elements.Elements.Edge#getTarget
- * @model opposite="target"
- * @generated
- */
- EList<Edge> getIncoming();
-
- /**
- * Returns the value of the '<em><b>Outgoing</b></em>' reference list.
- * The list contents are of type {@link org.eclipse.emf.diffmerge.tests.elements.Elements.Edge}.
- * It is bidirectional and its opposite is '{@link org.eclipse.emf.diffmerge.tests.elements.Elements.Edge#getSource <em>Source</em>}'.
- * <!-- begin-user-doc -->
- * <p>
- * If the meaning of the '<em>Outgoing</em>' reference list isn't clear,
- * there really should be more of a description here...
- * </p>
- * <!-- end-user-doc -->
- * @return the value of the '<em>Outgoing</em>' reference list.
- * @see org.eclipse.emf.diffmerge.tests.elements.Elements.ElementsPackage#getNode_Outgoing()
- * @see org.eclipse.emf.diffmerge.tests.elements.Elements.Edge#getSource
- * @model opposite="source"
- * @generated
- */
- EList<Edge> getOutgoing();
-
- /**
- * Returns the value of the '<em><b>Sub Nodes</b></em>' containment reference list.
- * The list contents are of type {@link org.eclipse.emf.diffmerge.tests.elements.Elements.NamedElement}.
- * <!-- begin-user-doc -->
- * <p>
- * If the meaning of the '<em>Sub Nodes</em>' containment reference list isn't clear,
- * there really should be more of a description here...
- * </p>
- * <!-- end-user-doc -->
- * @return the value of the '<em>Sub Nodes</em>' containment reference list.
- * @see org.eclipse.emf.diffmerge.tests.elements.Elements.ElementsPackage#getNode_SubNodes()
- * @model containment="true"
- * @generated
- */
- EList<NamedElement> getSubNodes();
-
-} // Node
+/**
+ * <copyright>
+ *
+ * Copyright (c) 2010-2017 Thales Global Services S.A.S.
+ * 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:
+ * Thales Global Services S.A.S. - initial API and implementation
+ *
+ * </copyright>
+ */
+package org.eclipse.emf.diffmerge.tests.elements.Elements;
+
+import org.eclipse.emf.common.util.EList;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Node</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * <ul>
+ * <li>{@link org.eclipse.emf.diffmerge.tests.elements.Elements.Node#getIncoming <em>Incoming</em>}</li>
+ * <li>{@link org.eclipse.emf.diffmerge.tests.elements.Elements.Node#getOutgoing <em>Outgoing</em>}</li>
+ * <li>{@link org.eclipse.emf.diffmerge.tests.elements.Elements.Node#getSubNodes <em>Sub Nodes</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @see org.eclipse.emf.diffmerge.tests.elements.Elements.ElementsPackage#getNode()
+ * @model
+ * @generated
+ */
+public interface Node extends NamedElement {
+ /**
+ * Returns the value of the '<em><b>Incoming</b></em>' reference list.
+ * The list contents are of type {@link org.eclipse.emf.diffmerge.tests.elements.Elements.Edge}.
+ * It is bidirectional and its opposite is '{@link org.eclipse.emf.diffmerge.tests.elements.Elements.Edge#getTarget <em>Target</em>}'.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Incoming</em>' reference list isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Incoming</em>' reference list.
+ * @see org.eclipse.emf.diffmerge.tests.elements.Elements.ElementsPackage#getNode_Incoming()
+ * @see org.eclipse.emf.diffmerge.tests.elements.Elements.Edge#getTarget
+ * @model opposite="target"
+ * @generated
+ */
+ EList<Edge> getIncoming();
+
+ /**
+ * Returns the value of the '<em><b>Outgoing</b></em>' reference list.
+ * The list contents are of type {@link org.eclipse.emf.diffmerge.tests.elements.Elements.Edge}.
+ * It is bidirectional and its opposite is '{@link org.eclipse.emf.diffmerge.tests.elements.Elements.Edge#getSource <em>Source</em>}'.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Outgoing</em>' reference list isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Outgoing</em>' reference list.
+ * @see org.eclipse.emf.diffmerge.tests.elements.Elements.ElementsPackage#getNode_Outgoing()
+ * @see org.eclipse.emf.diffmerge.tests.elements.Elements.Edge#getSource
+ * @model opposite="source"
+ * @generated
+ */
+ EList<Edge> getOutgoing();
+
+ /**
+ * Returns the value of the '<em><b>Sub Nodes</b></em>' containment reference list.
+ * The list contents are of type {@link org.eclipse.emf.diffmerge.tests.elements.Elements.NamedElement}.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Sub Nodes</em>' containment reference list isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Sub Nodes</em>' containment reference list.
+ * @see org.eclipse.emf.diffmerge.tests.elements.Elements.ElementsPackage#getNode_SubNodes()
+ * @model containment="true"
+ * @generated
+ */
+ EList<NamedElement> getSubNodes();
+
+} // Node
diff --git a/tests/org.eclipse.emf.diffmerge.tests.elements/src/org/eclipse/emf/diffmerge/tests/elements/Elements/ReferencingNode.java b/tests/org.eclipse.emf.diffmerge.tests.elements/src/org/eclipse/emf/diffmerge/tests/elements/Elements/ReferencingNode.java
index 012b4f92..d2ae5224 100644
--- a/tests/org.eclipse.emf.diffmerge.tests.elements/src/org/eclipse/emf/diffmerge/tests/elements/Elements/ReferencingNode.java
+++ b/tests/org.eclipse.emf.diffmerge.tests.elements/src/org/eclipse/emf/diffmerge/tests/elements/Elements/ReferencingNode.java
@@ -1,61 +1,61 @@
-/**
- * <copyright>
- *
- * Copyright (c) 2010-2016 Thales Global Services S.A.S.
- * 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:
- * Thales Global Services S.A.S. - initial API and implementation
- *
- * </copyright>
- */
-package org.eclipse.emf.diffmerge.tests.elements.Elements;
-
-
-/**
- * <!-- begin-user-doc -->
- * A representation of the model object '<em><b>Referencing Node</b></em>'.
- * <!-- end-user-doc -->
- *
- * <p>
- * The following features are supported:
- * <ul>
- * <li>{@link org.eclipse.emf.diffmerge.tests.elements.Elements.ReferencingNode#getReferenced <em>Referenced</em>}</li>
- * </ul>
- * </p>
- *
- * @see org.eclipse.emf.diffmerge.tests.elements.Elements.ElementsPackage#getReferencingNode()
- * @model
- * @generated
- */
-public interface ReferencingNode extends Node {
- /**
- * Returns the value of the '<em><b>Referenced</b></em>' reference.
- * <!-- begin-user-doc -->
- * <p>
- * If the meaning of the '<em>Referenced</em>' reference isn't clear,
- * there really should be more of a description here...
- * </p>
- * <!-- end-user-doc -->
- * @return the value of the '<em>Referenced</em>' reference.
- * @see #setReferenced(Node)
- * @see org.eclipse.emf.diffmerge.tests.elements.Elements.ElementsPackage#getReferencingNode_Referenced()
- * @model required="true"
- * @generated
- */
- Node getReferenced();
-
- /**
- * Sets the value of the '{@link org.eclipse.emf.diffmerge.tests.elements.Elements.ReferencingNode#getReferenced <em>Referenced</em>}' reference.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @param value the new value of the '<em>Referenced</em>' reference.
- * @see #getReferenced()
- * @generated
- */
- void setReferenced(Node value);
-
-} // ReferencingNode
+/**
+ * <copyright>
+ *
+ * Copyright (c) 2010-2017 Thales Global Services S.A.S.
+ * 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:
+ * Thales Global Services S.A.S. - initial API and implementation
+ *
+ * </copyright>
+ */
+package org.eclipse.emf.diffmerge.tests.elements.Elements;
+
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Referencing Node</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * <ul>
+ * <li>{@link org.eclipse.emf.diffmerge.tests.elements.Elements.ReferencingNode#getReferenced <em>Referenced</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @see org.eclipse.emf.diffmerge.tests.elements.Elements.ElementsPackage#getReferencingNode()
+ * @model
+ * @generated
+ */
+public interface ReferencingNode extends Node {
+ /**
+ * Returns the value of the '<em><b>Referenced</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Referenced</em>' reference isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Referenced</em>' reference.
+ * @see #setReferenced(Node)
+ * @see org.eclipse.emf.diffmerge.tests.elements.Elements.ElementsPackage#getReferencingNode_Referenced()
+ * @model required="true"
+ * @generated
+ */
+ Node getReferenced();
+
+ /**
+ * Sets the value of the '{@link org.eclipse.emf.diffmerge.tests.elements.Elements.ReferencingNode#getReferenced <em>Referenced</em>}' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Referenced</em>' reference.
+ * @see #getReferenced()
+ * @generated
+ */
+ void setReferenced(Node value);
+
+} // ReferencingNode
diff --git a/tests/org.eclipse.emf.diffmerge.tests.elements/src/org/eclipse/emf/diffmerge/tests/elements/Elements/Root.java b/tests/org.eclipse.emf.diffmerge.tests.elements/src/org/eclipse/emf/diffmerge/tests/elements/Elements/Root.java
index 85e32dcf..5647eb77 100644
--- a/tests/org.eclipse.emf.diffmerge.tests.elements/src/org/eclipse/emf/diffmerge/tests/elements/Elements/Root.java
+++ b/tests/org.eclipse.emf.diffmerge.tests.elements/src/org/eclipse/emf/diffmerge/tests/elements/Elements/Root.java
@@ -1,79 +1,79 @@
-/**
- * <copyright>
- *
- * Copyright (c) 2010-2016 Thales Global Services S.A.S.
- * 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:
- * Thales Global Services S.A.S. - initial API and implementation
- *
- * </copyright>
- */
-package org.eclipse.emf.diffmerge.tests.elements.Elements;
-
-import org.eclipse.emf.common.util.EList;
-
-/**
- * <!-- begin-user-doc -->
- * A representation of the model object '<em><b>Root</b></em>'.
- * <!-- end-user-doc -->
- *
- * <p>
- * The following features are supported:
- * <ul>
- * <li>{@link org.eclipse.emf.diffmerge.tests.elements.Elements.Root#getName <em>Name</em>}</li>
- * <li>{@link org.eclipse.emf.diffmerge.tests.elements.Elements.Root#getContent <em>Content</em>}</li>
- * </ul>
- * </p>
- *
- * @see org.eclipse.emf.diffmerge.tests.elements.Elements.ElementsPackage#getRoot()
- * @model
- * @generated
- */
-public interface Root extends IdentifiedElement {
- /**
- * Returns the value of the '<em><b>Name</b></em>' attribute.
- * <!-- begin-user-doc -->
- * <p>
- * If the meaning of the '<em>Name</em>' attribute isn't clear,
- * there really should be more of a description here...
- * </p>
- * <!-- end-user-doc -->
- * @return the value of the '<em>Name</em>' attribute.
- * @see #setName(String)
- * @see org.eclipse.emf.diffmerge.tests.elements.Elements.ElementsPackage#getRoot_Name()
- * @model
- * @generated
- */
- String getName();
-
- /**
- * Sets the value of the '{@link org.eclipse.emf.diffmerge.tests.elements.Elements.Root#getName <em>Name</em>}' attribute.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @param value the new value of the '<em>Name</em>' attribute.
- * @see #getName()
- * @generated
- */
- void setName(String value);
-
- /**
- * Returns the value of the '<em><b>Content</b></em>' containment reference list.
- * The list contents are of type {@link org.eclipse.emf.diffmerge.tests.elements.Elements.NamedElement}.
- * <!-- begin-user-doc -->
- * <p>
- * If the meaning of the '<em>Content</em>' containment reference list isn't clear,
- * there really should be more of a description here...
- * </p>
- * <!-- end-user-doc -->
- * @return the value of the '<em>Content</em>' containment reference list.
- * @see org.eclipse.emf.diffmerge.tests.elements.Elements.ElementsPackage#getRoot_Content()
- * @model containment="true"
- * @generated
- */
- EList<NamedElement> getContent();
-
-} // Root
+/**
+ * <copyright>
+ *
+ * Copyright (c) 2010-2017 Thales Global Services S.A.S.
+ * 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:
+ * Thales Global Services S.A.S. - initial API and implementation
+ *
+ * </copyright>
+ */
+package org.eclipse.emf.diffmerge.tests.elements.Elements;
+
+import org.eclipse.emf.common.util.EList;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Root</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * <ul>
+ * <li>{@link org.eclipse.emf.diffmerge.tests.elements.Elements.Root#getName <em>Name</em>}</li>
+ * <li>{@link org.eclipse.emf.diffmerge.tests.elements.Elements.Root#getContent <em>Content</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @see org.eclipse.emf.diffmerge.tests.elements.Elements.ElementsPackage#getRoot()
+ * @model
+ * @generated
+ */
+public interface Root extends IdentifiedElement {
+ /**
+ * Returns the value of the '<em><b>Name</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Name</em>' attribute isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Name</em>' attribute.
+ * @see #setName(String)
+ * @see org.eclipse.emf.diffmerge.tests.elements.Elements.ElementsPackage#getRoot_Name()
+ * @model
+ * @generated
+ */
+ String getName();
+
+ /**
+ * Sets the value of the '{@link org.eclipse.emf.diffmerge.tests.elements.Elements.Root#getName <em>Name</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Name</em>' attribute.
+ * @see #getName()
+ * @generated
+ */
+ void setName(String value);
+
+ /**
+ * Returns the value of the '<em><b>Content</b></em>' containment reference list.
+ * The list contents are of type {@link org.eclipse.emf.diffmerge.tests.elements.Elements.NamedElement}.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Content</em>' containment reference list isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Content</em>' containment reference list.
+ * @see org.eclipse.emf.diffmerge.tests.elements.Elements.ElementsPackage#getRoot_Content()
+ * @model containment="true"
+ * @generated
+ */
+ EList<NamedElement> getContent();
+
+} // Root
diff --git a/tests/org.eclipse.emf.diffmerge.tests.elements/src/org/eclipse/emf/diffmerge/tests/elements/Elements/StrictElement.java b/tests/org.eclipse.emf.diffmerge.tests.elements/src/org/eclipse/emf/diffmerge/tests/elements/Elements/StrictElement.java
index b649dcb6..dca8fc7c 100644
--- a/tests/org.eclipse.emf.diffmerge.tests.elements/src/org/eclipse/emf/diffmerge/tests/elements/Elements/StrictElement.java
+++ b/tests/org.eclipse.emf.diffmerge.tests.elements/src/org/eclipse/emf/diffmerge/tests/elements/Elements/StrictElement.java
@@ -1,253 +1,253 @@
-/**
- * <copyright>
- *
- * Copyright (c) 2010-2016 Thales Global Services S.A.S.
- * 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:
- * Thales Global Services S.A.S. - initial API and implementation
- *
- * </copyright>
- */
-package org.eclipse.emf.diffmerge.tests.elements.Elements;
-
-import org.eclipse.emf.common.util.EList;
-
-/**
- * <!-- begin-user-doc -->
- * A representation of the model object '<em><b>Strict Element</b></em>'.
- * <!-- end-user-doc -->
- *
- * <p>
- * The following features are supported:
- * <ul>
- * <li>{@link org.eclipse.emf.diffmerge.tests.elements.Elements.StrictElement#getSValue <em>SValue</em>}</li>
- * <li>{@link org.eclipse.emf.diffmerge.tests.elements.Elements.StrictElement#getSValues <em>SValues</em>}</li>
- * <li>{@link org.eclipse.emf.diffmerge.tests.elements.Elements.StrictElement#getSManyContent <em>SMany Content</em>}</li>
- * <li>{@link org.eclipse.emf.diffmerge.tests.elements.Elements.StrictElement#getSSingleContent <em>SSingle Content</em>}</li>
- * <li>{@link org.eclipse.emf.diffmerge.tests.elements.Elements.StrictElement#getSManyRef <em>SMany Ref</em>}</li>
- * <li>{@link org.eclipse.emf.diffmerge.tests.elements.Elements.StrictElement#getSSingleRef <em>SSingle Ref</em>}</li>
- * <li>{@link org.eclipse.emf.diffmerge.tests.elements.Elements.StrictElement#getSManyFromSingleRef <em>SMany From Single Ref</em>}</li>
- * <li>{@link org.eclipse.emf.diffmerge.tests.elements.Elements.StrictElement#getSSingleFromManyRef <em>SSingle From Many Ref</em>}</li>
- * <li>{@link org.eclipse.emf.diffmerge.tests.elements.Elements.StrictElement#getSManyFromManyRef1 <em>SMany From Many Ref1</em>}</li>
- * <li>{@link org.eclipse.emf.diffmerge.tests.elements.Elements.StrictElement#getSManyFromManyRef2 <em>SMany From Many Ref2</em>}</li>
- * </ul>
- * </p>
- *
- * @see org.eclipse.emf.diffmerge.tests.elements.Elements.ElementsPackage#getStrictElement()
- * @model
- * @generated
- */
-public interface StrictElement extends Element {
- /**
- * Returns the value of the '<em><b>SValue</b></em>' attribute.
- * <!-- begin-user-doc -->
- * <p>
- * If the meaning of the '<em>SValue</em>' attribute isn't clear,
- * there really should be more of a description here...
- * </p>
- * <!-- end-user-doc -->
- * @return the value of the '<em>SValue</em>' attribute.
- * @see #setSValue(int)
- * @see org.eclipse.emf.diffmerge.tests.elements.Elements.ElementsPackage#getStrictElement_SValue()
- * @model required="true"
- * @generated
- */
- int getSValue();
-
- /**
- * Sets the value of the '{@link org.eclipse.emf.diffmerge.tests.elements.Elements.StrictElement#getSValue <em>SValue</em>}' attribute.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @param value the new value of the '<em>SValue</em>' attribute.
- * @see #getSValue()
- * @generated
- */
- void setSValue(int value);
-
- /**
- * Returns the value of the '<em><b>SValues</b></em>' attribute list.
- * The list contents are of type {@link java.lang.Integer}.
- * <!-- begin-user-doc -->
- * <p>
- * If the meaning of the '<em>SValues</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>SValues</em>' attribute list.
- * @see org.eclipse.emf.diffmerge.tests.elements.Elements.ElementsPackage#getStrictElement_SValues()
- * @model required="true"
- * @generated
- */
- EList<Integer> getSValues();
-
- /**
- * Returns the value of the '<em><b>SMany Content</b></em>' containment reference list.
- * The list contents are of type {@link org.eclipse.emf.diffmerge.tests.elements.Elements.Element}.
- * <!-- begin-user-doc -->
- * <p>
- * If the meaning of the '<em>SMany Content</em>' containment reference list isn't clear,
- * there really should be more of a description here...
- * </p>
- * <!-- end-user-doc -->
- * @return the value of the '<em>SMany Content</em>' containment reference list.
- * @see org.eclipse.emf.diffmerge.tests.elements.Elements.ElementsPackage#getStrictElement_SManyContent()
- * @model containment="true" required="true"
- * @generated
- */
- EList<Element> getSManyContent();
-
- /**
- * Returns the value of the '<em><b>SSingle Content</b></em>' containment reference.
- * <!-- begin-user-doc -->
- * <p>
- * If the meaning of the '<em>SSingle Content</em>' containment reference isn't clear,
- * there really should be more of a description here...
- * </p>
- * <!-- end-user-doc -->
- * @return the value of the '<em>SSingle Content</em>' containment reference.
- * @see #setSSingleContent(Element)
- * @see org.eclipse.emf.diffmerge.tests.elements.Elements.ElementsPackage#getStrictElement_SSingleContent()
- * @model containment="true" required="true"
- * @generated
- */
- Element getSSingleContent();
-
- /**
- * Sets the value of the '{@link org.eclipse.emf.diffmerge.tests.elements.Elements.StrictElement#getSSingleContent <em>SSingle Content</em>}' containment reference.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @param value the new value of the '<em>SSingle Content</em>' containment reference.
- * @see #getSSingleContent()
- * @generated
- */
- void setSSingleContent(Element value);
-
- /**
- * Returns the value of the '<em><b>SMany Ref</b></em>' reference list.
- * The list contents are of type {@link org.eclipse.emf.diffmerge.tests.elements.Elements.Element}.
- * <!-- begin-user-doc -->
- * <p>
- * If the meaning of the '<em>SMany Ref</em>' reference list isn't clear,
- * there really should be more of a description here...
- * </p>
- * <!-- end-user-doc -->
- * @return the value of the '<em>SMany Ref</em>' reference list.
- * @see org.eclipse.emf.diffmerge.tests.elements.Elements.ElementsPackage#getStrictElement_SManyRef()
- * @model required="true"
- * @generated
- */
- EList<Element> getSManyRef();
-
- /**
- * Returns the value of the '<em><b>SSingle Ref</b></em>' reference.
- * <!-- begin-user-doc -->
- * <p>
- * If the meaning of the '<em>SSingle Ref</em>' reference isn't clear,
- * there really should be more of a description here...
- * </p>
- * <!-- end-user-doc -->
- * @return the value of the '<em>SSingle Ref</em>' reference.
- * @see #setSSingleRef(Element)
- * @see org.eclipse.emf.diffmerge.tests.elements.Elements.ElementsPackage#getStrictElement_SSingleRef()
- * @model required="true"
- * @generated
- */
- Element getSSingleRef();
-
- /**
- * Sets the value of the '{@link org.eclipse.emf.diffmerge.tests.elements.Elements.StrictElement#getSSingleRef <em>SSingle Ref</em>}' reference.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @param value the new value of the '<em>SSingle Ref</em>' reference.
- * @see #getSSingleRef()
- * @generated
- */
- void setSSingleRef(Element value);
-
- /**
- * Returns the value of the '<em><b>SMany From Single Ref</b></em>' reference list.
- * The list contents are of type {@link org.eclipse.emf.diffmerge.tests.elements.Elements.StrictElement}.
- * It is bidirectional and its opposite is '{@link org.eclipse.emf.diffmerge.tests.elements.Elements.StrictElement#getSSingleFromManyRef <em>SSingle From Many Ref</em>}'.
- * <!-- begin-user-doc -->
- * <p>
- * If the meaning of the '<em>SMany From Single Ref</em>' reference list isn't clear,
- * there really should be more of a description here...
- * </p>
- * <!-- end-user-doc -->
- * @return the value of the '<em>SMany From Single Ref</em>' reference list.
- * @see org.eclipse.emf.diffmerge.tests.elements.Elements.ElementsPackage#getStrictElement_SManyFromSingleRef()
- * @see org.eclipse.emf.diffmerge.tests.elements.Elements.StrictElement#getSSingleFromManyRef
- * @model opposite="sSingleFromManyRef" required="true"
- * @generated
- */
- EList<StrictElement> getSManyFromSingleRef();
-
- /**
- * Returns the value of the '<em><b>SSingle From Many Ref</b></em>' reference.
- * It is bidirectional and its opposite is '{@link org.eclipse.emf.diffmerge.tests.elements.Elements.StrictElement#getSManyFromSingleRef <em>SMany From Single Ref</em>}'.
- * <!-- begin-user-doc -->
- * <p>
- * If the meaning of the '<em>SSingle From Many Ref</em>' reference isn't clear,
- * there really should be more of a description here...
- * </p>
- * <!-- end-user-doc -->
- * @return the value of the '<em>SSingle From Many Ref</em>' reference.
- * @see #setSSingleFromManyRef(StrictElement)
- * @see org.eclipse.emf.diffmerge.tests.elements.Elements.ElementsPackage#getStrictElement_SSingleFromManyRef()
- * @see org.eclipse.emf.diffmerge.tests.elements.Elements.StrictElement#getSManyFromSingleRef
- * @model opposite="sManyFromSingleRef" required="true"
- * @generated
- */
- StrictElement getSSingleFromManyRef();
-
- /**
- * Sets the value of the '{@link org.eclipse.emf.diffmerge.tests.elements.Elements.StrictElement#getSSingleFromManyRef <em>SSingle From Many Ref</em>}' reference.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @param value the new value of the '<em>SSingle From Many Ref</em>' reference.
- * @see #getSSingleFromManyRef()
- * @generated
- */
- void setSSingleFromManyRef(StrictElement value);
-
- /**
- * Returns the value of the '<em><b>SMany From Many Ref1</b></em>' reference list.
- * The list contents are of type {@link org.eclipse.emf.diffmerge.tests.elements.Elements.StrictElement}.
- * It is bidirectional and its opposite is '{@link org.eclipse.emf.diffmerge.tests.elements.Elements.StrictElement#getSManyFromManyRef2 <em>SMany From Many Ref2</em>}'.
- * <!-- begin-user-doc -->
- * <p>
- * If the meaning of the '<em>SMany From Many Ref1</em>' reference list isn't clear,
- * there really should be more of a description here...
- * </p>
- * <!-- end-user-doc -->
- * @return the value of the '<em>SMany From Many Ref1</em>' reference list.
- * @see org.eclipse.emf.diffmerge.tests.elements.Elements.ElementsPackage#getStrictElement_SManyFromManyRef1()
- * @see org.eclipse.emf.diffmerge.tests.elements.Elements.StrictElement#getSManyFromManyRef2
- * @model opposite="sManyFromManyRef2" required="true"
- * @generated
- */
- EList<StrictElement> getSManyFromManyRef1();
-
- /**
- * Returns the value of the '<em><b>SMany From Many Ref2</b></em>' reference list.
- * The list contents are of type {@link org.eclipse.emf.diffmerge.tests.elements.Elements.StrictElement}.
- * It is bidirectional and its opposite is '{@link org.eclipse.emf.diffmerge.tests.elements.Elements.StrictElement#getSManyFromManyRef1 <em>SMany From Many Ref1</em>}'.
- * <!-- begin-user-doc -->
- * <p>
- * If the meaning of the '<em>SMany From Many Ref2</em>' reference list isn't clear,
- * there really should be more of a description here...
- * </p>
- * <!-- end-user-doc -->
- * @return the value of the '<em>SMany From Many Ref2</em>' reference list.
- * @see org.eclipse.emf.diffmerge.tests.elements.Elements.ElementsPackage#getStrictElement_SManyFromManyRef2()
- * @see org.eclipse.emf.diffmerge.tests.elements.Elements.StrictElement#getSManyFromManyRef1
- * @model opposite="sManyFromManyRef1" required="true"
- * @generated
- */
- EList<StrictElement> getSManyFromManyRef2();
-
-} // StrictElement
+/**
+ * <copyright>
+ *
+ * Copyright (c) 2010-2017 Thales Global Services S.A.S.
+ * 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:
+ * Thales Global Services S.A.S. - initial API and implementation
+ *
+ * </copyright>
+ */
+package org.eclipse.emf.diffmerge.tests.elements.Elements;
+
+import org.eclipse.emf.common.util.EList;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Strict Element</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * <ul>
+ * <li>{@link org.eclipse.emf.diffmerge.tests.elements.Elements.StrictElement#getSValue <em>SValue</em>}</li>
+ * <li>{@link org.eclipse.emf.diffmerge.tests.elements.Elements.StrictElement#getSValues <em>SValues</em>}</li>
+ * <li>{@link org.eclipse.emf.diffmerge.tests.elements.Elements.StrictElement#getSManyContent <em>SMany Content</em>}</li>
+ * <li>{@link org.eclipse.emf.diffmerge.tests.elements.Elements.StrictElement#getSSingleContent <em>SSingle Content</em>}</li>
+ * <li>{@link org.eclipse.emf.diffmerge.tests.elements.Elements.StrictElement#getSManyRef <em>SMany Ref</em>}</li>
+ * <li>{@link org.eclipse.emf.diffmerge.tests.elements.Elements.StrictElement#getSSingleRef <em>SSingle Ref</em>}</li>
+ * <li>{@link org.eclipse.emf.diffmerge.tests.elements.Elements.StrictElement#getSManyFromSingleRef <em>SMany From Single Ref</em>}</li>
+ * <li>{@link org.eclipse.emf.diffmerge.tests.elements.Elements.StrictElement#getSSingleFromManyRef <em>SSingle From Many Ref</em>}</li>
+ * <li>{@link org.eclipse.emf.diffmerge.tests.elements.Elements.StrictElement#getSManyFromManyRef1 <em>SMany From Many Ref1</em>}</li>
+ * <li>{@link org.eclipse.emf.diffmerge.tests.elements.Elements.StrictElement#getSManyFromManyRef2 <em>SMany From Many Ref2</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @see org.eclipse.emf.diffmerge.tests.elements.Elements.ElementsPackage#getStrictElement()
+ * @model
+ * @generated
+ */
+public interface StrictElement extends Element {
+ /**
+ * Returns the value of the '<em><b>SValue</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>SValue</em>' attribute isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>SValue</em>' attribute.
+ * @see #setSValue(int)
+ * @see org.eclipse.emf.diffmerge.tests.elements.Elements.ElementsPackage#getStrictElement_SValue()
+ * @model required="true"
+ * @generated
+ */
+ int getSValue();
+
+ /**
+ * Sets the value of the '{@link org.eclipse.emf.diffmerge.tests.elements.Elements.StrictElement#getSValue <em>SValue</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>SValue</em>' attribute.
+ * @see #getSValue()
+ * @generated
+ */
+ void setSValue(int value);
+
+ /**
+ * Returns the value of the '<em><b>SValues</b></em>' attribute list.
+ * The list contents are of type {@link java.lang.Integer}.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>SValues</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>SValues</em>' attribute list.
+ * @see org.eclipse.emf.diffmerge.tests.elements.Elements.ElementsPackage#getStrictElement_SValues()
+ * @model required="true"
+ * @generated
+ */
+ EList<Integer> getSValues();
+
+ /**
+ * Returns the value of the '<em><b>SMany Content</b></em>' containment reference list.
+ * The list contents are of type {@link org.eclipse.emf.diffmerge.tests.elements.Elements.Element}.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>SMany Content</em>' containment reference list isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>SMany Content</em>' containment reference list.
+ * @see org.eclipse.emf.diffmerge.tests.elements.Elements.ElementsPackage#getStrictElement_SManyContent()
+ * @model containment="true" required="true"
+ * @generated
+ */
+ EList<Element> getSManyContent();
+
+ /**
+ * Returns the value of the '<em><b>SSingle Content</b></em>' containment reference.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>SSingle Content</em>' containment reference isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>SSingle Content</em>' containment reference.
+ * @see #setSSingleContent(Element)
+ * @see org.eclipse.emf.diffmerge.tests.elements.Elements.ElementsPackage#getStrictElement_SSingleContent()
+ * @model containment="true" required="true"
+ * @generated
+ */
+ Element getSSingleContent();
+
+ /**
+ * Sets the value of the '{@link org.eclipse.emf.diffmerge.tests.elements.Elements.StrictElement#getSSingleContent <em>SSingle Content</em>}' containment reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>SSingle Content</em>' containment reference.
+ * @see #getSSingleContent()
+ * @generated
+ */
+ void setSSingleContent(Element value);
+
+ /**
+ * Returns the value of the '<em><b>SMany Ref</b></em>' reference list.
+ * The list contents are of type {@link org.eclipse.emf.diffmerge.tests.elements.Elements.Element}.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>SMany Ref</em>' reference list isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>SMany Ref</em>' reference list.
+ * @see org.eclipse.emf.diffmerge.tests.elements.Elements.ElementsPackage#getStrictElement_SManyRef()
+ * @model required="true"
+ * @generated
+ */
+ EList<Element> getSManyRef();
+
+ /**
+ * Returns the value of the '<em><b>SSingle Ref</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>SSingle Ref</em>' reference isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>SSingle Ref</em>' reference.
+ * @see #setSSingleRef(Element)
+ * @see org.eclipse.emf.diffmerge.tests.elements.Elements.ElementsPackage#getStrictElement_SSingleRef()
+ * @model required="true"
+ * @generated
+ */
+ Element getSSingleRef();
+
+ /**
+ * Sets the value of the '{@link org.eclipse.emf.diffmerge.tests.elements.Elements.StrictElement#getSSingleRef <em>SSingle Ref</em>}' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>SSingle Ref</em>' reference.
+ * @see #getSSingleRef()
+ * @generated
+ */
+ void setSSingleRef(Element value);
+
+ /**
+ * Returns the value of the '<em><b>SMany From Single Ref</b></em>' reference list.
+ * The list contents are of type {@link org.eclipse.emf.diffmerge.tests.elements.Elements.StrictElement}.
+ * It is bidirectional and its opposite is '{@link org.eclipse.emf.diffmerge.tests.elements.Elements.StrictElement#getSSingleFromManyRef <em>SSingle From Many Ref</em>}'.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>SMany From Single Ref</em>' reference list isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>SMany From Single Ref</em>' reference list.
+ * @see org.eclipse.emf.diffmerge.tests.elements.Elements.ElementsPackage#getStrictElement_SManyFromSingleRef()
+ * @see org.eclipse.emf.diffmerge.tests.elements.Elements.StrictElement#getSSingleFromManyRef
+ * @model opposite="sSingleFromManyRef" required="true"
+ * @generated
+ */
+ EList<StrictElement> getSManyFromSingleRef();
+
+ /**
+ * Returns the value of the '<em><b>SSingle From Many Ref</b></em>' reference.
+ * It is bidirectional and its opposite is '{@link org.eclipse.emf.diffmerge.tests.elements.Elements.StrictElement#getSManyFromSingleRef <em>SMany From Single Ref</em>}'.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>SSingle From Many Ref</em>' reference isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>SSingle From Many Ref</em>' reference.
+ * @see #setSSingleFromManyRef(StrictElement)
+ * @see org.eclipse.emf.diffmerge.tests.elements.Elements.ElementsPackage#getStrictElement_SSingleFromManyRef()
+ * @see org.eclipse.emf.diffmerge.tests.elements.Elements.StrictElement#getSManyFromSingleRef
+ * @model opposite="sManyFromSingleRef" required="true"
+ * @generated
+ */
+ StrictElement getSSingleFromManyRef();
+
+ /**
+ * Sets the value of the '{@link org.eclipse.emf.diffmerge.tests.elements.Elements.StrictElement#getSSingleFromManyRef <em>SSingle From Many Ref</em>}' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>SSingle From Many Ref</em>' reference.
+ * @see #getSSingleFromManyRef()
+ * @generated
+ */
+ void setSSingleFromManyRef(StrictElement value);
+
+ /**
+ * Returns the value of the '<em><b>SMany From Many Ref1</b></em>' reference list.
+ * The list contents are of type {@link org.eclipse.emf.diffmerge.tests.elements.Elements.StrictElement}.
+ * It is bidirectional and its opposite is '{@link org.eclipse.emf.diffmerge.tests.elements.Elements.StrictElement#getSManyFromManyRef2 <em>SMany From Many Ref2</em>}'.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>SMany From Many Ref1</em>' reference list isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>SMany From Many Ref1</em>' reference list.
+ * @see org.eclipse.emf.diffmerge.tests.elements.Elements.ElementsPackage#getStrictElement_SManyFromManyRef1()
+ * @see org.eclipse.emf.diffmerge.tests.elements.Elements.StrictElement#getSManyFromManyRef2
+ * @model opposite="sManyFromManyRef2" required="true"
+ * @generated
+ */
+ EList<StrictElement> getSManyFromManyRef1();
+
+ /**
+ * Returns the value of the '<em><b>SMany From Many Ref2</b></em>' reference list.
+ * The list contents are of type {@link org.eclipse.emf.diffmerge.tests.elements.Elements.StrictElement}.
+ * It is bidirectional and its opposite is '{@link org.eclipse.emf.diffmerge.tests.elements.Elements.StrictElement#getSManyFromManyRef1 <em>SMany From Many Ref1</em>}'.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>SMany From Many Ref2</em>' reference list isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>SMany From Many Ref2</em>' reference list.
+ * @see org.eclipse.emf.diffmerge.tests.elements.Elements.ElementsPackage#getStrictElement_SManyFromManyRef2()
+ * @see org.eclipse.emf.diffmerge.tests.elements.Elements.StrictElement#getSManyFromManyRef1
+ * @model opposite="sManyFromManyRef1" required="true"
+ * @generated
+ */
+ EList<StrictElement> getSManyFromManyRef2();
+
+} // StrictElement
diff --git a/tests/org.eclipse.emf.diffmerge.tests.elements/src/org/eclipse/emf/diffmerge/tests/elements/Elements/impl/EdgeImpl.java b/tests/org.eclipse.emf.diffmerge.tests.elements/src/org/eclipse/emf/diffmerge/tests/elements/Elements/impl/EdgeImpl.java
index 66b2a1f8..635596a5 100644
--- a/tests/org.eclipse.emf.diffmerge.tests.elements/src/org/eclipse/emf/diffmerge/tests/elements/Elements/impl/EdgeImpl.java
+++ b/tests/org.eclipse.emf.diffmerge.tests.elements/src/org/eclipse/emf/diffmerge/tests/elements/Elements/impl/EdgeImpl.java
@@ -1,309 +1,309 @@
-/**
- * <copyright>
- *
- * Copyright (c) 2010-2016 Thales Global Services S.A.S.
- * 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:
- * Thales Global Services S.A.S. - initial API and implementation
- *
- * </copyright>
- */
-package org.eclipse.emf.diffmerge.tests.elements.Elements.impl;
-
-import org.eclipse.emf.common.notify.Notification;
-import org.eclipse.emf.common.notify.NotificationChain;
-
-import org.eclipse.emf.diffmerge.tests.elements.Elements.Edge;
-import org.eclipse.emf.diffmerge.tests.elements.Elements.ElementsPackage;
-import org.eclipse.emf.diffmerge.tests.elements.Elements.Node;
-
-import org.eclipse.emf.ecore.EClass;
-import org.eclipse.emf.ecore.InternalEObject;
-
-import org.eclipse.emf.ecore.impl.ENotificationImpl;
-
-/**
- * <!-- begin-user-doc -->
- * An implementation of the model object '<em><b>Edge</b></em>'.
- * <!-- end-user-doc -->
- * <p>
- * The following features are implemented:
- * <ul>
- * <li>{@link org.eclipse.emf.diffmerge.tests.elements.Elements.impl.EdgeImpl#getTarget <em>Target</em>}</li>
- * <li>{@link org.eclipse.emf.diffmerge.tests.elements.Elements.impl.EdgeImpl#getSource <em>Source</em>}</li>
- * </ul>
- * </p>
- *
- * @generated
- */
-public class EdgeImpl extends NamedElementImpl implements Edge {
- /**
- * The cached value of the '{@link #getTarget() <em>Target</em>}' reference.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @see #getTarget()
- * @generated
- * @ordered
- */
- protected Node target;
-
- /**
- * The cached value of the '{@link #getSource() <em>Source</em>}' reference.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @see #getSource()
- * @generated
- * @ordered
- */
- protected Node source;
-
- /**
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- protected EdgeImpl() {
- super();
- }
-
- /**
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- @Override
- protected EClass eStaticClass() {
- return ElementsPackage.Literals.EDGE;
- }
-
- /**
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- public Node getTarget() {
- if (target != null && target.eIsProxy()) {
- InternalEObject oldTarget = (InternalEObject)target;
- target = (Node)eResolveProxy(oldTarget);
- if (target != oldTarget) {
- if (eNotificationRequired())
- eNotify(new ENotificationImpl(this, Notification.RESOLVE, ElementsPackage.EDGE__TARGET, oldTarget, target));
- }
- }
- return target;
- }
-
- /**
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- public Node basicGetTarget() {
- return target;
- }
-
- /**
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- public NotificationChain basicSetTarget(Node newTarget, NotificationChain msgs) {
- Node oldTarget = target;
- target = newTarget;
- if (eNotificationRequired()) {
- ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, ElementsPackage.EDGE__TARGET, oldTarget, newTarget);
- if (msgs == null) msgs = notification; else msgs.add(notification);
- }
- return msgs;
- }
-
- /**
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- public void setTarget(Node newTarget) {
- if (newTarget != target) {
- NotificationChain msgs = null;
- if (target != null)
- msgs = ((InternalEObject)target).eInverseRemove(this, ElementsPackage.NODE__INCOMING, Node.class, msgs);
- if (newTarget != null)
- msgs = ((InternalEObject)newTarget).eInverseAdd(this, ElementsPackage.NODE__INCOMING, Node.class, msgs);
- msgs = basicSetTarget(newTarget, msgs);
- if (msgs != null) msgs.dispatch();
- }
- else if (eNotificationRequired())
- eNotify(new ENotificationImpl(this, Notification.SET, ElementsPackage.EDGE__TARGET, newTarget, newTarget));
- }
-
- /**
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- public Node getSource() {
- if (source != null && source.eIsProxy()) {
- InternalEObject oldSource = (InternalEObject)source;
- source = (Node)eResolveProxy(oldSource);
- if (source != oldSource) {
- if (eNotificationRequired())
- eNotify(new ENotificationImpl(this, Notification.RESOLVE, ElementsPackage.EDGE__SOURCE, oldSource, source));
- }
- }
- return source;
- }
-
- /**
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- public Node basicGetSource() {
- return source;
- }
-
- /**
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- public NotificationChain basicSetSource(Node newSource, NotificationChain msgs) {
- Node oldSource = source;
- source = newSource;
- if (eNotificationRequired()) {
- ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, ElementsPackage.EDGE__SOURCE, oldSource, newSource);
- if (msgs == null) msgs = notification; else msgs.add(notification);
- }
- return msgs;
- }
-
- /**
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- public void setSource(Node newSource) {
- if (newSource != source) {
- NotificationChain msgs = null;
- if (source != null)
- msgs = ((InternalEObject)source).eInverseRemove(this, ElementsPackage.NODE__OUTGOING, Node.class, msgs);
- if (newSource != null)
- msgs = ((InternalEObject)newSource).eInverseAdd(this, ElementsPackage.NODE__OUTGOING, Node.class, msgs);
- msgs = basicSetSource(newSource, msgs);
- if (msgs != null) msgs.dispatch();
- }
- else if (eNotificationRequired())
- eNotify(new ENotificationImpl(this, Notification.SET, ElementsPackage.EDGE__SOURCE, newSource, newSource));
- }
-
- /**
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- @Override
- public NotificationChain eInverseAdd(InternalEObject otherEnd, int featureID, NotificationChain msgs) {
- switch (featureID) {
- case ElementsPackage.EDGE__TARGET:
- if (target != null)
- msgs = ((InternalEObject)target).eInverseRemove(this, ElementsPackage.NODE__INCOMING, Node.class, msgs);
- return basicSetTarget((Node)otherEnd, msgs);
- case ElementsPackage.EDGE__SOURCE:
- if (source != null)
- msgs = ((InternalEObject)source).eInverseRemove(this, ElementsPackage.NODE__OUTGOING, Node.class, msgs);
- return basicSetSource((Node)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 ElementsPackage.EDGE__TARGET:
- return basicSetTarget(null, msgs);
- case ElementsPackage.EDGE__SOURCE:
- return basicSetSource(null, msgs);
- }
- return super.eInverseRemove(otherEnd, featureID, msgs);
- }
-
- /**
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- @Override
- public Object eGet(int featureID, boolean resolve, boolean coreType) {
- switch (featureID) {
- case ElementsPackage.EDGE__TARGET:
- if (resolve) return getTarget();
- return basicGetTarget();
- case ElementsPackage.EDGE__SOURCE:
- if (resolve) return getSource();
- return basicGetSource();
- }
- return super.eGet(featureID, resolve, coreType);
- }
-
- /**
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- @Override
- public void eSet(int featureID, Object newValue) {
- switch (featureID) {
- case ElementsPackage.EDGE__TARGET:
- setTarget((Node)newValue);
- return;
- case ElementsPackage.EDGE__SOURCE:
- setSource((Node)newValue);
- return;
- }
- super.eSet(featureID, newValue);
- }
-
- /**
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- @Override
- public void eUnset(int featureID) {
- switch (featureID) {
- case ElementsPackage.EDGE__TARGET:
- setTarget((Node)null);
- return;
- case ElementsPackage.EDGE__SOURCE:
- setSource((Node)null);
- return;
- }
- super.eUnset(featureID);
- }
-
- /**
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- @Override
- public boolean eIsSet(int featureID) {
- switch (featureID) {
- case ElementsPackage.EDGE__TARGET:
- return target != null;
- case ElementsPackage.EDGE__SOURCE:
- return source != null;
- }
- return super.eIsSet(featureID);
- }
-
-} //EdgeImpl
+/**
+ * <copyright>
+ *
+ * Copyright (c) 2010-2017 Thales Global Services S.A.S.
+ * 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:
+ * Thales Global Services S.A.S. - initial API and implementation
+ *
+ * </copyright>
+ */
+package org.eclipse.emf.diffmerge.tests.elements.Elements.impl;
+
+import org.eclipse.emf.common.notify.Notification;
+import org.eclipse.emf.common.notify.NotificationChain;
+
+import org.eclipse.emf.diffmerge.tests.elements.Elements.Edge;
+import org.eclipse.emf.diffmerge.tests.elements.Elements.ElementsPackage;
+import org.eclipse.emf.diffmerge.tests.elements.Elements.Node;
+
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.InternalEObject;
+
+import org.eclipse.emf.ecore.impl.ENotificationImpl;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>Edge</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * <ul>
+ * <li>{@link org.eclipse.emf.diffmerge.tests.elements.Elements.impl.EdgeImpl#getTarget <em>Target</em>}</li>
+ * <li>{@link org.eclipse.emf.diffmerge.tests.elements.Elements.impl.EdgeImpl#getSource <em>Source</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @generated
+ */
+public class EdgeImpl extends NamedElementImpl implements Edge {
+ /**
+ * The cached value of the '{@link #getTarget() <em>Target</em>}' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getTarget()
+ * @generated
+ * @ordered
+ */
+ protected Node target;
+
+ /**
+ * The cached value of the '{@link #getSource() <em>Source</em>}' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getSource()
+ * @generated
+ * @ordered
+ */
+ protected Node source;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected EdgeImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ protected EClass eStaticClass() {
+ return ElementsPackage.Literals.EDGE;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public Node getTarget() {
+ if (target != null && target.eIsProxy()) {
+ InternalEObject oldTarget = (InternalEObject)target;
+ target = (Node)eResolveProxy(oldTarget);
+ if (target != oldTarget) {
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.RESOLVE, ElementsPackage.EDGE__TARGET, oldTarget, target));
+ }
+ }
+ return target;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public Node basicGetTarget() {
+ return target;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public NotificationChain basicSetTarget(Node newTarget, NotificationChain msgs) {
+ Node oldTarget = target;
+ target = newTarget;
+ if (eNotificationRequired()) {
+ ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, ElementsPackage.EDGE__TARGET, oldTarget, newTarget);
+ if (msgs == null) msgs = notification; else msgs.add(notification);
+ }
+ return msgs;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void setTarget(Node newTarget) {
+ if (newTarget != target) {
+ NotificationChain msgs = null;
+ if (target != null)
+ msgs = ((InternalEObject)target).eInverseRemove(this, ElementsPackage.NODE__INCOMING, Node.class, msgs);
+ if (newTarget != null)
+ msgs = ((InternalEObject)newTarget).eInverseAdd(this, ElementsPackage.NODE__INCOMING, Node.class, msgs);
+ msgs = basicSetTarget(newTarget, msgs);
+ if (msgs != null) msgs.dispatch();
+ }
+ else if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, ElementsPackage.EDGE__TARGET, newTarget, newTarget));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public Node getSource() {
+ if (source != null && source.eIsProxy()) {
+ InternalEObject oldSource = (InternalEObject)source;
+ source = (Node)eResolveProxy(oldSource);
+ if (source != oldSource) {
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.RESOLVE, ElementsPackage.EDGE__SOURCE, oldSource, source));
+ }
+ }
+ return source;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public Node basicGetSource() {
+ return source;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public NotificationChain basicSetSource(Node newSource, NotificationChain msgs) {
+ Node oldSource = source;
+ source = newSource;
+ if (eNotificationRequired()) {
+ ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, ElementsPackage.EDGE__SOURCE, oldSource, newSource);
+ if (msgs == null) msgs = notification; else msgs.add(notification);
+ }
+ return msgs;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void setSource(Node newSource) {
+ if (newSource != source) {
+ NotificationChain msgs = null;
+ if (source != null)
+ msgs = ((InternalEObject)source).eInverseRemove(this, ElementsPackage.NODE__OUTGOING, Node.class, msgs);
+ if (newSource != null)
+ msgs = ((InternalEObject)newSource).eInverseAdd(this, ElementsPackage.NODE__OUTGOING, Node.class, msgs);
+ msgs = basicSetSource(newSource, msgs);
+ if (msgs != null) msgs.dispatch();
+ }
+ else if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, ElementsPackage.EDGE__SOURCE, newSource, newSource));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public NotificationChain eInverseAdd(InternalEObject otherEnd, int featureID, NotificationChain msgs) {
+ switch (featureID) {
+ case ElementsPackage.EDGE__TARGET:
+ if (target != null)
+ msgs = ((InternalEObject)target).eInverseRemove(this, ElementsPackage.NODE__INCOMING, Node.class, msgs);
+ return basicSetTarget((Node)otherEnd, msgs);
+ case ElementsPackage.EDGE__SOURCE:
+ if (source != null)
+ msgs = ((InternalEObject)source).eInverseRemove(this, ElementsPackage.NODE__OUTGOING, Node.class, msgs);
+ return basicSetSource((Node)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 ElementsPackage.EDGE__TARGET:
+ return basicSetTarget(null, msgs);
+ case ElementsPackage.EDGE__SOURCE:
+ return basicSetSource(null, msgs);
+ }
+ return super.eInverseRemove(otherEnd, featureID, msgs);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Object eGet(int featureID, boolean resolve, boolean coreType) {
+ switch (featureID) {
+ case ElementsPackage.EDGE__TARGET:
+ if (resolve) return getTarget();
+ return basicGetTarget();
+ case ElementsPackage.EDGE__SOURCE:
+ if (resolve) return getSource();
+ return basicGetSource();
+ }
+ return super.eGet(featureID, resolve, coreType);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void eSet(int featureID, Object newValue) {
+ switch (featureID) {
+ case ElementsPackage.EDGE__TARGET:
+ setTarget((Node)newValue);
+ return;
+ case ElementsPackage.EDGE__SOURCE:
+ setSource((Node)newValue);
+ return;
+ }
+ super.eSet(featureID, newValue);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void eUnset(int featureID) {
+ switch (featureID) {
+ case ElementsPackage.EDGE__TARGET:
+ setTarget((Node)null);
+ return;
+ case ElementsPackage.EDGE__SOURCE:
+ setSource((Node)null);
+ return;
+ }
+ super.eUnset(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public boolean eIsSet(int featureID) {
+ switch (featureID) {
+ case ElementsPackage.EDGE__TARGET:
+ return target != null;
+ case ElementsPackage.EDGE__SOURCE:
+ return source != null;
+ }
+ return super.eIsSet(featureID);
+ }
+
+} //EdgeImpl
diff --git a/tests/org.eclipse.emf.diffmerge.tests.elements/src/org/eclipse/emf/diffmerge/tests/elements/Elements/impl/ElementImpl.java b/tests/org.eclipse.emf.diffmerge.tests.elements/src/org/eclipse/emf/diffmerge/tests/elements/Elements/impl/ElementImpl.java
index 51273164..433e56b1 100644
--- a/tests/org.eclipse.emf.diffmerge.tests.elements/src/org/eclipse/emf/diffmerge/tests/elements/Elements/impl/ElementImpl.java
+++ b/tests/org.eclipse.emf.diffmerge.tests.elements/src/org/eclipse/emf/diffmerge/tests/elements/Elements/impl/ElementImpl.java
@@ -1,7 +1,7 @@
/**
* <copyright>
*
- * Copyright (c) 2010-2016 Thales Global Services S.A.S.
+ * Copyright (c) 2010-2017 Thales Global Services S.A.S.
* 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
diff --git a/tests/org.eclipse.emf.diffmerge.tests.elements/src/org/eclipse/emf/diffmerge/tests/elements/Elements/impl/ElementsFactoryImpl.java b/tests/org.eclipse.emf.diffmerge.tests.elements/src/org/eclipse/emf/diffmerge/tests/elements/Elements/impl/ElementsFactoryImpl.java
index c1e377d7..a9c86277 100644
--- a/tests/org.eclipse.emf.diffmerge.tests.elements/src/org/eclipse/emf/diffmerge/tests/elements/Elements/impl/ElementsFactoryImpl.java
+++ b/tests/org.eclipse.emf.diffmerge.tests.elements/src/org/eclipse/emf/diffmerge/tests/elements/Elements/impl/ElementsFactoryImpl.java
@@ -1,162 +1,162 @@
-/**
- * <copyright>
- *
- * Copyright (c) 2010-2016 Thales Global Services S.A.S.
- * 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:
- * Thales Global Services S.A.S. - initial API and implementation
- *
- * </copyright>
- */
-package org.eclipse.emf.diffmerge.tests.elements.Elements.impl;
-
-import org.eclipse.emf.diffmerge.tests.elements.Elements.*;
-
-import org.eclipse.emf.ecore.EClass;
-import org.eclipse.emf.ecore.EObject;
-import org.eclipse.emf.ecore.EPackage;
-
-import org.eclipse.emf.ecore.impl.EFactoryImpl;
-
-import org.eclipse.emf.ecore.plugin.EcorePlugin;
-
-/**
- * <!-- begin-user-doc -->
- * An implementation of the model <b>Factory</b>.
- * <!-- end-user-doc -->
- * @generated
- */
-public class ElementsFactoryImpl extends EFactoryImpl implements ElementsFactory {
- /**
- * Creates the default factory implementation.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- public static ElementsFactory init() {
- try {
- ElementsFactory theElementsFactory = (ElementsFactory)EPackage.Registry.INSTANCE.getEFactory(ElementsPackage.eNS_URI);
- if (theElementsFactory != null) {
- return theElementsFactory;
- }
- }
- catch (Exception exception) {
- EcorePlugin.INSTANCE.log(exception);
- }
- return new ElementsFactoryImpl();
- }
-
- /**
- * Creates an instance of the factory.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- public ElementsFactoryImpl() {
- super();
- }
-
- /**
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- @Override
- public EObject create(EClass eClass) {
- switch (eClass.getClassifierID()) {
- case ElementsPackage.ROOT: return createRoot();
- case ElementsPackage.ELEMENT: return createElement();
- case ElementsPackage.STRICT_ELEMENT: return createStrictElement();
- case ElementsPackage.NODE: return createNode();
- case ElementsPackage.EDGE: return createEdge();
- case ElementsPackage.REFERENCING_NODE: return createReferencingNode();
- default:
- throw new IllegalArgumentException("The class '" + eClass.getName() + "' is not a valid classifier");
- }
- }
-
- /**
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- public Root createRoot() {
- RootImpl root = new RootImpl();
- return root;
- }
-
- /**
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- public Element createElement() {
- ElementImpl element = new ElementImpl();
- return element;
- }
-
- /**
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- public StrictElement createStrictElement() {
- StrictElementImpl strictElement = new StrictElementImpl();
- return strictElement;
- }
-
- /**
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- public Node createNode() {
- NodeImpl node = new NodeImpl();
- return node;
- }
-
- /**
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- public Edge createEdge() {
- EdgeImpl edge = new EdgeImpl();
- return edge;
- }
-
- /**
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- public ReferencingNode createReferencingNode() {
- ReferencingNodeImpl referencingNode = new ReferencingNodeImpl();
- return referencingNode;
- }
-
- /**
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- public ElementsPackage getElementsPackage() {
- return (ElementsPackage)getEPackage();
- }
-
- /**
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @deprecated
- * @generated
- */
- @Deprecated
- public static ElementsPackage getPackage() {
- return ElementsPackage.eINSTANCE;
- }
-
-} //ElementsFactoryImpl
+/**
+ * <copyright>
+ *
+ * Copyright (c) 2010-2017 Thales Global Services S.A.S.
+ * 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:
+ * Thales Global Services S.A.S. - initial API and implementation
+ *
+ * </copyright>
+ */
+package org.eclipse.emf.diffmerge.tests.elements.Elements.impl;
+
+import org.eclipse.emf.diffmerge.tests.elements.Elements.*;
+
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.EObject;
+import org.eclipse.emf.ecore.EPackage;
+
+import org.eclipse.emf.ecore.impl.EFactoryImpl;
+
+import org.eclipse.emf.ecore.plugin.EcorePlugin;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model <b>Factory</b>.
+ * <!-- end-user-doc -->
+ * @generated
+ */
+public class ElementsFactoryImpl extends EFactoryImpl implements ElementsFactory {
+ /**
+ * Creates the default factory implementation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public static ElementsFactory init() {
+ try {
+ ElementsFactory theElementsFactory = (ElementsFactory)EPackage.Registry.INSTANCE.getEFactory(ElementsPackage.eNS_URI);
+ if (theElementsFactory != null) {
+ return theElementsFactory;
+ }
+ }
+ catch (Exception exception) {
+ EcorePlugin.INSTANCE.log(exception);
+ }
+ return new ElementsFactoryImpl();
+ }
+
+ /**
+ * Creates an instance of the factory.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public ElementsFactoryImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public EObject create(EClass eClass) {
+ switch (eClass.getClassifierID()) {
+ case ElementsPackage.ROOT: return createRoot();
+ case ElementsPackage.ELEMENT: return createElement();
+ case ElementsPackage.STRICT_ELEMENT: return createStrictElement();
+ case ElementsPackage.NODE: return createNode();
+ case ElementsPackage.EDGE: return createEdge();
+ case ElementsPackage.REFERENCING_NODE: return createReferencingNode();
+ default:
+ throw new IllegalArgumentException("The class '" + eClass.getName() + "' is not a valid classifier");
+ }
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public Root createRoot() {
+ RootImpl root = new RootImpl();
+ return root;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public Element createElement() {
+ ElementImpl element = new ElementImpl();
+ return element;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public StrictElement createStrictElement() {
+ StrictElementImpl strictElement = new StrictElementImpl();
+ return strictElement;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public Node createNode() {
+ NodeImpl node = new NodeImpl();
+ return node;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public Edge createEdge() {
+ EdgeImpl edge = new EdgeImpl();
+ return edge;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public ReferencingNode createReferencingNode() {
+ ReferencingNodeImpl referencingNode = new ReferencingNodeImpl();
+ return referencingNode;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public ElementsPackage getElementsPackage() {
+ return (ElementsPackage)getEPackage();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @deprecated
+ * @generated
+ */
+ @Deprecated
+ public static ElementsPackage getPackage() {
+ return ElementsPackage.eINSTANCE;
+ }
+
+} //ElementsFactoryImpl
diff --git a/tests/org.eclipse.emf.diffmerge.tests.elements/src/org/eclipse/emf/diffmerge/tests/elements/Elements/impl/ElementsPackageImpl.java b/tests/org.eclipse.emf.diffmerge.tests.elements/src/org/eclipse/emf/diffmerge/tests/elements/Elements/impl/ElementsPackageImpl.java
index 64ca773e..459c2734 100644
--- a/tests/org.eclipse.emf.diffmerge.tests.elements/src/org/eclipse/emf/diffmerge/tests/elements/Elements/impl/ElementsPackageImpl.java
+++ b/tests/org.eclipse.emf.diffmerge.tests.elements/src/org/eclipse/emf/diffmerge/tests/elements/Elements/impl/ElementsPackageImpl.java
@@ -1,7 +1,7 @@
/**
* <copyright>
*
- * Copyright (c) 2010-2016 Thales Global Services S.A.S.
+ * Copyright (c) 2010-2017 Thales Global Services S.A.S.
* 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
diff --git a/tests/org.eclipse.emf.diffmerge.tests.elements/src/org/eclipse/emf/diffmerge/tests/elements/Elements/impl/IdentifiedElementImpl.java b/tests/org.eclipse.emf.diffmerge.tests.elements/src/org/eclipse/emf/diffmerge/tests/elements/Elements/impl/IdentifiedElementImpl.java
index f2574789..c5035b53 100644
--- a/tests/org.eclipse.emf.diffmerge.tests.elements/src/org/eclipse/emf/diffmerge/tests/elements/Elements/impl/IdentifiedElementImpl.java
+++ b/tests/org.eclipse.emf.diffmerge.tests.elements/src/org/eclipse/emf/diffmerge/tests/elements/Elements/impl/IdentifiedElementImpl.java
@@ -1,177 +1,177 @@
-/**
- * <copyright>
- *
- * Copyright (c) 2010-2016 Thales Global Services S.A.S.
- * 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:
- * Thales Global Services S.A.S. - initial API and implementation
- *
- * </copyright>
- */
-package org.eclipse.emf.diffmerge.tests.elements.Elements.impl;
-
-import org.eclipse.emf.common.notify.Notification;
-
-import org.eclipse.emf.diffmerge.tests.elements.Elements.ElementsPackage;
-import org.eclipse.emf.diffmerge.tests.elements.Elements.IdentifiedElement;
-
-import org.eclipse.emf.ecore.EClass;
-
-import org.eclipse.emf.ecore.impl.ENotificationImpl;
-import org.eclipse.emf.ecore.impl.EObjectImpl;
-import org.eclipse.emf.ecore.util.EcoreUtil;
-
-/**
- * <!-- begin-user-doc -->
- * An implementation of the model object '<em><b>Identified Element</b></em>'.
- * <!-- end-user-doc -->
- * <p>
- * The following features are implemented:
- * <ul>
- * <li>{@link org.eclipse.emf.diffmerge.tests.elements.Elements.impl.IdentifiedElementImpl#getId <em>Id</em>}</li>
- * </ul>
- * </p>
- *
- * @generated
- */
-public abstract class IdentifiedElementImpl extends EObjectImpl implements IdentifiedElement {
- /**
- * The default value of the '{@link #getId() <em>Id</em>}' attribute.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @see #getId()
- * @generated
- * @ordered
- */
- protected static final String ID_EDEFAULT = null;
-
- /**
- * The cached value of the '{@link #getId() <em>Id</em>}' attribute.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @see #getId()
- * @generated
- * @ordered
- */
- protected String id = ID_EDEFAULT;
-
- /**
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated NOT
- */
- protected IdentifiedElementImpl() {
- super();
- setId(EcoreUtil.generateUUID());
- }
-
- /**
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- @Override
- protected EClass eStaticClass() {
- return ElementsPackage.Literals.IDENTIFIED_ELEMENT;
- }
-
- /**
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- public String getId() {
- return id;
- }
-
- /**
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- public void setId(String newId) {
- String oldId = id;
- id = newId;
- if (eNotificationRequired())
- eNotify(new ENotificationImpl(this, Notification.SET, ElementsPackage.IDENTIFIED_ELEMENT__ID, oldId, id));
- }
-
- /**
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- @Override
- public Object eGet(int featureID, boolean resolve, boolean coreType) {
- switch (featureID) {
- case ElementsPackage.IDENTIFIED_ELEMENT__ID:
- return getId();
- }
- return super.eGet(featureID, resolve, coreType);
- }
-
- /**
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- @Override
- public void eSet(int featureID, Object newValue) {
- switch (featureID) {
- case ElementsPackage.IDENTIFIED_ELEMENT__ID:
- setId((String)newValue);
- return;
- }
- super.eSet(featureID, newValue);
- }
-
- /**
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- @Override
- public void eUnset(int featureID) {
- switch (featureID) {
- case ElementsPackage.IDENTIFIED_ELEMENT__ID:
- setId(ID_EDEFAULT);
- return;
- }
- super.eUnset(featureID);
- }
-
- /**
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- @Override
- public boolean eIsSet(int featureID) {
- switch (featureID) {
- case ElementsPackage.IDENTIFIED_ELEMENT__ID:
- return ID_EDEFAULT == null ? id != null : !ID_EDEFAULT.equals(id);
- }
- 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(" (id: ");
- result.append(id);
- result.append(')');
- return result.toString();
- }
-
-} //IdentifiedElementImpl
+/**
+ * <copyright>
+ *
+ * Copyright (c) 2010-2017 Thales Global Services S.A.S.
+ * 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:
+ * Thales Global Services S.A.S. - initial API and implementation
+ *
+ * </copyright>
+ */
+package org.eclipse.emf.diffmerge.tests.elements.Elements.impl;
+
+import org.eclipse.emf.common.notify.Notification;
+
+import org.eclipse.emf.diffmerge.tests.elements.Elements.ElementsPackage;
+import org.eclipse.emf.diffmerge.tests.elements.Elements.IdentifiedElement;
+
+import org.eclipse.emf.ecore.EClass;
+
+import org.eclipse.emf.ecore.impl.ENotificationImpl;
+import org.eclipse.emf.ecore.impl.EObjectImpl;
+import org.eclipse.emf.ecore.util.EcoreUtil;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>Identified Element</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * <ul>
+ * <li>{@link org.eclipse.emf.diffmerge.tests.elements.Elements.impl.IdentifiedElementImpl#getId <em>Id</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @generated
+ */
+public abstract class IdentifiedElementImpl extends EObjectImpl implements IdentifiedElement {
+ /**
+ * The default value of the '{@link #getId() <em>Id</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getId()
+ * @generated
+ * @ordered
+ */
+ protected static final String ID_EDEFAULT = null;
+
+ /**
+ * The cached value of the '{@link #getId() <em>Id</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getId()
+ * @generated
+ * @ordered
+ */
+ protected String id = ID_EDEFAULT;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated NOT
+ */
+ protected IdentifiedElementImpl() {
+ super();
+ setId(EcoreUtil.generateUUID());
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ protected EClass eStaticClass() {
+ return ElementsPackage.Literals.IDENTIFIED_ELEMENT;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public String getId() {
+ return id;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void setId(String newId) {
+ String oldId = id;
+ id = newId;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, ElementsPackage.IDENTIFIED_ELEMENT__ID, oldId, id));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Object eGet(int featureID, boolean resolve, boolean coreType) {
+ switch (featureID) {
+ case ElementsPackage.IDENTIFIED_ELEMENT__ID:
+ return getId();
+ }
+ return super.eGet(featureID, resolve, coreType);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void eSet(int featureID, Object newValue) {
+ switch (featureID) {
+ case ElementsPackage.IDENTIFIED_ELEMENT__ID:
+ setId((String)newValue);
+ return;
+ }
+ super.eSet(featureID, newValue);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void eUnset(int featureID) {
+ switch (featureID) {
+ case ElementsPackage.IDENTIFIED_ELEMENT__ID:
+ setId(ID_EDEFAULT);
+ return;
+ }
+ super.eUnset(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public boolean eIsSet(int featureID) {
+ switch (featureID) {
+ case ElementsPackage.IDENTIFIED_ELEMENT__ID:
+ return ID_EDEFAULT == null ? id != null : !ID_EDEFAULT.equals(id);
+ }
+ 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(" (id: ");
+ result.append(id);
+ result.append(')');
+ return result.toString();
+ }
+
+} //IdentifiedElementImpl
diff --git a/tests/org.eclipse.emf.diffmerge.tests.elements/src/org/eclipse/emf/diffmerge/tests/elements/Elements/impl/NamedElementImpl.java b/tests/org.eclipse.emf.diffmerge.tests.elements/src/org/eclipse/emf/diffmerge/tests/elements/Elements/impl/NamedElementImpl.java
index b4d7eb96..a43b864b 100644
--- a/tests/org.eclipse.emf.diffmerge.tests.elements/src/org/eclipse/emf/diffmerge/tests/elements/Elements/impl/NamedElementImpl.java
+++ b/tests/org.eclipse.emf.diffmerge.tests.elements/src/org/eclipse/emf/diffmerge/tests/elements/Elements/impl/NamedElementImpl.java
@@ -1,174 +1,174 @@
-/**
- * <copyright>
- *
- * Copyright (c) 2010-2016 Thales Global Services S.A.S.
- * 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:
- * Thales Global Services S.A.S. - initial API and implementation
- *
- * </copyright>
- */
-package org.eclipse.emf.diffmerge.tests.elements.Elements.impl;
-
-import org.eclipse.emf.common.notify.Notification;
-
-import org.eclipse.emf.diffmerge.tests.elements.Elements.ElementsPackage;
-import org.eclipse.emf.diffmerge.tests.elements.Elements.NamedElement;
-
-import org.eclipse.emf.ecore.EClass;
-
-import org.eclipse.emf.ecore.impl.ENotificationImpl;
-
-/**
- * <!-- begin-user-doc -->
- * An implementation of the model object '<em><b>Named Element</b></em>'.
- * <!-- end-user-doc -->
- * <p>
- * The following features are implemented:
- * <ul>
- * <li>{@link org.eclipse.emf.diffmerge.tests.elements.Elements.impl.NamedElementImpl#getName <em>Name</em>}</li>
- * </ul>
- * </p>
- *
- * @generated
- */
-public abstract class NamedElementImpl extends IdentifiedElementImpl implements NamedElement {
- /**
- * The default value of the '{@link #getName() <em>Name</em>}' attribute.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @see #getName()
- * @generated
- * @ordered
- */
- protected static final String NAME_EDEFAULT = null;
-
- /**
- * The cached value of the '{@link #getName() <em>Name</em>}' attribute.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @see #getName()
- * @generated
- * @ordered
- */
- protected String name = NAME_EDEFAULT;
-
- /**
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- protected NamedElementImpl() {
- super();
- }
-
- /**
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- @Override
- protected EClass eStaticClass() {
- return ElementsPackage.Literals.NAMED_ELEMENT;
- }
-
- /**
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- public String getName() {
- return name;
- }
-
- /**
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- public void setName(String newName) {
- String oldName = name;
- name = newName;
- if (eNotificationRequired())
- eNotify(new ENotificationImpl(this, Notification.SET, ElementsPackage.NAMED_ELEMENT__NAME, oldName, name));
- }
-
- /**
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- @Override
- public Object eGet(int featureID, boolean resolve, boolean coreType) {
- switch (featureID) {
- case ElementsPackage.NAMED_ELEMENT__NAME:
- return getName();
- }
- return super.eGet(featureID, resolve, coreType);
- }
-
- /**
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- @Override
- public void eSet(int featureID, Object newValue) {
- switch (featureID) {
- case ElementsPackage.NAMED_ELEMENT__NAME:
- setName((String)newValue);
- return;
- }
- super.eSet(featureID, newValue);
- }
-
- /**
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- @Override
- public void eUnset(int featureID) {
- switch (featureID) {
- case ElementsPackage.NAMED_ELEMENT__NAME:
- setName(NAME_EDEFAULT);
- return;
- }
- super.eUnset(featureID);
- }
-
- /**
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- @Override
- public boolean eIsSet(int featureID) {
- switch (featureID) {
- case ElementsPackage.NAMED_ELEMENT__NAME:
- return NAME_EDEFAULT == null ? name != null : !NAME_EDEFAULT.equals(name);
- }
- 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(" (name: ");
- result.append(name);
- result.append(')');
- return result.toString();
- }
-
-} //NamedElementImpl
+/**
+ * <copyright>
+ *
+ * Copyright (c) 2010-2017 Thales Global Services S.A.S.
+ * 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:
+ * Thales Global Services S.A.S. - initial API and implementation
+ *
+ * </copyright>
+ */
+package org.eclipse.emf.diffmerge.tests.elements.Elements.impl;
+
+import org.eclipse.emf.common.notify.Notification;
+
+import org.eclipse.emf.diffmerge.tests.elements.Elements.ElementsPackage;
+import org.eclipse.emf.diffmerge.tests.elements.Elements.NamedElement;
+
+import org.eclipse.emf.ecore.EClass;
+
+import org.eclipse.emf.ecore.impl.ENotificationImpl;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>Named Element</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * <ul>
+ * <li>{@link org.eclipse.emf.diffmerge.tests.elements.Elements.impl.NamedElementImpl#getName <em>Name</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @generated
+ */
+public abstract class NamedElementImpl extends IdentifiedElementImpl implements NamedElement {
+ /**
+ * The default value of the '{@link #getName() <em>Name</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getName()
+ * @generated
+ * @ordered
+ */
+ protected static final String NAME_EDEFAULT = null;
+
+ /**
+ * The cached value of the '{@link #getName() <em>Name</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getName()
+ * @generated
+ * @ordered
+ */
+ protected String name = NAME_EDEFAULT;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected NamedElementImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ protected EClass eStaticClass() {
+ return ElementsPackage.Literals.NAMED_ELEMENT;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public String getName() {
+ return name;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void setName(String newName) {
+ String oldName = name;
+ name = newName;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, ElementsPackage.NAMED_ELEMENT__NAME, oldName, name));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Object eGet(int featureID, boolean resolve, boolean coreType) {
+ switch (featureID) {
+ case ElementsPackage.NAMED_ELEMENT__NAME:
+ return getName();
+ }
+ return super.eGet(featureID, resolve, coreType);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void eSet(int featureID, Object newValue) {
+ switch (featureID) {
+ case ElementsPackage.NAMED_ELEMENT__NAME:
+ setName((String)newValue);
+ return;
+ }
+ super.eSet(featureID, newValue);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void eUnset(int featureID) {
+ switch (featureID) {
+ case ElementsPackage.NAMED_ELEMENT__NAME:
+ setName(NAME_EDEFAULT);
+ return;
+ }
+ super.eUnset(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public boolean eIsSet(int featureID) {
+ switch (featureID) {
+ case ElementsPackage.NAMED_ELEMENT__NAME:
+ return NAME_EDEFAULT == null ? name != null : !NAME_EDEFAULT.equals(name);
+ }
+ 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(" (name: ");
+ result.append(name);
+ result.append(')');
+ return result.toString();
+ }
+
+} //NamedElementImpl
diff --git a/tests/org.eclipse.emf.diffmerge.tests.elements/src/org/eclipse/emf/diffmerge/tests/elements/Elements/impl/NodeImpl.java b/tests/org.eclipse.emf.diffmerge.tests.elements/src/org/eclipse/emf/diffmerge/tests/elements/Elements/impl/NodeImpl.java
index 0c603727..e91cf21e 100644
--- a/tests/org.eclipse.emf.diffmerge.tests.elements/src/org/eclipse/emf/diffmerge/tests/elements/Elements/impl/NodeImpl.java
+++ b/tests/org.eclipse.emf.diffmerge.tests.elements/src/org/eclipse/emf/diffmerge/tests/elements/Elements/impl/NodeImpl.java
@@ -1,253 +1,253 @@
-/**
- * <copyright>
- *
- * Copyright (c) 2010-2016 Thales Global Services S.A.S.
- * 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:
- * Thales Global Services S.A.S. - initial API and implementation
- *
- * </copyright>
- */
-package org.eclipse.emf.diffmerge.tests.elements.Elements.impl;
-
-import java.util.Collection;
-
-import org.eclipse.emf.common.notify.NotificationChain;
-
-import org.eclipse.emf.common.util.EList;
-
-import org.eclipse.emf.diffmerge.tests.elements.Elements.Edge;
-import org.eclipse.emf.diffmerge.tests.elements.Elements.ElementsPackage;
-import org.eclipse.emf.diffmerge.tests.elements.Elements.NamedElement;
-import org.eclipse.emf.diffmerge.tests.elements.Elements.Node;
-
-import org.eclipse.emf.ecore.EClass;
-import org.eclipse.emf.ecore.InternalEObject;
-
-import org.eclipse.emf.ecore.util.EObjectContainmentEList;
-import org.eclipse.emf.ecore.util.EObjectWithInverseResolvingEList;
-import org.eclipse.emf.ecore.util.InternalEList;
-
-/**
- * <!-- begin-user-doc -->
- * An implementation of the model object '<em><b>Node</b></em>'.
- * <!-- end-user-doc -->
- * <p>
- * The following features are implemented:
- * <ul>
- * <li>{@link org.eclipse.emf.diffmerge.tests.elements.Elements.impl.NodeImpl#getIncoming <em>Incoming</em>}</li>
- * <li>{@link org.eclipse.emf.diffmerge.tests.elements.Elements.impl.NodeImpl#getOutgoing <em>Outgoing</em>}</li>
- * <li>{@link org.eclipse.emf.diffmerge.tests.elements.Elements.impl.NodeImpl#getSubNodes <em>Sub Nodes</em>}</li>
- * </ul>
- * </p>
- *
- * @generated
- */
-public class NodeImpl extends NamedElementImpl implements Node {
- /**
- * The cached value of the '{@link #getIncoming() <em>Incoming</em>}' reference list.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @see #getIncoming()
- * @generated
- * @ordered
- */
- protected EList<Edge> incoming;
-
- /**
- * The cached value of the '{@link #getOutgoing() <em>Outgoing</em>}' reference list.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @see #getOutgoing()
- * @generated
- * @ordered
- */
- protected EList<Edge> outgoing;
-
- /**
- * The cached value of the '{@link #getSubNodes() <em>Sub Nodes</em>}' containment reference list.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @see #getSubNodes()
- * @generated
- * @ordered
- */
- protected EList<NamedElement> subNodes;
-
- /**
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- protected NodeImpl() {
- super();
- }
-
- /**
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- @Override
- protected EClass eStaticClass() {
- return ElementsPackage.Literals.NODE;
- }
-
- /**
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- public EList<Edge> getIncoming() {
- if (incoming == null) {
- incoming = new EObjectWithInverseResolvingEList<Edge>(Edge.class, this, ElementsPackage.NODE__INCOMING, ElementsPackage.EDGE__TARGET);
- }
- return incoming;
- }
-
- /**
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- public EList<Edge> getOutgoing() {
- if (outgoing == null) {
- outgoing = new EObjectWithInverseResolvingEList<Edge>(Edge.class, this, ElementsPackage.NODE__OUTGOING, ElementsPackage.EDGE__SOURCE);
- }
- return outgoing;
- }
-
- /**
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- public EList<NamedElement> getSubNodes() {
- if (subNodes == null) {
- subNodes = new EObjectContainmentEList<NamedElement>(NamedElement.class, this, ElementsPackage.NODE__SUB_NODES);
- }
- return subNodes;
- }
-
- /**
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- @SuppressWarnings("unchecked")
- @Override
- public NotificationChain eInverseAdd(InternalEObject otherEnd, int featureID, NotificationChain msgs) {
- switch (featureID) {
- case ElementsPackage.NODE__INCOMING:
- return ((InternalEList<InternalEObject>)(InternalEList<?>)getIncoming()).basicAdd(otherEnd, msgs);
- case ElementsPackage.NODE__OUTGOING:
- return ((InternalEList<InternalEObject>)(InternalEList<?>)getOutgoing()).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 ElementsPackage.NODE__INCOMING:
- return ((InternalEList<?>)getIncoming()).basicRemove(otherEnd, msgs);
- case ElementsPackage.NODE__OUTGOING:
- return ((InternalEList<?>)getOutgoing()).basicRemove(otherEnd, msgs);
- case ElementsPackage.NODE__SUB_NODES:
- return ((InternalEList<?>)getSubNodes()).basicRemove(otherEnd, msgs);
- }
- return super.eInverseRemove(otherEnd, featureID, msgs);
- }
-
- /**
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- @Override
- public Object eGet(int featureID, boolean resolve, boolean coreType) {
- switch (featureID) {
- case ElementsPackage.NODE__INCOMING:
- return getIncoming();
- case ElementsPackage.NODE__OUTGOING:
- return getOutgoing();
- case ElementsPackage.NODE__SUB_NODES:
- return getSubNodes();
- }
- 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 ElementsPackage.NODE__INCOMING:
- getIncoming().clear();
- getIncoming().addAll((Collection<? extends Edge>)newValue);
- return;
- case ElementsPackage.NODE__OUTGOING:
- getOutgoing().clear();
- getOutgoing().addAll((Collection<? extends Edge>)newValue);
- return;
- case ElementsPackage.NODE__SUB_NODES:
- getSubNodes().clear();
- getSubNodes().addAll((Collection<? extends NamedElement>)newValue);
- return;
- }
- super.eSet(featureID, newValue);
- }
-
- /**
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- @Override
- public void eUnset(int featureID) {
- switch (featureID) {
- case ElementsPackage.NODE__INCOMING:
- getIncoming().clear();
- return;
- case ElementsPackage.NODE__OUTGOING:
- getOutgoing().clear();
- return;
- case ElementsPackage.NODE__SUB_NODES:
- getSubNodes().clear();
- return;
- }
- super.eUnset(featureID);
- }
-
- /**
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- @Override
- public boolean eIsSet(int featureID) {
- switch (featureID) {
- case ElementsPackage.NODE__INCOMING:
- return incoming != null && !incoming.isEmpty();
- case ElementsPackage.NODE__OUTGOING:
- return outgoing != null && !outgoing.isEmpty();
- case ElementsPackage.NODE__SUB_NODES:
- return subNodes != null && !subNodes.isEmpty();
- }
- return super.eIsSet(featureID);
- }
-
-} //NodeImpl
+/**
+ * <copyright>
+ *
+ * Copyright (c) 2010-2017 Thales Global Services S.A.S.
+ * 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:
+ * Thales Global Services S.A.S. - initial API and implementation
+ *
+ * </copyright>
+ */
+package org.eclipse.emf.diffmerge.tests.elements.Elements.impl;
+
+import java.util.Collection;
+
+import org.eclipse.emf.common.notify.NotificationChain;
+
+import org.eclipse.emf.common.util.EList;
+
+import org.eclipse.emf.diffmerge.tests.elements.Elements.Edge;
+import org.eclipse.emf.diffmerge.tests.elements.Elements.ElementsPackage;
+import org.eclipse.emf.diffmerge.tests.elements.Elements.NamedElement;
+import org.eclipse.emf.diffmerge.tests.elements.Elements.Node;
+
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.InternalEObject;
+
+import org.eclipse.emf.ecore.util.EObjectContainmentEList;
+import org.eclipse.emf.ecore.util.EObjectWithInverseResolvingEList;
+import org.eclipse.emf.ecore.util.InternalEList;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>Node</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * <ul>
+ * <li>{@link org.eclipse.emf.diffmerge.tests.elements.Elements.impl.NodeImpl#getIncoming <em>Incoming</em>}</li>
+ * <li>{@link org.eclipse.emf.diffmerge.tests.elements.Elements.impl.NodeImpl#getOutgoing <em>Outgoing</em>}</li>
+ * <li>{@link org.eclipse.emf.diffmerge.tests.elements.Elements.impl.NodeImpl#getSubNodes <em>Sub Nodes</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @generated
+ */
+public class NodeImpl extends NamedElementImpl implements Node {
+ /**
+ * The cached value of the '{@link #getIncoming() <em>Incoming</em>}' reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getIncoming()
+ * @generated
+ * @ordered
+ */
+ protected EList<Edge> incoming;
+
+ /**
+ * The cached value of the '{@link #getOutgoing() <em>Outgoing</em>}' reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getOutgoing()
+ * @generated
+ * @ordered
+ */
+ protected EList<Edge> outgoing;
+
+ /**
+ * The cached value of the '{@link #getSubNodes() <em>Sub Nodes</em>}' containment reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getSubNodes()
+ * @generated
+ * @ordered
+ */
+ protected EList<NamedElement> subNodes;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected NodeImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ protected EClass eStaticClass() {
+ return ElementsPackage.Literals.NODE;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EList<Edge> getIncoming() {
+ if (incoming == null) {
+ incoming = new EObjectWithInverseResolvingEList<Edge>(Edge.class, this, ElementsPackage.NODE__INCOMING, ElementsPackage.EDGE__TARGET);
+ }
+ return incoming;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EList<Edge> getOutgoing() {
+ if (outgoing == null) {
+ outgoing = new EObjectWithInverseResolvingEList<Edge>(Edge.class, this, ElementsPackage.NODE__OUTGOING, ElementsPackage.EDGE__SOURCE);
+ }
+ return outgoing;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EList<NamedElement> getSubNodes() {
+ if (subNodes == null) {
+ subNodes = new EObjectContainmentEList<NamedElement>(NamedElement.class, this, ElementsPackage.NODE__SUB_NODES);
+ }
+ return subNodes;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @SuppressWarnings("unchecked")
+ @Override
+ public NotificationChain eInverseAdd(InternalEObject otherEnd, int featureID, NotificationChain msgs) {
+ switch (featureID) {
+ case ElementsPackage.NODE__INCOMING:
+ return ((InternalEList<InternalEObject>)(InternalEList<?>)getIncoming()).basicAdd(otherEnd, msgs);
+ case ElementsPackage.NODE__OUTGOING:
+ return ((InternalEList<InternalEObject>)(InternalEList<?>)getOutgoing()).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 ElementsPackage.NODE__INCOMING:
+ return ((InternalEList<?>)getIncoming()).basicRemove(otherEnd, msgs);
+ case ElementsPackage.NODE__OUTGOING:
+ return ((InternalEList<?>)getOutgoing()).basicRemove(otherEnd, msgs);
+ case ElementsPackage.NODE__SUB_NODES:
+ return ((InternalEList<?>)getSubNodes()).basicRemove(otherEnd, msgs);
+ }
+ return super.eInverseRemove(otherEnd, featureID, msgs);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Object eGet(int featureID, boolean resolve, boolean coreType) {
+ switch (featureID) {
+ case ElementsPackage.NODE__INCOMING:
+ return getIncoming();
+ case ElementsPackage.NODE__OUTGOING:
+ return getOutgoing();
+ case ElementsPackage.NODE__SUB_NODES:
+ return getSubNodes();
+ }
+ 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 ElementsPackage.NODE__INCOMING:
+ getIncoming().clear();
+ getIncoming().addAll((Collection<? extends Edge>)newValue);
+ return;
+ case ElementsPackage.NODE__OUTGOING:
+ getOutgoing().clear();
+ getOutgoing().addAll((Collection<? extends Edge>)newValue);
+ return;
+ case ElementsPackage.NODE__SUB_NODES:
+ getSubNodes().clear();
+ getSubNodes().addAll((Collection<? extends NamedElement>)newValue);
+ return;
+ }
+ super.eSet(featureID, newValue);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void eUnset(int featureID) {
+ switch (featureID) {
+ case ElementsPackage.NODE__INCOMING:
+ getIncoming().clear();
+ return;
+ case ElementsPackage.NODE__OUTGOING:
+ getOutgoing().clear();
+ return;
+ case ElementsPackage.NODE__SUB_NODES:
+ getSubNodes().clear();
+ return;
+ }
+ super.eUnset(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public boolean eIsSet(int featureID) {
+ switch (featureID) {
+ case ElementsPackage.NODE__INCOMING:
+ return incoming != null && !incoming.isEmpty();
+ case ElementsPackage.NODE__OUTGOING:
+ return outgoing != null && !outgoing.isEmpty();
+ case ElementsPackage.NODE__SUB_NODES:
+ return subNodes != null && !subNodes.isEmpty();
+ }
+ return super.eIsSet(featureID);
+ }
+
+} //NodeImpl
diff --git a/tests/org.eclipse.emf.diffmerge.tests.elements/src/org/eclipse/emf/diffmerge/tests/elements/Elements/impl/ReferencingNodeImpl.java b/tests/org.eclipse.emf.diffmerge.tests.elements/src/org/eclipse/emf/diffmerge/tests/elements/Elements/impl/ReferencingNodeImpl.java
index 5427c94c..f32abe89 100644
--- a/tests/org.eclipse.emf.diffmerge.tests.elements/src/org/eclipse/emf/diffmerge/tests/elements/Elements/impl/ReferencingNodeImpl.java
+++ b/tests/org.eclipse.emf.diffmerge.tests.elements/src/org/eclipse/emf/diffmerge/tests/elements/Elements/impl/ReferencingNodeImpl.java
@@ -1,168 +1,168 @@
-/**
- * <copyright>
- *
- * Copyright (c) 2010-2016 Thales Global Services S.A.S.
- * 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:
- * Thales Global Services S.A.S. - initial API and implementation
- *
- * </copyright>
- */
-package org.eclipse.emf.diffmerge.tests.elements.Elements.impl;
-
-import org.eclipse.emf.common.notify.Notification;
-
-import org.eclipse.emf.diffmerge.tests.elements.Elements.ElementsPackage;
-import org.eclipse.emf.diffmerge.tests.elements.Elements.Node;
-import org.eclipse.emf.diffmerge.tests.elements.Elements.ReferencingNode;
-
-import org.eclipse.emf.ecore.EClass;
-import org.eclipse.emf.ecore.InternalEObject;
-
-import org.eclipse.emf.ecore.impl.ENotificationImpl;
-
-/**
- * <!-- begin-user-doc -->
- * An implementation of the model object '<em><b>Referencing Node</b></em>'.
- * <!-- end-user-doc -->
- * <p>
- * The following features are implemented:
- * <ul>
- * <li>{@link org.eclipse.emf.diffmerge.tests.elements.Elements.impl.ReferencingNodeImpl#getReferenced <em>Referenced</em>}</li>
- * </ul>
- * </p>
- *
- * @generated
- */
-public class ReferencingNodeImpl extends NodeImpl implements ReferencingNode {
- /**
- * The cached value of the '{@link #getReferenced() <em>Referenced</em>}' reference.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @see #getReferenced()
- * @generated
- * @ordered
- */
- protected Node referenced;
-
- /**
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- protected ReferencingNodeImpl() {
- super();
- }
-
- /**
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- @Override
- protected EClass eStaticClass() {
- return ElementsPackage.Literals.REFERENCING_NODE;
- }
-
- /**
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- public Node getReferenced() {
- if (referenced != null && referenced.eIsProxy()) {
- InternalEObject oldReferenced = (InternalEObject)referenced;
- referenced = (Node)eResolveProxy(oldReferenced);
- if (referenced != oldReferenced) {
- if (eNotificationRequired())
- eNotify(new ENotificationImpl(this, Notification.RESOLVE, ElementsPackage.REFERENCING_NODE__REFERENCED, oldReferenced, referenced));
- }
- }
- return referenced;
- }
-
- /**
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- public Node basicGetReferenced() {
- return referenced;
- }
-
- /**
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- public void setReferenced(Node newReferenced) {
- Node oldReferenced = referenced;
- referenced = newReferenced;
- if (eNotificationRequired())
- eNotify(new ENotificationImpl(this, Notification.SET, ElementsPackage.REFERENCING_NODE__REFERENCED, oldReferenced, referenced));
- }
-
- /**
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- @Override
- public Object eGet(int featureID, boolean resolve, boolean coreType) {
- switch (featureID) {
- case ElementsPackage.REFERENCING_NODE__REFERENCED:
- if (resolve) return getReferenced();
- return basicGetReferenced();
- }
- return super.eGet(featureID, resolve, coreType);
- }
-
- /**
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- @Override
- public void eSet(int featureID, Object newValue) {
- switch (featureID) {
- case ElementsPackage.REFERENCING_NODE__REFERENCED:
- setReferenced((Node)newValue);
- return;
- }
- super.eSet(featureID, newValue);
- }
-
- /**
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- @Override
- public void eUnset(int featureID) {
- switch (featureID) {
- case ElementsPackage.REFERENCING_NODE__REFERENCED:
- setReferenced((Node)null);
- return;
- }
- super.eUnset(featureID);
- }
-
- /**
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- @Override
- public boolean eIsSet(int featureID) {
- switch (featureID) {
- case ElementsPackage.REFERENCING_NODE__REFERENCED:
- return referenced != null;
- }
- return super.eIsSet(featureID);
- }
-
-} //ReferencingNodeImpl
+/**
+ * <copyright>
+ *
+ * Copyright (c) 2010-2017 Thales Global Services S.A.S.
+ * 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:
+ * Thales Global Services S.A.S. - initial API and implementation
+ *
+ * </copyright>
+ */
+package org.eclipse.emf.diffmerge.tests.elements.Elements.impl;
+
+import org.eclipse.emf.common.notify.Notification;
+
+import org.eclipse.emf.diffmerge.tests.elements.Elements.ElementsPackage;
+import org.eclipse.emf.diffmerge.tests.elements.Elements.Node;
+import org.eclipse.emf.diffmerge.tests.elements.Elements.ReferencingNode;
+
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.InternalEObject;
+
+import org.eclipse.emf.ecore.impl.ENotificationImpl;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>Referencing Node</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * <ul>
+ * <li>{@link org.eclipse.emf.diffmerge.tests.elements.Elements.impl.ReferencingNodeImpl#getReferenced <em>Referenced</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @generated
+ */
+public class ReferencingNodeImpl extends NodeImpl implements ReferencingNode {
+ /**
+ * The cached value of the '{@link #getReferenced() <em>Referenced</em>}' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getReferenced()
+ * @generated
+ * @ordered
+ */
+ protected Node referenced;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected ReferencingNodeImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ protected EClass eStaticClass() {
+ return ElementsPackage.Literals.REFERENCING_NODE;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public Node getReferenced() {
+ if (referenced != null && referenced.eIsProxy()) {
+ InternalEObject oldReferenced = (InternalEObject)referenced;
+ referenced = (Node)eResolveProxy(oldReferenced);
+ if (referenced != oldReferenced) {
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.RESOLVE, ElementsPackage.REFERENCING_NODE__REFERENCED, oldReferenced, referenced));
+ }
+ }
+ return referenced;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public Node basicGetReferenced() {
+ return referenced;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void setReferenced(Node newReferenced) {
+ Node oldReferenced = referenced;
+ referenced = newReferenced;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, ElementsPackage.REFERENCING_NODE__REFERENCED, oldReferenced, referenced));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Object eGet(int featureID, boolean resolve, boolean coreType) {
+ switch (featureID) {
+ case ElementsPackage.REFERENCING_NODE__REFERENCED:
+ if (resolve) return getReferenced();
+ return basicGetReferenced();
+ }
+ return super.eGet(featureID, resolve, coreType);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void eSet(int featureID, Object newValue) {
+ switch (featureID) {
+ case ElementsPackage.REFERENCING_NODE__REFERENCED:
+ setReferenced((Node)newValue);
+ return;
+ }
+ super.eSet(featureID, newValue);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void eUnset(int featureID) {
+ switch (featureID) {
+ case ElementsPackage.REFERENCING_NODE__REFERENCED:
+ setReferenced((Node)null);
+ return;
+ }
+ super.eUnset(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public boolean eIsSet(int featureID) {
+ switch (featureID) {
+ case ElementsPackage.REFERENCING_NODE__REFERENCED:
+ return referenced != null;
+ }
+ return super.eIsSet(featureID);
+ }
+
+} //ReferencingNodeImpl
diff --git a/tests/org.eclipse.emf.diffmerge.tests.elements/src/org/eclipse/emf/diffmerge/tests/elements/Elements/impl/RootImpl.java b/tests/org.eclipse.emf.diffmerge.tests.elements/src/org/eclipse/emf/diffmerge/tests/elements/Elements/impl/RootImpl.java
index a0e4ea42..2c09637a 100644
--- a/tests/org.eclipse.emf.diffmerge.tests.elements/src/org/eclipse/emf/diffmerge/tests/elements/Elements/impl/RootImpl.java
+++ b/tests/org.eclipse.emf.diffmerge.tests.elements/src/org/eclipse/emf/diffmerge/tests/elements/Elements/impl/RootImpl.java
@@ -1,233 +1,233 @@
-/**
- * <copyright>
- *
- * Copyright (c) 2010-2016 Thales Global Services S.A.S.
- * 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:
- * Thales Global Services S.A.S. - initial API and implementation
- *
- * </copyright>
- */
-package org.eclipse.emf.diffmerge.tests.elements.Elements.impl;
-
-import java.util.Collection;
-
-import org.eclipse.emf.common.notify.Notification;
-import org.eclipse.emf.common.notify.NotificationChain;
-
-import org.eclipse.emf.common.util.EList;
-
-import org.eclipse.emf.diffmerge.tests.elements.Elements.ElementsPackage;
-import org.eclipse.emf.diffmerge.tests.elements.Elements.NamedElement;
-import org.eclipse.emf.diffmerge.tests.elements.Elements.Root;
-
-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.EObjectContainmentEList;
-import org.eclipse.emf.ecore.util.InternalEList;
-
-/**
- * <!-- begin-user-doc -->
- * An implementation of the model object '<em><b>Root</b></em>'.
- * <!-- end-user-doc -->
- * <p>
- * The following features are implemented:
- * <ul>
- * <li>{@link org.eclipse.emf.diffmerge.tests.elements.Elements.impl.RootImpl#getName <em>Name</em>}</li>
- * <li>{@link org.eclipse.emf.diffmerge.tests.elements.Elements.impl.RootImpl#getContent <em>Content</em>}</li>
- * </ul>
- * </p>
- *
- * @generated
- */
-public class RootImpl extends IdentifiedElementImpl implements Root {
- /**
- * The default value of the '{@link #getName() <em>Name</em>}' attribute.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @see #getName()
- * @generated
- * @ordered
- */
- protected static final String NAME_EDEFAULT = null;
-
- /**
- * The cached value of the '{@link #getName() <em>Name</em>}' attribute.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @see #getName()
- * @generated
- * @ordered
- */
- protected String name = NAME_EDEFAULT;
-
- /**
- * The cached value of the '{@link #getContent() <em>Content</em>}' containment reference list.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @see #getContent()
- * @generated
- * @ordered
- */
- protected EList<NamedElement> content;
-
- /**
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- protected RootImpl() {
- super();
- }
-
- /**
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- @Override
- protected EClass eStaticClass() {
- return ElementsPackage.Literals.ROOT;
- }
-
- /**
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- public String getName() {
- return name;
- }
-
- /**
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- public void setName(String newName) {
- String oldName = name;
- name = newName;
- if (eNotificationRequired())
- eNotify(new ENotificationImpl(this, Notification.SET, ElementsPackage.ROOT__NAME, oldName, name));
- }
-
- /**
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- public EList<NamedElement> getContent() {
- if (content == null) {
- content = new EObjectContainmentEList<NamedElement>(NamedElement.class, this, ElementsPackage.ROOT__CONTENT);
- }
- return content;
- }
-
- /**
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- @Override
- public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) {
- switch (featureID) {
- case ElementsPackage.ROOT__CONTENT:
- return ((InternalEList<?>)getContent()).basicRemove(otherEnd, msgs);
- }
- return super.eInverseRemove(otherEnd, featureID, msgs);
- }
-
- /**
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- @Override
- public Object eGet(int featureID, boolean resolve, boolean coreType) {
- switch (featureID) {
- case ElementsPackage.ROOT__NAME:
- return getName();
- case ElementsPackage.ROOT__CONTENT:
- return getContent();
- }
- 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 ElementsPackage.ROOT__NAME:
- setName((String)newValue);
- return;
- case ElementsPackage.ROOT__CONTENT:
- getContent().clear();
- getContent().addAll((Collection<? extends NamedElement>)newValue);
- return;
- }
- super.eSet(featureID, newValue);
- }
-
- /**
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- @Override
- public void eUnset(int featureID) {
- switch (featureID) {
- case ElementsPackage.ROOT__NAME:
- setName(NAME_EDEFAULT);
- return;
- case ElementsPackage.ROOT__CONTENT:
- getContent().clear();
- return;
- }
- super.eUnset(featureID);
- }
-
- /**
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- @Override
- public boolean eIsSet(int featureID) {
- switch (featureID) {
- case ElementsPackage.ROOT__NAME:
- return NAME_EDEFAULT == null ? name != null : !NAME_EDEFAULT.equals(name);
- case ElementsPackage.ROOT__CONTENT:
- return content != null && !content.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(" (name: ");
- result.append(name);
- result.append(')');
- return result.toString();
- }
-
-} //RootImpl
+/**
+ * <copyright>
+ *
+ * Copyright (c) 2010-2017 Thales Global Services S.A.S.
+ * 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:
+ * Thales Global Services S.A.S. - initial API and implementation
+ *
+ * </copyright>
+ */
+package org.eclipse.emf.diffmerge.tests.elements.Elements.impl;
+
+import java.util.Collection;
+
+import org.eclipse.emf.common.notify.Notification;
+import org.eclipse.emf.common.notify.NotificationChain;
+
+import org.eclipse.emf.common.util.EList;
+
+import org.eclipse.emf.diffmerge.tests.elements.Elements.ElementsPackage;
+import org.eclipse.emf.diffmerge.tests.elements.Elements.NamedElement;
+import org.eclipse.emf.diffmerge.tests.elements.Elements.Root;
+
+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.EObjectContainmentEList;
+import org.eclipse.emf.ecore.util.InternalEList;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>Root</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * <ul>
+ * <li>{@link org.eclipse.emf.diffmerge.tests.elements.Elements.impl.RootImpl#getName <em>Name</em>}</li>
+ * <li>{@link org.eclipse.emf.diffmerge.tests.elements.Elements.impl.RootImpl#getContent <em>Content</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @generated
+ */
+public class RootImpl extends IdentifiedElementImpl implements Root {
+ /**
+ * The default value of the '{@link #getName() <em>Name</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getName()
+ * @generated
+ * @ordered
+ */
+ protected static final String NAME_EDEFAULT = null;
+
+ /**
+ * The cached value of the '{@link #getName() <em>Name</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getName()
+ * @generated
+ * @ordered
+ */
+ protected String name = NAME_EDEFAULT;
+
+ /**
+ * The cached value of the '{@link #getContent() <em>Content</em>}' containment reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getContent()
+ * @generated
+ * @ordered
+ */
+ protected EList<NamedElement> content;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected RootImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ protected EClass eStaticClass() {
+ return ElementsPackage.Literals.ROOT;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public String getName() {
+ return name;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void setName(String newName) {
+ String oldName = name;
+ name = newName;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, ElementsPackage.ROOT__NAME, oldName, name));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EList<NamedElement> getContent() {
+ if (content == null) {
+ content = new EObjectContainmentEList<NamedElement>(NamedElement.class, this, ElementsPackage.ROOT__CONTENT);
+ }
+ return content;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) {
+ switch (featureID) {
+ case ElementsPackage.ROOT__CONTENT:
+ return ((InternalEList<?>)getContent()).basicRemove(otherEnd, msgs);
+ }
+ return super.eInverseRemove(otherEnd, featureID, msgs);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Object eGet(int featureID, boolean resolve, boolean coreType) {
+ switch (featureID) {
+ case ElementsPackage.ROOT__NAME:
+ return getName();
+ case ElementsPackage.ROOT__CONTENT:
+ return getContent();
+ }
+ 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 ElementsPackage.ROOT__NAME:
+ setName((String)newValue);
+ return;
+ case ElementsPackage.ROOT__CONTENT:
+ getContent().clear();
+ getContent().addAll((Collection<? extends NamedElement>)newValue);
+ return;
+ }
+ super.eSet(featureID, newValue);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void eUnset(int featureID) {
+ switch (featureID) {
+ case ElementsPackage.ROOT__NAME:
+ setName(NAME_EDEFAULT);
+ return;
+ case ElementsPackage.ROOT__CONTENT:
+ getContent().clear();
+ return;
+ }
+ super.eUnset(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public boolean eIsSet(int featureID) {
+ switch (featureID) {
+ case ElementsPackage.ROOT__NAME:
+ return NAME_EDEFAULT == null ? name != null : !NAME_EDEFAULT.equals(name);
+ case ElementsPackage.ROOT__CONTENT:
+ return content != null && !content.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(" (name: ");
+ result.append(name);
+ result.append(')');
+ return result.toString();
+ }
+
+} //RootImpl
diff --git a/tests/org.eclipse.emf.diffmerge.tests.elements/src/org/eclipse/emf/diffmerge/tests/elements/Elements/impl/StrictElementImpl.java b/tests/org.eclipse.emf.diffmerge.tests.elements/src/org/eclipse/emf/diffmerge/tests/elements/Elements/impl/StrictElementImpl.java
index b743b62a..4a25bd45 100644
--- a/tests/org.eclipse.emf.diffmerge.tests.elements/src/org/eclipse/emf/diffmerge/tests/elements/Elements/impl/StrictElementImpl.java
+++ b/tests/org.eclipse.emf.diffmerge.tests.elements/src/org/eclipse/emf/diffmerge/tests/elements/Elements/impl/StrictElementImpl.java
@@ -1,647 +1,647 @@
-/**
- * <copyright>
- *
- * Copyright (c) 2010-2016 Thales Global Services S.A.S.
- * 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:
- * Thales Global Services S.A.S. - initial API and implementation
- *
- * </copyright>
- */
-package org.eclipse.emf.diffmerge.tests.elements.Elements.impl;
-
-import java.util.Collection;
-
-import org.eclipse.emf.common.notify.Notification;
-import org.eclipse.emf.common.notify.NotificationChain;
-
-import org.eclipse.emf.common.util.EList;
-
-import org.eclipse.emf.diffmerge.tests.elements.Elements.Element;
-import org.eclipse.emf.diffmerge.tests.elements.Elements.ElementsPackage;
-import org.eclipse.emf.diffmerge.tests.elements.Elements.StrictElement;
-
-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.EDataTypeUniqueEList;
-import org.eclipse.emf.ecore.util.EObjectContainmentEList;
-import org.eclipse.emf.ecore.util.EObjectResolvingEList;
-import org.eclipse.emf.ecore.util.EObjectWithInverseResolvingEList;
-import org.eclipse.emf.ecore.util.InternalEList;
-
-/**
- * <!-- begin-user-doc -->
- * An implementation of the model object '<em><b>Strict Element</b></em>'.
- * <!-- end-user-doc -->
- * <p>
- * The following features are implemented:
- * <ul>
- * <li>{@link org.eclipse.emf.diffmerge.tests.elements.Elements.impl.StrictElementImpl#getSValue <em>SValue</em>}</li>
- * <li>{@link org.eclipse.emf.diffmerge.tests.elements.Elements.impl.StrictElementImpl#getSValues <em>SValues</em>}</li>
- * <li>{@link org.eclipse.emf.diffmerge.tests.elements.Elements.impl.StrictElementImpl#getSManyContent <em>SMany Content</em>}</li>
- * <li>{@link org.eclipse.emf.diffmerge.tests.elements.Elements.impl.StrictElementImpl#getSSingleContent <em>SSingle Content</em>}</li>
- * <li>{@link org.eclipse.emf.diffmerge.tests.elements.Elements.impl.StrictElementImpl#getSManyRef <em>SMany Ref</em>}</li>
- * <li>{@link org.eclipse.emf.diffmerge.tests.elements.Elements.impl.StrictElementImpl#getSSingleRef <em>SSingle Ref</em>}</li>
- * <li>{@link org.eclipse.emf.diffmerge.tests.elements.Elements.impl.StrictElementImpl#getSManyFromSingleRef <em>SMany From Single Ref</em>}</li>
- * <li>{@link org.eclipse.emf.diffmerge.tests.elements.Elements.impl.StrictElementImpl#getSSingleFromManyRef <em>SSingle From Many Ref</em>}</li>
- * <li>{@link org.eclipse.emf.diffmerge.tests.elements.Elements.impl.StrictElementImpl#getSManyFromManyRef1 <em>SMany From Many Ref1</em>}</li>
- * <li>{@link org.eclipse.emf.diffmerge.tests.elements.Elements.impl.StrictElementImpl#getSManyFromManyRef2 <em>SMany From Many Ref2</em>}</li>
- * </ul>
- * </p>
- *
- * @generated
- */
-public class StrictElementImpl extends ElementImpl implements StrictElement {
- /**
- * The default value of the '{@link #getSValue() <em>SValue</em>}' attribute.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @see #getSValue()
- * @generated
- * @ordered
- */
- protected static final int SVALUE_EDEFAULT = 0;
-
- /**
- * The cached value of the '{@link #getSValue() <em>SValue</em>}' attribute.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @see #getSValue()
- * @generated
- * @ordered
- */
- protected int sValue = SVALUE_EDEFAULT;
-
- /**
- * The cached value of the '{@link #getSValues() <em>SValues</em>}' attribute list.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @see #getSValues()
- * @generated
- * @ordered
- */
- protected EList<Integer> sValues;
-
- /**
- * The cached value of the '{@link #getSManyContent() <em>SMany Content</em>}' containment reference list.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @see #getSManyContent()
- * @generated
- * @ordered
- */
- protected EList<Element> sManyContent;
-
- /**
- * The cached value of the '{@link #getSSingleContent() <em>SSingle Content</em>}' containment reference.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @see #getSSingleContent()
- * @generated
- * @ordered
- */
- protected Element sSingleContent;
-
- /**
- * The cached value of the '{@link #getSManyRef() <em>SMany Ref</em>}' reference list.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @see #getSManyRef()
- * @generated
- * @ordered
- */
- protected EList<Element> sManyRef;
-
- /**
- * The cached value of the '{@link #getSSingleRef() <em>SSingle Ref</em>}' reference.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @see #getSSingleRef()
- * @generated
- * @ordered
- */
- protected Element sSingleRef;
-
- /**
- * The cached value of the '{@link #getSManyFromSingleRef() <em>SMany From Single Ref</em>}' reference list.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @see #getSManyFromSingleRef()
- * @generated
- * @ordered
- */
- protected EList<StrictElement> sManyFromSingleRef;
-
- /**
- * The cached value of the '{@link #getSSingleFromManyRef() <em>SSingle From Many Ref</em>}' reference.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @see #getSSingleFromManyRef()
- * @generated
- * @ordered
- */
- protected StrictElement sSingleFromManyRef;
-
- /**
- * The cached value of the '{@link #getSManyFromManyRef1() <em>SMany From Many Ref1</em>}' reference list.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @see #getSManyFromManyRef1()
- * @generated
- * @ordered
- */
- protected EList<StrictElement> sManyFromManyRef1;
-
- /**
- * The cached value of the '{@link #getSManyFromManyRef2() <em>SMany From Many Ref2</em>}' reference list.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @see #getSManyFromManyRef2()
- * @generated
- * @ordered
- */
- protected EList<StrictElement> sManyFromManyRef2;
-
- /**
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- protected StrictElementImpl() {
- super();
- }
-
- /**
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- @Override
- protected EClass eStaticClass() {
- return ElementsPackage.Literals.STRICT_ELEMENT;
- }
-
- /**
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- public int getSValue() {
- return sValue;
- }
-
- /**
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- public void setSValue(int newSValue) {
- int oldSValue = sValue;
- sValue = newSValue;
- if (eNotificationRequired())
- eNotify(new ENotificationImpl(this, Notification.SET, ElementsPackage.STRICT_ELEMENT__SVALUE, oldSValue, sValue));
- }
-
- /**
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- public EList<Integer> getSValues() {
- if (sValues == null) {
- sValues = new EDataTypeUniqueEList<Integer>(Integer.class, this, ElementsPackage.STRICT_ELEMENT__SVALUES);
- }
- return sValues;
- }
-
- /**
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- public EList<Element> getSManyContent() {
- if (sManyContent == null) {
- sManyContent = new EObjectContainmentEList<Element>(Element.class, this, ElementsPackage.STRICT_ELEMENT__SMANY_CONTENT);
- }
- return sManyContent;
- }
-
- /**
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- public Element getSSingleContent() {
- return sSingleContent;
- }
-
- /**
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- public NotificationChain basicSetSSingleContent(Element newSSingleContent, NotificationChain msgs) {
- Element oldSSingleContent = sSingleContent;
- sSingleContent = newSSingleContent;
- if (eNotificationRequired()) {
- ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, ElementsPackage.STRICT_ELEMENT__SSINGLE_CONTENT, oldSSingleContent, newSSingleContent);
- if (msgs == null) msgs = notification; else msgs.add(notification);
- }
- return msgs;
- }
-
- /**
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- public void setSSingleContent(Element newSSingleContent) {
- if (newSSingleContent != sSingleContent) {
- NotificationChain msgs = null;
- if (sSingleContent != null)
- msgs = ((InternalEObject)sSingleContent).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - ElementsPackage.STRICT_ELEMENT__SSINGLE_CONTENT, null, msgs);
- if (newSSingleContent != null)
- msgs = ((InternalEObject)newSSingleContent).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - ElementsPackage.STRICT_ELEMENT__SSINGLE_CONTENT, null, msgs);
- msgs = basicSetSSingleContent(newSSingleContent, msgs);
- if (msgs != null) msgs.dispatch();
- }
- else if (eNotificationRequired())
- eNotify(new ENotificationImpl(this, Notification.SET, ElementsPackage.STRICT_ELEMENT__SSINGLE_CONTENT, newSSingleContent, newSSingleContent));
- }
-
- /**
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- public EList<Element> getSManyRef() {
- if (sManyRef == null) {
- sManyRef = new EObjectResolvingEList<Element>(Element.class, this, ElementsPackage.STRICT_ELEMENT__SMANY_REF);
- }
- return sManyRef;
- }
-
- /**
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- public Element getSSingleRef() {
- if (sSingleRef != null && sSingleRef.eIsProxy()) {
- InternalEObject oldSSingleRef = (InternalEObject)sSingleRef;
- sSingleRef = (Element)eResolveProxy(oldSSingleRef);
- if (sSingleRef != oldSSingleRef) {
- if (eNotificationRequired())
- eNotify(new ENotificationImpl(this, Notification.RESOLVE, ElementsPackage.STRICT_ELEMENT__SSINGLE_REF, oldSSingleRef, sSingleRef));
- }
- }
- return sSingleRef;
- }
-
- /**
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- public Element basicGetSSingleRef() {
- return sSingleRef;
- }
-
- /**
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- public void setSSingleRef(Element newSSingleRef) {
- Element oldSSingleRef = sSingleRef;
- sSingleRef = newSSingleRef;
- if (eNotificationRequired())
- eNotify(new ENotificationImpl(this, Notification.SET, ElementsPackage.STRICT_ELEMENT__SSINGLE_REF, oldSSingleRef, sSingleRef));
- }
-
- /**
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- public EList<StrictElement> getSManyFromSingleRef() {
- if (sManyFromSingleRef == null) {
- sManyFromSingleRef = new EObjectWithInverseResolvingEList<StrictElement>(StrictElement.class, this, ElementsPackage.STRICT_ELEMENT__SMANY_FROM_SINGLE_REF, ElementsPackage.STRICT_ELEMENT__SSINGLE_FROM_MANY_REF);
- }
- return sManyFromSingleRef;
- }
-
- /**
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- public StrictElement getSSingleFromManyRef() {
- if (sSingleFromManyRef != null && sSingleFromManyRef.eIsProxy()) {
- InternalEObject oldSSingleFromManyRef = (InternalEObject)sSingleFromManyRef;
- sSingleFromManyRef = (StrictElement)eResolveProxy(oldSSingleFromManyRef);
- if (sSingleFromManyRef != oldSSingleFromManyRef) {
- if (eNotificationRequired())
- eNotify(new ENotificationImpl(this, Notification.RESOLVE, ElementsPackage.STRICT_ELEMENT__SSINGLE_FROM_MANY_REF, oldSSingleFromManyRef, sSingleFromManyRef));
- }
- }
- return sSingleFromManyRef;
- }
-
- /**
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- public StrictElement basicGetSSingleFromManyRef() {
- return sSingleFromManyRef;
- }
-
- /**
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- public NotificationChain basicSetSSingleFromManyRef(StrictElement newSSingleFromManyRef, NotificationChain msgs) {
- StrictElement oldSSingleFromManyRef = sSingleFromManyRef;
- sSingleFromManyRef = newSSingleFromManyRef;
- if (eNotificationRequired()) {
- ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, ElementsPackage.STRICT_ELEMENT__SSINGLE_FROM_MANY_REF, oldSSingleFromManyRef, newSSingleFromManyRef);
- if (msgs == null) msgs = notification; else msgs.add(notification);
- }
- return msgs;
- }
-
- /**
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- public void setSSingleFromManyRef(StrictElement newSSingleFromManyRef) {
- if (newSSingleFromManyRef != sSingleFromManyRef) {
- NotificationChain msgs = null;
- if (sSingleFromManyRef != null)
- msgs = ((InternalEObject)sSingleFromManyRef).eInverseRemove(this, ElementsPackage.STRICT_ELEMENT__SMANY_FROM_SINGLE_REF, StrictElement.class, msgs);
- if (newSSingleFromManyRef != null)
- msgs = ((InternalEObject)newSSingleFromManyRef).eInverseAdd(this, ElementsPackage.STRICT_ELEMENT__SMANY_FROM_SINGLE_REF, StrictElement.class, msgs);
- msgs = basicSetSSingleFromManyRef(newSSingleFromManyRef, msgs);
- if (msgs != null) msgs.dispatch();
- }
- else if (eNotificationRequired())
- eNotify(new ENotificationImpl(this, Notification.SET, ElementsPackage.STRICT_ELEMENT__SSINGLE_FROM_MANY_REF, newSSingleFromManyRef, newSSingleFromManyRef));
- }
-
- /**
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- public EList<StrictElement> getSManyFromManyRef1() {
- if (sManyFromManyRef1 == null) {
- sManyFromManyRef1 = new EObjectWithInverseResolvingEList.ManyInverse<StrictElement>(StrictElement.class, this, ElementsPackage.STRICT_ELEMENT__SMANY_FROM_MANY_REF1, ElementsPackage.STRICT_ELEMENT__SMANY_FROM_MANY_REF2);
- }
- return sManyFromManyRef1;
- }
-
- /**
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- public EList<StrictElement> getSManyFromManyRef2() {
- if (sManyFromManyRef2 == null) {
- sManyFromManyRef2 = new EObjectWithInverseResolvingEList.ManyInverse<StrictElement>(StrictElement.class, this, ElementsPackage.STRICT_ELEMENT__SMANY_FROM_MANY_REF2, ElementsPackage.STRICT_ELEMENT__SMANY_FROM_MANY_REF1);
- }
- return sManyFromManyRef2;
- }
-
- /**
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- @SuppressWarnings("unchecked")
- @Override
- public NotificationChain eInverseAdd(InternalEObject otherEnd, int featureID, NotificationChain msgs) {
- switch (featureID) {
- case ElementsPackage.STRICT_ELEMENT__SMANY_FROM_SINGLE_REF:
- return ((InternalEList<InternalEObject>)(InternalEList<?>)getSManyFromSingleRef()).basicAdd(otherEnd, msgs);
- case ElementsPackage.STRICT_ELEMENT__SSINGLE_FROM_MANY_REF:
- if (sSingleFromManyRef != null)
- msgs = ((InternalEObject)sSingleFromManyRef).eInverseRemove(this, ElementsPackage.STRICT_ELEMENT__SMANY_FROM_SINGLE_REF, StrictElement.class, msgs);
- return basicSetSSingleFromManyRef((StrictElement)otherEnd, msgs);
- case ElementsPackage.STRICT_ELEMENT__SMANY_FROM_MANY_REF1:
- return ((InternalEList<InternalEObject>)(InternalEList<?>)getSManyFromManyRef1()).basicAdd(otherEnd, msgs);
- case ElementsPackage.STRICT_ELEMENT__SMANY_FROM_MANY_REF2:
- return ((InternalEList<InternalEObject>)(InternalEList<?>)getSManyFromManyRef2()).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 ElementsPackage.STRICT_ELEMENT__SMANY_CONTENT:
- return ((InternalEList<?>)getSManyContent()).basicRemove(otherEnd, msgs);
- case ElementsPackage.STRICT_ELEMENT__SSINGLE_CONTENT:
- return basicSetSSingleContent(null, msgs);
- case ElementsPackage.STRICT_ELEMENT__SMANY_FROM_SINGLE_REF:
- return ((InternalEList<?>)getSManyFromSingleRef()).basicRemove(otherEnd, msgs);
- case ElementsPackage.STRICT_ELEMENT__SSINGLE_FROM_MANY_REF:
- return basicSetSSingleFromManyRef(null, msgs);
- case ElementsPackage.STRICT_ELEMENT__SMANY_FROM_MANY_REF1:
- return ((InternalEList<?>)getSManyFromManyRef1()).basicRemove(otherEnd, msgs);
- case ElementsPackage.STRICT_ELEMENT__SMANY_FROM_MANY_REF2:
- return ((InternalEList<?>)getSManyFromManyRef2()).basicRemove(otherEnd, msgs);
- }
- return super.eInverseRemove(otherEnd, featureID, msgs);
- }
-
- /**
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- @Override
- public Object eGet(int featureID, boolean resolve, boolean coreType) {
- switch (featureID) {
- case ElementsPackage.STRICT_ELEMENT__SVALUE:
- return getSValue();
- case ElementsPackage.STRICT_ELEMENT__SVALUES:
- return getSValues();
- case ElementsPackage.STRICT_ELEMENT__SMANY_CONTENT:
- return getSManyContent();
- case ElementsPackage.STRICT_ELEMENT__SSINGLE_CONTENT:
- return getSSingleContent();
- case ElementsPackage.STRICT_ELEMENT__SMANY_REF:
- return getSManyRef();
- case ElementsPackage.STRICT_ELEMENT__SSINGLE_REF:
- if (resolve) return getSSingleRef();
- return basicGetSSingleRef();
- case ElementsPackage.STRICT_ELEMENT__SMANY_FROM_SINGLE_REF:
- return getSManyFromSingleRef();
- case ElementsPackage.STRICT_ELEMENT__SSINGLE_FROM_MANY_REF:
- if (resolve) return getSSingleFromManyRef();
- return basicGetSSingleFromManyRef();
- case ElementsPackage.STRICT_ELEMENT__SMANY_FROM_MANY_REF1:
- return getSManyFromManyRef1();
- case ElementsPackage.STRICT_ELEMENT__SMANY_FROM_MANY_REF2:
- return getSManyFromManyRef2();
- }
- 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 ElementsPackage.STRICT_ELEMENT__SVALUE:
- setSValue((Integer)newValue);
- return;
- case ElementsPackage.STRICT_ELEMENT__SVALUES:
- getSValues().clear();
- getSValues().addAll((Collection<? extends Integer>)newValue);
- return;
- case ElementsPackage.STRICT_ELEMENT__SMANY_CONTENT:
- getSManyContent().clear();
- getSManyContent().addAll((Collection<? extends Element>)newValue);
- return;
- case ElementsPackage.STRICT_ELEMENT__SSINGLE_CONTENT:
- setSSingleContent((Element)newValue);
- return;
- case ElementsPackage.STRICT_ELEMENT__SMANY_REF:
- getSManyRef().clear();
- getSManyRef().addAll((Collection<? extends Element>)newValue);
- return;
- case ElementsPackage.STRICT_ELEMENT__SSINGLE_REF:
- setSSingleRef((Element)newValue);
- return;
- case ElementsPackage.STRICT_ELEMENT__SMANY_FROM_SINGLE_REF:
- getSManyFromSingleRef().clear();
- getSManyFromSingleRef().addAll((Collection<? extends StrictElement>)newValue);
- return;
- case ElementsPackage.STRICT_ELEMENT__SSINGLE_FROM_MANY_REF:
- setSSingleFromManyRef((StrictElement)newValue);
- return;
- case ElementsPackage.STRICT_ELEMENT__SMANY_FROM_MANY_REF1:
- getSManyFromManyRef1().clear();
- getSManyFromManyRef1().addAll((Collection<? extends StrictElement>)newValue);
- return;
- case ElementsPackage.STRICT_ELEMENT__SMANY_FROM_MANY_REF2:
- getSManyFromManyRef2().clear();
- getSManyFromManyRef2().addAll((Collection<? extends StrictElement>)newValue);
- return;
- }
- super.eSet(featureID, newValue);
- }
-
- /**
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- @Override
- public void eUnset(int featureID) {
- switch (featureID) {
- case ElementsPackage.STRICT_ELEMENT__SVALUE:
- setSValue(SVALUE_EDEFAULT);
- return;
- case ElementsPackage.STRICT_ELEMENT__SVALUES:
- getSValues().clear();
- return;
- case ElementsPackage.STRICT_ELEMENT__SMANY_CONTENT:
- getSManyContent().clear();
- return;
- case ElementsPackage.STRICT_ELEMENT__SSINGLE_CONTENT:
- setSSingleContent((Element)null);
- return;
- case ElementsPackage.STRICT_ELEMENT__SMANY_REF:
- getSManyRef().clear();
- return;
- case ElementsPackage.STRICT_ELEMENT__SSINGLE_REF:
- setSSingleRef((Element)null);
- return;
- case ElementsPackage.STRICT_ELEMENT__SMANY_FROM_SINGLE_REF:
- getSManyFromSingleRef().clear();
- return;
- case ElementsPackage.STRICT_ELEMENT__SSINGLE_FROM_MANY_REF:
- setSSingleFromManyRef((StrictElement)null);
- return;
- case ElementsPackage.STRICT_ELEMENT__SMANY_FROM_MANY_REF1:
- getSManyFromManyRef1().clear();
- return;
- case ElementsPackage.STRICT_ELEMENT__SMANY_FROM_MANY_REF2:
- getSManyFromManyRef2().clear();
- return;
- }
- super.eUnset(featureID);
- }
-
- /**
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- @Override
- public boolean eIsSet(int featureID) {
- switch (featureID) {
- case ElementsPackage.STRICT_ELEMENT__SVALUE:
- return sValue != SVALUE_EDEFAULT;
- case ElementsPackage.STRICT_ELEMENT__SVALUES:
- return sValues != null && !sValues.isEmpty();
- case ElementsPackage.STRICT_ELEMENT__SMANY_CONTENT:
- return sManyContent != null && !sManyContent.isEmpty();
- case ElementsPackage.STRICT_ELEMENT__SSINGLE_CONTENT:
- return sSingleContent != null;
- case ElementsPackage.STRICT_ELEMENT__SMANY_REF:
- return sManyRef != null && !sManyRef.isEmpty();
- case ElementsPackage.STRICT_ELEMENT__SSINGLE_REF:
- return sSingleRef != null;
- case ElementsPackage.STRICT_ELEMENT__SMANY_FROM_SINGLE_REF:
- return sManyFromSingleRef != null && !sManyFromSingleRef.isEmpty();
- case ElementsPackage.STRICT_ELEMENT__SSINGLE_FROM_MANY_REF:
- return sSingleFromManyRef != null;
- case ElementsPackage.STRICT_ELEMENT__SMANY_FROM_MANY_REF1:
- return sManyFromManyRef1 != null && !sManyFromManyRef1.isEmpty();
- case ElementsPackage.STRICT_ELEMENT__SMANY_FROM_MANY_REF2:
- return sManyFromManyRef2 != null && !sManyFromManyRef2.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(" (sValue: ");
- result.append(sValue);
- result.append(", sValues: ");
- result.append(sValues);
- result.append(')');
- return result.toString();
- }
-
-} //StrictElementImpl
+/**
+ * <copyright>
+ *
+ * Copyright (c) 2010-2017 Thales Global Services S.A.S.
+ * 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:
+ * Thales Global Services S.A.S. - initial API and implementation
+ *
+ * </copyright>
+ */
+package org.eclipse.emf.diffmerge.tests.elements.Elements.impl;
+
+import java.util.Collection;
+
+import org.eclipse.emf.common.notify.Notification;
+import org.eclipse.emf.common.notify.NotificationChain;
+
+import org.eclipse.emf.common.util.EList;
+
+import org.eclipse.emf.diffmerge.tests.elements.Elements.Element;
+import org.eclipse.emf.diffmerge.tests.elements.Elements.ElementsPackage;
+import org.eclipse.emf.diffmerge.tests.elements.Elements.StrictElement;
+
+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.EDataTypeUniqueEList;
+import org.eclipse.emf.ecore.util.EObjectContainmentEList;
+import org.eclipse.emf.ecore.util.EObjectResolvingEList;
+import org.eclipse.emf.ecore.util.EObjectWithInverseResolvingEList;
+import org.eclipse.emf.ecore.util.InternalEList;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>Strict Element</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * <ul>
+ * <li>{@link org.eclipse.emf.diffmerge.tests.elements.Elements.impl.StrictElementImpl#getSValue <em>SValue</em>}</li>
+ * <li>{@link org.eclipse.emf.diffmerge.tests.elements.Elements.impl.StrictElementImpl#getSValues <em>SValues</em>}</li>
+ * <li>{@link org.eclipse.emf.diffmerge.tests.elements.Elements.impl.StrictElementImpl#getSManyContent <em>SMany Content</em>}</li>
+ * <li>{@link org.eclipse.emf.diffmerge.tests.elements.Elements.impl.StrictElementImpl#getSSingleContent <em>SSingle Content</em>}</li>
+ * <li>{@link org.eclipse.emf.diffmerge.tests.elements.Elements.impl.StrictElementImpl#getSManyRef <em>SMany Ref</em>}</li>
+ * <li>{@link org.eclipse.emf.diffmerge.tests.elements.Elements.impl.StrictElementImpl#getSSingleRef <em>SSingle Ref</em>}</li>
+ * <li>{@link org.eclipse.emf.diffmerge.tests.elements.Elements.impl.StrictElementImpl#getSManyFromSingleRef <em>SMany From Single Ref</em>}</li>
+ * <li>{@link org.eclipse.emf.diffmerge.tests.elements.Elements.impl.StrictElementImpl#getSSingleFromManyRef <em>SSingle From Many Ref</em>}</li>
+ * <li>{@link org.eclipse.emf.diffmerge.tests.elements.Elements.impl.StrictElementImpl#getSManyFromManyRef1 <em>SMany From Many Ref1</em>}</li>
+ * <li>{@link org.eclipse.emf.diffmerge.tests.elements.Elements.impl.StrictElementImpl#getSManyFromManyRef2 <em>SMany From Many Ref2</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @generated
+ */
+public class StrictElementImpl extends ElementImpl implements StrictElement {
+ /**
+ * The default value of the '{@link #getSValue() <em>SValue</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getSValue()
+ * @generated
+ * @ordered
+ */
+ protected static final int SVALUE_EDEFAULT = 0;
+
+ /**
+ * The cached value of the '{@link #getSValue() <em>SValue</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getSValue()
+ * @generated
+ * @ordered
+ */
+ protected int sValue = SVALUE_EDEFAULT;
+
+ /**
+ * The cached value of the '{@link #getSValues() <em>SValues</em>}' attribute list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getSValues()
+ * @generated
+ * @ordered
+ */
+ protected EList<Integer> sValues;
+
+ /**
+ * The cached value of the '{@link #getSManyContent() <em>SMany Content</em>}' containment reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getSManyContent()
+ * @generated
+ * @ordered
+ */
+ protected EList<Element> sManyContent;
+
+ /**
+ * The cached value of the '{@link #getSSingleContent() <em>SSingle Content</em>}' containment reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getSSingleContent()
+ * @generated
+ * @ordered
+ */
+ protected Element sSingleContent;
+
+ /**
+ * The cached value of the '{@link #getSManyRef() <em>SMany Ref</em>}' reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getSManyRef()
+ * @generated
+ * @ordered
+ */
+ protected EList<Element> sManyRef;
+
+ /**
+ * The cached value of the '{@link #getSSingleRef() <em>SSingle Ref</em>}' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getSSingleRef()
+ * @generated
+ * @ordered
+ */
+ protected Element sSingleRef;
+
+ /**
+ * The cached value of the '{@link #getSManyFromSingleRef() <em>SMany From Single Ref</em>}' reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getSManyFromSingleRef()
+ * @generated
+ * @ordered
+ */
+ protected EList<StrictElement> sManyFromSingleRef;
+
+ /**
+ * The cached value of the '{@link #getSSingleFromManyRef() <em>SSingle From Many Ref</em>}' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getSSingleFromManyRef()
+ * @generated
+ * @ordered
+ */
+ protected StrictElement sSingleFromManyRef;
+
+ /**
+ * The cached value of the '{@link #getSManyFromManyRef1() <em>SMany From Many Ref1</em>}' reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getSManyFromManyRef1()
+ * @generated
+ * @ordered
+ */
+ protected EList<StrictElement> sManyFromManyRef1;
+
+ /**
+ * The cached value of the '{@link #getSManyFromManyRef2() <em>SMany From Many Ref2</em>}' reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getSManyFromManyRef2()
+ * @generated
+ * @ordered
+ */
+ protected EList<StrictElement> sManyFromManyRef2;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected StrictElementImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ protected EClass eStaticClass() {
+ return ElementsPackage.Literals.STRICT_ELEMENT;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public int getSValue() {
+ return sValue;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void setSValue(int newSValue) {
+ int oldSValue = sValue;
+ sValue = newSValue;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, ElementsPackage.STRICT_ELEMENT__SVALUE, oldSValue, sValue));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EList<Integer> getSValues() {
+ if (sValues == null) {
+ sValues = new EDataTypeUniqueEList<Integer>(Integer.class, this, ElementsPackage.STRICT_ELEMENT__SVALUES);
+ }
+ return sValues;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EList<Element> getSManyContent() {
+ if (sManyContent == null) {
+ sManyContent = new EObjectContainmentEList<Element>(Element.class, this, ElementsPackage.STRICT_ELEMENT__SMANY_CONTENT);
+ }
+ return sManyContent;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public Element getSSingleContent() {
+ return sSingleContent;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public NotificationChain basicSetSSingleContent(Element newSSingleContent, NotificationChain msgs) {
+ Element oldSSingleContent = sSingleContent;
+ sSingleContent = newSSingleContent;
+ if (eNotificationRequired()) {
+ ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, ElementsPackage.STRICT_ELEMENT__SSINGLE_CONTENT, oldSSingleContent, newSSingleContent);
+ if (msgs == null) msgs = notification; else msgs.add(notification);
+ }
+ return msgs;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void setSSingleContent(Element newSSingleContent) {
+ if (newSSingleContent != sSingleContent) {
+ NotificationChain msgs = null;
+ if (sSingleContent != null)
+ msgs = ((InternalEObject)sSingleContent).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - ElementsPackage.STRICT_ELEMENT__SSINGLE_CONTENT, null, msgs);
+ if (newSSingleContent != null)
+ msgs = ((InternalEObject)newSSingleContent).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - ElementsPackage.STRICT_ELEMENT__SSINGLE_CONTENT, null, msgs);
+ msgs = basicSetSSingleContent(newSSingleContent, msgs);
+ if (msgs != null) msgs.dispatch();
+ }
+ else if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, ElementsPackage.STRICT_ELEMENT__SSINGLE_CONTENT, newSSingleContent, newSSingleContent));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EList<Element> getSManyRef() {
+ if (sManyRef == null) {
+ sManyRef = new EObjectResolvingEList<Element>(Element.class, this, ElementsPackage.STRICT_ELEMENT__SMANY_REF);
+ }
+ return sManyRef;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public Element getSSingleRef() {
+ if (sSingleRef != null && sSingleRef.eIsProxy()) {
+ InternalEObject oldSSingleRef = (InternalEObject)sSingleRef;
+ sSingleRef = (Element)eResolveProxy(oldSSingleRef);
+ if (sSingleRef != oldSSingleRef) {
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.RESOLVE, ElementsPackage.STRICT_ELEMENT__SSINGLE_REF, oldSSingleRef, sSingleRef));
+ }
+ }
+ return sSingleRef;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public Element basicGetSSingleRef() {
+ return sSingleRef;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void setSSingleRef(Element newSSingleRef) {
+ Element oldSSingleRef = sSingleRef;
+ sSingleRef = newSSingleRef;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, ElementsPackage.STRICT_ELEMENT__SSINGLE_REF, oldSSingleRef, sSingleRef));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EList<StrictElement> getSManyFromSingleRef() {
+ if (sManyFromSingleRef == null) {
+ sManyFromSingleRef = new EObjectWithInverseResolvingEList<StrictElement>(StrictElement.class, this, ElementsPackage.STRICT_ELEMENT__SMANY_FROM_SINGLE_REF, ElementsPackage.STRICT_ELEMENT__SSINGLE_FROM_MANY_REF);
+ }
+ return sManyFromSingleRef;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public StrictElement getSSingleFromManyRef() {
+ if (sSingleFromManyRef != null && sSingleFromManyRef.eIsProxy()) {
+ InternalEObject oldSSingleFromManyRef = (InternalEObject)sSingleFromManyRef;
+ sSingleFromManyRef = (StrictElement)eResolveProxy(oldSSingleFromManyRef);
+ if (sSingleFromManyRef != oldSSingleFromManyRef) {
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.RESOLVE, ElementsPackage.STRICT_ELEMENT__SSINGLE_FROM_MANY_REF, oldSSingleFromManyRef, sSingleFromManyRef));
+ }
+ }
+ return sSingleFromManyRef;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public StrictElement basicGetSSingleFromManyRef() {
+ return sSingleFromManyRef;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public NotificationChain basicSetSSingleFromManyRef(StrictElement newSSingleFromManyRef, NotificationChain msgs) {
+ StrictElement oldSSingleFromManyRef = sSingleFromManyRef;
+ sSingleFromManyRef = newSSingleFromManyRef;
+ if (eNotificationRequired()) {
+ ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, ElementsPackage.STRICT_ELEMENT__SSINGLE_FROM_MANY_REF, oldSSingleFromManyRef, newSSingleFromManyRef);
+ if (msgs == null) msgs = notification; else msgs.add(notification);
+ }
+ return msgs;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void setSSingleFromManyRef(StrictElement newSSingleFromManyRef) {
+ if (newSSingleFromManyRef != sSingleFromManyRef) {
+ NotificationChain msgs = null;
+ if (sSingleFromManyRef != null)
+ msgs = ((InternalEObject)sSingleFromManyRef).eInverseRemove(this, ElementsPackage.STRICT_ELEMENT__SMANY_FROM_SINGLE_REF, StrictElement.class, msgs);
+ if (newSSingleFromManyRef != null)
+ msgs = ((InternalEObject)newSSingleFromManyRef).eInverseAdd(this, ElementsPackage.STRICT_ELEMENT__SMANY_FROM_SINGLE_REF, StrictElement.class, msgs);
+ msgs = basicSetSSingleFromManyRef(newSSingleFromManyRef, msgs);
+ if (msgs != null) msgs.dispatch();
+ }
+ else if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, ElementsPackage.STRICT_ELEMENT__SSINGLE_FROM_MANY_REF, newSSingleFromManyRef, newSSingleFromManyRef));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EList<StrictElement> getSManyFromManyRef1() {
+ if (sManyFromManyRef1 == null) {
+ sManyFromManyRef1 = new EObjectWithInverseResolvingEList.ManyInverse<StrictElement>(StrictElement.class, this, ElementsPackage.STRICT_ELEMENT__SMANY_FROM_MANY_REF1, ElementsPackage.STRICT_ELEMENT__SMANY_FROM_MANY_REF2);
+ }
+ return sManyFromManyRef1;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EList<StrictElement> getSManyFromManyRef2() {
+ if (sManyFromManyRef2 == null) {
+ sManyFromManyRef2 = new EObjectWithInverseResolvingEList.ManyInverse<StrictElement>(StrictElement.class, this, ElementsPackage.STRICT_ELEMENT__SMANY_FROM_MANY_REF2, ElementsPackage.STRICT_ELEMENT__SMANY_FROM_MANY_REF1);
+ }
+ return sManyFromManyRef2;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @SuppressWarnings("unchecked")
+ @Override
+ public NotificationChain eInverseAdd(InternalEObject otherEnd, int featureID, NotificationChain msgs) {
+ switch (featureID) {
+ case ElementsPackage.STRICT_ELEMENT__SMANY_FROM_SINGLE_REF:
+ return ((InternalEList<InternalEObject>)(InternalEList<?>)getSManyFromSingleRef()).basicAdd(otherEnd, msgs);
+ case ElementsPackage.STRICT_ELEMENT__SSINGLE_FROM_MANY_REF:
+ if (sSingleFromManyRef != null)
+ msgs = ((InternalEObject)sSingleFromManyRef).eInverseRemove(this, ElementsPackage.STRICT_ELEMENT__SMANY_FROM_SINGLE_REF, StrictElement.class, msgs);
+ return basicSetSSingleFromManyRef((StrictElement)otherEnd, msgs);
+ case ElementsPackage.STRICT_ELEMENT__SMANY_FROM_MANY_REF1:
+ return ((InternalEList<InternalEObject>)(InternalEList<?>)getSManyFromManyRef1()).basicAdd(otherEnd, msgs);
+ case ElementsPackage.STRICT_ELEMENT__SMANY_FROM_MANY_REF2:
+ return ((InternalEList<InternalEObject>)(InternalEList<?>)getSManyFromManyRef2()).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 ElementsPackage.STRICT_ELEMENT__SMANY_CONTENT:
+ return ((InternalEList<?>)getSManyContent()).basicRemove(otherEnd, msgs);
+ case ElementsPackage.STRICT_ELEMENT__SSINGLE_CONTENT:
+ return basicSetSSingleContent(null, msgs);
+ case ElementsPackage.STRICT_ELEMENT__SMANY_FROM_SINGLE_REF:
+ return ((InternalEList<?>)getSManyFromSingleRef()).basicRemove(otherEnd, msgs);
+ case ElementsPackage.STRICT_ELEMENT__SSINGLE_FROM_MANY_REF:
+ return basicSetSSingleFromManyRef(null, msgs);
+ case ElementsPackage.STRICT_ELEMENT__SMANY_FROM_MANY_REF1:
+ return ((InternalEList<?>)getSManyFromManyRef1()).basicRemove(otherEnd, msgs);
+ case ElementsPackage.STRICT_ELEMENT__SMANY_FROM_MANY_REF2:
+ return ((InternalEList<?>)getSManyFromManyRef2()).basicRemove(otherEnd, msgs);
+ }
+ return super.eInverseRemove(otherEnd, featureID, msgs);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Object eGet(int featureID, boolean resolve, boolean coreType) {
+ switch (featureID) {
+ case ElementsPackage.STRICT_ELEMENT__SVALUE:
+ return getSValue();
+ case ElementsPackage.STRICT_ELEMENT__SVALUES:
+ return getSValues();
+ case ElementsPackage.STRICT_ELEMENT__SMANY_CONTENT:
+ return getSManyContent();
+ case ElementsPackage.STRICT_ELEMENT__SSINGLE_CONTENT:
+ return getSSingleContent();
+ case ElementsPackage.STRICT_ELEMENT__SMANY_REF:
+ return getSManyRef();
+ case ElementsPackage.STRICT_ELEMENT__SSINGLE_REF:
+ if (resolve) return getSSingleRef();
+ return basicGetSSingleRef();
+ case ElementsPackage.STRICT_ELEMENT__SMANY_FROM_SINGLE_REF:
+ return getSManyFromSingleRef();
+ case ElementsPackage.STRICT_ELEMENT__SSINGLE_FROM_MANY_REF:
+ if (resolve) return getSSingleFromManyRef();
+ return basicGetSSingleFromManyRef();
+ case ElementsPackage.STRICT_ELEMENT__SMANY_FROM_MANY_REF1:
+ return getSManyFromManyRef1();
+ case ElementsPackage.STRICT_ELEMENT__SMANY_FROM_MANY_REF2:
+ return getSManyFromManyRef2();
+ }
+ 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 ElementsPackage.STRICT_ELEMENT__SVALUE:
+ setSValue((Integer)newValue);
+ return;
+ case ElementsPackage.STRICT_ELEMENT__SVALUES:
+ getSValues().clear();
+ getSValues().addAll((Collection<? extends Integer>)newValue);
+ return;
+ case ElementsPackage.STRICT_ELEMENT__SMANY_CONTENT:
+ getSManyContent().clear();
+ getSManyContent().addAll((Collection<? extends Element>)newValue);
+ return;
+ case ElementsPackage.STRICT_ELEMENT__SSINGLE_CONTENT:
+ setSSingleContent((Element)newValue);
+ return;
+ case ElementsPackage.STRICT_ELEMENT__SMANY_REF:
+ getSManyRef().clear();
+ getSManyRef().addAll((Collection<? extends Element>)newValue);
+ return;
+ case ElementsPackage.STRICT_ELEMENT__SSINGLE_REF:
+ setSSingleRef((Element)newValue);
+ return;
+ case ElementsPackage.STRICT_ELEMENT__SMANY_FROM_SINGLE_REF:
+ getSManyFromSingleRef().clear();
+ getSManyFromSingleRef().addAll((Collection<? extends StrictElement>)newValue);
+ return;
+ case ElementsPackage.STRICT_ELEMENT__SSINGLE_FROM_MANY_REF:
+ setSSingleFromManyRef((StrictElement)newValue);
+ return;
+ case ElementsPackage.STRICT_ELEMENT__SMANY_FROM_MANY_REF1:
+ getSManyFromManyRef1().clear();
+ getSManyFromManyRef1().addAll((Collection<? extends StrictElement>)newValue);
+ return;
+ case ElementsPackage.STRICT_ELEMENT__SMANY_FROM_MANY_REF2:
+ getSManyFromManyRef2().clear();
+ getSManyFromManyRef2().addAll((Collection<? extends StrictElement>)newValue);
+ return;
+ }
+ super.eSet(featureID, newValue);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void eUnset(int featureID) {
+ switch (featureID) {
+ case ElementsPackage.STRICT_ELEMENT__SVALUE:
+ setSValue(SVALUE_EDEFAULT);
+ return;
+ case ElementsPackage.STRICT_ELEMENT__SVALUES:
+ getSValues().clear();
+ return;
+ case ElementsPackage.STRICT_ELEMENT__SMANY_CONTENT:
+ getSManyContent().clear();
+ return;
+ case ElementsPackage.STRICT_ELEMENT__SSINGLE_CONTENT:
+ setSSingleContent((Element)null);
+ return;
+ case ElementsPackage.STRICT_ELEMENT__SMANY_REF:
+ getSManyRef().clear();
+ return;
+ case ElementsPackage.STRICT_ELEMENT__SSINGLE_REF:
+ setSSingleRef((Element)null);
+ return;
+ case ElementsPackage.STRICT_ELEMENT__SMANY_FROM_SINGLE_REF:
+ getSManyFromSingleRef().clear();
+ return;
+ case ElementsPackage.STRICT_ELEMENT__SSINGLE_FROM_MANY_REF:
+ setSSingleFromManyRef((StrictElement)null);
+ return;
+ case ElementsPackage.STRICT_ELEMENT__SMANY_FROM_MANY_REF1:
+ getSManyFromManyRef1().clear();
+ return;
+ case ElementsPackage.STRICT_ELEMENT__SMANY_FROM_MANY_REF2:
+ getSManyFromManyRef2().clear();
+ return;
+ }
+ super.eUnset(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public boolean eIsSet(int featureID) {
+ switch (featureID) {
+ case ElementsPackage.STRICT_ELEMENT__SVALUE:
+ return sValue != SVALUE_EDEFAULT;
+ case ElementsPackage.STRICT_ELEMENT__SVALUES:
+ return sValues != null && !sValues.isEmpty();
+ case ElementsPackage.STRICT_ELEMENT__SMANY_CONTENT:
+ return sManyContent != null && !sManyContent.isEmpty();
+ case ElementsPackage.STRICT_ELEMENT__SSINGLE_CONTENT:
+ return sSingleContent != null;
+ case ElementsPackage.STRICT_ELEMENT__SMANY_REF:
+ return sManyRef != null && !sManyRef.isEmpty();
+ case ElementsPackage.STRICT_ELEMENT__SSINGLE_REF:
+ return sSingleRef != null;
+ case ElementsPackage.STRICT_ELEMENT__SMANY_FROM_SINGLE_REF:
+ return sManyFromSingleRef != null && !sManyFromSingleRef.isEmpty();
+ case ElementsPackage.STRICT_ELEMENT__SSINGLE_FROM_MANY_REF:
+ return sSingleFromManyRef != null;
+ case ElementsPackage.STRICT_ELEMENT__SMANY_FROM_MANY_REF1:
+ return sManyFromManyRef1 != null && !sManyFromManyRef1.isEmpty();
+ case ElementsPackage.STRICT_ELEMENT__SMANY_FROM_MANY_REF2:
+ return sManyFromManyRef2 != null && !sManyFromManyRef2.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(" (sValue: ");
+ result.append(sValue);
+ result.append(", sValues: ");
+ result.append(sValues);
+ result.append(')');
+ return result.toString();
+ }
+
+} //StrictElementImpl
diff --git a/tests/org.eclipse.emf.diffmerge.tests.elements/src/org/eclipse/emf/diffmerge/tests/elements/Elements/util/ElementsAdapterFactory.java b/tests/org.eclipse.emf.diffmerge.tests.elements/src/org/eclipse/emf/diffmerge/tests/elements/Elements/util/ElementsAdapterFactory.java
index 1282ff01..3a5557b9 100644
--- a/tests/org.eclipse.emf.diffmerge.tests.elements/src/org/eclipse/emf/diffmerge/tests/elements/Elements/util/ElementsAdapterFactory.java
+++ b/tests/org.eclipse.emf.diffmerge.tests.elements/src/org/eclipse/emf/diffmerge/tests/elements/Elements/util/ElementsAdapterFactory.java
@@ -1,258 +1,258 @@
-/**
- * <copyright>
- *
- * Copyright (c) 2010-2016 Thales Global Services S.A.S.
- * 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:
- * Thales Global Services S.A.S. - initial API and implementation
- *
- * </copyright>
- */
-package org.eclipse.emf.diffmerge.tests.elements.Elements.util;
-
-import org.eclipse.emf.common.notify.Adapter;
-import org.eclipse.emf.common.notify.Notifier;
-
-import org.eclipse.emf.common.notify.impl.AdapterFactoryImpl;
-
-import org.eclipse.emf.diffmerge.tests.elements.Elements.*;
-
-import org.eclipse.emf.ecore.EObject;
-
-/**
- * <!-- begin-user-doc -->
- * The <b>Adapter Factory</b> for the model.
- * It provides an adapter <code>createXXX</code> method for each class of the model.
- * <!-- end-user-doc -->
- * @see org.eclipse.emf.diffmerge.tests.elements.Elements.ElementsPackage
- * @generated
- */
-public class ElementsAdapterFactory extends AdapterFactoryImpl {
- /**
- * The cached model package.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- protected static ElementsPackage modelPackage;
-
- /**
- * Creates an instance of the adapter factory.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- public ElementsAdapterFactory() {
- if (modelPackage == null) {
- modelPackage = ElementsPackage.eINSTANCE;
- }
- }
-
- /**
- * Returns whether this factory is applicable for the type of the object.
- * <!-- begin-user-doc -->
- * This implementation returns <code>true</code> if the object is either the model's package or is an instance object of the model.
- * <!-- end-user-doc -->
- * @return whether this factory is applicable for the type of the object.
- * @generated
- */
- @Override
- public boolean isFactoryForType(Object object) {
- if (object == modelPackage) {
- return true;
- }
- if (object instanceof EObject) {
- return ((EObject)object).eClass().getEPackage() == modelPackage;
- }
- return false;
- }
-
- /**
- * The switch that delegates to the <code>createXXX</code> methods.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- protected ElementsSwitch<Adapter> modelSwitch =
- new ElementsSwitch<Adapter>() {
- @Override
- public Adapter caseIdentifiedElement(IdentifiedElement object) {
- return createIdentifiedElementAdapter();
- }
- @Override
- public Adapter caseNamedElement(NamedElement object) {
- return createNamedElementAdapter();
- }
- @Override
- public Adapter caseRoot(Root object) {
- return createRootAdapter();
- }
- @Override
- public Adapter caseElement(Element object) {
- return createElementAdapter();
- }
- @Override
- public Adapter caseStrictElement(StrictElement object) {
- return createStrictElementAdapter();
- }
- @Override
- public Adapter caseNode(Node object) {
- return createNodeAdapter();
- }
- @Override
- public Adapter caseEdge(Edge object) {
- return createEdgeAdapter();
- }
- @Override
- public Adapter caseReferencingNode(ReferencingNode object) {
- return createReferencingNodeAdapter();
- }
- @Override
- public Adapter defaultCase(EObject object) {
- return createEObjectAdapter();
- }
- };
-
- /**
- * Creates an adapter for the <code>target</code>.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @param target the object to adapt.
- * @return the adapter for the <code>target</code>.
- * @generated
- */
- @Override
- public Adapter createAdapter(Notifier target) {
- return modelSwitch.doSwitch((EObject)target);
- }
-
-
- /**
- * Creates a new adapter for an object of class '{@link org.eclipse.emf.diffmerge.tests.elements.Elements.IdentifiedElement <em>Identified Element</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.diffmerge.tests.elements.Elements.IdentifiedElement
- * @generated
- */
- public Adapter createIdentifiedElementAdapter() {
- return null;
- }
-
- /**
- * Creates a new adapter for an object of class '{@link org.eclipse.emf.diffmerge.tests.elements.Elements.NamedElement <em>Named Element</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.diffmerge.tests.elements.Elements.NamedElement
- * @generated
- */
- public Adapter createNamedElementAdapter() {
- return null;
- }
-
- /**
- * Creates a new adapter for an object of class '{@link org.eclipse.emf.diffmerge.tests.elements.Elements.Root <em>Root</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.diffmerge.tests.elements.Elements.Root
- * @generated
- */
- public Adapter createRootAdapter() {
- return null;
- }
-
- /**
- * Creates a new adapter for an object of class '{@link org.eclipse.emf.diffmerge.tests.elements.Elements.Element <em>Element</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.diffmerge.tests.elements.Elements.Element
- * @generated
- */
- public Adapter createElementAdapter() {
- return null;
- }
-
- /**
- * Creates a new adapter for an object of class '{@link org.eclipse.emf.diffmerge.tests.elements.Elements.StrictElement <em>Strict Element</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.diffmerge.tests.elements.Elements.StrictElement
- * @generated
- */
- public Adapter createStrictElementAdapter() {
- return null;
- }
-
- /**
- * Creates a new adapter for an object of class '{@link org.eclipse.emf.diffmerge.tests.elements.Elements.Node <em>Node</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.diffmerge.tests.elements.Elements.Node
- * @generated
- */
- public Adapter createNodeAdapter() {
- return null;
- }
-
- /**
- * Creates a new adapter for an object of class '{@link org.eclipse.emf.diffmerge.tests.elements.Elements.Edge <em>Edge</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.diffmerge.tests.elements.Elements.Edge
- * @generated
- */
- public Adapter createEdgeAdapter() {
- return null;
- }
-
- /**
- * Creates a new adapter for an object of class '{@link org.eclipse.emf.diffmerge.tests.elements.Elements.ReferencingNode <em>Referencing Node</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.diffmerge.tests.elements.Elements.ReferencingNode
- * @generated
- */
- public Adapter createReferencingNodeAdapter() {
- return null;
- }
-
- /**
- * Creates a new adapter for the default case.
- * <!-- begin-user-doc -->
- * This default implementation returns null.
- * <!-- end-user-doc -->
- * @return the new adapter.
- * @generated
- */
- public Adapter createEObjectAdapter() {
- return null;
- }
-
-} //ElementsAdapterFactory
+/**
+ * <copyright>
+ *
+ * Copyright (c) 2010-2017 Thales Global Services S.A.S.
+ * 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:
+ * Thales Global Services S.A.S. - initial API and implementation
+ *
+ * </copyright>
+ */
+package org.eclipse.emf.diffmerge.tests.elements.Elements.util;
+
+import org.eclipse.emf.common.notify.Adapter;
+import org.eclipse.emf.common.notify.Notifier;
+
+import org.eclipse.emf.common.notify.impl.AdapterFactoryImpl;
+
+import org.eclipse.emf.diffmerge.tests.elements.Elements.*;
+
+import org.eclipse.emf.ecore.EObject;
+
+/**
+ * <!-- begin-user-doc -->
+ * The <b>Adapter Factory</b> for the model.
+ * It provides an adapter <code>createXXX</code> method for each class of the model.
+ * <!-- end-user-doc -->
+ * @see org.eclipse.emf.diffmerge.tests.elements.Elements.ElementsPackage
+ * @generated
+ */
+public class ElementsAdapterFactory extends AdapterFactoryImpl {
+ /**
+ * The cached model package.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected static ElementsPackage modelPackage;
+
+ /**
+ * Creates an instance of the adapter factory.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public ElementsAdapterFactory() {
+ if (modelPackage == null) {
+ modelPackage = ElementsPackage.eINSTANCE;
+ }
+ }
+
+ /**
+ * Returns whether this factory is applicable for the type of the object.
+ * <!-- begin-user-doc -->
+ * This implementation returns <code>true</code> if the object is either the model's package or is an instance object of the model.
+ * <!-- end-user-doc -->
+ * @return whether this factory is applicable for the type of the object.
+ * @generated
+ */
+ @Override
+ public boolean isFactoryForType(Object object) {
+ if (object == modelPackage) {
+ return true;
+ }
+ if (object instanceof EObject) {
+ return ((EObject)object).eClass().getEPackage() == modelPackage;
+ }
+ return false;
+ }
+
+ /**
+ * The switch that delegates to the <code>createXXX</code> methods.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected ElementsSwitch<Adapter> modelSwitch =
+ new ElementsSwitch<Adapter>() {
+ @Override
+ public Adapter caseIdentifiedElement(IdentifiedElement object) {
+ return createIdentifiedElementAdapter();
+ }
+ @Override
+ public Adapter caseNamedElement(NamedElement object) {
+ return createNamedElementAdapter();
+ }
+ @Override
+ public Adapter caseRoot(Root object) {
+ return createRootAdapter();
+ }
+ @Override
+ public Adapter caseElement(Element object) {
+ return createElementAdapter();
+ }
+ @Override
+ public Adapter caseStrictElement(StrictElement object) {
+ return createStrictElementAdapter();
+ }
+ @Override
+ public Adapter caseNode(Node object) {
+ return createNodeAdapter();
+ }
+ @Override
+ public Adapter caseEdge(Edge object) {
+ return createEdgeAdapter();
+ }
+ @Override
+ public Adapter caseReferencingNode(ReferencingNode object) {
+ return createReferencingNodeAdapter();
+ }
+ @Override
+ public Adapter defaultCase(EObject object) {
+ return createEObjectAdapter();
+ }
+ };
+
+ /**
+ * Creates an adapter for the <code>target</code>.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param target the object to adapt.
+ * @return the adapter for the <code>target</code>.
+ * @generated
+ */
+ @Override
+ public Adapter createAdapter(Notifier target) {
+ return modelSwitch.doSwitch((EObject)target);
+ }
+
+
+ /**
+ * Creates a new adapter for an object of class '{@link org.eclipse.emf.diffmerge.tests.elements.Elements.IdentifiedElement <em>Identified Element</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.diffmerge.tests.elements.Elements.IdentifiedElement
+ * @generated
+ */
+ public Adapter createIdentifiedElementAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link org.eclipse.emf.diffmerge.tests.elements.Elements.NamedElement <em>Named Element</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.diffmerge.tests.elements.Elements.NamedElement
+ * @generated
+ */
+ public Adapter createNamedElementAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link org.eclipse.emf.diffmerge.tests.elements.Elements.Root <em>Root</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.diffmerge.tests.elements.Elements.Root
+ * @generated
+ */
+ public Adapter createRootAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link org.eclipse.emf.diffmerge.tests.elements.Elements.Element <em>Element</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.diffmerge.tests.elements.Elements.Element
+ * @generated
+ */
+ public Adapter createElementAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link org.eclipse.emf.diffmerge.tests.elements.Elements.StrictElement <em>Strict Element</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.diffmerge.tests.elements.Elements.StrictElement
+ * @generated
+ */
+ public Adapter createStrictElementAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link org.eclipse.emf.diffmerge.tests.elements.Elements.Node <em>Node</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.diffmerge.tests.elements.Elements.Node
+ * @generated
+ */
+ public Adapter createNodeAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link org.eclipse.emf.diffmerge.tests.elements.Elements.Edge <em>Edge</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.diffmerge.tests.elements.Elements.Edge
+ * @generated
+ */
+ public Adapter createEdgeAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link org.eclipse.emf.diffmerge.tests.elements.Elements.ReferencingNode <em>Referencing Node</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.diffmerge.tests.elements.Elements.ReferencingNode
+ * @generated
+ */
+ public Adapter createReferencingNodeAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for the default case.
+ * <!-- begin-user-doc -->
+ * This default implementation returns null.
+ * <!-- end-user-doc -->
+ * @return the new adapter.
+ * @generated
+ */
+ public Adapter createEObjectAdapter() {
+ return null;
+ }
+
+} //ElementsAdapterFactory
diff --git a/tests/org.eclipse.emf.diffmerge.tests.elements/src/org/eclipse/emf/diffmerge/tests/elements/Elements/util/ElementsSwitch.java b/tests/org.eclipse.emf.diffmerge.tests.elements/src/org/eclipse/emf/diffmerge/tests/elements/Elements/util/ElementsSwitch.java
index 53cc22e7..bbd0c5b1 100644
--- a/tests/org.eclipse.emf.diffmerge.tests.elements/src/org/eclipse/emf/diffmerge/tests/elements/Elements/util/ElementsSwitch.java
+++ b/tests/org.eclipse.emf.diffmerge.tests.elements/src/org/eclipse/emf/diffmerge/tests/elements/Elements/util/ElementsSwitch.java
@@ -1,299 +1,299 @@
-/**
- * <copyright>
- *
- * Copyright (c) 2010-2016 Thales Global Services S.A.S.
- * 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:
- * Thales Global Services S.A.S. - initial API and implementation
- *
- * </copyright>
- */
-package org.eclipse.emf.diffmerge.tests.elements.Elements.util;
-
-import java.util.List;
-
-import org.eclipse.emf.diffmerge.tests.elements.Elements.*;
-
-import org.eclipse.emf.ecore.EClass;
-import org.eclipse.emf.ecore.EObject;
-
-/**
- * <!-- begin-user-doc -->
- * The <b>Switch</b> for the model's inheritance hierarchy.
- * It supports the call {@link #doSwitch(EObject) doSwitch(object)}
- * to invoke the <code>caseXXX</code> method for each class of the model,
- * starting with the actual class of the object
- * and proceeding up the inheritance hierarchy
- * until a non-null result is returned,
- * which is the result of the switch.
- * <!-- end-user-doc -->
- * @see org.eclipse.emf.diffmerge.tests.elements.Elements.ElementsPackage
- * @generated
- */
-public class ElementsSwitch<T> {
- /**
- * The cached model package
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- protected static ElementsPackage modelPackage;
-
- /**
- * Creates an instance of the switch.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- public ElementsSwitch() {
- if (modelPackage == null) {
- modelPackage = ElementsPackage.eINSTANCE;
- }
- }
-
- /**
- * Calls <code>caseXXX</code> for each class of the model until one returns a non null result; it yields that result.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @return the first non-null result returned by a <code>caseXXX</code> call.
- * @generated
- */
- public T doSwitch(EObject theEObject) {
- return doSwitch(theEObject.eClass(), theEObject);
- }
-
- /**
- * Calls <code>caseXXX</code> for each class of the model until one returns a non null result; it yields that result.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @return the first non-null result returned by a <code>caseXXX</code> call.
- * @generated
- */
- protected T doSwitch(EClass theEClass, EObject theEObject) {
- if (theEClass.eContainer() == modelPackage) {
- return doSwitch(theEClass.getClassifierID(), theEObject);
- }
- else {
- List<EClass> eSuperTypes = theEClass.getESuperTypes();
- return
- eSuperTypes.isEmpty() ?
- defaultCase(theEObject) :
- doSwitch(eSuperTypes.get(0), theEObject);
- }
- }
-
- /**
- * Calls <code>caseXXX</code> for each class of the model until one returns a non null result; it yields that result.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @return the first non-null result returned by a <code>caseXXX</code> call.
- * @generated
- */
- protected T doSwitch(int classifierID, EObject theEObject) {
- switch (classifierID) {
- case ElementsPackage.IDENTIFIED_ELEMENT: {
- IdentifiedElement identifiedElement = (IdentifiedElement)theEObject;
- T result = caseIdentifiedElement(identifiedElement);
- if (result == null) result = defaultCase(theEObject);
- return result;
- }
- case ElementsPackage.NAMED_ELEMENT: {
- NamedElement namedElement = (NamedElement)theEObject;
- T result = caseNamedElement(namedElement);
- if (result == null) result = caseIdentifiedElement(namedElement);
- if (result == null) result = defaultCase(theEObject);
- return result;
- }
- case ElementsPackage.ROOT: {
- Root root = (Root)theEObject;
- T result = caseRoot(root);
- if (result == null) result = caseIdentifiedElement(root);
- if (result == null) result = defaultCase(theEObject);
- return result;
- }
- case ElementsPackage.ELEMENT: {
- Element element = (Element)theEObject;
- T result = caseElement(element);
- if (result == null) result = caseNamedElement(element);
- if (result == null) result = caseIdentifiedElement(element);
- if (result == null) result = defaultCase(theEObject);
- return result;
- }
- case ElementsPackage.STRICT_ELEMENT: {
- StrictElement strictElement = (StrictElement)theEObject;
- T result = caseStrictElement(strictElement);
- if (result == null) result = caseElement(strictElement);
- if (result == null) result = caseNamedElement(strictElement);
- if (result == null) result = caseIdentifiedElement(strictElement);
- if (result == null) result = defaultCase(theEObject);
- return result;
- }
- case ElementsPackage.NODE: {
- Node node = (Node)theEObject;
- T result = caseNode(node);
- if (result == null) result = caseNamedElement(node);
- if (result == null) result = caseIdentifiedElement(node);
- if (result == null) result = defaultCase(theEObject);
- return result;
- }
- case ElementsPackage.EDGE: {
- Edge edge = (Edge)theEObject;
- T result = caseEdge(edge);
- if (result == null) result = caseNamedElement(edge);
- if (result == null) result = caseIdentifiedElement(edge);
- if (result == null) result = defaultCase(theEObject);
- return result;
- }
- case ElementsPackage.REFERENCING_NODE: {
- ReferencingNode referencingNode = (ReferencingNode)theEObject;
- T result = caseReferencingNode(referencingNode);
- if (result == null) result = caseNode(referencingNode);
- if (result == null) result = caseNamedElement(referencingNode);
- if (result == null) result = caseIdentifiedElement(referencingNode);
- if (result == null) result = defaultCase(theEObject);
- return result;
- }
- default: return defaultCase(theEObject);
- }
- }
-
- /**
- * Returns the result of interpreting the object as an instance of '<em>Identified Element</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>Identified Element</em>'.
- * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
- * @generated
- */
- public T caseIdentifiedElement(IdentifiedElement object) {
- return null;
- }
-
- /**
- * Returns the result of interpreting the object as an instance of '<em>Named Element</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>Named Element</em>'.
- * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
- * @generated
- */
- public T caseNamedElement(NamedElement object) {
- return null;
- }
-
- /**
- * Returns the result of interpreting the object as an instance of '<em>Root</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>Root</em>'.
- * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
- * @generated
- */
- public T caseRoot(Root object) {
- return null;
- }
-
- /**
- * Returns the result of interpreting the object as an instance of '<em>Element</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>Element</em>'.
- * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
- * @generated
- */
- public T caseElement(Element object) {
- return null;
- }
-
- /**
- * Returns the result of interpreting the object as an instance of '<em>Strict Element</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>Strict Element</em>'.
- * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
- * @generated
- */
- public T caseStrictElement(StrictElement object) {
- return null;
- }
-
- /**
- * Returns the result of interpreting the object as an instance of '<em>Node</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</em>'.
- * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
- * @generated
- */
- public T caseNode(Node object) {
- return null;
- }
-
- /**
- * Returns the result of interpreting the object as an instance of '<em>Edge</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>Edge</em>'.
- * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
- * @generated
- */
- public T caseEdge(Edge object) {
- return null;
- }
-
- /**
- * Returns the result of interpreting the object as an instance of '<em>Referencing Node</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>Referencing Node</em>'.
- * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
- * @generated
- */
- public T caseReferencingNode(ReferencingNode object) {
- return null;
- }
-
- /**
- * Returns the result of interpreting the object as an instance of '<em>EObject</em>'.
- * <!-- begin-user-doc -->
- * This implementation returns null;
- * returning a non-null result will terminate the switch, but this is the last case anyway.
- * <!-- end-user-doc -->
- * @param object the target of the switch.
- * @return the result of interpreting the object as an instance of '<em>EObject</em>'.
- * @see #doSwitch(org.eclipse.emf.ecore.EObject)
- * @generated
- */
- public T defaultCase(EObject object) {
- return null;
- }
-
-} //ElementsSwitch
+/**
+ * <copyright>
+ *
+ * Copyright (c) 2010-2017 Thales Global Services S.A.S.
+ * 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:
+ * Thales Global Services S.A.S. - initial API and implementation
+ *
+ * </copyright>
+ */
+package org.eclipse.emf.diffmerge.tests.elements.Elements.util;
+
+import java.util.List;
+
+import org.eclipse.emf.diffmerge.tests.elements.Elements.*;
+
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.EObject;
+
+/**
+ * <!-- begin-user-doc -->
+ * The <b>Switch</b> for the model's inheritance hierarchy.
+ * It supports the call {@link #doSwitch(EObject) doSwitch(object)}
+ * to invoke the <code>caseXXX</code> method for each class of the model,
+ * starting with the actual class of the object
+ * and proceeding up the inheritance hierarchy
+ * until a non-null result is returned,
+ * which is the result of the switch.
+ * <!-- end-user-doc -->
+ * @see org.eclipse.emf.diffmerge.tests.elements.Elements.ElementsPackage
+ * @generated
+ */
+public class ElementsSwitch<T> {
+ /**
+ * The cached model package
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected static ElementsPackage modelPackage;
+
+ /**
+ * Creates an instance of the switch.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public ElementsSwitch() {
+ if (modelPackage == null) {
+ modelPackage = ElementsPackage.eINSTANCE;
+ }
+ }
+
+ /**
+ * Calls <code>caseXXX</code> for each class of the model until one returns a non null result; it yields that result.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the first non-null result returned by a <code>caseXXX</code> call.
+ * @generated
+ */
+ public T doSwitch(EObject theEObject) {
+ return doSwitch(theEObject.eClass(), theEObject);
+ }
+
+ /**
+ * Calls <code>caseXXX</code> for each class of the model until one returns a non null result; it yields that result.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the first non-null result returned by a <code>caseXXX</code> call.
+ * @generated
+ */
+ protected T doSwitch(EClass theEClass, EObject theEObject) {
+ if (theEClass.eContainer() == modelPackage) {
+ return doSwitch(theEClass.getClassifierID(), theEObject);
+ }
+ else {
+ List<EClass> eSuperTypes = theEClass.getESuperTypes();
+ return
+ eSuperTypes.isEmpty() ?
+ defaultCase(theEObject) :
+ doSwitch(eSuperTypes.get(0), theEObject);
+ }
+ }
+
+ /**
+ * Calls <code>caseXXX</code> for each class of the model until one returns a non null result; it yields that result.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the first non-null result returned by a <code>caseXXX</code> call.
+ * @generated
+ */
+ protected T doSwitch(int classifierID, EObject theEObject) {
+ switch (classifierID) {
+ case ElementsPackage.IDENTIFIED_ELEMENT: {
+ IdentifiedElement identifiedElement = (IdentifiedElement)theEObject;
+ T result = caseIdentifiedElement(identifiedElement);
+ if (result == null) result = defaultCase(theEObject);
+ return result;
+ }
+ case ElementsPackage.NAMED_ELEMENT: {
+ NamedElement namedElement = (NamedElement)theEObject;
+ T result = caseNamedElement(namedElement);
+ if (result == null) result = caseIdentifiedElement(namedElement);
+ if (result == null) result = defaultCase(theEObject);
+ return result;
+ }
+ case ElementsPackage.ROOT: {
+ Root root = (Root)theEObject;
+ T result = caseRoot(root);
+ if (result == null) result = caseIdentifiedElement(root);
+ if (result == null) result = defaultCase(theEObject);
+ return result;
+ }
+ case ElementsPackage.ELEMENT: {
+ Element element = (Element)theEObject;
+ T result = caseElement(element);
+ if (result == null) result = caseNamedElement(element);
+ if (result == null) result = caseIdentifiedElement(element);
+ if (result == null) result = defaultCase(theEObject);
+ return result;
+ }
+ case ElementsPackage.STRICT_ELEMENT: {
+ StrictElement strictElement = (StrictElement)theEObject;
+ T result = caseStrictElement(strictElement);
+ if (result == null) result = caseElement(strictElement);
+ if (result == null) result = caseNamedElement(strictElement);
+ if (result == null) result = caseIdentifiedElement(strictElement);
+ if (result == null) result = defaultCase(theEObject);
+ return result;
+ }
+ case ElementsPackage.NODE: {
+ Node node = (Node)theEObject;
+ T result = caseNode(node);
+ if (result == null) result = caseNamedElement(node);
+ if (result == null) result = caseIdentifiedElement(node);
+ if (result == null) result = defaultCase(theEObject);
+ return result;
+ }
+ case ElementsPackage.EDGE: {
+ Edge edge = (Edge)theEObject;
+ T result = caseEdge(edge);
+ if (result == null) result = caseNamedElement(edge);
+ if (result == null) result = caseIdentifiedElement(edge);
+ if (result == null) result = defaultCase(theEObject);
+ return result;
+ }
+ case ElementsPackage.REFERENCING_NODE: {
+ ReferencingNode referencingNode = (ReferencingNode)theEObject;
+ T result = caseReferencingNode(referencingNode);
+ if (result == null) result = caseNode(referencingNode);
+ if (result == null) result = caseNamedElement(referencingNode);
+ if (result == null) result = caseIdentifiedElement(referencingNode);
+ if (result == null) result = defaultCase(theEObject);
+ return result;
+ }
+ default: return defaultCase(theEObject);
+ }
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>Identified Element</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>Identified Element</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseIdentifiedElement(IdentifiedElement object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>Named Element</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>Named Element</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseNamedElement(NamedElement object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>Root</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>Root</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseRoot(Root object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>Element</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>Element</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseElement(Element object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>Strict Element</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>Strict Element</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseStrictElement(StrictElement object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>Node</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</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseNode(Node object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>Edge</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>Edge</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseEdge(Edge object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>Referencing Node</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>Referencing Node</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseReferencingNode(ReferencingNode object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>EObject</em>'.
+ * <!-- begin-user-doc -->
+ * This implementation returns null;
+ * returning a non-null result will terminate the switch, but this is the last case anyway.
+ * <!-- end-user-doc -->
+ * @param object the target of the switch.
+ * @return the result of interpreting the object as an instance of '<em>EObject</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject)
+ * @generated
+ */
+ public T defaultCase(EObject object) {
+ return null;
+ }
+
+} //ElementsSwitch

Back to the top