public EPackage getNestingPackage(EPackage pkg) { return pkg.getESuperPackage(); }
private EPackage getNonEmptySuperPackage(EPackage ePackage) { EPackage result = ePackage.getESuperPackage(); while (result != null && result.getEClassifiers().isEmpty()) { result = result.getESuperPackage(); } return result; }
public static EPackage getTopLevelPackage(EPackage ePackage) { EPackage superPackage = ePackage.getESuperPackage(); return superPackage == null ? ePackage : getTopLevelPackage(superPackage); }
public static String getParentURI(EPackage ePackage) { EPackage superPackage = ePackage.getESuperPackage(); String parentURI = superPackage == null ? null : superPackage.getNsURI(); return parentURI; }
/** * Computes the qualified name of an Ecore package. * * @param epackage the Ecore package * @return its qualified name */ private static List<String> getQualifiedName(EPackage epackage) { List<String> result = new java.util.LinkedList<String>(); while (epackage != null) { result.add(0, epackage.getName()); epackage = epackage.getESuperPackage(); } return result; }
public static String getQualifiedName(EPackage ePackage, String separator) { StringBuilder builder = new StringBuilder(); EPackage eSuperPackage = ePackage.getESuperPackage(); if (eSuperPackage != null) { builder.append(getQualifiedName(eSuperPackage, separator)); builder.append(separator); } builder.append(ePackage.getName()); return builder.toString(); }
public static String getQualifiedName(EPackage ePackage) { if (ePackage == null) { return null; } else { StringBuffer label = new StringBuffer(ePackage.getName()); EPackage parentEPackage = ePackage.getESuperPackage(); while (parentEPackage != null) { label.insert(0, ".").insert(0, parentEPackage.getName()); parentEPackage = parentEPackage.getESuperPackage(); } return label.toString(); } } }
/** * Returns the fully qualified name for the given {@link EPackage}. * * @param ePackage * The EPackage to get the fully qualified name for. Must not be <code>null</code>. * @return The fully qualified name for the given EPackage. */ public static String fullyQualifiedNameFor(final EPackage ePackage) { checkNotNull(ePackage, "Precondition violation - argument 'ePackage' must not be NULL!"); List<String> qualifierChain = Lists.newArrayList(); EPackage currentEPackage = ePackage; while (currentEPackage != null) { qualifierChain.add(currentEPackage.getName()); currentEPackage = currentEPackage.getESuperPackage(); } List<String> qualifiedNameParts = Lists.reverse(qualifierChain); StringBuilder builder = new StringBuilder(); String separator = ""; for (String namePart : qualifiedNameParts) { builder.append(separator); separator = PACKAGE_PATH_SEPARATOR; builder.append(namePart); } return builder.toString(); }
public static List<EClass> allSubTypes(DeserializationContext ctxt, EClass eClass) { final List<EClass> subTypes = new ArrayList<>(); if (eClass == null) { return subTypes; } EPackage ePackage = eClass.getEPackage(); while (ePackage.getESuperPackage() != null) { ePackage = ePackage.getESuperPackage(); } subTypes.add(eClass); for (Iterator<EObject> it = ePackage.eAllContents(); it.hasNext(); ) { EObject current = it.next(); if (current instanceof EClass) { EClass currentClass = (EClass) current; if (!currentClass.isAbstract() && eClass.isSuperTypeOf(currentClass)) { subTypes.add(currentClass); } } } return subTypes; }
public static List<EClass> allSubTypes(DeserializationContext ctxt, EClass eClass) { final List<EClass> subTypes = new ArrayList<>(); if (eClass == null) { return subTypes; } EPackage ePackage = eClass.getEPackage(); while (ePackage.getESuperPackage() != null) { ePackage = ePackage.getESuperPackage(); } subTypes.add(eClass); for (Iterator<EObject> it = ePackage.eAllContents(); it.hasNext(); ) { EObject current = it.next(); if (current instanceof EClass) { EClass currentClass = (EClass) current; if (!currentClass.isAbstract() && eClass.isSuperTypeOf(currentClass)) { subTypes.add(currentClass); } } } return subTypes; }
throw new IllegalStateException(); EPackage _eSuperPackage = ePackage.getESuperPackage(); boolean _tripleNotEquals = (_eSuperPackage != null); if (_tripleNotEquals) { Resource _eResource = ePackage.eResource(); Resource _eResource_1 = ePackage.getESuperPackage().eResource(); boolean _tripleEquals = (_eResource == _eResource_1); if (_tripleEquals) { this.calculateURIFragment(ePackage.getESuperPackage(), result, visited); boolean _isEmpty = ePackage.getEClassifiers().isEmpty(); boolean _not_1 = (!_isEmpty);
/** * Returns a list of package name substitution strings, which always includes at least one element. * If the package is not nested, the list contains a single element, the EPackage name. * If the package is nested, the first element is the full package name, consisting of dot-separated EPackage names, * and it is followed by the individual names of the nested packages, beginning with the outer-most. */ private List<String> getPackageNameSubstitutions() { // Walk up the superpackages, collecting the package names. // Because empty packages are ommitted from the GenModel, we need to walk up the EPackages. // List<String> names = new ArrayList<String>(); StringBuilder full = new StringBuilder(); for (EPackage ePackage = getEcorePackage(); ePackage != null; ePackage = ePackage.getESuperPackage()) { String name = safeName(ePackage.getName()); names.add(0, name); if (full.length() > 0) { full.insert(0, '.'); } full.insert(0, name); } if (names.size() > 1) { names.add(0, full.toString()); } return names; }
public String getURIFragment(final EClassifier classifier) { EPackage _eSuperPackage = classifier.getEPackage().getESuperPackage(); boolean _tripleNotEquals = (_eSuperPackage != null); if (_tripleNotEquals) { final StringBuilder result = new StringBuilder(60); this.calculateURIFragment(classifier.getEPackage(), result, CollectionLiterals.<EPackage>newHashSet()); result.append(classifier.getName()); return result.toString(); } return null; }
@Override public EObject create(final EClass eClass) { this.assertTxOpen(); checkNotNull(eClass, "Precondition violation - argument 'eClass' must not be NULL!"); EPackage ePackage = eClass.getEPackage(); while (ePackage.getESuperPackage() != null) { ePackage = ePackage.getESuperPackage(); } ChronoEPackageRegistry cep = this.owningTransaction.getEPackageRegistry(); Vertex vertex = this.getGraph().addVertex(T.id, UUID.randomUUID()); ChronoSphereGraphFormat.setVertexKind(vertex, VertexKind.EOBJECT); ChronoSphereGraphFormat.setEClassForEObjectVertex(cep, vertex, eClass); return this.createEObjectForVertex(cep, vertex); }
@Override public Object caseEPackage(EPackage ePackage) { org.eclipse.uml2.uml.Package package_ = ePackage.getESuperPackage() == null ? UMLFactory.eINSTANCE.createModel() : UMLFactory.eINSTANCE.createPackage(); eModelElementToElementMap.put(ePackage, package_); if (!ePackages.contains(ePackage)) { EPackage eSuperPackage = ePackage.getESuperPackage(); if (eSuperPackage != null) { ((org.eclipse.uml2.uml.Package) doSwitch(eSuperPackage)) .getNestedPackages().add(package_); } } package_.setName(ePackage.getName()); defaultCase(ePackage); return package_; }
protected String getDefaultArtifactFileName(EPackage ePackage) { if (ePackage.eResource() != null && ePackage.getESuperPackage() == null) { String fileName = ePackage.eResource().getURI().lastSegment(); int lastIndex = fileName.lastIndexOf('.'); if (lastIndex > 0) { return fileName.substring(0, lastIndex); } } return ConverterUtil.getQualifiedName(ePackage); }
protected int collapseEmptyPackages(EPackage ePackage) { EList<EPackage> subpackages = ePackage.getESubpackages(); for (int i = 0; i < subpackages.size(); i++) { EPackage subpackage = subpackages.get(i); i += collapseEmptyPackages(subpackage); subpackages = ePackage.getESubpackages(); } EPackage superPackage = ePackage.getESuperPackage(); if (superPackage != null && ePackage.getEClassifiers().isEmpty()) { int result = subpackages.size() - 1; EList<EPackage> siblingPackages = superPackage.getESubpackages(); int i = siblingPackages.indexOf(ePackage); siblingPackages.remove(i); siblingPackages.addAll(i, subpackages); return result; } return 0; }
private String getFullName(final EClassifier eClassifier) { String name = eClassifier.getName(); EPackage pkg = eClassifier.getEPackage(); while (pkg != null) { name = pkg.getName() + "." + name; pkg = pkg.getESuperPackage(); } if (name == null && eClassifier instanceof EDataType) { name = getDataType(eClassifier.getClassifierID()); } return name; }
private void initPackageInfos(EPackage ePackage, List<InternalCDOPackageInfo> result) { InternalCDOPackageInfo packageInfo = (InternalCDOPackageInfo)CDOModelUtil.createPackageInfo(); packageInfo.setPackageUnit(this); packageInfo.setPackageURI(ePackage.getNsURI()); packageInfo.setParentURI(ePackage.getESuperPackage() == null ? null : ePackage.getESuperPackage().getNsURI()); packageRegistry.basicPut(ePackage.getNsURI(), ePackage); packageRegistry.registerPackageInfo(ePackage, packageInfo); result.add(packageInfo); for (EPackage subPackage : ePackage.getESubpackages()) { initPackageInfos(subPackage, result); } }
@Override public Object casePackage(org.eclipse.uml2.uml.Package package_) { EPackage ePackage = EcoreFactory.eINSTANCE.createEPackage(); elementToEModelElementMap.put(package_, ePackage); if (!packages.contains(package_)) { org.eclipse.uml2.uml.Package nestingPackage = package_ .getNestingPackage(); if (nestingPackage != null) { ((EPackage) doSwitch(nestingPackage)).getESubpackages() .add(ePackage); } } setName(ePackage, package_); if (isEmpty(ePackage.getNsPrefix())) { EPackage eSuperPackage = ePackage.getESuperPackage(); ePackage.setNsPrefix((eSuperPackage == null ? EMPTY_STRING : eSuperPackage.getNsPrefix() + '.') + ePackage.getName()); } if (isEmpty(ePackage.getNsURI())) { ePackage.setNsURI("http:///" //$NON-NLS-1$ + ePackage.getNsPrefix().replace('.', '/') + ".ecore"); //$NON-NLS-1$ } defaultCase(package_); return ePackage; }