diff options
author | vlorenzo | 2012-01-30 14:00:13 +0000 |
---|---|---|
committer | vlorenzo | 2012-01-30 14:00:13 +0000 |
commit | 2fddc6c4f09a922ca8381c6a8c35bfd3f09593d7 (patch) | |
tree | 449d3466db0451a79b1769126e0c0c2f29a39591 /deprecated | |
parent | cc51abfbe7da69ac4d863b64a0261b993090587d (diff) | |
download | org.eclipse.papyrus-2fddc6c4f09a922ca8381c6a8c35bfd3f09593d7.tar.gz org.eclipse.papyrus-2fddc6c4f09a922ca8381c6a8c35bfd3f09593d7.tar.xz org.eclipse.papyrus-2fddc6c4f09a922ca8381c6a8c35bfd3f09593d7.zip |
The plugin oep.uml.compare is now deprecated
Diffstat (limited to 'deprecated')
54 files changed, 8595 insertions, 0 deletions
diff --git a/deprecated/org.eclipse.papyrus.uml.compare/.classpath b/deprecated/org.eclipse.papyrus.uml.compare/.classpath new file mode 100644 index 00000000000..ea6aae6dedb --- /dev/null +++ b/deprecated/org.eclipse.papyrus.uml.compare/.classpath @@ -0,0 +1,8 @@ +<?xml version="1.0" encoding="UTF-8"?> +<classpath> + <classpathentry kind="src" path="src-gen"/> + <classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/J2SE-1.5"/> + <classpathentry kind="con" path="org.eclipse.pde.core.requiredPlugins"/> + <classpathentry kind="src" path="src"/> + <classpathentry kind="output" path="bin"/> +</classpath> diff --git a/deprecated/org.eclipse.papyrus.uml.compare/.project b/deprecated/org.eclipse.papyrus.uml.compare/.project new file mode 100644 index 00000000000..ef210cd5556 --- /dev/null +++ b/deprecated/org.eclipse.papyrus.uml.compare/.project @@ -0,0 +1,28 @@ +<?xml version="1.0" encoding="UTF-8"?>
+<projectDescription>
+ <name>org.eclipse.papyrus.uml.compare</name>
+ <comment></comment>
+ <projects>
+ </projects>
+ <buildSpec>
+ <buildCommand>
+ <name>org.eclipse.jdt.core.javabuilder</name>
+ <arguments>
+ </arguments>
+ </buildCommand>
+ <buildCommand>
+ <name>org.eclipse.pde.ManifestBuilder</name>
+ <arguments>
+ </arguments>
+ </buildCommand>
+ <buildCommand>
+ <name>org.eclipse.pde.SchemaBuilder</name>
+ <arguments>
+ </arguments>
+ </buildCommand>
+ </buildSpec>
+ <natures>
+ <nature>org.eclipse.pde.PluginNature</nature>
+ <nature>org.eclipse.jdt.core.javanature</nature>
+ </natures>
+</projectDescription>
diff --git a/deprecated/org.eclipse.papyrus.uml.compare/.settings/org.eclipse.jdt.core.prefs b/deprecated/org.eclipse.papyrus.uml.compare/.settings/org.eclipse.jdt.core.prefs new file mode 100644 index 00000000000..c946cea2d9d --- /dev/null +++ b/deprecated/org.eclipse.papyrus.uml.compare/.settings/org.eclipse.jdt.core.prefs @@ -0,0 +1,8 @@ +#Wed Aug 25 10:47:33 CEST 2010
+eclipse.preferences.version=1
+org.eclipse.jdt.core.compiler.codegen.inlineJsrBytecode=enabled
+org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.5
+org.eclipse.jdt.core.compiler.compliance=1.5
+org.eclipse.jdt.core.compiler.problem.assertIdentifier=error
+org.eclipse.jdt.core.compiler.problem.enumIdentifier=error
+org.eclipse.jdt.core.compiler.source=1.5
diff --git a/deprecated/org.eclipse.papyrus.uml.compare/META-INF/MANIFEST.MF b/deprecated/org.eclipse.papyrus.uml.compare/META-INF/MANIFEST.MF new file mode 100644 index 00000000000..43839f5cded --- /dev/null +++ b/deprecated/org.eclipse.papyrus.uml.compare/META-INF/MANIFEST.MF @@ -0,0 +1,28 @@ +Manifest-Version: 1.0
+Export-Package: org.eclipse.papyrus.uml.compare,
+ org.eclipse.papyrus.uml.compare.diff,
+ org.eclipse.papyrus.uml.compare.diff.extension,
+ org.eclipse.papyrus.uml.compare.diff.metamodel.uml_diff_extension,
+ org.eclipse.papyrus.uml.compare.diff.metamodel.uml_diff_extension.util,
+ org.eclipse.papyrus.uml.compare.element,
+ org.eclipse.papyrus.uml.compare.match,
+ org.eclipse.papyrus.uml.compare.ui
+Require-Bundle: org.eclipse.emf.compare;bundle-version="1.1.0",
+ org.eclipse.emf.compare.match;bundle-version="1.1.0",
+ org.eclipse.emf.compare.diff,
+ org.eclipse.emf.compare.ui,
+ org.eclipse.uml2.uml.edit;bundle-version="3.1.100",
+ org.eclipse.emf.facet.infra.browser.uicore;bundle-version="0.1.0",
+ org.eclipse.emf.facet.infra.browser.custom;bundle-version="0.1.0",
+ org.eclipse.emf.facet.infra.browser.custom.core;bundle-version="0.1.0",
+ org.eclipse.papyrus.views.modelexplorer;bundle-version="0.9.0",
+ org.eclipse.core.runtime;bundle-version="3.7.0"
+Bundle-Vendor: %Bundle-Vendor
+Bundle-ActivationPolicy: lazy
+Bundle-Version: 0.9.0.qualifier
+Bundle-Name: %Bundle-Name
+Bundle-Activator: org.eclipse.papyrus.uml.compare.Activator
+Bundle-ManifestVersion: 2
+Bundle-SymbolicName: org.eclipse.papyrus.uml.compare;singleton:=true
+Bundle-RequiredExecutionEnvironment: J2SE-1.5
+
diff --git a/deprecated/org.eclipse.papyrus.uml.compare/about.html b/deprecated/org.eclipse.papyrus.uml.compare/about.html new file mode 100644 index 00000000000..82d49bf5f81 --- /dev/null +++ b/deprecated/org.eclipse.papyrus.uml.compare/about.html @@ -0,0 +1,28 @@ +<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"/>
+<title>About</title>
+</head>
+<body lang="EN-US">
+<h2>About This Content</h2>
+
+<p>June 5, 2007</p>
+<h3>License</h3>
+
+<p>The Eclipse Foundation makes available all content in this plug-in ("Content"). Unless otherwise
+indicated below, the Content is provided to you under the terms and conditions of the
+Eclipse Public License Version 1.0 ("EPL"). A copy of the EPL is available
+at <a href="http://www.eclipse.org/legal/epl-v10.html">http://www.eclipse.org/legal/epl-v10.html</a>.
+For purposes of the EPL, "Program" will mean the Content.</p>
+
+<p>If you did not receive this Content directly from the Eclipse Foundation, the Content is
+being redistributed by another party ("Redistributor") and different terms and conditions may
+apply to your use of any object code in the Content. Check the Redistributor's license that was
+provided with the Content. If no such license exists, contact the Redistributor. Unless otherwise
+indicated below, the terms and conditions of the EPL still apply to any source code in the Content
+and such source code may be obtained at <a href="http://www.eclipse.org/">http://www.eclipse.org</a>.</p>
+
+</body>
+</html>
diff --git a/deprecated/org.eclipse.papyrus.uml.compare/build.properties b/deprecated/org.eclipse.papyrus.uml.compare/build.properties new file mode 100644 index 00000000000..41a9383489b --- /dev/null +++ b/deprecated/org.eclipse.papyrus.uml.compare/build.properties @@ -0,0 +1,15 @@ +#
+#Mon Sep 12 09:29:35 CEST 2011
+bin.includes = META-INF/,\
+ .,\
+ plugin.xml,\
+ icons/,\
+ model/,\
+ messages.properties,\
+ about.html,\
+ plugin.properties,\
+ OSGI-INF/l10n/bundle.properties
+output..=bin/
+src.includes=META-INF/,.,plugin.xml,icons/,model/,messages.properties,about.html,plugin.properties
+source..=src/,src-gen/
+bin..=bin/
diff --git a/deprecated/org.eclipse.papyrus.uml.compare/icons/export_as_html.gif b/deprecated/org.eclipse.papyrus.uml.compare/icons/export_as_html.gif Binary files differnew file mode 100644 index 00000000000..8a31f458379 --- /dev/null +++ b/deprecated/org.eclipse.papyrus.uml.compare/icons/export_as_html.gif diff --git a/deprecated/org.eclipse.papyrus.uml.compare/icons/show_all_properties.gif b/deprecated/org.eclipse.papyrus.uml.compare/icons/show_all_properties.gif Binary files differnew file mode 100644 index 00000000000..252d7ebcb8c --- /dev/null +++ b/deprecated/org.eclipse.papyrus.uml.compare/icons/show_all_properties.gif diff --git a/deprecated/org.eclipse.papyrus.uml.compare/messages.properties b/deprecated/org.eclipse.papyrus.uml.compare/messages.properties new file mode 100644 index 00000000000..a89f818e6cf --- /dev/null +++ b/deprecated/org.eclipse.papyrus.uml.compare/messages.properties @@ -0,0 +1,26 @@ +Activator_log_error_message=Unexpected error: +StyledDiffLabelSwitch_add_stereotype_application_text=Stereotype {0} has been added +StyledDiffLabelSwitch_attribute_change_left_target_remote_text={0} has been remotely removed from attribute {1} in {2} +StyledDiffLabelSwitch_attribute_change_left_target_text=The value {0} has been added to the attribute {1} in {2} +StyledDiffLabelSwitch_attribute_change_right_target_remote_text={0} has been remotely added to attribute {1} in {2} +StyledDiffLabelSwitch_attribute_change_right_target_text=The value {0} has been removed from the attribute {1} in {2} +StyledDiffLabelSwitch_attribute_change_text=Attribute Change {0} +StyledDiffLabelSwitch_diff_group_text={0} change(s) in {1} +StyledDiffLabelSwitch_null_value_text=null +StyledDiffLabelSwitch_reference_chnage_text=Reference Change {0} +StyledDiffLabelSwitch_remove_stereotype_application_text=Stereotype {0} has been removed +StyledDiffLabelSwitch_root_text=model +StyledDiffLabelSwitch_tagged_value_changed_remote_text=Tagged value {0} : remote = {1}, local = {2} +StyledDiffLabelSwitch_tagged_value_changed_text=Tagged value {0} : {1} -> {2} +StyledDiffLabelSwitch_tagged_value_left_target_remote_text=Tagged value {0} has been remotely removed: {1} +StyledDiffLabelSwitch_tagged_value_left_target_text=Tagged value {0} has been added: {1} +StyledDiffLabelSwitch_tagged_value_reference_remote_text=Tagged value {0} : remote = {1}, local = {2} +StyledDiffLabelSwitch_tagged_value_reference_text=Tagged value {0} : {1} -> {2} +StyledDiffLabelSwitch_tagged_value_right_target_remote_text=Tagged value {0} has been remotely added: {1} +StyledDiffLabelSwitch_tagged_value_right_target_text=Tagged value {0} has been removed: {1} +StyledDiffLabelSwitch_two_elements_model_text={0} change(s) between elements {1} and {2} +StyledDiffLabelSwitch_update_attribute_conflicting_text=Attribute {0} : remote = {1}, local = {2} +StyledDiffLabelSwitch_update_attribute_remote_text=Attribute {0} in {1} has been remotely changed from {2} to {3} +StyledDiffLabelSwitch_update_attribute_text=Attribute {0} in {1} has changed from {2} to {3} +StyledDiffLabelSwitch_update_tagged_value_remote_text=Tagged value {0} : remote = {1}, local = {2} +StyledDiffLabelSwitch_update_tagged_value_text=Tagged value {0}: {1} -> {2} diff --git a/deprecated/org.eclipse.papyrus.uml.compare/model/uml_diff_extension.ecore b/deprecated/org.eclipse.papyrus.uml.compare/model/uml_diff_extension.ecore new file mode 100644 index 00000000000..e003a1766bd --- /dev/null +++ b/deprecated/org.eclipse.papyrus.uml.compare/model/uml_diff_extension.ecore @@ -0,0 +1,16 @@ +<?xml version="1.0" encoding="UTF-8"?> +<ecore:EPackage xmi:version="2.0" + xmlns:xmi="http://www.omg.org/XMI" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" + xmlns:ecore="http://www.eclipse.org/emf/2002/Ecore" name="uml_diff_extension" + nsURI="http://www.eclipse.org/uml/compare/diff_ext/1.0" nsPrefix="uml_diff_extension"> + <eClassifiers xsi:type="ecore:EClass" name="UMLDiffExtension" abstract="true" eSuperTypes="platform:/plugin/org.eclipse.emf.compare.diff/model/diff.ecore#//AbstractDiffExtension"/> + <eClassifiers xsi:type="ecore:EClass" name="StereotypeChange" abstract="true" eSuperTypes="#//UMLDiffExtension"/> + <eClassifiers xsi:type="ecore:EClass" name="TaggedValueChange" abstract="true" eSuperTypes="#//UMLDiffExtension platform:/plugin/org.eclipse.emf.compare.diff/model/diff.ecore#//AttributeChange"/> + <eClassifiers xsi:type="ecore:EClass" name="TaggedValueChangeLeftTarget" eSuperTypes="#//TaggedValueChange platform:/plugin/org.eclipse.emf.compare.diff/model/diff.ecore#//AttributeChangeLeftTarget"/> + <eClassifiers xsi:type="ecore:EClass" name="TaggedValueChangeRightTarget" eSuperTypes="#//TaggedValueChange platform:/plugin/org.eclipse.emf.compare.diff/model/diff.ecore#//AttributeChangeRightTarget"/> + <eClassifiers xsi:type="ecore:EClass" name="UpdateTaggedValue" eSuperTypes="#//TaggedValueChange platform:/plugin/org.eclipse.emf.compare.diff/model/diff.ecore#//UpdateAttribute"/> + <eClassifiers xsi:type="ecore:EClass" name="TaggedValueReferenceChange" eSuperTypes="#//UMLDiffExtension platform:/plugin/org.eclipse.emf.compare.diff/model/diff.ecore#//ReferenceChange"/> + <eClassifiers xsi:type="ecore:EClass" name="AddStereotypeApplication" eSuperTypes="#//StereotypeChange platform:/plugin/org.eclipse.emf.compare.diff/model/diff.ecore#//ModelElementChangeRightTarget"/> + <eClassifiers xsi:type="ecore:EClass" name="RemoveStereotypeApplication" eSuperTypes="#//StereotypeChange platform:/plugin/org.eclipse.emf.compare.diff/model/diff.ecore#//ModelElementChangeLeftTarget"/> + <eClassifiers xsi:type="ecore:EClass" name="CompareTwoElementsDiffModel" eSuperTypes="#//UMLDiffExtension platform:/plugin/org.eclipse.emf.compare.diff/model/diff.ecore#//DiffModel"/> +</ecore:EPackage> diff --git a/deprecated/org.eclipse.papyrus.uml.compare/model/uml_diff_extension.genmodel b/deprecated/org.eclipse.papyrus.uml.compare/model/uml_diff_extension.genmodel new file mode 100644 index 00000000000..300ae9f75b4 --- /dev/null +++ b/deprecated/org.eclipse.papyrus.uml.compare/model/uml_diff_extension.genmodel @@ -0,0 +1,23 @@ +<?xml version="1.0" encoding="UTF-8"?> +<genmodel:GenModel xmi:version="2.0" + xmlns:xmi="http://www.omg.org/XMI" xmlns:genmodel="http://www.eclipse.org/emf/2002/GenModel" copyrightText="
 Copyright (c) 2010 CEA LIST.
 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:
 Tatiana Fesenko(CEA LIST) - initial API and implementation" + modelDirectory="/org.eclipse.papyrus.uml.compare/src-gen" editDirectory="/org.eclipse.papyrus.uml.compare/src-gen" + editorDirectory="/org.eclipse.papyrus.uml.compare.editor/src-gen" modelPluginID="org.eclipse.papyrus.uml.compare" + modelName="Uml_diff_extension" editPluginClass="org.eclipse.papyrus.uml.compare.metamodel.uml_diff_extension.provider.Uml_diff_extensionEditPlugin" + importerID="org.eclipse.emf.importer.ecore" complianceLevel="5.0" copyrightFields="false" + usedGenPackages="platform:/plugin/org.eclipse.emf.compare.diff/model/diff.genmodel#//diff platform:/plugin/org.eclipse.emf.ecore/model/Ecore.genmodel#//ecore platform:/plugin/org.eclipse.emf.compare.match/model/match.genmodel#//match"> + <foreignModel>uml_diff_extension.ecore</foreignModel> + <genPackages prefix="UMLDiff" basePackage="org.eclipse.papyrus.uml.compare.diff.metamodel" + disposableProviderFactory="true" ecorePackage="uml_diff_extension.ecore#/"> + <genClasses image="false" ecoreClass="uml_diff_extension.ecore#//UMLDiffExtension"/> + <genClasses ecoreClass="uml_diff_extension.ecore#//StereotypeChange"/> + <genClasses image="false" ecoreClass="uml_diff_extension.ecore#//TaggedValueChange"/> + <genClasses ecoreClass="uml_diff_extension.ecore#//TaggedValueChangeLeftTarget"/> + <genClasses ecoreClass="uml_diff_extension.ecore#//TaggedValueChangeRightTarget"/> + <genClasses ecoreClass="uml_diff_extension.ecore#//UpdateTaggedValue"/> + <genClasses ecoreClass="uml_diff_extension.ecore#//AddStereotypeApplication"/> + <genClasses ecoreClass="uml_diff_extension.ecore#//RemoveStereotypeApplication"/> + <genClasses ecoreClass="uml_diff_extension.ecore#//TaggedValueReferenceChange"/> + <genClasses ecoreClass="uml_diff_extension.ecore#//CompareTwoElementsDiffModel"/> + </genPackages> +</genmodel:GenModel> diff --git a/deprecated/org.eclipse.papyrus.uml.compare/plugin.properties b/deprecated/org.eclipse.papyrus.uml.compare/plugin.properties new file mode 100644 index 00000000000..ab1c59a5303 --- /dev/null +++ b/deprecated/org.eclipse.papyrus.uml.compare/plugin.properties @@ -0,0 +1,11 @@ +# +# Copyright (c) 2010 CEA LIST. +# 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: +# Tatiana Fesenko(CEA LIST) - initial API and implementation +Bundle-Vendor = Eclipse Modeling Project +Bundle-Name = Compare diff --git a/deprecated/org.eclipse.papyrus.uml.compare/plugin.xml b/deprecated/org.eclipse.papyrus.uml.compare/plugin.xml new file mode 100644 index 00000000000..4902bd49155 --- /dev/null +++ b/deprecated/org.eclipse.papyrus.uml.compare/plugin.xml @@ -0,0 +1,23 @@ +<?xml version="1.0" encoding="UTF-8"?>
+<?eclipse version="3.0"?>
+<plugin>
+
+ <extension
+ point="org.eclipse.emf.compare.match.engine">
+ <matchengine
+ engineClass="org.eclipse.papyrus.uml.compare.match.PapyrusMatchEngine"
+ fileExtension="uml"
+ label="Papyrus Matching Engine"
+ priority="highest"/>
+ </extension>
+
+ <extension
+ point="org.eclipse.emf.compare.diff.engine">
+ <diffengine
+ engineClass="org.eclipse.papyrus.uml.compare.diff.PapyrusDiffEngine"
+ priority="highest"
+ icon="icons/DiffEngine.gif"
+ label="Papyrus Differencing Engine"/>
+ </extension>
+
+</plugin>
diff --git a/deprecated/org.eclipse.papyrus.uml.compare/src-gen/org/eclipse/papyrus/uml/compare/diff/metamodel/uml_diff_extension/AddStereotypeApplication.java b/deprecated/org.eclipse.papyrus.uml.compare/src-gen/org/eclipse/papyrus/uml/compare/diff/metamodel/uml_diff_extension/AddStereotypeApplication.java new file mode 100644 index 00000000000..d1e1f451210 --- /dev/null +++ b/deprecated/org.eclipse.papyrus.uml.compare/src-gen/org/eclipse/papyrus/uml/compare/diff/metamodel/uml_diff_extension/AddStereotypeApplication.java @@ -0,0 +1,28 @@ +/** + * + * Copyright (c) 2010 CEA LIST. + * 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: + * Tatiana Fesenko(CEA LIST) - initial API and implementation + */ +package org.eclipse.papyrus.uml.compare.diff.metamodel.uml_diff_extension; + +import org.eclipse.emf.compare.diff.metamodel.ModelElementChangeRightTarget; + + +/** + * <!-- begin-user-doc --> + * A representation of the model object '<em><b>Add Stereotype Application</b></em>'. + * <!-- end-user-doc --> + * + * + * @see org.eclipse.papyrus.uml.compare.diff.metamodel.uml_diff_extension.UMLDiffPackage#getAddStereotypeApplication() + * @model + * @generated + */ +public interface AddStereotypeApplication extends StereotypeChange, ModelElementChangeRightTarget { +} // AddStereotypeApplication diff --git a/deprecated/org.eclipse.papyrus.uml.compare/src-gen/org/eclipse/papyrus/uml/compare/diff/metamodel/uml_diff_extension/CompareTwoElementsDiffModel.java b/deprecated/org.eclipse.papyrus.uml.compare/src-gen/org/eclipse/papyrus/uml/compare/diff/metamodel/uml_diff_extension/CompareTwoElementsDiffModel.java new file mode 100644 index 00000000000..0147af10106 --- /dev/null +++ b/deprecated/org.eclipse.papyrus.uml.compare/src-gen/org/eclipse/papyrus/uml/compare/diff/metamodel/uml_diff_extension/CompareTwoElementsDiffModel.java @@ -0,0 +1,27 @@ +/** + * + * Copyright (c) 2010 CEA LIST. + * 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: + * Tatiana Fesenko(CEA LIST) - initial API and implementation + */ +package org.eclipse.papyrus.uml.compare.diff.metamodel.uml_diff_extension; + +import org.eclipse.emf.compare.diff.metamodel.DiffModel; + +/** + * <!-- begin-user-doc --> + * A representation of the model object '<em><b>Compare Two Elements Diff Model</b></em>'. + * <!-- end-user-doc --> + * + * + * @see org.eclipse.papyrus.uml.compare.diff.metamodel.uml_diff_extension.UMLDiffPackage#getCompareTwoElementsDiffModel() + * @model + * @generated + */ +public interface CompareTwoElementsDiffModel extends UMLDiffExtension, DiffModel { +} // CompareTwoElementsDiffModel diff --git a/deprecated/org.eclipse.papyrus.uml.compare/src-gen/org/eclipse/papyrus/uml/compare/diff/metamodel/uml_diff_extension/RemoveStereotypeApplication.java b/deprecated/org.eclipse.papyrus.uml.compare/src-gen/org/eclipse/papyrus/uml/compare/diff/metamodel/uml_diff_extension/RemoveStereotypeApplication.java new file mode 100644 index 00000000000..49468165c0c --- /dev/null +++ b/deprecated/org.eclipse.papyrus.uml.compare/src-gen/org/eclipse/papyrus/uml/compare/diff/metamodel/uml_diff_extension/RemoveStereotypeApplication.java @@ -0,0 +1,28 @@ +/** + * + * Copyright (c) 2010 CEA LIST. + * 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: + * Tatiana Fesenko(CEA LIST) - initial API and implementation + */ +package org.eclipse.papyrus.uml.compare.diff.metamodel.uml_diff_extension; + +import org.eclipse.emf.compare.diff.metamodel.ModelElementChangeLeftTarget; + + +/** + * <!-- begin-user-doc --> + * A representation of the model object '<em><b>Remove Stereotype Application</b></em>'. + * <!-- end-user-doc --> + * + * + * @see org.eclipse.papyrus.uml.compare.diff.metamodel.uml_diff_extension.UMLDiffPackage#getRemoveStereotypeApplication() + * @model + * @generated + */ +public interface RemoveStereotypeApplication extends StereotypeChange, ModelElementChangeLeftTarget { +} // RemoveStereotypeApplication diff --git a/deprecated/org.eclipse.papyrus.uml.compare/src-gen/org/eclipse/papyrus/uml/compare/diff/metamodel/uml_diff_extension/StereotypeChange.java b/deprecated/org.eclipse.papyrus.uml.compare/src-gen/org/eclipse/papyrus/uml/compare/diff/metamodel/uml_diff_extension/StereotypeChange.java new file mode 100644 index 00000000000..44978f5cf5b --- /dev/null +++ b/deprecated/org.eclipse.papyrus.uml.compare/src-gen/org/eclipse/papyrus/uml/compare/diff/metamodel/uml_diff_extension/StereotypeChange.java @@ -0,0 +1,26 @@ +/** + * + * Copyright (c) 2010 CEA LIST. + * 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: + * Tatiana Fesenko(CEA LIST) - initial API and implementation + */ +package org.eclipse.papyrus.uml.compare.diff.metamodel.uml_diff_extension; + + +/** + * <!-- begin-user-doc --> + * A representation of the model object '<em><b>Stereotype Change</b></em>'. + * <!-- end-user-doc --> + * + * + * @see org.eclipse.papyrus.uml.compare.diff.metamodel.uml_diff_extension.UMLDiffPackage#getStereotypeChange() + * @model abstract="true" + * @generated + */ +public interface StereotypeChange extends UMLDiffExtension { +} // StereotypeChange diff --git a/deprecated/org.eclipse.papyrus.uml.compare/src-gen/org/eclipse/papyrus/uml/compare/diff/metamodel/uml_diff_extension/TaggedValueChange.java b/deprecated/org.eclipse.papyrus.uml.compare/src-gen/org/eclipse/papyrus/uml/compare/diff/metamodel/uml_diff_extension/TaggedValueChange.java new file mode 100644 index 00000000000..c4d382e5470 --- /dev/null +++ b/deprecated/org.eclipse.papyrus.uml.compare/src-gen/org/eclipse/papyrus/uml/compare/diff/metamodel/uml_diff_extension/TaggedValueChange.java @@ -0,0 +1,27 @@ +/** + * + * Copyright (c) 2010 CEA LIST. + * 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: + * Tatiana Fesenko(CEA LIST) - initial API and implementation + */ +package org.eclipse.papyrus.uml.compare.diff.metamodel.uml_diff_extension; + +import org.eclipse.emf.compare.diff.metamodel.AttributeChange; + +/** + * <!-- begin-user-doc --> + * A representation of the model object '<em><b>Tagged Value Change</b></em>'. + * <!-- end-user-doc --> + * + * + * @see org.eclipse.papyrus.uml.compare.diff.metamodel.uml_diff_extension.UMLDiffPackage#getTaggedValueChange() + * @model abstract="true" + * @generated + */ +public interface TaggedValueChange extends UMLDiffExtension, AttributeChange { +} // TaggedValueChange diff --git a/deprecated/org.eclipse.papyrus.uml.compare/src-gen/org/eclipse/papyrus/uml/compare/diff/metamodel/uml_diff_extension/TaggedValueChangeLeftTarget.java b/deprecated/org.eclipse.papyrus.uml.compare/src-gen/org/eclipse/papyrus/uml/compare/diff/metamodel/uml_diff_extension/TaggedValueChangeLeftTarget.java new file mode 100644 index 00000000000..162f195620c --- /dev/null +++ b/deprecated/org.eclipse.papyrus.uml.compare/src-gen/org/eclipse/papyrus/uml/compare/diff/metamodel/uml_diff_extension/TaggedValueChangeLeftTarget.java @@ -0,0 +1,27 @@ +/** + * + * Copyright (c) 2010 CEA LIST. + * 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: + * Tatiana Fesenko(CEA LIST) - initial API and implementation + */ +package org.eclipse.papyrus.uml.compare.diff.metamodel.uml_diff_extension; + +import org.eclipse.emf.compare.diff.metamodel.AttributeChangeLeftTarget; + +/** + * <!-- begin-user-doc --> + * A representation of the model object '<em><b>Tagged Value Change Left Target</b></em>'. + * <!-- end-user-doc --> + * + * + * @see org.eclipse.papyrus.uml.compare.diff.metamodel.uml_diff_extension.UMLDiffPackage#getTaggedValueChangeLeftTarget() + * @model + * @generated + */ +public interface TaggedValueChangeLeftTarget extends TaggedValueChange, AttributeChangeLeftTarget { +} // TaggedValueChangeLeftTarget diff --git a/deprecated/org.eclipse.papyrus.uml.compare/src-gen/org/eclipse/papyrus/uml/compare/diff/metamodel/uml_diff_extension/TaggedValueChangeRightTarget.java b/deprecated/org.eclipse.papyrus.uml.compare/src-gen/org/eclipse/papyrus/uml/compare/diff/metamodel/uml_diff_extension/TaggedValueChangeRightTarget.java new file mode 100644 index 00000000000..e62293859c0 --- /dev/null +++ b/deprecated/org.eclipse.papyrus.uml.compare/src-gen/org/eclipse/papyrus/uml/compare/diff/metamodel/uml_diff_extension/TaggedValueChangeRightTarget.java @@ -0,0 +1,27 @@ +/** + * + * Copyright (c) 2010 CEA LIST. + * 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: + * Tatiana Fesenko(CEA LIST) - initial API and implementation + */ +package org.eclipse.papyrus.uml.compare.diff.metamodel.uml_diff_extension; + +import org.eclipse.emf.compare.diff.metamodel.AttributeChangeRightTarget; + +/** + * <!-- begin-user-doc --> + * A representation of the model object '<em><b>Tagged Value Change Right Target</b></em>'. + * <!-- end-user-doc --> + * + * + * @see org.eclipse.papyrus.uml.compare.diff.metamodel.uml_diff_extension.UMLDiffPackage#getTaggedValueChangeRightTarget() + * @model + * @generated + */ +public interface TaggedValueChangeRightTarget extends TaggedValueChange, AttributeChangeRightTarget { +} // TaggedValueChangeRightTarget diff --git a/deprecated/org.eclipse.papyrus.uml.compare/src-gen/org/eclipse/papyrus/uml/compare/diff/metamodel/uml_diff_extension/TaggedValueReferenceChange.java b/deprecated/org.eclipse.papyrus.uml.compare/src-gen/org/eclipse/papyrus/uml/compare/diff/metamodel/uml_diff_extension/TaggedValueReferenceChange.java new file mode 100644 index 00000000000..6b02a089af0 --- /dev/null +++ b/deprecated/org.eclipse.papyrus.uml.compare/src-gen/org/eclipse/papyrus/uml/compare/diff/metamodel/uml_diff_extension/TaggedValueReferenceChange.java @@ -0,0 +1,27 @@ +/** + * + * Copyright (c) 2010 CEA LIST. + * 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: + * Tatiana Fesenko(CEA LIST) - initial API and implementation + */ +package org.eclipse.papyrus.uml.compare.diff.metamodel.uml_diff_extension; + +import org.eclipse.emf.compare.diff.metamodel.ReferenceChange; + +/** + * <!-- begin-user-doc --> + * A representation of the model object '<em><b>Tagged Value Reference Change</b></em>'. + * <!-- end-user-doc --> + * + * + * @see org.eclipse.papyrus.uml.compare.diff.metamodel.uml_diff_extension.UMLDiffPackage#getTaggedValueReferenceChange() + * @model + * @generated + */ +public interface TaggedValueReferenceChange extends UMLDiffExtension, ReferenceChange { +} // TaggedValueReferenceChange diff --git a/deprecated/org.eclipse.papyrus.uml.compare/src-gen/org/eclipse/papyrus/uml/compare/diff/metamodel/uml_diff_extension/UMLDiffExtension.java b/deprecated/org.eclipse.papyrus.uml.compare/src-gen/org/eclipse/papyrus/uml/compare/diff/metamodel/uml_diff_extension/UMLDiffExtension.java new file mode 100644 index 00000000000..e06a4f43527 --- /dev/null +++ b/deprecated/org.eclipse.papyrus.uml.compare/src-gen/org/eclipse/papyrus/uml/compare/diff/metamodel/uml_diff_extension/UMLDiffExtension.java @@ -0,0 +1,27 @@ +/** + * + * Copyright (c) 2010 CEA LIST. + * 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: + * Tatiana Fesenko(CEA LIST) - initial API and implementation + */ +package org.eclipse.papyrus.uml.compare.diff.metamodel.uml_diff_extension; + +import org.eclipse.emf.compare.diff.metamodel.AbstractDiffExtension; + +/** + * <!-- begin-user-doc --> + * A representation of the model object '<em><b>Extension</b></em>'. + * <!-- end-user-doc --> + * + * + * @see org.eclipse.papyrus.uml.compare.diff.metamodel.uml_diff_extension.UMLDiffPackage#getUMLDiffExtension() + * @model abstract="true" + * @generated + */ +public interface UMLDiffExtension extends AbstractDiffExtension { +} // UMLDiffExtension diff --git a/deprecated/org.eclipse.papyrus.uml.compare/src-gen/org/eclipse/papyrus/uml/compare/diff/metamodel/uml_diff_extension/UMLDiffFactory.java b/deprecated/org.eclipse.papyrus.uml.compare/src-gen/org/eclipse/papyrus/uml/compare/diff/metamodel/uml_diff_extension/UMLDiffFactory.java new file mode 100644 index 00000000000..44a9cdb9963 --- /dev/null +++ b/deprecated/org.eclipse.papyrus.uml.compare/src-gen/org/eclipse/papyrus/uml/compare/diff/metamodel/uml_diff_extension/UMLDiffFactory.java @@ -0,0 +1,105 @@ +/** + * + * Copyright (c) 2010 CEA LIST. + * 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: + * Tatiana Fesenko(CEA LIST) - initial API and implementation + */ +package org.eclipse.papyrus.uml.compare.diff.metamodel.uml_diff_extension; + +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.papyrus.uml.compare.diff.metamodel.uml_diff_extension.UMLDiffPackage + * @generated + */ +public interface UMLDiffFactory extends EFactory { + /** + * The singleton instance of the factory. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + UMLDiffFactory eINSTANCE = org.eclipse.papyrus.uml.compare.diff.metamodel.uml_diff_extension.impl.UMLDiffFactoryImpl.init(); + + /** + * Returns a new object of class '<em>Tagged Value Change Left Target</em>'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return a new object of class '<em>Tagged Value Change Left Target</em>'. + * @generated + */ + TaggedValueChangeLeftTarget createTaggedValueChangeLeftTarget(); + + /** + * Returns a new object of class '<em>Tagged Value Change Right Target</em>'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return a new object of class '<em>Tagged Value Change Right Target</em>'. + * @generated + */ + TaggedValueChangeRightTarget createTaggedValueChangeRightTarget(); + + /** + * Returns a new object of class '<em>Update Tagged Value</em>'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return a new object of class '<em>Update Tagged Value</em>'. + * @generated + */ + UpdateTaggedValue createUpdateTaggedValue(); + + /** + * Returns a new object of class '<em>Add Stereotype Application</em>'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return a new object of class '<em>Add Stereotype Application</em>'. + * @generated + */ + AddStereotypeApplication createAddStereotypeApplication(); + + /** + * Returns a new object of class '<em>Remove Stereotype Application</em>'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return a new object of class '<em>Remove Stereotype Application</em>'. + * @generated + */ + RemoveStereotypeApplication createRemoveStereotypeApplication(); + + /** + * Returns a new object of class '<em>Tagged Value Reference Change</em>'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return a new object of class '<em>Tagged Value Reference Change</em>'. + * @generated + */ + TaggedValueReferenceChange createTaggedValueReferenceChange(); + + /** + * Returns a new object of class '<em>Compare Two Elements Diff Model</em>'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return a new object of class '<em>Compare Two Elements Diff Model</em>'. + * @generated + */ + CompareTwoElementsDiffModel createCompareTwoElementsDiffModel(); + + /** + * Returns the package supported by this factory. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the package supported by this factory. + * @generated + */ + UMLDiffPackage getUMLDiffPackage(); + +} //UMLDiffFactory diff --git a/deprecated/org.eclipse.papyrus.uml.compare/src-gen/org/eclipse/papyrus/uml/compare/diff/metamodel/uml_diff_extension/UMLDiffPackage.java b/deprecated/org.eclipse.papyrus.uml.compare/src-gen/org/eclipse/papyrus/uml/compare/diff/metamodel/uml_diff_extension/UMLDiffPackage.java new file mode 100644 index 00000000000..b3ba77c1dbf --- /dev/null +++ b/deprecated/org.eclipse.papyrus.uml.compare/src-gen/org/eclipse/papyrus/uml/compare/diff/metamodel/uml_diff_extension/UMLDiffPackage.java @@ -0,0 +1,1204 @@ +/** + * + * Copyright (c) 2010 CEA LIST. + * 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: + * Tatiana Fesenko(CEA LIST) - initial API and implementation + */ +package org.eclipse.papyrus.uml.compare.diff.metamodel.uml_diff_extension; + +import org.eclipse.emf.compare.diff.metamodel.DiffPackage; + +import org.eclipse.emf.ecore.EClass; +import org.eclipse.emf.ecore.EPackage; + +/** + * <!-- begin-user-doc --> + * The <b>Package</b> for the model. + * It contains accessors for the meta objects to represent + * <ul> + * <li>each class,</li> + * <li>each feature of each class,</li> + * <li>each enum,</li> + * <li>and each data type</li> + * </ul> + * <!-- end-user-doc --> + * @see org.eclipse.papyrus.uml.compare.diff.metamodel.uml_diff_extension.UMLDiffFactory + * @model kind="package" + * @generated + */ +public interface UMLDiffPackage extends EPackage { + /** + * The package name. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + String eNAME = "uml_diff_extension"; + + /** + * The package namespace URI. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + String eNS_URI = "http://www.eclipse.org/uml/compare/diff_ext/1.0"; + + /** + * The package namespace name. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + String eNS_PREFIX = "uml_diff_extension"; + + /** + * The singleton instance of the package. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + UMLDiffPackage eINSTANCE = org.eclipse.papyrus.uml.compare.diff.metamodel.uml_diff_extension.impl.UMLDiffPackageImpl.init(); + + /** + * The meta object id for the '{@link org.eclipse.papyrus.uml.compare.diff.metamodel.uml_diff_extension.impl.UMLDiffExtensionImpl <em>Extension</em>}' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see org.eclipse.papyrus.uml.compare.diff.metamodel.uml_diff_extension.impl.UMLDiffExtensionImpl + * @see org.eclipse.papyrus.uml.compare.diff.metamodel.uml_diff_extension.impl.UMLDiffPackageImpl#getUMLDiffExtension() + * @generated + */ + int UML_DIFF_EXTENSION = 0; + + /** + * The feature id for the '<em><b>Hide Elements</b></em>' reference list. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int UML_DIFF_EXTENSION__HIDE_ELEMENTS = DiffPackage.ABSTRACT_DIFF_EXTENSION__HIDE_ELEMENTS; + + /** + * The feature id for the '<em><b>Is Collapsed</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int UML_DIFF_EXTENSION__IS_COLLAPSED = DiffPackage.ABSTRACT_DIFF_EXTENSION__IS_COLLAPSED; + + /** + * The number of structural features of the '<em>Extension</em>' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int UML_DIFF_EXTENSION_FEATURE_COUNT = DiffPackage.ABSTRACT_DIFF_EXTENSION_FEATURE_COUNT + 0; + + /** + * The meta object id for the '{@link org.eclipse.papyrus.uml.compare.diff.metamodel.uml_diff_extension.impl.StereotypeChangeImpl <em>Stereotype Change</em>}' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see org.eclipse.papyrus.uml.compare.diff.metamodel.uml_diff_extension.impl.StereotypeChangeImpl + * @see org.eclipse.papyrus.uml.compare.diff.metamodel.uml_diff_extension.impl.UMLDiffPackageImpl#getStereotypeChange() + * @generated + */ + int STEREOTYPE_CHANGE = 1; + + /** + * The feature id for the '<em><b>Hide Elements</b></em>' reference list. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int STEREOTYPE_CHANGE__HIDE_ELEMENTS = UML_DIFF_EXTENSION__HIDE_ELEMENTS; + + /** + * The feature id for the '<em><b>Is Collapsed</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int STEREOTYPE_CHANGE__IS_COLLAPSED = UML_DIFF_EXTENSION__IS_COLLAPSED; + + /** + * The number of structural features of the '<em>Stereotype Change</em>' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int STEREOTYPE_CHANGE_FEATURE_COUNT = UML_DIFF_EXTENSION_FEATURE_COUNT + 0; + + /** + * The meta object id for the '{@link org.eclipse.papyrus.uml.compare.diff.metamodel.uml_diff_extension.impl.TaggedValueChangeImpl <em>Tagged Value Change</em>}' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see org.eclipse.papyrus.uml.compare.diff.metamodel.uml_diff_extension.impl.TaggedValueChangeImpl + * @see org.eclipse.papyrus.uml.compare.diff.metamodel.uml_diff_extension.impl.UMLDiffPackageImpl#getTaggedValueChange() + * @generated + */ + int TAGGED_VALUE_CHANGE = 2; + + /** + * The feature id for the '<em><b>Hide Elements</b></em>' reference list. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int TAGGED_VALUE_CHANGE__HIDE_ELEMENTS = UML_DIFF_EXTENSION__HIDE_ELEMENTS; + + /** + * The feature id for the '<em><b>Is Collapsed</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int TAGGED_VALUE_CHANGE__IS_COLLAPSED = UML_DIFF_EXTENSION__IS_COLLAPSED; + + /** + * The feature id for the '<em><b>Sub Diff Elements</b></em>' containment reference list. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int TAGGED_VALUE_CHANGE__SUB_DIFF_ELEMENTS = UML_DIFF_EXTENSION_FEATURE_COUNT + 0; + + /** + * The feature id for the '<em><b>Is Hidden By</b></em>' reference list. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int TAGGED_VALUE_CHANGE__IS_HIDDEN_BY = UML_DIFF_EXTENSION_FEATURE_COUNT + 1; + + /** + * The feature id for the '<em><b>Conflicting</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int TAGGED_VALUE_CHANGE__CONFLICTING = UML_DIFF_EXTENSION_FEATURE_COUNT + 2; + + /** + * The feature id for the '<em><b>Kind</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int TAGGED_VALUE_CHANGE__KIND = UML_DIFF_EXTENSION_FEATURE_COUNT + 3; + + /** + * The feature id for the '<em><b>Remote</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int TAGGED_VALUE_CHANGE__REMOTE = UML_DIFF_EXTENSION_FEATURE_COUNT + 4; + + /** + * The feature id for the '<em><b>Attribute</b></em>' reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int TAGGED_VALUE_CHANGE__ATTRIBUTE = UML_DIFF_EXTENSION_FEATURE_COUNT + 5; + + /** + * The feature id for the '<em><b>Left Element</b></em>' reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int TAGGED_VALUE_CHANGE__LEFT_ELEMENT = UML_DIFF_EXTENSION_FEATURE_COUNT + 6; + + /** + * The feature id for the '<em><b>Right Element</b></em>' reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int TAGGED_VALUE_CHANGE__RIGHT_ELEMENT = UML_DIFF_EXTENSION_FEATURE_COUNT + 7; + + /** + * The number of structural features of the '<em>Tagged Value Change</em>' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int TAGGED_VALUE_CHANGE_FEATURE_COUNT = UML_DIFF_EXTENSION_FEATURE_COUNT + 8; + + /** + * The meta object id for the '{@link org.eclipse.papyrus.uml.compare.diff.metamodel.uml_diff_extension.impl.TaggedValueChangeLeftTargetImpl <em>Tagged Value Change Left Target</em>}' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see org.eclipse.papyrus.uml.compare.diff.metamodel.uml_diff_extension.impl.TaggedValueChangeLeftTargetImpl + * @see org.eclipse.papyrus.uml.compare.diff.metamodel.uml_diff_extension.impl.UMLDiffPackageImpl#getTaggedValueChangeLeftTarget() + * @generated + */ + int TAGGED_VALUE_CHANGE_LEFT_TARGET = 3; + + /** + * The feature id for the '<em><b>Hide Elements</b></em>' reference list. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int TAGGED_VALUE_CHANGE_LEFT_TARGET__HIDE_ELEMENTS = TAGGED_VALUE_CHANGE__HIDE_ELEMENTS; + + /** + * The feature id for the '<em><b>Is Collapsed</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int TAGGED_VALUE_CHANGE_LEFT_TARGET__IS_COLLAPSED = TAGGED_VALUE_CHANGE__IS_COLLAPSED; + + /** + * The feature id for the '<em><b>Sub Diff Elements</b></em>' containment reference list. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int TAGGED_VALUE_CHANGE_LEFT_TARGET__SUB_DIFF_ELEMENTS = TAGGED_VALUE_CHANGE__SUB_DIFF_ELEMENTS; + + /** + * The feature id for the '<em><b>Is Hidden By</b></em>' reference list. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int TAGGED_VALUE_CHANGE_LEFT_TARGET__IS_HIDDEN_BY = TAGGED_VALUE_CHANGE__IS_HIDDEN_BY; + + /** + * The feature id for the '<em><b>Conflicting</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int TAGGED_VALUE_CHANGE_LEFT_TARGET__CONFLICTING = TAGGED_VALUE_CHANGE__CONFLICTING; + + /** + * The feature id for the '<em><b>Kind</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int TAGGED_VALUE_CHANGE_LEFT_TARGET__KIND = TAGGED_VALUE_CHANGE__KIND; + + /** + * The feature id for the '<em><b>Remote</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int TAGGED_VALUE_CHANGE_LEFT_TARGET__REMOTE = TAGGED_VALUE_CHANGE__REMOTE; + + /** + * The feature id for the '<em><b>Attribute</b></em>' reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int TAGGED_VALUE_CHANGE_LEFT_TARGET__ATTRIBUTE = TAGGED_VALUE_CHANGE__ATTRIBUTE; + + /** + * The feature id for the '<em><b>Left Element</b></em>' reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int TAGGED_VALUE_CHANGE_LEFT_TARGET__LEFT_ELEMENT = TAGGED_VALUE_CHANGE__LEFT_ELEMENT; + + /** + * The feature id for the '<em><b>Right Element</b></em>' reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int TAGGED_VALUE_CHANGE_LEFT_TARGET__RIGHT_ELEMENT = TAGGED_VALUE_CHANGE__RIGHT_ELEMENT; + + /** + * The feature id for the '<em><b>Left Target</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int TAGGED_VALUE_CHANGE_LEFT_TARGET__LEFT_TARGET = TAGGED_VALUE_CHANGE_FEATURE_COUNT + 0; + + /** + * The number of structural features of the '<em>Tagged Value Change Left Target</em>' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int TAGGED_VALUE_CHANGE_LEFT_TARGET_FEATURE_COUNT = TAGGED_VALUE_CHANGE_FEATURE_COUNT + 1; + + /** + * The meta object id for the '{@link org.eclipse.papyrus.uml.compare.diff.metamodel.uml_diff_extension.impl.TaggedValueChangeRightTargetImpl <em>Tagged Value Change Right Target</em>}' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see org.eclipse.papyrus.uml.compare.diff.metamodel.uml_diff_extension.impl.TaggedValueChangeRightTargetImpl + * @see org.eclipse.papyrus.uml.compare.diff.metamodel.uml_diff_extension.impl.UMLDiffPackageImpl#getTaggedValueChangeRightTarget() + * @generated + */ + int TAGGED_VALUE_CHANGE_RIGHT_TARGET = 4; + + /** + * The feature id for the '<em><b>Hide Elements</b></em>' reference list. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int TAGGED_VALUE_CHANGE_RIGHT_TARGET__HIDE_ELEMENTS = TAGGED_VALUE_CHANGE__HIDE_ELEMENTS; + + /** + * The feature id for the '<em><b>Is Collapsed</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int TAGGED_VALUE_CHANGE_RIGHT_TARGET__IS_COLLAPSED = TAGGED_VALUE_CHANGE__IS_COLLAPSED; + + /** + * The feature id for the '<em><b>Sub Diff Elements</b></em>' containment reference list. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int TAGGED_VALUE_CHANGE_RIGHT_TARGET__SUB_DIFF_ELEMENTS = TAGGED_VALUE_CHANGE__SUB_DIFF_ELEMENTS; + + /** + * The feature id for the '<em><b>Is Hidden By</b></em>' reference list. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int TAGGED_VALUE_CHANGE_RIGHT_TARGET__IS_HIDDEN_BY = TAGGED_VALUE_CHANGE__IS_HIDDEN_BY; + + /** + * The feature id for the '<em><b>Conflicting</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int TAGGED_VALUE_CHANGE_RIGHT_TARGET__CONFLICTING = TAGGED_VALUE_CHANGE__CONFLICTING; + + /** + * The feature id for the '<em><b>Kind</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int TAGGED_VALUE_CHANGE_RIGHT_TARGET__KIND = TAGGED_VALUE_CHANGE__KIND; + + /** + * The feature id for the '<em><b>Remote</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int TAGGED_VALUE_CHANGE_RIGHT_TARGET__REMOTE = TAGGED_VALUE_CHANGE__REMOTE; + + /** + * The feature id for the '<em><b>Attribute</b></em>' reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int TAGGED_VALUE_CHANGE_RIGHT_TARGET__ATTRIBUTE = TAGGED_VALUE_CHANGE__ATTRIBUTE; + + /** + * The feature id for the '<em><b>Left Element</b></em>' reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int TAGGED_VALUE_CHANGE_RIGHT_TARGET__LEFT_ELEMENT = TAGGED_VALUE_CHANGE__LEFT_ELEMENT; + + /** + * The feature id for the '<em><b>Right Element</b></em>' reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int TAGGED_VALUE_CHANGE_RIGHT_TARGET__RIGHT_ELEMENT = TAGGED_VALUE_CHANGE__RIGHT_ELEMENT; + + /** + * The feature id for the '<em><b>Right Target</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int TAGGED_VALUE_CHANGE_RIGHT_TARGET__RIGHT_TARGET = TAGGED_VALUE_CHANGE_FEATURE_COUNT + 0; + + /** + * The number of structural features of the '<em>Tagged Value Change Right Target</em>' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int TAGGED_VALUE_CHANGE_RIGHT_TARGET_FEATURE_COUNT = TAGGED_VALUE_CHANGE_FEATURE_COUNT + 1; + + /** + * The meta object id for the '{@link org.eclipse.papyrus.uml.compare.diff.metamodel.uml_diff_extension.impl.UpdateTaggedValueImpl <em>Update Tagged Value</em>}' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see org.eclipse.papyrus.uml.compare.diff.metamodel.uml_diff_extension.impl.UpdateTaggedValueImpl + * @see org.eclipse.papyrus.uml.compare.diff.metamodel.uml_diff_extension.impl.UMLDiffPackageImpl#getUpdateTaggedValue() + * @generated + */ + int UPDATE_TAGGED_VALUE = 5; + + /** + * The feature id for the '<em><b>Hide Elements</b></em>' reference list. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int UPDATE_TAGGED_VALUE__HIDE_ELEMENTS = TAGGED_VALUE_CHANGE__HIDE_ELEMENTS; + + /** + * The feature id for the '<em><b>Is Collapsed</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int UPDATE_TAGGED_VALUE__IS_COLLAPSED = TAGGED_VALUE_CHANGE__IS_COLLAPSED; + + /** + * The feature id for the '<em><b>Sub Diff Elements</b></em>' containment reference list. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int UPDATE_TAGGED_VALUE__SUB_DIFF_ELEMENTS = TAGGED_VALUE_CHANGE__SUB_DIFF_ELEMENTS; + + /** + * The feature id for the '<em><b>Is Hidden By</b></em>' reference list. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int UPDATE_TAGGED_VALUE__IS_HIDDEN_BY = TAGGED_VALUE_CHANGE__IS_HIDDEN_BY; + + /** + * The feature id for the '<em><b>Conflicting</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int UPDATE_TAGGED_VALUE__CONFLICTING = TAGGED_VALUE_CHANGE__CONFLICTING; + + /** + * The feature id for the '<em><b>Kind</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int UPDATE_TAGGED_VALUE__KIND = TAGGED_VALUE_CHANGE__KIND; + + /** + * The feature id for the '<em><b>Remote</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int UPDATE_TAGGED_VALUE__REMOTE = TAGGED_VALUE_CHANGE__REMOTE; + + /** + * The feature id for the '<em><b>Attribute</b></em>' reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int UPDATE_TAGGED_VALUE__ATTRIBUTE = TAGGED_VALUE_CHANGE__ATTRIBUTE; + + /** + * The feature id for the '<em><b>Left Element</b></em>' reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int UPDATE_TAGGED_VALUE__LEFT_ELEMENT = TAGGED_VALUE_CHANGE__LEFT_ELEMENT; + + /** + * The feature id for the '<em><b>Right Element</b></em>' reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int UPDATE_TAGGED_VALUE__RIGHT_ELEMENT = TAGGED_VALUE_CHANGE__RIGHT_ELEMENT; + + /** + * The number of structural features of the '<em>Update Tagged Value</em>' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int UPDATE_TAGGED_VALUE_FEATURE_COUNT = TAGGED_VALUE_CHANGE_FEATURE_COUNT + 0; + + /** + * The meta object id for the '{@link org.eclipse.papyrus.uml.compare.diff.metamodel.uml_diff_extension.impl.AddStereotypeApplicationImpl <em>Add Stereotype Application</em>}' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see org.eclipse.papyrus.uml.compare.diff.metamodel.uml_diff_extension.impl.AddStereotypeApplicationImpl + * @see org.eclipse.papyrus.uml.compare.diff.metamodel.uml_diff_extension.impl.UMLDiffPackageImpl#getAddStereotypeApplication() + * @generated + */ + int ADD_STEREOTYPE_APPLICATION = 6; + + /** + * The feature id for the '<em><b>Hide Elements</b></em>' reference list. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int ADD_STEREOTYPE_APPLICATION__HIDE_ELEMENTS = STEREOTYPE_CHANGE__HIDE_ELEMENTS; + + /** + * The feature id for the '<em><b>Is Collapsed</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int ADD_STEREOTYPE_APPLICATION__IS_COLLAPSED = STEREOTYPE_CHANGE__IS_COLLAPSED; + + /** + * The feature id for the '<em><b>Sub Diff Elements</b></em>' containment reference list. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int ADD_STEREOTYPE_APPLICATION__SUB_DIFF_ELEMENTS = STEREOTYPE_CHANGE_FEATURE_COUNT + 0; + + /** + * The feature id for the '<em><b>Is Hidden By</b></em>' reference list. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int ADD_STEREOTYPE_APPLICATION__IS_HIDDEN_BY = STEREOTYPE_CHANGE_FEATURE_COUNT + 1; + + /** + * The feature id for the '<em><b>Conflicting</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int ADD_STEREOTYPE_APPLICATION__CONFLICTING = STEREOTYPE_CHANGE_FEATURE_COUNT + 2; + + /** + * The feature id for the '<em><b>Kind</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int ADD_STEREOTYPE_APPLICATION__KIND = STEREOTYPE_CHANGE_FEATURE_COUNT + 3; + + /** + * The feature id for the '<em><b>Remote</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int ADD_STEREOTYPE_APPLICATION__REMOTE = STEREOTYPE_CHANGE_FEATURE_COUNT + 4; + + /** + * The feature id for the '<em><b>Left Parent</b></em>' reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int ADD_STEREOTYPE_APPLICATION__LEFT_PARENT = STEREOTYPE_CHANGE_FEATURE_COUNT + 5; + + /** + * The feature id for the '<em><b>Right Element</b></em>' reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int ADD_STEREOTYPE_APPLICATION__RIGHT_ELEMENT = STEREOTYPE_CHANGE_FEATURE_COUNT + 6; + + /** + * The number of structural features of the '<em>Add Stereotype Application</em>' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int ADD_STEREOTYPE_APPLICATION_FEATURE_COUNT = STEREOTYPE_CHANGE_FEATURE_COUNT + 7; + + /** + * The meta object id for the '{@link org.eclipse.papyrus.uml.compare.diff.metamodel.uml_diff_extension.impl.RemoveStereotypeApplicationImpl <em>Remove Stereotype Application</em>}' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see org.eclipse.papyrus.uml.compare.diff.metamodel.uml_diff_extension.impl.RemoveStereotypeApplicationImpl + * @see org.eclipse.papyrus.uml.compare.diff.metamodel.uml_diff_extension.impl.UMLDiffPackageImpl#getRemoveStereotypeApplication() + * @generated + */ + int REMOVE_STEREOTYPE_APPLICATION = 7; + + /** + * The feature id for the '<em><b>Hide Elements</b></em>' reference list. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int REMOVE_STEREOTYPE_APPLICATION__HIDE_ELEMENTS = STEREOTYPE_CHANGE__HIDE_ELEMENTS; + + /** + * The feature id for the '<em><b>Is Collapsed</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int REMOVE_STEREOTYPE_APPLICATION__IS_COLLAPSED = STEREOTYPE_CHANGE__IS_COLLAPSED; + + /** + * The feature id for the '<em><b>Sub Diff Elements</b></em>' containment reference list. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int REMOVE_STEREOTYPE_APPLICATION__SUB_DIFF_ELEMENTS = STEREOTYPE_CHANGE_FEATURE_COUNT + 0; + + /** + * The feature id for the '<em><b>Is Hidden By</b></em>' reference list. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int REMOVE_STEREOTYPE_APPLICATION__IS_HIDDEN_BY = STEREOTYPE_CHANGE_FEATURE_COUNT + 1; + + /** + * The feature id for the '<em><b>Conflicting</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int REMOVE_STEREOTYPE_APPLICATION__CONFLICTING = STEREOTYPE_CHANGE_FEATURE_COUNT + 2; + + /** + * The feature id for the '<em><b>Kind</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int REMOVE_STEREOTYPE_APPLICATION__KIND = STEREOTYPE_CHANGE_FEATURE_COUNT + 3; + + /** + * The feature id for the '<em><b>Remote</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int REMOVE_STEREOTYPE_APPLICATION__REMOTE = STEREOTYPE_CHANGE_FEATURE_COUNT + 4; + + /** + * The feature id for the '<em><b>Right Parent</b></em>' reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int REMOVE_STEREOTYPE_APPLICATION__RIGHT_PARENT = STEREOTYPE_CHANGE_FEATURE_COUNT + 5; + + /** + * The feature id for the '<em><b>Left Element</b></em>' reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int REMOVE_STEREOTYPE_APPLICATION__LEFT_ELEMENT = STEREOTYPE_CHANGE_FEATURE_COUNT + 6; + + /** + * The number of structural features of the '<em>Remove Stereotype Application</em>' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int REMOVE_STEREOTYPE_APPLICATION_FEATURE_COUNT = STEREOTYPE_CHANGE_FEATURE_COUNT + 7; + + + /** + * The meta object id for the '{@link org.eclipse.papyrus.uml.compare.diff.metamodel.uml_diff_extension.impl.TaggedValueReferenceChangeImpl <em>Tagged Value Reference Change</em>}' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see org.eclipse.papyrus.uml.compare.diff.metamodel.uml_diff_extension.impl.TaggedValueReferenceChangeImpl + * @see org.eclipse.papyrus.uml.compare.diff.metamodel.uml_diff_extension.impl.UMLDiffPackageImpl#getTaggedValueReferenceChange() + * @generated + */ + int TAGGED_VALUE_REFERENCE_CHANGE = 8; + + /** + * The feature id for the '<em><b>Hide Elements</b></em>' reference list. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int TAGGED_VALUE_REFERENCE_CHANGE__HIDE_ELEMENTS = UML_DIFF_EXTENSION__HIDE_ELEMENTS; + + /** + * The feature id for the '<em><b>Is Collapsed</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int TAGGED_VALUE_REFERENCE_CHANGE__IS_COLLAPSED = UML_DIFF_EXTENSION__IS_COLLAPSED; + + /** + * The feature id for the '<em><b>Sub Diff Elements</b></em>' containment reference list. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int TAGGED_VALUE_REFERENCE_CHANGE__SUB_DIFF_ELEMENTS = UML_DIFF_EXTENSION_FEATURE_COUNT + 0; + + /** + * The feature id for the '<em><b>Is Hidden By</b></em>' reference list. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int TAGGED_VALUE_REFERENCE_CHANGE__IS_HIDDEN_BY = UML_DIFF_EXTENSION_FEATURE_COUNT + 1; + + /** + * The feature id for the '<em><b>Conflicting</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int TAGGED_VALUE_REFERENCE_CHANGE__CONFLICTING = UML_DIFF_EXTENSION_FEATURE_COUNT + 2; + + /** + * The feature id for the '<em><b>Kind</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int TAGGED_VALUE_REFERENCE_CHANGE__KIND = UML_DIFF_EXTENSION_FEATURE_COUNT + 3; + + /** + * The feature id for the '<em><b>Remote</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int TAGGED_VALUE_REFERENCE_CHANGE__REMOTE = UML_DIFF_EXTENSION_FEATURE_COUNT + 4; + + /** + * The feature id for the '<em><b>Reference</b></em>' reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int TAGGED_VALUE_REFERENCE_CHANGE__REFERENCE = UML_DIFF_EXTENSION_FEATURE_COUNT + 5; + + /** + * The feature id for the '<em><b>Right Element</b></em>' reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int TAGGED_VALUE_REFERENCE_CHANGE__RIGHT_ELEMENT = UML_DIFF_EXTENSION_FEATURE_COUNT + 6; + + /** + * The feature id for the '<em><b>Left Element</b></em>' reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int TAGGED_VALUE_REFERENCE_CHANGE__LEFT_ELEMENT = UML_DIFF_EXTENSION_FEATURE_COUNT + 7; + + /** + * The number of structural features of the '<em>Tagged Value Reference Change</em>' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int TAGGED_VALUE_REFERENCE_CHANGE_FEATURE_COUNT = UML_DIFF_EXTENSION_FEATURE_COUNT + 8; + + + /** + * The meta object id for the '{@link org.eclipse.papyrus.uml.compare.diff.metamodel.uml_diff_extension.impl.CompareTwoElementsDiffModelImpl <em>Compare Two Elements Diff Model</em>}' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see org.eclipse.papyrus.uml.compare.diff.metamodel.uml_diff_extension.impl.CompareTwoElementsDiffModelImpl + * @see org.eclipse.papyrus.uml.compare.diff.metamodel.uml_diff_extension.impl.UMLDiffPackageImpl#getCompareTwoElementsDiffModel() + * @generated + */ + int COMPARE_TWO_ELEMENTS_DIFF_MODEL = 9; + + /** + * The feature id for the '<em><b>Hide Elements</b></em>' reference list. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int COMPARE_TWO_ELEMENTS_DIFF_MODEL__HIDE_ELEMENTS = UML_DIFF_EXTENSION__HIDE_ELEMENTS; + + /** + * The feature id for the '<em><b>Is Collapsed</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int COMPARE_TWO_ELEMENTS_DIFF_MODEL__IS_COLLAPSED = UML_DIFF_EXTENSION__IS_COLLAPSED; + + /** + * The feature id for the '<em><b>Owned Elements</b></em>' containment reference list. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int COMPARE_TWO_ELEMENTS_DIFF_MODEL__OWNED_ELEMENTS = UML_DIFF_EXTENSION_FEATURE_COUNT + 0; + + /** + * The feature id for the '<em><b>Left Roots</b></em>' reference list. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int COMPARE_TWO_ELEMENTS_DIFF_MODEL__LEFT_ROOTS = UML_DIFF_EXTENSION_FEATURE_COUNT + 1; + + /** + * The feature id for the '<em><b>Right Roots</b></em>' reference list. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int COMPARE_TWO_ELEMENTS_DIFF_MODEL__RIGHT_ROOTS = UML_DIFF_EXTENSION_FEATURE_COUNT + 2; + + /** + * The feature id for the '<em><b>Ancestor Roots</b></em>' reference list. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int COMPARE_TWO_ELEMENTS_DIFF_MODEL__ANCESTOR_ROOTS = UML_DIFF_EXTENSION_FEATURE_COUNT + 3; + + /** + * The number of structural features of the '<em>Compare Two Elements Diff Model</em>' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int COMPARE_TWO_ELEMENTS_DIFF_MODEL_FEATURE_COUNT = UML_DIFF_EXTENSION_FEATURE_COUNT + 4; + + + /** + * Returns the meta object for class '{@link org.eclipse.papyrus.uml.compare.diff.metamodel.uml_diff_extension.UMLDiffExtension <em>Extension</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for class '<em>Extension</em>'. + * @see org.eclipse.papyrus.uml.compare.diff.metamodel.uml_diff_extension.UMLDiffExtension + * @generated + */ + EClass getUMLDiffExtension(); + + /** + * Returns the meta object for class '{@link org.eclipse.papyrus.uml.compare.diff.metamodel.uml_diff_extension.StereotypeChange <em>Stereotype Change</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for class '<em>Stereotype Change</em>'. + * @see org.eclipse.papyrus.uml.compare.diff.metamodel.uml_diff_extension.StereotypeChange + * @generated + */ + EClass getStereotypeChange(); + + /** + * Returns the meta object for class '{@link org.eclipse.papyrus.uml.compare.diff.metamodel.uml_diff_extension.TaggedValueChange <em>Tagged Value Change</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for class '<em>Tagged Value Change</em>'. + * @see org.eclipse.papyrus.uml.compare.diff.metamodel.uml_diff_extension.TaggedValueChange + * @generated + */ + EClass getTaggedValueChange(); + + /** + * Returns the meta object for class '{@link org.eclipse.papyrus.uml.compare.diff.metamodel.uml_diff_extension.TaggedValueChangeLeftTarget <em>Tagged Value Change Left Target</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for class '<em>Tagged Value Change Left Target</em>'. + * @see org.eclipse.papyrus.uml.compare.diff.metamodel.uml_diff_extension.TaggedValueChangeLeftTarget + * @generated + */ + EClass getTaggedValueChangeLeftTarget(); + + /** + * Returns the meta object for class '{@link org.eclipse.papyrus.uml.compare.diff.metamodel.uml_diff_extension.TaggedValueChangeRightTarget <em>Tagged Value Change Right Target</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for class '<em>Tagged Value Change Right Target</em>'. + * @see org.eclipse.papyrus.uml.compare.diff.metamodel.uml_diff_extension.TaggedValueChangeRightTarget + * @generated + */ + EClass getTaggedValueChangeRightTarget(); + + /** + * Returns the meta object for class '{@link org.eclipse.papyrus.uml.compare.diff.metamodel.uml_diff_extension.UpdateTaggedValue <em>Update Tagged Value</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for class '<em>Update Tagged Value</em>'. + * @see org.eclipse.papyrus.uml.compare.diff.metamodel.uml_diff_extension.UpdateTaggedValue + * @generated + */ + EClass getUpdateTaggedValue(); + + /** + * Returns the meta object for class '{@link org.eclipse.papyrus.uml.compare.diff.metamodel.uml_diff_extension.AddStereotypeApplication <em>Add Stereotype Application</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for class '<em>Add Stereotype Application</em>'. + * @see org.eclipse.papyrus.uml.compare.diff.metamodel.uml_diff_extension.AddStereotypeApplication + * @generated + */ + EClass getAddStereotypeApplication(); + + /** + * Returns the meta object for class '{@link org.eclipse.papyrus.uml.compare.diff.metamodel.uml_diff_extension.RemoveStereotypeApplication <em>Remove Stereotype Application</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for class '<em>Remove Stereotype Application</em>'. + * @see org.eclipse.papyrus.uml.compare.diff.metamodel.uml_diff_extension.RemoveStereotypeApplication + * @generated + */ + EClass getRemoveStereotypeApplication(); + + /** + * Returns the meta object for class '{@link org.eclipse.papyrus.uml.compare.diff.metamodel.uml_diff_extension.TaggedValueReferenceChange <em>Tagged Value Reference Change</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for class '<em>Tagged Value Reference Change</em>'. + * @see org.eclipse.papyrus.uml.compare.diff.metamodel.uml_diff_extension.TaggedValueReferenceChange + * @generated + */ + EClass getTaggedValueReferenceChange(); + + /** + * Returns the meta object for class '{@link org.eclipse.papyrus.uml.compare.diff.metamodel.uml_diff_extension.CompareTwoElementsDiffModel <em>Compare Two Elements Diff Model</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for class '<em>Compare Two Elements Diff Model</em>'. + * @see org.eclipse.papyrus.uml.compare.diff.metamodel.uml_diff_extension.CompareTwoElementsDiffModel + * @generated + */ + EClass getCompareTwoElementsDiffModel(); + + /** + * Returns the factory that creates the instances of the model. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the factory that creates the instances of the model. + * @generated + */ + UMLDiffFactory getUMLDiffFactory(); + + /** + * <!-- begin-user-doc --> + * Defines literals for the meta objects that represent + * <ul> + * <li>each class,</li> + * <li>each feature of each class,</li> + * <li>each enum,</li> + * <li>and each data type</li> + * </ul> + * <!-- end-user-doc --> + * @generated + */ + interface Literals { + /** + * The meta object literal for the '{@link org.eclipse.papyrus.uml.compare.diff.metamodel.uml_diff_extension.impl.UMLDiffExtensionImpl <em>Extension</em>}' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see org.eclipse.papyrus.uml.compare.diff.metamodel.uml_diff_extension.impl.UMLDiffExtensionImpl + * @see org.eclipse.papyrus.uml.compare.diff.metamodel.uml_diff_extension.impl.UMLDiffPackageImpl#getUMLDiffExtension() + * @generated + */ + EClass UML_DIFF_EXTENSION = eINSTANCE.getUMLDiffExtension(); + + /** + * The meta object literal for the '{@link org.eclipse.papyrus.uml.compare.diff.metamodel.uml_diff_extension.impl.StereotypeChangeImpl <em>Stereotype Change</em>}' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see org.eclipse.papyrus.uml.compare.diff.metamodel.uml_diff_extension.impl.StereotypeChangeImpl + * @see org.eclipse.papyrus.uml.compare.diff.metamodel.uml_diff_extension.impl.UMLDiffPackageImpl#getStereotypeChange() + * @generated + */ + EClass STEREOTYPE_CHANGE = eINSTANCE.getStereotypeChange(); + + /** + * The meta object literal for the '{@link org.eclipse.papyrus.uml.compare.diff.metamodel.uml_diff_extension.impl.TaggedValueChangeImpl <em>Tagged Value Change</em>}' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see org.eclipse.papyrus.uml.compare.diff.metamodel.uml_diff_extension.impl.TaggedValueChangeImpl + * @see org.eclipse.papyrus.uml.compare.diff.metamodel.uml_diff_extension.impl.UMLDiffPackageImpl#getTaggedValueChange() + * @generated + */ + EClass TAGGED_VALUE_CHANGE = eINSTANCE.getTaggedValueChange(); + + /** + * The meta object literal for the '{@link org.eclipse.papyrus.uml.compare.diff.metamodel.uml_diff_extension.impl.TaggedValueChangeLeftTargetImpl <em>Tagged Value Change Left Target</em>}' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see org.eclipse.papyrus.uml.compare.diff.metamodel.uml_diff_extension.impl.TaggedValueChangeLeftTargetImpl + * @see org.eclipse.papyrus.uml.compare.diff.metamodel.uml_diff_extension.impl.UMLDiffPackageImpl#getTaggedValueChangeLeftTarget() + * @generated + */ + EClass TAGGED_VALUE_CHANGE_LEFT_TARGET = eINSTANCE.getTaggedValueChangeLeftTarget(); + + /** + * The meta object literal for the '{@link org.eclipse.papyrus.uml.compare.diff.metamodel.uml_diff_extension.impl.TaggedValueChangeRightTargetImpl <em>Tagged Value Change Right Target</em>}' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see org.eclipse.papyrus.uml.compare.diff.metamodel.uml_diff_extension.impl.TaggedValueChangeRightTargetImpl + * @see org.eclipse.papyrus.uml.compare.diff.metamodel.uml_diff_extension.impl.UMLDiffPackageImpl#getTaggedValueChangeRightTarget() + * @generated + */ + EClass TAGGED_VALUE_CHANGE_RIGHT_TARGET = eINSTANCE.getTaggedValueChangeRightTarget(); + + /** + * The meta object literal for the '{@link org.eclipse.papyrus.uml.compare.diff.metamodel.uml_diff_extension.impl.UpdateTaggedValueImpl <em>Update Tagged Value</em>}' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see org.eclipse.papyrus.uml.compare.diff.metamodel.uml_diff_extension.impl.UpdateTaggedValueImpl + * @see org.eclipse.papyrus.uml.compare.diff.metamodel.uml_diff_extension.impl.UMLDiffPackageImpl#getUpdateTaggedValue() + * @generated + */ + EClass UPDATE_TAGGED_VALUE = eINSTANCE.getUpdateTaggedValue(); + + /** + * The meta object literal for the '{@link org.eclipse.papyrus.uml.compare.diff.metamodel.uml_diff_extension.impl.AddStereotypeApplicationImpl <em>Add Stereotype Application</em>}' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see org.eclipse.papyrus.uml.compare.diff.metamodel.uml_diff_extension.impl.AddStereotypeApplicationImpl + * @see org.eclipse.papyrus.uml.compare.diff.metamodel.uml_diff_extension.impl.UMLDiffPackageImpl#getAddStereotypeApplication() + * @generated + */ + EClass ADD_STEREOTYPE_APPLICATION = eINSTANCE.getAddStereotypeApplication(); + + /** + * The meta object literal for the '{@link org.eclipse.papyrus.uml.compare.diff.metamodel.uml_diff_extension.impl.RemoveStereotypeApplicationImpl <em>Remove Stereotype Application</em>}' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see org.eclipse.papyrus.uml.compare.diff.metamodel.uml_diff_extension.impl.RemoveStereotypeApplicationImpl + * @see org.eclipse.papyrus.uml.compare.diff.metamodel.uml_diff_extension.impl.UMLDiffPackageImpl#getRemoveStereotypeApplication() + * @generated + */ + EClass REMOVE_STEREOTYPE_APPLICATION = eINSTANCE.getRemoveStereotypeApplication(); + + /** + * The meta object literal for the '{@link org.eclipse.papyrus.uml.compare.diff.metamodel.uml_diff_extension.impl.TaggedValueReferenceChangeImpl <em>Tagged Value Reference Change</em>}' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see org.eclipse.papyrus.uml.compare.diff.metamodel.uml_diff_extension.impl.TaggedValueReferenceChangeImpl + * @see org.eclipse.papyrus.uml.compare.diff.metamodel.uml_diff_extension.impl.UMLDiffPackageImpl#getTaggedValueReferenceChange() + * @generated + */ + EClass TAGGED_VALUE_REFERENCE_CHANGE = eINSTANCE.getTaggedValueReferenceChange(); + + /** + * The meta object literal for the '{@link org.eclipse.papyrus.uml.compare.diff.metamodel.uml_diff_extension.impl.CompareTwoElementsDiffModelImpl <em>Compare Two Elements Diff Model</em>}' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see org.eclipse.papyrus.uml.compare.diff.metamodel.uml_diff_extension.impl.CompareTwoElementsDiffModelImpl + * @see org.eclipse.papyrus.uml.compare.diff.metamodel.uml_diff_extension.impl.UMLDiffPackageImpl#getCompareTwoElementsDiffModel() + * @generated + */ + EClass COMPARE_TWO_ELEMENTS_DIFF_MODEL = eINSTANCE.getCompareTwoElementsDiffModel(); + + } + +} //UMLDiffPackage diff --git a/deprecated/org.eclipse.papyrus.uml.compare/src-gen/org/eclipse/papyrus/uml/compare/diff/metamodel/uml_diff_extension/UpdateTaggedValue.java b/deprecated/org.eclipse.papyrus.uml.compare/src-gen/org/eclipse/papyrus/uml/compare/diff/metamodel/uml_diff_extension/UpdateTaggedValue.java new file mode 100644 index 00000000000..43c2c290ec1 --- /dev/null +++ b/deprecated/org.eclipse.papyrus.uml.compare/src-gen/org/eclipse/papyrus/uml/compare/diff/metamodel/uml_diff_extension/UpdateTaggedValue.java @@ -0,0 +1,27 @@ +/** + * + * Copyright (c) 2010 CEA LIST. + * 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: + * Tatiana Fesenko(CEA LIST) - initial API and implementation + */ +package org.eclipse.papyrus.uml.compare.diff.metamodel.uml_diff_extension; + +import org.eclipse.emf.compare.diff.metamodel.UpdateAttribute; + +/** + * <!-- begin-user-doc --> + * A representation of the model object '<em><b>Update Tagged Value</b></em>'. + * <!-- end-user-doc --> + * + * + * @see org.eclipse.papyrus.uml.compare.diff.metamodel.uml_diff_extension.UMLDiffPackage#getUpdateTaggedValue() + * @model + * @generated + */ +public interface UpdateTaggedValue extends TaggedValueChange, UpdateAttribute { +} // UpdateTaggedValue diff --git a/deprecated/org.eclipse.papyrus.uml.compare/src-gen/org/eclipse/papyrus/uml/compare/diff/metamodel/uml_diff_extension/impl/AddStereotypeApplicationImpl.java b/deprecated/org.eclipse.papyrus.uml.compare/src-gen/org/eclipse/papyrus/uml/compare/diff/metamodel/uml_diff_extension/impl/AddStereotypeApplicationImpl.java new file mode 100644 index 00000000000..da50fe9d6be --- /dev/null +++ b/deprecated/org.eclipse.papyrus.uml.compare/src-gen/org/eclipse/papyrus/uml/compare/diff/metamodel/uml_diff_extension/impl/AddStereotypeApplicationImpl.java @@ -0,0 +1,534 @@ +/** + * + * Copyright (c) 2010 CEA LIST. + * 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: + * Tatiana Fesenko(CEA LIST) - initial API and implementation + */ +package org.eclipse.papyrus.uml.compare.diff.metamodel.uml_diff_extension.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.compare.diff.merge.IMerger; +import org.eclipse.emf.compare.diff.metamodel.AbstractDiffExtension; +import org.eclipse.emf.compare.diff.metamodel.DiffElement; +import org.eclipse.emf.compare.diff.metamodel.DiffPackage; +import org.eclipse.emf.compare.diff.metamodel.DifferenceKind; +import org.eclipse.emf.compare.diff.metamodel.ModelElementChange; +import org.eclipse.emf.compare.diff.metamodel.ModelElementChangeRightTarget; +import org.eclipse.emf.compare.util.AdapterUtils; +import org.eclipse.emf.ecore.EClass; + +import org.eclipse.emf.ecore.EObject; +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.EObjectWithInverseResolvingEList; +import org.eclipse.emf.ecore.util.InternalEList; +import org.eclipse.papyrus.uml.compare.UMLCompareUtils; +import org.eclipse.papyrus.uml.compare.diff.metamodel.uml_diff_extension.AddStereotypeApplication; +import org.eclipse.papyrus.uml.compare.diff.metamodel.uml_diff_extension.UMLDiffPackage; +import org.eclipse.uml2.uml.util.UMLUtil; + +/** + * <!-- begin-user-doc --> + * An implementation of the model object '<em><b>Add Stereotype Application</b></em>'. + * <!-- end-user-doc --> + * <p> + * The following features are implemented: + * <ul> + * <li>{@link org.eclipse.papyrus.uml.compare.diff.metamodel.uml_diff_extension.impl.AddStereotypeApplicationImpl#getSubDiffElements <em>Sub Diff Elements</em>}</li> + * <li>{@link org.eclipse.papyrus.uml.compare.diff.metamodel.uml_diff_extension.impl.AddStereotypeApplicationImpl#getIsHiddenBy <em>Is Hidden By</em>}</li> + * <li>{@link org.eclipse.papyrus.uml.compare.diff.metamodel.uml_diff_extension.impl.AddStereotypeApplicationImpl#isConflicting <em>Conflicting</em>}</li> + * <li>{@link org.eclipse.papyrus.uml.compare.diff.metamodel.uml_diff_extension.impl.AddStereotypeApplicationImpl#getKind <em>Kind</em>}</li> + * <li>{@link org.eclipse.papyrus.uml.compare.diff.metamodel.uml_diff_extension.impl.AddStereotypeApplicationImpl#isRemote <em>Remote</em>}</li> + * <li>{@link org.eclipse.papyrus.uml.compare.diff.metamodel.uml_diff_extension.impl.AddStereotypeApplicationImpl#getLeftParent <em>Left Parent</em>}</li> + * <li>{@link org.eclipse.papyrus.uml.compare.diff.metamodel.uml_diff_extension.impl.AddStereotypeApplicationImpl#getRightElement <em>Right Element</em>}</li> + * </ul> + * </p> + * + * @generated + */ +public class AddStereotypeApplicationImpl extends StereotypeChangeImpl implements AddStereotypeApplication { + /** + * The cached value of the '{@link #getSubDiffElements() <em>Sub Diff Elements</em>}' containment reference list. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getSubDiffElements() + * @generated + * @ordered + */ + protected EList<DiffElement> subDiffElements; + /** + * The cached value of the '{@link #getIsHiddenBy() <em>Is Hidden By</em>}' reference list. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getIsHiddenBy() + * @generated + * @ordered + */ + protected EList<AbstractDiffExtension> isHiddenBy; + /** + * The default value of the '{@link #isConflicting() <em>Conflicting</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #isConflicting() + * @generated + * @ordered + */ + protected static final boolean CONFLICTING_EDEFAULT = false; + /** + * The cached value of the '{@link #isConflicting() <em>Conflicting</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #isConflicting() + * @generated + * @ordered + */ + protected boolean conflicting = CONFLICTING_EDEFAULT; + /** + * The default value of the '{@link #getKind() <em>Kind</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getKind() + * @generated + * @ordered + */ + protected static final DifferenceKind KIND_EDEFAULT = DifferenceKind.ADDITION; + /** + * The cached value of the '{@link #getKind() <em>Kind</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getKind() + * @generated + * @ordered + */ + protected DifferenceKind kind = KIND_EDEFAULT; + /** + * The default value of the '{@link #isRemote() <em>Remote</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #isRemote() + * @generated + * @ordered + */ + protected static final boolean REMOTE_EDEFAULT = false; + /** + * The cached value of the '{@link #isRemote() <em>Remote</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #isRemote() + * @generated + * @ordered + */ + protected boolean remote = REMOTE_EDEFAULT; + /** + * The cached value of the '{@link #getLeftParent() <em>Left Parent</em>}' reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getLeftParent() + * @generated + * @ordered + */ + protected EObject leftParent; + /** + * The cached value of the '{@link #getRightElement() <em>Right Element</em>}' reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getRightElement() + * @generated + * @ordered + */ + protected EObject rightElement; + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected AddStereotypeApplicationImpl() { + super(); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + protected EClass eStaticClass() { + return UMLDiffPackage.Literals.ADD_STEREOTYPE_APPLICATION; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public EList<DiffElement> getSubDiffElements() { + if (subDiffElements == null) { + subDiffElements = new EObjectContainmentEList<DiffElement>(DiffElement.class, this, UMLDiffPackage.ADD_STEREOTYPE_APPLICATION__SUB_DIFF_ELEMENTS); + } + return subDiffElements; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public EList<AbstractDiffExtension> getIsHiddenBy() { + if (isHiddenBy == null) { + isHiddenBy = new EObjectWithInverseResolvingEList.ManyInverse<AbstractDiffExtension>(AbstractDiffExtension.class, this, UMLDiffPackage.ADD_STEREOTYPE_APPLICATION__IS_HIDDEN_BY, DiffPackage.ABSTRACT_DIFF_EXTENSION__HIDE_ELEMENTS); + } + return isHiddenBy; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public boolean isConflicting() { + return conflicting; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public DifferenceKind getKind() { + return kind; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public boolean isRemote() { + return remote; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public void setRemote(boolean newRemote) { + boolean oldRemote = remote; + remote = newRemote; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, UMLDiffPackage.ADD_STEREOTYPE_APPLICATION__REMOTE, oldRemote, remote)); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public EObject getLeftParent() { + if (leftParent != null && leftParent.eIsProxy()) { + InternalEObject oldLeftParent = (InternalEObject)leftParent; + leftParent = eResolveProxy(oldLeftParent); + if (leftParent != oldLeftParent) { + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLDiffPackage.ADD_STEREOTYPE_APPLICATION__LEFT_PARENT, oldLeftParent, leftParent)); + } + } + return leftParent; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public EObject basicGetLeftParent() { + return leftParent; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public void setLeftParent(EObject newLeftParent) { + EObject oldLeftParent = leftParent; + leftParent = newLeftParent; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, UMLDiffPackage.ADD_STEREOTYPE_APPLICATION__LEFT_PARENT, oldLeftParent, leftParent)); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public EObject getRightElement() { + if (rightElement != null && rightElement.eIsProxy()) { + InternalEObject oldRightElement = (InternalEObject)rightElement; + rightElement = eResolveProxy(oldRightElement); + if (rightElement != oldRightElement) { + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLDiffPackage.ADD_STEREOTYPE_APPLICATION__RIGHT_ELEMENT, oldRightElement, rightElement)); + } + } + return rightElement; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public EObject basicGetRightElement() { + return rightElement; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public void setRightElement(EObject newRightElement) { + EObject oldRightElement = rightElement; + rightElement = newRightElement; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, UMLDiffPackage.ADD_STEREOTYPE_APPLICATION__RIGHT_ELEMENT, oldRightElement, rightElement)); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @SuppressWarnings("unchecked") + @Override + public NotificationChain eInverseAdd(InternalEObject otherEnd, int featureID, NotificationChain msgs) { + switch (featureID) { + case UMLDiffPackage.ADD_STEREOTYPE_APPLICATION__IS_HIDDEN_BY: + return ((InternalEList<InternalEObject>)(InternalEList<?>)getIsHiddenBy()).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 UMLDiffPackage.ADD_STEREOTYPE_APPLICATION__SUB_DIFF_ELEMENTS: + return ((InternalEList<?>)getSubDiffElements()).basicRemove(otherEnd, msgs); + case UMLDiffPackage.ADD_STEREOTYPE_APPLICATION__IS_HIDDEN_BY: + return ((InternalEList<?>)getIsHiddenBy()).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 UMLDiffPackage.ADD_STEREOTYPE_APPLICATION__SUB_DIFF_ELEMENTS: + return getSubDiffElements(); + case UMLDiffPackage.ADD_STEREOTYPE_APPLICATION__IS_HIDDEN_BY: + return getIsHiddenBy(); + case UMLDiffPackage.ADD_STEREOTYPE_APPLICATION__CONFLICTING: + return isConflicting(); + case UMLDiffPackage.ADD_STEREOTYPE_APPLICATION__KIND: + return getKind(); + case UMLDiffPackage.ADD_STEREOTYPE_APPLICATION__REMOTE: + return isRemote(); + case UMLDiffPackage.ADD_STEREOTYPE_APPLICATION__LEFT_PARENT: + if (resolve) return getLeftParent(); + return basicGetLeftParent(); + case UMLDiffPackage.ADD_STEREOTYPE_APPLICATION__RIGHT_ELEMENT: + if (resolve) return getRightElement(); + return basicGetRightElement(); + } + 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 UMLDiffPackage.ADD_STEREOTYPE_APPLICATION__SUB_DIFF_ELEMENTS: + getSubDiffElements().clear(); + getSubDiffElements().addAll((Collection<? extends DiffElement>)newValue); + return; + case UMLDiffPackage.ADD_STEREOTYPE_APPLICATION__IS_HIDDEN_BY: + getIsHiddenBy().clear(); + getIsHiddenBy().addAll((Collection<? extends AbstractDiffExtension>)newValue); + return; + case UMLDiffPackage.ADD_STEREOTYPE_APPLICATION__REMOTE: + setRemote((Boolean)newValue); + return; + case UMLDiffPackage.ADD_STEREOTYPE_APPLICATION__LEFT_PARENT: + setLeftParent((EObject)newValue); + return; + case UMLDiffPackage.ADD_STEREOTYPE_APPLICATION__RIGHT_ELEMENT: + setRightElement((EObject)newValue); + return; + } + super.eSet(featureID, newValue); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void eUnset(int featureID) { + switch (featureID) { + case UMLDiffPackage.ADD_STEREOTYPE_APPLICATION__SUB_DIFF_ELEMENTS: + getSubDiffElements().clear(); + return; + case UMLDiffPackage.ADD_STEREOTYPE_APPLICATION__IS_HIDDEN_BY: + getIsHiddenBy().clear(); + return; + case UMLDiffPackage.ADD_STEREOTYPE_APPLICATION__REMOTE: + setRemote(REMOTE_EDEFAULT); + return; + case UMLDiffPackage.ADD_STEREOTYPE_APPLICATION__LEFT_PARENT: + setLeftParent((EObject)null); + return; + case UMLDiffPackage.ADD_STEREOTYPE_APPLICATION__RIGHT_ELEMENT: + setRightElement((EObject)null); + return; + } + super.eUnset(featureID); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public boolean eIsSet(int featureID) { + switch (featureID) { + case UMLDiffPackage.ADD_STEREOTYPE_APPLICATION__SUB_DIFF_ELEMENTS: + return subDiffElements != null && !subDiffElements.isEmpty(); + case UMLDiffPackage.ADD_STEREOTYPE_APPLICATION__IS_HIDDEN_BY: + return isHiddenBy != null && !isHiddenBy.isEmpty(); + case UMLDiffPackage.ADD_STEREOTYPE_APPLICATION__CONFLICTING: + return conflicting != CONFLICTING_EDEFAULT; + case UMLDiffPackage.ADD_STEREOTYPE_APPLICATION__KIND: + return kind != KIND_EDEFAULT; + case UMLDiffPackage.ADD_STEREOTYPE_APPLICATION__REMOTE: + return remote != REMOTE_EDEFAULT; + case UMLDiffPackage.ADD_STEREOTYPE_APPLICATION__LEFT_PARENT: + return leftParent != null; + case UMLDiffPackage.ADD_STEREOTYPE_APPLICATION__RIGHT_ELEMENT: + return rightElement != null; + } + return super.eIsSet(featureID); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public int eBaseStructuralFeatureID(int derivedFeatureID, Class<?> baseClass) { + if (baseClass == DiffElement.class) { + switch (derivedFeatureID) { + case UMLDiffPackage.ADD_STEREOTYPE_APPLICATION__SUB_DIFF_ELEMENTS: return DiffPackage.DIFF_ELEMENT__SUB_DIFF_ELEMENTS; + case UMLDiffPackage.ADD_STEREOTYPE_APPLICATION__IS_HIDDEN_BY: return DiffPackage.DIFF_ELEMENT__IS_HIDDEN_BY; + case UMLDiffPackage.ADD_STEREOTYPE_APPLICATION__CONFLICTING: return DiffPackage.DIFF_ELEMENT__CONFLICTING; + case UMLDiffPackage.ADD_STEREOTYPE_APPLICATION__KIND: return DiffPackage.DIFF_ELEMENT__KIND; + case UMLDiffPackage.ADD_STEREOTYPE_APPLICATION__REMOTE: return DiffPackage.DIFF_ELEMENT__REMOTE; + default: return -1; + } + } + if (baseClass == ModelElementChange.class) { + switch (derivedFeatureID) { + default: return -1; + } + } + if (baseClass == ModelElementChangeRightTarget.class) { + switch (derivedFeatureID) { + case UMLDiffPackage.ADD_STEREOTYPE_APPLICATION__LEFT_PARENT: return DiffPackage.MODEL_ELEMENT_CHANGE_RIGHT_TARGET__LEFT_PARENT; + case UMLDiffPackage.ADD_STEREOTYPE_APPLICATION__RIGHT_ELEMENT: return DiffPackage.MODEL_ELEMENT_CHANGE_RIGHT_TARGET__RIGHT_ELEMENT; + default: return -1; + } + } + return super.eBaseStructuralFeatureID(derivedFeatureID, baseClass); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public int eDerivedStructuralFeatureID(int baseFeatureID, Class<?> baseClass) { + if (baseClass == DiffElement.class) { + switch (baseFeatureID) { + case DiffPackage.DIFF_ELEMENT__SUB_DIFF_ELEMENTS: return UMLDiffPackage.ADD_STEREOTYPE_APPLICATION__SUB_DIFF_ELEMENTS; + case DiffPackage.DIFF_ELEMENT__IS_HIDDEN_BY: return UMLDiffPackage.ADD_STEREOTYPE_APPLICATION__IS_HIDDEN_BY; + case DiffPackage.DIFF_ELEMENT__CONFLICTING: return UMLDiffPackage.ADD_STEREOTYPE_APPLICATION__CONFLICTING; + case DiffPackage.DIFF_ELEMENT__KIND: return UMLDiffPackage.ADD_STEREOTYPE_APPLICATION__KIND; + case DiffPackage.DIFF_ELEMENT__REMOTE: return UMLDiffPackage.ADD_STEREOTYPE_APPLICATION__REMOTE; + default: return -1; + } + } + if (baseClass == ModelElementChange.class) { + switch (baseFeatureID) { + default: return -1; + } + } + if (baseClass == ModelElementChangeRightTarget.class) { + switch (baseFeatureID) { + case DiffPackage.MODEL_ELEMENT_CHANGE_RIGHT_TARGET__LEFT_PARENT: return UMLDiffPackage.ADD_STEREOTYPE_APPLICATION__LEFT_PARENT; + case DiffPackage.MODEL_ELEMENT_CHANGE_RIGHT_TARGET__RIGHT_ELEMENT: return UMLDiffPackage.ADD_STEREOTYPE_APPLICATION__RIGHT_ELEMENT; + default: return -1; + } + } + return super.eDerivedStructuralFeatureID(baseFeatureID, baseClass); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public String toString() { + if (eIsProxy()) return super.toString(); + + StringBuffer result = new StringBuffer(super.toString()); + result.append(" (conflicting: "); + result.append(conflicting); + result.append(", kind: "); + result.append(kind); + result.append(", remote: "); + result.append(remote); + result.append(')'); + return result.toString(); + } + +} //AddStereotypeApplicationImpl diff --git a/deprecated/org.eclipse.papyrus.uml.compare/src-gen/org/eclipse/papyrus/uml/compare/diff/metamodel/uml_diff_extension/impl/CompareTwoElementsDiffModelImpl.java b/deprecated/org.eclipse.papyrus.uml.compare/src-gen/org/eclipse/papyrus/uml/compare/diff/metamodel/uml_diff_extension/impl/CompareTwoElementsDiffModelImpl.java new file mode 100644 index 00000000000..f51775934e3 --- /dev/null +++ b/deprecated/org.eclipse.papyrus.uml.compare/src-gen/org/eclipse/papyrus/uml/compare/diff/metamodel/uml_diff_extension/impl/CompareTwoElementsDiffModelImpl.java @@ -0,0 +1,333 @@ +/** + * + * Copyright (c) 2010 CEA LIST. + * 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: + * Tatiana Fesenko(CEA LIST) - initial API and implementation + */ +package org.eclipse.papyrus.uml.compare.diff.metamodel.uml_diff_extension.impl; + +import java.util.Collection; + +import org.eclipse.emf.common.notify.NotificationChain; +import org.eclipse.emf.common.util.EList; +import org.eclipse.emf.compare.diff.metamodel.DiffElement; +import org.eclipse.emf.compare.diff.metamodel.DiffModel; +import org.eclipse.emf.compare.diff.metamodel.DiffPackage; +import org.eclipse.emf.ecore.EClass; +import org.eclipse.emf.ecore.EObject; +import org.eclipse.emf.ecore.InternalEObject; +import org.eclipse.emf.ecore.util.EObjectContainmentEList; +import org.eclipse.emf.ecore.util.EObjectResolvingEList; +import org.eclipse.emf.ecore.util.InternalEList; +import org.eclipse.papyrus.uml.compare.diff.metamodel.uml_diff_extension.CompareTwoElementsDiffModel; +import org.eclipse.papyrus.uml.compare.diff.metamodel.uml_diff_extension.UMLDiffPackage; + +/** + * <!-- begin-user-doc --> + * An implementation of the model object '<em><b>Compare Two Elements Diff Model</b></em>'. + * <!-- end-user-doc --> + * <p> + * The following features are implemented: + * <ul> + * <li>{@link org.eclipse.papyrus.uml.compare.diff.metamodel.uml_diff_extension.impl.CompareTwoElementsDiffModelImpl#getOwnedElements <em>Owned Elements</em>}</li> + * <li>{@link org.eclipse.papyrus.uml.compare.diff.metamodel.uml_diff_extension.impl.CompareTwoElementsDiffModelImpl#getLeftRoots <em>Left Roots</em>}</li> + * <li>{@link org.eclipse.papyrus.uml.compare.diff.metamodel.uml_diff_extension.impl.CompareTwoElementsDiffModelImpl#getRightRoots <em>Right Roots</em>}</li> + * <li>{@link org.eclipse.papyrus.uml.compare.diff.metamodel.uml_diff_extension.impl.CompareTwoElementsDiffModelImpl#getAncestorRoots <em>Ancestor Roots</em>}</li> + * </ul> + * </p> + * + * @generated + */ +public class CompareTwoElementsDiffModelImpl extends UMLDiffExtensionImpl implements CompareTwoElementsDiffModel { + /** + * The cached value of the '{@link #getOwnedElements() <em>Owned Elements</em>}' containment reference list. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getOwnedElements() + * @generated + * @ordered + */ + protected EList<DiffElement> ownedElements; + + /** + * The cached value of the '{@link #getLeftRoots() <em>Left Roots</em>}' reference list. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getLeftRoots() + * @generated + * @ordered + */ + protected EList<EObject> leftRoots; + + /** + * The cached value of the '{@link #getRightRoots() <em>Right Roots</em>}' reference list. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getRightRoots() + * @generated + * @ordered + */ + protected EList<EObject> rightRoots; + + /** + * The cached value of the '{@link #getAncestorRoots() <em>Ancestor Roots</em>}' reference list. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getAncestorRoots() + * @generated + * @ordered + */ + protected EList<EObject> ancestorRoots; + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected CompareTwoElementsDiffModelImpl() { + super(); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + protected EClass eStaticClass() { + return UMLDiffPackage.Literals.COMPARE_TWO_ELEMENTS_DIFF_MODEL; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public EList<DiffElement> getOwnedElements() { + if (ownedElements == null) { + ownedElements = new EObjectContainmentEList<DiffElement>(DiffElement.class, this, UMLDiffPackage.COMPARE_TWO_ELEMENTS_DIFF_MODEL__OWNED_ELEMENTS); + } + return ownedElements; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public EList<EObject> getLeftRoots() { + if (leftRoots == null) { + leftRoots = new EObjectResolvingEList<EObject>(EObject.class, this, UMLDiffPackage.COMPARE_TWO_ELEMENTS_DIFF_MODEL__LEFT_ROOTS); + } + return leftRoots; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public EList<EObject> getRightRoots() { + if (rightRoots == null) { + rightRoots = new EObjectResolvingEList<EObject>(EObject.class, this, UMLDiffPackage.COMPARE_TWO_ELEMENTS_DIFF_MODEL__RIGHT_ROOTS); + } + return rightRoots; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public EList<EObject> getAncestorRoots() { + if (ancestorRoots == null) { + ancestorRoots = new EObjectResolvingEList<EObject>(EObject.class, this, UMLDiffPackage.COMPARE_TWO_ELEMENTS_DIFF_MODEL__ANCESTOR_ROOTS); + } + return ancestorRoots; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public int getSubchanges() { + // TODO: implement this method + // Ensure that you remove @generated or mark it @generated NOT + throw new UnsupportedOperationException(); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public EList<DiffElement> getDifferences(EObject modelElement) { + // TODO: implement this method + // Ensure that you remove @generated or mark it @generated NOT + throw new UnsupportedOperationException(); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public EList<DiffElement> getDifferences() { + // TODO: implement this method + // Ensure that you remove @generated or mark it @generated NOT + throw new UnsupportedOperationException(); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) { + switch (featureID) { + case UMLDiffPackage.COMPARE_TWO_ELEMENTS_DIFF_MODEL__OWNED_ELEMENTS: + return ((InternalEList<?>)getOwnedElements()).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 UMLDiffPackage.COMPARE_TWO_ELEMENTS_DIFF_MODEL__OWNED_ELEMENTS: + return getOwnedElements(); + case UMLDiffPackage.COMPARE_TWO_ELEMENTS_DIFF_MODEL__LEFT_ROOTS: + return getLeftRoots(); + case UMLDiffPackage.COMPARE_TWO_ELEMENTS_DIFF_MODEL__RIGHT_ROOTS: + return getRightRoots(); + case UMLDiffPackage.COMPARE_TWO_ELEMENTS_DIFF_MODEL__ANCESTOR_ROOTS: + return getAncestorRoots(); + } + 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 UMLDiffPackage.COMPARE_TWO_ELEMENTS_DIFF_MODEL__OWNED_ELEMENTS: + getOwnedElements().clear(); + getOwnedElements().addAll((Collection<? extends DiffElement>)newValue); + return; + case UMLDiffPackage.COMPARE_TWO_ELEMENTS_DIFF_MODEL__LEFT_ROOTS: + getLeftRoots().clear(); + getLeftRoots().addAll((Collection<? extends EObject>)newValue); + return; + case UMLDiffPackage.COMPARE_TWO_ELEMENTS_DIFF_MODEL__RIGHT_ROOTS: + getRightRoots().clear(); + getRightRoots().addAll((Collection<? extends EObject>)newValue); + return; + case UMLDiffPackage.COMPARE_TWO_ELEMENTS_DIFF_MODEL__ANCESTOR_ROOTS: + getAncestorRoots().clear(); + getAncestorRoots().addAll((Collection<? extends EObject>)newValue); + return; + } + super.eSet(featureID, newValue); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void eUnset(int featureID) { + switch (featureID) { + case UMLDiffPackage.COMPARE_TWO_ELEMENTS_DIFF_MODEL__OWNED_ELEMENTS: + getOwnedElements().clear(); + return; + case UMLDiffPackage.COMPARE_TWO_ELEMENTS_DIFF_MODEL__LEFT_ROOTS: + getLeftRoots().clear(); + return; + case UMLDiffPackage.COMPARE_TWO_ELEMENTS_DIFF_MODEL__RIGHT_ROOTS: + getRightRoots().clear(); + return; + case UMLDiffPackage.COMPARE_TWO_ELEMENTS_DIFF_MODEL__ANCESTOR_ROOTS: + getAncestorRoots().clear(); + return; + } + super.eUnset(featureID); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public boolean eIsSet(int featureID) { + switch (featureID) { + case UMLDiffPackage.COMPARE_TWO_ELEMENTS_DIFF_MODEL__OWNED_ELEMENTS: + return ownedElements != null && !ownedElements.isEmpty(); + case UMLDiffPackage.COMPARE_TWO_ELEMENTS_DIFF_MODEL__LEFT_ROOTS: + return leftRoots != null && !leftRoots.isEmpty(); + case UMLDiffPackage.COMPARE_TWO_ELEMENTS_DIFF_MODEL__RIGHT_ROOTS: + return rightRoots != null && !rightRoots.isEmpty(); + case UMLDiffPackage.COMPARE_TWO_ELEMENTS_DIFF_MODEL__ANCESTOR_ROOTS: + return ancestorRoots != null && !ancestorRoots.isEmpty(); + } + return super.eIsSet(featureID); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public int eBaseStructuralFeatureID(int derivedFeatureID, Class<?> baseClass) { + if (baseClass == DiffModel.class) { + switch (derivedFeatureID) { + case UMLDiffPackage.COMPARE_TWO_ELEMENTS_DIFF_MODEL__OWNED_ELEMENTS: return DiffPackage.DIFF_MODEL__OWNED_ELEMENTS; + case UMLDiffPackage.COMPARE_TWO_ELEMENTS_DIFF_MODEL__LEFT_ROOTS: return DiffPackage.DIFF_MODEL__LEFT_ROOTS; + case UMLDiffPackage.COMPARE_TWO_ELEMENTS_DIFF_MODEL__RIGHT_ROOTS: return DiffPackage.DIFF_MODEL__RIGHT_ROOTS; + case UMLDiffPackage.COMPARE_TWO_ELEMENTS_DIFF_MODEL__ANCESTOR_ROOTS: return DiffPackage.DIFF_MODEL__ANCESTOR_ROOTS; + default: return -1; + } + } + return super.eBaseStructuralFeatureID(derivedFeatureID, baseClass); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public int eDerivedStructuralFeatureID(int baseFeatureID, Class<?> baseClass) { + if (baseClass == DiffModel.class) { + switch (baseFeatureID) { + case DiffPackage.DIFF_MODEL__OWNED_ELEMENTS: return UMLDiffPackage.COMPARE_TWO_ELEMENTS_DIFF_MODEL__OWNED_ELEMENTS; + case DiffPackage.DIFF_MODEL__LEFT_ROOTS: return UMLDiffPackage.COMPARE_TWO_ELEMENTS_DIFF_MODEL__LEFT_ROOTS; + case DiffPackage.DIFF_MODEL__RIGHT_ROOTS: return UMLDiffPackage.COMPARE_TWO_ELEMENTS_DIFF_MODEL__RIGHT_ROOTS; + case DiffPackage.DIFF_MODEL__ANCESTOR_ROOTS: return UMLDiffPackage.COMPARE_TWO_ELEMENTS_DIFF_MODEL__ANCESTOR_ROOTS; + default: return -1; + } + } + return super.eDerivedStructuralFeatureID(baseFeatureID, baseClass); + } + + +} //CompareTwoElementsDiffModelImpl diff --git a/deprecated/org.eclipse.papyrus.uml.compare/src-gen/org/eclipse/papyrus/uml/compare/diff/metamodel/uml_diff_extension/impl/RemoveStereotypeApplicationImpl.java b/deprecated/org.eclipse.papyrus.uml.compare/src-gen/org/eclipse/papyrus/uml/compare/diff/metamodel/uml_diff_extension/impl/RemoveStereotypeApplicationImpl.java new file mode 100644 index 00000000000..79a2ae1529b --- /dev/null +++ b/deprecated/org.eclipse.papyrus.uml.compare/src-gen/org/eclipse/papyrus/uml/compare/diff/metamodel/uml_diff_extension/impl/RemoveStereotypeApplicationImpl.java @@ -0,0 +1,534 @@ +/** + * + * Copyright (c) 2010 CEA LIST. + * 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: + * Tatiana Fesenko(CEA LIST) - initial API and implementation + */ +package org.eclipse.papyrus.uml.compare.diff.metamodel.uml_diff_extension.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.compare.diff.merge.IMerger; +import org.eclipse.emf.compare.diff.metamodel.AbstractDiffExtension; +import org.eclipse.emf.compare.diff.metamodel.DiffElement; +import org.eclipse.emf.compare.diff.metamodel.DiffPackage; +import org.eclipse.emf.compare.diff.metamodel.DifferenceKind; +import org.eclipse.emf.compare.diff.metamodel.ModelElementChange; +import org.eclipse.emf.compare.diff.metamodel.ModelElementChangeLeftTarget; +import org.eclipse.emf.compare.util.AdapterUtils; +import org.eclipse.emf.ecore.EClass; + +import org.eclipse.emf.ecore.EObject; +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.EObjectWithInverseResolvingEList; +import org.eclipse.emf.ecore.util.InternalEList; +import org.eclipse.papyrus.uml.compare.UMLCompareUtils; +import org.eclipse.papyrus.uml.compare.diff.metamodel.uml_diff_extension.RemoveStereotypeApplication; +import org.eclipse.papyrus.uml.compare.diff.metamodel.uml_diff_extension.UMLDiffPackage; +import org.eclipse.uml2.uml.util.UMLUtil; + +/** + * <!-- begin-user-doc --> + * An implementation of the model object '<em><b>Remove Stereotype Application</b></em>'. + * <!-- end-user-doc --> + * <p> + * The following features are implemented: + * <ul> + * <li>{@link org.eclipse.papyrus.uml.compare.diff.metamodel.uml_diff_extension.impl.RemoveStereotypeApplicationImpl#getSubDiffElements <em>Sub Diff Elements</em>}</li> + * <li>{@link org.eclipse.papyrus.uml.compare.diff.metamodel.uml_diff_extension.impl.RemoveStereotypeApplicationImpl#getIsHiddenBy <em>Is Hidden By</em>}</li> + * <li>{@link org.eclipse.papyrus.uml.compare.diff.metamodel.uml_diff_extension.impl.RemoveStereotypeApplicationImpl#isConflicting <em>Conflicting</em>}</li> + * <li>{@link org.eclipse.papyrus.uml.compare.diff.metamodel.uml_diff_extension.impl.RemoveStereotypeApplicationImpl#getKind <em>Kind</em>}</li> + * <li>{@link org.eclipse.papyrus.uml.compare.diff.metamodel.uml_diff_extension.impl.RemoveStereotypeApplicationImpl#isRemote <em>Remote</em>}</li> + * <li>{@link org.eclipse.papyrus.uml.compare.diff.metamodel.uml_diff_extension.impl.RemoveStereotypeApplicationImpl#getRightParent <em>Right Parent</em>}</li> + * <li>{@link org.eclipse.papyrus.uml.compare.diff.metamodel.uml_diff_extension.impl.RemoveStereotypeApplicationImpl#getLeftElement <em>Left Element</em>}</li> + * </ul> + * </p> + * + * @generated + */ +public class RemoveStereotypeApplicationImpl extends StereotypeChangeImpl implements RemoveStereotypeApplication { + /** + * The cached value of the '{@link #getSubDiffElements() <em>Sub Diff Elements</em>}' containment reference list. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getSubDiffElements() + * @generated + * @ordered + */ + protected EList<DiffElement> subDiffElements; + /** + * The cached value of the '{@link #getIsHiddenBy() <em>Is Hidden By</em>}' reference list. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getIsHiddenBy() + * @generated + * @ordered + */ + protected EList<AbstractDiffExtension> isHiddenBy; + /** + * The default value of the '{@link #isConflicting() <em>Conflicting</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #isConflicting() + * @generated + * @ordered + */ + protected static final boolean CONFLICTING_EDEFAULT = false; + /** + * The cached value of the '{@link #isConflicting() <em>Conflicting</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #isConflicting() + * @generated + * @ordered + */ + protected boolean conflicting = CONFLICTING_EDEFAULT; + /** + * The default value of the '{@link #getKind() <em>Kind</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getKind() + * @generated + * @ordered + */ + protected static final DifferenceKind KIND_EDEFAULT = DifferenceKind.ADDITION; + /** + * The cached value of the '{@link #getKind() <em>Kind</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getKind() + * @generated + * @ordered + */ + protected DifferenceKind kind = KIND_EDEFAULT; + /** + * The default value of the '{@link #isRemote() <em>Remote</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #isRemote() + * @generated + * @ordered + */ + protected static final boolean REMOTE_EDEFAULT = false; + /** + * The cached value of the '{@link #isRemote() <em>Remote</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #isRemote() + * @generated + * @ordered + */ + protected boolean remote = REMOTE_EDEFAULT; + /** + * The cached value of the '{@link #getRightParent() <em>Right Parent</em>}' reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getRightParent() + * @generated + * @ordered + */ + protected EObject rightParent; + /** + * The cached value of the '{@link #getLeftElement() <em>Left Element</em>}' reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getLeftElement() + * @generated + * @ordered + */ + protected EObject leftElement; + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected RemoveStereotypeApplicationImpl() { + super(); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + protected EClass eStaticClass() { + return UMLDiffPackage.Literals.REMOVE_STEREOTYPE_APPLICATION; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public EList<DiffElement> getSubDiffElements() { + if (subDiffElements == null) { + subDiffElements = new EObjectContainmentEList<DiffElement>(DiffElement.class, this, UMLDiffPackage.REMOVE_STEREOTYPE_APPLICATION__SUB_DIFF_ELEMENTS); + } + return subDiffElements; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public EList<AbstractDiffExtension> getIsHiddenBy() { + if (isHiddenBy == null) { + isHiddenBy = new EObjectWithInverseResolvingEList.ManyInverse<AbstractDiffExtension>(AbstractDiffExtension.class, this, UMLDiffPackage.REMOVE_STEREOTYPE_APPLICATION__IS_HIDDEN_BY, DiffPackage.ABSTRACT_DIFF_EXTENSION__HIDE_ELEMENTS); + } + return isHiddenBy; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public boolean isConflicting() { + return conflicting; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public DifferenceKind getKind() { + return kind; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public boolean isRemote() { + return remote; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public void setRemote(boolean newRemote) { + boolean oldRemote = remote; + remote = newRemote; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, UMLDiffPackage.REMOVE_STEREOTYPE_APPLICATION__REMOTE, oldRemote, remote)); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public EObject getRightParent() { + if (rightParent != null && rightParent.eIsProxy()) { + InternalEObject oldRightParent = (InternalEObject)rightParent; + rightParent = eResolveProxy(oldRightParent); + if (rightParent != oldRightParent) { + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLDiffPackage.REMOVE_STEREOTYPE_APPLICATION__RIGHT_PARENT, oldRightParent, rightParent)); + } + } + return rightParent; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public EObject basicGetRightParent() { + return rightParent; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public void setRightParent(EObject newRightParent) { + EObject oldRightParent = rightParent; + rightParent = newRightParent; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, UMLDiffPackage.REMOVE_STEREOTYPE_APPLICATION__RIGHT_PARENT, oldRightParent, rightParent)); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public EObject getLeftElement() { + if (leftElement != null && leftElement.eIsProxy()) { + InternalEObject oldLeftElement = (InternalEObject)leftElement; + leftElement = eResolveProxy(oldLeftElement); + if (leftElement != oldLeftElement) { + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLDiffPackage.REMOVE_STEREOTYPE_APPLICATION__LEFT_ELEMENT, oldLeftElement, leftElement)); + } + } + return leftElement; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public EObject basicGetLeftElement() { + return leftElement; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public void setLeftElement(EObject newLeftElement) { + EObject oldLeftElement = leftElement; + leftElement = newLeftElement; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, UMLDiffPackage.REMOVE_STEREOTYPE_APPLICATION__LEFT_ELEMENT, oldLeftElement, leftElement)); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @SuppressWarnings("unchecked") + @Override + public NotificationChain eInverseAdd(InternalEObject otherEnd, int featureID, NotificationChain msgs) { + switch (featureID) { + case UMLDiffPackage.REMOVE_STEREOTYPE_APPLICATION__IS_HIDDEN_BY: + return ((InternalEList<InternalEObject>)(InternalEList<?>)getIsHiddenBy()).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 UMLDiffPackage.REMOVE_STEREOTYPE_APPLICATION__SUB_DIFF_ELEMENTS: + return ((InternalEList<?>)getSubDiffElements()).basicRemove(otherEnd, msgs); + case UMLDiffPackage.REMOVE_STEREOTYPE_APPLICATION__IS_HIDDEN_BY: + return ((InternalEList<?>)getIsHiddenBy()).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 UMLDiffPackage.REMOVE_STEREOTYPE_APPLICATION__SUB_DIFF_ELEMENTS: + return getSubDiffElements(); + case UMLDiffPackage.REMOVE_STEREOTYPE_APPLICATION__IS_HIDDEN_BY: + return getIsHiddenBy(); + case UMLDiffPackage.REMOVE_STEREOTYPE_APPLICATION__CONFLICTING: + return isConflicting(); + case UMLDiffPackage.REMOVE_STEREOTYPE_APPLICATION__KIND: + return getKind(); + case UMLDiffPackage.REMOVE_STEREOTYPE_APPLICATION__REMOTE: + return isRemote(); + case UMLDiffPackage.REMOVE_STEREOTYPE_APPLICATION__RIGHT_PARENT: + if (resolve) return getRightParent(); + return basicGetRightParent(); + case UMLDiffPackage.REMOVE_STEREOTYPE_APPLICATION__LEFT_ELEMENT: + if (resolve) return getLeftElement(); + return basicGetLeftElement(); + } + 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 UMLDiffPackage.REMOVE_STEREOTYPE_APPLICATION__SUB_DIFF_ELEMENTS: + getSubDiffElements().clear(); + getSubDiffElements().addAll((Collection<? extends DiffElement>)newValue); + return; + case UMLDiffPackage.REMOVE_STEREOTYPE_APPLICATION__IS_HIDDEN_BY: + getIsHiddenBy().clear(); + getIsHiddenBy().addAll((Collection<? extends AbstractDiffExtension>)newValue); + return; + case UMLDiffPackage.REMOVE_STEREOTYPE_APPLICATION__REMOTE: + setRemote((Boolean)newValue); + return; + case UMLDiffPackage.REMOVE_STEREOTYPE_APPLICATION__RIGHT_PARENT: + setRightParent((EObject)newValue); + return; + case UMLDiffPackage.REMOVE_STEREOTYPE_APPLICATION__LEFT_ELEMENT: + setLeftElement((EObject)newValue); + return; + } + super.eSet(featureID, newValue); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void eUnset(int featureID) { + switch (featureID) { + case UMLDiffPackage.REMOVE_STEREOTYPE_APPLICATION__SUB_DIFF_ELEMENTS: + getSubDiffElements().clear(); + return; + case UMLDiffPackage.REMOVE_STEREOTYPE_APPLICATION__IS_HIDDEN_BY: + getIsHiddenBy().clear(); + return; + case UMLDiffPackage.REMOVE_STEREOTYPE_APPLICATION__REMOTE: + setRemote(REMOTE_EDEFAULT); + return; + case UMLDiffPackage.REMOVE_STEREOTYPE_APPLICATION__RIGHT_PARENT: + setRightParent((EObject)null); + return; + case UMLDiffPackage.REMOVE_STEREOTYPE_APPLICATION__LEFT_ELEMENT: + setLeftElement((EObject)null); + return; + } + super.eUnset(featureID); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public boolean eIsSet(int featureID) { + switch (featureID) { + case UMLDiffPackage.REMOVE_STEREOTYPE_APPLICATION__SUB_DIFF_ELEMENTS: + return subDiffElements != null && !subDiffElements.isEmpty(); + case UMLDiffPackage.REMOVE_STEREOTYPE_APPLICATION__IS_HIDDEN_BY: + return isHiddenBy != null && !isHiddenBy.isEmpty(); + case UMLDiffPackage.REMOVE_STEREOTYPE_APPLICATION__CONFLICTING: + return conflicting != CONFLICTING_EDEFAULT; + case UMLDiffPackage.REMOVE_STEREOTYPE_APPLICATION__KIND: + return kind != KIND_EDEFAULT; + case UMLDiffPackage.REMOVE_STEREOTYPE_APPLICATION__REMOTE: + return remote != REMOTE_EDEFAULT; + case UMLDiffPackage.REMOVE_STEREOTYPE_APPLICATION__RIGHT_PARENT: + return rightParent != null; + case UMLDiffPackage.REMOVE_STEREOTYPE_APPLICATION__LEFT_ELEMENT: + return leftElement != null; + } + return super.eIsSet(featureID); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public int eBaseStructuralFeatureID(int derivedFeatureID, Class<?> baseClass) { + if (baseClass == DiffElement.class) { + switch (derivedFeatureID) { + case UMLDiffPackage.REMOVE_STEREOTYPE_APPLICATION__SUB_DIFF_ELEMENTS: return DiffPackage.DIFF_ELEMENT__SUB_DIFF_ELEMENTS; + case UMLDiffPackage.REMOVE_STEREOTYPE_APPLICATION__IS_HIDDEN_BY: return DiffPackage.DIFF_ELEMENT__IS_HIDDEN_BY; + case UMLDiffPackage.REMOVE_STEREOTYPE_APPLICATION__CONFLICTING: return DiffPackage.DIFF_ELEMENT__CONFLICTING; + case UMLDiffPackage.REMOVE_STEREOTYPE_APPLICATION__KIND: return DiffPackage.DIFF_ELEMENT__KIND; + case UMLDiffPackage.REMOVE_STEREOTYPE_APPLICATION__REMOTE: return DiffPackage.DIFF_ELEMENT__REMOTE; + default: return -1; + } + } + if (baseClass == ModelElementChange.class) { + switch (derivedFeatureID) { + default: return -1; + } + } + if (baseClass == ModelElementChangeLeftTarget.class) { + switch (derivedFeatureID) { + case UMLDiffPackage.REMOVE_STEREOTYPE_APPLICATION__RIGHT_PARENT: return DiffPackage.MODEL_ELEMENT_CHANGE_LEFT_TARGET__RIGHT_PARENT; + case UMLDiffPackage.REMOVE_STEREOTYPE_APPLICATION__LEFT_ELEMENT: return DiffPackage.MODEL_ELEMENT_CHANGE_LEFT_TARGET__LEFT_ELEMENT; + default: return -1; + } + } + return super.eBaseStructuralFeatureID(derivedFeatureID, baseClass); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public int eDerivedStructuralFeatureID(int baseFeatureID, Class<?> baseClass) { + if (baseClass == DiffElement.class) { + switch (baseFeatureID) { + case DiffPackage.DIFF_ELEMENT__SUB_DIFF_ELEMENTS: return UMLDiffPackage.REMOVE_STEREOTYPE_APPLICATION__SUB_DIFF_ELEMENTS; + case DiffPackage.DIFF_ELEMENT__IS_HIDDEN_BY: return UMLDiffPackage.REMOVE_STEREOTYPE_APPLICATION__IS_HIDDEN_BY; + case DiffPackage.DIFF_ELEMENT__CONFLICTING: return UMLDiffPackage.REMOVE_STEREOTYPE_APPLICATION__CONFLICTING; + case DiffPackage.DIFF_ELEMENT__KIND: return UMLDiffPackage.REMOVE_STEREOTYPE_APPLICATION__KIND; + case DiffPackage.DIFF_ELEMENT__REMOTE: return UMLDiffPackage.REMOVE_STEREOTYPE_APPLICATION__REMOTE; + default: return -1; + } + } + if (baseClass == ModelElementChange.class) { + switch (baseFeatureID) { + default: return -1; + } + } + if (baseClass == ModelElementChangeLeftTarget.class) { + switch (baseFeatureID) { + case DiffPackage.MODEL_ELEMENT_CHANGE_LEFT_TARGET__RIGHT_PARENT: return UMLDiffPackage.REMOVE_STEREOTYPE_APPLICATION__RIGHT_PARENT; + case DiffPackage.MODEL_ELEMENT_CHANGE_LEFT_TARGET__LEFT_ELEMENT: return UMLDiffPackage.REMOVE_STEREOTYPE_APPLICATION__LEFT_ELEMENT; + default: return -1; + } + } + return super.eDerivedStructuralFeatureID(baseFeatureID, baseClass); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public String toString() { + if (eIsProxy()) return super.toString(); + + StringBuffer result = new StringBuffer(super.toString()); + result.append(" (conflicting: "); + result.append(conflicting); + result.append(", kind: "); + result.append(kind); + result.append(", remote: "); + result.append(remote); + result.append(')'); + return result.toString(); + } + +} //RemoveStereotypeApplicationImpl diff --git a/deprecated/org.eclipse.papyrus.uml.compare/src-gen/org/eclipse/papyrus/uml/compare/diff/metamodel/uml_diff_extension/impl/StereotypeChangeImpl.java b/deprecated/org.eclipse.papyrus.uml.compare/src-gen/org/eclipse/papyrus/uml/compare/diff/metamodel/uml_diff_extension/impl/StereotypeChangeImpl.java new file mode 100644 index 00000000000..fb2874ec430 --- /dev/null +++ b/deprecated/org.eclipse.papyrus.uml.compare/src-gen/org/eclipse/papyrus/uml/compare/diff/metamodel/uml_diff_extension/impl/StereotypeChangeImpl.java @@ -0,0 +1,48 @@ +/** + * + * Copyright (c) 2010 CEA LIST. + * 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: + * Tatiana Fesenko(CEA LIST) - initial API and implementation + */ +package org.eclipse.papyrus.uml.compare.diff.metamodel.uml_diff_extension.impl; + +import org.eclipse.emf.ecore.EClass; + +import org.eclipse.papyrus.uml.compare.diff.metamodel.uml_diff_extension.StereotypeChange; +import org.eclipse.papyrus.uml.compare.diff.metamodel.uml_diff_extension.UMLDiffPackage; + +/** + * <!-- begin-user-doc --> + * An implementation of the model object '<em><b>Stereotype Change</b></em>'. + * <!-- end-user-doc --> + * <p> + * </p> + * + * @generated + */ +public abstract class StereotypeChangeImpl extends UMLDiffExtensionImpl implements StereotypeChange { + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected StereotypeChangeImpl() { + super(); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + protected EClass eStaticClass() { + return UMLDiffPackage.Literals.STEREOTYPE_CHANGE; + } + +} //StereotypeChangeImpl diff --git a/deprecated/org.eclipse.papyrus.uml.compare/src-gen/org/eclipse/papyrus/uml/compare/diff/metamodel/uml_diff_extension/impl/TaggedValueChangeImpl.java b/deprecated/org.eclipse.papyrus.uml.compare/src-gen/org/eclipse/papyrus/uml/compare/diff/metamodel/uml_diff_extension/impl/TaggedValueChangeImpl.java new file mode 100644 index 00000000000..e39b8722f22 --- /dev/null +++ b/deprecated/org.eclipse.papyrus.uml.compare/src-gen/org/eclipse/papyrus/uml/compare/diff/metamodel/uml_diff_extension/impl/TaggedValueChangeImpl.java @@ -0,0 +1,599 @@ +/** + * + * Copyright (c) 2010 CEA LIST. + * 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: + * Tatiana Fesenko(CEA LIST) - initial API and implementation + */ +package org.eclipse.papyrus.uml.compare.diff.metamodel.uml_diff_extension.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.compare.diff.merge.IMerger; +import org.eclipse.emf.compare.diff.metamodel.AbstractDiffExtension; +import org.eclipse.emf.compare.diff.metamodel.AttributeChange; +import org.eclipse.emf.compare.diff.metamodel.DiffElement; +import org.eclipse.emf.compare.diff.metamodel.DiffModel; +import org.eclipse.emf.compare.diff.metamodel.DiffPackage; +import org.eclipse.emf.compare.diff.metamodel.DifferenceKind; +import org.eclipse.emf.ecore.EAttribute; +import org.eclipse.emf.compare.diff.metamodel.impl.AttributeChangeImpl; +import org.eclipse.emf.compare.util.AdapterUtils; + +import org.eclipse.emf.ecore.EClass; + +import org.eclipse.emf.ecore.EObject; +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.EObjectWithInverseResolvingEList; +import org.eclipse.emf.ecore.util.InternalEList; +import org.eclipse.emf.edit.ui.provider.AdapterFactoryLabelProvider; +import org.eclipse.papyrus.uml.compare.diff.metamodel.uml_diff_extension.TaggedValueChange; +import org.eclipse.papyrus.uml.compare.diff.metamodel.uml_diff_extension.UMLDiffExtension; +import org.eclipse.papyrus.uml.compare.diff.metamodel.uml_diff_extension.UMLDiffPackage; +import org.eclipse.swt.graphics.Image; + +/** + * <!-- begin-user-doc --> + * An implementation of the model object '<em><b>Tagged Value Change</b></em>'. + * <!-- end-user-doc --> + * <p> + * The following features are implemented: + * <ul> + * <li>{@link org.eclipse.papyrus.uml.compare.diff.metamodel.uml_diff_extension.impl.TaggedValueChangeImpl#getSubDiffElements <em>Sub Diff Elements</em>}</li> + * <li>{@link org.eclipse.papyrus.uml.compare.diff.metamodel.uml_diff_extension.impl.TaggedValueChangeImpl#getIsHiddenBy <em>Is Hidden By</em>}</li> + * <li>{@link org.eclipse.papyrus.uml.compare.diff.metamodel.uml_diff_extension.impl.TaggedValueChangeImpl#isConflicting <em>Conflicting</em>}</li> + * <li>{@link org.eclipse.papyrus.uml.compare.diff.metamodel.uml_diff_extension.impl.TaggedValueChangeImpl#getKind <em>Kind</em>}</li> + * <li>{@link org.eclipse.papyrus.uml.compare.diff.metamodel.uml_diff_extension.impl.TaggedValueChangeImpl#isRemote <em>Remote</em>}</li> + * <li>{@link org.eclipse.papyrus.uml.compare.diff.metamodel.uml_diff_extension.impl.TaggedValueChangeImpl#getAttribute <em>Attribute</em>}</li> + * <li>{@link org.eclipse.papyrus.uml.compare.diff.metamodel.uml_diff_extension.impl.TaggedValueChangeImpl#getLeftElement <em>Left Element</em>}</li> + * <li>{@link org.eclipse.papyrus.uml.compare.diff.metamodel.uml_diff_extension.impl.TaggedValueChangeImpl#getRightElement <em>Right Element</em>}</li> + * </ul> + * </p> + * + * @generated + */ +public abstract class TaggedValueChangeImpl extends UMLDiffExtensionImpl implements TaggedValueChange { + /** + * The cached value of the '{@link #getSubDiffElements() <em>Sub Diff Elements</em>}' containment reference list. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getSubDiffElements() + * @generated + * @ordered + */ + protected EList<DiffElement> subDiffElements; + /** + * The cached value of the '{@link #getIsHiddenBy() <em>Is Hidden By</em>}' reference list. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getIsHiddenBy() + * @generated + * @ordered + */ + protected EList<AbstractDiffExtension> isHiddenBy; + /** + * The default value of the '{@link #isConflicting() <em>Conflicting</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #isConflicting() + * @generated + * @ordered + */ + protected static final boolean CONFLICTING_EDEFAULT = false; + /** + * The cached value of the '{@link #isConflicting() <em>Conflicting</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #isConflicting() + * @generated + * @ordered + */ + protected boolean conflicting = CONFLICTING_EDEFAULT; + /** + * The default value of the '{@link #getKind() <em>Kind</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getKind() + * @generated + * @ordered + */ + protected static final DifferenceKind KIND_EDEFAULT = DifferenceKind.ADDITION; + /** + * The cached value of the '{@link #getKind() <em>Kind</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getKind() + * @generated + * @ordered + */ + protected DifferenceKind kind = KIND_EDEFAULT; + /** + * The default value of the '{@link #isRemote() <em>Remote</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #isRemote() + * @generated + * @ordered + */ + protected static final boolean REMOTE_EDEFAULT = false; + /** + * The cached value of the '{@link #isRemote() <em>Remote</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #isRemote() + * @generated + * @ordered + */ + protected boolean remote = REMOTE_EDEFAULT; + /** + * The cached value of the '{@link #getAttribute() <em>Attribute</em>}' reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getAttribute() + * @generated + * @ordered + */ + protected EAttribute attribute; + /** + * The cached value of the '{@link #getLeftElement() <em>Left Element</em>}' reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getLeftElement() + * @generated + * @ordered + */ + protected EObject leftElement; + /** + * The cached value of the '{@link #getRightElement() <em>Right Element</em>}' reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getRightElement() + * @generated + * @ordered + */ + protected EObject rightElement; + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected TaggedValueChangeImpl() { + super(); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + protected EClass eStaticClass() { + return UMLDiffPackage.Literals.TAGGED_VALUE_CHANGE; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public EList<DiffElement> getSubDiffElements() { + if (subDiffElements == null) { + subDiffElements = new EObjectContainmentEList<DiffElement>(DiffElement.class, this, UMLDiffPackage.TAGGED_VALUE_CHANGE__SUB_DIFF_ELEMENTS); + } + return subDiffElements; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public EList<AbstractDiffExtension> getIsHiddenBy() { + if (isHiddenBy == null) { + isHiddenBy = new EObjectWithInverseResolvingEList.ManyInverse<AbstractDiffExtension>(AbstractDiffExtension.class, this, UMLDiffPackage.TAGGED_VALUE_CHANGE__IS_HIDDEN_BY, DiffPackage.ABSTRACT_DIFF_EXTENSION__HIDE_ELEMENTS); + } + return isHiddenBy; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public boolean isConflicting() { + return conflicting; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public DifferenceKind getKind() { + return kind; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public boolean isRemote() { + return remote; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public void setRemote(boolean newRemote) { + boolean oldRemote = remote; + remote = newRemote; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, UMLDiffPackage.TAGGED_VALUE_CHANGE__REMOTE, oldRemote, remote)); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public EAttribute getAttribute() { + if (attribute != null && attribute.eIsProxy()) { + InternalEObject oldAttribute = (InternalEObject)attribute; + attribute = (EAttribute)eResolveProxy(oldAttribute); + if (attribute != oldAttribute) { + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLDiffPackage.TAGGED_VALUE_CHANGE__ATTRIBUTE, oldAttribute, attribute)); + } + } + return attribute; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public EAttribute basicGetAttribute() { + return attribute; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public void setAttribute(EAttribute newAttribute) { + EAttribute oldAttribute = attribute; + attribute = newAttribute; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, UMLDiffPackage.TAGGED_VALUE_CHANGE__ATTRIBUTE, oldAttribute, attribute)); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public EObject getLeftElement() { + if (leftElement != null && leftElement.eIsProxy()) { + InternalEObject oldLeftElement = (InternalEObject)leftElement; + leftElement = eResolveProxy(oldLeftElement); + if (leftElement != oldLeftElement) { + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLDiffPackage.TAGGED_VALUE_CHANGE__LEFT_ELEMENT, oldLeftElement, leftElement)); + } + } + return leftElement; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public EObject basicGetLeftElement() { + return leftElement; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public void setLeftElement(EObject newLeftElement) { + EObject oldLeftElement = leftElement; + leftElement = newLeftElement; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, UMLDiffPackage.TAGGED_VALUE_CHANGE__LEFT_ELEMENT, oldLeftElement, leftElement)); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public EObject getRightElement() { + if (rightElement != null && rightElement.eIsProxy()) { + InternalEObject oldRightElement = (InternalEObject)rightElement; + rightElement = eResolveProxy(oldRightElement); + if (rightElement != oldRightElement) { + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLDiffPackage.TAGGED_VALUE_CHANGE__RIGHT_ELEMENT, oldRightElement, rightElement)); + } + } + return rightElement; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public EObject basicGetRightElement() { + return rightElement; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public void setRightElement(EObject newRightElement) { + EObject oldRightElement = rightElement; + rightElement = newRightElement; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, UMLDiffPackage.TAGGED_VALUE_CHANGE__RIGHT_ELEMENT, oldRightElement, rightElement)); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated NOT + */ + public Object getImage() { + AdapterFactoryLabelProvider adapterProvider = new AdapterFactoryLabelProvider(AdapterUtils.getAdapterFactory()); + Image labelImage = adapterProvider.getImage(getAttribute()); + return labelImage; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @SuppressWarnings("unchecked") + @Override + public NotificationChain eInverseAdd(InternalEObject otherEnd, int featureID, NotificationChain msgs) { + switch (featureID) { + case UMLDiffPackage.TAGGED_VALUE_CHANGE__IS_HIDDEN_BY: + return ((InternalEList<InternalEObject>)(InternalEList<?>)getIsHiddenBy()).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 UMLDiffPackage.TAGGED_VALUE_CHANGE__SUB_DIFF_ELEMENTS: + return ((InternalEList<?>)getSubDiffElements()).basicRemove(otherEnd, msgs); + case UMLDiffPackage.TAGGED_VALUE_CHANGE__IS_HIDDEN_BY: + return ((InternalEList<?>)getIsHiddenBy()).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 UMLDiffPackage.TAGGED_VALUE_CHANGE__SUB_DIFF_ELEMENTS: + return getSubDiffElements(); + case UMLDiffPackage.TAGGED_VALUE_CHANGE__IS_HIDDEN_BY: + return getIsHiddenBy(); + case UMLDiffPackage.TAGGED_VALUE_CHANGE__CONFLICTING: + return isConflicting(); + case UMLDiffPackage.TAGGED_VALUE_CHANGE__KIND: + return getKind(); + case UMLDiffPackage.TAGGED_VALUE_CHANGE__REMOTE: + return isRemote(); + case UMLDiffPackage.TAGGED_VALUE_CHANGE__ATTRIBUTE: + if (resolve) return getAttribute(); + return basicGetAttribute(); + case UMLDiffPackage.TAGGED_VALUE_CHANGE__LEFT_ELEMENT: + if (resolve) return getLeftElement(); + return basicGetLeftElement(); + case UMLDiffPackage.TAGGED_VALUE_CHANGE__RIGHT_ELEMENT: + if (resolve) return getRightElement(); + return basicGetRightElement(); + } + 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 UMLDiffPackage.TAGGED_VALUE_CHANGE__SUB_DIFF_ELEMENTS: + getSubDiffElements().clear(); + getSubDiffElements().addAll((Collection<? extends DiffElement>)newValue); + return; + case UMLDiffPackage.TAGGED_VALUE_CHANGE__IS_HIDDEN_BY: + getIsHiddenBy().clear(); + getIsHiddenBy().addAll((Collection<? extends AbstractDiffExtension>)newValue); + return; + case UMLDiffPackage.TAGGED_VALUE_CHANGE__REMOTE: + setRemote((Boolean)newValue); + return; + case UMLDiffPackage.TAGGED_VALUE_CHANGE__ATTRIBUTE: + setAttribute((EAttribute)newValue); + return; + case UMLDiffPackage.TAGGED_VALUE_CHANGE__LEFT_ELEMENT: + setLeftElement((EObject)newValue); + return; + case UMLDiffPackage.TAGGED_VALUE_CHANGE__RIGHT_ELEMENT: + setRightElement((EObject)newValue); + return; + } + super.eSet(featureID, newValue); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void eUnset(int featureID) { + switch (featureID) { + case UMLDiffPackage.TAGGED_VALUE_CHANGE__SUB_DIFF_ELEMENTS: + getSubDiffElements().clear(); + return; + case UMLDiffPackage.TAGGED_VALUE_CHANGE__IS_HIDDEN_BY: + getIsHiddenBy().clear(); + return; + case UMLDiffPackage.TAGGED_VALUE_CHANGE__REMOTE: + setRemote(REMOTE_EDEFAULT); + return; + case UMLDiffPackage.TAGGED_VALUE_CHANGE__ATTRIBUTE: + setAttribute((EAttribute)null); + return; + case UMLDiffPackage.TAGGED_VALUE_CHANGE__LEFT_ELEMENT: + setLeftElement((EObject)null); + return; + case UMLDiffPackage.TAGGED_VALUE_CHANGE__RIGHT_ELEMENT: + setRightElement((EObject)null); + return; + } + super.eUnset(featureID); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public boolean eIsSet(int featureID) { + switch (featureID) { + case UMLDiffPackage.TAGGED_VALUE_CHANGE__SUB_DIFF_ELEMENTS: + return subDiffElements != null && !subDiffElements.isEmpty(); + case UMLDiffPackage.TAGGED_VALUE_CHANGE__IS_HIDDEN_BY: + return isHiddenBy != null && !isHiddenBy.isEmpty(); + case UMLDiffPackage.TAGGED_VALUE_CHANGE__CONFLICTING: + return conflicting != CONFLICTING_EDEFAULT; + case UMLDiffPackage.TAGGED_VALUE_CHANGE__KIND: + return kind != KIND_EDEFAULT; + case UMLDiffPackage.TAGGED_VALUE_CHANGE__REMOTE: + return remote != REMOTE_EDEFAULT; + case UMLDiffPackage.TAGGED_VALUE_CHANGE__ATTRIBUTE: + return attribute != null; + case UMLDiffPackage.TAGGED_VALUE_CHANGE__LEFT_ELEMENT: + return leftElement != null; + case UMLDiffPackage.TAGGED_VALUE_CHANGE__RIGHT_ELEMENT: + return rightElement != null; + } + return super.eIsSet(featureID); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public int eBaseStructuralFeatureID(int derivedFeatureID, Class<?> baseClass) { + if (baseClass == DiffElement.class) { + switch (derivedFeatureID) { + case UMLDiffPackage.TAGGED_VALUE_CHANGE__SUB_DIFF_ELEMENTS: return DiffPackage.DIFF_ELEMENT__SUB_DIFF_ELEMENTS; + case UMLDiffPackage.TAGGED_VALUE_CHANGE__IS_HIDDEN_BY: return DiffPackage.DIFF_ELEMENT__IS_HIDDEN_BY; + case UMLDiffPackage.TAGGED_VALUE_CHANGE__CONFLICTING: return DiffPackage.DIFF_ELEMENT__CONFLICTING; + case UMLDiffPackage.TAGGED_VALUE_CHANGE__KIND: return DiffPackage.DIFF_ELEMENT__KIND; + case UMLDiffPackage.TAGGED_VALUE_CHANGE__REMOTE: return DiffPackage.DIFF_ELEMENT__REMOTE; + default: return -1; + } + } + if (baseClass == AttributeChange.class) { + switch (derivedFeatureID) { + case UMLDiffPackage.TAGGED_VALUE_CHANGE__ATTRIBUTE: return DiffPackage.ATTRIBUTE_CHANGE__ATTRIBUTE; + case UMLDiffPackage.TAGGED_VALUE_CHANGE__LEFT_ELEMENT: return DiffPackage.ATTRIBUTE_CHANGE__LEFT_ELEMENT; + case UMLDiffPackage.TAGGED_VALUE_CHANGE__RIGHT_ELEMENT: return DiffPackage.ATTRIBUTE_CHANGE__RIGHT_ELEMENT; + default: return -1; + } + } + return super.eBaseStructuralFeatureID(derivedFeatureID, baseClass); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public int eDerivedStructuralFeatureID(int baseFeatureID, Class<?> baseClass) { + if (baseClass == DiffElement.class) { + switch (baseFeatureID) { + case DiffPackage.DIFF_ELEMENT__SUB_DIFF_ELEMENTS: return UMLDiffPackage.TAGGED_VALUE_CHANGE__SUB_DIFF_ELEMENTS; + case DiffPackage.DIFF_ELEMENT__IS_HIDDEN_BY: return UMLDiffPackage.TAGGED_VALUE_CHANGE__IS_HIDDEN_BY; + case DiffPackage.DIFF_ELEMENT__CONFLICTING: return UMLDiffPackage.TAGGED_VALUE_CHANGE__CONFLICTING; + case DiffPackage.DIFF_ELEMENT__KIND: return UMLDiffPackage.TAGGED_VALUE_CHANGE__KIND; + case DiffPackage.DIFF_ELEMENT__REMOTE: return UMLDiffPackage.TAGGED_VALUE_CHANGE__REMOTE; + default: return -1; + } + } + if (baseClass == AttributeChange.class) { + switch (baseFeatureID) { + case DiffPackage.ATTRIBUTE_CHANGE__ATTRIBUTE: return UMLDiffPackage.TAGGED_VALUE_CHANGE__ATTRIBUTE; + case DiffPackage.ATTRIBUTE_CHANGE__LEFT_ELEMENT: return UMLDiffPackage.TAGGED_VALUE_CHANGE__LEFT_ELEMENT; + case DiffPackage.ATTRIBUTE_CHANGE__RIGHT_ELEMENT: return UMLDiffPackage.TAGGED_VALUE_CHANGE__RIGHT_ELEMENT; + default: return -1; + } + } + return super.eDerivedStructuralFeatureID(baseFeatureID, baseClass); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public String toString() { + if (eIsProxy()) return super.toString(); + + StringBuffer result = new StringBuffer(super.toString()); + result.append(" (conflicting: "); + result.append(conflicting); + result.append(", kind: "); + result.append(kind); + result.append(", remote: "); + result.append(remote); + result.append(')'); + return result.toString(); + } + +} //TaggedValueChangeImpl diff --git a/deprecated/org.eclipse.papyrus.uml.compare/src-gen/org/eclipse/papyrus/uml/compare/diff/metamodel/uml_diff_extension/impl/TaggedValueChangeLeftTargetImpl.java b/deprecated/org.eclipse.papyrus.uml.compare/src-gen/org/eclipse/papyrus/uml/compare/diff/metamodel/uml_diff_extension/impl/TaggedValueChangeLeftTargetImpl.java new file mode 100644 index 00000000000..cd64f09814b --- /dev/null +++ b/deprecated/org.eclipse.papyrus.uml.compare/src-gen/org/eclipse/papyrus/uml/compare/diff/metamodel/uml_diff_extension/impl/TaggedValueChangeLeftTargetImpl.java @@ -0,0 +1,235 @@ +/** + * + * Copyright (c) 2010 CEA LIST. + * 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: + * Tatiana Fesenko(CEA LIST) - initial API and implementation + */ +package org.eclipse.papyrus.uml.compare.diff.metamodel.uml_diff_extension.impl; + +import java.util.Collection; +import org.eclipse.emf.common.notify.Notification; +import org.eclipse.emf.compare.diff.metamodel.AttributeChangeLeftTarget; +import org.eclipse.emf.common.notify.NotificationChain; +import org.eclipse.emf.common.util.EList; +import org.eclipse.emf.compare.diff.merge.IMerger; +import org.eclipse.emf.compare.diff.metamodel.AbstractDiffExtension; +import org.eclipse.emf.compare.diff.metamodel.DiffElement; +import org.eclipse.emf.compare.diff.metamodel.DiffModel; +import org.eclipse.emf.compare.diff.metamodel.DiffPackage; +import org.eclipse.emf.compare.diff.metamodel.impl.AttributeChangeLeftTargetImpl; +import org.eclipse.emf.compare.util.AdapterUtils; + +import org.eclipse.emf.ecore.EClass; + +import org.eclipse.emf.ecore.InternalEObject; +import org.eclipse.emf.ecore.impl.ENotificationImpl; +import org.eclipse.emf.ecore.util.EObjectWithInverseResolvingEList; +import org.eclipse.emf.ecore.util.InternalEList; +import org.eclipse.emf.edit.ui.provider.AdapterFactoryLabelProvider; +import org.eclipse.papyrus.uml.compare.UMLCompareUtils; +import org.eclipse.papyrus.uml.compare.diff.metamodel.uml_diff_extension.TaggedValueChange; +import org.eclipse.papyrus.uml.compare.diff.metamodel.uml_diff_extension.TaggedValueChangeLeftTarget; +import org.eclipse.papyrus.uml.compare.diff.metamodel.uml_diff_extension.UMLDiffExtension; +import org.eclipse.papyrus.uml.compare.diff.metamodel.uml_diff_extension.UMLDiffPackage; +import org.eclipse.swt.graphics.Image; + +/** + * <!-- begin-user-doc --> + * An implementation of the model object '<em><b>Tagged Value Change Left Target</b></em>'. + * <!-- end-user-doc --> + * <p> + * The following features are implemented: + * <ul> + * <li>{@link org.eclipse.papyrus.uml.compare.diff.metamodel.uml_diff_extension.impl.TaggedValueChangeLeftTargetImpl#getLeftTarget <em>Left Target</em>}</li> + * </ul> + * </p> + * + * @generated + */ +public class TaggedValueChangeLeftTargetImpl extends TaggedValueChangeImpl implements TaggedValueChangeLeftTarget { + + /** + * The default value of the '{@link #getLeftTarget() <em>Left Target</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getLeftTarget() + * @generated + * @ordered + */ + protected static final Object LEFT_TARGET_EDEFAULT = null; + + /** + * The cached value of the '{@link #getLeftTarget() <em>Left Target</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getLeftTarget() + * @generated + * @ordered + */ + protected Object leftTarget = LEFT_TARGET_EDEFAULT; + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected TaggedValueChangeLeftTargetImpl() { + super(); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + protected EClass eStaticClass() { + return UMLDiffPackage.Literals.TAGGED_VALUE_CHANGE_LEFT_TARGET; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public Object getLeftTarget() { + return leftTarget; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public void setLeftTarget(Object newLeftTarget) { + Object oldLeftTarget = leftTarget; + leftTarget = newLeftTarget; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, UMLDiffPackage.TAGGED_VALUE_CHANGE_LEFT_TARGET__LEFT_TARGET, oldLeftTarget, leftTarget)); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * + * @generated NOT + */ + public Object getImage() { + AdapterFactoryLabelProvider adapterProvider = new AdapterFactoryLabelProvider(AdapterUtils.getAdapterFactory()); + Image labelImage = adapterProvider.getImage(getAttribute()); + return labelImage; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public Object eGet(int featureID, boolean resolve, boolean coreType) { + switch (featureID) { + case UMLDiffPackage.TAGGED_VALUE_CHANGE_LEFT_TARGET__LEFT_TARGET: + return getLeftTarget(); + } + 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 UMLDiffPackage.TAGGED_VALUE_CHANGE_LEFT_TARGET__LEFT_TARGET: + setLeftTarget(newValue); + return; + } + super.eSet(featureID, newValue); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void eUnset(int featureID) { + switch (featureID) { + case UMLDiffPackage.TAGGED_VALUE_CHANGE_LEFT_TARGET__LEFT_TARGET: + setLeftTarget(LEFT_TARGET_EDEFAULT); + return; + } + super.eUnset(featureID); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public boolean eIsSet(int featureID) { + switch (featureID) { + case UMLDiffPackage.TAGGED_VALUE_CHANGE_LEFT_TARGET__LEFT_TARGET: + return LEFT_TARGET_EDEFAULT == null ? leftTarget != null : !LEFT_TARGET_EDEFAULT.equals(leftTarget); + } + return super.eIsSet(featureID); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public int eBaseStructuralFeatureID(int derivedFeatureID, Class<?> baseClass) { + if (baseClass == AttributeChangeLeftTarget.class) { + switch (derivedFeatureID) { + case UMLDiffPackage.TAGGED_VALUE_CHANGE_LEFT_TARGET__LEFT_TARGET: return DiffPackage.ATTRIBUTE_CHANGE_LEFT_TARGET__LEFT_TARGET; + default: return -1; + } + } + return super.eBaseStructuralFeatureID(derivedFeatureID, baseClass); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public int eDerivedStructuralFeatureID(int baseFeatureID, Class<?> baseClass) { + if (baseClass == AttributeChangeLeftTarget.class) { + switch (baseFeatureID) { + case DiffPackage.ATTRIBUTE_CHANGE_LEFT_TARGET__LEFT_TARGET: return UMLDiffPackage.TAGGED_VALUE_CHANGE_LEFT_TARGET__LEFT_TARGET; + default: return -1; + } + } + return super.eDerivedStructuralFeatureID(baseFeatureID, baseClass); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public String toString() { + if (eIsProxy()) return super.toString(); + + StringBuffer result = new StringBuffer(super.toString()); + result.append(" (leftTarget: "); + result.append(leftTarget); + result.append(')'); + return result.toString(); + } + +} //TaggedValueChangeLeftTargetImpl diff --git a/deprecated/org.eclipse.papyrus.uml.compare/src-gen/org/eclipse/papyrus/uml/compare/diff/metamodel/uml_diff_extension/impl/TaggedValueChangeRightTargetImpl.java b/deprecated/org.eclipse.papyrus.uml.compare/src-gen/org/eclipse/papyrus/uml/compare/diff/metamodel/uml_diff_extension/impl/TaggedValueChangeRightTargetImpl.java new file mode 100644 index 00000000000..b02340913fd --- /dev/null +++ b/deprecated/org.eclipse.papyrus.uml.compare/src-gen/org/eclipse/papyrus/uml/compare/diff/metamodel/uml_diff_extension/impl/TaggedValueChangeRightTargetImpl.java @@ -0,0 +1,231 @@ +/** + * + * Copyright (c) 2010 CEA LIST. + * 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: + * Tatiana Fesenko(CEA LIST) - initial API and implementation + */ +package org.eclipse.papyrus.uml.compare.diff.metamodel.uml_diff_extension.impl; + +import java.util.Collection; +import org.eclipse.emf.common.notify.Notification; +import org.eclipse.emf.compare.diff.metamodel.AttributeChangeRightTarget; +import org.eclipse.emf.common.notify.NotificationChain; +import org.eclipse.emf.common.util.EList; +import org.eclipse.emf.compare.diff.merge.IMerger; +import org.eclipse.emf.compare.diff.metamodel.AbstractDiffExtension; +import org.eclipse.emf.compare.diff.metamodel.DiffElement; +import org.eclipse.emf.compare.diff.metamodel.DiffModel; +import org.eclipse.emf.compare.diff.metamodel.DiffPackage; +import org.eclipse.emf.compare.diff.metamodel.impl.AttributeChangeRightTargetImpl; +import org.eclipse.emf.compare.util.AdapterUtils; + +import org.eclipse.emf.ecore.EClass; + +import org.eclipse.emf.ecore.InternalEObject; +import org.eclipse.emf.ecore.impl.ENotificationImpl; +import org.eclipse.emf.ecore.util.EObjectWithInverseResolvingEList; +import org.eclipse.emf.ecore.util.InternalEList; +import org.eclipse.emf.edit.ui.provider.AdapterFactoryLabelProvider; +import org.eclipse.papyrus.uml.compare.UMLCompareUtils; +import org.eclipse.papyrus.uml.compare.diff.metamodel.uml_diff_extension.TaggedValueChange; +import org.eclipse.papyrus.uml.compare.diff.metamodel.uml_diff_extension.TaggedValueChangeRightTarget; +import org.eclipse.papyrus.uml.compare.diff.metamodel.uml_diff_extension.UMLDiffExtension; +import org.eclipse.papyrus.uml.compare.diff.metamodel.uml_diff_extension.UMLDiffPackage; +import org.eclipse.swt.graphics.Image; + +/** + * <!-- begin-user-doc --> + * An implementation of the model object '<em><b>Tagged Value Change Right Target</b></em>'. + * <!-- end-user-doc --> + * <p> + * The following features are implemented: + * <ul> + * <li>{@link org.eclipse.papyrus.uml.compare.diff.metamodel.uml_diff_extension.impl.TaggedValueChangeRightTargetImpl#getRightTarget <em>Right Target</em>}</li> + * </ul> + * </p> + * + * @generated + */ +public class TaggedValueChangeRightTargetImpl extends TaggedValueChangeImpl implements TaggedValueChangeRightTarget { + /** + * The default value of the '{@link #getRightTarget() <em>Right Target</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getRightTarget() + * @generated + * @ordered + */ + protected static final Object RIGHT_TARGET_EDEFAULT = null; + /** + * The cached value of the '{@link #getRightTarget() <em>Right Target</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getRightTarget() + * @generated + * @ordered + */ + protected Object rightTarget = RIGHT_TARGET_EDEFAULT; + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected TaggedValueChangeRightTargetImpl() { + super(); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + protected EClass eStaticClass() { + return UMLDiffPackage.Literals.TAGGED_VALUE_CHANGE_RIGHT_TARGET; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public Object getRightTarget() { + return rightTarget; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public void setRightTarget(Object newRightTarget) { + Object oldRightTarget = rightTarget; + rightTarget = newRightTarget; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, UMLDiffPackage.TAGGED_VALUE_CHANGE_RIGHT_TARGET__RIGHT_TARGET, oldRightTarget, rightTarget)); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated NOT + */ + public Object getImage() { + AdapterFactoryLabelProvider adapterProvider = new AdapterFactoryLabelProvider(AdapterUtils.getAdapterFactory()); + Image labelImage = adapterProvider.getImage(getAttribute()); + return labelImage; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public Object eGet(int featureID, boolean resolve, boolean coreType) { + switch (featureID) { + case UMLDiffPackage.TAGGED_VALUE_CHANGE_RIGHT_TARGET__RIGHT_TARGET: + return getRightTarget(); + } + 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 UMLDiffPackage.TAGGED_VALUE_CHANGE_RIGHT_TARGET__RIGHT_TARGET: + setRightTarget(newValue); + return; + } + super.eSet(featureID, newValue); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void eUnset(int featureID) { + switch (featureID) { + case UMLDiffPackage.TAGGED_VALUE_CHANGE_RIGHT_TARGET__RIGHT_TARGET: + setRightTarget(RIGHT_TARGET_EDEFAULT); + return; + } + super.eUnset(featureID); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public boolean eIsSet(int featureID) { + switch (featureID) { + case UMLDiffPackage.TAGGED_VALUE_CHANGE_RIGHT_TARGET__RIGHT_TARGET: + return RIGHT_TARGET_EDEFAULT == null ? rightTarget != null : !RIGHT_TARGET_EDEFAULT.equals(rightTarget); + } + return super.eIsSet(featureID); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public int eBaseStructuralFeatureID(int derivedFeatureID, Class<?> baseClass) { + if (baseClass == AttributeChangeRightTarget.class) { + switch (derivedFeatureID) { + case UMLDiffPackage.TAGGED_VALUE_CHANGE_RIGHT_TARGET__RIGHT_TARGET: return DiffPackage.ATTRIBUTE_CHANGE_RIGHT_TARGET__RIGHT_TARGET; + default: return -1; + } + } + return super.eBaseStructuralFeatureID(derivedFeatureID, baseClass); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public int eDerivedStructuralFeatureID(int baseFeatureID, Class<?> baseClass) { + if (baseClass == AttributeChangeRightTarget.class) { + switch (baseFeatureID) { + case DiffPackage.ATTRIBUTE_CHANGE_RIGHT_TARGET__RIGHT_TARGET: return UMLDiffPackage.TAGGED_VALUE_CHANGE_RIGHT_TARGET__RIGHT_TARGET; + default: return -1; + } + } + return super.eDerivedStructuralFeatureID(baseFeatureID, baseClass); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public String toString() { + if (eIsProxy()) return super.toString(); + + StringBuffer result = new StringBuffer(super.toString()); + result.append(" (rightTarget: "); + result.append(rightTarget); + result.append(')'); + return result.toString(); + } + +} //TaggedValueChangeRightTargetImpl diff --git a/deprecated/org.eclipse.papyrus.uml.compare/src-gen/org/eclipse/papyrus/uml/compare/diff/metamodel/uml_diff_extension/impl/TaggedValueReferenceChangeImpl.java b/deprecated/org.eclipse.papyrus.uml.compare/src-gen/org/eclipse/papyrus/uml/compare/diff/metamodel/uml_diff_extension/impl/TaggedValueReferenceChangeImpl.java new file mode 100644 index 00000000000..ef98782a63e --- /dev/null +++ b/deprecated/org.eclipse.papyrus.uml.compare/src-gen/org/eclipse/papyrus/uml/compare/diff/metamodel/uml_diff_extension/impl/TaggedValueReferenceChangeImpl.java @@ -0,0 +1,600 @@ +/** + * + * Copyright (c) 2010 CEA LIST. + * 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: + * Tatiana Fesenko(CEA LIST) - initial API and implementation + */ +package org.eclipse.papyrus.uml.compare.diff.metamodel.uml_diff_extension.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.compare.diff.metamodel.AbstractDiffExtension; +import org.eclipse.emf.compare.diff.metamodel.DiffElement; +import org.eclipse.emf.compare.diff.metamodel.DiffPackage; +import org.eclipse.emf.compare.diff.metamodel.DifferenceKind; +import org.eclipse.emf.compare.diff.metamodel.ReferenceChange; +import org.eclipse.emf.compare.util.AdapterUtils; + +import org.eclipse.emf.ecore.EClass; +import org.eclipse.emf.ecore.EObject; +import org.eclipse.emf.ecore.EReference; +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.EObjectWithInverseResolvingEList; +import org.eclipse.emf.ecore.util.InternalEList; + +import org.eclipse.papyrus.uml.compare.diff.metamodel.uml_diff_extension.TaggedValueReferenceChange; +import org.eclipse.papyrus.uml.compare.diff.metamodel.uml_diff_extension.UMLDiffPackage; +import org.eclipse.uml2.uml.util.UMLUtil; + +/** + * <!-- begin-user-doc --> + * An implementation of the model object '<em><b>Tagged Value Reference Change</b></em>'. + * <!-- end-user-doc --> + * <p> + * The following features are implemented: + * <ul> + * <li>{@link org.eclipse.papyrus.uml.compare.diff.metamodel.uml_diff_extension.impl.TaggedValueReferenceChangeImpl#getSubDiffElements <em>Sub Diff Elements</em>}</li> + * <li>{@link org.eclipse.papyrus.uml.compare.diff.metamodel.uml_diff_extension.impl.TaggedValueReferenceChangeImpl#getIsHiddenBy <em>Is Hidden By</em>}</li> + * <li>{@link org.eclipse.papyrus.uml.compare.diff.metamodel.uml_diff_extension.impl.TaggedValueReferenceChangeImpl#isConflicting <em>Conflicting</em>}</li> + * <li>{@link org.eclipse.papyrus.uml.compare.diff.metamodel.uml_diff_extension.impl.TaggedValueReferenceChangeImpl#getKind <em>Kind</em>}</li> + * <li>{@link org.eclipse.papyrus.uml.compare.diff.metamodel.uml_diff_extension.impl.TaggedValueReferenceChangeImpl#isRemote <em>Remote</em>}</li> + * <li>{@link org.eclipse.papyrus.uml.compare.diff.metamodel.uml_diff_extension.impl.TaggedValueReferenceChangeImpl#getReference <em>Reference</em>}</li> + * <li>{@link org.eclipse.papyrus.uml.compare.diff.metamodel.uml_diff_extension.impl.TaggedValueReferenceChangeImpl#getRightElement <em>Right Element</em>}</li> + * <li>{@link org.eclipse.papyrus.uml.compare.diff.metamodel.uml_diff_extension.impl.TaggedValueReferenceChangeImpl#getLeftElement <em>Left Element</em>}</li> + * </ul> + * </p> + * + * @generated + */ +public class TaggedValueReferenceChangeImpl extends UMLDiffExtensionImpl implements TaggedValueReferenceChange { + /** + * The cached value of the '{@link #getSubDiffElements() <em>Sub Diff Elements</em>}' containment reference list. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getSubDiffElements() + * @generated + * @ordered + */ + protected EList<DiffElement> subDiffElements; + + /** + * The cached value of the '{@link #getIsHiddenBy() <em>Is Hidden By</em>}' reference list. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getIsHiddenBy() + * @generated + * @ordered + */ + protected EList<AbstractDiffExtension> isHiddenBy; + + /** + * The default value of the '{@link #isConflicting() <em>Conflicting</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #isConflicting() + * @generated + * @ordered + */ + protected static final boolean CONFLICTING_EDEFAULT = false; + + /** + * The cached value of the '{@link #isConflicting() <em>Conflicting</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #isConflicting() + * @generated + * @ordered + */ + protected boolean conflicting = CONFLICTING_EDEFAULT; + + /** + * The default value of the '{@link #getKind() <em>Kind</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getKind() + * @generated + * @ordered + */ + protected static final DifferenceKind KIND_EDEFAULT = DifferenceKind.ADDITION; + + /** + * The cached value of the '{@link #getKind() <em>Kind</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getKind() + * @generated + * @ordered + */ + protected DifferenceKind kind = KIND_EDEFAULT; + + /** + * The default value of the '{@link #isRemote() <em>Remote</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #isRemote() + * @generated + * @ordered + */ + protected static final boolean REMOTE_EDEFAULT = false; + + /** + * The cached value of the '{@link #isRemote() <em>Remote</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #isRemote() + * @generated + * @ordered + */ + protected boolean remote = REMOTE_EDEFAULT; + + /** + * The cached value of the '{@link #getReference() <em>Reference</em>}' reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getReference() + * @generated + * @ordered + */ + protected EReference reference; + + /** + * The cached value of the '{@link #getRightElement() <em>Right Element</em>}' reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getRightElement() + * @generated + * @ordered + */ + protected EObject rightElement; + + /** + * The cached value of the '{@link #getLeftElement() <em>Left Element</em>}' reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getLeftElement() + * @generated + * @ordered + */ + protected EObject leftElement; + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected TaggedValueReferenceChangeImpl() { + super(); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + protected EClass eStaticClass() { + return UMLDiffPackage.Literals.TAGGED_VALUE_REFERENCE_CHANGE; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public EList<DiffElement> getSubDiffElements() { + if (subDiffElements == null) { + subDiffElements = new EObjectContainmentEList<DiffElement>(DiffElement.class, this, UMLDiffPackage.TAGGED_VALUE_REFERENCE_CHANGE__SUB_DIFF_ELEMENTS); + } + return subDiffElements; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public EList<AbstractDiffExtension> getIsHiddenBy() { + if (isHiddenBy == null) { + isHiddenBy = new EObjectWithInverseResolvingEList.ManyInverse<AbstractDiffExtension>(AbstractDiffExtension.class, this, UMLDiffPackage.TAGGED_VALUE_REFERENCE_CHANGE__IS_HIDDEN_BY, DiffPackage.ABSTRACT_DIFF_EXTENSION__HIDE_ELEMENTS); + } + return isHiddenBy; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public boolean isConflicting() { + return conflicting; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public DifferenceKind getKind() { + return kind; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public boolean isRemote() { + return remote; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public void setRemote(boolean newRemote) { + boolean oldRemote = remote; + remote = newRemote; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, UMLDiffPackage.TAGGED_VALUE_REFERENCE_CHANGE__REMOTE, oldRemote, remote)); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public EReference getReference() { + if (reference != null && reference.eIsProxy()) { + InternalEObject oldReference = (InternalEObject)reference; + reference = (EReference)eResolveProxy(oldReference); + if (reference != oldReference) { + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLDiffPackage.TAGGED_VALUE_REFERENCE_CHANGE__REFERENCE, oldReference, reference)); + } + } + return reference; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public EReference basicGetReference() { + return reference; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public void setReference(EReference newReference) { + EReference oldReference = reference; + reference = newReference; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, UMLDiffPackage.TAGGED_VALUE_REFERENCE_CHANGE__REFERENCE, oldReference, reference)); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public EObject getRightElement() { + if (rightElement != null && rightElement.eIsProxy()) { + InternalEObject oldRightElement = (InternalEObject)rightElement; + rightElement = eResolveProxy(oldRightElement); + if (rightElement != oldRightElement) { + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLDiffPackage.TAGGED_VALUE_REFERENCE_CHANGE__RIGHT_ELEMENT, oldRightElement, rightElement)); + } + } + return rightElement; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public EObject basicGetRightElement() { + return rightElement; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public void setRightElement(EObject newRightElement) { + EObject oldRightElement = rightElement; + rightElement = newRightElement; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, UMLDiffPackage.TAGGED_VALUE_REFERENCE_CHANGE__RIGHT_ELEMENT, oldRightElement, rightElement)); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public EObject getLeftElement() { + if (leftElement != null && leftElement.eIsProxy()) { + InternalEObject oldLeftElement = (InternalEObject)leftElement; + leftElement = eResolveProxy(oldLeftElement); + if (leftElement != oldLeftElement) { + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLDiffPackage.TAGGED_VALUE_REFERENCE_CHANGE__LEFT_ELEMENT, oldLeftElement, leftElement)); + } + } + return leftElement; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public EObject basicGetLeftElement() { + return leftElement; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public void setLeftElement(EObject newLeftElement) { + EObject oldLeftElement = leftElement; + leftElement = newLeftElement; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, UMLDiffPackage.TAGGED_VALUE_REFERENCE_CHANGE__LEFT_ELEMENT, oldLeftElement, leftElement)); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @SuppressWarnings("unchecked") + @Override + public NotificationChain eInverseAdd(InternalEObject otherEnd, int featureID, NotificationChain msgs) { + switch (featureID) { + case UMLDiffPackage.TAGGED_VALUE_REFERENCE_CHANGE__IS_HIDDEN_BY: + return ((InternalEList<InternalEObject>)(InternalEList<?>)getIsHiddenBy()).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 UMLDiffPackage.TAGGED_VALUE_REFERENCE_CHANGE__SUB_DIFF_ELEMENTS: + return ((InternalEList<?>)getSubDiffElements()).basicRemove(otherEnd, msgs); + case UMLDiffPackage.TAGGED_VALUE_REFERENCE_CHANGE__IS_HIDDEN_BY: + return ((InternalEList<?>)getIsHiddenBy()).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 UMLDiffPackage.TAGGED_VALUE_REFERENCE_CHANGE__SUB_DIFF_ELEMENTS: + return getSubDiffElements(); + case UMLDiffPackage.TAGGED_VALUE_REFERENCE_CHANGE__IS_HIDDEN_BY: + return getIsHiddenBy(); + case UMLDiffPackage.TAGGED_VALUE_REFERENCE_CHANGE__CONFLICTING: + return isConflicting(); + case UMLDiffPackage.TAGGED_VALUE_REFERENCE_CHANGE__KIND: + return getKind(); + case UMLDiffPackage.TAGGED_VALUE_REFERENCE_CHANGE__REMOTE: + return isRemote(); + case UMLDiffPackage.TAGGED_VALUE_REFERENCE_CHANGE__REFERENCE: + if (resolve) return getReference(); + return basicGetReference(); + case UMLDiffPackage.TAGGED_VALUE_REFERENCE_CHANGE__RIGHT_ELEMENT: + if (resolve) return getRightElement(); + return basicGetRightElement(); + case UMLDiffPackage.TAGGED_VALUE_REFERENCE_CHANGE__LEFT_ELEMENT: + if (resolve) return getLeftElement(); + return basicGetLeftElement(); + } + 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 UMLDiffPackage.TAGGED_VALUE_REFERENCE_CHANGE__SUB_DIFF_ELEMENTS: + getSubDiffElements().clear(); + getSubDiffElements().addAll((Collection<? extends DiffElement>)newValue); + return; + case UMLDiffPackage.TAGGED_VALUE_REFERENCE_CHANGE__IS_HIDDEN_BY: + getIsHiddenBy().clear(); + getIsHiddenBy().addAll((Collection<? extends AbstractDiffExtension>)newValue); + return; + case UMLDiffPackage.TAGGED_VALUE_REFERENCE_CHANGE__REMOTE: + setRemote((Boolean)newValue); + return; + case UMLDiffPackage.TAGGED_VALUE_REFERENCE_CHANGE__REFERENCE: + setReference((EReference)newValue); + return; + case UMLDiffPackage.TAGGED_VALUE_REFERENCE_CHANGE__RIGHT_ELEMENT: + setRightElement((EObject)newValue); + return; + case UMLDiffPackage.TAGGED_VALUE_REFERENCE_CHANGE__LEFT_ELEMENT: + setLeftElement((EObject)newValue); + return; + } + super.eSet(featureID, newValue); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void eUnset(int featureID) { + switch (featureID) { + case UMLDiffPackage.TAGGED_VALUE_REFERENCE_CHANGE__SUB_DIFF_ELEMENTS: + getSubDiffElements().clear(); + return; + case UMLDiffPackage.TAGGED_VALUE_REFERENCE_CHANGE__IS_HIDDEN_BY: + getIsHiddenBy().clear(); + return; + case UMLDiffPackage.TAGGED_VALUE_REFERENCE_CHANGE__REMOTE: + setRemote(REMOTE_EDEFAULT); + return; + case UMLDiffPackage.TAGGED_VALUE_REFERENCE_CHANGE__REFERENCE: + setReference((EReference)null); + return; + case UMLDiffPackage.TAGGED_VALUE_REFERENCE_CHANGE__RIGHT_ELEMENT: + setRightElement((EObject)null); + return; + case UMLDiffPackage.TAGGED_VALUE_REFERENCE_CHANGE__LEFT_ELEMENT: + setLeftElement((EObject)null); + return; + } + super.eUnset(featureID); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public boolean eIsSet(int featureID) { + switch (featureID) { + case UMLDiffPackage.TAGGED_VALUE_REFERENCE_CHANGE__SUB_DIFF_ELEMENTS: + return subDiffElements != null && !subDiffElements.isEmpty(); + case UMLDiffPackage.TAGGED_VALUE_REFERENCE_CHANGE__IS_HIDDEN_BY: + return isHiddenBy != null && !isHiddenBy.isEmpty(); + case UMLDiffPackage.TAGGED_VALUE_REFERENCE_CHANGE__CONFLICTING: + return conflicting != CONFLICTING_EDEFAULT; + case UMLDiffPackage.TAGGED_VALUE_REFERENCE_CHANGE__KIND: + return kind != KIND_EDEFAULT; + case UMLDiffPackage.TAGGED_VALUE_REFERENCE_CHANGE__REMOTE: + return remote != REMOTE_EDEFAULT; + case UMLDiffPackage.TAGGED_VALUE_REFERENCE_CHANGE__REFERENCE: + return reference != null; + case UMLDiffPackage.TAGGED_VALUE_REFERENCE_CHANGE__RIGHT_ELEMENT: + return rightElement != null; + case UMLDiffPackage.TAGGED_VALUE_REFERENCE_CHANGE__LEFT_ELEMENT: + return leftElement != null; + } + return super.eIsSet(featureID); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public int eBaseStructuralFeatureID(int derivedFeatureID, Class<?> baseClass) { + if (baseClass == DiffElement.class) { + switch (derivedFeatureID) { + case UMLDiffPackage.TAGGED_VALUE_REFERENCE_CHANGE__SUB_DIFF_ELEMENTS: return DiffPackage.DIFF_ELEMENT__SUB_DIFF_ELEMENTS; + case UMLDiffPackage.TAGGED_VALUE_REFERENCE_CHANGE__IS_HIDDEN_BY: return DiffPackage.DIFF_ELEMENT__IS_HIDDEN_BY; + case UMLDiffPackage.TAGGED_VALUE_REFERENCE_CHANGE__CONFLICTING: return DiffPackage.DIFF_ELEMENT__CONFLICTING; + case UMLDiffPackage.TAGGED_VALUE_REFERENCE_CHANGE__KIND: return DiffPackage.DIFF_ELEMENT__KIND; + case UMLDiffPackage.TAGGED_VALUE_REFERENCE_CHANGE__REMOTE: return DiffPackage.DIFF_ELEMENT__REMOTE; + default: return -1; + } + } + if (baseClass == ReferenceChange.class) { + switch (derivedFeatureID) { + case UMLDiffPackage.TAGGED_VALUE_REFERENCE_CHANGE__REFERENCE: return DiffPackage.REFERENCE_CHANGE__REFERENCE; + case UMLDiffPackage.TAGGED_VALUE_REFERENCE_CHANGE__RIGHT_ELEMENT: return DiffPackage.REFERENCE_CHANGE__RIGHT_ELEMENT; + case UMLDiffPackage.TAGGED_VALUE_REFERENCE_CHANGE__LEFT_ELEMENT: return DiffPackage.REFERENCE_CHANGE__LEFT_ELEMENT; + default: return -1; + } + } + return super.eBaseStructuralFeatureID(derivedFeatureID, baseClass); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public int eDerivedStructuralFeatureID(int baseFeatureID, Class<?> baseClass) { + if (baseClass == DiffElement.class) { + switch (baseFeatureID) { + case DiffPackage.DIFF_ELEMENT__SUB_DIFF_ELEMENTS: return UMLDiffPackage.TAGGED_VALUE_REFERENCE_CHANGE__SUB_DIFF_ELEMENTS; + case DiffPackage.DIFF_ELEMENT__IS_HIDDEN_BY: return UMLDiffPackage.TAGGED_VALUE_REFERENCE_CHANGE__IS_HIDDEN_BY; + case DiffPackage.DIFF_ELEMENT__CONFLICTING: return UMLDiffPackage.TAGGED_VALUE_REFERENCE_CHANGE__CONFLICTING; + case DiffPackage.DIFF_ELEMENT__KIND: return UMLDiffPackage.TAGGED_VALUE_REFERENCE_CHANGE__KIND; + case DiffPackage.DIFF_ELEMENT__REMOTE: return UMLDiffPackage.TAGGED_VALUE_REFERENCE_CHANGE__REMOTE; + default: return -1; + } + } + if (baseClass == ReferenceChange.class) { + switch (baseFeatureID) { + case DiffPackage.REFERENCE_CHANGE__REFERENCE: return UMLDiffPackage.TAGGED_VALUE_REFERENCE_CHANGE__REFERENCE; + case DiffPackage.REFERENCE_CHANGE__RIGHT_ELEMENT: return UMLDiffPackage.TAGGED_VALUE_REFERENCE_CHANGE__RIGHT_ELEMENT; + case DiffPackage.REFERENCE_CHANGE__LEFT_ELEMENT: return UMLDiffPackage.TAGGED_VALUE_REFERENCE_CHANGE__LEFT_ELEMENT; + default: return -1; + } + } + return super.eDerivedStructuralFeatureID(baseFeatureID, baseClass); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public String toString() { + if (eIsProxy()) return super.toString(); + + StringBuffer result = new StringBuffer(super.toString()); + result.append(" (conflicting: "); + result.append(conflicting); + result.append(", kind: "); + result.append(kind); + result.append(", remote: "); + result.append(remote); + result.append(')'); + return result.toString(); + } + + +} //TaggedValueReferenceChangeImpl diff --git a/deprecated/org.eclipse.papyrus.uml.compare/src-gen/org/eclipse/papyrus/uml/compare/diff/metamodel/uml_diff_extension/impl/UMLDiffExtensionImpl.java b/deprecated/org.eclipse.papyrus.uml.compare/src-gen/org/eclipse/papyrus/uml/compare/diff/metamodel/uml_diff_extension/impl/UMLDiffExtensionImpl.java new file mode 100644 index 00000000000..c881e3dcf52 --- /dev/null +++ b/deprecated/org.eclipse.papyrus.uml.compare/src-gen/org/eclipse/papyrus/uml/compare/diff/metamodel/uml_diff_extension/impl/UMLDiffExtensionImpl.java @@ -0,0 +1,93 @@ +/** + * + * Copyright (c) 2010 CEA LIST. + * 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: + * Tatiana Fesenko(CEA LIST) - initial API and implementation + */ +package org.eclipse.papyrus.uml.compare.diff.metamodel.uml_diff_extension.impl; + +import org.eclipse.emf.compare.diff.merge.IMerger; +import org.eclipse.emf.compare.diff.metamodel.impl.AbstractDiffExtensionImpl; +import org.eclipse.emf.ecore.EClass; +import org.eclipse.jface.viewers.ILabelProvider; +import org.eclipse.papyrus.uml.compare.diff.extension.UMLStyledStructureLabelProvider; +import org.eclipse.papyrus.uml.compare.diff.metamodel.uml_diff_extension.UMLDiffExtension; +import org.eclipse.papyrus.uml.compare.diff.metamodel.uml_diff_extension.UMLDiffPackage; +import org.eclipse.papyrus.uml.compare.ui.PapyrusLabelProvider; + +/** + * <!-- begin-user-doc --> + * An implementation of the model object '<em><b>Extension</b></em>'. + * <!-- end-user-doc --> + * <p> + * </p> + * + * @generated + */ +public abstract class UMLDiffExtensionImpl extends AbstractDiffExtensionImpl implements UMLDiffExtension { + + /** + * @NOT-generated + */ + private ILabelProvider labelProvider = new UMLStyledStructureLabelProvider(new PapyrusLabelProvider()) { + public String getText(Object element) { + String result = super.getText(element); + if (result == null) { + return "<LABEL NOT FOUND>"; + } + return result; + }; + }; + + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * + * @generated + */ + protected UMLDiffExtensionImpl() { + super(); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * + * @generated + */ + @Override + protected EClass eStaticClass() { + return UMLDiffPackage.Literals.UML_DIFF_EXTENSION; + } + + /** + * + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * + * @NOT-generated + */ + @Override + public String getText() { + return labelProvider.getText(this); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * + * @generated NOT + */ + public IMerger provideMerger() { + return null; + } + + + +} //UMLDiffExtensionImpl diff --git a/deprecated/org.eclipse.papyrus.uml.compare/src-gen/org/eclipse/papyrus/uml/compare/diff/metamodel/uml_diff_extension/impl/UMLDiffFactoryImpl.java b/deprecated/org.eclipse.papyrus.uml.compare/src-gen/org/eclipse/papyrus/uml/compare/diff/metamodel/uml_diff_extension/impl/UMLDiffFactoryImpl.java new file mode 100644 index 00000000000..b816bdea9da --- /dev/null +++ b/deprecated/org.eclipse.papyrus.uml.compare/src-gen/org/eclipse/papyrus/uml/compare/diff/metamodel/uml_diff_extension/impl/UMLDiffFactoryImpl.java @@ -0,0 +1,170 @@ +/** + * + * Copyright (c) 2010 CEA LIST. + * 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: + * Tatiana Fesenko(CEA LIST) - initial API and implementation + */ +package org.eclipse.papyrus.uml.compare.diff.metamodel.uml_diff_extension.impl; + +import org.eclipse.emf.ecore.EClass; +import org.eclipse.emf.ecore.EObject; +import org.eclipse.emf.ecore.EPackage; + +import org.eclipse.emf.ecore.impl.EFactoryImpl; + +import org.eclipse.emf.ecore.plugin.EcorePlugin; + +import org.eclipse.papyrus.uml.compare.diff.metamodel.uml_diff_extension.*; + +/** + * <!-- begin-user-doc --> + * An implementation of the model <b>Factory</b>. + * <!-- end-user-doc --> + * @generated + */ +public class UMLDiffFactoryImpl extends EFactoryImpl implements UMLDiffFactory { + /** + * Creates the default factory implementation. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public static UMLDiffFactory init() { + try { + UMLDiffFactory theUMLDiffFactory = (UMLDiffFactory)EPackage.Registry.INSTANCE.getEFactory("http://www.eclipse.org/uml/compare/diff_ext/1.0"); + if (theUMLDiffFactory != null) { + return theUMLDiffFactory; + } + } + catch (Exception exception) { + EcorePlugin.INSTANCE.log(exception); + } + return new UMLDiffFactoryImpl(); + } + + /** + * Creates an instance of the factory. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public UMLDiffFactoryImpl() { + super(); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public EObject create(EClass eClass) { + switch (eClass.getClassifierID()) { + case UMLDiffPackage.TAGGED_VALUE_CHANGE_LEFT_TARGET: return createTaggedValueChangeLeftTarget(); + case UMLDiffPackage.TAGGED_VALUE_CHANGE_RIGHT_TARGET: return createTaggedValueChangeRightTarget(); + case UMLDiffPackage.UPDATE_TAGGED_VALUE: return createUpdateTaggedValue(); + case UMLDiffPackage.ADD_STEREOTYPE_APPLICATION: return createAddStereotypeApplication(); + case UMLDiffPackage.REMOVE_STEREOTYPE_APPLICATION: return createRemoveStereotypeApplication(); + case UMLDiffPackage.TAGGED_VALUE_REFERENCE_CHANGE: return createTaggedValueReferenceChange(); + case UMLDiffPackage.COMPARE_TWO_ELEMENTS_DIFF_MODEL: return createCompareTwoElementsDiffModel(); + default: + throw new IllegalArgumentException("The class '" + eClass.getName() + "' is not a valid classifier"); + } + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public TaggedValueChangeLeftTarget createTaggedValueChangeLeftTarget() { + TaggedValueChangeLeftTargetImpl taggedValueChangeLeftTarget = new TaggedValueChangeLeftTargetImpl(); + return taggedValueChangeLeftTarget; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public TaggedValueChangeRightTarget createTaggedValueChangeRightTarget() { + TaggedValueChangeRightTargetImpl taggedValueChangeRightTarget = new TaggedValueChangeRightTargetImpl(); + return taggedValueChangeRightTarget; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public UpdateTaggedValue createUpdateTaggedValue() { + UpdateTaggedValueImpl updateTaggedValue = new UpdateTaggedValueImpl(); + return updateTaggedValue; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public AddStereotypeApplication createAddStereotypeApplication() { + AddStereotypeApplicationImpl addStereotypeApplication = new AddStereotypeApplicationImpl(); + return addStereotypeApplication; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public RemoveStereotypeApplication createRemoveStereotypeApplication() { + RemoveStereotypeApplicationImpl removeStereotypeApplication = new RemoveStereotypeApplicationImpl(); + return removeStereotypeApplication; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public TaggedValueReferenceChange createTaggedValueReferenceChange() { + TaggedValueReferenceChangeImpl taggedValueReferenceChange = new TaggedValueReferenceChangeImpl(); + return taggedValueReferenceChange; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public CompareTwoElementsDiffModel createCompareTwoElementsDiffModel() { + CompareTwoElementsDiffModelImpl compareTwoElementsDiffModel = new CompareTwoElementsDiffModelImpl(); + return compareTwoElementsDiffModel; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public UMLDiffPackage getUMLDiffPackage() { + return (UMLDiffPackage)getEPackage(); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @deprecated + * @generated + */ + @Deprecated + public static UMLDiffPackage getPackage() { + return UMLDiffPackage.eINSTANCE; + } + +} //UMLDiffFactoryImpl diff --git a/deprecated/org.eclipse.papyrus.uml.compare/src-gen/org/eclipse/papyrus/uml/compare/diff/metamodel/uml_diff_extension/impl/UMLDiffPackageImpl.java b/deprecated/org.eclipse.papyrus.uml.compare/src-gen/org/eclipse/papyrus/uml/compare/diff/metamodel/uml_diff_extension/impl/UMLDiffPackageImpl.java new file mode 100644 index 00000000000..386cf0d6b97 --- /dev/null +++ b/deprecated/org.eclipse.papyrus.uml.compare/src-gen/org/eclipse/papyrus/uml/compare/diff/metamodel/uml_diff_extension/impl/UMLDiffPackageImpl.java @@ -0,0 +1,389 @@ +/** + * + * Copyright (c) 2010 CEA LIST. + * 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: + * Tatiana Fesenko(CEA LIST) - initial API and implementation + */ +package org.eclipse.papyrus.uml.compare.diff.metamodel.uml_diff_extension.impl; + +import org.eclipse.emf.compare.diff.metamodel.DiffPackage; + +import org.eclipse.emf.ecore.EClass; +import org.eclipse.emf.ecore.EPackage; + +import org.eclipse.emf.ecore.impl.EPackageImpl; + +import org.eclipse.papyrus.uml.compare.diff.metamodel.uml_diff_extension.AddStereotypeApplication; +import org.eclipse.papyrus.uml.compare.diff.metamodel.uml_diff_extension.CompareTwoElementsDiffModel; +import org.eclipse.papyrus.uml.compare.diff.metamodel.uml_diff_extension.RemoveStereotypeApplication; +import org.eclipse.papyrus.uml.compare.diff.metamodel.uml_diff_extension.StereotypeChange; +import org.eclipse.papyrus.uml.compare.diff.metamodel.uml_diff_extension.TaggedValueChange; +import org.eclipse.papyrus.uml.compare.diff.metamodel.uml_diff_extension.TaggedValueChangeLeftTarget; +import org.eclipse.papyrus.uml.compare.diff.metamodel.uml_diff_extension.TaggedValueChangeRightTarget; +import org.eclipse.papyrus.uml.compare.diff.metamodel.uml_diff_extension.TaggedValueReferenceChange; +import org.eclipse.papyrus.uml.compare.diff.metamodel.uml_diff_extension.UMLDiffExtension; +import org.eclipse.papyrus.uml.compare.diff.metamodel.uml_diff_extension.UMLDiffFactory; +import org.eclipse.papyrus.uml.compare.diff.metamodel.uml_diff_extension.UMLDiffPackage; +import org.eclipse.papyrus.uml.compare.diff.metamodel.uml_diff_extension.UpdateTaggedValue; + +/** + * <!-- begin-user-doc --> + * An implementation of the model <b>Package</b>. + * <!-- end-user-doc --> + * @generated + */ +public class UMLDiffPackageImpl extends EPackageImpl implements UMLDiffPackage { + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + private EClass umlDiffExtensionEClass = null; + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + private EClass stereotypeChangeEClass = null; + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + private EClass taggedValueChangeEClass = null; + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + private EClass taggedValueChangeLeftTargetEClass = null; + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + private EClass taggedValueChangeRightTargetEClass = null; + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + private EClass updateTaggedValueEClass = null; + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + private EClass addStereotypeApplicationEClass = null; + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + private EClass removeStereotypeApplicationEClass = null; + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + private EClass taggedValueReferenceChangeEClass = null; + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + private EClass compareTwoElementsDiffModelEClass = null; + + /** + * Creates an instance of the model <b>Package</b>, registered with + * {@link org.eclipse.emf.ecore.EPackage.Registry EPackage.Registry} by the package + * package URI value. + * <p>Note: the correct way to create the package is via the static + * factory method {@link #init init()}, which also performs + * initialization of the package, or returns the registered package, + * if one already exists. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see org.eclipse.emf.ecore.EPackage.Registry + * @see org.eclipse.papyrus.uml.compare.diff.metamodel.uml_diff_extension.UMLDiffPackage#eNS_URI + * @see #init() + * @generated + */ + private UMLDiffPackageImpl() { + super(eNS_URI, UMLDiffFactory.eINSTANCE); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + private static boolean isInited = false; + + /** + * Creates, registers, and initializes the <b>Package</b> for this model, and for any others upon which it depends. + * + * <p>This method is used to initialize {@link UMLDiffPackage#eINSTANCE} when that field is accessed. + * Clients should not invoke it directly. Instead, they should simply access that field to obtain the package. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #eNS_URI + * @see #createPackageContents() + * @see #initializePackageContents() + * @generated + */ + public static UMLDiffPackage init() { + if (isInited) return (UMLDiffPackage)EPackage.Registry.INSTANCE.getEPackage(UMLDiffPackage.eNS_URI); + + // Obtain or create and register package + UMLDiffPackageImpl theUMLDiffPackage = (UMLDiffPackageImpl)(EPackage.Registry.INSTANCE.get(eNS_URI) instanceof UMLDiffPackageImpl ? EPackage.Registry.INSTANCE.get(eNS_URI) : new UMLDiffPackageImpl()); + + isInited = true; + + // Initialize simple dependencies + DiffPackage.eINSTANCE.eClass(); + + // Create package meta-data objects + theUMLDiffPackage.createPackageContents(); + + // Initialize created meta-data + theUMLDiffPackage.initializePackageContents(); + + // Mark meta-data to indicate it can't be changed + theUMLDiffPackage.freeze(); + + + // Update the registry and return the package + EPackage.Registry.INSTANCE.put(UMLDiffPackage.eNS_URI, theUMLDiffPackage); + return theUMLDiffPackage; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public EClass getUMLDiffExtension() { + return umlDiffExtensionEClass; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public EClass getStereotypeChange() { + return stereotypeChangeEClass; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public EClass getTaggedValueChange() { + return taggedValueChangeEClass; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public EClass getTaggedValueChangeLeftTarget() { + return taggedValueChangeLeftTargetEClass; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public EClass getTaggedValueChangeRightTarget() { + return taggedValueChangeRightTargetEClass; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public EClass getUpdateTaggedValue() { + return updateTaggedValueEClass; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public EClass getAddStereotypeApplication() { + return addStereotypeApplicationEClass; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public EClass getRemoveStereotypeApplication() { + return removeStereotypeApplicationEClass; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public EClass getTaggedValueReferenceChange() { + return taggedValueReferenceChangeEClass; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public EClass getCompareTwoElementsDiffModel() { + return compareTwoElementsDiffModelEClass; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public UMLDiffFactory getUMLDiffFactory() { + return (UMLDiffFactory)getEFactoryInstance(); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + private boolean isCreated = false; + + /** + * Creates the meta-model objects for the package. This method is + * guarded to have no affect on any invocation but its first. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public void createPackageContents() { + if (isCreated) return; + isCreated = true; + + // Create classes and their features + umlDiffExtensionEClass = createEClass(UML_DIFF_EXTENSION); + + stereotypeChangeEClass = createEClass(STEREOTYPE_CHANGE); + + taggedValueChangeEClass = createEClass(TAGGED_VALUE_CHANGE); + + taggedValueChangeLeftTargetEClass = createEClass(TAGGED_VALUE_CHANGE_LEFT_TARGET); + + taggedValueChangeRightTargetEClass = createEClass(TAGGED_VALUE_CHANGE_RIGHT_TARGET); + + updateTaggedValueEClass = createEClass(UPDATE_TAGGED_VALUE); + + addStereotypeApplicationEClass = createEClass(ADD_STEREOTYPE_APPLICATION); + + removeStereotypeApplicationEClass = createEClass(REMOVE_STEREOTYPE_APPLICATION); + + taggedValueReferenceChangeEClass = createEClass(TAGGED_VALUE_REFERENCE_CHANGE); + + compareTwoElementsDiffModelEClass = createEClass(COMPARE_TWO_ELEMENTS_DIFF_MODEL); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + private boolean isInitialized = false; + + /** + * Complete the initialization of the package and its meta-model. This + * method is guarded to have no affect on any invocation but its first. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public void initializePackageContents() { + if (isInitialized) return; + isInitialized = true; + + // Initialize package + setName(eNAME); + setNsPrefix(eNS_PREFIX); + setNsURI(eNS_URI); + + // Obtain other dependent packages + DiffPackage theDiffPackage = (DiffPackage)EPackage.Registry.INSTANCE.getEPackage(DiffPackage.eNS_URI); + + // Create type parameters + + // Set bounds for type parameters + + // Add supertypes to classes + umlDiffExtensionEClass.getESuperTypes().add(theDiffPackage.getAbstractDiffExtension()); + stereotypeChangeEClass.getESuperTypes().add(this.getUMLDiffExtension()); + taggedValueChangeEClass.getESuperTypes().add(this.getUMLDiffExtension()); + taggedValueChangeEClass.getESuperTypes().add(theDiffPackage.getAttributeChange()); + taggedValueChangeLeftTargetEClass.getESuperTypes().add(this.getTaggedValueChange()); + taggedValueChangeLeftTargetEClass.getESuperTypes().add(theDiffPackage.getAttributeChangeLeftTarget()); + taggedValueChangeRightTargetEClass.getESuperTypes().add(this.getTaggedValueChange()); + taggedValueChangeRightTargetEClass.getESuperTypes().add(theDiffPackage.getAttributeChangeRightTarget()); + updateTaggedValueEClass.getESuperTypes().add(this.getTaggedValueChange()); + updateTaggedValueEClass.getESuperTypes().add(theDiffPackage.getUpdateAttribute()); + addStereotypeApplicationEClass.getESuperTypes().add(this.getStereotypeChange()); + addStereotypeApplicationEClass.getESuperTypes().add(theDiffPackage.getModelElementChangeRightTarget()); + removeStereotypeApplicationEClass.getESuperTypes().add(this.getStereotypeChange()); + removeStereotypeApplicationEClass.getESuperTypes().add(theDiffPackage.getModelElementChangeLeftTarget()); + taggedValueReferenceChangeEClass.getESuperTypes().add(this.getUMLDiffExtension()); + taggedValueReferenceChangeEClass.getESuperTypes().add(theDiffPackage.getReferenceChange()); + compareTwoElementsDiffModelEClass.getESuperTypes().add(this.getUMLDiffExtension()); + compareTwoElementsDiffModelEClass.getESuperTypes().add(theDiffPackage.getDiffModel()); + + // Initialize classes and features; add operations and parameters + initEClass(umlDiffExtensionEClass, UMLDiffExtension.class, "UMLDiffExtension", IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); + + initEClass(stereotypeChangeEClass, StereotypeChange.class, "StereotypeChange", IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); + + initEClass(taggedValueChangeEClass, TaggedValueChange.class, "TaggedValueChange", IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); + + initEClass(taggedValueChangeLeftTargetEClass, TaggedValueChangeLeftTarget.class, "TaggedValueChangeLeftTarget", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); + + initEClass(taggedValueChangeRightTargetEClass, TaggedValueChangeRightTarget.class, "TaggedValueChangeRightTarget", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); + + initEClass(updateTaggedValueEClass, UpdateTaggedValue.class, "UpdateTaggedValue", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); + + initEClass(addStereotypeApplicationEClass, AddStereotypeApplication.class, "AddStereotypeApplication", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); + + initEClass(removeStereotypeApplicationEClass, RemoveStereotypeApplication.class, "RemoveStereotypeApplication", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); + + initEClass(taggedValueReferenceChangeEClass, TaggedValueReferenceChange.class, "TaggedValueReferenceChange", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); + + initEClass(compareTwoElementsDiffModelEClass, CompareTwoElementsDiffModel.class, "CompareTwoElementsDiffModel", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); + + // Create resource + createResource(eNS_URI); + } + +} //UMLDiffPackageImpl diff --git a/deprecated/org.eclipse.papyrus.uml.compare/src-gen/org/eclipse/papyrus/uml/compare/diff/metamodel/uml_diff_extension/impl/UpdateTaggedValueImpl.java b/deprecated/org.eclipse.papyrus.uml.compare/src-gen/org/eclipse/papyrus/uml/compare/diff/metamodel/uml_diff_extension/impl/UpdateTaggedValueImpl.java new file mode 100644 index 00000000000..063a1725775 --- /dev/null +++ b/deprecated/org.eclipse.papyrus.uml.compare/src-gen/org/eclipse/papyrus/uml/compare/diff/metamodel/uml_diff_extension/impl/UpdateTaggedValueImpl.java @@ -0,0 +1,83 @@ +/** + * + * Copyright (c) 2010 CEA LIST. + * 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: + * Tatiana Fesenko(CEA LIST) - initial API and implementation + */ +package org.eclipse.papyrus.uml.compare.diff.metamodel.uml_diff_extension.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.compare.diff.merge.IMerger; +import org.eclipse.emf.compare.diff.metamodel.AbstractDiffExtension; +import org.eclipse.emf.compare.diff.metamodel.DiffElement; +import org.eclipse.emf.compare.diff.metamodel.DiffModel; +import org.eclipse.emf.compare.diff.metamodel.DiffPackage; +import org.eclipse.emf.compare.diff.metamodel.impl.UpdateAttributeImpl; +import org.eclipse.emf.compare.util.AdapterUtils; + +import org.eclipse.emf.ecore.EClass; +import org.eclipse.emf.ecore.EObject; + +import org.eclipse.emf.ecore.InternalEObject; +import org.eclipse.emf.ecore.impl.ENotificationImpl; +import org.eclipse.emf.ecore.util.EObjectWithInverseResolvingEList; +import org.eclipse.emf.ecore.util.InternalEList; +import org.eclipse.emf.edit.ui.provider.AdapterFactoryLabelProvider; +import org.eclipse.papyrus.uml.compare.diff.metamodel.uml_diff_extension.TaggedValueChange; +import org.eclipse.papyrus.uml.compare.diff.metamodel.uml_diff_extension.UMLDiffExtension; +import org.eclipse.papyrus.uml.compare.diff.metamodel.uml_diff_extension.UMLDiffPackage; +import org.eclipse.papyrus.uml.compare.diff.metamodel.uml_diff_extension.UpdateTaggedValue; +import org.eclipse.swt.graphics.Image; +import org.eclipse.uml2.uml.util.UMLUtil; + +/** + * <!-- begin-user-doc --> + * An implementation of the model object '<em><b>Update Tagged Value</b></em>'. + * <!-- end-user-doc --> + * <p> + * </p> + * + * @generated + */ +public class UpdateTaggedValueImpl extends TaggedValueChangeImpl implements UpdateTaggedValue { + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected UpdateTaggedValueImpl() { + super(); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + protected EClass eStaticClass() { + return UMLDiffPackage.Literals.UPDATE_TAGGED_VALUE; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * + * @generated NOT + */ + public Object getImage() { + AdapterFactoryLabelProvider adapterProvider = new AdapterFactoryLabelProvider(AdapterUtils.getAdapterFactory()); + Image labelImage = adapterProvider.getImage(getAttribute()); + return labelImage; + } + +} //UpdateTaggedValueImpl diff --git a/deprecated/org.eclipse.papyrus.uml.compare/src-gen/org/eclipse/papyrus/uml/compare/diff/metamodel/uml_diff_extension/util/UMLDiffAdapterFactory.java b/deprecated/org.eclipse.papyrus.uml.compare/src-gen/org/eclipse/papyrus/uml/compare/diff/metamodel/uml_diff_extension/util/UMLDiffAdapterFactory.java new file mode 100644 index 00000000000..be671c1047e --- /dev/null +++ b/deprecated/org.eclipse.papyrus.uml.compare/src-gen/org/eclipse/papyrus/uml/compare/diff/metamodel/uml_diff_extension/util/UMLDiffAdapterFactory.java @@ -0,0 +1,501 @@ +/** + * + * Copyright (c) 2010 CEA LIST. + * 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: + * Tatiana Fesenko(CEA LIST) - initial API and implementation + */ +package org.eclipse.papyrus.uml.compare.diff.metamodel.uml_diff_extension.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.compare.diff.metamodel.AbstractDiffExtension; +import org.eclipse.emf.compare.diff.metamodel.AttributeChange; +import org.eclipse.emf.compare.diff.metamodel.AttributeChangeLeftTarget; +import org.eclipse.emf.compare.diff.metamodel.AttributeChangeRightTarget; +import org.eclipse.emf.compare.diff.metamodel.DiffElement; +import org.eclipse.emf.compare.diff.metamodel.DiffModel; +import org.eclipse.emf.compare.diff.metamodel.ModelElementChange; +import org.eclipse.emf.compare.diff.metamodel.ModelElementChangeLeftTarget; +import org.eclipse.emf.compare.diff.metamodel.ModelElementChangeRightTarget; +import org.eclipse.emf.compare.diff.metamodel.ReferenceChange; +import org.eclipse.emf.compare.diff.metamodel.UpdateAttribute; + +import org.eclipse.emf.ecore.EObject; + +import org.eclipse.papyrus.uml.compare.diff.metamodel.uml_diff_extension.*; + +/** + * <!-- 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.papyrus.uml.compare.diff.metamodel.uml_diff_extension.UMLDiffPackage + * @generated + */ +public class UMLDiffAdapterFactory extends AdapterFactoryImpl { + /** + * The cached model package. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected static UMLDiffPackage modelPackage; + + /** + * Creates an instance of the adapter factory. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public UMLDiffAdapterFactory() { + if (modelPackage == null) { + modelPackage = UMLDiffPackage.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 UMLDiffSwitch<Adapter> modelSwitch = + new UMLDiffSwitch<Adapter>() { + @Override + public Adapter caseUMLDiffExtension(UMLDiffExtension object) { + return createUMLDiffExtensionAdapter(); + } + @Override + public Adapter caseStereotypeChange(StereotypeChange object) { + return createStereotypeChangeAdapter(); + } + @Override + public Adapter caseTaggedValueChange(TaggedValueChange object) { + return createTaggedValueChangeAdapter(); + } + @Override + public Adapter caseTaggedValueChangeLeftTarget(TaggedValueChangeLeftTarget object) { + return createTaggedValueChangeLeftTargetAdapter(); + } + @Override + public Adapter caseTaggedValueChangeRightTarget(TaggedValueChangeRightTarget object) { + return createTaggedValueChangeRightTargetAdapter(); + } + @Override + public Adapter caseUpdateTaggedValue(UpdateTaggedValue object) { + return createUpdateTaggedValueAdapter(); + } + @Override + public Adapter caseAddStereotypeApplication(AddStereotypeApplication object) { + return createAddStereotypeApplicationAdapter(); + } + @Override + public Adapter caseRemoveStereotypeApplication(RemoveStereotypeApplication object) { + return createRemoveStereotypeApplicationAdapter(); + } + @Override + public Adapter caseTaggedValueReferenceChange(TaggedValueReferenceChange object) { + return createTaggedValueReferenceChangeAdapter(); + } + @Override + public Adapter caseCompareTwoElementsDiffModel(CompareTwoElementsDiffModel object) { + return createCompareTwoElementsDiffModelAdapter(); + } + @Override + public Adapter caseAbstractDiffExtension(AbstractDiffExtension object) { + return createAbstractDiffExtensionAdapter(); + } + @Override + public Adapter caseDiffElement(DiffElement object) { + return createDiffElementAdapter(); + } + @Override + public Adapter caseAttributeChange(AttributeChange object) { + return createAttributeChangeAdapter(); + } + @Override + public Adapter caseAttributeChangeLeftTarget(AttributeChangeLeftTarget object) { + return createAttributeChangeLeftTargetAdapter(); + } + @Override + public Adapter caseAttributeChangeRightTarget(AttributeChangeRightTarget object) { + return createAttributeChangeRightTargetAdapter(); + } + @Override + public Adapter caseUpdateAttribute(UpdateAttribute object) { + return createUpdateAttributeAdapter(); + } + @Override + public Adapter caseModelElementChange(ModelElementChange object) { + return createModelElementChangeAdapter(); + } + @Override + public Adapter caseModelElementChangeRightTarget(ModelElementChangeRightTarget object) { + return createModelElementChangeRightTargetAdapter(); + } + @Override + public Adapter caseModelElementChangeLeftTarget(ModelElementChangeLeftTarget object) { + return createModelElementChangeLeftTargetAdapter(); + } + @Override + public Adapter caseReferenceChange(ReferenceChange object) { + return createReferenceChangeAdapter(); + } + @Override + public Adapter caseDiffModel(DiffModel object) { + return createDiffModelAdapter(); + } + @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.papyrus.uml.compare.diff.metamodel.uml_diff_extension.UMLDiffExtension <em>Extension</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.papyrus.uml.compare.diff.metamodel.uml_diff_extension.UMLDiffExtension + * @generated + */ + public Adapter createUMLDiffExtensionAdapter() { + return null; + } + + /** + * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.uml.compare.diff.metamodel.uml_diff_extension.StereotypeChange <em>Stereotype Change</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.papyrus.uml.compare.diff.metamodel.uml_diff_extension.StereotypeChange + * @generated + */ + public Adapter createStereotypeChangeAdapter() { + return null; + } + + /** + * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.uml.compare.diff.metamodel.uml_diff_extension.TaggedValueChange <em>Tagged Value Change</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.papyrus.uml.compare.diff.metamodel.uml_diff_extension.TaggedValueChange + * @generated + */ + public Adapter createTaggedValueChangeAdapter() { + return null; + } + + /** + * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.uml.compare.diff.metamodel.uml_diff_extension.TaggedValueChangeLeftTarget <em>Tagged Value Change Left Target</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.papyrus.uml.compare.diff.metamodel.uml_diff_extension.TaggedValueChangeLeftTarget + * @generated + */ + public Adapter createTaggedValueChangeLeftTargetAdapter() { + return null; + } + + /** + * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.uml.compare.diff.metamodel.uml_diff_extension.TaggedValueChangeRightTarget <em>Tagged Value Change Right Target</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.papyrus.uml.compare.diff.metamodel.uml_diff_extension.TaggedValueChangeRightTarget + * @generated + */ + public Adapter createTaggedValueChangeRightTargetAdapter() { + return null; + } + + /** + * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.uml.compare.diff.metamodel.uml_diff_extension.UpdateTaggedValue <em>Update Tagged Value</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.papyrus.uml.compare.diff.metamodel.uml_diff_extension.UpdateTaggedValue + * @generated + */ + public Adapter createUpdateTaggedValueAdapter() { + return null; + } + + /** + * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.uml.compare.diff.metamodel.uml_diff_extension.AddStereotypeApplication <em>Add Stereotype Application</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.papyrus.uml.compare.diff.metamodel.uml_diff_extension.AddStereotypeApplication + * @generated + */ + public Adapter createAddStereotypeApplicationAdapter() { + return null; + } + + /** + * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.uml.compare.diff.metamodel.uml_diff_extension.RemoveStereotypeApplication <em>Remove Stereotype Application</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.papyrus.uml.compare.diff.metamodel.uml_diff_extension.RemoveStereotypeApplication + * @generated + */ + public Adapter createRemoveStereotypeApplicationAdapter() { + return null; + } + + /** + * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.uml.compare.diff.metamodel.uml_diff_extension.TaggedValueReferenceChange <em>Tagged Value Reference Change</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.papyrus.uml.compare.diff.metamodel.uml_diff_extension.TaggedValueReferenceChange + * @generated + */ + public Adapter createTaggedValueReferenceChangeAdapter() { + return null; + } + + /** + * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.uml.compare.diff.metamodel.uml_diff_extension.CompareTwoElementsDiffModel <em>Compare Two Elements Diff Model</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.papyrus.uml.compare.diff.metamodel.uml_diff_extension.CompareTwoElementsDiffModel + * @generated + */ + public Adapter createCompareTwoElementsDiffModelAdapter() { + return null; + } + + /** + * Creates a new adapter for an object of class '{@link org.eclipse.emf.compare.diff.metamodel.AbstractDiffExtension <em>Abstract Diff Extension</em>}'. + * <!-- begin-user-doc --> + * This default implementation returns null so that we can easily ignore cases; + * it's useful to ignore a case when inheritance will catch all the cases anyway. + * <!-- end-user-doc --> + * @return the new adapter. + * @see org.eclipse.emf.compare.diff.metamodel.AbstractDiffExtension + * @generated + */ + public Adapter createAbstractDiffExtensionAdapter() { + return null; + } + + /** + * Creates a new adapter for an object of class '{@link org.eclipse.emf.compare.diff.metamodel.DiffElement <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.compare.diff.metamodel.DiffElement + * @generated + */ + public Adapter createDiffElementAdapter() { + return null; + } + + /** + * Creates a new adapter for an object of class '{@link org.eclipse.emf.compare.diff.metamodel.AttributeChange <em>Attribute Change</em>}'. + * <!-- begin-user-doc --> + * This default implementation returns null so that we can easily ignore cases; + * it's useful to ignore a case when inheritance will catch all the cases anyway. + * <!-- end-user-doc --> + * @return the new adapter. + * @see org.eclipse.emf.compare.diff.metamodel.AttributeChange + * @generated + */ + public Adapter createAttributeChangeAdapter() { + return null; + } + + /** + * Creates a new adapter for an object of class '{@link org.eclipse.emf.compare.diff.metamodel.AttributeChangeLeftTarget <em>Attribute Change Left Target</em>}'. + * <!-- begin-user-doc --> + * This default implementation returns null so that we can easily ignore cases; + * it's useful to ignore a case when inheritance will catch all the cases anyway. + * <!-- end-user-doc --> + * @return the new adapter. + * @see org.eclipse.emf.compare.diff.metamodel.AttributeChangeLeftTarget + * @generated + */ + public Adapter createAttributeChangeLeftTargetAdapter() { + return null; + } + + /** + * Creates a new adapter for an object of class '{@link org.eclipse.emf.compare.diff.metamodel.AttributeChangeRightTarget <em>Attribute Change Right Target</em>}'. + * <!-- begin-user-doc --> + * This default implementation returns null so that we can easily ignore cases; + * it's useful to ignore a case when inheritance will catch all the cases anyway. + * <!-- end-user-doc --> + * @return the new adapter. + * @see org.eclipse.emf.compare.diff.metamodel.AttributeChangeRightTarget + * @generated + */ + public Adapter createAttributeChangeRightTargetAdapter() { + return null; + } + + /** + * Creates a new adapter for an object of class '{@link org.eclipse.emf.compare.diff.metamodel.UpdateAttribute <em>Update Attribute</em>}'. + * <!-- begin-user-doc --> + * This default implementation returns null so that we can easily ignore cases; + * it's useful to ignore a case when inheritance will catch all the cases anyway. + * <!-- end-user-doc --> + * @return the new adapter. + * @see org.eclipse.emf.compare.diff.metamodel.UpdateAttribute + * @generated + */ + public Adapter createUpdateAttributeAdapter() { + return null; + } + + /** + * Creates a new adapter for an object of class '{@link org.eclipse.emf.compare.diff.metamodel.ModelElementChange <em>Model Element Change</em>}'. + * <!-- begin-user-doc --> + * This default implementation returns null so that we can easily ignore cases; + * it's useful to ignore a case when inheritance will catch all the cases anyway. + * <!-- end-user-doc --> + * @return the new adapter. + * @see org.eclipse.emf.compare.diff.metamodel.ModelElementChange + * @generated + */ + public Adapter createModelElementChangeAdapter() { + return null; + } + + /** + * Creates a new adapter for an object of class '{@link org.eclipse.emf.compare.diff.metamodel.ModelElementChangeRightTarget <em>Model Element Change Right Target</em>}'. + * <!-- begin-user-doc --> + * This default implementation returns null so that we can easily ignore cases; + * it's useful to ignore a case when inheritance will catch all the cases anyway. + * <!-- end-user-doc --> + * @return the new adapter. + * @see org.eclipse.emf.compare.diff.metamodel.ModelElementChangeRightTarget + * @generated + */ + public Adapter createModelElementChangeRightTargetAdapter() { + return null; + } + + /** + * Creates a new adapter for an object of class '{@link org.eclipse.emf.compare.diff.metamodel.ModelElementChangeLeftTarget <em>Model Element Change Left Target</em>}'. + * <!-- begin-user-doc --> + * This default implementation returns null so that we can easily ignore cases; + * it's useful to ignore a case when inheritance will catch all the cases anyway. + * <!-- end-user-doc --> + * @return the new adapter. + * @see org.eclipse.emf.compare.diff.metamodel.ModelElementChangeLeftTarget + * @generated + */ + public Adapter createModelElementChangeLeftTargetAdapter() { + return null; + } + + /** + * Creates a new adapter for an object of class '{@link org.eclipse.emf.compare.diff.metamodel.ReferenceChange <em>Reference Change</em>}'. + * <!-- begin-user-doc --> + * This default implementation returns null so that we can easily ignore cases; + * it's useful to ignore a case when inheritance will catch all the cases anyway. + * <!-- end-user-doc --> + * @return the new adapter. + * @see org.eclipse.emf.compare.diff.metamodel.ReferenceChange + * @generated + */ + public Adapter createReferenceChangeAdapter() { + return null; + } + + /** + * Creates a new adapter for an object of class '{@link org.eclipse.emf.compare.diff.metamodel.DiffModel <em>Model</em>}'. + * <!-- begin-user-doc --> + * This default implementation returns null so that we can easily ignore cases; + * it's useful to ignore a case when inheritance will catch all the cases anyway. + * <!-- end-user-doc --> + * @return the new adapter. + * @see org.eclipse.emf.compare.diff.metamodel.DiffModel + * @generated + */ + public Adapter createDiffModelAdapter() { + 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; + } + +} //UMLDiffAdapterFactory diff --git a/deprecated/org.eclipse.papyrus.uml.compare/src-gen/org/eclipse/papyrus/uml/compare/diff/metamodel/uml_diff_extension/util/UMLDiffSwitch.java b/deprecated/org.eclipse.papyrus.uml.compare/src-gen/org/eclipse/papyrus/uml/compare/diff/metamodel/uml_diff_extension/util/UMLDiffSwitch.java new file mode 100644 index 00000000000..94ed36a88db --- /dev/null +++ b/deprecated/org.eclipse.papyrus.uml.compare/src-gen/org/eclipse/papyrus/uml/compare/diff/metamodel/uml_diff_extension/util/UMLDiffSwitch.java @@ -0,0 +1,545 @@ +/** + * + * Copyright (c) 2010 CEA LIST. + * 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: + * Tatiana Fesenko(CEA LIST) - initial API and implementation + */ +package org.eclipse.papyrus.uml.compare.diff.metamodel.uml_diff_extension.util; + +import java.util.List; + +import org.eclipse.emf.compare.diff.metamodel.AbstractDiffExtension; +import org.eclipse.emf.compare.diff.metamodel.AttributeChange; +import org.eclipse.emf.compare.diff.metamodel.AttributeChangeLeftTarget; +import org.eclipse.emf.compare.diff.metamodel.AttributeChangeRightTarget; +import org.eclipse.emf.compare.diff.metamodel.DiffElement; +import org.eclipse.emf.compare.diff.metamodel.DiffModel; +import org.eclipse.emf.compare.diff.metamodel.ModelElementChange; +import org.eclipse.emf.compare.diff.metamodel.ModelElementChangeLeftTarget; +import org.eclipse.emf.compare.diff.metamodel.ModelElementChangeRightTarget; +import org.eclipse.emf.compare.diff.metamodel.ReferenceChange; +import org.eclipse.emf.compare.diff.metamodel.UpdateAttribute; + +import org.eclipse.emf.ecore.EClass; +import org.eclipse.emf.ecore.EObject; + +import org.eclipse.papyrus.uml.compare.diff.metamodel.uml_diff_extension.*; + +/** + * <!-- 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.papyrus.uml.compare.diff.metamodel.uml_diff_extension.UMLDiffPackage + * @generated + */ +public class UMLDiffSwitch<T> { + /** + * The cached model package + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected static UMLDiffPackage modelPackage; + + /** + * Creates an instance of the switch. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public UMLDiffSwitch() { + if (modelPackage == null) { + modelPackage = UMLDiffPackage.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 UMLDiffPackage.UML_DIFF_EXTENSION: { + UMLDiffExtension umlDiffExtension = (UMLDiffExtension)theEObject; + T result = caseUMLDiffExtension(umlDiffExtension); + if (result == null) result = caseAbstractDiffExtension(umlDiffExtension); + if (result == null) result = defaultCase(theEObject); + return result; + } + case UMLDiffPackage.STEREOTYPE_CHANGE: { + StereotypeChange stereotypeChange = (StereotypeChange)theEObject; + T result = caseStereotypeChange(stereotypeChange); + if (result == null) result = caseUMLDiffExtension(stereotypeChange); + if (result == null) result = caseAbstractDiffExtension(stereotypeChange); + if (result == null) result = defaultCase(theEObject); + return result; + } + case UMLDiffPackage.TAGGED_VALUE_CHANGE: { + TaggedValueChange taggedValueChange = (TaggedValueChange)theEObject; + T result = caseTaggedValueChange(taggedValueChange); + if (result == null) result = caseUMLDiffExtension(taggedValueChange); + if (result == null) result = caseAttributeChange(taggedValueChange); + if (result == null) result = caseAbstractDiffExtension(taggedValueChange); + if (result == null) result = caseDiffElement(taggedValueChange); + if (result == null) result = defaultCase(theEObject); + return result; + } + case UMLDiffPackage.TAGGED_VALUE_CHANGE_LEFT_TARGET: { + TaggedValueChangeLeftTarget taggedValueChangeLeftTarget = (TaggedValueChangeLeftTarget)theEObject; + T result = caseTaggedValueChangeLeftTarget(taggedValueChangeLeftTarget); + if (result == null) result = caseTaggedValueChange(taggedValueChangeLeftTarget); + if (result == null) result = caseAttributeChangeLeftTarget(taggedValueChangeLeftTarget); + if (result == null) result = caseUMLDiffExtension(taggedValueChangeLeftTarget); + if (result == null) result = caseAttributeChange(taggedValueChangeLeftTarget); + if (result == null) result = caseAbstractDiffExtension(taggedValueChangeLeftTarget); + if (result == null) result = caseDiffElement(taggedValueChangeLeftTarget); + if (result == null) result = defaultCase(theEObject); + return result; + } + case UMLDiffPackage.TAGGED_VALUE_CHANGE_RIGHT_TARGET: { + TaggedValueChangeRightTarget taggedValueChangeRightTarget = (TaggedValueChangeRightTarget)theEObject; + T result = caseTaggedValueChangeRightTarget(taggedValueChangeRightTarget); + if (result == null) result = caseTaggedValueChange(taggedValueChangeRightTarget); + if (result == null) result = caseAttributeChangeRightTarget(taggedValueChangeRightTarget); + if (result == null) result = caseUMLDiffExtension(taggedValueChangeRightTarget); + if (result == null) result = caseAttributeChange(taggedValueChangeRightTarget); + if (result == null) result = caseAbstractDiffExtension(taggedValueChangeRightTarget); + if (result == null) result = caseDiffElement(taggedValueChangeRightTarget); + if (result == null) result = defaultCase(theEObject); + return result; + } + case UMLDiffPackage.UPDATE_TAGGED_VALUE: { + UpdateTaggedValue updateTaggedValue = (UpdateTaggedValue)theEObject; + T result = caseUpdateTaggedValue(updateTaggedValue); + if (result == null) result = caseTaggedValueChange(updateTaggedValue); + if (result == null) result = caseUpdateAttribute(updateTaggedValue); + if (result == null) result = caseUMLDiffExtension(updateTaggedValue); + if (result == null) result = caseAttributeChange(updateTaggedValue); + if (result == null) result = caseAbstractDiffExtension(updateTaggedValue); + if (result == null) result = caseDiffElement(updateTaggedValue); + if (result == null) result = defaultCase(theEObject); + return result; + } + case UMLDiffPackage.ADD_STEREOTYPE_APPLICATION: { + AddStereotypeApplication addStereotypeApplication = (AddStereotypeApplication)theEObject; + T result = caseAddStereotypeApplication(addStereotypeApplication); + if (result == null) result = caseStereotypeChange(addStereotypeApplication); + if (result == null) result = caseModelElementChangeRightTarget(addStereotypeApplication); + if (result == null) result = caseUMLDiffExtension(addStereotypeApplication); + if (result == null) result = caseModelElementChange(addStereotypeApplication); + if (result == null) result = caseAbstractDiffExtension(addStereotypeApplication); + if (result == null) result = caseDiffElement(addStereotypeApplication); + if (result == null) result = defaultCase(theEObject); + return result; + } + case UMLDiffPackage.REMOVE_STEREOTYPE_APPLICATION: { + RemoveStereotypeApplication removeStereotypeApplication = (RemoveStereotypeApplication)theEObject; + T result = caseRemoveStereotypeApplication(removeStereotypeApplication); + if (result == null) result = caseStereotypeChange(removeStereotypeApplication); + if (result == null) result = caseModelElementChangeLeftTarget(removeStereotypeApplication); + if (result == null) result = caseUMLDiffExtension(removeStereotypeApplication); + if (result == null) result = caseModelElementChange(removeStereotypeApplication); + if (result == null) result = caseAbstractDiffExtension(removeStereotypeApplication); + if (result == null) result = caseDiffElement(removeStereotypeApplication); + if (result == null) result = defaultCase(theEObject); + return result; + } + case UMLDiffPackage.TAGGED_VALUE_REFERENCE_CHANGE: { + TaggedValueReferenceChange taggedValueReferenceChange = (TaggedValueReferenceChange)theEObject; + T result = caseTaggedValueReferenceChange(taggedValueReferenceChange); + if (result == null) result = caseUMLDiffExtension(taggedValueReferenceChange); + if (result == null) result = caseReferenceChange(taggedValueReferenceChange); + if (result == null) result = caseAbstractDiffExtension(taggedValueReferenceChange); + if (result == null) result = caseDiffElement(taggedValueReferenceChange); + if (result == null) result = defaultCase(theEObject); + return result; + } + case UMLDiffPackage.COMPARE_TWO_ELEMENTS_DIFF_MODEL: { + CompareTwoElementsDiffModel compareTwoElementsDiffModel = (CompareTwoElementsDiffModel)theEObject; + T result = caseCompareTwoElementsDiffModel(compareTwoElementsDiffModel); + if (result == null) result = caseUMLDiffExtension(compareTwoElementsDiffModel); + if (result == null) result = caseDiffModel(compareTwoElementsDiffModel); + if (result == null) result = caseAbstractDiffExtension(compareTwoElementsDiffModel); + if (result == null) result = defaultCase(theEObject); + return result; + } + default: return defaultCase(theEObject); + } + } + + /** + * Returns the result of interpreting the object as an instance of '<em>Extension</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>Extension</em>'. + * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) + * @generated + */ + public T caseUMLDiffExtension(UMLDiffExtension object) { + return null; + } + + /** + * Returns the result of interpreting the object as an instance of '<em>Stereotype Change</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>Stereotype Change</em>'. + * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) + * @generated + */ + public T caseStereotypeChange(StereotypeChange object) { + return null; + } + + /** + * Returns the result of interpreting the object as an instance of '<em>Tagged Value Change</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>Tagged Value Change</em>'. + * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) + * @generated + */ + public T caseTaggedValueChange(TaggedValueChange object) { + return null; + } + + /** + * Returns the result of interpreting the object as an instance of '<em>Tagged Value Change Left Target</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>Tagged Value Change Left Target</em>'. + * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) + * @generated + */ + public T caseTaggedValueChangeLeftTarget(TaggedValueChangeLeftTarget object) { + return null; + } + + /** + * Returns the result of interpreting the object as an instance of '<em>Tagged Value Change Right Target</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>Tagged Value Change Right Target</em>'. + * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) + * @generated + */ + public T caseTaggedValueChangeRightTarget(TaggedValueChangeRightTarget object) { + return null; + } + + /** + * Returns the result of interpreting the object as an instance of '<em>Update Tagged Value</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>Update Tagged Value</em>'. + * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) + * @generated + */ + public T caseUpdateTaggedValue(UpdateTaggedValue object) { + return null; + } + + /** + * Returns the result of interpreting the object as an instance of '<em>Add Stereotype Application</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>Add Stereotype Application</em>'. + * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) + * @generated + */ + public T caseAddStereotypeApplication(AddStereotypeApplication object) { + return null; + } + + /** + * Returns the result of interpreting the object as an instance of '<em>Remove Stereotype Application</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>Remove Stereotype Application</em>'. + * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) + * @generated + */ + public T caseRemoveStereotypeApplication(RemoveStereotypeApplication object) { + return null; + } + + /** + * Returns the result of interpreting the object as an instance of '<em>Tagged Value Reference Change</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>Tagged Value Reference Change</em>'. + * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) + * @generated + */ + public T caseTaggedValueReferenceChange(TaggedValueReferenceChange object) { + return null; + } + + /** + * Returns the result of interpreting the object as an instance of '<em>Compare Two Elements Diff Model</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>Compare Two Elements Diff Model</em>'. + * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) + * @generated + */ + public T caseCompareTwoElementsDiffModel(CompareTwoElementsDiffModel object) { + return null; + } + + /** + * Returns the result of interpreting the object as an instance of '<em>Abstract Diff Extension</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>Abstract Diff Extension</em>'. + * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) + * @generated + */ + public T caseAbstractDiffExtension(AbstractDiffExtension 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 caseDiffElement(DiffElement object) { + return null; + } + + /** + * Returns the result of interpreting the object as an instance of '<em>Attribute Change</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>Attribute Change</em>'. + * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) + * @generated + */ + public T caseAttributeChange(AttributeChange object) { + return null; + } + + /** + * Returns the result of interpreting the object as an instance of '<em>Attribute Change Left Target</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>Attribute Change Left Target</em>'. + * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) + * @generated + */ + public T caseAttributeChangeLeftTarget(AttributeChangeLeftTarget object) { + return null; + } + + /** + * Returns the result of interpreting the object as an instance of '<em>Attribute Change Right Target</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>Attribute Change Right Target</em>'. + * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) + * @generated + */ + public T caseAttributeChangeRightTarget(AttributeChangeRightTarget object) { + return null; + } + + /** + * Returns the result of interpreting the object as an instance of '<em>Update Attribute</em>'. + * <!-- begin-user-doc --> + * This implementation returns null; + * returning a non-null result will terminate the switch. + * <!-- end-user-doc --> + * @param object the target of the switch. + * @return the result of interpreting the object as an instance of '<em>Update Attribute</em>'. + * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) + * @generated + */ + public T caseUpdateAttribute(UpdateAttribute object) { + return null; + } + + /** + * Returns the result of interpreting the object as an instance of '<em>Model Element Change</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>Model Element Change</em>'. + * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) + * @generated + */ + public T caseModelElementChange(ModelElementChange object) { + return null; + } + + /** + * Returns the result of interpreting the object as an instance of '<em>Model Element Change Right Target</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>Model Element Change Right Target</em>'. + * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) + * @generated + */ + public T caseModelElementChangeRightTarget(ModelElementChangeRightTarget object) { + return null; + } + + /** + * Returns the result of interpreting the object as an instance of '<em>Model Element Change Left Target</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>Model Element Change Left Target</em>'. + * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) + * @generated + */ + public T caseModelElementChangeLeftTarget(ModelElementChangeLeftTarget object) { + return null; + } + + /** + * Returns the result of interpreting the object as an instance of '<em>Reference Change</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>Reference Change</em>'. + * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) + * @generated + */ + public T caseReferenceChange(ReferenceChange object) { + return null; + } + + /** + * Returns the result of interpreting the object as an instance of '<em>Model</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>Model</em>'. + * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) + * @generated + */ + public T caseDiffModel(DiffModel 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; + } + +} //UMLDiffSwitch diff --git a/deprecated/org.eclipse.papyrus.uml.compare/src/org/eclipse/papyrus/uml/compare/Activator.java b/deprecated/org.eclipse.papyrus.uml.compare/src/org/eclipse/papyrus/uml/compare/Activator.java new file mode 100644 index 00000000000..c0b19fb7700 --- /dev/null +++ b/deprecated/org.eclipse.papyrus.uml.compare/src/org/eclipse/papyrus/uml/compare/Activator.java @@ -0,0 +1,131 @@ +/*****************************************************************************
+ * Copyright (c) 2010 CEA LIST.
+ *
+ *
+ * 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:
+ * Tatiana Fesenko (CEA LIST) - Initial API and implementation
+ *
+ *****************************************************************************/
+package org.eclipse.papyrus.uml.compare;
+
+import org.eclipse.core.runtime.IStatus;
+import org.eclipse.core.runtime.Status;
+import org.eclipse.jface.resource.ImageRegistry;
+import org.eclipse.swt.graphics.Image;
+import org.eclipse.ui.plugin.AbstractUIPlugin;
+import org.osgi.framework.BundleContext;
+
+/**
+ * The activator class controls the plug-in life cycle.
+ */
+public class Activator extends AbstractUIPlugin {
+
+ /**
+ * The plug-in ID.
+ */
+ public static final String PLUGIN_ID = "org.eclipse.papyrus.uml.compare"; //$NON-NLS-1$
+
+ /**
+ * The shared instance.
+ */
+ private static Activator plugin;
+
+
+ /**
+ * The constructor.
+ */
+ public Activator() {
+ }
+
+ /**
+ * Start.
+ *
+ * @param context the context
+ * @throws Exception the exception
+ * {@inheritDoc}
+ * @see org.eclipse.core.runtime.Plugin#start(org.osgi.framework.BundleContext)
+ * @generated
+ */
+ @Override
+ public void start(BundleContext context) throws Exception {
+ super.start(context);
+ plugin = this;
+ }
+
+ /**
+ * Stop.
+ *
+ * @param context the context
+ * @throws Exception the exception
+ * {@inheritDoc}
+ * @see org.eclipse.core.runtime.Plugin#stop(org.osgi.framework.BundleContext)
+ * @generated
+ */
+ @Override
+ public void stop(BundleContext context) throws Exception {
+ plugin = null;
+ super.stop(context);
+ }
+
+ /**
+ * Returns the shared instance.
+ *
+ * @return the shared instance
+ */
+ public static Activator getDefault() {
+ return plugin;
+ }
+
+ /**
+ * Returns the image from the given path.
+ *
+ * @param path the path the image to be displayed
+ * @return the image found
+ */
+ public static Image getImage(String path) {
+ final ImageRegistry registry = getDefault().getImageRegistry();
+ Image image = registry.get(path);
+ if(image == null) {
+ registry.put(path, Activator.imageDescriptorFromPlugin(PLUGIN_ID, path));
+ image = registry.get(path);
+ }
+ return image;
+
+ }
+
+ /**
+ * Log error.
+ *
+ * @param e the e
+ */
+ public static void logError(Throwable e) {
+ logError(Messages.Activator_log_error_message, e);
+ }
+
+ /**
+ * Log error.
+ *
+ * @param message the message
+ * @param e the e
+ */
+ public static void logError(String message, Throwable e) {
+ IStatus status = new Status(IStatus.ERROR, PLUGIN_ID, message, e);
+ getDefault().getLog().log(status);
+ }
+
+ /**
+ * Log info.
+ *
+ * @param message the message
+ */
+ public static void logInfo(String message) {
+ IStatus status = new Status(IStatus.INFO, PLUGIN_ID, message);
+ getDefault().getLog().log(status);
+ }
+
+}
diff --git a/deprecated/org.eclipse.papyrus.uml.compare/src/org/eclipse/papyrus/uml/compare/Messages.java b/deprecated/org.eclipse.papyrus.uml.compare/src/org/eclipse/papyrus/uml/compare/Messages.java new file mode 100644 index 00000000000..3441e48629e --- /dev/null +++ b/deprecated/org.eclipse.papyrus.uml.compare/src/org/eclipse/papyrus/uml/compare/Messages.java @@ -0,0 +1,101 @@ +package org.eclipse.papyrus.uml.compare; + +import org.eclipse.osgi.util.NLS; + +/** + * The NLS class. + */ +public class Messages extends NLS { + + /** The Constant BUNDLE_NAME. */ + private static final String BUNDLE_NAME = "messages"; //$NON-NLS-1$ + + /** The Activator_log_error_message. */ + public static String Activator_log_error_message; + + /** The Styled diff label switch_add_stereotype_application_text. */ + public static String StyledDiffLabelSwitch_add_stereotype_application_text; + + /** The Styled diff label switch_attribute_change_left_target_remote_text. */ + public static String StyledDiffLabelSwitch_attribute_change_left_target_remote_text; + + /** The Styled diff label switch_attribute_change_left_target_text. */ + public static String StyledDiffLabelSwitch_attribute_change_left_target_text; + + /** The Styled diff label switch_attribute_change_right_target_remote_text. */ + public static String StyledDiffLabelSwitch_attribute_change_right_target_remote_text; + + /** The Styled diff label switch_attribute_change_right_target_text. */ + public static String StyledDiffLabelSwitch_attribute_change_right_target_text; + + /** The Styled diff label switch_attribute_change_text. */ + public static String StyledDiffLabelSwitch_attribute_change_text; + + /** The Styled diff label switch_diff_group_text. */ + public static String StyledDiffLabelSwitch_diff_group_text; + + /** The Styled diff label switch_null_value_text. */ + public static String StyledDiffLabelSwitch_null_value_text; + + /** The Styled diff label switch_reference_chnage_text. */ + public static String StyledDiffLabelSwitch_reference_chnage_text; + + /** The Styled diff label switch_remove_stereotype_application_text. */ + public static String StyledDiffLabelSwitch_remove_stereotype_application_text; + + /** The Styled diff label switch_root_text. */ + public static String StyledDiffLabelSwitch_root_text; + + /** The Styled diff label switch_tagged_value_changed_remote_text. */ + public static String StyledDiffLabelSwitch_tagged_value_changed_remote_text; + + /** The Styled diff label switch_tagged_value_changed_text. */ + public static String StyledDiffLabelSwitch_tagged_value_changed_text; + + /** The Styled diff label switch_tagged_value_left_target_remote_text. */ + public static String StyledDiffLabelSwitch_tagged_value_left_target_remote_text; + + /** The Styled diff label switch_tagged_value_left_target_text. */ + public static String StyledDiffLabelSwitch_tagged_value_left_target_text; + + /** The Styled diff label switch_tagged_value_reference_remote_text. */ + public static String StyledDiffLabelSwitch_tagged_value_reference_remote_text; + + /** The Styled diff label switch_tagged_value_reference_text. */ + public static String StyledDiffLabelSwitch_tagged_value_reference_text; + + /** The Styled diff label switch_tagged_value_right_target_remote_text. */ + public static String StyledDiffLabelSwitch_tagged_value_right_target_remote_text; + + /** The Styled diff label switch_tagged_value_right_target_text. */ + public static String StyledDiffLabelSwitch_tagged_value_right_target_text; + + /** The Styled diff label switch_two_elements_model_text. */ + public static String StyledDiffLabelSwitch_two_elements_model_text; + + /** The Styled diff label switch_update_attribute_conflicting_text. */ + public static String StyledDiffLabelSwitch_update_attribute_conflicting_text; + + /** The Styled diff label switch_update_attribute_remote_text. */ + public static String StyledDiffLabelSwitch_update_attribute_remote_text; + + /** The Styled diff label switch_update_attribute_text. */ + public static String StyledDiffLabelSwitch_update_attribute_text; + + /** The Styled diff label switch_update_tagged_value_remote_text. */ + public static String StyledDiffLabelSwitch_update_tagged_value_remote_text; + + /** The Styled diff label switch_update_tagged_value_text. */ + public static String StyledDiffLabelSwitch_update_tagged_value_text; + + static { + // initialize resource bundle + NLS.initializeMessages(BUNDLE_NAME, Messages.class); + } + + /** + * Instantiates a new messages. + */ + private Messages() { + } +} diff --git a/deprecated/org.eclipse.papyrus.uml.compare/src/org/eclipse/papyrus/uml/compare/StyledMessageFormat.java b/deprecated/org.eclipse.papyrus.uml.compare/src/org/eclipse/papyrus/uml/compare/StyledMessageFormat.java new file mode 100644 index 00000000000..e1d6cb76e33 --- /dev/null +++ b/deprecated/org.eclipse.papyrus.uml.compare/src/org/eclipse/papyrus/uml/compare/StyledMessageFormat.java @@ -0,0 +1,57 @@ +/***************************************************************************** + * Copyright (c) 2010 CEA LIST. + * + * + * 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: + * Tatiana Fesenko (CEA LIST) - Initial API and implementation + * + *****************************************************************************/ +package org.eclipse.papyrus.uml.compare; + +import org.eclipse.jface.viewers.StyledString; +import org.eclipse.jface.viewers.StyledString.Styler; + + +/** + * Creates StyledString for the given template. + * Elements in {} will be shown in bold font. + */ +public class StyledMessageFormat { + + /** The Constant ELEMENT_STYLER. */ + private static final Styler ELEMENT_STYLER = StyledString.DECORATIONS_STYLER; + + /** The Constant MESSAGE_STYLER. */ + private static final Styler MESSAGE_STYLER = null; + + /** + * Format. + * + * @param pattern the pattern + * @param args the args + * @return the styled string + */ + public static StyledString format(String pattern, String... args) { + StyledString styledString = new StyledString(); + styledString.append(Messages.bind(pattern, (Object[])args), ELEMENT_STYLER); + int currInd = 0; + int gap = 0; + for(int i = 0; i < args.length; i++) { + int nextInd = pattern.indexOf("{", currInd); //$NON-NLS-1$ + if(nextInd != -1 && args.length > i) { + styledString.setStyle(nextInd + gap, args[i].length(), MESSAGE_STYLER); + currInd = nextInd + 1; + gap += args[i].length() - "{}".length() - String.valueOf(i).length(); //$NON-NLS-1$ + } else { + break; + } + } + return styledString; + } + +} diff --git a/deprecated/org.eclipse.papyrus.uml.compare/src/org/eclipse/papyrus/uml/compare/UMLCompareUtils.java b/deprecated/org.eclipse.papyrus.uml.compare/src/org/eclipse/papyrus/uml/compare/UMLCompareUtils.java new file mode 100644 index 00000000000..26371501c9e --- /dev/null +++ b/deprecated/org.eclipse.papyrus.uml.compare/src/org/eclipse/papyrus/uml/compare/UMLCompareUtils.java @@ -0,0 +1,35 @@ +/***************************************************************************** + * Copyright (c) 2010 CEA LIST. + * + * + * 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: + * Tatiana Fesenko (CEA LIST) - Initial API and implementation + * + *****************************************************************************/ +package org.eclipse.papyrus.uml.compare; + +import org.eclipse.emf.ecore.EObject; +import org.eclipse.uml2.uml.util.UMLUtil; + + +/** + * The Class UMLCompareUtils. + */ +public class UMLCompareUtils { + + /** + * Checks if is stereotype application. + * + * @param eObject the e object + * @return true, if is stereotype application + */ + public static boolean isStereotypeApplication(EObject eObject) { + return UMLUtil.getStereotype(eObject) != null; + } + +} diff --git a/deprecated/org.eclipse.papyrus.uml.compare/src/org/eclipse/papyrus/uml/compare/diff/ModelElementSwitch.java b/deprecated/org.eclipse.papyrus.uml.compare/src/org/eclipse/papyrus/uml/compare/diff/ModelElementSwitch.java new file mode 100644 index 00000000000..e7982753c6f --- /dev/null +++ b/deprecated/org.eclipse.papyrus.uml.compare/src/org/eclipse/papyrus/uml/compare/diff/ModelElementSwitch.java @@ -0,0 +1,79 @@ +/***************************************************************************** + * Copyright (c) 2010 CEA LIST. + * + * + * 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: + * Tatiana Fesenko (CEA LIST) - Initial API and implementation + * + *****************************************************************************/ +package org.eclipse.papyrus.uml.compare.diff; + +import org.eclipse.emf.compare.diff.metamodel.AttributeChange; +import org.eclipse.emf.compare.diff.metamodel.DiffGroup; +import org.eclipse.emf.compare.diff.metamodel.ModelElementChangeLeftTarget; +import org.eclipse.emf.compare.diff.metamodel.ModelElementChangeRightTarget; +import org.eclipse.emf.compare.diff.metamodel.ReferenceChange; +import org.eclipse.emf.compare.diff.metamodel.UpdateModelElement; +import org.eclipse.emf.compare.diff.metamodel.util.DiffSwitch; +import org.eclipse.emf.ecore.EObject; + + +/** + * Switch that returns corresponding domain model elements for the given DiffElement + */ +public class ModelElementSwitch extends DiffSwitch<EObject> { + + /* (non-Javadoc) + * @see org.eclipse.emf.compare.diff.metamodel.util.DiffSwitch#caseDiffGroup(org.eclipse.emf.compare.diff.metamodel.DiffGroup) + */ + @Override + public EObject caseDiffGroup(DiffGroup object) { + return object.getRightParent(); + } + + /* (non-Javadoc) + * @see org.eclipse.emf.compare.diff.metamodel.util.DiffSwitch#caseModelElementChangeLeftTarget(org.eclipse.emf.compare.diff.metamodel.ModelElementChangeLeftTarget) + */ + @Override + public EObject caseModelElementChangeLeftTarget(ModelElementChangeLeftTarget object) { + return object.getLeftElement(); + } + + /* (non-Javadoc) + * @see org.eclipse.emf.compare.diff.metamodel.util.DiffSwitch#caseModelElementChangeRightTarget(org.eclipse.emf.compare.diff.metamodel.ModelElementChangeRightTarget) + */ + @Override + public EObject caseModelElementChangeRightTarget(ModelElementChangeRightTarget object) { + return object.getRightElement(); + } + + /* (non-Javadoc) + * @see org.eclipse.emf.compare.diff.metamodel.util.DiffSwitch#caseUpdateModelElement(org.eclipse.emf.compare.diff.metamodel.UpdateModelElement) + */ + @Override + public EObject caseUpdateModelElement(UpdateModelElement object) { + return object.getLeftElement(); + } + + /* (non-Javadoc) + * @see org.eclipse.emf.compare.diff.metamodel.util.DiffSwitch#caseAttributeChange(org.eclipse.emf.compare.diff.metamodel.AttributeChange) + */ + @Override + public EObject caseAttributeChange(AttributeChange object) { + return object.getLeftElement(); + } + + /* (non-Javadoc) + * @see org.eclipse.emf.compare.diff.metamodel.util.DiffSwitch#caseReferenceChange(org.eclipse.emf.compare.diff.metamodel.ReferenceChange) + */ + @Override + public EObject caseReferenceChange(ReferenceChange object) { + return object.getLeftElement(); + } + +} diff --git a/deprecated/org.eclipse.papyrus.uml.compare/src/org/eclipse/papyrus/uml/compare/diff/PapyrusDiffEngine.java b/deprecated/org.eclipse.papyrus.uml.compare/src/org/eclipse/papyrus/uml/compare/diff/PapyrusDiffEngine.java new file mode 100644 index 00000000000..c1eaf3c1370 --- /dev/null +++ b/deprecated/org.eclipse.papyrus.uml.compare/src/org/eclipse/papyrus/uml/compare/diff/PapyrusDiffEngine.java @@ -0,0 +1,210 @@ +/*****************************************************************************
+ * Copyright (c) 2010 CEA LIST.
+ *
+ *
+ * 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:
+ * Tatiana Fesenko (CEA LIST) - Initial API and implementation
+ *
+ *****************************************************************************/
+package org.eclipse.papyrus.uml.compare.diff;
+
+
+import java.util.Iterator;
+
+import org.eclipse.emf.compare.diff.engine.GenericDiffEngine;
+import org.eclipse.emf.compare.diff.engine.check.ReferencesCheck;
+import org.eclipse.emf.compare.diff.metamodel.AbstractDiffExtension;
+import org.eclipse.emf.compare.diff.metamodel.DiffElement;
+import org.eclipse.emf.compare.diff.metamodel.DiffFactory;
+import org.eclipse.emf.compare.diff.metamodel.DiffGroup;
+import org.eclipse.emf.compare.diff.metamodel.DiffModel;
+import org.eclipse.emf.compare.diff.metamodel.util.DiffSwitch;
+import org.eclipse.emf.compare.match.metamodel.MatchModel;
+import org.eclipse.emf.ecore.EObject;
+import org.eclipse.papyrus.uml.compare.UMLCompareUtils;
+import org.eclipse.papyrus.uml.compare.diff.extension.DiffElementExtensionBuilder;
+import org.eclipse.papyrus.uml.compare.diff.metamodel.uml_diff_extension.UMLDiffFactory;
+import org.eclipse.uml2.uml.Element;
+import org.eclipse.uml2.uml.util.UMLUtil;
+
+
+/**
+ * Implementation of DiffEngine for UML Diagrams:
+ * <li>Properly processes changes stereotypes and tagged values,</li>
+ * <li>doesn't show numerous bulk changes as described in Bug 316819#c1</li>
+ */
+public class PapyrusDiffEngine extends GenericDiffEngine {
+
+ /** The my diff element builder. */
+ private DiffSwitch<AbstractDiffExtension> myDiffElementBuilder = new DiffElementExtensionBuilder();
+
+ /** The my get model element switch. */
+ private DiffSwitch<EObject> myGetModelElementSwitch = new ModelElementSwitch();
+
+ /* (non-Javadoc)
+ * @see org.eclipse.emf.compare.diff.engine.GenericDiffEngine#getReferencesChecker()
+ */
+ @Override
+ protected ReferencesCheck getReferencesChecker() {
+ return new UMLReferenceCheck(matchCrossReferencer);
+ }
+
+ /* (non-Javadoc)
+ * @see org.eclipse.emf.compare.diff.engine.GenericDiffEngine#doDiff(org.eclipse.emf.compare.match.metamodel.MatchModel, boolean)
+ */
+ @Override
+ public DiffModel doDiff(MatchModel match, boolean threeWay) {
+ DiffModel result = super.doDiff(match, threeWay);
+ return postProcess(result);
+ }
+
+
+ /**
+ * Post process default result of Diff.
+ * Processes changes stereotypes and tagged values
+ *
+ * @param diffModel the diff model
+ * @return the diff model
+ */
+ protected DiffModel postProcess(DiffModel diffModel) {
+ final Iterator<EObject> it = diffModel.eAllContents();
+ while(it.hasNext()) {
+ DiffElement diffElement = (DiffElement)it.next();
+ visitElement(diffModel, diffElement);
+ }
+ return diffModel;
+ }
+
+ /**
+ * Visit element.
+ *
+ * @param root the root
+ * @param diffElement the diff element
+ */
+ protected void visitElement(DiffModel root, DiffElement diffElement) {
+ if(diffElement instanceof DiffGroup) {
+ return;
+ }
+ EObject stereotypeApplication = getModelElementFor(diffElement);
+ if(UMLCompareUtils.isStereotypeApplication(stereotypeApplication)) {
+
+ Element newVisualParent = UMLUtil.getBaseElement(stereotypeApplication);
+ DiffElement newDiffParent = findOrCreateDiffElementFor(root, newVisualParent);
+ AbstractDiffExtension taggedValueDiff = createDiffExtentionElementFor(diffElement);
+
+ newDiffParent.getSubDiffElements().add((DiffElement)taggedValueDiff);
+ hideElement(diffElement, taggedValueDiff);
+ }
+ }
+
+ /**
+ * Hide element.
+ *
+ * @param diffElement the diff element
+ * @param diffExtension the diff extension
+ */
+ protected void hideElement(DiffElement diffElement, AbstractDiffExtension diffExtension) {
+ if(diffExtension == null) {
+ diffExtension = UMLDiffFactory.eINSTANCE.createAddStereotypeApplication();
+ }
+ diffExtension.getHideElements().add(diffElement);
+ }
+
+ /**
+ * Find or create diff element for.
+ *
+ * @param root the root
+ * @param object the object
+ * @return the diff element
+ */
+ private DiffElement findOrCreateDiffElementFor(DiffModel root, EObject object) {
+ if(object == null) {
+ if(!root.getOwnedElements().isEmpty()) {
+ return root.getOwnedElements().get(0);
+ }
+ DiffGroup diffRoot = DiffFactory.eINSTANCE.createDiffGroup();
+ root.getOwnedElements().add(diffRoot);
+ return diffRoot;
+ }
+ DiffElement element = findDiffElementFor(root, object);
+ if(element != null) {
+ return element;
+ }
+
+ DiffElement diffParent = findOrCreateDiffElementFor(root, getParent(object));
+ DiffGroup diffElementForObject = DiffFactory.eINSTANCE.createDiffGroup();
+ diffElementForObject.setRightParent(object);
+
+ diffParent.getSubDiffElements().add(diffElementForObject);
+ return diffElementForObject;
+ }
+
+ /**
+ * Gets the parent.
+ *
+ * @param modelElement the model element
+ * @return the parent
+ */
+ private EObject getParent(EObject modelElement) {
+ return modelElement.eContainer();
+ }
+
+ /**
+ * Find diff element for.
+ *
+ * @param root the root
+ * @param modelElement the model element
+ * @return the diff element
+ */
+ protected final DiffElement findDiffElementFor(DiffModel root, EObject modelElement) {
+ if(modelElement == null) {
+ return null;
+ }
+ final Iterator<EObject> it = root.eAllContents();
+ while(it.hasNext()) {
+ final DiffElement element = (DiffElement)it.next();
+ if(isPertinentDiff(element, modelElement)) {
+ return element;
+ }
+ }
+ return null;
+ }
+
+ /**
+ * Checks if is pertinent diff.
+ *
+ * @param diff the diff
+ * @param modelElement the model element
+ * @return true, if is pertinent diff
+ */
+ private boolean isPertinentDiff(DiffElement diff, EObject modelElement) {
+ EObject domainElement = getModelElementFor(diff);
+ return modelElement.equals(domainElement) || modelElement.equals(getMatchedEObject(domainElement));
+ }
+
+ /**
+ * Gets the model element for.
+ *
+ * @param diff the diff
+ * @return the model element for
+ */
+ protected EObject getModelElementFor(DiffElement diff) {
+ return myGetModelElementSwitch.doSwitch(diff);
+ }
+
+ /**
+ * Creates the diff extention element for.
+ *
+ * @param diffElement the diff element
+ * @return the abstract diff extension
+ */
+ protected AbstractDiffExtension createDiffExtentionElementFor(DiffElement diffElement) {
+ return myDiffElementBuilder.doSwitch(diffElement);
+ }
+
+}
diff --git a/deprecated/org.eclipse.papyrus.uml.compare/src/org/eclipse/papyrus/uml/compare/diff/UMLReferenceCheck.java b/deprecated/org.eclipse.papyrus.uml.compare/src/org/eclipse/papyrus/uml/compare/diff/UMLReferenceCheck.java new file mode 100644 index 00000000000..f8f2632df6b --- /dev/null +++ b/deprecated/org.eclipse.papyrus.uml.compare/src/org/eclipse/papyrus/uml/compare/diff/UMLReferenceCheck.java @@ -0,0 +1,195 @@ +/***************************************************************************** + * Copyright (c) 2010 CEA LIST. + * + * + * 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: + * Tatiana Fesenko (CEA LIST) - Initial API and implementation + * + *****************************************************************************/ +package org.eclipse.papyrus.uml.compare.diff; + +import java.util.ArrayList; +import java.util.Iterator; +import java.util.List; + +import org.eclipse.emf.compare.FactoryException; +import org.eclipse.emf.compare.diff.engine.check.ReferencesCheck; +import org.eclipse.emf.compare.diff.metamodel.DiffGroup; +import org.eclipse.emf.compare.match.internal.statistic.ResourceSimilarity; +import org.eclipse.emf.compare.match.metamodel.Match2Elements; +import org.eclipse.emf.compare.util.EFactory; +import org.eclipse.emf.ecore.EObject; +import org.eclipse.emf.ecore.EReference; +import org.eclipse.emf.ecore.util.EcoreUtil; +import org.eclipse.emf.ecore.util.EcoreUtil.CrossReferencer; + +/** + * Implementation of ReferenceCheck that doesn't show numerous bulk changes as described in Bug 316819#c1 + */ +public class UMLReferenceCheck extends ReferencesCheck { + + /** + * Instantiates a new uML reference check. + * + * @param referencer the referencer + */ + public UMLReferenceCheck(CrossReferencer referencer) { + super(referencer); + } + + /* (non-Javadoc) + * @see org.eclipse.emf.compare.diff.engine.check.ReferencesCheck#checkReferenceUpdates(org.eclipse.emf.compare.diff.metamodel.DiffGroup, org.eclipse.emf.compare.match.metamodel.Match2Elements, org.eclipse.emf.ecore.EReference) + */ + @Override + protected void checkReferenceUpdates(DiffGroup root, Match2Elements mapping, EReference reference) throws FactoryException { + if(reference.isMany() && isSimilarSingleReference(mapping, reference)) { + return; + } + super.checkReferenceUpdates(root, mapping, reference); + } + + /* (non-Javadoc) + * @see org.eclipse.emf.compare.diff.engine.check.ReferencesCheck#shouldBeIgnored(org.eclipse.emf.ecore.EReference) + */ + @Override + protected boolean shouldBeIgnored(EReference reference) { +// if (isTaggedValue(reference)) { +// return false; +// } + return super.shouldBeIgnored(reference); + } + + /** + * Checks if is tagged value. + * + * @param reference the reference + * @return true, if is tagged value + */ + protected boolean isTaggedValue(EReference reference) { + // improve condition + return reference.isDerived(); + } + + /** + * Checks if is similar single reference. + * + * @param mapping the mapping + * @param reference the reference + * @return true, if is similar single reference + * @throws FactoryException the factory exception + */ + private boolean isSimilarSingleReference(Match2Elements mapping, EReference reference) throws FactoryException { + final double similarReferenceURIThreshold = 0.8d; + final List<Object> leftElementObjReferences = convertFeatureMapList(EFactory.eGetAsList(mapping.getLeftElement(), reference.getName())); + final List<Object> rightElementObjReferences = convertFeatureMapList(EFactory.eGetAsList(mapping.getRightElement(), reference.getName())); + + + // All values should be EObjects + final List<EObject> leftElementReferences = new ArrayList<EObject>(); + final List<EObject> rightElementReferences = new ArrayList<EObject>(); + for(Object left : leftElementObjReferences) { + leftElementReferences.add((EObject)left); + } + for(Object right : rightElementObjReferences) { + rightElementReferences.add((EObject)right); + } + + final List<EObject> deletedReferences = computeDeletedReferences(leftElementReferences, rightElementReferences); + final List<EObject> addedReferences = computeAddedReferences(leftElementReferences, rightElementReferences); + if(addedReferences.size() == 1 && deletedReferences.size() == 1) { + EObject addedValue = addedReferences.get(0); + EObject deletedValue = deletedReferences.get(0); + + final double uriSimilarity = ResourceSimilarity.computeURISimilarity(EcoreUtil.getURI(addedValue), EcoreUtil.getURI(deletedValue)); + if(uriSimilarity >= similarReferenceURIThreshold) { + return true; + } + } + return false; + } + + /** + * Compute added references. + * + * @param leftReferences the left references + * @param rightReferences the right references + * @return the list + */ + private List<EObject> computeAddedReferences(List<EObject> leftReferences, List<EObject> rightReferences) { + final List<EObject> deletedReferences = new ArrayList<EObject>(); + final List<EObject> addedReferences = new ArrayList<EObject>(); + final double similarReferenceURIThreshold = 0.8d; + + if(leftReferences != null) { + addedReferences.addAll(leftReferences); + } + if(rightReferences != null) { + deletedReferences.addAll(rightReferences); + } + final List<EObject> matchedOldReferences = getMatchedReferences(deletedReferences); + + // "Added" references are the references from the left element that + // have no matching "right" counterpart + addedReferences.removeAll(matchedOldReferences); + + return addedReferences; + } + + /** + * This will create and populate a {@link List} with all the references from the <code>rightReferences</code> {@link List} that cannot be + * matched in the <code>leftReferences</code> {@link List}. + * + * @param leftReferences + * List of the left element reference values. + * @param rightReferences + * List of the right element reference values. + * @return {@link List} of all the references that have been deleted from the left (local) element since + * the right (distant) element. + */ + private List<EObject> computeDeletedReferences(List<EObject> leftReferences, List<EObject> rightReferences) { + final List<EObject> deletedReferences = new ArrayList<EObject>(); + final List<EObject> addedReferences = new ArrayList<EObject>(); + final double similarReferenceURIThreshold = 0.8d; + + if(leftReferences != null) { + addedReferences.addAll(leftReferences); + } + if(rightReferences != null) { + deletedReferences.addAll(rightReferences); + } + final List<EObject> matchedNewReferences = getMatchedReferences(addedReferences); + + // "deleted" references are the references from the right element that + // have no counterpart in the left element + deletedReferences.removeAll(matchedNewReferences); + + return deletedReferences; + } + + /** + * Gets the matched references. + * + * @param references the references + * @return the matched references + */ + private List<EObject> getMatchedReferences(List<EObject> references) { + final List<EObject> matchedReferences = new ArrayList<EObject>(); + final Iterator<EObject> refIterator = references.iterator(); + while(refIterator.hasNext()) { + final Object currentReference = refIterator.next(); + if(currentReference != null) { + final EObject currentMapped = getMatchedEObject((EObject)currentReference); + if(currentMapped != null) { + matchedReferences.add(currentMapped); + } + } + } + return matchedReferences; + } + +}
\ No newline at end of file diff --git a/deprecated/org.eclipse.papyrus.uml.compare/src/org/eclipse/papyrus/uml/compare/diff/extension/DiffElementExtensionBuilder.java b/deprecated/org.eclipse.papyrus.uml.compare/src/org/eclipse/papyrus/uml/compare/diff/extension/DiffElementExtensionBuilder.java new file mode 100644 index 00000000000..95bf93bcb10 --- /dev/null +++ b/deprecated/org.eclipse.papyrus.uml.compare/src/org/eclipse/papyrus/uml/compare/diff/extension/DiffElementExtensionBuilder.java @@ -0,0 +1,154 @@ +/***************************************************************************** + * Copyright (c) 2010 CEA LIST. + * + * + * 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: + * Tatiana Fesenko (CEA LIST) - Initial API and implementation + * + *****************************************************************************/ +package org.eclipse.papyrus.uml.compare.diff.extension; + +import org.eclipse.emf.compare.diff.metamodel.AbstractDiffExtension; +import org.eclipse.emf.compare.diff.metamodel.AttributeChange; +import org.eclipse.emf.compare.diff.metamodel.AttributeChangeLeftTarget; +import org.eclipse.emf.compare.diff.metamodel.AttributeChangeRightTarget; +import org.eclipse.emf.compare.diff.metamodel.DiffElement; +import org.eclipse.emf.compare.diff.metamodel.DiffModel; +import org.eclipse.emf.compare.diff.metamodel.ModelElementChangeLeftTarget; +import org.eclipse.emf.compare.diff.metamodel.ModelElementChangeRightTarget; +import org.eclipse.emf.compare.diff.metamodel.ReferenceChange; +import org.eclipse.emf.compare.diff.metamodel.UpdateAttribute; +import org.eclipse.emf.compare.diff.metamodel.util.DiffSwitch; +import org.eclipse.papyrus.uml.compare.diff.metamodel.uml_diff_extension.AddStereotypeApplication; +import org.eclipse.papyrus.uml.compare.diff.metamodel.uml_diff_extension.CompareTwoElementsDiffModel; +import org.eclipse.papyrus.uml.compare.diff.metamodel.uml_diff_extension.RemoveStereotypeApplication; +import org.eclipse.papyrus.uml.compare.diff.metamodel.uml_diff_extension.TaggedValueChange; +import org.eclipse.papyrus.uml.compare.diff.metamodel.uml_diff_extension.TaggedValueChangeLeftTarget; +import org.eclipse.papyrus.uml.compare.diff.metamodel.uml_diff_extension.TaggedValueChangeRightTarget; +import org.eclipse.papyrus.uml.compare.diff.metamodel.uml_diff_extension.TaggedValueReferenceChange; +import org.eclipse.papyrus.uml.compare.diff.metamodel.uml_diff_extension.UMLDiffFactory; +import org.eclipse.papyrus.uml.compare.diff.metamodel.uml_diff_extension.UpdateTaggedValue; + + +/** + * The Class DiffElementExtensionBuilder. + */ +public class DiffElementExtensionBuilder extends DiffSwitch<AbstractDiffExtension> { + + /* (non-Javadoc) + * @see org.eclipse.emf.compare.diff.metamodel.util.DiffSwitch#caseDiffElement(org.eclipse.emf.compare.diff.metamodel.DiffElement) + */ + @Override + public AbstractDiffExtension caseDiffElement(DiffElement object) { + throw new UnsupportedOperationException(); + } + + /* (non-Javadoc) + * @see org.eclipse.emf.compare.diff.metamodel.util.DiffSwitch#caseDiffModel(org.eclipse.emf.compare.diff.metamodel.DiffModel) + */ + @Override + public AbstractDiffExtension caseDiffModel(DiffModel object) { + CompareTwoElementsDiffModel newElement = UMLDiffFactory.eINSTANCE.createCompareTwoElementsDiffModel(); + newElement.getLeftRoots().addAll(object.getLeftRoots()); + newElement.getRightRoots().addAll(object.getRightRoots()); + newElement.getAncestorRoots().addAll(object.getAncestorRoots()); + newElement.getOwnedElements().addAll(object.getOwnedElements()); + return newElement; + } + + /* (non-Javadoc) + * @see org.eclipse.emf.compare.diff.metamodel.util.DiffSwitch#caseModelElementChangeLeftTarget(org.eclipse.emf.compare.diff.metamodel.ModelElementChangeLeftTarget) + */ + @Override + public AbstractDiffExtension caseModelElementChangeLeftTarget(ModelElementChangeLeftTarget object) { + RemoveStereotypeApplication newElement = UMLDiffFactory.eINSTANCE.createRemoveStereotypeApplication(); + newElement.setLeftElement(object.getLeftElement()); + return newElement; + } + + /* (non-Javadoc) + * @see org.eclipse.emf.compare.diff.metamodel.util.DiffSwitch#caseModelElementChangeRightTarget(org.eclipse.emf.compare.diff.metamodel.ModelElementChangeRightTarget) + */ + @Override + public AbstractDiffExtension caseModelElementChangeRightTarget(ModelElementChangeRightTarget object) { + AddStereotypeApplication newElement = UMLDiffFactory.eINSTANCE.createAddStereotypeApplication(); + newElement.setRightElement(object.getRightElement()); + return newElement; + } + + /* (non-Javadoc) + * @see org.eclipse.emf.compare.diff.metamodel.util.DiffSwitch#caseAttributeChange(org.eclipse.emf.compare.diff.metamodel.AttributeChange) + */ + @Override + public AbstractDiffExtension caseAttributeChange(AttributeChange object) { + TaggedValueChange newElement = UMLDiffFactory.eINSTANCE.createUpdateTaggedValue(); + initTaggedValueDiff(newElement, object); + return newElement; + } + + /* (non-Javadoc) + * @see org.eclipse.emf.compare.diff.metamodel.util.DiffSwitch#caseAttributeChangeLeftTarget(org.eclipse.emf.compare.diff.metamodel.AttributeChangeLeftTarget) + */ + @Override + public AbstractDiffExtension caseAttributeChangeLeftTarget(AttributeChangeLeftTarget object) { + TaggedValueChangeLeftTarget newElement = UMLDiffFactory.eINSTANCE.createTaggedValueChangeLeftTarget(); + initTaggedValueDiff(newElement, object); + newElement.setLeftTarget(object.getLeftTarget()); + return newElement; + } + + /* (non-Javadoc) + * @see org.eclipse.emf.compare.diff.metamodel.util.DiffSwitch#caseAttributeChangeRightTarget(org.eclipse.emf.compare.diff.metamodel.AttributeChangeRightTarget) + */ + @Override + public AbstractDiffExtension caseAttributeChangeRightTarget(AttributeChangeRightTarget object) { + TaggedValueChangeRightTarget newElement = UMLDiffFactory.eINSTANCE.createTaggedValueChangeRightTarget(); + initTaggedValueDiff(newElement, object); + newElement.setRightTarget(object.getRightTarget()); + return newElement; + } + + /* (non-Javadoc) + * @see org.eclipse.emf.compare.diff.metamodel.util.DiffSwitch#caseUpdateAttribute(org.eclipse.emf.compare.diff.metamodel.UpdateAttribute) + */ + @Override + public AbstractDiffExtension caseUpdateAttribute(UpdateAttribute object) { + UpdateTaggedValue newElement = UMLDiffFactory.eINSTANCE.createUpdateTaggedValue(); + initTaggedValueDiff(newElement, object); + return newElement; + } + + /* (non-Javadoc) + * @see org.eclipse.emf.compare.diff.metamodel.util.DiffSwitch#caseReferenceChange(org.eclipse.emf.compare.diff.metamodel.ReferenceChange) + */ + @Override + public AbstractDiffExtension caseReferenceChange(ReferenceChange object) { + TaggedValueReferenceChange newElement = UMLDiffFactory.eINSTANCE.createTaggedValueReferenceChange(); + newElement.setLeftElement(object.getLeftElement()); + newElement.setRightElement(object.getRightElement()); + newElement.setReference(object.getReference()); + newElement.setRemote(object.isRemote()); + return newElement; + } + + + /** + * Inits the tagged value diff. + * + * @param newElement the new element + * @param attributeChange the attribute change + * @return the tagged value change + */ + protected TaggedValueChange initTaggedValueDiff(TaggedValueChange newElement, AttributeChange attributeChange) { + newElement.setLeftElement(attributeChange.getLeftElement()); + newElement.setRightElement(attributeChange.getRightElement()); + newElement.setAttribute(attributeChange.getAttribute()); + newElement.setRemote(attributeChange.isRemote()); + return newElement; + } +} diff --git a/deprecated/org.eclipse.papyrus.uml.compare/src/org/eclipse/papyrus/uml/compare/diff/extension/StyledDiffLabelSwitch.java b/deprecated/org.eclipse.papyrus.uml.compare/src/org/eclipse/papyrus/uml/compare/diff/extension/StyledDiffLabelSwitch.java new file mode 100644 index 00000000000..7174b88c1de --- /dev/null +++ b/deprecated/org.eclipse.papyrus.uml.compare/src/org/eclipse/papyrus/uml/compare/diff/extension/StyledDiffLabelSwitch.java @@ -0,0 +1,316 @@ +/***************************************************************************** + * Copyright (c) 2010 CEA LIST. + * + * + * 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: + * Tatiana Fesenko (CEA LIST) - Initial API and implementation + * + *****************************************************************************/ +package org.eclipse.papyrus.uml.compare.diff.extension; + +import org.eclipse.emf.compare.diff.metamodel.AttributeChange; +import org.eclipse.emf.compare.diff.metamodel.AttributeChangeLeftTarget; +import org.eclipse.emf.compare.diff.metamodel.AttributeChangeRightTarget; +import org.eclipse.emf.compare.diff.metamodel.DiffGroup; +import org.eclipse.emf.compare.diff.metamodel.DiffPackage; +import org.eclipse.emf.compare.diff.metamodel.ReferenceChange; +import org.eclipse.emf.compare.diff.metamodel.UpdateAttribute; +import org.eclipse.emf.ecore.EObject; +import org.eclipse.jface.viewers.ILabelProvider; +import org.eclipse.jface.viewers.StyledString; +import org.eclipse.papyrus.uml.compare.Messages; +import org.eclipse.papyrus.uml.compare.StyledMessageFormat; +import org.eclipse.papyrus.uml.compare.UMLCompareUtils; +import org.eclipse.papyrus.uml.compare.diff.metamodel.uml_diff_extension.AddStereotypeApplication; +import org.eclipse.papyrus.uml.compare.diff.metamodel.uml_diff_extension.CompareTwoElementsDiffModel; +import org.eclipse.papyrus.uml.compare.diff.metamodel.uml_diff_extension.RemoveStereotypeApplication; +import org.eclipse.papyrus.uml.compare.diff.metamodel.uml_diff_extension.TaggedValueChange; +import org.eclipse.papyrus.uml.compare.diff.metamodel.uml_diff_extension.TaggedValueChangeLeftTarget; +import org.eclipse.papyrus.uml.compare.diff.metamodel.uml_diff_extension.TaggedValueChangeRightTarget; +import org.eclipse.papyrus.uml.compare.diff.metamodel.uml_diff_extension.TaggedValueReferenceChange; +import org.eclipse.papyrus.uml.compare.diff.metamodel.uml_diff_extension.UpdateTaggedValue; +import org.eclipse.papyrus.uml.compare.diff.metamodel.uml_diff_extension.util.UMLDiffSwitch; +import org.eclipse.uml2.uml.util.UMLUtil; + + +/** + * Switch to return Styled label for the given DiffElement. + * Usually changed elements and number of chnages are shown in bold. + */ +public class StyledDiffLabelSwitch extends UMLDiffSwitch<StyledString> { + + /** The my domain element label provider. */ + private final ILabelProvider myDomainElementLabelProvider; + + /** + * Instantiates a new styled diff label switch. + * + * @param labelProvider the label provider + */ + public StyledDiffLabelSwitch(ILabelProvider labelProvider) { + myDomainElementLabelProvider = labelProvider; + } + + /* (non-Javadoc) + * @see org.eclipse.papyrus.uml.compare.diff.metamodel.uml_diff_extension.util.UMLDiffSwitch#defaultCase(org.eclipse.emf.ecore.EObject) + */ + @Override + public StyledString defaultCase(EObject object) { + int classifierID = object.eClass().getClassifierID(); + switch(classifierID) { + case DiffPackage.DIFF_GROUP: + { + DiffGroup diffGroup = (DiffGroup)object; + return caseDiffGroup(diffGroup); + } + case DiffPackage.UPDATE_ATTRIBUTE: + { + UpdateAttribute updateAttribute = (UpdateAttribute)object; + return caseUpdateAttribute(updateAttribute); + } + } + return null; + } + + /** + * Gets the label provider. + * + * @return the label provider + */ + private ILabelProvider getLabelProvider() { + return myDomainElementLabelProvider; + } + + /* (non-Javadoc) + * @see org.eclipse.papyrus.uml.compare.diff.metamodel.uml_diff_extension.util.UMLDiffSwitch#caseCompareTwoElementsDiffModel(org.eclipse.papyrus.uml.compare.diff.metamodel.uml_diff_extension.CompareTwoElementsDiffModel) + */ + @Override + public StyledString caseCompareTwoElementsDiffModel(CompareTwoElementsDiffModel object) { + int subchanges = ((DiffGroup)object.getOwnedElements().get(0)).getSubchanges(); + EObject leftElement = object.getLeftRoots().get(0); + String leftName = getLabelProvider().getText(leftElement); + EObject rightElement = object.getRightRoots().get(0); + String rightName = getLabelProvider().getText(rightElement); + + // String message = "%s change(s) between elements [%s] and [%s]"; + // return String.StyledMessageFormat.format(message, subchanges, leftName, rightName); + + return StyledMessageFormat.format(Messages.StyledDiffLabelSwitch_two_elements_model_text, String.valueOf(subchanges), leftName, rightName); + + } + + /* (non-Javadoc) + * @see org.eclipse.papyrus.uml.compare.diff.metamodel.uml_diff_extension.util.UMLDiffSwitch#caseAddStereotypeApplication(org.eclipse.papyrus.uml.compare.diff.metamodel.uml_diff_extension.AddStereotypeApplication) + */ + @Override + public StyledString caseAddStereotypeApplication(AddStereotypeApplication object) { + EObject element = object.getRightElement(); + String elementLabel = getLabelProvider().getText(element); + if(UMLCompareUtils.isStereotypeApplication(element)) { + elementLabel = getLabelProvider().getText(UMLUtil.getStereotype(element)); + } + return StyledMessageFormat.format(Messages.StyledDiffLabelSwitch_add_stereotype_application_text, elementLabel); + } + + /* (non-Javadoc) + * @see org.eclipse.papyrus.uml.compare.diff.metamodel.uml_diff_extension.util.UMLDiffSwitch#caseRemoveStereotypeApplication(org.eclipse.papyrus.uml.compare.diff.metamodel.uml_diff_extension.RemoveStereotypeApplication) + */ + @Override + public StyledString caseRemoveStereotypeApplication(RemoveStereotypeApplication object) { + EObject element = object.getLeftElement(); + String elementLabel = getLabelProvider().getText(element); + if(UMLCompareUtils.isStereotypeApplication(element)) { + elementLabel = getLabelProvider().getText(UMLUtil.getStereotype(element)); + } + return StyledMessageFormat.format(Messages.StyledDiffLabelSwitch_remove_stereotype_application_text, elementLabel); + } + + /* (non-Javadoc) + * @see org.eclipse.papyrus.uml.compare.diff.metamodel.uml_diff_extension.util.UMLDiffSwitch#caseTaggedValueChange(org.eclipse.papyrus.uml.compare.diff.metamodel.uml_diff_extension.TaggedValueChange) + */ + @Override + public StyledString caseTaggedValueChange(TaggedValueChange object) { + final String attributeLabel = getLabelProvider().getText(object.getAttribute()); + final String elementLabel = getLabelProvider().getText(object.getLeftElement()); + final Object leftValue = object.getLeftElement().eGet(object.getAttribute()); + final Object rightValue = object.getRightElement().eGet(object.getAttribute()); + final String leftValueString = attributeValueToString(leftValue); + final String rightValueString = attributeValueToString(rightValue); + + if(object.isRemote()) { + return StyledMessageFormat.format(Messages.StyledDiffLabelSwitch_tagged_value_changed_remote_text, elementLabel, leftValueString, rightValueString); + } + return StyledMessageFormat.format(Messages.StyledDiffLabelSwitch_tagged_value_changed_text, attributeLabel, leftValueString, rightValueString); + } + + /* (non-Javadoc) + * @see org.eclipse.papyrus.uml.compare.diff.metamodel.uml_diff_extension.util.UMLDiffSwitch#caseTaggedValueChangeLeftTarget(org.eclipse.papyrus.uml.compare.diff.metamodel.uml_diff_extension.TaggedValueChangeLeftTarget) + */ + @Override + public StyledString caseTaggedValueChangeLeftTarget(TaggedValueChangeLeftTarget object) { + + final String attributeLabel = getLabelProvider().getText(object.getAttribute()); + final String elementLabel = getLabelProvider().getText(object.getLeftElement()); + final Object rightValue = object.getRightElement().eGet(object.getAttribute()); + final String rightValueString = attributeValueToString(rightValue); + + if(object.isRemote()) { + return StyledMessageFormat.format(Messages.StyledDiffLabelSwitch_tagged_value_left_target_remote_text, elementLabel, rightValueString); + } + return StyledMessageFormat.format(Messages.StyledDiffLabelSwitch_tagged_value_left_target_text, attributeLabel, rightValueString); + } + + /* (non-Javadoc) + * @see org.eclipse.papyrus.uml.compare.diff.metamodel.uml_diff_extension.util.UMLDiffSwitch#caseTaggedValueChangeRightTarget(org.eclipse.papyrus.uml.compare.diff.metamodel.uml_diff_extension.TaggedValueChangeRightTarget) + */ + @Override + public StyledString caseTaggedValueChangeRightTarget(TaggedValueChangeRightTarget object) { + final String attributeLabel = getLabelProvider().getText(object.getAttribute()); + final String elementLabel = getLabelProvider().getText(object.getLeftElement()); + final Object leftValue = object.getLeftElement().eGet(object.getAttribute()); + final String leftValueString = attributeValueToString(leftValue); + + if(object.isRemote()) { + return StyledMessageFormat.format(Messages.StyledDiffLabelSwitch_tagged_value_right_target_remote_text, elementLabel, leftValueString); + } + return StyledMessageFormat.format(Messages.StyledDiffLabelSwitch_tagged_value_right_target_text, attributeLabel, leftValueString); + } + + /* (non-Javadoc) + * @see org.eclipse.papyrus.uml.compare.diff.metamodel.uml_diff_extension.util.UMLDiffSwitch#caseTaggedValueReferenceChange(org.eclipse.papyrus.uml.compare.diff.metamodel.uml_diff_extension.TaggedValueReferenceChange) + */ + @Override + public StyledString caseTaggedValueReferenceChange(TaggedValueReferenceChange object) { + final String referenceLabel = getLabelProvider().getText(object.getReference()); + final String elementLabel = getLabelProvider().getText(object.getLeftElement()); + + Object leftTaggedValue = UMLUtil.getBaseElement(object.getLeftElement()).getValue(UMLUtil.getStereotype(object.getLeftElement()), object.getReference().getName()); + Object rightTaggedValue = UMLUtil.getBaseElement(object.getRightElement()).getValue(UMLUtil.getStereotype(object.getRightElement()), object.getReference().getName()); + + String leftValue = getLabelProvider().getText((EObject)leftTaggedValue); + String rightValue = getLabelProvider().getText((EObject)rightTaggedValue); + + if(object.isRemote()) { + return StyledMessageFormat.format(Messages.StyledDiffLabelSwitch_tagged_value_reference_remote_text, elementLabel, leftValue, rightValue); + } + return StyledMessageFormat.format(Messages.StyledDiffLabelSwitch_tagged_value_reference_text, referenceLabel, leftValue, rightValue); + + } + + /* (non-Javadoc) + * @see org.eclipse.papyrus.uml.compare.diff.metamodel.uml_diff_extension.util.UMLDiffSwitch#caseUpdateTaggedValue(org.eclipse.papyrus.uml.compare.diff.metamodel.uml_diff_extension.UpdateTaggedValue) + */ + @Override + public StyledString caseUpdateTaggedValue(UpdateTaggedValue object) { + final String attributeLabel = getLabelProvider().getText(object.getAttribute()); + final String elementLabel = getLabelProvider().getText(object.getLeftElement()); + + Object leftTaggedValue = UMLUtil.getBaseElement(object.getLeftElement()).getValue(UMLUtil.getStereotype(object.getLeftElement()), object.getAttribute().getName()); + Object rightTaggedValue = UMLUtil.getBaseElement(object.getRightElement()).getValue(UMLUtil.getStereotype(object.getRightElement()), object.getAttribute().getName()); + + String leftValue = attributeValueToString(leftTaggedValue); + String rightValue = attributeValueToString(rightTaggedValue); + + if(object.isRemote()) { + return StyledMessageFormat.format(Messages.StyledDiffLabelSwitch_update_tagged_value_remote_text, elementLabel, leftValue, rightValue); + } + return StyledMessageFormat.format(Messages.StyledDiffLabelSwitch_update_tagged_value_text, attributeLabel, rightValue, leftValue); + } + + /** + * Case diff group. + * + * @param object the object + * @return the styled string + */ + public StyledString caseDiffGroup(DiffGroup object) { + final EObject parent = object.getRightParent(); + final String parentLabel; + if(parent != null) { + parentLabel = getLabelProvider().getText(parent); + } else { + parentLabel = Messages.StyledDiffLabelSwitch_root_text; + } + return StyledMessageFormat.format(Messages.StyledDiffLabelSwitch_diff_group_text, String.valueOf(object.getSubchanges()), parentLabel); + } + + /* (non-Javadoc) + * @see org.eclipse.papyrus.uml.compare.diff.metamodel.uml_diff_extension.util.UMLDiffSwitch#caseAttributeChange(org.eclipse.emf.compare.diff.metamodel.AttributeChange) + */ + @Override + public StyledString caseAttributeChange(AttributeChange object) { + return StyledMessageFormat.format(Messages.StyledDiffLabelSwitch_attribute_change_text, String.valueOf(object.isConflicting())); + } + + /* (non-Javadoc) + * @see org.eclipse.papyrus.uml.compare.diff.metamodel.uml_diff_extension.util.UMLDiffSwitch#caseAttributeChangeLeftTarget(org.eclipse.emf.compare.diff.metamodel.AttributeChangeLeftTarget) + */ + @Override + public StyledString caseAttributeChangeLeftTarget(AttributeChangeLeftTarget object) { + final String attributeLabel = getLabelProvider().getText(object.getAttribute()); + final String elementLabel = getLabelProvider().getText(object.getRightElement()); + + if(object.isRemote()) { + return StyledMessageFormat.format(Messages.StyledDiffLabelSwitch_attribute_change_left_target_remote_text, attributeValueToString(object.getLeftTarget()), attributeLabel, elementLabel); + } + return StyledMessageFormat.format(Messages.StyledDiffLabelSwitch_attribute_change_left_target_text, attributeValueToString(object.getLeftTarget()), attributeLabel, elementLabel); + } + + /* (non-Javadoc) + * @see org.eclipse.papyrus.uml.compare.diff.metamodel.uml_diff_extension.util.UMLDiffSwitch#caseAttributeChangeRightTarget(org.eclipse.emf.compare.diff.metamodel.AttributeChangeRightTarget) + */ + @Override + public StyledString caseAttributeChangeRightTarget(AttributeChangeRightTarget object) { + final String attributeLabel = getLabelProvider().getText(object.getAttribute()); + final String elementLabel = getLabelProvider().getText(object.getLeftElement()); + + if(object.isRemote()) { + return StyledMessageFormat.format(Messages.StyledDiffLabelSwitch_attribute_change_right_target_remote_text, attributeValueToString(object.getRightTarget()), attributeLabel, elementLabel); + } + return StyledMessageFormat.format(Messages.StyledDiffLabelSwitch_attribute_change_right_target_text, attributeValueToString(object.getRightTarget()), attributeLabel, elementLabel); + } + + /* (non-Javadoc) + * @see org.eclipse.papyrus.uml.compare.diff.metamodel.uml_diff_extension.util.UMLDiffSwitch#caseUpdateAttribute(org.eclipse.emf.compare.diff.metamodel.UpdateAttribute) + */ + @Override + public StyledString caseUpdateAttribute(UpdateAttribute object) { + final String attributeLabel = getLabelProvider().getText(object.getAttribute()); + final String elementLabel = getLabelProvider().getText(object.getLeftElement()); + final Object leftValue = object.getLeftElement().eGet(object.getAttribute()); + final Object rightValue = object.getRightElement().eGet(object.getAttribute()); + + if(object.isRemote()) { + return StyledMessageFormat.format(Messages.StyledDiffLabelSwitch_update_attribute_remote_text, attributeLabel, elementLabel, attributeValueToString(leftValue), attributeValueToString(rightValue)); + } + + if(object.isConflicting()) { + return StyledMessageFormat.format(Messages.StyledDiffLabelSwitch_update_attribute_conflicting_text, attributeLabel, attributeValueToString(rightValue), attributeValueToString(leftValue)); + } + return StyledMessageFormat.format(Messages.StyledDiffLabelSwitch_update_attribute_text, attributeLabel, elementLabel, attributeValueToString(rightValue), attributeValueToString(leftValue)); + } + + /* (non-Javadoc) + * @see org.eclipse.papyrus.uml.compare.diff.metamodel.uml_diff_extension.util.UMLDiffSwitch#caseReferenceChange(org.eclipse.emf.compare.diff.metamodel.ReferenceChange) + */ + @Override + public StyledString caseReferenceChange(ReferenceChange object) { + return StyledMessageFormat.format(Messages.StyledDiffLabelSwitch_reference_chnage_text, String.valueOf(object.isConflicting())); + } + + /** + * Attribute value to string. + * + * @param attributeValue the attribute value + * @return the string + */ + private String attributeValueToString(Object attributeValue) { + return attributeValue == null ? Messages.StyledDiffLabelSwitch_null_value_text : attributeValue.toString(); + } + +} diff --git a/deprecated/org.eclipse.papyrus.uml.compare/src/org/eclipse/papyrus/uml/compare/diff/extension/UMLStyledStructureLabelProvider.java b/deprecated/org.eclipse.papyrus.uml.compare/src/org/eclipse/papyrus/uml/compare/diff/extension/UMLStyledStructureLabelProvider.java new file mode 100644 index 00000000000..19fa6899979 --- /dev/null +++ b/deprecated/org.eclipse.papyrus.uml.compare/src/org/eclipse/papyrus/uml/compare/diff/extension/UMLStyledStructureLabelProvider.java @@ -0,0 +1,99 @@ +/***************************************************************************** + * Copyright (c) 2010 CEA LIST. + * + * + * 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: + * Tatiana Fesenko (CEA LIST) - Initial API and implementation + * + *****************************************************************************/ +package org.eclipse.papyrus.uml.compare.diff.extension; + +import org.eclipse.emf.compare.diff.metamodel.AbstractDiffExtension; +import org.eclipse.emf.ecore.EObject; +import org.eclipse.jface.viewers.ILabelProvider; +import org.eclipse.jface.viewers.StyledCellLabelProvider; +import org.eclipse.jface.viewers.StyledString; +import org.eclipse.jface.viewers.ViewerCell; +import org.eclipse.papyrus.uml.compare.diff.metamodel.uml_diff_extension.util.UMLDiffSwitch; +import org.eclipse.swt.graphics.Image; + + +/** + * LabelProvider that returns Styled label. + * Usually changed elements and number of changes are shown in bold. + */ +public class UMLStyledStructureLabelProvider extends StyledCellLabelProvider implements ILabelProvider { + + /** The my delegate. */ + private final ILabelProvider myDelegate; + + /** The my diff label switch. */ + private final UMLDiffSwitch<StyledString> myDiffLabelSwitch; + + /** + * Instantiates a new uML styled structure label provider. + * + * @param delegate the delegate + */ + public UMLStyledStructureLabelProvider(ILabelProvider delegate) { + myDelegate = delegate; + myDiffLabelSwitch = new StyledDiffLabelSwitch(delegate); + } + + /* (non-Javadoc) + * @see org.eclipse.jface.viewers.ILabelProvider#getImage(java.lang.Object) + */ + public Image getImage(Object element) { + if(element instanceof AbstractDiffExtension) { + return (Image)((AbstractDiffExtension)element).getImage(); + } + return myDelegate.getImage(element); + } + + /* (non-Javadoc) + * @see org.eclipse.jface.viewers.ILabelProvider#getText(java.lang.Object) + */ + public String getText(Object element) { + return getStyledText(element).getString(); + } + + /* (non-Javadoc) + * @see org.eclipse.jface.viewers.StyledCellLabelProvider#update(org.eclipse.jface.viewers.ViewerCell) + */ + public void update(ViewerCell cell) { + StyledString string = getStyledText(cell.getElement()); + cell.setText(string.getString()); + cell.setStyleRanges(string.getStyleRanges()); + cell.setImage(getImage(cell.getElement())); + super.update(cell); + } + + /** + * Gets the styled text. + * + * @param element the element + * @return the styled text + */ + public StyledString getStyledText(Object element) { + if(element instanceof EObject) { + StyledString diffElementLabel = myDiffLabelSwitch.doSwitch((EObject)element); + if(diffElementLabel != null) { + return diffElementLabel; + } + } + String elementText = myDelegate.getText(element); + if (elementText != null) { + StyledString styledString = new StyledString(); + styledString.append(myDelegate.getText(element)); + return styledString; + } + return null; + } + + +} diff --git a/deprecated/org.eclipse.papyrus.uml.compare/src/org/eclipse/papyrus/uml/compare/element/ElementContentDiffEngine.java b/deprecated/org.eclipse.papyrus.uml.compare/src/org/eclipse/papyrus/uml/compare/element/ElementContentDiffEngine.java new file mode 100644 index 00000000000..bf30170b323 --- /dev/null +++ b/deprecated/org.eclipse.papyrus.uml.compare/src/org/eclipse/papyrus/uml/compare/element/ElementContentDiffEngine.java @@ -0,0 +1,101 @@ +/***************************************************************************** + * Copyright (c) 2010 CEA LIST. + * + * + * 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: + * Tatiana Fesenko (CEA LIST) - Initial API and implementation + * + *****************************************************************************/ +package org.eclipse.papyrus.uml.compare.element; + +import org.eclipse.emf.compare.diff.metamodel.DiffElement; +import org.eclipse.emf.compare.diff.metamodel.DiffGroup; +import org.eclipse.emf.compare.diff.metamodel.DiffModel; +import org.eclipse.emf.compare.diff.metamodel.MoveModelElement; +import org.eclipse.emf.ecore.EObject; +import org.eclipse.papyrus.uml.compare.diff.PapyrusDiffEngine; +import org.eclipse.papyrus.uml.compare.diff.metamodel.uml_diff_extension.CompareTwoElementsDiffModel; +import org.eclipse.papyrus.uml.compare.diff.metamodel.uml_diff_extension.UMLDiffFactory; + + +/** + /** + * The implementation of DiffEngine to compare two arbitrary elements, not nesseserily diagrams + */ +public class ElementContentDiffEngine extends PapyrusDiffEngine { + + /** The my left. */ + private final EObject myLeft; + + /** The my right. */ + private final EObject myRight; + + /** + * Instantiates a new element content diff engine. + * + * @param left the left + * @param right the right + */ + public ElementContentDiffEngine(EObject left, EObject right) { + this.myLeft = left; + this.myRight = right; + } + + /* (non-Javadoc) + * @see org.eclipse.emf.compare.diff.engine.GenericDiffEngine#addInContainerPackage(org.eclipse.emf.compare.diff.metamodel.DiffGroup, org.eclipse.emf.compare.diff.metamodel.DiffElement, org.eclipse.emf.ecore.EObject) + */ + @Override + protected void addInContainerPackage(DiffGroup root, DiffElement operation, EObject targetParent) { +// if(targetParent == myLeft || targetParent == myRight) { +// root.getSubDiffElements().add(operation); +// return; +// } + super.addInContainerPackage(root, operation, targetParent); + } + + /* (non-Javadoc) + * @see org.eclipse.papyrus.uml.compare.diff.PapyrusDiffEngine#postProcess(org.eclipse.emf.compare.diff.metamodel.DiffModel) + */ + @Override + protected DiffModel postProcess(DiffModel diffModel) { + super.postProcess(diffModel); + //#336361 - [UML Compare] Compare two elements: show right element as root + DiffElement newRoot = findDiffElementFor(diffModel, myRight); + CompareTwoElementsDiffModel newRootExt = buildCompareTwoElementsDiff(diffModel, newRoot); + return newRootExt; + } + + /** + * Builds the compare two elements diff. + * + * @param object the object + * @param newRott the new rott + * @return the compare two elements diff model + */ + private CompareTwoElementsDiffModel buildCompareTwoElementsDiff(DiffModel object, DiffElement newRott) { + CompareTwoElementsDiffModel newElement = UMLDiffFactory.eINSTANCE.createCompareTwoElementsDiffModel(); + newElement.getLeftRoots().add(myLeft); + newElement.getRightRoots().add(myRight); +// newElement.getAncestorRoots().addAll(object.getAncestorRoots()); + newElement.getOwnedElements().add(newRott); + return newElement; + } + + /* (non-Javadoc) + * @see org.eclipse.papyrus.uml.compare.diff.PapyrusDiffEngine#visitElement(org.eclipse.emf.compare.diff.metamodel.DiffModel, org.eclipse.emf.compare.diff.metamodel.DiffElement) + */ + @Override + protected void visitElement(DiffModel root, DiffElement diffElement) { + super.visitElement(root, diffElement); + if (diffElement instanceof MoveModelElement) { + // don't show 'element moved for the root elements' + hideElement(diffElement, null); + } + } + +} diff --git a/deprecated/org.eclipse.papyrus.uml.compare/src/org/eclipse/papyrus/uml/compare/element/ElementContentMatchEngine.java b/deprecated/org.eclipse.papyrus.uml.compare/src/org/eclipse/papyrus/uml/compare/element/ElementContentMatchEngine.java new file mode 100644 index 00000000000..1f2c6f8c8f9 --- /dev/null +++ b/deprecated/org.eclipse.papyrus.uml.compare/src/org/eclipse/papyrus/uml/compare/element/ElementContentMatchEngine.java @@ -0,0 +1,110 @@ +/***************************************************************************** + * Copyright (c) 2010 CEA LIST. + * + * + * 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: + * Tatiana Fesenko (CEA LIST) - Initial API and implementation + * + *****************************************************************************/ +package org.eclipse.papyrus.uml.compare.element; + +import org.eclipse.emf.compare.FactoryException; +import org.eclipse.emf.compare.match.engine.AbstractSimilarityChecker; +import org.eclipse.emf.compare.match.statistic.MetamodelFilter; +import org.eclipse.emf.ecore.EObject; +import org.eclipse.emf.ecore.resource.Resource; +import org.eclipse.papyrus.uml.compare.match.PapyrusMatchEngine; + +/** + * The implementation of MatchEngine to compare two arbitrary elements, not nesseserily diagrams + */ +public class ElementContentMatchEngine extends PapyrusMatchEngine { + + /** The my left. */ + private final EObject myLeft; + + /** The my right. */ + private final EObject myRight; + + /** + * Instantiates a new element content match engine. + * + * @param left the left + * @param right the right + */ + public ElementContentMatchEngine(EObject left, EObject right) { + this.myLeft = left; + this.myRight = right; + } + + /* (non-Javadoc) + * @see org.eclipse.papyrus.uml.compare.match.PapyrusMatchEngine#prepareChecker() + */ + @Override + protected AbstractSimilarityChecker prepareChecker() { + return new AlwaysSimilarChecker(filter, super.prepareChecker()); + } + + /** + * The Class AlwaysSimilarChecker. + */ + private class AlwaysSimilarChecker extends AbstractSimilarityChecker { + + /** The delegate. */ + private AbstractSimilarityChecker delegate; + + /** + * Instantiates a new always similar checker. + * + * @param filter the filter + * @param fallback the fallback + */ + public AlwaysSimilarChecker(MetamodelFilter filter, AbstractSimilarityChecker fallback) { + super(filter); + this.delegate = fallback; + } + + /* (non-Javadoc) + * @see org.eclipse.emf.compare.match.engine.AbstractSimilarityChecker#isSimilar(org.eclipse.emf.ecore.EObject, org.eclipse.emf.ecore.EObject) + */ + /** + * The standard AbstractSimilarityChecker checks the parent of the elements, + * thus, compared elements won't be considered similar. + * To avoid this problem this method always returns true + **/ + @Override + public boolean isSimilar(EObject obj1, EObject obj2) throws FactoryException { + return true; + } + + /* (non-Javadoc) + * @see org.eclipse.emf.compare.match.engine.AbstractSimilarityChecker#init(org.eclipse.emf.ecore.EObject, org.eclipse.emf.ecore.EObject) + */ + @Override + public void init(EObject leftObject, EObject rightObject) throws FactoryException { + delegate.init(leftObject, rightObject); + } + + /* (non-Javadoc) + * @see org.eclipse.emf.compare.match.engine.AbstractSimilarityChecker#init(org.eclipse.emf.ecore.resource.Resource, org.eclipse.emf.ecore.resource.Resource) + */ + @Override + public void init(Resource leftResource, Resource rightResource) throws FactoryException { + delegate.init(leftResource, rightResource); + } + + /* (non-Javadoc) + * @see org.eclipse.emf.compare.match.engine.AbstractSimilarityChecker#absoluteMetric(org.eclipse.emf.ecore.EObject, org.eclipse.emf.ecore.EObject) + */ + @Override + public double absoluteMetric(EObject obj1, EObject obj2) throws FactoryException { + return delegate.absoluteMetric(obj1, obj2); + } + } + +} diff --git a/deprecated/org.eclipse.papyrus.uml.compare/src/org/eclipse/papyrus/uml/compare/match/PapyrusMatchEngine.java b/deprecated/org.eclipse.papyrus.uml.compare/src/org/eclipse/papyrus/uml/compare/match/PapyrusMatchEngine.java new file mode 100644 index 00000000000..078589b9c8a --- /dev/null +++ b/deprecated/org.eclipse.papyrus.uml.compare/src/org/eclipse/papyrus/uml/compare/match/PapyrusMatchEngine.java @@ -0,0 +1,69 @@ +/*****************************************************************************
+ * Copyright (c) 2010 CEA LIST.
+ *
+ *
+ * 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:
+ * Tatiana Fesenko (CEA LIST) - Initial API and implementation
+ *
+ *****************************************************************************/
+package org.eclipse.papyrus.uml.compare.match;
+
+import java.util.ArrayList;
+import java.util.Collections;
+import java.util.List;
+import java.util.Map;
+
+import org.eclipse.emf.compare.match.MatchOptions;
+import org.eclipse.emf.compare.match.engine.GenericMatchEngine;
+import org.eclipse.emf.compare.match.engine.IMatchScope;
+import org.eclipse.emf.compare.match.metamodel.MatchModel;
+import org.eclipse.emf.ecore.EObject;
+import org.eclipse.emf.ecore.resource.Resource;
+import org.eclipse.uml2.uml.Element;
+
+
+/**
+ * Implementation of MatchEngine for UML Diagrams:
+ * <li>Processes changes in stereotypes and tagged values as children of the base element, not of resource</li>
+ */
+public class PapyrusMatchEngine extends GenericMatchEngine {
+
+ /* (non-Javadoc)
+ * @see org.eclipse.emf.compare.match.engine.GenericMatchEngine#resourceMatch(org.eclipse.emf.ecore.resource.Resource, org.eclipse.emf.ecore.resource.Resource, java.util.Map)
+ */
+ @Override
+ public MatchModel resourceMatch(Resource leftResource, Resource rightResource, Map<String, Object> optionMap) throws InterruptedException {
+ optionMap.put(MatchOptions.OPTION_MATCH_SCOPE_PROVIDER, new PapyrusMatchScopeProvider(leftResource, rightResource));
+ return super.resourceMatch(leftResource, rightResource, optionMap);
+ }
+
+ /* (non-Javadoc)
+ * @see org.eclipse.emf.compare.match.engine.GenericMatchEngine#getScopeInternalContents(org.eclipse.emf.ecore.EObject, org.eclipse.emf.compare.match.engine.IMatchScope)
+ */
+ @Override
+ protected List<EObject> getScopeInternalContents(EObject eObject, IMatchScope scope) {
+ ArrayList<EObject> result = new ArrayList<EObject>(super.getScopeInternalContents(eObject, scope));
+ result.addAll(getStereotypeApplications(eObject));
+ return result;
+ }
+
+ /**
+ * Gets the stereotype applications.
+ *
+ * @param eObject the e object
+ * @return the stereotype applications
+ */
+ private List<EObject> getStereotypeApplications(EObject eObject) {
+ if(eObject instanceof Element) {
+ return ((Element)eObject).getStereotypeApplications();
+ } else {
+ return Collections.emptyList();
+ }
+ }
+
+}
diff --git a/deprecated/org.eclipse.papyrus.uml.compare/src/org/eclipse/papyrus/uml/compare/match/PapyrusMatchScopeProvider.java b/deprecated/org.eclipse.papyrus.uml.compare/src/org/eclipse/papyrus/uml/compare/match/PapyrusMatchScopeProvider.java new file mode 100644 index 00000000000..497de7fbb3e --- /dev/null +++ b/deprecated/org.eclipse.papyrus.uml.compare/src/org/eclipse/papyrus/uml/compare/match/PapyrusMatchScopeProvider.java @@ -0,0 +1,89 @@ +/*****************************************************************************
+ * Copyright (c) 2010 CEA LIST.
+ *
+ *
+ * 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:
+ * Tatiana Fesenko (CEA LIST) - Initial API and implementation
+ *
+ *****************************************************************************/
+package org.eclipse.papyrus.uml.compare.match;
+
+import org.eclipse.emf.compare.match.engine.GenericMatchScopeProvider;
+import org.eclipse.emf.compare.match.engine.IMatchScope;
+import org.eclipse.emf.ecore.EObject;
+import org.eclipse.emf.ecore.resource.Resource;
+import org.eclipse.papyrus.uml.compare.UMLCompareUtils;
+import org.eclipse.uml2.uml.util.UMLUtil;
+
+
+/**
+ * Implementation of GenericMatchScopeProvider for UML Diagrams:
+ * <li>Processes changes in stereotypes and tagged values as children of the base element, not of resource</li>
+ */
+public class PapyrusMatchScopeProvider extends GenericMatchScopeProvider {
+
+ /**
+ * Instantiates a new papyrus match scope provider.
+ *
+ * @param leftResource the left resource
+ * @param rightResource the right resource
+ */
+ public PapyrusMatchScopeProvider(Resource leftResource, Resource rightResource) {
+ super(leftResource, rightResource);
+ }
+
+ /* (non-Javadoc)
+ * @see org.eclipse.emf.compare.match.engine.GenericMatchScopeProvider#getLeftScope()
+ */
+ @Override
+ public IMatchScope getLeftScope() {
+ return new PapyrusMatchScope(super.getLeftScope());
+ }
+
+ /* (non-Javadoc)
+ * @see org.eclipse.emf.compare.match.engine.GenericMatchScopeProvider#getRightScope()
+ */
+ @Override
+ public IMatchScope getRightScope() {
+ return new PapyrusMatchScope(super.getRightScope());
+ }
+
+ /**
+ * The Class PapyrusMatchScope.
+ */
+ private static class PapyrusMatchScope implements IMatchScope {
+
+ /** The my scope. */
+ private final IMatchScope myScope;
+
+ /**
+ * Instantiates a new papyrus match scope.
+ *
+ * @param scope the scope
+ */
+ private PapyrusMatchScope(IMatchScope scope) {
+ myScope = scope;
+ }
+
+ /* (non-Javadoc)
+ * @see org.eclipse.emf.compare.match.engine.IMatchScope#isInScope(org.eclipse.emf.ecore.EObject)
+ */
+ public boolean isInScope(EObject eObject) {
+ return myScope.isInScope(eObject) && !UMLCompareUtils.isStereotypeApplication(eObject);
+ }
+
+ /* (non-Javadoc)
+ * @see org.eclipse.emf.compare.match.engine.IMatchScope#isInScope(org.eclipse.emf.ecore.resource.Resource)
+ */
+ public boolean isInScope(Resource resource) {
+ return myScope.isInScope(resource);
+ }
+
+ }
+
+}
diff --git a/deprecated/org.eclipse.papyrus.uml.compare/src/org/eclipse/papyrus/uml/compare/ui/PapyrusLabelProvider.java b/deprecated/org.eclipse.papyrus.uml.compare/src/org/eclipse/papyrus/uml/compare/ui/PapyrusLabelProvider.java new file mode 100644 index 00000000000..3f45c07d1ce --- /dev/null +++ b/deprecated/org.eclipse.papyrus.uml.compare/src/org/eclipse/papyrus/uml/compare/ui/PapyrusLabelProvider.java @@ -0,0 +1,160 @@ +/***************************************************************************** + * Copyright (c) 2010 CEA LIST. + * + * + * 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: + * Tatiana Fesenko (CEA LIST) - Initial API and implementation + * + *****************************************************************************/ +package org.eclipse.papyrus.uml.compare.ui; + +import java.lang.reflect.InvocationTargetException; +import java.lang.reflect.Method; +import java.util.List; + +import org.eclipse.core.runtime.IStatus; +import org.eclipse.core.runtime.Status; +import org.eclipse.emf.ecore.EObject; +import org.eclipse.emf.facet.infra.browser.custom.MetamodelView; +import org.eclipse.emf.facet.infra.browser.custom.core.CustomizationsCatalog; +import org.eclipse.emf.facet.infra.browser.uicore.CustomizableModelLabelProvider; +import org.eclipse.emf.facet.infra.browser.uicore.CustomizationManager; +import org.eclipse.emf.facet.infra.browser.uicore.internal.AppearanceConfiguration; +import org.eclipse.emf.facet.infra.browser.uicore.internal.model.ITreeElement; +import org.eclipse.emf.facet.infra.browser.uicore.internal.model.ModelElementItem; +import org.eclipse.papyrus.uml.compare.Activator; +import org.eclipse.swt.graphics.Image; + + +/** + * PapyrusLabelProvider provides the same labels and icons as one can find in the Model Explorer. + */ +// Not placed in the UI plugin because it is used in the subclasses of AbstractDiffExtension, in getText() method +public class PapyrusLabelProvider extends CustomizableModelLabelProvider { + + + /** The configuration. */ + private AppearanceConfiguration configuration; + + /** + * Constructor. + * + * @param customizationManager the customization manager + */ + public PapyrusLabelProvider(CustomizationManager customizationManager) { + super(customizationManager); + configuration = getAppearanceConfiguration(customizationManager); + } + + /** + * Instantiates a new papyrus label provider. + */ + public PapyrusLabelProvider() { + this(initCustomizationManager()); + } + + /** + * Inits the customization manager. + * + * @return the customization manager + */ + private static CustomizationManager initCustomizationManager() { + CustomizationManager manager = new CustomizationManager(); + try { + List<MetamodelView> registryDefaultCustomizations = CustomizationsCatalog.getInstance().getRegistryDefaultCustomizations(); + for(MetamodelView metamodelView : registryDefaultCustomizations) { + manager.registerCustomization(metamodelView); + } + manager.loadCustomizations(); + + } catch (Throwable e) { + Activator.getDefault().getLog().log(new Status(IStatus.ERROR, Activator.PLUGIN_ID, "Error initializing customizations", e)); //$NON-NLS-1$ + } + manager.setShowFullQualifiedNames(false); + manager.setShowURI(true); + manager.setShowDerivedLinks(false); + return manager; + } + + /** + * Gets the appearance configuration. + * + * @param customizationManager2 the customization manager2 + * @return the appearance configuration + */ + private AppearanceConfiguration getAppearanceConfiguration(CustomizationManager customizationManager2) { + Method getApperanceConfigurationMethod; + try { + getApperanceConfigurationMethod = CustomizationManager.class.getDeclaredMethod("getAppearanceConfiguration"); //$NON-NLS-1$ + if(getApperanceConfigurationMethod != null) { + getApperanceConfigurationMethod.setAccessible(true); + return (AppearanceConfiguration)getApperanceConfigurationMethod.invoke(customizationManager2); + } + } catch (SecurityException e) { + Activator.logError(e); + } catch (NoSuchMethodException e) { + Activator.logError(e); + } catch (IllegalArgumentException e) { + Activator.logError(e); + } catch (IllegalAccessException e) { + Activator.logError(e); + } catch (InvocationTargetException e) { + Activator.logError(e); + } + return new AppearanceConfiguration(null); // default one. + } + + /** + * Gets the text. + * + * @param element the element + * @return the text + * {@inheritDoc} + */ + @Override + public String getText(Object element) { + if(element == null) { + return ""; //$NON-NLS-1$ + } + if(element instanceof EObject) { + ITreeElement treeElement = getTreeElement((EObject)element); + return super.getText(treeElement); + } + return super.getText(element); + } + + /* (non-Javadoc) + * @see org.eclipse.emf.facet.infra.browser.uicore.CustomizableModelLabelProvider#getImage(java.lang.Object) + */ + @Override + public Image getImage(Object element) { + if(element == null) { + return null; + } + if(element instanceof EObject) { + ITreeElement treeElement = getTreeElement((EObject)element); + return super.getImage(treeElement); + } + return super.getImage(element); + } + + + /** + * Gets the tree element. + * + * @param eObject the e object + * @return the tree element + */ + private ITreeElement getTreeElement(EObject eObject) { + if(eObject == null) { + return null; + } + return new ModelElementItem(eObject, getTreeElement(eObject.eContainer()), configuration); + } + +} |