Fixes 406094
Improved Xcore support. Remove standalone "hacks".
The standalone engine will provide workarrounds dor this.
diff --git a/features/org.eclipse.epsilon.emc.spreadsheets.dependencies.feature/feature.xml b/features/org.eclipse.epsilon.emc.spreadsheets.dependencies.feature/feature.xml
index 18be8da..8eb4a56 100644
--- a/features/org.eclipse.epsilon.emc.spreadsheets.dependencies.feature/feature.xml
+++ b/features/org.eclipse.epsilon.emc.spreadsheets.dependencies.feature/feature.xml
@@ -96,7 +96,6 @@
<import plugin="org.apache.commons.collections" version="3.2.2" match="greaterOrEqual"/>
<import plugin="org.apache.log4j" version="1.2.15" match="greaterOrEqual"/>
<import plugin="org.slf4j.api" version="1.7.2" match="greaterOrEqual"/>
- <import plugin="org.slf4j.log4j" version="1.7.2" match="greaterOrEqual"/>
</requires>
<plugin
diff --git a/plugins/org.eclipse.epsilon.emc.emf.dt/src/org/eclipse/epsilon/emc/emf/dt/EmfModelConfigurationDialog.java b/plugins/org.eclipse.epsilon.emc.emf.dt/src/org/eclipse/epsilon/emc/emf/dt/EmfModelConfigurationDialog.java
index 9f83aa9..de97eae 100644
--- a/plugins/org.eclipse.epsilon.emc.emf.dt/src/org/eclipse/epsilon/emc/emf/dt/EmfModelConfigurationDialog.java
+++ b/plugins/org.eclipse.epsilon.emc.emf.dt/src/org/eclipse/epsilon/emc/emf/dt/EmfModelConfigurationDialog.java
@@ -296,8 +296,8 @@
public void widgetSelected(SelectionEvent e) {
final String path = BrowseWorkspaceUtil.browseFilePath(getShell(),
"EMF meta-models in the workspace",
- "Select an EMF meta-model (ECore)",
- "ecore", null);
+ "Select an EMF meta-model (Ecore or Xcore)",
+ "?core<", null);
if (path != null && !metamodels.contains(path)) {
metamodels.add(path);
metamodelList.refresh();
@@ -358,19 +358,14 @@
private Collection<EPackage> findEPackages(String resourcePath) {
Set<EPackage> ePackages = new HashSet<EPackage>();
+ // Reuse EmfRegistryManager Approach
try {
- ResourceSet rs = new ResourceSetImpl();
- Resource r = rs.createResource(URI.createPlatformResourceURI(resourcePath, true));
- r.load(null);
- if (expandButton.getSelection()) {
- EcoreUtil.resolveAll(r);
- }
- for (Resource res : rs.getResources()) {
- Iterator<EObject> it = res.getAllContents();
- while (it.hasNext()) {
- ePackages.add(EmfUtil.getTopEPackage(it.next().eClass().getEPackage()));
- }
- }
+ if (resourcePath.endsWith(".ecore")) {
+ ePackages.addAll(EmfUtil.register(URI.createPlatformResourceURI(resourcePath, true), EPackage.Registry.INSTANCE));
+ }
+ else { // Must be xcore
+ ePackages.addAll(EmfUtil.registerXcore(URI.createPlatformResourceURI(resourcePath, true), EPackage.Registry.INSTANCE));
+ }
}
catch (Exception ex) {
ex.printStackTrace();
diff --git a/plugins/org.eclipse.epsilon.emc.emf/META-INF/MANIFEST.MF b/plugins/org.eclipse.epsilon.emc.emf/META-INF/MANIFEST.MF
index 8c98b30..d560a75 100644
--- a/plugins/org.eclipse.epsilon.emc.emf/META-INF/MANIFEST.MF
+++ b/plugins/org.eclipse.epsilon.emc.emf/META-INF/MANIFEST.MF
@@ -9,7 +9,10 @@
org.eclipse.emf.ecore;visibility:=reexport,
org.eclipse.emf.ecore.xmi;visibility:=reexport,
org.eclipse.emf.ecore.change;visibility:=reexport,
- org.eclipse.emf.mapping.xsd2ecore;resolution:=optional
+ com.google.inject,
+ org.eclipse.xsd,
+ org.eclipse.emf.ecore.xcore;resolution:=optional,
+ org.apache.commons.logging
Export-Package: org.eclipse.epsilon.emc.emf,
org.eclipse.epsilon.emc.emf.m0,
org.eclipse.epsilon.emc.emf.tools,
diff --git a/plugins/org.eclipse.epsilon.emc.emf/src/org/eclipse/epsilon/emc/emf/AbstractEmfModel.java b/plugins/org.eclipse.epsilon.emc.emf/src/org/eclipse/epsilon/emc/emf/AbstractEmfModel.java
index 2d397a1..7ba184b 100644
--- a/plugins/org.eclipse.epsilon.emc.emf/src/org/eclipse/epsilon/emc/emf/AbstractEmfModel.java
+++ b/plugins/org.eclipse.epsilon.emc.emf/src/org/eclipse/epsilon/emc/emf/AbstractEmfModel.java
@@ -56,7 +56,7 @@
protected Resource modelImpl;
protected boolean expand = true;
- Map<String, EClass> eClassCache = new HashMap<String, EClass>();
+ Map<String, EClass> eClassCache = new HashMap<String, EClass>();
protected InputStream getInputStream(String file) throws IOException {
diff --git a/plugins/org.eclipse.epsilon.emc.emf/src/org/eclipse/epsilon/emc/emf/EmfModel.java b/plugins/org.eclipse.epsilon.emc.emf/src/org/eclipse/epsilon/emc/emf/EmfModel.java
index c895226..5593faa 100644
--- a/plugins/org.eclipse.epsilon.emc.emf/src/org/eclipse/epsilon/emc/emf/EmfModel.java
+++ b/plugins/org.eclipse.epsilon.emc.emf/src/org/eclipse/epsilon/emc/emf/EmfModel.java
@@ -535,7 +535,12 @@
try {
metamodelPackages = attemptFileBasedMetamodelReuse(metamodelFileUri);
if (metamodelPackages == null) {
- metamodelPackages = EmfUtil.register(metamodelFileUri, resourceSet.getPackageRegistry(), false);
+ if ("ecore".equals(metamodelFileUri.fileExtension())) {
+ metamodelPackages = EmfUtil.register(metamodelFileUri, resourceSet.getPackageRegistry(), false);
+ }
+ else {
+ metamodelPackages = EmfUtil.registerXcore(metamodelFileUri, resourceSet.getPackageRegistry(), false);
+ }
saveFileBasedMetamodelForReuse(metamodelFileUri, metamodelPackages);
}
} catch (Exception e) {
diff --git a/plugins/org.eclipse.epsilon.emc.emf/src/org/eclipse/epsilon/emc/emf/EmfUtil.java b/plugins/org.eclipse.epsilon.emc.emf/src/org/eclipse/epsilon/emc/emf/EmfUtil.java
index 7d2c061..228824a 100644
--- a/plugins/org.eclipse.epsilon.emc.emf/src/org/eclipse/epsilon/emc/emf/EmfUtil.java
+++ b/plugins/org.eclipse.epsilon.emc.emf/src/org/eclipse/epsilon/emc/emf/EmfUtil.java
@@ -10,6 +10,7 @@
******************************************************************************/
package org.eclipse.epsilon.emc.emf;
+import java.io.IOException;
import java.util.ArrayList;
import java.util.Collection;
import java.util.Collections;
@@ -29,14 +30,22 @@
import org.eclipse.emf.ecore.EPackage;
import org.eclipse.emf.ecore.EStructuralFeature;
import org.eclipse.emf.ecore.EcorePackage;
+import org.eclipse.emf.ecore.plugin.EcorePlugin;
import org.eclipse.emf.ecore.resource.Resource;
import org.eclipse.emf.ecore.resource.ResourceSet;
import org.eclipse.emf.ecore.resource.impl.ResourceSetImpl;
import org.eclipse.emf.ecore.util.EcoreUtil;
import org.eclipse.emf.ecore.util.ExtendedMetaData;
+import org.eclipse.emf.ecore.xcore.XcorePackage;
+import org.eclipse.emf.ecore.xcore.XcoreStandaloneSetup;
import org.eclipse.emf.ecore.xmi.impl.EcoreResourceFactoryImpl;
import org.eclipse.emf.ecore.xmi.impl.XMIResourceFactoryImpl;
import org.eclipse.epsilon.common.util.OperatingSystem;
+import org.eclipse.xtext.resource.XtextResource;
+import org.eclipse.xtext.resource.XtextResourceSet;
+
+import com.google.inject.Injector;
+
public class EmfUtil {
@@ -139,12 +148,13 @@
//protected HashMap<URI, List<EPackage>> cache = new HashMap<URI, List<EPackage>>();
- public static void initialiseResourceFactoryRegistry() {
+ private static void initialiseResourceFactoryRegistry() {
final Map<String, Object> etfm = Resource.Factory.Registry.INSTANCE.getExtensionToFactoryMap();
if (!etfm.containsKey("*")) {
etfm.put("*", new XMIResourceFactoryImpl());
}
+
}
public static List<EPackage> register(URI uri, EPackage.Registry registry) throws Exception {
@@ -157,7 +167,7 @@
* @param uri The URI of the metamodel
* @param registry The registry in which the metamodel's packages are registered
* @param useUriForResource If True, the URI of the resource created for the metamodel would be overwritten
- * with the URI of the [last] EPackage in the metamodel.
+ * with the URI of the last EPackage in the metamodel.
* @return A list of the EPackages registered.
* @throws Exception If there is an error accessing the resources.
*/
@@ -182,30 +192,8 @@
if (next instanceof EPackage) {
EPackage p = (EPackage) next;
- if (p.getNsURI() == null || p.getNsURI().trim().length() == 0) {
- if (p.getESuperPackage() == null) {
- p.setNsURI(p.getName());
- }
- else {
- p.setNsURI(p.getESuperPackage().getNsURI() + "/" + p.getName());
- }
- }
-
- if (p.getNsPrefix() == null || p.getNsPrefix().trim().length() == 0) {
- if (p.getESuperPackage() != null) {
- if (p.getESuperPackage().getNsPrefix()!=null) {
- p.setNsPrefix(p.getESuperPackage().getNsPrefix() + "." + p.getName());
- }
- else {
- p.setNsPrefix(p.getName());
- }
- }
- }
-
- if (p.getNsPrefix() == null) p.setNsPrefix(p.getName());
+ adjustNsAndPrefix(metamodel, p, useUriForResource);
registry.put(p.getNsURI(), p);
- if (useUriForResource)
- metamodel.setURI(URI.createURI(p.getNsURI()));
ePackages.add(p);
}
}
@@ -213,6 +201,33 @@
return ePackages;
}
+
+ public static List<EPackage> registerXcore(URI locationURI, EPackage.Registry registry) throws IOException {
+ return registerXcore(locationURI, registry, true);
+ }
+
+ public static List<EPackage> registerXcore(URI locationURI, EPackage.Registry registry, boolean useUriForResource) throws IOException {
+
+ List<EPackage> ePackages = new ArrayList<EPackage>();
+
+ initialiseResourceFactoryRegistry();
+
+ ResourceSet resourceSet = new ResourceSetImpl();
+ resourceSet.getURIConverter().getURIMap().putAll(EcorePlugin.computePlatformURIMap(true));
+ Resource metamodel = resourceSet.getResource(locationURI, true);
+ metamodel.load(Collections.EMPTY_MAP);
+ EcoreUtil.resolveAll(metamodel);
+ EPackage ePackage = (EPackage)EcoreUtil.getObjectByType(metamodel.getContents(), EcorePackage.Literals.EPACKAGE);
+
+ if (ePackage != null)
+ {
+ adjustNsAndPrefix(metamodel, ePackage, useUriForResource);
+ registry.put(ePackage.getNsURI(), ePackage);
+ ePackages.add(ePackage);
+ }
+
+ return ePackages;
+ }
protected static void setDataTypesInstanceClasses(Resource metamodel) {
Iterator<EObject> it = metamodel.getAllContents();
@@ -306,4 +321,36 @@
org.eclipse.epsilon.emc.emf.EmfUtil.createResource(cloned);
return cloned;
}
+
+
+ /**
+ * @param metamodel
+ * @param p
+ * @param useUriForResource
+ */
+ private static void adjustNsAndPrefix(Resource metamodel, EPackage p, boolean useUriForResource) {
+ if (p.getNsURI() == null || p.getNsURI().trim().length() == 0) {
+ if (p.getESuperPackage() == null) {
+ p.setNsURI(p.getName());
+ }
+ else {
+ p.setNsURI(p.getESuperPackage().getNsURI() + "/" + p.getName());
+ }
+ }
+
+ if (p.getNsPrefix() == null || p.getNsPrefix().trim().length() == 0) {
+ if (p.getESuperPackage() != null) {
+ if (p.getESuperPackage().getNsPrefix()!=null) {
+ p.setNsPrefix(p.getESuperPackage().getNsPrefix() + "." + p.getName());
+ }
+ else {
+ p.setNsPrefix(p.getName());
+ }
+ }
+ }
+
+ if (p.getNsPrefix() == null) p.setNsPrefix(p.getName());
+ if (useUriForResource)
+ metamodel.setURI(URI.createURI(p.getNsURI()));
+ }
}
diff --git a/plugins/org.eclipse.epsilon.emc.spreadsheets.dependencies/META-INF/MANIFEST.MF b/plugins/org.eclipse.epsilon.emc.spreadsheets.dependencies/META-INF/MANIFEST.MF
index ed165c9..bbba7b0 100644
--- a/plugins/org.eclipse.epsilon.emc.spreadsheets.dependencies/META-INF/MANIFEST.MF
+++ b/plugins/org.eclipse.epsilon.emc.spreadsheets.dependencies/META-INF/MANIFEST.MF
@@ -7,4 +7,4 @@
Bundle-Vendor: Eclipse Modeling Project
Require-Bundle: org.apache.commons.lang3;bundle-version="3.1.0";visibility:=reexport,
org.apache.commons.collections;bundle-version="3.2.2";visibility:=reexport,
- org.slf4j.api;bundle-version="1.7.2";visibility:=reexport
+ org.slf4j.api;bundle-version="1.7.2"
diff --git a/plugins/org.eclipse.epsilon.emc.spreadsheets.excel.dt/META-INF/MANIFEST.MF b/plugins/org.eclipse.epsilon.emc.spreadsheets.excel.dt/META-INF/MANIFEST.MF
index 67e1c45..cd4305c 100644
--- a/plugins/org.eclipse.epsilon.emc.spreadsheets.excel.dt/META-INF/MANIFEST.MF
+++ b/plugins/org.eclipse.epsilon.emc.spreadsheets.excel.dt/META-INF/MANIFEST.MF
@@ -11,3 +11,4 @@
Require-Bundle: org.eclipse.epsilon.common.dt;bundle-version="1.3.0",
org.eclipse.epsilon.emc.spreadsheets.excel;bundle-version="1.3.0",
org.eclipse.equinox.security;bundle-version="1.2.0"
+Import-Package: org.slf4j;version="1.7.2"
diff --git a/plugins/org.eclipse.epsilon.emc.spreadsheets.excel/META-INF/MANIFEST.MF b/plugins/org.eclipse.epsilon.emc.spreadsheets.excel/META-INF/MANIFEST.MF
index dbe5da7..a4fc386 100644
--- a/plugins/org.eclipse.epsilon.emc.spreadsheets.excel/META-INF/MANIFEST.MF
+++ b/plugins/org.eclipse.epsilon.emc.spreadsheets.excel/META-INF/MANIFEST.MF
@@ -9,3 +9,4 @@
Require-Bundle: org.eclipse.epsilon.eol.engine;bundle-version="1.3.0",
org.eclipse.epsilon.emc.spreadsheets;bundle-version="1.3.0";visibility:=reexport,
org.eclipse.epsilon.emc.spreadsheets.excel.dependencies;bundle-version="1.3.0";visibility:=reexport
+Import-Package: org.slf4j;version="1.7.2"
diff --git a/plugins/org.eclipse.epsilon.emc.spreadsheets.google.dt/META-INF/MANIFEST.MF b/plugins/org.eclipse.epsilon.emc.spreadsheets.google.dt/META-INF/MANIFEST.MF
index 440e6fd..9d65ead 100644
--- a/plugins/org.eclipse.epsilon.emc.spreadsheets.google.dt/META-INF/MANIFEST.MF
+++ b/plugins/org.eclipse.epsilon.emc.spreadsheets.google.dt/META-INF/MANIFEST.MF
@@ -11,3 +11,4 @@
Require-Bundle: org.eclipse.epsilon.common.dt;bundle-version="1.3.0",
org.eclipse.epsilon.emc.spreadsheets.google;bundle-version="1.3.0",
org.eclipse.equinox.security;bundle-version="1.2.0"
+Import-Package: org.slf4j;version="1.7.2"
diff --git a/plugins/org.eclipse.epsilon.emc.spreadsheets.google/META-INF/MANIFEST.MF b/plugins/org.eclipse.epsilon.emc.spreadsheets.google/META-INF/MANIFEST.MF
index 9c4f35a..ad270b6 100644
--- a/plugins/org.eclipse.epsilon.emc.spreadsheets.google/META-INF/MANIFEST.MF
+++ b/plugins/org.eclipse.epsilon.emc.spreadsheets.google/META-INF/MANIFEST.MF
@@ -9,3 +9,4 @@
Require-Bundle: org.eclipse.epsilon.eol.engine;bundle-version="1.3.0",
org.eclipse.epsilon.emc.spreadsheets;bundle-version="1.3.0";visibility:=reexport,
org.eclipse.epsilon.emc.spreadsheets.google.dependencies;bundle-version="1.3.0";visibility:=reexport
+Import-Package: org.slf4j;version="1.7.2"
diff --git a/plugins/org.eclipse.epsilon.emc.spreadsheets/META-INF/MANIFEST.MF b/plugins/org.eclipse.epsilon.emc.spreadsheets/META-INF/MANIFEST.MF
index 1d183b5..dbed04f 100644
--- a/plugins/org.eclipse.epsilon.emc.spreadsheets/META-INF/MANIFEST.MF
+++ b/plugins/org.eclipse.epsilon.emc.spreadsheets/META-INF/MANIFEST.MF
@@ -8,3 +8,4 @@
Bundle-RequiredExecutionEnvironment: JavaSE-1.8
Require-Bundle: org.eclipse.epsilon.eol.engine;bundle-version="1.3.0",
org.eclipse.epsilon.emc.spreadsheets.dependencies;bundle-version="1.3.0";visibility:=reexport
+Import-Package: org.slf4j;version="1.7.2"
diff --git a/plugins/org.eclipse.epsilon.emf.dt/plugin.xml b/plugins/org.eclipse.epsilon.emf.dt/plugin.xml
index ef57675..75d0699 100644
--- a/plugins/org.eclipse.epsilon.emf.dt/plugin.xml
+++ b/plugins/org.eclipse.epsilon.emf.dt/plugin.xml
@@ -33,6 +33,17 @@
<objectContribution
adaptable="false"
id="org.eclipse.epsilon.perspective.popups.ecore"
+ nameFilter="*.xcore"
+ objectClass="org.eclipse.core.resources.IFile">
+ <action
+ class="org.eclipse.epsilon.emf.dt.RegisterMetamodelAction"
+ icon="icons/register.gif"
+ id="org.eclipse.epsilon.emf.dt.RegisterMetamodelAction"
+ label="Register EPackages"/>
+ </objectContribution>
+ <objectContribution
+ adaptable="false"
+ id="org.eclipse.epsilon.perspective.popups.ecore"
nameFilter="*.xsd"
objectClass="org.eclipse.core.resources.IFile">
<action
diff --git a/plugins/org.eclipse.epsilon.emf.dt/src/org/eclipse/epsilon/emf/dt/EmfRegistryManager.java b/plugins/org.eclipse.epsilon.emf.dt/src/org/eclipse/epsilon/emf/dt/EmfRegistryManager.java
index a1d87fc..ef65b3c 100644
--- a/plugins/org.eclipse.epsilon.emf.dt/src/org/eclipse/epsilon/emf/dt/EmfRegistryManager.java
+++ b/plugins/org.eclipse.epsilon.emf.dt/src/org/eclipse/epsilon/emf/dt/EmfRegistryManager.java
@@ -32,7 +32,7 @@
protected static EmfRegistryManager instance = null;
protected HashMap<String, List<EPackage>> managedMetamodels = new HashMap<String, List<EPackage>>();
-
+
public static EmfRegistryManager getInstance() {
if (instance == null) {
instance = new EmfRegistryManager();
@@ -70,15 +70,12 @@
// only interested in changed resources (not added or
// removed)
/*
- * if (delta.getKind() != IResourceDelta.CHANGED) return
- * true; //only interested in content changes if
- * ((delta.getFlags() & IResourceDelta.CONTENT) == 0)
- * return true; IResource resource =
- * delta.getResource(); //only interested in files with
- * the "txt" extension if (resource.getType() ==
- * IResource.FILE &&
- * "txt".equalsIgnoreCase(resource.getFileExtension())) {
- * changed.add(resource); }
+ * if (delta.getKind() != IResourceDelta.CHANGED) return true; //only interested
+ * in content changes if ((delta.getFlags() & IResourceDelta.CONTENT) == 0)
+ * return true; IResource resource = delta.getResource(); //only interested in
+ * files with the "txt" extension if (resource.getType() == IResource.FILE &&
+ * "txt".equalsIgnoreCase(resource.getFileExtension())) { changed.add(resource);
+ * }
*/
changed.add(delta);
return true;
@@ -94,7 +91,7 @@
return;
for (IResourceDelta delta : changed) {
-
+
String metamodel = delta.getResource().getFullPath().toOSString();
List<String> metamodels = getMetamodels();
if (metamodels.contains(metamodel)) {
@@ -107,12 +104,10 @@
LogUtil.log(e);
}
}
- }
- else {
+ } else {
try {
registerMetamodel(metamodel);
- }
- catch (Exception ex) {
+ } catch (Exception ex) {
ex.printStackTrace();
}
}
@@ -123,7 +118,7 @@
};
workspace.addResourceChangeListener(listener);
}
-
+
public void addMetamodel(String fileName) throws Exception {
registerMetamodel(fileName);
List<String> metamodels = getMetamodels();
@@ -132,41 +127,45 @@
setMetamodels(metamodels);
}
}
-
- private void registerMetamodel(String fileName) throws Exception{
- List<EPackage> ePackages = EmfUtil.register(URI.createPlatformResourceURI(fileName, true), EPackage.Registry.INSTANCE);
+
+ private void registerMetamodel(String fileName) throws Exception {
+ List<EPackage> ePackages;
+ if (fileName.endsWith(".ecore")) {
+ ePackages = EmfUtil.register(URI.createPlatformResourceURI(fileName, true), EPackage.Registry.INSTANCE);
+ } else { // Must be xcore
+ ePackages = EmfUtil.registerXcore(URI.createPlatformResourceURI(fileName, true), EPackage.Registry.INSTANCE, false);
+ }
managedMetamodels.put(fileName, ePackages);
}
-
+
public void removeMetamodel(String fileName) {
-
+
List<EPackage> ePackages = managedMetamodels.get(fileName);
-
- if (ePackages == null) return;
-
+
+ if (ePackages == null)
+ return;
+
for (EPackage ePackage : ePackages) {
EPackage.Registry.INSTANCE.remove(ePackage.getNsURI());
}
-
+
managedMetamodels.remove(fileName);
List<String> metamodels = getMetamodels();
metamodels.remove(fileName);
setMetamodels(metamodels);
-
+
}
-
+
public List<String> getMetamodels() {
List<String> metamodels = new ArrayList<String>();
- String concat = EmfUtilPlugin.getDefault().getPreferenceStore()
- .getString("metamodels");
+ String concat = EmfUtilPlugin.getDefault().getPreferenceStore().getString("metamodels");
StringTokenizer st = new StringTokenizer(concat, ";");
while (st.hasMoreTokens()) {
metamodels.add(st.nextToken());
}
return metamodels;
}
-
-
+
private void setMetamodels(List<String> metamodels) {
StringBuffer sb = new StringBuffer();
ListIterator<String> li = metamodels.listIterator();
@@ -176,7 +175,6 @@
sb.append(";");
}
}
- EmfUtilPlugin.getDefault().getPreferenceStore().setValue("metamodels",
- sb.toString());
+ EmfUtilPlugin.getDefault().getPreferenceStore().setValue("metamodels", sb.toString());
}
}
diff --git a/plugins/org.eclipse.epsilon.targetplatform/org.eclipse.epsilon.targetplatform.target b/plugins/org.eclipse.epsilon.targetplatform/org.eclipse.epsilon.targetplatform.target
index c71d912..a70c447 100644
--- a/plugins/org.eclipse.epsilon.targetplatform/org.eclipse.epsilon.targetplatform.target
+++ b/plugins/org.eclipse.epsilon.targetplatform/org.eclipse.epsilon.targetplatform.target
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
-<?pde version="3.8"?><target name="Epsilon Target Platform" sequenceNumber="79">
+<?pde version="3.8"?><target name="Epsilon Target Platform" sequenceNumber="89">
<locations>
<location includeAllPlatforms="false" includeConfigurePhase="true" includeMode="planner" includeSource="false" type="InstallableUnit">
<unit id="org.eclipse.sirius.runtime.feature.group" version="4.1.3.201701271256"/>
@@ -24,6 +24,7 @@
<location includeAllPlatforms="false" includeConfigurePhase="true" includeMode="planner" includeSource="false" type="InstallableUnit">
<unit id="org.eclipse.emf.compare.ide.ui.feature.group" version="3.2.1.201608311750"/>
<unit id="org.eclipse.emf.compare.uml2.feature.group" version="3.2.1.201608311750"/>
+<unit id="org.eclipse.emf.ecore.xcore.sdk.feature.group" version="1.4.0.v20160526-0606"/>
<unit id="org.eclipse.emf.sdk.feature.group" version="2.12.0.v20160526-0356"/>
<unit id="org.eclipse.emf.transaction.sdk.feature.group" version="1.10.0.201606071900"/>
<unit id="org.eclipse.emf.validation.sdk.feature.group" version="1.10.0.201606071713"/>
@@ -40,30 +41,30 @@
<unit id="org.eclipse.ocl.all.sdk.feature.group" version="5.2.0.v20160523-1914"/>
<unit id="org.eclipse.uml2.sdk.feature.group" version="5.2.2.v20161114-0827"/>
<unit id="org.eclipse.xsd.sdk.feature.group" version="2.12.0.v20160526-0356"/>
+<unit id="org.eclipse.xtext.sdk.feature.group" version="2.10.0.v201605250459"/>
<repository location="http://download.eclipse.org/releases/neon/"/>
</location>
<location includeAllPlatforms="false" includeConfigurePhase="true" includeMode="planner" includeSource="false" type="InstallableUnit">
-<unit id="org.hamcrest.library.source" version="1.3.0.v201505072020"/>
-<unit id="org.slf4j.log4j" version="1.7.2.v20130115-1340"/>
-<unit id="org.dom4j" version="1.6.1.v201312101416"/>
-<unit id="org.apache.log4j.source" version="1.2.15.v201012070815"/>
-<unit id="org.slf4j.log4j.source" version="1.7.2.v20130115-1340"/>
+<unit id="com.google.guava" version="18.0.0.v20161115-1643"/>
+<unit id="com.google.guava.source" version="18.0.0.v20161115-1643"/>
<unit id="org.apache.commons.collections" version="3.2.2.v201511171945"/>
-<unit id="org.slf4j.impl.log4j12.source" version="1.7.2.v20131105-2200"/>
-<unit id="com.google.guava" version="21.0.0.v20170206-1425"/>
-<unit id="org.apache.log4j" version="1.2.15.v201012070815"/>
-<unit id="org.slf4j.impl.log4j12" version="1.7.2.v20131105-2200"/>
-<unit id="org.dom4j.source" version="1.6.1.v201312101416"/>
-<unit id="org.slf4j.api" version="1.7.10.v20170224-1220"/>
-<unit id="org.hamcrest.core.source" version="1.3.0.v201303031735"/>
-<unit id="org.apache.commons.lang3" version="3.1.0.v201403281430"/>
-<unit id="org.hamcrest.core" version="1.3.0.v201303031735"/>
-<unit id="org.apache.commons.lang3.source" version="3.1.0.v201403281430"/>
-<unit id="org.apache.commons.math3" version="3.5.0.v20160301-1110"/>
-<unit id="org.slf4j.api.source" version="1.7.10.v20170224-1220"/>
<unit id="org.apache.commons.collections.source" version="3.2.2.v201511171945"/>
+<unit id="org.apache.commons.lang3" version="3.1.0.v201403281430"/>
+<unit id="org.apache.commons.lang3.source" version="3.1.0.v201403281430"/>
+<unit id="org.apache.commons.logging" version="1.1.1.v201101211721"/>
+<unit id="org.apache.commons.logging.source" version="1.1.1.v201101211721"/>
+<unit id="org.apache.commons.math3" version="3.5.0.v20160301-1110"/>
<unit id="org.apache.commons.math3.source" version="3.5.0.v20160301-1110"/>
+<unit id="org.dom4j" version="1.6.1.v201312101416"/>
+<unit id="org.dom4j.source" version="1.6.1.v201312101416"/>
+<unit id="org.hamcrest.core" version="1.3.0.v201303031735"/>
+<unit id="org.hamcrest.core.source" version="1.3.0.v201303031735"/>
<unit id="org.hamcrest.library" version="1.3.0.v201505072020"/>
+<unit id="org.hamcrest.library.source" version="1.3.0.v201505072020"/>
+<unit id="org.slf4j.api" version="1.7.10.v20170224-1220"/>
+<unit id="org.slf4j.api.source" version="1.7.10.v20170224-1220"/>
+<unit id="org.slf4j.impl.log4j12" version="1.7.2.v20131105-2200"/>
+<unit id="org.slf4j.impl.log4j12.source" version="1.7.2.v20131105-2200"/>
<repository location="http://download.eclipse.org/tools/orbit/downloads/drops/R20170307180635/repository"/>
</location>
</locations>
diff --git a/standalone/eutils-maven-plugin/src/main/java/org/eclipse/epsilon/maven/EpsilonStandaloneDeployMojo.java b/standalone/eutils-maven-plugin/src/main/java/org/eclipse/epsilon/maven/EpsilonStandaloneDeployMojo.java
index 7d1c101..a937da9 100644
--- a/standalone/eutils-maven-plugin/src/main/java/org/eclipse/epsilon/maven/EpsilonStandaloneDeployMojo.java
+++ b/standalone/eutils-maven-plugin/src/main/java/org/eclipse/epsilon/maven/EpsilonStandaloneDeployMojo.java
@@ -50,7 +50,7 @@
*
* <code>
* mvn org.eclipse.epsilon:eutils-maven-plugin:deploy \
- * -Durl=https://oss.sonatype.org/service/local/staging/deploy/maven2
+ * -Ddeploy.url=https://oss.sonatype.org/service/local/staging/deploy/maven2
* </code>
*/
@Mojo(name = "deploy", defaultPhase = LifecyclePhase.NONE)
diff --git a/standalone/org.eclipse.epsilon.standalone/META-INF/MANIFEST.MF b/standalone/org.eclipse.epsilon.standalone/META-INF/MANIFEST.MF
index a77fd5a..b488707 100644
--- a/standalone/org.eclipse.epsilon.standalone/META-INF/MANIFEST.MF
+++ b/standalone/org.eclipse.epsilon.standalone/META-INF/MANIFEST.MF
@@ -8,6 +8,14 @@
org.eclipse.emf.common,
org.eclipse.emf.ecore,
org.eclipse.emf.ecore.xmi,
+ org.eclipse.emf.ecore.xcore;bundle-version="1.4.0",
+ org.eclipse.xtext;bundle-version="2.10.0",
+ org.eclipse.xtext.xbase;bundle-version="2.10.0",
+ org.eclipse.emf.codegen;bundle-version="2.11.0",
+ org.eclipse.emf.codegen.ecore;bundle-version="2.11.0",
+ org.eclipse.emf.codegen.ecore.xtext;bundle-version="1.2.0",
+ org.eclipse.emf.mwe2.runtime;bundle-version="2.9.0",
+ org.eclipse.core.runtime;bundle-version="3.12.0",
org.eclipse.xsd,
org.eclipse.uml2.uml,
org.eclipse.uml2.common,
diff --git a/standalone/org.eclipse.epsilon.standalone/assembly/core.pom b/standalone/org.eclipse.epsilon.standalone/assembly/core.pom
index e126457..88d971d 100644
--- a/standalone/org.eclipse.epsilon.standalone/assembly/core.pom
+++ b/standalone/org.eclipse.epsilon.standalone/assembly/core.pom
@@ -2,7 +2,8 @@
<modelVersion>4.0.0</modelVersion>
<groupId>org.eclipse.epsilon</groupId>
<artifactId>epsilon-core</artifactId>
- <version>1.5.0-SNAPSHOT</version> <name>Epsilon jar component</name>
+ <version>1.5.0-SNAPSHOT</version>
+ <name>Epsilon jar component</name>
<description>
The execution engines of all Epsilon languages,
as well as the plain XML and CSV drivers.
diff --git a/standalone/org.eclipse.epsilon.standalone/assembly/emf-deps.xml b/standalone/org.eclipse.epsilon.standalone/assembly/emf-deps.xml
index a48dcc3..98f0ea4 100644
--- a/standalone/org.eclipse.epsilon.standalone/assembly/emf-deps.xml
+++ b/standalone/org.eclipse.epsilon.standalone/assembly/emf-deps.xml
@@ -14,6 +14,15 @@
<include>org.eclipse.emf.common*.jar</include>
<include>org.eclipse.emf.ecore*.jar</include>
<include>org.eclipse.emf.ecore.xmi*.jar</include>
+ <include>org.eclipse.emf.ecore.xcore*.jar</include>
+ <include>org.eclipse.xtext*.jar</include>
+ <include>org.eclipse.xtext.xbase*.jar</include>
+ <include>org.eclipse.xtext.ecore*.jar</include>
+ <include>org.eclipse.emf.mwe2.runtime*.jar</include>
+ <include>org.eclipse.emf.codegen*.jar</include>
+ <include>org.eclipse.emf.codegen.ecore*.jar</include>
+ <include>org.eclipse.emf.codegen.ecore.xtext*.jar</include>
+ <include>org.eclipse.core.runtime*.jar</include>
<include>org.eclipse.xsd*.jar</include>
</includes>
</fileSet>
diff --git a/standalone/org.eclipse.epsilon.standalone/assembly/emf.pom b/standalone/org.eclipse.epsilon.standalone/assembly/emf.pom
index 526720f..5781544 100644
--- a/standalone/org.eclipse.epsilon.standalone/assembly/emf.pom
+++ b/standalone/org.eclipse.epsilon.standalone/assembly/emf.pom
@@ -2,7 +2,26 @@
<modelVersion>4.0.0</modelVersion>
<groupId>org.eclipse.epsilon</groupId>
<artifactId>epsilon-emf</artifactId>
- <version>1.5.0-SNAPSHOT</version> <dependencies>
+ <version>1.5.0-SNAPSHOT</version>
+ <repositories>
+ <repository>
+ <snapshots><enabled>false</enabled></snapshots>
+ <releases><enabled>true</enabled></releases>
+ <id>bintray-epsilonlabs-epsilon-standalone</id>
+ <name>epsilon-bintray</name>
+ <url>https://dl.bintray.com/epsilonlabs/epsilon-standalone</url>
+ </repository>
+ </repositories>
+ <pluginRepositories>
+ <pluginRepository>
+ <snapshots><enabled>false</enabled></snapshots>
+ <releases><enabled>true</enabled></releases>
+ <id>bintray-epsilonlabs-epsilon-standalone</id>
+ <name>epsilon-bintray-plugins</name>
+ <url>https://dl.bintray.com/epsilonlabs/epsilon-standalone</url>
+ </pluginRepository>
+ </pluginRepositories>
+ <dependencies>
<dependency>
<groupId>org.eclipse.epsilon</groupId>
<artifactId>epsilon-core</artifactId>
@@ -11,22 +30,67 @@
<dependency>
<groupId>org.eclipse.emf</groupId>
<artifactId>org.eclipse.emf.common</artifactId>
- <version>2.11.0-v20150805-0538</version>
+ <version>2.12.0</version>
</dependency>
<dependency>
<groupId>org.eclipse.emf</groupId>
<artifactId>org.eclipse.emf.ecore</artifactId>
- <version>2.11.1-v20150805-0538</version>
+ <version>2.12.0</version>
</dependency>
<dependency>
<groupId>org.eclipse.emf</groupId>
<artifactId>org.eclipse.emf.ecore.xmi</artifactId>
- <version>2.11.1-v20150805-0538</version>
+ <version>2.12.0</version>
+ </dependency>
+ <dependency>
+ <groupId>org.eclipse.emf</groupId>
+ <artifactId>org.eclipse.emf.ecore.xcore</artifactId>
+ <version>1.4.0</version>
+ </dependency>
+ <dependency>
+ <groupId>org.eclipse.xtext</groupId>
+ <artifactId>org.eclipse.xtext</artifactId>
+ <version>2.10.0</version>
+ </dependency>
+ <dependency>
+ <groupId>org.eclipse.xtext</groupId>
+ <artifactId>org.eclipse.xtext.xbase</artifactId>
+ <version>2.10.0</version>
+ </dependency>
+ <dependency>
+ <groupId>org.eclipse.xtext</groupId>
+ <artifactId>org.eclipse.xtext.ecore</artifactId>
+ <version>2.10.0</version>
+ </dependency>
+ <dependency>
+ <groupId>org.eclipse.emf</groupId>
+ <artifactId>org.eclipse.emf.mwe2.runtime</artifactId>
+ <version>2.9.1.201705291010</version>
+ </dependency>
+ <dependency>
+ <groupId>org.eclipse.emf</groupId>
+ <artifactId>org.eclipse.emf.codegen</artifactId>
+ <version>2.11.0-v20150806-0404</version>
+ </dependency>
+ <dependency>
+ <groupId>org.eclipse.emf</groupId>
+ <artifactId>org.eclipse.emf.codegen.ecore</artifactId>
+ <version>2.11.0</version>
+ </dependency>
+ <dependency>
+ <groupId>org.eclipse.emf</groupId>
+ <artifactId>org.eclipse.emf.codegen.ecore.xtext</artifactId>
+ <version>1.2.0</version>
+ </dependency>
+ <dependency>
+ <groupId>org.eclipse.platform</groupId>
+ <artifactId>org.eclipse.core.runtime</artifactId>
+ <version>3.12.0</version>
</dependency>
<dependency>
<groupId>org.eclipse.xsd</groupId>
<artifactId>org.eclipse.xsd</artifactId>
- <version>2.11.0-v20150806-0404</version>
+ <version>2.12.0</version>
</dependency>
</dependencies>
<name>Epsilon jar component</name>
diff --git a/standalone/org.eclipse.epsilon.standalone/assembly/graphml.pom b/standalone/org.eclipse.epsilon.standalone/assembly/graphml.pom
index 2d0e1bc..8137766 100644
--- a/standalone/org.eclipse.epsilon.standalone/assembly/graphml.pom
+++ b/standalone/org.eclipse.epsilon.standalone/assembly/graphml.pom
@@ -2,7 +2,8 @@
<modelVersion>4.0.0</modelVersion>
<groupId>org.eclipse.epsilon</groupId>
<artifactId>epsilon-graphml</artifactId>
- <version>1.5.0-SNAPSHOT</version> <dependencies>
+ <version>1.5.0-SNAPSHOT</version>
+ <dependencies>
<dependency>
<groupId>org.eclipse.epsilon</groupId>
<artifactId>epsilon-emf</artifactId>
diff --git a/standalone/org.eclipse.epsilon.standalone/assembly/hutn.pom b/standalone/org.eclipse.epsilon.standalone/assembly/hutn.pom
index 6c523a6..140284f 100644
--- a/standalone/org.eclipse.epsilon.standalone/assembly/hutn.pom
+++ b/standalone/org.eclipse.epsilon.standalone/assembly/hutn.pom
@@ -2,7 +2,8 @@
<modelVersion>4.0.0</modelVersion>
<groupId>org.eclipse.epsilon</groupId>
<artifactId>epsilon-hutn</artifactId>
- <version>1.5.0-SNAPSHOT</version> <dependencies>
+ <version>1.5.0-SNAPSHOT</version>
+ <dependencies>
<dependency>
<groupId>org.eclipse.epsilon</groupId>
<artifactId>epsilon-emf</artifactId>
diff --git a/standalone/org.eclipse.epsilon.standalone/assembly/simulink.pom b/standalone/org.eclipse.epsilon.standalone/assembly/simulink.pom
index 1408537..16a1485 100644
--- a/standalone/org.eclipse.epsilon.standalone/assembly/simulink.pom
+++ b/standalone/org.eclipse.epsilon.standalone/assembly/simulink.pom
@@ -2,7 +2,8 @@
<modelVersion>4.0.0</modelVersion>
<groupId>org.eclipse.epsilon</groupId>
<artifactId>epsilon-simulink</artifactId>
- <version>1.5.0-SNAPSHOT</version> <dependencies>
+ <version>1.5.0-SNAPSHOT</version>
+ <dependencies>
<dependency>
<groupId>org.eclipse.epsilon</groupId>
<artifactId>epsilon-core</artifactId>
diff --git a/standalone/org.eclipse.epsilon.standalone/assembly/spreadsheets-deps.xml b/standalone/org.eclipse.epsilon.standalone/assembly/spreadsheets-deps.xml
index 4129652..dac5db1 100644
--- a/standalone/org.eclipse.epsilon.standalone/assembly/spreadsheets-deps.xml
+++ b/standalone/org.eclipse.epsilon.standalone/assembly/spreadsheets-deps.xml
@@ -11,9 +11,6 @@
<directory>target/dependency</directory>
<outputDirectory></outputDirectory>
<includes>
- <include>org.apache.commons.collections_3.2.1*.jar</include>
- <include>org.slf4j.api_1.7.2*.jar</include>
- <include>org.apache.commons.lang3_3.1*.jar</include>
<include>org.apache.poi_3.10.1*.jar</include>
<include>org.apache.poi.ooxml_3.10.1*.jar</include>
<include>org.apache.poi.ooxml.schemas_3.10.1*.jar</include>
diff --git a/standalone/org.eclipse.epsilon.standalone/assembly/spreadsheets.pom b/standalone/org.eclipse.epsilon.standalone/assembly/spreadsheets.pom
index 7343523..c41616f 100644
--- a/standalone/org.eclipse.epsilon.standalone/assembly/spreadsheets.pom
+++ b/standalone/org.eclipse.epsilon.standalone/assembly/spreadsheets.pom
@@ -2,28 +2,14 @@
<modelVersion>4.0.0</modelVersion>
<groupId>org.eclipse.epsilon</groupId>
<artifactId>epsilon-spreadsheets</artifactId>
- <version>1.5.0-SNAPSHOT</version> <dependencies>
+ <version>1.5.0-SNAPSHOT</version>
+ <dependencies>
<dependency>
<groupId>org.eclipse.epsilon</groupId>
<artifactId>epsilon-core</artifactId>
<version>1.5.0-SNAPSHOT</version>
</dependency>
<dependency>
- <groupId>commons-collections</groupId>
- <artifactId>commons-collections</artifactId>
- <version>3.2.1</version>
- </dependency>
- <dependency>
- <groupId>org.slf4j</groupId>
- <artifactId>slf4j-api</artifactId>
- <version>1.7.2</version>
- </dependency>
- <dependency>
- <groupId>org.apache.commons</groupId>
- <artifactId>commons-lang3</artifactId>
- <version>3.1</version>
- </dependency>
- <dependency>
<groupId>org.apache.poi</groupId>
<artifactId>poi</artifactId>
<version>3.10.1</version>
diff --git a/standalone/org.eclipse.epsilon.standalone/assembly/uml.pom b/standalone/org.eclipse.epsilon.standalone/assembly/uml.pom
index ed8eca7..52441e4 100644
--- a/standalone/org.eclipse.epsilon.standalone/assembly/uml.pom
+++ b/standalone/org.eclipse.epsilon.standalone/assembly/uml.pom
@@ -2,7 +2,8 @@
<modelVersion>4.0.0</modelVersion>
<groupId>org.eclipse.epsilon</groupId>
<artifactId>epsilon-uml</artifactId>
- <version>1.5.0-SNAPSHOT</version> <dependencies>
+ <version>1.5.0-SNAPSHOT</version>
+ <dependencies>
<dependency>
<groupId>org.eclipse.epsilon</groupId>
<artifactId>epsilon-emf</artifactId>
diff --git a/standalone/org.eclipse.epsilon.standalone/assembly/workflow-emf.pom b/standalone/org.eclipse.epsilon.standalone/assembly/workflow-emf.pom
index 214b580..1cd4026 100644
--- a/standalone/org.eclipse.epsilon.standalone/assembly/workflow-emf.pom
+++ b/standalone/org.eclipse.epsilon.standalone/assembly/workflow-emf.pom
@@ -2,7 +2,8 @@
<modelVersion>4.0.0</modelVersion>
<groupId>org.eclipse.epsilon</groupId>
<artifactId>epsilon-workflow-emf</artifactId>
- <version>1.5.0-SNAPSHOT</version> <dependencies>
+ <version>1.5.0-SNAPSHOT</version>
+ <dependencies>
<dependency>
<groupId>org.eclipse.epsilon</groupId>
<artifactId>epsilon-workflow</artifactId>
diff --git a/standalone/org.eclipse.epsilon.standalone/assembly/workflow.pom b/standalone/org.eclipse.epsilon.standalone/assembly/workflow.pom
index a35a0f2..10e7e61 100644
--- a/standalone/org.eclipse.epsilon.standalone/assembly/workflow.pom
+++ b/standalone/org.eclipse.epsilon.standalone/assembly/workflow.pom
@@ -2,7 +2,8 @@
<modelVersion>4.0.0</modelVersion>
<groupId>org.eclipse.epsilon</groupId>
<artifactId>epsilon-workflow</artifactId>
- <version>1.5.0-SNAPSHOT</version> <dependencies>
+ <version>1.5.0-SNAPSHOT</version>
+ <dependencies>
<dependency>
<groupId>org.eclipse.epsilon</groupId>
<artifactId>epsilon-core</artifactId>
diff --git a/standalone/org.eclipse.epsilon.standalone/build-javadoc-jar.sh b/standalone/org.eclipse.epsilon.standalone/build-javadoc-jar.sh
index 187ae1d..38ee713 100755
--- a/standalone/org.eclipse.epsilon.standalone/build-javadoc-jar.sh
+++ b/standalone/org.eclipse.epsilon.standalone/build-javadoc-jar.sh
@@ -16,6 +16,6 @@
pushd tmpjavadoc
TARGET="../${srcjar%-sources.jar}-javadoc.jar"
rm -f "$TARGET"
- find -mindepth 1 -type d -print0 | xargs -0 zip -r "$TARGET"
+ find . -mindepth 1 -type d -print0 | xargs -0 zip -r "$TARGET"
popd
done
diff --git a/standalone/org.eclipse.epsilon.standalone/jarmodel.xml b/standalone/org.eclipse.epsilon.standalone/jarmodel.xml
index b82e4dd..732cd3b 100644
--- a/standalone/org.eclipse.epsilon.standalone/jarmodel.xml
+++ b/standalone/org.eclipse.epsilon.standalone/jarmodel.xml
@@ -39,19 +39,61 @@
<plugin name="org.eclipse.emf.common"
groupId="org.eclipse.emf"
artifactId="org.eclipse.emf.common"
- version="2.11.0-v20150805-0538" />
+ version="2.12.0" />
<plugin name="org.eclipse.emf.ecore"
groupId="org.eclipse.emf"
artifactId="org.eclipse.emf.ecore"
- version="2.11.1-v20150805-0538" />
+ version="2.12.0" />
<plugin name="org.eclipse.emf.ecore.xmi"
groupId="org.eclipse.emf"
artifactId="org.eclipse.emf.ecore.xmi"
- version="2.11.1-v20150805-0538" />
+ version="2.12.0" />
+ <plugin name="org.eclipse.emf.ecore.xcore"
+ groupId="org.eclipse.emf"
+ artifactId="org.eclipse.emf.ecore.xcore"
+ version="1.4.0" />
+ <plugin name="org.eclipse.xtext"
+ groupId="org.eclipse.xtext"
+ artifactId="org.eclipse.xtext"
+ version="2.10.0" />
+ <plugin name="org.eclipse.xtext.xbase"
+ groupId="org.eclipse.xtext"
+ artifactId="org.eclipse.xtext.xbase"
+ version="2.10.0" />
+ <plugin name="org.eclipse.xtext.ecore"
+ groupId="org.eclipse.xtext"
+ artifactId="org.eclipse.xtext.ecore"
+ version="2.10.0" />
+ <plugin name="org.eclipse.emf.mwe2.runtime"
+ groupId="org.eclipse.emf"
+ artifactId="org.eclipse.emf.mwe2.runtime"
+ version="2.9.1.201705291010" />
+ <plugin name="org.eclipse.emf.codegen"
+ groupId="org.eclipse.emf"
+ artifactId="org.eclipse.emf.codegen"
+ version="2.11.0-v20150806-0404" />
+ <plugin name="org.eclipse.emf.codegen.ecore"
+ groupId="org.eclipse.emf"
+ artifactId="org.eclipse.emf.codegen.ecore"
+ version="2.11.0" />
+ <plugin name="org.eclipse.emf.codegen.ecore.xtext"
+ groupId="org.eclipse.emf"
+ artifactId="org.eclipse.emf.codegen.ecore.xtext"
+ version="1.2.0" />
+ <plugin name="org.eclipse.core.runtime"
+ groupId="org.eclipse.platform"
+ artifactId="org.eclipse.core.runtime"
+ version="3.12.0" />
<plugin name="org.eclipse.xsd"
groupId="org.eclipse.xsd"
artifactId="org.eclipse.xsd"
- version="2.11.0-v20150806-0404" />
+ version="2.12.0" />
+ <!-- Additional repositories needed -->
+ <repository name= "epsilon-bintray"
+ snapshots= "false"
+ releases= "true"
+ id= "bintray-epsilonlabs-epsilon-standalone"
+ url= "https://dl.bintray.com/epsilonlabs/epsilon-standalone"/>
</jar>
<jar name="uml" requires="emf">
@@ -125,19 +167,6 @@
<project name="org.eclipse.epsilon.emc.spreadsheets"/>
<project name="org.eclipse.epsilon.emc.spreadsheets.excel"/>
<project name="org.eclipse.epsilon.emc.spreadsheets.google"/>
-
- <plugin name="org.apache.commons.collections_3.2.1"
- groupId="commons-collections"
- artifactId="commons-collections"
- version="3.2.1" />
- <plugin name="org.slf4j.api_1.7.2"
- groupId="org.slf4j"
- artifactId="slf4j-api"
- version="1.7.2" />
- <plugin name="org.apache.commons.lang3_3.1"
- groupId="org.apache.commons"
- artifactId="commons-lang3"
- version="3.1" />
<plugin name="org.apache.poi_3.10.1"
groupId="org.apache.poi"
artifactId="poi"
diff --git a/standalone/org.eclipse.epsilon.standalone/jarmodel2mvn.launch b/standalone/org.eclipse.epsilon.standalone/jarmodel2mvn.launch
index ec1b5a1..a59d05d 100644
--- a/standalone/org.eclipse.epsilon.standalone/jarmodel2mvn.launch
+++ b/standalone/org.eclipse.epsilon.standalone/jarmodel2mvn.launch
@@ -2,11 +2,13 @@
<launchConfiguration type="org.epsilon.egl.eclipse.dt.launching.EglLaunchConfigurationDelegate">
<booleanAttribute key="appendToFile" value="false"/>
<listAttribute key="defaultFormatters"/>
+<intAttribute key="egxGenerateTo" value="1"/>
<booleanAttribute key="fine_grained_profiling" value="false"/>
<intAttribute key="generateTo" value="1"/>
<listAttribute key="models">
<listEntry value="name=JarModel readOnLoad=true storeOnDisposal=false aliases= uri= cached=true file=/org.eclipse.epsilon.standalone/jarmodel.xml fileBased=true type=PlainXML"/>
</listAttribute>
+<stringAttribute key="outputDirPath" value=""/>
<stringAttribute key="outputFilePath" value=""/>
<listAttribute key="parameters"/>
<booleanAttribute key="produceTrace" value="false"/>
diff --git a/standalone/org.eclipse.epsilon.standalone/jarmodel2pom.egl b/standalone/org.eclipse.epsilon.standalone/jarmodel2pom.egl
index b8ec434..f68de00 100644
--- a/standalone/org.eclipse.epsilon.standalone/jarmodel2pom.egl
+++ b/standalone/org.eclipse.epsilon.standalone/jarmodel2pom.egl
@@ -2,7 +2,35 @@
<modelVersion>4.0.0</modelVersion>
<groupId>org.eclipse.epsilon</groupId>
<artifactId>[%=jar.getArtifactId()%]</artifactId>
- <version>[%=jar.getVersion()%]</version>[%
+ <version>[%=jar.getVersion()%]</version>
+[%
+if (jar.c_repository.size() >0) {
+%]
+ <repositories>
+[%
+ for (repo in jar.c_repository) { %]
+ <repository>
+ <snapshots><enabled>[%=repo.a_snapshots%]</enabled></snapshots>
+ <releases><enabled>[%=repo.a_releases%]</enabled></releases>
+ <id>[%=repo.a_id%]</id>
+ <name>[%=repo.a_name%]</name>
+ <url>[%=repo.a_url%]</url>
+ </repository>
+[% }%]
+ </repositories>
+ <pluginRepositories>[%
+ for (repo in jar.c_repository) { %]
+ <pluginRepository>
+ <snapshots><enabled>[%=repo.a_snapshots%]</enabled></snapshots>
+ <releases><enabled>[%=repo.a_releases%]</enabled></releases>
+ <id>[%=repo.a_id%]</id>
+ <name>[%=repo.a_name%]-plugins</name>
+ <url>[%=repo.a_url%]</url>
+ </pluginRepository>
+ </pluginRepositories>
+[%
+ }
+}
if (jar.c_plugin.size() > 0 or jar.a_requires.isDefined()) {
%]
<dependencies>
diff --git a/standalone/org.eclipse.epsilon.standalone/pom.xml b/standalone/org.eclipse.epsilon.standalone/pom.xml
index bac2f50..c27cf47 100644
--- a/standalone/org.eclipse.epsilon.standalone/pom.xml
+++ b/standalone/org.eclipse.epsilon.standalone/pom.xml
@@ -33,7 +33,30 @@
<goal>unpack-dependencies</goal>
</goals>
<configuration>
- <includeArtifactIds>org.eclipse.emf.common,org.eclipse.emf.ecore,org.eclipse.emf.ecore.xmi,org.eclipse.xsd,org.eclipse.uml2.uml,org.eclipse.uml2.common,org.eclipse.emf.mapping.ecore2xml,org.eclipse.uml2.types,org.apache.commons.collections_3.2.1,org.apache.commons.lang3_3.1,org.apache.poi_3.10.1,org.apache.poi.ooxml_3.10.1,org.apache.poi.ooxml.schemas_3.10.1,org.apache.xmlbeans_2.6.0</includeArtifactIds>
+ <includeArtifactIds><!-- Match MANIFEST.MF -->
+ org.apache.ant,
+ org.eclipse.emf.common,
+ org.eclipse.emf.ecore,
+ org.eclipse.emf.ecore.xmi,
+ org.eclipse.emf.ecore.xcore,
+ org.eclipse.xtext,
+ org.eclipse.xtext.xbase,
+ org.eclipse.emf.codegen,
+ org.eclipse.emf.codegen.ecore,
+ org.eclipse.emf.codegen.ecore.xtext,
+ org.eclipse.emf.mwe2.runtime,
+ org.eclipse.core.runtime,
+ org.eclipse.xsd,
+ org.eclipse.uml2.uml,
+ org.eclipse.uml2.common,
+ org.eclipse.emf.mapping.ecore2xml,
+ org.eclipse.uml2.types,
+ org.apache.poi.ooxml.schemas_3.10.1,
+ org.apache.poi.ooxml_3.10.1,
+ org.apache.poi_3.10.1,
+ org.apache.commons.collections,
+ org.apache.commons.lang3
+ </includeArtifactIds>
<outputDirectory>target/dependency-unpacked</outputDirectory>
</configuration>
</execution>
diff --git a/tests/org.eclipse.epsilon.emc.emf.test/META-INF/MANIFEST.MF b/tests/org.eclipse.epsilon.emc.emf.test/META-INF/MANIFEST.MF
index 1fc746b..a30bf26 100644
--- a/tests/org.eclipse.epsilon.emc.emf.test/META-INF/MANIFEST.MF
+++ b/tests/org.eclipse.epsilon.emc.emf.test/META-INF/MANIFEST.MF
@@ -6,5 +6,8 @@
Bundle-Vendor: Eclipse.org
Bundle-RequiredExecutionEnvironment: JavaSE-1.8
Require-Bundle: org.eclipse.epsilon.test.dependencies,
- org.eclipse.epsilon.common.dt.test
+ org.eclipse.emf.ecore.xcore,
+ org.eclipse.emf.codegen.ecore,
+ org.eclipse.epsilon.common.dt.test,
+ com.google.inject
Export-Package: org.eclipse.epsilon.emc.emf.test
diff --git a/tests/org.eclipse.epsilon.emc.emf.test/src/org/eclipse/epsilon/emc/emf/EmfModelLoadTests.java b/tests/org.eclipse.epsilon.emc.emf.test/src/org/eclipse/epsilon/emc/emf/EmfModelLoadTests.java
index d2c605e..10f2ecb 100644
--- a/tests/org.eclipse.epsilon.emc.emf.test/src/org/eclipse/epsilon/emc/emf/EmfModelLoadTests.java
+++ b/tests/org.eclipse.epsilon.emc.emf.test/src/org/eclipse/epsilon/emc/emf/EmfModelLoadTests.java
@@ -12,12 +12,22 @@
import static org.junit.Assert.assertEquals;
+import com.google.inject.Injector;
import java.io.File;
+import java.net.URL;
+import org.eclipse.emf.codegen.ecore.genmodel.GenModel;
import org.eclipse.emf.common.util.TreeIterator;
+import org.eclipse.emf.common.util.URI;
+import org.eclipse.emf.ecore.EPackage;
+import org.eclipse.emf.ecore.EcorePackage;
+import org.eclipse.emf.ecore.impl.EPackageImpl;
import org.eclipse.emf.ecore.util.EcoreUtil;
+import org.eclipse.emf.ecore.xcore.XcoreStandaloneSetup;
import org.eclipse.epsilon.common.util.FileUtil;
import org.eclipse.epsilon.eol.exceptions.models.EolModelLoadingException;
+import org.eclipse.xtext.resource.XtextResource;
+import org.eclipse.xtext.resource.XtextResourceSet;
import org.junit.Test;
public class EmfModelLoadTests {
@@ -98,4 +108,11 @@
File fEcore = FileUtil.getFile("Tree.ecore", EmfModelLoadTests.class);
return EmfModelFactory.getInstance().createEmfModel("Tree", fXMI, fEcore);
}
+
+ protected EmfModel createTrainModel() {
+ File fXMI = FileUtil.getFile("railway-batch-1.xmi", EmfModelLoadTests.class);
+ File fXcore = FileUtil.getFile("railway.xcore", EmfModelLoadTests.class);
+ return EmfModelFactory.getInstance().createEmfModel("train", fXMI, fXcore);
+ }
+
}