1 7 package org.enhydra.dods.editor.Doml.impl; 8 9 import java.util.Collection ; 10 11 import org.eclipse.emf.common.notify.NotificationChain; 12 13 import org.eclipse.emf.common.util.EList; 14 15 import org.eclipse.emf.ecore.EClass; 16 import org.eclipse.emf.ecore.EStructuralFeature; 17 import org.eclipse.emf.ecore.InternalEObject; 18 19 import org.eclipse.emf.ecore.impl.EObjectImpl; 20 21 import org.eclipse.emf.ecore.util.EObjectContainmentEList; 22 import org.eclipse.emf.ecore.util.InternalEList; 23 24 import org.enhydra.dods.editor.Doml.DatabaseType; 25 import org.enhydra.dods.editor.Doml.DomlPackage; 26 import org.enhydra.dods.editor.Doml.DomlType; 27 28 41 public class DomlTypeImpl extends EObjectImpl implements DomlType { 42 50 protected EList database = null; 51 52 57 protected DomlTypeImpl() { 58 super(); 59 } 60 61 66 protected EClass eStaticClass() { 67 return DomlPackage.eINSTANCE.getDomlType(); 68 } 69 70 75 public EList getDatabase() { 76 if (database == null) { 77 database = new EObjectContainmentEList(DatabaseType.class, this, DomlPackage.DOML_TYPE__DATABASE); 78 } 79 return database; 80 } 81 82 87 public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, Class baseClass, NotificationChain msgs) { 88 if (featureID >= 0) { 89 switch (eDerivedStructuralFeatureID(featureID, baseClass)) { 90 case DomlPackage.DOML_TYPE__DATABASE: 91 return ((InternalEList)getDatabase()).basicRemove(otherEnd, msgs); 92 default: 93 return eDynamicInverseRemove(otherEnd, featureID, baseClass, msgs); 94 } 95 } 96 return eBasicSetContainer(null, featureID, msgs); 97 } 98 99 104 public Object eGet(EStructuralFeature eFeature, boolean resolve) { 105 switch (eDerivedStructuralFeatureID(eFeature)) { 106 case DomlPackage.DOML_TYPE__DATABASE: 107 return getDatabase(); 108 } 109 return eDynamicGet(eFeature, resolve); 110 } 111 112 117 public void eSet(EStructuralFeature eFeature, Object newValue) { 118 switch (eDerivedStructuralFeatureID(eFeature)) { 119 case DomlPackage.DOML_TYPE__DATABASE: 120 getDatabase().clear(); 121 getDatabase().addAll((Collection )newValue); 122 return; 123 } 124 eDynamicSet(eFeature, newValue); 125 } 126 127 132 public void eUnset(EStructuralFeature eFeature) { 133 switch (eDerivedStructuralFeatureID(eFeature)) { 134 case DomlPackage.DOML_TYPE__DATABASE: 135 getDatabase().clear(); 136 return; 137 } 138 eDynamicUnset(eFeature); 139 } 140 141 146 public boolean eIsSet(EStructuralFeature eFeature) { 147 switch (eDerivedStructuralFeatureID(eFeature)) { 148 case DomlPackage.DOML_TYPE__DATABASE: 149 return database != null && !database.isEmpty(); 150 } 151 return eDynamicIsSet(eFeature); 152 } 153 154 } | Popular Tags |