Skip to main content
aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMartin Fluegge2011-08-05 16:17:32 +0000
committerMartin Fluegge2011-08-05 16:17:32 +0000
commitdb6239bc0805ef6620c1e1e550dad6832a3d199f (patch)
tree5334b80eb825f47b027a433aa2006689739970d7 /plugins/org.eclipse.emf.cdo.dawn.codegen.dawngenmodel.emf
parente19c81c05a03bf3a3fef7972a0f3cf631ebe7b2b (diff)
downloadcdo-db6239bc0805ef6620c1e1e550dad6832a3d199f.tar.gz
cdo-db6239bc0805ef6620c1e1e550dad6832a3d199f.tar.xz
cdo-db6239bc0805ef6620c1e1e550dad6832a3d199f.zip
[352823] [Dawn] EMF runtime compatibility issue and duplicate code in test models
https://bugs.eclipse.org/bugs/show_bug.cgi?id=352823
Diffstat (limited to 'plugins/org.eclipse.emf.cdo.dawn.codegen.dawngenmodel.emf')
-rw-r--r--plugins/org.eclipse.emf.cdo.dawn.codegen.dawngenmodel.emf/META-INF/MANIFEST.MF2
-rw-r--r--plugins/org.eclipse.emf.cdo.dawn.codegen.dawngenmodel.emf/model/DawnGenModel.emf.genmodel2
-rw-r--r--plugins/org.eclipse.emf.cdo.dawn.codegen.dawngenmodel.emf/src-gen/org/eclipse/emf/cdo/dawn/codegen/dawngenmodel/emf/dawnEmfGenmodel/util/DawnEmfGenmodelSwitch.java39
3 files changed, 29 insertions, 14 deletions
diff --git a/plugins/org.eclipse.emf.cdo.dawn.codegen.dawngenmodel.emf/META-INF/MANIFEST.MF b/plugins/org.eclipse.emf.cdo.dawn.codegen.dawngenmodel.emf/META-INF/MANIFEST.MF
index 21bc4f7fdf..90ea67793f 100644
--- a/plugins/org.eclipse.emf.cdo.dawn.codegen.dawngenmodel.emf/META-INF/MANIFEST.MF
+++ b/plugins/org.eclipse.emf.cdo.dawn.codegen.dawngenmodel.emf/META-INF/MANIFEST.MF
@@ -9,7 +9,7 @@ Bundle-Localization: plugin
Bundle-RequiredExecutionEnvironment: J2SE-1.5
Require-Bundle: org.eclipse.core.runtime;bundle-version="[3.5.0,4.0.0)",
org.eclipse.emf.ecore;bundle-version="[2.6.0,3.0.0)";visibility:=reexport,
- org.eclipse.emf.cdo.dawn.codegen.dawngenmodel;bundle-version="[1.0.0,2.0.0)",
+ org.eclipse.emf.cdo.dawn.codegen.dawngenmodel;bundle-version="[2.0.0,3.0.0)",
org.eclipse.emf.cdo.dawn.codegen;bundle-version="[1.0.0,2.0.0)",
org.eclipse.emf.mwe.core;bundle-version="[1.0.0,2.0.0)",
org.eclipse.emf.codegen.ecore;bundle-version="[2.6.0,3.0.0)",
diff --git a/plugins/org.eclipse.emf.cdo.dawn.codegen.dawngenmodel.emf/model/DawnGenModel.emf.genmodel b/plugins/org.eclipse.emf.cdo.dawn.codegen.dawngenmodel.emf/model/DawnGenModel.emf.genmodel
index e2e8b1446e..89b34d876a 100644
--- a/plugins/org.eclipse.emf.cdo.dawn.codegen.dawngenmodel.emf/model/DawnGenModel.emf.genmodel
+++ b/plugins/org.eclipse.emf.cdo.dawn.codegen.dawngenmodel.emf/model/DawnGenModel.emf.genmodel
@@ -5,7 +5,7 @@
modelDirectory="/org.eclipse.emf.cdo.dawn.codegen.dawngenmodel.emf/src-gen" editorDirectory="/org.eclipse.emf.cdo.dawn.codegen.dawngenmodel.emf.ui/src-gen"
modelPluginID="org.eclipse.emf.cdo.dawn.codegen.dawngenmodel.emf" modelName="DawnGenModel"
importerID="org.eclipse.emf.importer.ecore" complianceLevel="5.0" editorPluginID="org.eclipse.emf.cdo.dawn.codegen.dawngenmodel.emf.ui"
- usedGenPackages="../../org.eclipse.emf.cdo.dawn.codegen.dawngenmodel/model/DawnCodeGen.genmodel#//dawngenmodel platform:/plugin/org.eclipse.emf.ecore/model/Ecore.genmodel#//ecore">
+ runtimeVersion="2.6" usedGenPackages="../../org.eclipse.emf.cdo.dawn.codegen.dawngenmodel/model/DawnCodeGen.genmodel#//dawngenmodel platform:/plugin/org.eclipse.emf.ecore/model/Ecore.genmodel#//ecore">
<foreignModel>DawnGenModel.emf.ecore</foreignModel>
<genPackages prefix="DawnEmfGenmodel" basePackage="org.eclipse.emf.cdo.dawn.codegen.dawngenmodel.emf"
disposableProviderFactory="true" multipleEditorPages="false" generateModelWizard="false"
diff --git a/plugins/org.eclipse.emf.cdo.dawn.codegen.dawngenmodel.emf/src-gen/org/eclipse/emf/cdo/dawn/codegen/dawngenmodel/emf/dawnEmfGenmodel/util/DawnEmfGenmodelSwitch.java b/plugins/org.eclipse.emf.cdo.dawn.codegen.dawngenmodel.emf/src-gen/org/eclipse/emf/cdo/dawn/codegen/dawngenmodel/emf/dawnEmfGenmodel/util/DawnEmfGenmodelSwitch.java
index f053a574b7..a7ff4d64e5 100644
--- a/plugins/org.eclipse.emf.cdo.dawn.codegen.dawngenmodel.emf/src-gen/org/eclipse/emf/cdo/dawn/codegen/dawngenmodel/emf/dawnEmfGenmodel/util/DawnEmfGenmodelSwitch.java
+++ b/plugins/org.eclipse.emf.cdo.dawn.codegen.dawngenmodel.emf/src-gen/org/eclipse/emf/cdo/dawn/codegen/dawngenmodel/emf/dawnEmfGenmodel/util/DawnEmfGenmodelSwitch.java
@@ -14,9 +14,10 @@ import org.eclipse.emf.cdo.dawn.codegen.dawngenmodel.DawnFragmentGenerator;
import org.eclipse.emf.cdo.dawn.codegen.dawngenmodel.emf.dawnEmfGenmodel.DawnEMFGenerator;
import org.eclipse.emf.cdo.dawn.codegen.dawngenmodel.emf.dawnEmfGenmodel.DawnEmfGenmodelPackage;
+import org.eclipse.emf.ecore.EClass;
import org.eclipse.emf.ecore.EObject;
-import org.eclipse.emf.ecore.EPackage;
-import org.eclipse.emf.ecore.util.Switch;
+
+import java.util.List;
/**
* <!-- begin-user-doc --> The <b>Switch</b> for the model's inheritance hierarchy. It supports the call
@@ -26,9 +27,8 @@ import org.eclipse.emf.ecore.util.Switch;
*
* @see org.eclipse.emf.cdo.dawn.codegen.dawngenmodel.emf.dawnEmfGenmodel.DawnEmfGenmodelPackage
* @generated
- * @author Martin Fluegge
*/
-public class DawnEmfGenmodelSwitch<T> extends Switch<T>
+public class DawnEmfGenmodelSwitch<T>
{
/**
* <!-- begin-user-doc --> <!-- end-user-doc -->
@@ -58,16 +58,33 @@ public class DawnEmfGenmodelSwitch<T> extends Switch<T>
}
/**
- * Checks whether this is a switch for the given package. <!-- begin-user-doc --> <!-- end-user-doc -->
+ * 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 -->
*
- * @parameter ePackage the package in question.
- * @return whether this is a switch for the given package.
+ * @return the first non-null result returned by a <code>caseXXX</code> call.
* @generated
*/
- @Override
- protected boolean isSwitchFor(EPackage ePackage)
+ public T doSwitch(EObject theEObject)
{
- return ePackage == modelPackage;
+ 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);
+ }
+
+ List<EClass> eSuperTypes = theEClass.getESuperTypes();
+ return eSuperTypes.isEmpty() ? defaultCase(theEObject) : doSwitch(eSuperTypes.get(0), theEObject);
}
/**
@@ -77,7 +94,6 @@ public class DawnEmfGenmodelSwitch<T> extends Switch<T>
* @return the first non-null result returned by a <code>caseXXX</code> call.
* @generated
*/
- @Override
protected T doSwitch(int classifierID, EObject theEObject)
{
switch (classifierID)
@@ -143,7 +159,6 @@ public class DawnEmfGenmodelSwitch<T> extends Switch<T>
* @see #doSwitch(org.eclipse.emf.ecore.EObject)
* @generated
*/
- @Override
public T defaultCase(EObject object)
{
return null;

Back to the top