Skip to main content
aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
Diffstat (limited to 'plugins/org.eclipse.emf.cdo/src/org/eclipse/emf/internal/cdo/util/ModelUtil.java')
-rw-r--r--plugins/org.eclipse.emf.cdo/src/org/eclipse/emf/internal/cdo/util/ModelUtil.java105
1 files changed, 54 insertions, 51 deletions
diff --git a/plugins/org.eclipse.emf.cdo/src/org/eclipse/emf/internal/cdo/util/ModelUtil.java b/plugins/org.eclipse.emf.cdo/src/org/eclipse/emf/internal/cdo/util/ModelUtil.java
index a2423b131a..9dde5c1354 100644
--- a/plugins/org.eclipse.emf.cdo/src/org/eclipse/emf/internal/cdo/util/ModelUtil.java
+++ b/plugins/org.eclipse.emf.cdo/src/org/eclipse/emf/internal/cdo/util/ModelUtil.java
@@ -13,15 +13,18 @@ package org.eclipse.emf.internal.cdo.util;
import org.eclipse.emf.cdo.eresource.EresourcePackage;
import org.eclipse.emf.cdo.internal.protocol.model.CDOClassImpl;
import org.eclipse.emf.cdo.internal.protocol.model.CDOClassProxy;
-import org.eclipse.emf.cdo.internal.protocol.model.CDOClassRefImpl;
-import org.eclipse.emf.cdo.internal.protocol.model.CDOFeatureImpl;
import org.eclipse.emf.cdo.internal.protocol.model.CDOPackageImpl;
-import org.eclipse.emf.cdo.internal.protocol.model.CDOTypeImpl;
-import org.eclipse.emf.cdo.internal.protocol.model.core.CDOCorePackageImpl;
-import org.eclipse.emf.cdo.internal.protocol.model.resource.CDOResourceClassImpl;
-import org.eclipse.emf.cdo.internal.protocol.model.resource.CDOResourcePackageImpl;
-import org.eclipse.emf.cdo.protocol.id.CDOIDRange;
+import org.eclipse.emf.cdo.protocol.id.CDOIDMetaRange;
+import org.eclipse.emf.cdo.protocol.model.CDOClass;
+import org.eclipse.emf.cdo.protocol.model.CDOClassRef;
+import org.eclipse.emf.cdo.protocol.model.CDOFeature;
+import org.eclipse.emf.cdo.protocol.model.CDOModelUtil;
+import org.eclipse.emf.cdo.protocol.model.CDOPackage;
import org.eclipse.emf.cdo.protocol.model.CDOPackageManager;
+import org.eclipse.emf.cdo.protocol.model.CDOType;
+import org.eclipse.emf.cdo.protocol.model.core.CDOCorePackage;
+import org.eclipse.emf.cdo.protocol.model.resource.CDOResourceClass;
+import org.eclipse.emf.cdo.protocol.model.resource.CDOResourcePackage;
import org.eclipse.emf.cdo.util.EMFUtil;
import org.eclipse.emf.internal.cdo.CDOFactoryImpl;
@@ -52,7 +55,7 @@ public final class ModelUtil
{
}
- public static CDOTypeImpl getCDOType(EStructuralFeature eFeature)
+ public static CDOType getCDOType(EStructuralFeature eFeature)
{
if (eFeature instanceof EReference)
{
@@ -83,8 +86,8 @@ public final class ModelUtil
case EcorePackage.ELONG_OBJECT:
case EcorePackage.ESHORT:
case EcorePackage.ESHORT_OBJECT:
- CDOTypeImpl type = CDOTypeImpl.getType(classifierID);
- if (type == CDOTypeImpl.OBJECT)
+ CDOType type = CDOModelUtil.getType(classifierID);
+ if (type == CDOType.OBJECT)
{
throw new ImplementationError("Attributes can not be of type OBJECT");
}
@@ -93,23 +96,23 @@ public final class ModelUtil
}
}
- return CDOTypeImpl.STRING;
+ return CDOType.STRING;
}
- public static void initializeCDOPackage(EPackage ePackage, CDOPackageImpl cdoPackage)
+ public static void initializeCDOPackage(EPackage ePackage, CDOPackage cdoPackage)
{
cdoPackage.setClientInfo(ePackage);
for (EClass eClass : EMFUtil.getPersistentClasses(ePackage))
{
- CDOClassImpl cdoClass = createCDOClass(eClass, cdoPackage);
- cdoPackage.addClass(cdoClass);
+ CDOClass cdoClass = createCDOClass(eClass, cdoPackage);
+ ((CDOPackageImpl)cdoPackage).addClass(cdoClass);
}
}
- public static CDOPackageImpl getCDOPackage(EPackage ePackage, CDOSessionPackageManagerImpl packageManager)
+ public static CDOPackage getCDOPackage(EPackage ePackage, CDOSessionPackageManagerImpl packageManager)
{
String packageURI = ePackage.getNsURI();
- CDOPackageImpl cdoPackage = packageManager.lookupPackage(packageURI);
+ CDOPackage cdoPackage = packageManager.lookupPackage(packageURI);
if (cdoPackage == null)
{
cdoPackage = createCDOPackage(ePackage, packageManager);
@@ -119,15 +122,15 @@ public final class ModelUtil
return cdoPackage;
}
- public static CDOClassImpl getCDOClass(EClass eClass, CDOSessionPackageManagerImpl packageManager)
+ public static CDOClass getCDOClass(EClass eClass, CDOSessionPackageManagerImpl packageManager)
{
- CDOPackageImpl cdoPackage = getCDOPackage(eClass.getEPackage(), packageManager);
+ CDOPackage cdoPackage = getCDOPackage(eClass.getEPackage(), packageManager);
return cdoPackage.lookupClass(eClass.getClassifierID());
}
- public static CDOFeatureImpl getCDOFeature(EStructuralFeature eFeature, CDOSessionPackageManagerImpl packageManager)
+ public static CDOFeature getCDOFeature(EStructuralFeature eFeature, CDOSessionPackageManagerImpl packageManager)
{
- CDOClassImpl cdoClass = getCDOClass(eFeature.getEContainingClass(), packageManager);
+ CDOClass cdoClass = getCDOClass(eFeature.getEContainingClass(), packageManager);
return cdoClass.lookupFeature(eFeature.getFeatureID());
}
@@ -135,7 +138,7 @@ public final class ModelUtil
* @see EMFUtil#getPersistentFeatures(org.eclipse.emf.common.util.EList)
* @see http://www.eclipse.org/newsportal/article.php?id=26780&group=eclipse.tools.emf#26780
*/
- private static CDOPackageImpl createCDOPackage(EPackage ePackage, CDOSessionPackageManagerImpl packageManager)
+ private static CDOPackage createCDOPackage(EPackage ePackage, CDOSessionPackageManagerImpl packageManager)
{
String packageURI = ePackage.getNsURI();
String name = ePackage.getName();
@@ -148,51 +151,51 @@ public final class ModelUtil
String ecore = EcorePackage.eINSTANCE.getNsURI().equals(packageURI) ? null : EMFUtil.ePackageToString(ePackage);
// String ecore = EMFUtil.ePackageToString(ePackage);
- CDOIDRange idRange = packageManager.getSession().registerEPackage(ePackage);
+ CDOIDMetaRange idRange = packageManager.getSession().registerEPackage(ePackage);
- CDOPackageImpl cdoPackage = new CDOPackageImpl(packageManager, packageURI, name, ecore, dynamic, idRange);
+ CDOPackage cdoPackage = CDOModelUtil.createPackage(packageManager, packageURI, name, ecore, dynamic, idRange);
initializeCDOPackage(ePackage, cdoPackage);
return cdoPackage;
}
- private static CDOClassImpl createCDOClass(EClass eClass, CDOPackageImpl containingPackage)
+ private static CDOClass createCDOClass(EClass eClass, CDOPackage containingPackage)
{
- CDOClassImpl cdoClass = new CDOClassImpl(containingPackage, eClass.getClassifierID(), eClass.getName(), eClass
+ CDOClass cdoClass = CDOModelUtil.createClass(containingPackage, eClass.getClassifierID(), eClass.getName(), eClass
.isAbstract());
cdoClass.setClientInfo(eClass);
for (EClass superType : eClass.getESuperTypes())
{
- CDOClassRefImpl classRef = createClassRef(superType);
- cdoClass.addSuperType(classRef);
+ CDOClassRef classRef = createClassRef(superType);
+ ((CDOClassImpl)cdoClass).addSuperType(classRef);
}
for (EStructuralFeature eFeature : EMFUtil.getPersistentFeatures(eClass.getEStructuralFeatures()))
{
- CDOFeatureImpl cdoFeature = createCDOFeature(eFeature, cdoClass);
- cdoClass.addFeature(cdoFeature);
+ CDOFeature cdoFeature = createCDOFeature(eFeature, cdoClass);
+ ((CDOClassImpl)cdoClass).addFeature(cdoFeature);
}
return cdoClass;
}
- private static CDOFeatureImpl createCDOFeature(EStructuralFeature eFeature, CDOClassImpl containingClass)
+ private static CDOFeature createCDOFeature(EStructuralFeature eFeature, CDOClass containingClass)
{
- CDOFeatureImpl cdoFeature = EMFUtil.isReference(eFeature) ? createCDOReference((EReference)eFeature,
- containingClass) : createCDOAttribute((EAttribute)eFeature, containingClass);
+ CDOFeature cdoFeature = EMFUtil.isReference(eFeature) ? createCDOReference((EReference)eFeature, containingClass)
+ : createCDOAttribute((EAttribute)eFeature, containingClass);
cdoFeature.setClientInfo(eFeature);
return cdoFeature;
}
- private static CDOFeatureImpl createCDOReference(EReference eFeature, CDOClassImpl containingClass)
+ private static CDOFeature createCDOReference(EReference eFeature, CDOClass containingClass)
{
CDOPackageManager packageManager = containingClass.getPackageManager();
int featureID = eFeature.getFeatureID();
String name = eFeature.getName();
- CDOClassRefImpl classRef = createClassRef(eFeature.getEType());
+ CDOClassRef classRef = createClassRef(eFeature.getEType());
boolean many = eFeature.isMany();
boolean containment = EMFUtil.isContainment(eFeature);
- CDOFeatureImpl cdoFeature = new CDOFeatureImpl(containingClass, featureID, name, new CDOClassProxy(classRef,
+ CDOFeature cdoFeature = CDOModelUtil.createReference(containingClass, featureID, name, new CDOClassProxy(classRef,
packageManager), many, containment);
EReference opposite = eFeature.getEOpposite();
@@ -205,16 +208,16 @@ public final class ModelUtil
return cdoFeature;
}
- private static CDOFeatureImpl createCDOAttribute(EAttribute eFeature, CDOClassImpl containingClass)
+ private static CDOFeature createCDOAttribute(EAttribute eFeature, CDOClass containingClass)
{
int featureID = eFeature.getFeatureID();
String name = eFeature.getName();
- CDOTypeImpl type = getCDOType(eFeature);
+ CDOType type = getCDOType(eFeature);
boolean many = EMFUtil.isMany(eFeature);
- return new CDOFeatureImpl(containingClass, featureID, name, type, many);
+ return CDOModelUtil.createAttribute(containingClass, featureID, name, type, many);
}
- public static EPackage getEPackage(CDOPackageImpl cdoPackage, CDOPackageRegistryImpl packageRegistry)
+ public static EPackage getEPackage(CDOPackage cdoPackage, CDOPackageRegistryImpl packageRegistry)
{
EPackage ePackage = (EPackage)cdoPackage.getClientInfo();
if (ePackage == null)
@@ -233,7 +236,7 @@ public final class ModelUtil
return ePackage;
}
- public static EClass getEClass(CDOClassImpl cdoClass, CDOPackageRegistryImpl packageRegistry)
+ public static EClass getEClass(CDOClass cdoClass, CDOPackageRegistryImpl packageRegistry)
{
EClass eClass = (EClass)cdoClass.getClientInfo();
if (eClass == null)
@@ -246,7 +249,7 @@ public final class ModelUtil
return eClass;
}
- public static EStructuralFeature getEFeature(CDOFeatureImpl cdoFeature, CDOPackageRegistryImpl packageRegistry)
+ public static EStructuralFeature getEFeature(CDOFeature cdoFeature, CDOPackageRegistryImpl packageRegistry)
{
EStructuralFeature eFeature = (EStructuralFeature)cdoFeature.getClientInfo();
if (eFeature == null)
@@ -259,7 +262,7 @@ public final class ModelUtil
return eFeature;
}
- public static EPackage createEPackage(CDOPackageImpl cdoPackage)
+ public static EPackage createEPackage(CDOPackage cdoPackage)
{
if (!cdoPackage.isDynamic())
{
@@ -283,7 +286,7 @@ public final class ModelUtil
return EPackage.Registry.INSTANCE.getEPackage(packageURI);
}
- public static EPackageImpl createDynamicEPackage(CDOPackageImpl cdoPackage)
+ public static EPackageImpl createDynamicEPackage(CDOPackage cdoPackage)
{
String ecore = cdoPackage.getEcore();
EPackageImpl ePackage = (EPackageImpl)EMFUtil.ePackageFromString(ecore);
@@ -297,13 +300,13 @@ public final class ModelUtil
EMFUtil.fixEClassifiers(ePackage);
}
- public static CDOClassRefImpl createClassRef(EClassifier classifier)
+ public static CDOClassRef createClassRef(EClassifier classifier)
{
if (classifier instanceof EClass)
{
String packageURI = classifier.getEPackage().getNsURI();
int classifierID = classifier.getClassifierID();
- return new CDOClassRefImpl(packageURI, classifierID);
+ return CDOModelUtil.createClassRef(packageURI, classifierID);
}
return null;
@@ -312,14 +315,14 @@ public final class ModelUtil
public static void addModelInfos(CDOSessionPackageManagerImpl packageManager)
{
// Ecore
- CDOCorePackageImpl corePackage = packageManager.getCDOCorePackage();
+ CDOCorePackage corePackage = packageManager.getCDOCorePackage();
corePackage.setClientInfo(EcorePackage.eINSTANCE);
corePackage.getCDOObjectClass().setClientInfo(EcorePackage.eINSTANCE.getEObject());
// Eresource
- CDOResourcePackageImpl resourcePackage = packageManager.getCDOResourcePackage();
+ CDOResourcePackage resourcePackage = packageManager.getCDOResourcePackage();
resourcePackage.setClientInfo(EresourcePackage.eINSTANCE);
- CDOResourceClassImpl resourceClass = resourcePackage.getCDOResourceClass();
+ CDOResourceClass resourceClass = resourcePackage.getCDOResourceClass();
resourceClass.setClientInfo(EresourcePackage.eINSTANCE.getCDOResource());
resourceClass.getCDOContentsFeature().setClientInfo(EresourcePackage.eINSTANCE.getCDOResource_Contents());
resourceClass.getCDOPathFeature().setClientInfo(EresourcePackage.eINSTANCE.getCDOResource_Path());
@@ -329,14 +332,14 @@ public final class ModelUtil
public static void removeModelInfos(CDOSessionPackageManagerImpl packageManager)
{
// Ecore
- CDOCorePackageImpl corePackage = packageManager.getCDOCorePackage();
+ CDOCorePackage corePackage = packageManager.getCDOCorePackage();
corePackage.setClientInfo(null);
corePackage.getCDOObjectClass().setClientInfo(null);
// Eresource
- CDOResourcePackageImpl resourcePackage = packageManager.getCDOResourcePackage();
+ CDOResourcePackage resourcePackage = packageManager.getCDOResourcePackage();
resourcePackage.setClientInfo(null);
- CDOResourceClassImpl resourceClass = resourcePackage.getCDOResourceClass();
+ CDOResourceClass resourceClass = resourcePackage.getCDOResourceClass();
resourceClass.setClientInfo(null);
resourceClass.getCDOContentsFeature().setClientInfo(null);
resourceClass.getCDOPathFeature().setClientInfo(null);

Back to the top