Java Code Examples for org.eclipse.emf.ecore.EPackage.getESuperPackage()

The following are Jave code examples for showing how to use getESuperPackage() of the org.eclipse.emf.ecore.EPackage class. You can vote up the examples you like. Your votes will be used in our system to get more good examples.
Example 1
Project: gemoc-studio-modeldebugging   File:   Source Code and License Vote up 5 votes
protected static HashMap<String, String> getnsURIMapping(IExecutionContext context) {
	HashMap<String, String> nsURIMapping = new HashMap<String, String>();

	final String langQuery = "lang=";
	String melangeQuery = context.getRunConfiguration().getExecutedModelAsMelangeURI().query();
	if (melangeQuery != null && !melangeQuery.isEmpty() && melangeQuery.contains(langQuery)) {

		String targetLanguage = melangeQuery.substring(melangeQuery.indexOf(langQuery) + langQuery.length());
		if (targetLanguage.contains("&")) {
			targetLanguage = targetLanguage.substring(0, targetLanguage.indexOf("&"));
		String targetLanguageNsURI = MelangeRegistry.INSTANCE.getLanguageByIdentifier(targetLanguage).getUri();

		// simply open the original model file in a separate ResourceSet
		// and ask its root element class nsURI
		Object o = EMFResource.getFirstContent(context.getRunConfiguration().getExecutedModelURI());
		if (o instanceof EObject) {
			EPackage rootPackage = ((EObject) o).eClass().getEPackage();
			while (rootPackage.getESuperPackage() != null) {
				rootPackage = rootPackage.getESuperPackage();
			nsURIMapping.put(rootPackage.getNsURI(), targetLanguageNsURI);

	return nsURIMapping;
Example 2
Project: JavaGraph   File:   Source Code and License Vote up 5 votes
 * Generates an Id for the given Ecore package
 * @param pkg Package to generate Id for
 * @return The Id
public static Id idFromPackage(EPackage pkg) {
    Id nsId = Id.ROOT;
    if (pkg.getESuperPackage() != null) {
        nsId = idFromPackage(pkg.getESuperPackage());
    return Id.getId(nsId, Name.getName(pkg.getName()));