1 17 package org.eclipse.emf.codegen.ecore.genmodel.impl; 18 19 20 import java.util.List ; 21 22 import org.eclipse.emf.codegen.ecore.genmodel.GenClassifier; 23 import org.eclipse.emf.codegen.ecore.genmodel.GenModelPackage; 24 import org.eclipse.emf.codegen.ecore.genmodel.GenPackage; 25 import org.eclipse.emf.ecore.EClass; 26 import org.eclipse.emf.ecore.EClassifier; 27 import org.eclipse.emf.ecore.EModelElement; 28 import org.eclipse.emf.ecore.EStructuralFeature; 29 import org.eclipse.emf.ecore.util.EcoreUtil; 30 31 32 45 public abstract class GenClassifierImpl extends GenBaseImpl implements GenClassifier 46 { 47 52 protected GenClassifierImpl() 53 { 54 super(); 55 } 56 57 62 protected EClass eStaticClass() 63 { 64 return GenModelPackage.eINSTANCE.getGenClassifier(); 65 } 66 67 72 public GenPackage getGenPackage() 73 { 74 return (GenPackage)eContainer(); 75 } 76 77 82 public Object eGet(EStructuralFeature eFeature, boolean resolve) 83 { 84 switch (eDerivedStructuralFeatureID(eFeature)) 85 { 86 case GenModelPackage.GEN_CLASSIFIER__GEN_PACKAGE: 87 return getGenPackage(); 88 } 89 return eDynamicGet(eFeature, resolve); 90 } 91 92 97 public boolean eIsSet(EStructuralFeature eFeature) 98 { 99 switch (eDerivedStructuralFeatureID(eFeature)) 100 { 101 case GenModelPackage.GEN_CLASSIFIER__GEN_PACKAGE: 102 return getGenPackage() != null; 103 } 104 return eDynamicIsSet(eFeature); 105 } 106 107 public EModelElement getEcoreModelElement() 108 { 109 return getEcoreClassifier(); 110 } 111 112 public abstract EClassifier getEcoreClassifier(); 113 114 public abstract String getImportedMetaType(); 115 116 public String getMetaType() 117 { 118 String importedName = getImportedMetaType(); 119 return importedName.substring(importedName.lastIndexOf(".") + 1); 120 } 121 122 public String getName() 123 { 124 return getEcoreClassifier().getName(); 125 } 126 127 public String getUncapName() 128 { 129 return uncapPrefixedName(getName()); 130 } 131 132 public String getSafeUncapName() 133 { 134 return safeName(getUncapName()); 135 } 136 137 public String getClassifierAccessorName() 138 { 139 String result = getEcoreClassifier().getName(); 140 if ("Class".equals(result) || "Name".equals(result)) 141 { 142 result += "_"; 143 } 144 return result; 145 } 146 147 public String getFormattedName() 148 { 149 return format(getName(), ' ', getGenPackage().getPrefix(), false); 150 } 151 152 public String getClassifierInstanceName() 153 { 154 return uncapPrefixedName(getName()) + getMetaType(); 155 } 156 157 public String getClassifierID() 158 { 159 String name = getName(); 160 String prefix = getGenPackage().getPrefix(); 161 return format(name, '_', prefix, true).toUpperCase(); 162 } 163 164 public List getGenConstraints() 165 { 166 return EcoreUtil.getConstraints(getEcoreClassifier()); 167 } 168 169 public List getAllGenConstraints() 170 { 171 return getGenConstraints(); 172 } 173 174 public GenClassifier getConstraintImplementor(String constraint) 175 { 176 return this; 177 } 178 179 public boolean hasOnlyDefaultConstraints() 180 { 181 return false; 182 } 183 } 184 | Popular Tags |