From b7f2a49695f5274028f7dcae70727960cf4c0b9e Mon Sep 17 00:00:00 2001
From: Vincent Aravantinos <aravantinos@fortiss.org>
Date: Thu, 6 Mar 2014 18:02:44 +0000
Subject: [PATCH] code improvement refs 1925

---
 .../tooling/kernel/ui/util/CopyPasteUtils.java   | 16 ++++++++--------
 .../trunk/model/kernel.ecore                     |  3 ++-
 .../trunk/model/kernel.genmodel                  | 10 +++++-----
 3 files changed, 15 insertions(+), 14 deletions(-)

diff --git a/org.fortiss.tooling.kernel.ui/trunk/src/org/fortiss/tooling/kernel/ui/util/CopyPasteUtils.java b/org.fortiss.tooling.kernel.ui/trunk/src/org/fortiss/tooling/kernel/ui/util/CopyPasteUtils.java
index 19275bfc4..33814a339 100644
--- a/org.fortiss.tooling.kernel.ui/trunk/src/org/fortiss/tooling/kernel/ui/util/CopyPasteUtils.java
+++ b/org.fortiss.tooling.kernel.ui/trunk/src/org/fortiss/tooling/kernel/ui/util/CopyPasteUtils.java
@@ -32,7 +32,7 @@ import org.eclipse.swt.dnd.TextTransfer;
 import org.eclipse.swt.dnd.Transfer;
 import org.eclipse.swt.widgets.Display;
 import org.fortiss.tooling.kernel.extension.data.IElementCompositionContext;
-import org.fortiss.tooling.kernel.model.SpeciallyCopyiable;
+import org.fortiss.tooling.kernel.model.ISpeciallyCopyiable;
 import org.fortiss.tooling.kernel.service.IElementCompositorService;
 import org.fortiss.tooling.kernel.ui.dnd.CompositionServiceLocalCopyPasteTransfer;
 
@@ -45,7 +45,7 @@ import org.fortiss.tooling.kernel.ui.dnd.CompositionServiceLocalCopyPasteTransfe
  * 
  * @author $Author$
  * @version $Rev$
- * @ConQAT.Rating YELLOW Hash: E84BD272D73E0D834E3535040340CBDD
+ * @ConQAT.Rating YELLOW Hash: C10175C80531676B29BE8895D87819F2
  */
 public class CopyPasteUtils {
 
@@ -66,12 +66,12 @@ public class CopyPasteUtils {
 				copier.copyReferences();
 				i++;
 			}
-			EList<SpeciallyCopyiable> specialSel =
-					pickInstanceOf(SpeciallyCopyiable.class, new BasicEList<EObject>(sel));
-			for(SpeciallyCopyiable obj : specialSel) {
+			EList<ISpeciallyCopyiable> specialSel =
+					pickInstanceOf(ISpeciallyCopyiable.class, new BasicEList<EObject>(sel));
+			for(ISpeciallyCopyiable obj : specialSel) {
 				obj.completeCopyEnvironment(copier);
 			}
-			for(SpeciallyCopyiable obj : specialSel) {
+			for(ISpeciallyCopyiable obj : specialSel) {
 				obj.copyConnections(copier);
 			}
 			Clipboard clipboard = new Clipboard(Display.getDefault());
@@ -120,8 +120,8 @@ public class CopyPasteUtils {
 			IElementCompositorService.INSTANCE.compose(target, copy, context);
 		}
 		for(EObject obj : getClipBoardContent()) {
-			if(obj instanceof SpeciallyCopyiable) {
-				((SpeciallyCopyiable)obj).copyConnections(copier);
+			if(obj instanceof ISpeciallyCopyiable) {
+				((ISpeciallyCopyiable)obj).copyConnections(copier);
 			}
 		}
 	}
diff --git a/org.fortiss.tooling.kernel/trunk/model/kernel.ecore b/org.fortiss.tooling.kernel/trunk/model/kernel.ecore
index 7d5cad2ab..018e586b8 100644
--- a/org.fortiss.tooling.kernel/trunk/model/kernel.ecore
+++ b/org.fortiss.tooling.kernel/trunk/model/kernel.ecore
@@ -100,7 +100,8 @@
   <eClassifiers xsi:type="ecore:EClass" name="IExternalDocumentReference">
     <eStructuralFeatures xsi:type="ecore:EAttribute" name="uri" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
   </eClassifiers>
-  <eClassifiers xsi:type="ecore:EClass" name="SpeciallyCopyiable">
+  <eClassifiers xsi:type="ecore:EClass" name="ISpeciallyCopyiable" abstract="true"
+      interface="true">
     <eOperations name="completeCopyEnvironment">
       <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
         <details key="body" value="/** To be implemented by subclasses. **/"/>
diff --git a/org.fortiss.tooling.kernel/trunk/model/kernel.genmodel b/org.fortiss.tooling.kernel/trunk/model/kernel.genmodel
index 27e1a2d44..dacd48edf 100644
--- a/org.fortiss.tooling.kernel/trunk/model/kernel.genmodel
+++ b/org.fortiss.tooling.kernel/trunk/model/kernel.genmodel
@@ -46,12 +46,12 @@
     <genClasses ecoreClass="kernel.ecore#//IExternalDocumentReference">
       <genFeatures createChild="false" ecoreFeature="ecore:EAttribute kernel.ecore#//IExternalDocumentReference/uri"/>
     </genClasses>
-    <genClasses ecoreClass="kernel.ecore#//SpeciallyCopyiable">
-      <genOperations ecoreOperation="kernel.ecore#//SpeciallyCopyiable/completeCopyEnvironment">
-        <genParameters ecoreParameter="kernel.ecore#//SpeciallyCopyiable/completeCopyEnvironment/copyMap"/>
+    <genClasses image="false" ecoreClass="kernel.ecore#//ISpeciallyCopyiable">
+      <genOperations ecoreOperation="kernel.ecore#//ISpeciallyCopyiable/completeCopyEnvironment">
+        <genParameters ecoreParameter="kernel.ecore#//ISpeciallyCopyiable/completeCopyEnvironment/copyMap"/>
       </genOperations>
-      <genOperations ecoreOperation="kernel.ecore#//SpeciallyCopyiable/copyConnections">
-        <genParameters ecoreParameter="kernel.ecore#//SpeciallyCopyiable/copyConnections/copyMap"/>
+      <genOperations ecoreOperation="kernel.ecore#//ISpeciallyCopyiable/copyConnections">
+        <genParameters ecoreParameter="kernel.ecore#//ISpeciallyCopyiable/copyConnections/copyMap"/>
       </genOperations>
     </genClasses>
   </genPackages>
-- 
GitLab