You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@tuscany.apache.org by an...@apache.org on 2010/09/29 09:10:58 UTC

svn commit: r1002496 [4/8] - in /tuscany/sdo-java/branches/emf-2.5: ./ impl/model/ impl/src/main/java/org/apache/tuscany/sdo/ impl/src/main/java/org/apache/tuscany/sdo/helper/ impl/src/main/java/org/apache/tuscany/sdo/impl/ impl/src/main/java/org/apach...

Modified: tuscany/sdo-java/branches/emf-2.5/impl/src/main/java/org/apache/tuscany/sdo/impl/ClassImpl.java
URL: http://svn.apache.org/viewvc/tuscany/sdo-java/branches/emf-2.5/impl/src/main/java/org/apache/tuscany/sdo/impl/ClassImpl.java?rev=1002496&r1=1002493&r2=1002496&view=diff
==============================================================================
--- tuscany/sdo-java/branches/emf-2.5/impl/src/main/java/org/apache/tuscany/sdo/impl/ClassImpl.java (original)
+++ tuscany/sdo-java/branches/emf-2.5/impl/src/main/java/org/apache/tuscany/sdo/impl/ClassImpl.java Wed Sep 29 07:10:57 2010
@@ -40,6 +40,7 @@ import org.eclipse.emf.common.util.Uniqu
 import org.eclipse.emf.ecore.EAttribute;
 import org.eclipse.emf.ecore.EClass;
 import org.eclipse.emf.ecore.EObject;
+import org.eclipse.emf.ecore.EPackage;
 import org.eclipse.emf.ecore.EStructuralFeature;
 import org.eclipse.emf.ecore.EcorePackage;
 import org.eclipse.emf.ecore.impl.EClassImpl;
@@ -51,1077 +52,998 @@ import org.eclipse.emf.ecore.util.Featur
 import commonj.sdo.Property;
 import commonj.sdo.Sequence;
 import commonj.sdo.Type;
+import java.lang.Class;
 
 /**
- * <!-- begin-user-doc -->
- * An implementation of the model object '<em><b>Class</b></em>'.
- * <!-- end-user-doc -->
+ * <!-- begin-user-doc --> An implementation of the model object '
+ * <em><b>Class</b></em>'. <!-- end-user-doc -->
  * <p>
  * </p>
- *
+ * 
  * @generated
  */
-public class ClassImpl extends EClassImpl implements Type, org.apache.tuscany.sdo.model.Type/*, DataObject*/
+public class ClassImpl extends EClassImpl implements Type,
+		org.apache.tuscany.sdo.model.Type/* , DataObject */
 {
-  private static final long serialVersionUID = 1L;
+	private static final long serialVersionUID = 1L;
+
+	private static final Property UNINITIALIZED_PROPERTY = SDOFactory.eINSTANCE
+			.createAttribute();
+
+	private Property changeSummaryPropertyCache = UNINITIALIZED_PROPERTY;
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	protected ClassImpl() {
+		super();
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated NOT
+	 */
+	protected EClass eStaticClass() {
+		return SDOPackage.eINSTANCE.getClass_();
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated NOT
+	 */
+	public String getURI() {
+		return getEPackage().getNsURI();
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 */
+	public Class getInstanceClass() {
+		// TODO verify!!!
+		return super.getInstanceClass();
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated NOT
+	 */
+	public boolean isDataType() {
+		return false;
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated NOT
+	 */
+	public boolean isOpen() {
+		final List properties = getExtendedProperties();
+		if (properties != Collections.EMPTY_LIST) {
+			for (int i = 0, count = properties.size(); i < count; ++i) {
+				EStructuralFeature eStructuralFeature = (EStructuralFeature) properties
+						.get(i);
+				if (isOpenFeatureMap(eStructuralFeature))
+					return true;
+			}
+		}
+
+		for (final Iterator iterator = getBaseTypes().iterator(); iterator
+				.hasNext();) {
+			Type baseType = (Type) iterator.next();
+			if (baseType.isOpen())
+				return true;
+		}
+
+		return false;
+	}
+
+	private static final EStructuralFeature UNINITIALIZED_SEQUENCE_FEATURE = (EAttribute) SDOFactory.eINSTANCE
+			.createAttribute();
+	protected static final EStructuralFeature VIRTUAL_SEQUENCE_FEATURE = (EAttribute) SDOFactory.eINSTANCE
+			.createAttribute();
+
+	private EStructuralFeature sequenceFeature = UNINITIALIZED_SEQUENCE_FEATURE;
+
+	public EStructuralFeature getSequenceFeature() {
+		if (sequenceFeature == UNINITIALIZED_SEQUENCE_FEATURE) {
+			EStructuralFeature sequenceFeatureCandidate = null;
+			boolean hasNonDerivedFeatures = false;
+
+			for (Iterator iterator = getEAllStructuralFeatures().iterator(); iterator
+					.hasNext();) {
+				EStructuralFeature eStructuralFeature = (EStructuralFeature) iterator
+						.next();
+				if (!eStructuralFeature.isDerived()) {
+					if (sequenceFeatureCandidate == null
+							&& isSequenceFeatureMap(eStructuralFeature))
+						sequenceFeatureCandidate = eStructuralFeature;
+					else if (isElementFeature(eStructuralFeature)
+							&& !DataObjectUtil
+									.isInternalProperty(eStructuralFeature))
+						hasNonDerivedFeatures = true;
+				}
+			}
+
+			sequenceFeature = sequenceFeatureCandidate != null
+					&& hasNonDerivedFeatures ? VIRTUAL_SEQUENCE_FEATURE
+					: sequenceFeatureCandidate;
+		}
+
+		return sequenceFeature;
+	}
+
+	protected boolean isSequenceFeatureMap(EStructuralFeature eStructuralFeature) {
+		switch (ExtendedMetaData.INSTANCE.getFeatureKind(eStructuralFeature)) {
+		case ExtendedMetaData.ELEMENT_WILDCARD_FEATURE:
+			return eStructuralFeature.getUpperBound() != 1;
+		case ExtendedMetaData.GROUP_FEATURE:
+			return true;
+		}
+		return false;
+	}
+
+	protected boolean isElementFeature(EStructuralFeature eStructuralFeature) {
+		switch (ExtendedMetaData.INSTANCE.getFeatureKind(eStructuralFeature)) {
+		case ExtendedMetaData.ATTRIBUTE_FEATURE:
+		case ExtendedMetaData.ATTRIBUTE_WILDCARD_FEATURE:
+			return false;
+		}
+		return true;
+	}
+
+	public List getVirtualSequenceProperties() {
+		List result = new ArrayList();
+		for (Iterator iterator = getEAllStructuralFeatures().iterator(); iterator
+				.hasNext();) {
+			EStructuralFeature eStructuralFeature = (EStructuralFeature) iterator
+					.next();
+			if (!eStructuralFeature.isDerived()
+					&& isElementFeature(eStructuralFeature))
+				result.add(eStructuralFeature);
+		}
+		return result;
+	}
+
+	public void setSequenceFeature(EAttribute sequenceFeature) {
+		getEStructuralFeatures().add(sequenceFeature);
+		this.sequenceFeature = sequenceFeature;
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated NOT
+	 */
+	public boolean isSequenced() {
+		return getSequenceFeature() != null;
+	}
+
+	protected List aliasNames = null;
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated NOT
+	 */
+	public List getAliasNames() {
+		if (aliasNames == null) {
+			aliasNames = DataObjectUtil.getAliasNames(this);
+		}
+		return aliasNames;
+	}
+
+	protected List declaredProperties = null;
+
+	public List getDeclaredProperties() {
+		if (declaredProperties == null) {
+			initPropertyLists();
+		}
+		return declaredProperties;
+	}
+
+	protected List extendedProperties = null;
+
+	public List getExtendedProperties() {
+		if (extendedProperties == null) {
+			initPropertyLists();
+		}
+		return extendedProperties;
+	}
+
+	protected List getTypeFeatures() {
+		return getEStructuralFeatures();
+	}
+
+	protected void initPropertyLists() {
+		List declaredProperties = new ArrayList();
+		List extendedProperties = Collections.EMPTY_LIST;
+
+		for (Iterator i = getTypeFeatures().iterator(); i.hasNext();) {
+			EStructuralFeature eStructuralFeature = (EStructuralFeature) i
+					.next();
+			boolean isExtendedProperty = DataObjectUtil
+					.isInternalProperty(eStructuralFeature);
+			if (isExtendedProperty) {
+				if (extendedProperties == Collections.EMPTY_LIST)
+					extendedProperties = new ArrayList();
+				extendedProperties.add(eStructuralFeature);
+			} else
+				declaredProperties.add(eStructuralFeature);
+		}
+		this.declaredProperties = declaredProperties;
+		this.extendedProperties = extendedProperties;
+	}
+
+	public EList getEStructuralFeatures() {
+		if (eStructuralFeatures == null) {
+			eStructuralFeatures = new EObjectContainmentWithInverseEList(
+					EStructuralFeature.class, this,
+					EcorePackage.ECLASS__ESTRUCTURAL_FEATURES,
+					EcorePackage.ESTRUCTURAL_FEATURE__ECONTAINING_CLASS) {
+				protected void didChange() {
+					declaredProperties = extendedProperties = null;
+				}
+			};
+		}
+		return eStructuralFeatures;
+	}
+
+	protected List allProperties = null;
+	protected List allExtendedProperties = null;
+	protected EList allFeaturesCache = null;
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated NOT
+	 */
+	public List getProperties() {
+		final EList allFeatures = getEAllStructuralFeatures();
+		if (allFeatures != allFeaturesCache) {
+			allFeaturesCache = allFeatures;
+			allProperties = allExtendedProperties = null;
+		}
+		if (allProperties == null) {
+			List allProperties = new UniqueEList();
+			for (final Iterator iterator = getBaseTypes().iterator(); iterator
+					.hasNext();) {
+				Type baseType = (Type) iterator.next();
+				allProperties.addAll(baseType.getProperties());
+			}
+			allProperties.addAll(getDeclaredProperties());
+			this.allProperties = allProperties;
+		}
+		return allProperties;
+	}
+
+	public List getAllExtendedProperties() {
+		final EList allFeatures = getEAllStructuralFeatures();
+		if (allFeatures != allFeaturesCache) {
+			allFeaturesCache = allFeatures;
+			allProperties = allExtendedProperties = null;
+		}
+		if (allExtendedProperties == null) {
+			List allExtendedProperties = new UniqueEList();
+			for (final Iterator iterator = getBaseTypes().iterator(); iterator
+					.hasNext();) {
+				Type baseType = (Type) iterator.next();
+				allExtendedProperties.addAll(((ClassImpl) baseType)
+						.getAllExtendedProperties());
+			}
+			allExtendedProperties.addAll(getExtendedProperties());
+			this.allExtendedProperties = allExtendedProperties;
+		}
+		return allExtendedProperties;
+	}
+
+	protected boolean isOpenFeatureMap(EStructuralFeature eStructuralFeature) {
+		switch (ExtendedMetaData.INSTANCE.getFeatureKind(eStructuralFeature)) {
+		case ExtendedMetaData.ELEMENT_WILDCARD_FEATURE:
+			return eStructuralFeature != ExtendedMetaData.INSTANCE
+					.getMixedFeature(this);
+		case ExtendedMetaData.ATTRIBUTE_WILDCARD_FEATURE:
+			// FB I think this is wrong ... case ExtendedMetaData.GROUP_FEATURE:
+			return true;
+		}
+		return false;
+	}
+
+	public void addOpenProperties(EObject dataObject, Collection propertyList) {
+		for (final Iterator iterator = getBaseTypes().iterator(); iterator
+				.hasNext();) {
+			ClassImpl baseType = (ClassImpl) iterator.next();
+			baseType.addOpenProperties(dataObject, propertyList);
+		}
+
+		for (final Iterator iter = getExtendedProperties().iterator(); iter
+				.hasNext();) {
+			EStructuralFeature eStructuralFeature = (EStructuralFeature) iter
+					.next();
+			if (isOpenFeatureMap(eStructuralFeature)) {
+				List features = (List) dataObject.eGet(eStructuralFeature);
+				for (int j = 0, size = features.size(); j < size; ++j) {
+					FeatureMap.Entry entry = (FeatureMap.Entry) features.get(j);
+					EStructuralFeature entryFeature = entry
+							.getEStructuralFeature();
+					Property property = BasicSequence
+							.getFeatureProperty(entryFeature);
+					if (property != null)
+						propertyList.add(entryFeature);
+				}
+			}
+		}
+	}
+
+	public Property getOpenProperty(EObject dataObject, String featureName) {
+		for (final Iterator iterator = getBaseTypes().iterator(); iterator
+				.hasNext();) {
+			ClassImpl baseType = (ClassImpl) iterator.next();
+			Property result = baseType.getOpenProperty(dataObject, featureName);
+			if (result != null)
+				return result;
+		}
+
+		Set openFeatureSet = new HashSet();
+		for (final Iterator iter = getExtendedProperties().iterator(); iter
+				.hasNext();) {
+			EStructuralFeature eStructuralFeature = (EStructuralFeature) iter
+					.next();
+			// if (isOpenFeatureMap(eStructuralFeature))
+			// FB The above check excludes subsitition groups - i.e., doesn't
+			// support dObj.get("element.substitution")
+			if (FeatureMapUtil.isFeatureMap(eStructuralFeature)) {
+				List features = (List) dataObject.eGet(eStructuralFeature);
+				for (int j = 0, size = features.size(); j < size; ++j) {
+					FeatureMap.Entry entry = (FeatureMap.Entry) features.get(j);
+					EStructuralFeature entryFeature = entry
+							.getEStructuralFeature();
+					if (openFeatureSet.add(entryFeature)) {
+						Property property = BasicSequence
+								.getFeatureProperty(entryFeature);
+						if (property != null) {
+							if (property.getName().equals(featureName))
+								return (Property) entryFeature;
+							List aliasNames = property.getAliasNames();
+							for (int aliasCount = aliasNames.size(); aliasCount > 0;) {
+								if (aliasNames.get(--aliasCount).equals(
+										featureName))
+									return (Property) entryFeature;
+							}
+						}
+					}
+				}
+			}
+		}
+
+		return null;
+	}
+
+	/*
+	 * public Property getOpenProperty(DataObject dataObject, String
+	 * featureName) { EObject eObject = (EObject)dataObject; EClass eClass =
+	 * eObject.eClass(); Set openFeatureSet = new HashSet(); for (int i = 0,
+	 * count = eClass.getEAllStructuralFeatures().size(); i < count; ++i) {
+	 * EStructuralFeature eStructuralFeature = eClass.getEStructuralFeature(i);
+	 * if (FeatureMapUtil.isFeatureMap(eStructuralFeature)) { List features =
+	 * (List)eObject.eGet(eStructuralFeature); for (int j = 0, size =
+	 * features.size(); j < size; ++j) { FeatureMap.Entry entry =
+	 * (FeatureMap.Entry)features.get(j); EStructuralFeature entryFeature =
+	 * entry.getEStructuralFeature(); if (openFeatureSet.add(entryFeature)) {
+	 * Property property = (Property)entryFeature; if
+	 * (property.getName().equals(featureName)) return (Property)entryFeature;
+	 * 
+	 * List aliasNames = property.getAliasNames(); for (int aliasCount =
+	 * aliasNames.size(); aliasCount > 0; ) { if
+	 * (aliasNames.get(--aliasCount).equals(featureName)) return
+	 * (Property)entryFeature; } } } } } return null; }
+	 */
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated NOT
+	 */
+	public List getBaseTypes() {
+		return getESuperTypes();
+	}
+
+	private void initAliasNames() {
+		Map result = new HashMap();
+		for (Iterator i = getProperties().iterator(); i.hasNext();) {
+			Property property = (Property) i.next();
+			result.put(property.getName(), property);
+
+			List aliasNames = property.getAliasNames();
+			for (int count = aliasNames.size(); count > 0;) {
+				result.put(aliasNames.get(--count), property);
+			}
+		}
+		propertyNameToPropertyMap = result;
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated NOT
+	 */
+	public Property getProperty(String propertyName) {
+		if (propertyNameToPropertyMap == null)
+			initAliasNames();
+		Property property = (Property) propertyNameToPropertyMap
+				.get(propertyName);
+		if (property == null && !isOpen()) {
+			initAliasNames();
+			property = (Property) propertyNameToPropertyMap.get(propertyName);
+		}
+		return property;
+	}
+
+	protected Map propertyNameToPropertyMap;
+
+	public List getInstanceProperties() {
+		return DataObjectUtil.getMetaObjectInstanceProperties(this);
+	}
+
+	public Object get(Property property) {
+		return DataObjectUtil.getMetaObjectInstanceProperty(this, property);
+	}
+
+	// ///////////////////////////////////////////////////////////////////////////////////////////////////////
+	// org.apache.tuscany.sdo.model.Type method implementations
+	// ///////////////////////////////////////////////////////////////////////////////////////////////////////
+
+	public List getBaseType() {
+		return this.getBaseTypes();
+	}
+
+	public List getProperty() {
+		return this.getProperties();
+	}
+
+	public List getAliasName() {
+		return this.getAliasNames();
+	}
+
+	public void unsetAbstract() {
+		eUnset(EcorePackage.eINSTANCE.getEClass_Abstract());
+	}
+
+	public boolean isSetAbstract() {
+		return eIsSet(EcorePackage.eINSTANCE.getEClass_Abstract());
+	}
+
+	public Sequence getAny() {
+		throw new UnsupportedOperationException();
+	}
+
+	public Sequence getAnyAttribute() {
+		throw new UnsupportedOperationException();
+	}
+
+	public void setDataType(boolean value) {
+		throw new UnsupportedOperationException(
+				"Type is frozen and cannot be modified");
+	}
+
+	public void unsetDataType() {
+		throw new UnsupportedOperationException(
+				"Type is frozen and cannot be modified");
+	}
+
+	public boolean isSetDataType() {
+		return false;
+	}
+
+	public void setOpen(boolean value) {
+		throw new UnsupportedOperationException(
+				"Type is frozen and cannot be modified");
+	}
+
+	public void unsetOpen() {
+		throw new UnsupportedOperationException(
+				"Type is frozen and cannot be modified");
+	}
+
+	public boolean isSetOpen() {
+		return isOpen();
+	}
+
+	public void setSequenced(boolean value) {
+		throw new UnsupportedOperationException(
+				"Type is frozen and cannot be modified");
+	}
+
+	public void unsetSequenced() {
+		throw new UnsupportedOperationException(
+				"Type is frozen and cannot be modified");
+	}
+
+	public boolean isSetSequenced() {
+		return isSequenced();
+	}
+
+	public void unsetName() {
+		throw new UnsupportedOperationException(
+				"Type is frozen and cannot be modified");
+	}
+
+	public boolean isSetName() {
+		return true;
+	}
+
+	public void unsetUri() {
+		throw new UnsupportedOperationException(
+				"Type is frozen and cannot be modified");
+	}
+
+	public boolean isSetUri() {
+		return true;
+	}
+
+	public void setUri(String value) {
+		throw new UnsupportedOperationException(
+				"Type is frozen and cannot be modified");
+	}
+
+	public String getUri() {
+		return getURI();
+	}
+
+	public Property getChangeSummaryProperty() {
+		if (changeSummaryPropertyCache == UNINITIALIZED_PROPERTY) {
+			changeSummaryPropertyCache = null;
+
+			// Find property of type ChangeSummaryType, if one exists
+			Type csType = ((ModelFactoryImpl) ModelFactory.INSTANCE)
+					.getChangeSummaryType();
+			for (Iterator props = getProperties().iterator(); props.hasNext();) {
+				Property p = (Property) props.next();
+				if (csType == p.getType()) {
+					changeSummaryPropertyCache = p;
+					break;
+				}
+			}
+		}
+
+		return changeSummaryPropertyCache;
+	}
 	
-  private static final Property UNINITIALIZED_PROPERTY = SDOFactory.eINSTANCE.createAttribute();
-  
-  private Property changeSummaryPropertyCache = UNINITIALIZED_PROPERTY;
-  
-  /**
-   * <!-- begin-user-doc -->
-   * <!-- end-user-doc -->
-   * @generated
-   */
-  protected ClassImpl()
-  {
-    super();
-  }
-
-  /**
-   * <!-- begin-user-doc -->
-   * <!-- end-user-doc -->
-   * @generated NOT
-   */
-  protected EClass eStaticClass()
-  {
-    return SDOPackage.eINSTANCE.getClass_();
-  }
-
-  /**
-   * <!-- begin-user-doc -->
-   * <!-- end-user-doc -->
-   * @generated NOT
-   */
-  public String getURI()
-  {
-    return getEPackage().getNsURI();
-  }
-
-  /**
-   * <!-- begin-user-doc -->
-   * <!-- end-user-doc -->
-   * @generated NOT
-   */
-  public boolean isDataType()
-  {
-    return false;
-  }
-
-  /**
-   * <!-- begin-user-doc -->
-   * <!-- end-user-doc -->
-   * @generated NOT
-   */
-  public boolean isOpen()
-  {
-    final List properties = getExtendedProperties();
-    if (properties != Collections.EMPTY_LIST)
-    {
-      for (int i = 0, count = properties.size(); i < count; ++i)
-      {
-        EStructuralFeature eStructuralFeature = (EStructuralFeature)properties.get(i);
-        if (isOpenFeatureMap(eStructuralFeature))
-          return true;
-      }
-    }
-
-    for (final Iterator iterator = getBaseTypes().iterator() ; iterator.hasNext(); )
-    {
-      Type baseType = (Type)iterator.next();
-      if (baseType.isOpen())
-        return true;
-    }
-
-    return false;
-  }
-
-  private static final EStructuralFeature UNINITIALIZED_SEQUENCE_FEATURE = (EAttribute)SDOFactory.eINSTANCE.createAttribute();
-  protected static final EStructuralFeature VIRTUAL_SEQUENCE_FEATURE = (EAttribute)SDOFactory.eINSTANCE.createAttribute();
-  
-  private EStructuralFeature sequenceFeature = UNINITIALIZED_SEQUENCE_FEATURE;
-
-  public EStructuralFeature getSequenceFeature()
-  {
-    if (sequenceFeature == UNINITIALIZED_SEQUENCE_FEATURE)
-    {
-      EStructuralFeature sequenceFeatureCandidate = null;
-      boolean hasNonDerivedFeatures = false;
-      
-      for (Iterator iterator = getEAllStructuralFeatures().iterator(); iterator.hasNext(); ) 
-      {
-        EStructuralFeature eStructuralFeature = (EStructuralFeature)iterator.next();
-        if (!eStructuralFeature.isDerived()) {
-          if (sequenceFeatureCandidate == null && isSequenceFeatureMap(eStructuralFeature))
-            sequenceFeatureCandidate = eStructuralFeature;
-          else if (isElementFeature(eStructuralFeature) && !DataObjectUtil.isInternalProperty(eStructuralFeature))
-            hasNonDerivedFeatures = true;
-        }
-      }
-      
-      sequenceFeature = 
-        sequenceFeatureCandidate != null && hasNonDerivedFeatures ? 
-          VIRTUAL_SEQUENCE_FEATURE : 
-          sequenceFeatureCandidate;
-    }
-    
-    return sequenceFeature;
-  }
-  
-  protected boolean isSequenceFeatureMap(EStructuralFeature eStructuralFeature)
-  {
-    switch (ExtendedMetaData.INSTANCE.getFeatureKind(eStructuralFeature))
-    {
-      case ExtendedMetaData.ELEMENT_WILDCARD_FEATURE:
-        return eStructuralFeature.getUpperBound() != 1;
-      case ExtendedMetaData.GROUP_FEATURE:
-        return true;
-    }
-    return false;
-  }
-
-  protected boolean isElementFeature(EStructuralFeature eStructuralFeature)
-  {
-    switch (ExtendedMetaData.INSTANCE.getFeatureKind(eStructuralFeature))
-    {
-      case ExtendedMetaData.ATTRIBUTE_FEATURE:
-      case ExtendedMetaData.ATTRIBUTE_WILDCARD_FEATURE:
-        return false;
-    }
-    return true;
-  }
-  
-  public List getVirtualSequenceProperties()
-  {
-    List result = new ArrayList();
-    for (Iterator iterator = getEAllStructuralFeatures().iterator(); iterator.hasNext(); ) 
-    {
-      EStructuralFeature eStructuralFeature = (EStructuralFeature)iterator.next();
-      if (!eStructuralFeature.isDerived() && isElementFeature(eStructuralFeature))
-        result.add(eStructuralFeature);
-    }
-    return result;
-  }
-  
-  public void setSequenceFeature(EAttribute sequenceFeature)
-  {
-    getEStructuralFeatures().add(sequenceFeature);
-    this.sequenceFeature = sequenceFeature;
-  }
-  
-  /**
-   * <!-- begin-user-doc -->
-   * <!-- end-user-doc -->
-   * @generated NOT
-   */
-  public boolean isSequenced()
-  {
-    return getSequenceFeature() != null;      
-  }
-  
-  protected List aliasNames = null;
-
-  /**
-   * <!-- begin-user-doc -->
-   * <!-- end-user-doc -->
-   * @generated NOT
-   */
-  public List getAliasNames()
-  {
-    if (aliasNames == null)
-    {
-      aliasNames = DataObjectUtil.getAliasNames(this);
-    }
-    return aliasNames;
-  }
-  
-  protected List declaredProperties = null;
-  
-  public List getDeclaredProperties()
-  {
-    if (declaredProperties == null) {
-      initPropertyLists();
-    }
-    return declaredProperties;
-  }
-  
-  protected List extendedProperties = null;
-  
-  public List getExtendedProperties()
-  {
-    if (extendedProperties == null) {
-      initPropertyLists();
-    }
-    return extendedProperties;
-  }
-  
-  protected List getTypeFeatures()
-  {
-    return getEStructuralFeatures();    
-  }
-  
-  protected void initPropertyLists()
-  {
-    List declaredProperties = new ArrayList();
-    List extendedProperties = Collections.EMPTY_LIST;
-    
-    for (Iterator i = getTypeFeatures().iterator(); i.hasNext(); ) {
-      EStructuralFeature eStructuralFeature = (EStructuralFeature)i.next();
-      boolean isExtendedProperty = DataObjectUtil.isInternalProperty(eStructuralFeature);
-      if (isExtendedProperty) {
-        if (extendedProperties == Collections.EMPTY_LIST)
-          extendedProperties = new ArrayList();
-        extendedProperties.add(eStructuralFeature);
-      }
-      else
-        declaredProperties.add(eStructuralFeature);
-    }
-    this.declaredProperties = declaredProperties;
-    this.extendedProperties = extendedProperties;
-  }
-  
-  public EList getEStructuralFeatures()
-  {
-    if (eStructuralFeatures == null)
-    {
-      eStructuralFeatures = 
-        new EObjectContainmentWithInverseEList(EStructuralFeature.class, this, EcorePackage.ECLASS__ESTRUCTURAL_FEATURES, EcorePackage.ESTRUCTURAL_FEATURE__ECONTAINING_CLASS)
-        {
-          protected void didChange()
-          {
-            declaredProperties = extendedProperties = null;
-          }
-        };
-    }
-    return eStructuralFeatures;
-  }
-
-  protected List allProperties = null;
-  protected List allExtendedProperties = null;
-  protected EList allFeaturesCache = null;
-
-  /**
-   * <!-- begin-user-doc -->
-   * <!-- end-user-doc -->
-   * @generated NOT
-   */
-  public List getProperties()
-  {
-    final EList allFeatures = getEAllStructuralFeatures();
-    if (allFeatures != allFeaturesCache) 
-    {
-      allFeaturesCache = allFeatures;
-      allProperties = allExtendedProperties = null;
-    }
-    if (allProperties == null)
-    { 
-      List allProperties = new UniqueEList();
-      for (final Iterator iterator = getBaseTypes().iterator(); iterator.hasNext(); )
-      {
-        Type baseType = (Type)iterator.next();
-        allProperties.addAll(baseType.getProperties());
-      }
-      allProperties.addAll(getDeclaredProperties());     
-      this.allProperties = allProperties;
-    }
-    return allProperties;
-  }
-
-  public List getAllExtendedProperties()
-  {
-    final EList allFeatures = getEAllStructuralFeatures();
-    if (allFeatures != allFeaturesCache) 
-    {
-      allFeaturesCache = allFeatures;
-      allProperties = allExtendedProperties = null;
-    }
-    if (allExtendedProperties == null)
-    {
-      List allExtendedProperties = new UniqueEList();
-      for (final Iterator iterator = getBaseTypes().iterator(); iterator.hasNext(); )
-      {
-        Type baseType = (Type)iterator.next();
-        allExtendedProperties.addAll(((ClassImpl)baseType).getAllExtendedProperties());
-      }
-      allExtendedProperties.addAll(getExtendedProperties());     
-      this.allExtendedProperties = allExtendedProperties;
-    }
-    return allExtendedProperties;
-  }
-  
-  protected boolean isOpenFeatureMap(EStructuralFeature eStructuralFeature)
-  {
-    switch (ExtendedMetaData.INSTANCE.getFeatureKind(eStructuralFeature))
-    {
-      case ExtendedMetaData.ELEMENT_WILDCARD_FEATURE:
-        return eStructuralFeature != ExtendedMetaData.INSTANCE.getMixedFeature(this);
-      case ExtendedMetaData.ATTRIBUTE_WILDCARD_FEATURE:
-      //FB I think this is wrong ... case ExtendedMetaData.GROUP_FEATURE:
-        return true;
-    }
-    return false;
-  }
-
-  public void addOpenProperties(EObject dataObject, Collection propertyList)
-  {
-    for (final Iterator iterator = getBaseTypes().iterator(); iterator.hasNext(); )
-    {
-      ClassImpl baseType = (ClassImpl)iterator.next();
-      baseType.addOpenProperties(dataObject, propertyList);
-    }
-
-    for (final Iterator iter = getExtendedProperties().iterator(); iter.hasNext(); )
-    {
-      EStructuralFeature eStructuralFeature = (EStructuralFeature)iter.next();
-      if (isOpenFeatureMap(eStructuralFeature))
-      {
-        List features = (List)dataObject.eGet(eStructuralFeature);
-        for (int j = 0, size = features.size(); j < size; ++j)
-        {
-          FeatureMap.Entry entry = (FeatureMap.Entry)features.get(j);
-          EStructuralFeature entryFeature = entry.getEStructuralFeature();
-          Property property = BasicSequence.getFeatureProperty(entryFeature);
-          if (property != null) propertyList.add(entryFeature);
-        }
-      }
-    }
-  }
-  
-  public Property getOpenProperty(EObject dataObject, String featureName)
-  {
-    for (final Iterator iterator = getBaseTypes().iterator(); iterator.hasNext(); )
-    {
-      ClassImpl baseType = (ClassImpl)iterator.next();
-      Property result = baseType.getOpenProperty(dataObject, featureName);
-      if (result != null) return result;
-    }
-    
-    Set openFeatureSet = new HashSet();
-    for (final Iterator iter = getExtendedProperties().iterator(); iter.hasNext(); )
-    {
-      EStructuralFeature eStructuralFeature = (EStructuralFeature)iter.next();
-      //if (isOpenFeatureMap(eStructuralFeature)) 
-      //FB The above check excludes subsitition groups - i.e., doesn't support dObj.get("element.substitution")
-      if (FeatureMapUtil.isFeatureMap(eStructuralFeature))
-      {
-        List features = (List)dataObject.eGet(eStructuralFeature);
-        for (int j = 0, size = features.size(); j < size; ++j)
-        {
-          FeatureMap.Entry entry = (FeatureMap.Entry)features.get(j);
-          EStructuralFeature entryFeature = entry.getEStructuralFeature();
-          if (openFeatureSet.add(entryFeature))
-          {
-            Property property = BasicSequence.getFeatureProperty(entryFeature);
-            if (property != null)
-            {
-              if (property.getName().equals(featureName)) return (Property)entryFeature;
-               List aliasNames = property.getAliasNames();
-              for (int aliasCount = aliasNames.size(); aliasCount > 0; )
-              {
-                if (aliasNames.get(--aliasCount).equals(featureName)) return (Property)entryFeature;
-              }
-            }
-          }
-        }
-      }
-    }
-    
-    return null;
-  }
-  
-  /*
-  public Property getOpenProperty(DataObject dataObject, String featureName)
-  {
-    EObject eObject = (EObject)dataObject;
-    EClass eClass = eObject.eClass();
-    Set openFeatureSet = new HashSet();
-    for (int i = 0, count = eClass.getEAllStructuralFeatures().size(); i < count; ++i)
-    {
-      EStructuralFeature eStructuralFeature = eClass.getEStructuralFeature(i);
-      if (FeatureMapUtil.isFeatureMap(eStructuralFeature))
-      {
-        List features = (List)eObject.eGet(eStructuralFeature);
-        for (int j = 0, size = features.size(); j < size; ++j)
-        {
-          FeatureMap.Entry entry = (FeatureMap.Entry)features.get(j);
-          EStructuralFeature entryFeature = entry.getEStructuralFeature();
-          if (openFeatureSet.add(entryFeature))
-          {
-            Property property = (Property)entryFeature;
-            if (property.getName().equals(featureName)) return (Property)entryFeature;
-  
-            List aliasNames = property.getAliasNames();
-            for (int aliasCount = aliasNames.size(); aliasCount > 0; )
-            {
-              if (aliasNames.get(--aliasCount).equals(featureName)) return (Property)entryFeature;
-            }
-          }
-        }
-      }
-    }
-    return null;
-  }
-  */
-
-  /**
-   * <!-- begin-user-doc -->
-   * <!-- end-user-doc -->
-   * @generated NOT
-   */
-  public List getBaseTypes()
-  {
-    return getESuperTypes();
-  }
-
-  private void initAliasNames() {
-    Map result = new HashMap();
-    for (Iterator i = getProperties().iterator(); i.hasNext();)
-    {
-      Property property = (Property)i.next();
-      result.put(property.getName(), property);
-
-      List aliasNames = property.getAliasNames();
-      for (int count = aliasNames.size(); count > 0;)
-      {
-        result.put(aliasNames.get(--count), property);
-      }
-    }
-    propertyNameToPropertyMap = result;
-  }
-
-  /**
-   * <!-- begin-user-doc -->
-   * <!-- end-user-doc -->
-   * @generated NOT
-   */
-  public Property getProperty(String propertyName)
-  {
-    if (propertyNameToPropertyMap == null) initAliasNames();
-    Property property = (Property)propertyNameToPropertyMap.get(propertyName);
-    if (property == null && !isOpen()) {
-      initAliasNames();
-      property = (Property)propertyNameToPropertyMap.get(propertyName);
-    }
-    return property;
-  }
-  
-  protected Map propertyNameToPropertyMap;
-  
-  public List getInstanceProperties() {
-    return DataObjectUtil.getMetaObjectInstanceProperties(this);
-  }
-
-  public Object get(Property property) {
-    return DataObjectUtil.getMetaObjectInstanceProperty(this, property);
-  }
-  
-  /////////////////////////////////////////////////////////////////////////////////////////////////////////
-  // org.apache.tuscany.sdo.model.Type method implementations
-  /////////////////////////////////////////////////////////////////////////////////////////////////////////
-  
-  public List getBaseType() {
-    return this.getBaseTypes();
-  }
-
-  public List getProperty() {
-    return this.getProperties();
-  }
-
-  public List getAliasName() {
-    return this.getAliasNames();
-  }
-
-  public void unsetAbstract() {
-    eUnset(EcorePackage.eINSTANCE.getEClass_Abstract());
-  }
-
-  public boolean isSetAbstract() {
-    return eIsSet(EcorePackage.eINSTANCE.getEClass_Abstract());
-  }
-  
-  public Sequence getAny() {
-    throw new UnsupportedOperationException();
-  }
-
-  public Sequence getAnyAttribute() {
-    throw new UnsupportedOperationException();
-  }
-  
-  public void setDataType(boolean value) {
-    throw new UnsupportedOperationException("Type is frozen and cannot be modified");
-  }
-
-  public void unsetDataType() {
-    throw new UnsupportedOperationException("Type is frozen and cannot be modified");
-  }
-
-  public boolean isSetDataType() {
-    return false;
-  }
-
-  public void setOpen(boolean value) {
-    throw new UnsupportedOperationException("Type is frozen and cannot be modified");
-  }
-
-  public void unsetOpen() {
-    throw new UnsupportedOperationException("Type is frozen and cannot be modified");
-  }
-
-  public boolean isSetOpen() {
-    return isOpen();
-  }
-
-  public void setSequenced(boolean value) {
-    throw new UnsupportedOperationException("Type is frozen and cannot be modified");
-  }
-
-  public void unsetSequenced() {
-    throw new UnsupportedOperationException("Type is frozen and cannot be modified");
-  }
-
-  public boolean isSetSequenced() {
-    return isSequenced();
-  }
-
-  public void unsetName()
-  {
-    throw new UnsupportedOperationException("Type is frozen and cannot be modified");
-  }
-
-  public boolean isSetName()
-  {
-    return true;
-  }
-  
-  public void unsetUri()
-  {
-    throw new UnsupportedOperationException("Type is frozen and cannot be modified");
-  }
-
-  public boolean isSetUri()
-  {
-    return true;
-  }
-
-  public void setUri(String value) {
-    throw new UnsupportedOperationException("Type is frozen and cannot be modified");
-  }
-  
-  public String getUri() {
-    return getURI();
-  }
-
-  public Property getChangeSummaryProperty() {
-    if (changeSummaryPropertyCache == UNINITIALIZED_PROPERTY) {
-      changeSummaryPropertyCache = null;
-
-      // Find property of type ChangeSummaryType, if one exists
-      Type csType = ((ModelFactoryImpl)ModelFactory.INSTANCE).getChangeSummaryType();
-      for (Iterator props = getProperties().iterator(); props.hasNext(); ) {
-        Property p = (Property)props.next();
-        if(csType == p.getType()) {
-          changeSummaryPropertyCache = p;
-          break;
-        }
-      }
-    }
-
-    return changeSummaryPropertyCache;
-  }
-
-  /////////////////////////////////////////////////////////////////////////////////////////////////////////
-  // DataObject method implementations
-  /////////////////////////////////////////////////////////////////////////////////////////////////////////
-  /*
-  public Object get(int propertyIndex) {
-    return DataObjectUtil.get(this, propertyIndex);
-  }
-  
-  public void set(int propertyIndex, Object value) {
-    throw new UnsupportedOperationException("Type is frozen and cannot be modified");
-  }
-
-  public boolean isSet(int propertyIndex) {
-    return DataObjectUtil.isSet(this, propertyIndex);
-  }
-
-  public void unset(int propertyIndex) {
-    throw new UnsupportedOperationException("Type is frozen and cannot be modified");
-  }
-  
-  public Object get(Property property) {
-    return DataObjectUtil.get(this, ((EStructuralFeature)property).getFeatureID());
-  }
-  
-  public void set(Property property, Object value) {
-    throw new UnsupportedOperationException("Type is frozen and cannot be modified");
-  }
-
-  public boolean isSet(Property property) {
-    return DataObjectUtil.isSet(this, ((EStructuralFeature)property).getFeatureID());
-  }
-
-  public void unset(Property property) {
-    throw new UnsupportedOperationException("Type is frozen and cannot be modified");
-  }
-  
-  public DataObject getContainer() {
-    return (DataObject)eContainer();
-  }
-
-  public Property getContainmentProperty() {
-    return (Property)eContainmentFeature();
-  }
-
-  public Type getType() {
-    return (Type)ModelPackageImpl.eINSTANCE.getType();
-  }
-  
-  // Remaining DataObject methods are (will be) implemented as straight delegation to DataObjectUtil
-
-  public Object get(String path) {
-    return DataObjectUtil.get(this, path);
-  }
-  
-  public void set(String path, Object value) {
-    throw new UnsupportedOperationException("Type is frozen and cannot be modified");
-  }
-
-  public boolean isSet(String path) {
-    return DataObjectUtil.isSet(this, path);
-  }
-
-  public void unset(String path) {
-    throw new UnsupportedOperationException("Type is frozen and cannot be modified");
-  }
-
-  public boolean getBoolean(String path) {
-    return DataObjectUtil.getBoolean(get(path));
-  }
-
-  public byte getByte(String path) {
-    return DataObjectUtil.getByte(get(path));
-  }
-
-  public char getChar(String path) {
-    return DataObjectUtil.getChar(get(path));
-  }
-
-  public double getDouble(String path) {
-    return DataObjectUtil.getDouble(get(path));
-  }
-
-  public float getFloat(String path) {
-    return DataObjectUtil.getFloat(get(path));
-  }
-
-  public int getInt(String path) {
-    return DataObjectUtil.getInt(get(path));
-  }
-
-  public long getLong(String path) {
-    return DataObjectUtil.getLong(get(path));
-  }
-
-  public short getShort(String path) {
-    return DataObjectUtil.getShort(get(path));
-  }
-
-  public byte[] getBytes(String path) {
-    return DataObjectUtil.getBytes(get(path));
-  }
-
-  public BigDecimal getBigDecimal(String path) {
-    return DataObjectUtil.getBigDecimal(get(path));
-  }
-
-  public BigInteger getBigInteger(String path) {
-    return DataObjectUtil.getBigInteger(get(path));
-  }
-
-  public DataObject getDataObject(String path) {
-    return (DataObject)get(path);
-  }
-
-  public Date getDate(String path) {
-    return DataObjectUtil.getDate(get(path));
-  }
-
-  public String getString(String path) {
-    return DataObjectUtil.getString(get(path));
-  }
-
-  public List getList(String path) {
-    return (List)get(path);
-  }
-
-  public Sequence getSequence(String path) {
-    return (Sequence)get(path);
-  }
-
-  public void setBoolean(String path, boolean value) {
-    set(path, new Boolean(value));
-  }
-
-  public void setByte(String path, byte value) {
-    set(path, new Byte(value));
-  }
-
-  public void setChar(String path, char value) {
-    set(path, new Character(value));
-  }
-
-  public void setDouble(String path, double value) {
-    set(path, new Double(value));
-  }
-
-  public void setFloat(String path, float value) {
-    set(path, new Float(value));
-  }
-
-  public void setInt(String path, int value) {
-    set(path, new Integer(value));
-  }
-
-  public void setLong(String path, long value) {
-    set(path, new Long(value));
-  }
-
-  public void setShort(String path, short value) {
-    set(path, new Short(value));
-  }
-
-  public void setBytes(String path, byte[] value) {
-    set(path, value);
-  }
-
-  public void setBigDecimal(String path, BigDecimal value) {
-    set(path, value);
-  }
-
-  public void setBigInteger(String path, BigInteger value) {
-    set(path, value);
-  }
-
-  public void setDataObject(String path, DataObject value) {
-    set(path, value);
-  }
-
-  public void setDate(String path, Date value) {
-    set(path, value);
-  }
-
-  public void setString(String path, String value) {
-    set(path, value);
-  }
-
-  public void setList(String path, List value) {
-    set(path, value);
-  }
-
-  public boolean getBoolean(int propertyIndex) {
-    return DataObjectUtil.getBoolean(this, propertyIndex);
-  }
-
-  public byte getByte(int propertyIndex) {
-    return DataObjectUtil.getByte(this, propertyIndex);
-  }
-
-  public char getChar(int propertyIndex) {
-    return DataObjectUtil.getChar(this, propertyIndex);
-  }
-
-  public double getDouble(int propertyIndex) {
-    return DataObjectUtil.getDouble(this, propertyIndex);
-  }
-
-  public float getFloat(int propertyIndex) {
-    return DataObjectUtil.getFloat(this, propertyIndex);
-  }
-
-  public int getInt(int propertyIndex) {
-    return DataObjectUtil.getInt(this, propertyIndex);
-  }
-
-  public long getLong(int propertyIndex) {
-    return DataObjectUtil.getLong(this, propertyIndex);
-  }
-
-  public short getShort(int propertyIndex) {
-    return DataObjectUtil.getShort(this, propertyIndex);
-  }
-
-  public byte[] getBytes(int propertyIndex) {
-    return DataObjectUtil.getBytes(this, propertyIndex);
-  }
-
-  public BigDecimal getBigDecimal(int propertyIndex) {
-    return DataObjectUtil.getBigDecimal(this, propertyIndex);
-  }
-
-  public BigInteger getBigInteger(int propertyIndex) {
-    return DataObjectUtil.getBigInteger(this, propertyIndex);
-  }
-
-  public DataObject getDataObject(int propertyIndex) {
-    return DataObjectUtil.getDataObject(this, propertyIndex);
-  }
-
-  public Date getDate(int propertyIndex) {
-    return DataObjectUtil.getDate(this, propertyIndex);
-  }
-
-  public String getString(int propertyIndex) {
-    return DataObjectUtil.getString(this, propertyIndex);
-  }
-
-  public List getList(int propertyIndex) {
-    return DataObjectUtil.getList(this, propertyIndex);
-  }
-
-  public Sequence getSequence(int propertyIndex) {
-    return DataObjectUtil.getSequence(this, propertyIndex);
-  }
-
-  public void setBoolean(int propertyIndex, boolean value) {
-    set(propertyIndex, new Boolean(value));
-  }
-
-  public void setByte(int propertyIndex, byte value) {
-    set(propertyIndex, new Byte(value));
-  }
-
-  public void setChar(int propertyIndex, char value) {
-    set(propertyIndex, new Character(value));
-  }
-
-  public void setDouble(int propertyIndex, double value) {
-    set(propertyIndex, new Double(value));
-  }
-
-  public void setFloat(int propertyIndex, float value) {
-    set(propertyIndex, new Float(value));
-  }
-
-  public void setInt(int propertyIndex, int value) {
-    set(propertyIndex, new Integer(value));
-  }
-
-  public void setLong(int propertyIndex, long value) {
-    set(propertyIndex, new Long(value));
-  }
-
-  public void setShort(int propertyIndex, short value) {
-    set(propertyIndex, new Short(value));
-  }
-
-  public void setBytes(int propertyIndex, byte[] value) {
-    set(propertyIndex, value);
-  }
-
-  public void setBigDecimal(int propertyIndex, BigDecimal value) {
-    set(propertyIndex, value);
-  }
-
-  public void setBigInteger(int propertyIndex, BigInteger value) {
-    set(propertyIndex, value);
-  }
-
-  public void setDataObject(int propertyIndex, DataObject value) {
-    set(propertyIndex, value);
-  }
-
-  public void setDate(int propertyIndex, Date value) {
-    set(propertyIndex, value);
-  }
-
-  public void setString(int propertyIndex, String value) {
-    set(propertyIndex, value);
-  }
-
-  public void setList(int propertyIndex, List value) {
-    set(propertyIndex, value);
-  }
-
-  public boolean getBoolean(Property property) {
-    return DataObjectUtil.getBoolean(this, property);
-  }
-
-  public byte getByte(Property property) {
-    return DataObjectUtil.getByte(this, property);
-  }
-
-  public char getChar(Property property) {
-    return DataObjectUtil.getChar(this, property);
-  }
-
-  public double getDouble(Property property) {
-    return DataObjectUtil.getDouble(this, property);
-  }
-
-  public float getFloat(Property property) {
-    return DataObjectUtil.getFloat(this, property);
-  }
-
-  public int getInt(Property property) {
-    return DataObjectUtil.getInt(this, property);
-  }
-
-  public long getLong(Property property) {
-    return DataObjectUtil.getLong(this, property);
-  }
-
-  public short getShort(Property property) {
-    return DataObjectUtil.getShort(this, property);
-  }
-
-  public byte[] getBytes(Property property) {
-    return DataObjectUtil.getBytes(this, property);
-  }
-
-  public BigDecimal getBigDecimal(Property property) {
-    return DataObjectUtil.getBigDecimal(this, property);
-  }
-
-  public BigInteger getBigInteger(Property property) {
-    return DataObjectUtil.getBigInteger(this, property);
-  }
-
-  public DataObject getDataObject(Property property) {
-    return DataObjectUtil.getDataObject(this, property);
-  }
-
-  public Date getDate(Property property) {
-    return DataObjectUtil.getDate(this, property);
-  }
-
-  public String getString(Property property) {
-    return DataObjectUtil.getString(this, property);
-  }
-
-  public List getList(Property property) {
-    return DataObjectUtil.getList(this, property);
-  }
-
-  public Sequence getSequence(Property property) {
-    return DataObjectUtil.getSequence(this, property);
-  }
-
-  public void setBoolean(Property property, boolean value) {
-    set(property, new Boolean(value));
-  }
-
-  public void setByte(Property property, byte value) {
-    set(property, new Byte(value));
-  }
-
-  public void setChar(Property property, char value) {
-    set(property, new Character(value));
-  }
-
-  public void setDouble(Property property, double value) {
-    set(property, new Double(value));
-  }
-
-  public void setFloat(Property property, float value) {
-    set(property, new Float(value));
-  }
-
-  public void setInt(Property property, int value) {
-    set(property, new Integer(value));
-  }
-
-  public void setLong(Property property, long value) {
-    set(property, new Long(value));
-  }
-
-  public void setShort(Property property, short value) {
-    set(property, new Short(value));
-  }
-
-  public void setBytes(Property property, byte[] value) {
-    set(property, value);
-  }
-
-  public void setBigDecimal(Property property, BigDecimal value) {
-    set(property, value);
-  }
-
-  public void setBigInteger(Property property, BigInteger value) {
-    set(property, value);
-  }
-
-  public void setDataObject(Property property, DataObject value) {
-    set(property, value);
-  }
-
-  public void setDate(Property property, Date value) {
-    set(property, value);
-  }
-
-  public void setString(Property property, String value) {
-    set(property, value);
-  }
-
-  public void setList(Property property, List value) {
-    set(property, value);
-  }
-
-  public DataObject createDataObject(String propertyName) {
-    throw new UnsupportedOperationException("Type is frozen and cannot be modified");
-  }
-
-  public DataObject createDataObject(int propertyIndex) {
-    throw new UnsupportedOperationException("Type is frozen and cannot be modified");
-  }
-
-  public DataObject createDataObject(Property property) {
-    throw new UnsupportedOperationException("Type is frozen and cannot be modified");
-  }
-
-  public DataObject createDataObject(String propertyName, String namespaceURI, String typeName) {
-    throw new UnsupportedOperationException("Type is frozen and cannot be modified");
-  }
-
-  public DataObject createDataObject(int propertyIndex, String namespaceURI, String typeName) {
-    throw new UnsupportedOperationException("Type is frozen and cannot be modified");
-  }
-
-  public DataObject createDataObject(Property property, Type type) {
-    throw new UnsupportedOperationException("Type is frozen and cannot be modified");
-  }
-
-  public void delete() {
-    throw new UnsupportedOperationException("Type is frozen and cannot be modified");
-  }
-
-  public DataGraph getDataGraph() {
-    return DataObjectUtil.getDataGraph(this);
-  }
-
-  public Sequence getSequence() {
-    EAttribute mixedFeature = BasicExtendedMetaData.INSTANCE.getMixedFeature(eClass());
-    return mixedFeature != null ? (Sequence)eGet(mixedFeature, true, false) : null;
-  }
-
-  public List getInstanceProperties() {
-    return DataObjectUtil.getInstanceProperties(this);
-  }
-
-  public DataObject getRootObject() {
-    return DataObjectUtil.getRootObject(this);
-  }
-
-  public ChangeSummary getChangeSummary() {
-    // TODO: implement this method
-    throw new UnsupportedOperationException();
-  }
-
-  public void detach() {
-    throw new UnsupportedOperationException("Type is frozen and cannot be modified");
-    //DataObjectUtil.detach(this);
-  }
-  */
+	/**
+	   * Returns whether the object is an instance of this classifier.
+	   * Overridden because it does not use dynamicInstance check in Tuscany.
+	   * @param object the object in question.
+	   * @return whether the object is an instance.
+	   * @see Class#isInstance
+	   */
+	  public boolean isInstance(Object object)
+	  {
+	    if (object != null)
+	    {
+	      Class<?> instanceClass = getInstanceClass();
+	      if (instanceClass != null)
+	      {
+	        if (instanceClass.isPrimitive())
+	        {
+	          if (instanceClass == Boolean.TYPE)
+	          {
+	            return object instanceof Boolean;
+	          }
+	          else if (instanceClass == Integer.TYPE)
+	          {
+	            return object instanceof Integer;
+	          }
+	          else if (instanceClass == Float.TYPE)
+	          {
+	            return object instanceof Float;
+	          }
+	          else if (instanceClass == Byte.TYPE)
+	          {
+	            return object instanceof Byte;
+	          }
+	          else if (instanceClass == Character.TYPE)
+	          {
+	            return object instanceof Character;
+	          }
+	          else if (instanceClass == Double.TYPE)
+	          {
+	            return object instanceof Double;
+	          }
+	          else if (instanceClass == Short.TYPE)
+	          {
+	            return object instanceof Short;
+	          }
+	          else if (instanceClass == Long.TYPE)
+	          {
+	            return object instanceof Long;
+	          }
+	        }
+	        else
+	        {
+	          return instanceClass.isInstance(object);
+	        }
+	      }
+	      else if (object instanceof EObject)
+	      {
+	        return dynamicIsInstance((EObject)object);
+	      }
+	    }
+
+	    return false;
+	  }
+
+	// ///////////////////////////////////////////////////////////////////////////////////////////////////////
+	// DataObject method implementations
+	// ///////////////////////////////////////////////////////////////////////////////////////////////////////
+	/*
+	 * public Object get(int propertyIndex) { return DataObjectUtil.get(this,
+	 * propertyIndex); }
+	 * 
+	 * public void set(int propertyIndex, Object value) { throw new
+	 * UnsupportedOperationException("Type is frozen and cannot be modified"); }
+	 * 
+	 * public boolean isSet(int propertyIndex) { return
+	 * DataObjectUtil.isSet(this, propertyIndex); }
+	 * 
+	 * public void unset(int propertyIndex) { throw new
+	 * UnsupportedOperationException("Type is frozen and cannot be modified"); }
+	 * 
+	 * public Object get(Property property) { return DataObjectUtil.get(this,
+	 * ((EStructuralFeature)property).getFeatureID()); }
+	 * 
+	 * public void set(Property property, Object value) { throw new
+	 * UnsupportedOperationException("Type is frozen and cannot be modified"); }
+	 * 
+	 * public boolean isSet(Property property) { return
+	 * DataObjectUtil.isSet(this,
+	 * ((EStructuralFeature)property).getFeatureID()); }
+	 * 
+	 * public void unset(Property property) { throw new
+	 * UnsupportedOperationException("Type is frozen and cannot be modified"); }
+	 * 
+	 * public DataObject getContainer() { return (DataObject)eContainer(); }
+	 * 
+	 * public Property getContainmentProperty() { return
+	 * (Property)eContainmentFeature(); }
+	 * 
+	 * public Type getType() { return
+	 * (Type)ModelPackageImpl.eINSTANCE.getType(); }
+	 * 
+	 * // Remaining DataObject methods are (will be) implemented as straight
+	 * delegation to DataObjectUtil
+	 * 
+	 * public Object get(String path) { return DataObjectUtil.get(this, path); }
+	 * 
+	 * public void set(String path, Object value) { throw new
+	 * UnsupportedOperationException("Type is frozen and cannot be modified"); }
+	 * 
+	 * public boolean isSet(String path) { return DataObjectUtil.isSet(this,
+	 * path); }
+	 * 
+	 * public void unset(String path) { throw new
+	 * UnsupportedOperationException("Type is frozen and cannot be modified"); }
+	 * 
+	 * public boolean getBoolean(String path) { return
+	 * DataObjectUtil.getBoolean(get(path)); }
+	 * 
+	 * public byte getByte(String path) { return
+	 * DataObjectUtil.getByte(get(path)); }
+	 * 
+	 * public char getChar(String path) { return
+	 * DataObjectUtil.getChar(get(path)); }
+	 * 
+	 * public double getDouble(String path) { return
+	 * DataObjectUtil.getDouble(get(path)); }
+	 * 
+	 * public float getFloat(String path) { return
+	 * DataObjectUtil.getFloat(get(path)); }
+	 * 
+	 * public int getInt(String path) { return DataObjectUtil.getInt(get(path));
+	 * }
+	 * 
+	 * public long getLong(String path) { return
+	 * DataObjectUtil.getLong(get(path)); }
+	 * 
+	 * public short getShort(String path) { return
+	 * DataObjectUtil.getShort(get(path)); }
+	 * 
+	 * public byte[] getBytes(String path) { return
+	 * DataObjectUtil.getBytes(get(path)); }
+	 * 
+	 * public BigDecimal getBigDecimal(String path) { return
+	 * DataObjectUtil.getBigDecimal(get(path)); }
+	 * 
+	 * public BigInteger getBigInteger(String path) { return
+	 * DataObjectUtil.getBigInteger(get(path)); }
+	 * 
+	 * public DataObject getDataObject(String path) { return
+	 * (DataObject)get(path); }
+	 * 
+	 * public Date getDate(String path) { return
+	 * DataObjectUtil.getDate(get(path)); }
+	 * 
+	 * public String getString(String path) { return
+	 * DataObjectUtil.getString(get(path)); }
+	 * 
+	 * public List getList(String path) { return (List)get(path); }
+	 * 
+	 * public Sequence getSequence(String path) { return (Sequence)get(path); }
+	 * 
+	 * public void setBoolean(String path, boolean value) { set(path, new
+	 * Boolean(value)); }
+	 * 
+	 * public void setByte(String path, byte value) { set(path, new
+	 * Byte(value)); }
+	 * 
+	 * public void setChar(String path, char value) { set(path, new
+	 * Character(value)); }
+	 * 
+	 * public void setDouble(String path, double value) { set(path, new
+	 * Double(value)); }
+	 * 
+	 * public void setFloat(String path, float value) { set(path, new
+	 * Float(value)); }
+	 * 
+	 * public void setInt(String path, int value) { set(path, new
+	 * Integer(value)); }
+	 * 
+	 * public void setLong(String path, long value) { set(path, new
+	 * Long(value)); }
+	 * 
+	 * public void setShort(String path, short value) { set(path, new
+	 * Short(value)); }
+	 * 
+	 * public void setBytes(String path, byte[] value) { set(path, value); }
+	 * 
+	 * public void setBigDecimal(String path, BigDecimal value) { set(path,
+	 * value); }
+	 * 
+	 * public void setBigInteger(String path, BigInteger value) { set(path,
+	 * value); }
+	 * 
+	 * public void setDataObject(String path, DataObject value) { set(path,
+	 * value); }
+	 * 
+	 * public void setDate(String path, Date value) { set(path, value); }
+	 * 
+	 * public void setString(String path, String value) { set(path, value); }
+	 * 
+	 * public void setList(String path, List value) { set(path, value); }
+	 * 
+	 * public boolean getBoolean(int propertyIndex) { return
+	 * DataObjectUtil.getBoolean(this, propertyIndex); }
+	 * 
+	 * public byte getByte(int propertyIndex) { return
+	 * DataObjectUtil.getByte(this, propertyIndex); }
+	 * 
+	 * public char getChar(int propertyIndex) { return
+	 * DataObjectUtil.getChar(this, propertyIndex); }
+	 * 
+	 * public double getDouble(int propertyIndex) { return
+	 * DataObjectUtil.getDouble(this, propertyIndex); }
+	 * 
+	 * public float getFloat(int propertyIndex) { return
+	 * DataObjectUtil.getFloat(this, propertyIndex); }
+	 * 
+	 * public int getInt(int propertyIndex) { return DataObjectUtil.getInt(this,
+	 * propertyIndex); }
+	 * 
+	 * public long getLong(int propertyIndex) { return
+	 * DataObjectUtil.getLong(this, propertyIndex); }
+	 * 
+	 * public short getShort(int propertyIndex) { return
+	 * DataObjectUtil.getShort(this, propertyIndex); }
+	 * 
+	 * public byte[] getBytes(int propertyIndex) { return
+	 * DataObjectUtil.getBytes(this, propertyIndex); }
+	 * 
+	 * public BigDecimal getBigDecimal(int propertyIndex) { return
+	 * DataObjectUtil.getBigDecimal(this, propertyIndex); }
+	 * 
+	 * public BigInteger getBigInteger(int propertyIndex) { return
+	 * DataObjectUtil.getBigInteger(this, propertyIndex); }
+	 * 
+	 * public DataObject getDataObject(int propertyIndex) { return
+	 * DataObjectUtil.getDataObject(this, propertyIndex); }
+	 * 
+	 * public Date getDate(int propertyIndex) { return
+	 * DataObjectUtil.getDate(this, propertyIndex); }
+	 * 
+	 * public String getString(int propertyIndex) { return
+	 * DataObjectUtil.getString(this, propertyIndex); }
+	 * 
+	 * public List getList(int propertyIndex) { return
+	 * DataObjectUtil.getList(this, propertyIndex); }
+	 * 
+	 * public Sequence getSequence(int propertyIndex) { return
+	 * DataObjectUtil.getSequence(this, propertyIndex); }
+	 * 
+	 * public void setBoolean(int propertyIndex, boolean value) {
+	 * set(propertyIndex, new Boolean(value)); }
+	 * 
+	 * public void setByte(int propertyIndex, byte value) { set(propertyIndex,
+	 * new Byte(value)); }
+	 * 
+	 * public void setChar(int propertyIndex, char value) { set(propertyIndex,
+	 * new Character(value)); }
+	 * 
+	 * public void setDouble(int propertyIndex, double value) {
+	 * set(propertyIndex, new Double(value)); }
+	 * 
+	 * public void setFloat(int propertyIndex, float value) { set(propertyIndex,
+	 * new Float(value)); }
+	 * 
+	 * public void setInt(int propertyIndex, int value) { set(propertyIndex, new
+	 * Integer(value)); }
+	 * 
+	 * public void setLong(int propertyIndex, long value) { set(propertyIndex,
+	 * new Long(value)); }
+	 * 
+	 * public void setShort(int propertyIndex, short value) { set(propertyIndex,
+	 * new Short(value)); }
+	 * 
+	 * public void setBytes(int propertyIndex, byte[] value) {
+	 * set(propertyIndex, value); }
+	 * 
+	 * public void setBigDecimal(int propertyIndex, BigDecimal value) {
+	 * set(propertyIndex, value); }
+	 * 
+	 * public void setBigInteger(int propertyIndex, BigInteger value) {
+	 * set(propertyIndex, value); }
+	 * 
+	 * public void setDataObject(int propertyIndex, DataObject value) {
+	 * set(propertyIndex, value); }
+	 * 
+	 * public void setDate(int propertyIndex, Date value) { set(propertyIndex,
+	 * value); }
+	 * 
+	 * public void setString(int propertyIndex, String value) {
+	 * set(propertyIndex, value); }
+	 * 
+	 * public void setList(int propertyIndex, List value) { set(propertyIndex,
+	 * value); }
+	 * 
+	 * public boolean getBoolean(Property property) { return
+	 * DataObjectUtil.getBoolean(this, property); }
+	 * 
+	 * public byte getByte(Property property) { return
+	 * DataObjectUtil.getByte(this, property); }
+	 * 
+	 * public char getChar(Property property) { return
+	 * DataObjectUtil.getChar(this, property); }
+	 * 
+	 * public double getDouble(Property property) { return
+	 * DataObjectUtil.getDouble(this, property); }
+	 * 
+	 * public float getFloat(Property property) { return
+	 * DataObjectUtil.getFloat(this, property); }
+	 * 
+	 * public int getInt(Property property) { return DataObjectUtil.getInt(this,
+	 * property); }
+	 * 
+	 * public long getLong(Property property) { return
+	 * DataObjectUtil.getLong(this, property); }
+	 * 
+	 * public short getShort(Property property) { return
+	 * DataObjectUtil.getShort(this, property); }
+	 * 
+	 * public byte[] getBytes(Property property) { return
+	 * DataObjectUtil.getBytes(this, property); }
+	 * 
+	 * public BigDecimal getBigDecimal(Property property) { return
+	 * DataObjectUtil.getBigDecimal(this, property); }
+	 * 
+	 * public BigInteger getBigInteger(Property property) { return
+	 * DataObjectUtil.getBigInteger(this, property); }
+	 * 
+	 * public DataObject getDataObject(Property property) { return
+	 * DataObjectUtil.getDataObject(this, property); }
+	 * 
+	 * public Date getDate(Property property) { return
+	 * DataObjectUtil.getDate(this, property); }
+	 * 
+	 * public String getString(Property property) { return
+	 * DataObjectUtil.getString(this, property); }
+	 * 
+	 * public List getList(Property property) { return
+	 * DataObjectUtil.getList(this, property); }
+	 * 
+	 * public Sequence getSequence(Property property) { return
+	 * DataObjectUtil.getSequence(this, property); }
+	 * 
+	 * public void setBoolean(Property property, boolean value) { set(property,
+	 * new Boolean(value)); }
+	 * 
+	 * public void setByte(Property property, byte value) { set(property, new
+	 * Byte(value)); }
+	 * 
+	 * public void setChar(Property property, char value) { set(property, new
+	 * Character(value)); }
+	 * 
+	 * public void setDouble(Property property, double value) { set(property,
+	 * new Double(value)); }
+	 * 
+	 * public void setFloat(Property property, float value) { set(property, new
+	 * Float(value)); }
+	 * 
+	 * public void setInt(Property property, int value) { set(property, new
+	 * Integer(value)); }
+	 * 
+	 * public void setLong(Property property, long value) { set(property, new
+	 * Long(value)); }
+	 * 
+	 * public void setShort(Property property, short value) { set(property, new
+	 * Short(value)); }
+	 * 
+	 * public void setBytes(Property property, byte[] value) { set(property,
+	 * value); }
+	 * 
+	 * public void setBigDecimal(Property property, BigDecimal value) {
+	 * set(property, value); }
+	 * 
+	 * public void setBigInteger(Property property, BigInteger value) {
+	 * set(property, value); }
+	 * 
+	 * public void setDataObject(Property property, DataObject value) {
+	 * set(property, value); }
+	 * 
+	 * public void setDate(Property property, Date value) { set(property,
+	 * value); }
+	 * 
+	 * public void setString(Property property, String value) { set(property,
+	 * value); }
+	 * 
+	 * public void setList(Property property, List value) { set(property,
+	 * value); }
+	 * 
+	 * public DataObject createDataObject(String propertyName) { throw new
+	 * UnsupportedOperationException("Type is frozen and cannot be modified"); }
+	 * 
+	 * public DataObject createDataObject(int propertyIndex) { throw new
+	 * UnsupportedOperationException("Type is frozen and cannot be modified"); }
+	 * 
+	 * public DataObject createDataObject(Property property) { throw new
+	 * UnsupportedOperationException("Type is frozen and cannot be modified"); }
+	 * 
+	 * public DataObject createDataObject(String propertyName, String
+	 * namespaceURI, String typeName) { throw new
+	 * UnsupportedOperationException("Type is frozen and cannot be modified"); }
+	 * 
+	 * public DataObject createDataObject(int propertyIndex, String
+	 * namespaceURI, String typeName) { throw new
+	 * UnsupportedOperationException("Type is frozen and cannot be modified"); }
+	 * 
+	 * public DataObject createDataObject(Property property, Type type) { throw
+	 * new
+	 * UnsupportedOperationException("Type is frozen and cannot be modified"); }
+	 * 
+	 * public void delete() { throw new
+	 * UnsupportedOperationException("Type is frozen and cannot be modified"); }
+	 * 
+	 * public DataGraph getDataGraph() { return
+	 * DataObjectUtil.getDataGraph(this); }
+	 * 
+	 * public Sequence getSequence() { EAttribute mixedFeature =
+	 * BasicExtendedMetaData.INSTANCE.getMixedFeature(eClass()); return
+	 * mixedFeature != null ? (Sequence)eGet(mixedFeature, true, false) : null;
+	 * }
+	 * 
+	 * public List getInstanceProperties() { return
+	 * DataObjectUtil.getInstanceProperties(this); }
+	 * 
+	 * public DataObject getRootObject() { return
+	 * DataObjectUtil.getRootObject(this); }
+	 * 
+	 * public ChangeSummary getChangeSummary() { // TODO: implement this method
+	 * throw new UnsupportedOperationException(); }
+	 * 
+	 * public void detach() { throw new
+	 * UnsupportedOperationException("Type is frozen and cannot be modified");
+	 * //DataObjectUtil.detach(this); }
+	 */
 
-} //ClassTypeImpl
+} // ClassTypeImpl

Modified: tuscany/sdo-java/branches/emf-2.5/impl/src/main/java/org/apache/tuscany/sdo/impl/DataGraphImpl.java
URL: http://svn.apache.org/viewvc/tuscany/sdo-java/branches/emf-2.5/impl/src/main/java/org/apache/tuscany/sdo/impl/DataGraphImpl.java?rev=1002496&r1=1002493&r2=1002496&view=diff
==============================================================================
--- tuscany/sdo-java/branches/emf-2.5/impl/src/main/java/org/apache/tuscany/sdo/impl/DataGraphImpl.java (original)
+++ tuscany/sdo-java/branches/emf-2.5/impl/src/main/java/org/apache/tuscany/sdo/impl/DataGraphImpl.java Wed Sep 29 07:10:57 2010
@@ -80,54 +80,54 @@ import commonj.sdo.helper.TypeHelper;
 public class DataGraphImpl extends EObjectImpl implements DataGraph, Adapter, Serializable
 {
   /**
-   * The default value of the '{@link #getResourceSet() <em>Resource Set</em>}' attribute.
-   * <!-- begin-user-doc -->
+	 * The default value of the '{@link #getResourceSet() <em>Resource Set</em>}' attribute.
+	 * <!-- begin-user-doc -->
    * <!-- end-user-doc -->
-   * @see #getResourceSet()
-   * @generated
-   * @ordered
-   */
+	 * @see #getResourceSet()
+	 * @generated
+	 * @ordered
+	 */
   protected static final ResourceSet RESOURCE_SET_EDEFAULT = null;
 
   /**
-   * The cached value of the '{@link #getResourceSet() <em>Resource Set</em>}' attribute.
-   * <!-- begin-user-doc -->
+	 * The cached value of the '{@link #getResourceSet() <em>Resource Set</em>}' attribute.
+	 * <!-- begin-user-doc -->
    * <!-- end-user-doc -->
-   * @see #getResourceSet()
-   * @generated
-   * @ordered
-   */
+	 * @see #getResourceSet()
+	 * @generated
+	 * @ordered
+	 */
   protected ResourceSet resourceSet = RESOURCE_SET_EDEFAULT;
 
   /**
-   * The default value of the '{@link #getRootResource() <em>Root Resource</em>}' attribute.
-   * <!-- begin-user-doc -->
+	 * The default value of the '{@link #getRootResource() <em>Root Resource</em>}' attribute.
+	 * <!-- begin-user-doc -->
    * <!-- end-user-doc -->
-   * @see #getRootResource()
-   * @generated
-   * @ordered
-   */
+	 * @see #getRootResource()
+	 * @generated
+	 * @ordered
+	 */
   protected static final Resource ROOT_RESOURCE_EDEFAULT = null;
 
   /**
-   * The cached value of the '{@link #getEChangeSummary() <em>EChange Summary</em>}' reference.
-   * <!-- begin-user-doc -->
-   * <!-- end-user-doc -->
-   * @see #getEChangeSummary()
-   * @generated
-   * @ordered
-   */
-  protected ChangeSummary eChangeSummary = null;
-
-  /**
-   * The cached value of the '{@link #getERootObject() <em>ERoot Object</em>}' reference.
-   * <!-- begin-user-doc -->
+	 * The cached value of the '{@link #getEChangeSummary() <em>EChange Summary</em>}' reference.
+	 * <!-- begin-user-doc -->
    * <!-- end-user-doc -->
-   * @see #getERootObject()
-   * @generated
-   * @ordered
-   */
-  protected EObject eRootObject = null;
+	 * @see #getEChangeSummary()
+	 * @generated
+	 * @ordered
+	 */
+  protected ChangeSummary eChangeSummary;
+
+  /**
+	 * The cached value of the '{@link #getERootObject() <em>ERoot Object</em>}' reference.
+	 * <!-- begin-user-doc -->
+   * <!-- end-user-doc -->
+	 * @see #getERootObject()
+	 * @generated
+	 * @ordered
+	 */
+  protected EObject eRootObject;
 
   /**
    * The cached extended metadata to wrap the resource set's package registry.
@@ -135,24 +135,24 @@ public class DataGraphImpl extends EObje
   protected ExtendedMetaData extendedMetaData;
 
   /**
-   * <!-- begin-user-doc -->
+	 * <!-- begin-user-doc -->
    * <!-- end-user-doc -->
-   * @generated
-   */
+	 * @generated
+	 */
   protected DataGraphImpl()
   {
-    super();
-  }
+		super();
+	}
 
   /**
-   * <!-- begin-user-doc -->
+	 * <!-- begin-user-doc -->
    * <!-- end-user-doc -->
-   * @generated
-   */
+	 * @generated
+	 */
   protected EClass eStaticClass()
   {
-    return SDOPackage.eINSTANCE.getDataGraph();
-  }
+		return SDOPackage.Literals.DATA_GRAPH;
+	}
 
   public boolean isAdapterForType(Object type)
   {
@@ -236,17 +236,17 @@ public class DataGraphImpl extends EObje
   }
 
   /**
-   * <!-- begin-user-doc -->
+	 * <!-- begin-user-doc -->
    * <!-- end-user-doc -->
-   * @generated
-   */
+	 * @generated
+	 */
   public void setResourceSetGen(ResourceSet newResourceSet)
   {
-    ResourceSet oldResourceSet = resourceSet;
-    resourceSet = newResourceSet;
-    if (eNotificationRequired())
-      eNotify(new ENotificationImpl(this, Notification.SET, SDOPackage.DATA_GRAPH__RESOURCE_SET, oldResourceSet, resourceSet));
-  }
+		ResourceSet oldResourceSet = resourceSet;
+		resourceSet = newResourceSet;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, SDOPackage.DATA_GRAPH__RESOURCE_SET, oldResourceSet, resourceSet));
+	}
 
   public void setResourceSet(ResourceSet newResourceSet)
   {
@@ -293,75 +293,73 @@ public class DataGraphImpl extends EObje
   }
 
   /**
-   * <!-- begin-user-doc -->
+	 * <!-- begin-user-doc -->
    * <!-- end-user-doc -->
-   * @generated
-   */
+	 * @generated
+	 */
   public ChangeSummary getEChangeSummary()
   {
-    return eChangeSummary;
-  }
+		return eChangeSummary;
+	}
 
   /**
-   * <!-- begin-user-doc -->
+	 * <!-- begin-user-doc -->
    * <!-- end-user-doc -->
-   * @generated
-   */
+	 * @generated
+	 */
   public NotificationChain basicSetEChangeSummary(ChangeSummary newEChangeSummary, NotificationChain msgs)
   {
-    ChangeSummary oldEChangeSummary = eChangeSummary;
-    eChangeSummary = newEChangeSummary;
-    if (eNotificationRequired())
-    {
-      ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, SDOPackage.DATA_GRAPH__ECHANGE_SUMMARY, oldEChangeSummary, newEChangeSummary);
-      if (msgs == null) msgs = notification; else msgs.add(notification);
-    }
-    return msgs;
-  }
+		ChangeSummary oldEChangeSummary = eChangeSummary;
+		eChangeSummary = newEChangeSummary;
+		if (eNotificationRequired()) {
+			ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, SDOPackage.DATA_GRAPH__ECHANGE_SUMMARY, oldEChangeSummary, newEChangeSummary);
+			if (msgs == null) msgs = notification; else msgs.add(notification);
+		}
+		return msgs;
+	}
 
   /**
-   * <!-- begin-user-doc -->
+	 * <!-- begin-user-doc -->
    * <!-- end-user-doc -->
-   * @generated
-   */
+	 * @generated
+	 */
   public void setEChangeSummary(ChangeSummary newEChangeSummary)
   {
-    if (newEChangeSummary != eChangeSummary)
-    {
-      NotificationChain msgs = null;
-      if (eChangeSummary != null)
-        msgs = ((InternalEObject)eChangeSummary).eInverseRemove(this, SDOPackage.CHANGE_SUMMARY__EDATA_GRAPH, ChangeSummary.class, msgs);
-      if (newEChangeSummary != null)
-        msgs = ((InternalEObject)newEChangeSummary).eInverseAdd(this, SDOPackage.CHANGE_SUMMARY__EDATA_GRAPH, ChangeSummary.class, msgs);
-      msgs = basicSetEChangeSummary(newEChangeSummary, msgs);
-      if (msgs != null) msgs.dispatch();
-    }
-    else if (eNotificationRequired())
-      eNotify(new ENotificationImpl(this, Notification.SET, SDOPackage.DATA_GRAPH__ECHANGE_SUMMARY, newEChangeSummary, newEChangeSummary));
-  }
+		if (newEChangeSummary != eChangeSummary) {
+			NotificationChain msgs = null;
+			if (eChangeSummary != null)
+				msgs = ((InternalEObject)eChangeSummary).eInverseRemove(this, SDOPackage.CHANGE_SUMMARY__EDATA_GRAPH, ChangeSummary.class, msgs);
+			if (newEChangeSummary != null)
+				msgs = ((InternalEObject)newEChangeSummary).eInverseAdd(this, SDOPackage.CHANGE_SUMMARY__EDATA_GRAPH, ChangeSummary.class, msgs);
+			msgs = basicSetEChangeSummary(newEChangeSummary, msgs);
+			if (msgs != null) msgs.dispatch();
+		}
+		else if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, SDOPackage.DATA_GRAPH__ECHANGE_SUMMARY, newEChangeSummary, newEChangeSummary));
+	}
 
   /**
-   * <!-- begin-user-doc -->
+	 * <!-- begin-user-doc -->
    * <!-- end-user-doc -->
-   * @generated
-   */
+	 * @generated
+	 */
   public EObject getERootObject()
   {
-    return eRootObject;
-  }
+		return eRootObject;
+	}
 
   /**
-   * <!-- begin-user-doc -->
+	 * <!-- begin-user-doc -->
    * <!-- end-user-doc -->
-   * @generated
-   */
+	 * @generated
+	 */
   public void setERootObjectGen(EObject newERootObject)
   {
-    EObject oldERootObject = eRootObject;
-    eRootObject = newERootObject;
-    if (eNotificationRequired())
-      eNotify(new ENotificationImpl(this, Notification.SET, SDOPackage.DATA_GRAPH__EROOT_OBJECT, oldERootObject, eRootObject));
-  }
+		EObject oldERootObject = eRootObject;
+		eRootObject = newERootObject;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, SDOPackage.DATA_GRAPH__EROOT_OBJECT, oldERootObject, eRootObject));
+	}
 
   public void setERootObject(EObject newERootObject)
   {
@@ -453,134 +451,86 @@ public class DataGraphImpl extends EObje
   }
 
   /**
-   * <!-- begin-user-doc -->
-   * <!-- end-user-doc -->
-   * @generated
-   */
-  public NotificationChain eInverseAdd(InternalEObject otherEnd, int featureID, Class baseClass, NotificationChain msgs)
-  {
-    if (featureID >= 0)
-    {
-      switch (eDerivedStructuralFeatureID(featureID, baseClass))
-      {
-        case SDOPackage.DATA_GRAPH__ECHANGE_SUMMARY:
-          if (eChangeSummary != null)
-            msgs = ((InternalEObject)eChangeSummary).eInverseRemove(this, SDOPackage.CHANGE_SUMMARY__EDATA_GRAPH, ChangeSummary.class, msgs);
-          return basicSetEChangeSummary((ChangeSummary)otherEnd, msgs);
-        default:
-          return eDynamicInverseAdd(otherEnd, featureID, baseClass, msgs);
-      }
-    }
-    if (eInternalContainer() != null)
-      msgs = eBasicRemoveFromContainer(msgs);
-    return eBasicSetContainer(otherEnd, featureID, msgs);
-  }
-
-  /**
-   * <!-- begin-user-doc -->
-   * <!-- end-user-doc -->
-   * @generated
-   */
-  public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, Class baseClass, NotificationChain msgs)
-  {
-    if (featureID >= 0)
-    {
-      switch (eDerivedStructuralFeatureID(featureID, baseClass))
-      {
-        case SDOPackage.DATA_GRAPH__ECHANGE_SUMMARY:
-          return basicSetEChangeSummary(null, msgs);
-        default:
-          return eDynamicInverseRemove(otherEnd, featureID, baseClass, msgs);
-      }
-    }
-    return eBasicSetContainer(null, featureID, msgs);
-  }
-
-  /**
-   * <!-- begin-user-doc -->
+	 * <!-- begin-user-doc -->
    * <!-- end-user-doc -->
-   * @generated
-   */
+	 * @generated
+	 */
   public Object eGet(int featureID, boolean resolve, boolean coreType)
   {
-    switch (featureID)
-    {
-      case SDOPackage.DATA_GRAPH__RESOURCE_SET:
-        return getResourceSet();
-      case SDOPackage.DATA_GRAPH__ROOT_RESOURCE:
-        return getRootResource();
-      case SDOPackage.DATA_GRAPH__ECHANGE_SUMMARY:
-        return getEChangeSummary();
-      case SDOPackage.DATA_GRAPH__EROOT_OBJECT:
-        return getERootObject();
-    }
-    return eDynamicGet(featureID, resolve, coreType);
-  }
+		switch (featureID) {
+			case SDOPackage.DATA_GRAPH__RESOURCE_SET:
+				return getResourceSet();
+			case SDOPackage.DATA_GRAPH__ROOT_RESOURCE:
+				return getRootResource();
+			case SDOPackage.DATA_GRAPH__ECHANGE_SUMMARY:
+				return getEChangeSummary();
+			case SDOPackage.DATA_GRAPH__EROOT_OBJECT:
+				return getERootObject();
+		}
+		return super.eGet(featureID, resolve, coreType);
+	}
 
   /**
-   * <!-- begin-user-doc -->
+	 * <!-- begin-user-doc -->
    * <!-- end-user-doc -->
-   * @generated
-   */
+	 * @generated
+	 */
   public void eSet(int featureID, Object newValue)
   {
-    switch (featureID)
-    {
-      case SDOPackage.DATA_GRAPH__RESOURCE_SET:
-        setResourceSet((ResourceSet)newValue);
-        return;
-      case SDOPackage.DATA_GRAPH__ECHANGE_SUMMARY:
-        setEChangeSummary((ChangeSummary)newValue);
-        return;
-      case SDOPackage.DATA_GRAPH__EROOT_OBJECT:
-        setERootObject((EObject)newValue);
-        return;
-    }
-    eDynamicSet(featureID, newValue);
-  }
+		switch (featureID) {
+			case SDOPackage.DATA_GRAPH__RESOURCE_SET:
+				setResourceSet((ResourceSet)newValue);
+				return;
+			case SDOPackage.DATA_GRAPH__ECHANGE_SUMMARY:
+				setEChangeSummary((ChangeSummary)newValue);
+				return;
+			case SDOPackage.DATA_GRAPH__EROOT_OBJECT:
+				setERootObject((EObject)newValue);
+				return;
+		}
+		super.eSet(featureID, newValue);
+	}
 
   /**
-   * <!-- begin-user-doc -->
+	 * <!-- begin-user-doc -->
    * <!-- end-user-doc -->
-   * @generated
-   */
+	 * @generated
+	 */
   public void eUnset(int featureID)
   {
-    switch (featureID)
-    {
-      case SDOPackage.DATA_GRAPH__RESOURCE_SET:
-        setResourceSet(RESOURCE_SET_EDEFAULT);
-        return;
-      case SDOPackage.DATA_GRAPH__ECHANGE_SUMMARY:
-        setEChangeSummary((ChangeSummary)null);
-        return;
-      case SDOPackage.DATA_GRAPH__EROOT_OBJECT:
-        setERootObject((EObject)null);
-        return;
-    }
-    eDynamicUnset(featureID);
-  }
+		switch (featureID) {
+			case SDOPackage.DATA_GRAPH__RESOURCE_SET:
+				setResourceSet(RESOURCE_SET_EDEFAULT);
+				return;
+			case SDOPackage.DATA_GRAPH__ECHANGE_SUMMARY:
+				setEChangeSummary((ChangeSummary)null);
+				return;
+			case SDOPackage.DATA_GRAPH__EROOT_OBJECT:
+				setERootObject((EObject)null);
+				return;
+		}
+		super.eUnset(featureID);
+	}
 
   /**
-   * <!-- begin-user-doc -->
+	 * <!-- begin-user-doc -->
    * <!-- end-user-doc -->
-   * @generated
-   */
+	 * @generated
+	 */
   public boolean eIsSet(int featureID)
   {
-    switch (featureID)
-    {
-      case SDOPackage.DATA_GRAPH__RESOURCE_SET:
-        return RESOURCE_SET_EDEFAULT == null ? resourceSet != null : !RESOURCE_SET_EDEFAULT.equals(resourceSet);
-      case SDOPackage.DATA_GRAPH__ROOT_RESOURCE:
-        return ROOT_RESOURCE_EDEFAULT == null ? getRootResource() != null : !ROOT_RESOURCE_EDEFAULT.equals(getRootResource());
-      case SDOPackage.DATA_GRAPH__ECHANGE_SUMMARY:
-        return eChangeSummary != null;
-      case SDOPackage.DATA_GRAPH__EROOT_OBJECT:
-        return eRootObject != null;
-    }
-    return eDynamicIsSet(featureID);
-  }
+		switch (featureID) {
+			case SDOPackage.DATA_GRAPH__RESOURCE_SET:
+				return RESOURCE_SET_EDEFAULT == null ? resourceSet != null : !RESOURCE_SET_EDEFAULT.equals(resourceSet);
+			case SDOPackage.DATA_GRAPH__ROOT_RESOURCE:
+				return ROOT_RESOURCE_EDEFAULT == null ? getRootResource() != null : !ROOT_RESOURCE_EDEFAULT.equals(getRootResource());
+			case SDOPackage.DATA_GRAPH__ECHANGE_SUMMARY:
+				return eChangeSummary != null;
+			case SDOPackage.DATA_GRAPH__EROOT_OBJECT:
+				return eRootObject != null;
+		}
+		return super.eIsSet(featureID);
+	}
 
   public DataObject createEDataObject(Type type)
   {
@@ -638,13 +588,41 @@ public class DataGraphImpl extends EObje
     if (((ChangeSummaryImpl)changeSummary).eResource() == null)
     {
       Resource changeSummaryResource = createChangeSummaryResource();
-      changeSummaryResource.getContents().add(changeSummary);
+      changeSummaryResource.getContents().add((EObject) changeSummary);
     }
 
     return changeSummary;
   }
 
-  protected ChangeSummaryImpl createEChangeSummary()
+  /**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public NotificationChain eInverseAdd(InternalEObject otherEnd, int featureID, NotificationChain msgs) {
+		switch (featureID) {
+			case SDOPackage.DATA_GRAPH__ECHANGE_SUMMARY:
+				if (eChangeSummary != null)
+					msgs = ((InternalEObject)eChangeSummary).eInverseRemove(this, SDOPackage.CHANGE_SUMMARY__EDATA_GRAPH, ChangeSummary.class, msgs);
+				return basicSetEChangeSummary((ChangeSummary)otherEnd, msgs);
+		}
+		return super.eInverseAdd(otherEnd, featureID, msgs);
+	}
+
+		/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) {
+		switch (featureID) {
+			case SDOPackage.DATA_GRAPH__ECHANGE_SUMMARY:
+				return basicSetEChangeSummary(null, msgs);
+		}
+		return super.eInverseRemove(otherEnd, featureID, msgs);
+	}
+
+		protected ChangeSummaryImpl createEChangeSummary()
   {
     return (ChangeSummaryImpl)SDOFactory.eINSTANCE.createChangeSummary();
   }
@@ -834,19 +812,19 @@ public class DataGraphImpl extends EObje
   }
 
   /**
-   * <!-- begin-user-doc -->
+	 * <!-- begin-user-doc -->
    * <!-- end-user-doc -->
-   * @generated
-   */
+	 * @generated
+	 */
   public String toString()
   {
-    if (eIsProxy()) return super.toString();
+		if (eIsProxy()) return super.toString();
 
-    StringBuffer result = new StringBuffer(super.toString());
-    result.append(" (resourceSet: ");
-    result.append(resourceSet);
-    result.append(')');
-    return result.toString();
-  }
+		StringBuffer result = new StringBuffer(super.toString());
+		result.append(" (resourceSet: ");
+		result.append(resourceSet);
+		result.append(')');
+		return result.toString();
+	}
 
 } //EDataGraphImpl

Modified: tuscany/sdo-java/branches/emf-2.5/impl/src/main/java/org/apache/tuscany/sdo/impl/DataObjectBase.java
URL: http://svn.apache.org/viewvc/tuscany/sdo-java/branches/emf-2.5/impl/src/main/java/org/apache/tuscany/sdo/impl/DataObjectBase.java?rev=1002496&r1=1002493&r2=1002496&view=diff
==============================================================================
--- tuscany/sdo-java/branches/emf-2.5/impl/src/main/java/org/apache/tuscany/sdo/impl/DataObjectBase.java (original)
+++ tuscany/sdo-java/branches/emf-2.5/impl/src/main/java/org/apache/tuscany/sdo/impl/DataObjectBase.java Wed Sep 29 07:10:57 2010
@@ -28,6 +28,7 @@ import org.apache.tuscany.sdo.util.Basic
 import org.apache.tuscany.sdo.util.DataObjectUtil;
 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.common.util.URI;
 import org.eclipse.emf.ecore.EClass;
 import org.eclipse.emf.ecore.EObject;
@@ -274,7 +275,7 @@ public abstract class DataObjectBase ext
   }
   
   protected Sequence createSequence(Sequence sequence, Type type, int propertyIndex) {
-    return new BasicSequence((FeatureMap.Internal)((FeatureMap.Internal.Wrapper)sequence).featureMap().list(((EClass)type).getEStructuralFeature(propertyIndex)));
+    return new BasicSequence((FeatureMap.Internal)(EList<?>)((FeatureMap.Internal.Wrapper)sequence).featureMap().list(((EClass)type).getEStructuralFeature(propertyIndex)));
   }
   
   protected void createChangeSummary(int property) {

Modified: tuscany/sdo-java/branches/emf-2.5/impl/src/main/java/org/apache/tuscany/sdo/impl/DataObjectImpl.java
URL: http://svn.apache.org/viewvc/tuscany/sdo-java/branches/emf-2.5/impl/src/main/java/org/apache/tuscany/sdo/impl/DataObjectImpl.java?rev=1002496&r1=1002493&r2=1002496&view=diff
==============================================================================
--- tuscany/sdo-java/branches/emf-2.5/impl/src/main/java/org/apache/tuscany/sdo/impl/DataObjectImpl.java (original)
+++ tuscany/sdo-java/branches/emf-2.5/impl/src/main/java/org/apache/tuscany/sdo/impl/DataObjectImpl.java Wed Sep 29 07:10:57 2010
@@ -27,6 +27,8 @@ import java.util.Collections;
 import java.util.Date;
 import java.util.List;
 
+import org.apache.tuscany.sdo.util.SDOUtil;
+import org.apache.tuscany.sdo.util.SDOUtil;
 import org.apache.tuscany.sdo.SDOPackage;
 import org.apache.tuscany.sdo.impl.ChangeSummaryImpl.SDOChangeRecorder;
 import org.apache.tuscany.sdo.lib.UnknownPropertyList;
@@ -79,14 +81,14 @@ public abstract class DataObjectImpl ext
   protected BasicEList eAdapters;
   
   /**
-   * <!-- begin-user-doc -->
+	 * <!-- begin-user-doc -->
    * <!-- end-user-doc -->
-   * @generated
-   */
+	 * @generated
+	 */
   protected DataObjectImpl()
   {
-    super();
-  }
+		super();
+	}
   
   /**
    * <!-- begin-user-doc -->
@@ -1350,14 +1352,14 @@ public abstract class DataObjectImpl ext
   ////////////////////////////////////////////////////////////////////////////////////////////////////////////////
 
   /**
-   * <!-- begin-user-doc -->
+	 * <!-- begin-user-doc -->
    * <!-- end-user-doc -->
-   * @generated
-   */
+	 * @generated
+	 */
   protected EClass eStaticClass()
   {
-    return SDOPackage.eINSTANCE.getDataObject();
-  }
+		return SDOPackage.Literals.DATA_OBJECT;
+	}
 
   public boolean eNotificationRequired()
   {

Modified: tuscany/sdo-java/branches/emf-2.5/impl/src/main/java/org/apache/tuscany/sdo/impl/DataTypeImpl.java
URL: http://svn.apache.org/viewvc/tuscany/sdo-java/branches/emf-2.5/impl/src/main/java/org/apache/tuscany/sdo/impl/DataTypeImpl.java?rev=1002496&r1=1002493&r2=1002496&view=diff
==============================================================================
--- tuscany/sdo-java/branches/emf-2.5/impl/src/main/java/org/apache/tuscany/sdo/impl/DataTypeImpl.java (original)
+++ tuscany/sdo-java/branches/emf-2.5/impl/src/main/java/org/apache/tuscany/sdo/impl/DataTypeImpl.java Wed Sep 29 07:10:57 2010
@@ -32,6 +32,7 @@ import org.eclipse.emf.ecore.util.Extend
 import commonj.sdo.Property;
 import commonj.sdo.Sequence;
 import commonj.sdo.Type;
+import java.lang.Class;
 
 /**
  * <!-- begin-user-doc -->
@@ -45,14 +46,14 @@ import commonj.sdo.Type;
 public class DataTypeImpl extends EDataTypeImpl implements Type, org.apache.tuscany.sdo.model.Type/*, DataObject*/
 {
   /**
-   * <!-- begin-user-doc -->
+	 * <!-- begin-user-doc -->
    * <!-- end-user-doc -->
-   * @generated
-   */
+	 * @generated
+	 */
   protected DataTypeImpl()
   {
-    super();
-  }
+		super();
+	}
 
   /**
    * <!-- begin-user-doc -->
@@ -75,6 +76,15 @@ public class DataTypeImpl extends EDataT
   }
 
   /**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 */
+	public Class getInstanceClass() {
+		// TODO: verify!
+		return super.getInstanceClass();
+	}
+
+		/**
    * <!-- begin-user-doc -->
    * <!-- end-user-doc -->
    * @generated NOT

Modified: tuscany/sdo-java/branches/emf-2.5/impl/src/main/java/org/apache/tuscany/sdo/impl/DynamicDataObjectImpl.java
URL: http://svn.apache.org/viewvc/tuscany/sdo-java/branches/emf-2.5/impl/src/main/java/org/apache/tuscany/sdo/impl/DynamicDataObjectImpl.java?rev=1002496&r1=1002493&r2=1002496&view=diff
==============================================================================
--- tuscany/sdo-java/branches/emf-2.5/impl/src/main/java/org/apache/tuscany/sdo/impl/DynamicDataObjectImpl.java (original)
+++ tuscany/sdo-java/branches/emf-2.5/impl/src/main/java/org/apache/tuscany/sdo/impl/DynamicDataObjectImpl.java Wed Sep 29 07:10:57 2010
@@ -47,14 +47,14 @@ public class DynamicDataObjectImpl exten
   protected static final Object [] ENO_SETTINGS = new Object [0];
 
   /**
-   * <!-- begin-user-doc -->
+	 * <!-- begin-user-doc -->
    * <!-- end-user-doc -->
-   * @generated
-   */
+	 * @generated
+	 */
   protected DynamicDataObjectImpl()
   {
-    super();
-  }
+		super();
+	}
 
   /**
    * Creates a dynamic DataObject.
@@ -73,14 +73,14 @@ public class DynamicDataObjectImpl exten
   }
 
   /**
-   * <!-- begin-user-doc -->
+	 * <!-- begin-user-doc -->
    * <!-- end-user-doc -->
-   * @generated
-   */
+	 * @generated
+	 */
   protected EClass eStaticClass()
   {
-    return SDOPackage.eINSTANCE.getDynamicDataObject();
-  }
+		return SDOPackage.Literals.DYNAMIC_DATA_OBJECT;
+	}
 
   protected int eStaticFeatureCount()
   {

Modified: tuscany/sdo-java/branches/emf-2.5/impl/src/main/java/org/apache/tuscany/sdo/impl/DynamicStoreDataObjectImpl.java
URL: http://svn.apache.org/viewvc/tuscany/sdo-java/branches/emf-2.5/impl/src/main/java/org/apache/tuscany/sdo/impl/DynamicStoreDataObjectImpl.java?rev=1002496&r1=1002493&r2=1002496&view=diff
==============================================================================
--- tuscany/sdo-java/branches/emf-2.5/impl/src/main/java/org/apache/tuscany/sdo/impl/DynamicStoreDataObjectImpl.java (original)
+++ tuscany/sdo-java/branches/emf-2.5/impl/src/main/java/org/apache/tuscany/sdo/impl/DynamicStoreDataObjectImpl.java Wed Sep 29 07:10:57 2010
@@ -39,14 +39,14 @@ public class DynamicStoreDataObjectImpl 
   protected EClass eClass;
 
   /**
-   * <!-- begin-user-doc -->
+	 * <!-- begin-user-doc -->
    * <!-- end-user-doc -->
-   * @generated
-   */
+	 * @generated
+	 */
   protected DynamicStoreDataObjectImpl()
   {
-    super();
-  }
+		super();
+	}
 
   public DynamicStoreDataObjectImpl(InternalEObject.EStore eStore)
   {
@@ -64,14 +64,14 @@ public class DynamicStoreDataObjectImpl 
   }
 
   /**
-   * <!-- begin-user-doc -->
+	 * <!-- begin-user-doc -->
    * <!-- end-user-doc -->
-   * @generated
-   */
+	 * @generated
+	 */
   protected EClass eStaticClass()
   {
-    return SDOPackage.eINSTANCE.getDynamicStoreDataObject();
-  }
+		return SDOPackage.Literals.DYNAMIC_STORE_DATA_OBJECT;
+	}
 
   protected EClass eDynamicClass()
   {