1 17 package org.eclipse.emf.ecore.xml.type.impl; 18 19 20 import java.util.Collection ; 21 22 import org.eclipse.emf.common.notify.NotificationChain; 23 import org.eclipse.emf.common.util.EMap; 24 import org.eclipse.emf.ecore.EClass; 25 import org.eclipse.emf.ecore.EStructuralFeature; 26 import org.eclipse.emf.ecore.EcorePackage; 27 import org.eclipse.emf.ecore.InternalEObject; 28 import org.eclipse.emf.ecore.impl.EObjectImpl; 29 import org.eclipse.emf.ecore.impl.EStringToStringMapEntryImpl; 30 import org.eclipse.emf.ecore.util.BasicFeatureMap; 31 import org.eclipse.emf.ecore.util.EcoreEMap; 32 import org.eclipse.emf.ecore.util.FeatureMap; 33 import org.eclipse.emf.ecore.util.InternalEList; 34 import org.eclipse.emf.ecore.xml.type.XMLTypeDocumentRoot; 35 import org.eclipse.emf.ecore.xml.type.XMLTypePackage; 36 37 38 56 public class XMLTypeDocumentRootImpl extends EObjectImpl implements XMLTypeDocumentRoot 57 { 58 66 protected FeatureMap mixed = null; 67 68 76 protected EMap xMLNSPrefixMap = null; 77 78 86 protected EMap xSISchemaLocation = null; 87 88 96 protected static final String CDATA_EDEFAULT = null; 97 98 106 protected static final String COMMENT_EDEFAULT = null; 107 108 116 protected static final String TEXT_EDEFAULT = null; 117 118 123 protected XMLTypeDocumentRootImpl() 124 { 125 super(); 126 } 127 128 133 protected EClass eStaticClass() 134 { 135 return XMLTypePackage.eINSTANCE.getXMLTypeDocumentRoot(); 136 } 137 138 143 public FeatureMap getMixed() 144 { 145 if (mixed == null) 146 { 147 mixed = new BasicFeatureMap(this, XMLTypePackage.XML_TYPE_DOCUMENT_ROOT__MIXED); 148 } 149 return mixed; 150 } 151 152 157 public EMap getXMLNSPrefixMap() 158 { 159 if (xMLNSPrefixMap == null) 160 { 161 xMLNSPrefixMap = new EcoreEMap(EcorePackage.eINSTANCE.getEStringToStringMapEntry(), EStringToStringMapEntryImpl.class, this, XMLTypePackage.XML_TYPE_DOCUMENT_ROOT__XMLNS_PREFIX_MAP); 162 } 163 return xMLNSPrefixMap; 164 } 165 166 171 public EMap getXSISchemaLocation() 172 { 173 if (xSISchemaLocation == null) 174 { 175 xSISchemaLocation = new EcoreEMap(EcorePackage.eINSTANCE.getEStringToStringMapEntry(), EStringToStringMapEntryImpl.class, this, XMLTypePackage.XML_TYPE_DOCUMENT_ROOT__XSI_SCHEMA_LOCATION); 176 } 177 return xSISchemaLocation; 178 } 179 180 185 public String getText() 186 { 187 return (String )getMixed().get(XMLTypePackage.eINSTANCE.getXMLTypeDocumentRoot_Text(), true); 188 } 189 190 195 public void setText(String newText) 196 { 197 ((FeatureMap.Internal)getMixed()).set(XMLTypePackage.eINSTANCE.getXMLTypeDocumentRoot_Text(), newText); 198 } 199 200 205 public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, Class baseClass, NotificationChain msgs) 206 { 207 if (featureID >= 0) 208 { 209 switch (eDerivedStructuralFeatureID(featureID, baseClass)) 210 { 211 case XMLTypePackage.XML_TYPE_DOCUMENT_ROOT__MIXED: 212 return ((InternalEList)getMixed()).basicRemove(otherEnd, msgs); 213 case XMLTypePackage.XML_TYPE_DOCUMENT_ROOT__XMLNS_PREFIX_MAP: 214 return ((InternalEList)getXMLNSPrefixMap()).basicRemove(otherEnd, msgs); 215 case XMLTypePackage.XML_TYPE_DOCUMENT_ROOT__XSI_SCHEMA_LOCATION: 216 return ((InternalEList)getXSISchemaLocation()).basicRemove(otherEnd, msgs); 217 default: 218 return eDynamicInverseRemove(otherEnd, featureID, baseClass, msgs); 219 } 220 } 221 return eBasicSetContainer(null, featureID, msgs); 222 } 223 224 229 public String getCDATA() 230 { 231 return (String )getMixed().get(XMLTypePackage.eINSTANCE.getXMLTypeDocumentRoot_CDATA(), true); 232 } 233 234 239 public void setCDATA(String newCDATA) 240 { 241 ((FeatureMap.Internal)getMixed()).set(XMLTypePackage.eINSTANCE.getXMLTypeDocumentRoot_CDATA(), newCDATA); 242 } 243 244 249 public String getComment() 250 { 251 return (String )getMixed().get(XMLTypePackage.eINSTANCE.getXMLTypeDocumentRoot_Comment(), true); 252 } 253 254 259 public void setComment(String newComment) 260 { 261 ((FeatureMap.Internal)getMixed()).set(XMLTypePackage.eINSTANCE.getXMLTypeDocumentRoot_Comment(), newComment); 262 } 263 264 269 public Object eGet(EStructuralFeature eFeature, boolean resolve) 270 { 271 switch (eDerivedStructuralFeatureID(eFeature)) 272 { 273 case XMLTypePackage.XML_TYPE_DOCUMENT_ROOT__MIXED: 274 return getMixed(); 275 case XMLTypePackage.XML_TYPE_DOCUMENT_ROOT__XMLNS_PREFIX_MAP: 276 return getXMLNSPrefixMap(); 277 case XMLTypePackage.XML_TYPE_DOCUMENT_ROOT__XSI_SCHEMA_LOCATION: 278 return getXSISchemaLocation(); 279 case XMLTypePackage.XML_TYPE_DOCUMENT_ROOT__CDATA: 280 return getCDATA(); 281 case XMLTypePackage.XML_TYPE_DOCUMENT_ROOT__COMMENT: 282 return getComment(); 283 case XMLTypePackage.XML_TYPE_DOCUMENT_ROOT__TEXT: 284 return getText(); 285 } 286 return eDynamicGet(eFeature, resolve); 287 } 288 289 294 public void eSet(EStructuralFeature eFeature, Object newValue) 295 { 296 switch (eDerivedStructuralFeatureID(eFeature)) 297 { 298 case XMLTypePackage.XML_TYPE_DOCUMENT_ROOT__MIXED: 299 getMixed().clear(); 300 getMixed().addAll((Collection )newValue); 301 return; 302 case XMLTypePackage.XML_TYPE_DOCUMENT_ROOT__XMLNS_PREFIX_MAP: 303 getXMLNSPrefixMap().clear(); 304 getXMLNSPrefixMap().addAll((Collection )newValue); 305 return; 306 case XMLTypePackage.XML_TYPE_DOCUMENT_ROOT__XSI_SCHEMA_LOCATION: 307 getXSISchemaLocation().clear(); 308 getXSISchemaLocation().addAll((Collection )newValue); 309 return; 310 case XMLTypePackage.XML_TYPE_DOCUMENT_ROOT__CDATA: 311 setCDATA((String )newValue); 312 return; 313 case XMLTypePackage.XML_TYPE_DOCUMENT_ROOT__COMMENT: 314 setComment((String )newValue); 315 return; 316 case XMLTypePackage.XML_TYPE_DOCUMENT_ROOT__TEXT: 317 setText((String )newValue); 318 return; 319 } 320 eDynamicSet(eFeature, newValue); 321 } 322 323 328 public void eUnset(EStructuralFeature eFeature) 329 { 330 switch (eDerivedStructuralFeatureID(eFeature)) 331 { 332 case XMLTypePackage.XML_TYPE_DOCUMENT_ROOT__MIXED: 333 getMixed().clear(); 334 return; 335 case XMLTypePackage.XML_TYPE_DOCUMENT_ROOT__XMLNS_PREFIX_MAP: 336 getXMLNSPrefixMap().clear(); 337 return; 338 case XMLTypePackage.XML_TYPE_DOCUMENT_ROOT__XSI_SCHEMA_LOCATION: 339 getXSISchemaLocation().clear(); 340 return; 341 case XMLTypePackage.XML_TYPE_DOCUMENT_ROOT__CDATA: 342 setCDATA(CDATA_EDEFAULT); 343 return; 344 case XMLTypePackage.XML_TYPE_DOCUMENT_ROOT__COMMENT: 345 setComment(COMMENT_EDEFAULT); 346 return; 347 case XMLTypePackage.XML_TYPE_DOCUMENT_ROOT__TEXT: 348 setText(TEXT_EDEFAULT); 349 return; 350 } 351 eDynamicUnset(eFeature); 352 } 353 354 359 public boolean eIsSet(EStructuralFeature eFeature) 360 { 361 switch (eDerivedStructuralFeatureID(eFeature)) 362 { 363 case XMLTypePackage.XML_TYPE_DOCUMENT_ROOT__MIXED: 364 return mixed != null && !mixed.isEmpty(); 365 case XMLTypePackage.XML_TYPE_DOCUMENT_ROOT__XMLNS_PREFIX_MAP: 366 return xMLNSPrefixMap != null && !xMLNSPrefixMap.isEmpty(); 367 case XMLTypePackage.XML_TYPE_DOCUMENT_ROOT__XSI_SCHEMA_LOCATION: 368 return xSISchemaLocation != null && !xSISchemaLocation.isEmpty(); 369 case XMLTypePackage.XML_TYPE_DOCUMENT_ROOT__CDATA: 370 return CDATA_EDEFAULT == null ? getCDATA() != null : !CDATA_EDEFAULT.equals(getCDATA()); 371 case XMLTypePackage.XML_TYPE_DOCUMENT_ROOT__COMMENT: 372 return COMMENT_EDEFAULT == null ? getComment() != null : !COMMENT_EDEFAULT.equals(getComment()); 373 case XMLTypePackage.XML_TYPE_DOCUMENT_ROOT__TEXT: 374 return TEXT_EDEFAULT == null ? getText() != null : !TEXT_EDEFAULT.equals(getText()); 375 } 376 return eDynamicIsSet(eFeature); 377 } 378 379 384 public String toString() 385 { 386 if (eIsProxy()) return super.toString(); 387 388 StringBuffer result = new StringBuffer (super.toString()); 389 result.append(" (mixed: "); 390 result.append(mixed); 391 result.append(')'); 392 return result.toString(); 393 } 394 395 } | Popular Tags |