diff options
author | glefur | 2012-05-10 09:57:15 +0000 |
---|---|---|
committer | glefur | 2012-05-10 09:57:15 +0000 |
commit | cc5d4a0430628485c0ed6e1e724a09c275056272 (patch) | |
tree | a4c47c41f7672983afb9e343d347ee8405a8ed2e /plugins | |
parent | 37799e1d2a0a5d3c2bf56a12b0b95a1b48d18992 (diff) | |
download | org.eclipse.eef-cc5d4a0430628485c0ed6e1e724a09c275056272.tar.gz org.eclipse.eef-cc5d4a0430628485c0ed6e1e724a09c275056272.tar.xz org.eclipse.eef-cc5d4a0430628485c0ed6e1e724a09c275056272.zip |
FIXED: all launchers compatibliility for Acceleo 3.1.3
Diffstat (limited to 'plugins')
3 files changed, 72 insertions, 0 deletions
diff --git a/plugins/org.eclipse.emf.eef.codegen.ecore/src/org/eclipse/emf/eef/codegen/ecore/main/GenEdit.java b/plugins/org.eclipse.emf.eef.codegen.ecore/src/org/eclipse/emf/eef/codegen/ecore/main/GenEdit.java index 340ee3b42..b7317a846 100644 --- a/plugins/org.eclipse.emf.eef.codegen.ecore/src/org/eclipse/emf/eef/codegen/ecore/main/GenEdit.java +++ b/plugins/org.eclipse.emf.eef.codegen.ecore/src/org/eclipse/emf/eef/codegen/ecore/main/GenEdit.java @@ -12,18 +12,23 @@ package org.eclipse.emf.eef.codegen.ecore.main; import java.io.File; import java.io.IOException; +import java.net.URL; import java.util.ArrayList; +import java.util.Enumeration; import java.util.List; import org.eclipse.acceleo.common.preference.AcceleoPreferences; import org.eclipse.acceleo.engine.event.IAcceleoTextGenerationListener; import org.eclipse.acceleo.engine.generation.strategy.IAcceleoGenerationStrategy; import org.eclipse.acceleo.engine.service.AbstractAcceleoGenerator; +import org.eclipse.core.runtime.Platform; +import org.eclipse.emf.common.EMFPlugin; import org.eclipse.emf.common.util.BasicMonitor; import org.eclipse.emf.common.util.Monitor; import org.eclipse.emf.common.util.URI; import org.eclipse.emf.ecore.EObject; import org.eclipse.emf.ecore.resource.ResourceSet; +import org.osgi.framework.Bundle; /** * Entry point of the 'GenAll' generation module. @@ -110,6 +115,25 @@ public class GenEdit extends AbstractAcceleoGenerator { } /** + * FIX the build for Acceleo 3.1.3 + * @see org.eclipse.acceleo.engine.service.AbstractAcceleoGenerator#createTemplateURI(java.lang.String) + */ + @Override + protected URI createTemplateURI(String entry) { + if (EMFPlugin.IS_ECLIPSE_RUNNING) { + Bundle bundle = Platform.getBundle("org.eclipse.emf.eef.codegen.ecore"); + Enumeration<URL> e = bundle.findEntries("/", "*.emtl", true); + while (e.hasMoreElements()) { + URL anUrl = e.nextElement(); + if (anUrl.toString().endsWith("org/eclipse/emf/eef/codegen/ecore/main/GenEdit.emtl")) { + return URI.createURI("org.eclipse.emf.eef.codegen.ecore" + anUrl.getPath()); + } + } + } + return super.createTemplateURI(entry); + } + + /** * This can be used to launch the generation from a standalone application. * * @param args diff --git a/plugins/org.eclipse.emf.eef.codegen.ecore/src/org/eclipse/emf/eef/codegen/ecore/main/GenEditor.java b/plugins/org.eclipse.emf.eef.codegen.ecore/src/org/eclipse/emf/eef/codegen/ecore/main/GenEditor.java index 01b72969b..9e139c14d 100644 --- a/plugins/org.eclipse.emf.eef.codegen.ecore/src/org/eclipse/emf/eef/codegen/ecore/main/GenEditor.java +++ b/plugins/org.eclipse.emf.eef.codegen.ecore/src/org/eclipse/emf/eef/codegen/ecore/main/GenEditor.java @@ -12,18 +12,23 @@ package org.eclipse.emf.eef.codegen.ecore.main; import java.io.File; import java.io.IOException; +import java.net.URL; import java.util.ArrayList; +import java.util.Enumeration; import java.util.List; import org.eclipse.acceleo.common.preference.AcceleoPreferences; import org.eclipse.acceleo.engine.event.IAcceleoTextGenerationListener; import org.eclipse.acceleo.engine.generation.strategy.IAcceleoGenerationStrategy; import org.eclipse.acceleo.engine.service.AbstractAcceleoGenerator; +import org.eclipse.core.runtime.Platform; +import org.eclipse.emf.common.EMFPlugin; import org.eclipse.emf.common.util.BasicMonitor; import org.eclipse.emf.common.util.Monitor; import org.eclipse.emf.common.util.URI; import org.eclipse.emf.ecore.EObject; import org.eclipse.emf.ecore.resource.ResourceSet; +import org.osgi.framework.Bundle; /** * Entry point of the 'GenEditor' generation module. @@ -110,6 +115,25 @@ public class GenEditor extends AbstractAcceleoGenerator { } /** + * FIX the build for Acceleo 3.1.3 + * @see org.eclipse.acceleo.engine.service.AbstractAcceleoGenerator#createTemplateURI(java.lang.String) + */ + @Override + protected URI createTemplateURI(String entry) { + if (EMFPlugin.IS_ECLIPSE_RUNNING) { + Bundle bundle = Platform.getBundle("org.eclipse.emf.eef.codegen.ecore"); + Enumeration<URL> e = bundle.findEntries("/", "*.emtl", true); + while (e.hasMoreElements()) { + URL anUrl = e.nextElement(); + if (anUrl.toString().endsWith("org/eclipse/emf/eef/codegen/ecore/main/GenEditor.emtl")) { + return URI.createURI("org.eclipse.emf.eef.codegen.ecore" + anUrl.getPath()); + } + } + } + return super.createTemplateURI(entry); + } + + /** * This can be used to launch the generation from a standalone application. * * @param args diff --git a/plugins/org.eclipse.emf.eef.codegen.ecore/src/org/eclipse/emf/eef/codegen/ecore/main/GenModel.java b/plugins/org.eclipse.emf.eef.codegen.ecore/src/org/eclipse/emf/eef/codegen/ecore/main/GenModel.java index 94addd7ca..44deb77be 100644 --- a/plugins/org.eclipse.emf.eef.codegen.ecore/src/org/eclipse/emf/eef/codegen/ecore/main/GenModel.java +++ b/plugins/org.eclipse.emf.eef.codegen.ecore/src/org/eclipse/emf/eef/codegen/ecore/main/GenModel.java @@ -12,18 +12,23 @@ package org.eclipse.emf.eef.codegen.ecore.main; import java.io.File; import java.io.IOException; +import java.net.URL; import java.util.ArrayList; +import java.util.Enumeration; import java.util.List; import org.eclipse.acceleo.common.preference.AcceleoPreferences; import org.eclipse.acceleo.engine.event.IAcceleoTextGenerationListener; import org.eclipse.acceleo.engine.generation.strategy.IAcceleoGenerationStrategy; import org.eclipse.acceleo.engine.service.AbstractAcceleoGenerator; +import org.eclipse.core.runtime.Platform; +import org.eclipse.emf.common.EMFPlugin; import org.eclipse.emf.common.util.BasicMonitor; import org.eclipse.emf.common.util.Monitor; import org.eclipse.emf.common.util.URI; import org.eclipse.emf.ecore.EObject; import org.eclipse.emf.ecore.resource.ResourceSet; +import org.osgi.framework.Bundle; /** * Entry point of the 'GenModel' generation module. @@ -97,6 +102,25 @@ public class GenModel extends AbstractAcceleoGenerator { } /** + * FIX the build for Acceleo 3.1.3 + * @see org.eclipse.acceleo.engine.service.AbstractAcceleoGenerator#createTemplateURI(java.lang.String) + */ + @Override + protected URI createTemplateURI(String entry) { + if (EMFPlugin.IS_ECLIPSE_RUNNING) { + Bundle bundle = Platform.getBundle("org.eclipse.emf.eef.codegen.ecore"); + Enumeration<URL> e = bundle.findEntries("/", "*.emtl", true); + while (e.hasMoreElements()) { + URL anUrl = e.nextElement(); + if (anUrl.toString().endsWith("org/eclipse/emf/eef/codegen/ecore/main/GenModel.emtl")) { + return URI.createURI("org.eclipse.emf.eef.codegen.ecore" + anUrl.getPath()); + } + } + } + return super.createTemplateURI(entry); + } + + /** * This allows clients to instantiates a generator with all required * information. * |