diff --git a/.mvn/extensions.xml b/.mvn/extensions.xml
index fffb04f..a957797 100644
--- a/.mvn/extensions.xml
+++ b/.mvn/extensions.xml
@@ -3,7 +3,7 @@
org.eclipse.tycho.extras
tycho-pomless
- 1.4.0
+ 2.4.0
diff --git a/epsilon-runtime-execution/pom.xml b/epsilon-runtime-execution/pom.xml
index f22b682..aa3df1e 100644
--- a/epsilon-runtime-execution/pom.xml
+++ b/epsilon-runtime-execution/pom.xml
@@ -5,8 +5,7 @@
hu.blackbelt.epsilon
epsilon-runtime-parent
- 1.3.0-SNAPSHOT
- ../
+ 1.4.0-SNAPSHOT
epsilon-runtime-execution
diff --git a/epsilon-runtime-execution/src/main/java/hu/blackbelt/epsilon/runtime/execution/EmfUtils.java b/epsilon-runtime-execution/src/main/java/hu/blackbelt/epsilon/runtime/execution/EmfUtils.java
index 2ad1e62..d6f8c4e 100644
--- a/epsilon-runtime-execution/src/main/java/hu/blackbelt/epsilon/runtime/execution/EmfUtils.java
+++ b/epsilon-runtime-execution/src/main/java/hu/blackbelt/epsilon/runtime/execution/EmfUtils.java
@@ -14,6 +14,7 @@
import org.eclipse.emf.ecore.xmi.impl.EcoreResourceFactoryImpl;
import org.eclipse.emf.ecore.xmi.impl.XMIResourceFactoryImpl;
import org.eclipse.epsilon.emc.emf.CachedResourceSet;
+import org.eclipse.epsilon.emc.emf.EmfModelResourceSet;
import org.eclipse.epsilon.eol.exceptions.models.EolModelLoadingException;
import org.eclipse.epsilon.eol.models.IModel;
import org.eclipse.uml2.uml.UMLPackage;
diff --git a/epsilon-runtime-execution/src/main/java/hu/blackbelt/epsilon/runtime/execution/contexts/EclExecutionContext.java b/epsilon-runtime-execution/src/main/java/hu/blackbelt/epsilon/runtime/execution/contexts/EclExecutionContext.java
index ac1a9ca..57be7db 100644
--- a/epsilon-runtime-execution/src/main/java/hu/blackbelt/epsilon/runtime/execution/contexts/EclExecutionContext.java
+++ b/epsilon-runtime-execution/src/main/java/hu/blackbelt/epsilon/runtime/execution/contexts/EclExecutionContext.java
@@ -5,6 +5,8 @@
import lombok.Getter;
import lombok.NonNull;
import org.eclipse.epsilon.ecl.EclModule;
+import org.eclipse.epsilon.ecl.concurrent.EclModuleParallel;
+import org.eclipse.epsilon.ecl.concurrent.EclModuleParallelAnnotation;
import org.eclipse.epsilon.ecl.trace.MatchTrace;
import org.eclipse.epsilon.eol.IEolModule;
@@ -22,16 +24,21 @@ public class EclExecutionContext extends EolExecutionContext {
@NonNull
private String useMatchTrace;
- @Builder.Default
- private EclModule eclModule = new EclModule();
+ private final EclModule eclModule;
@Builder(builderMethodName = "eclExecutionContextBuilder")
- public EclExecutionContext(URI source, List parameters, String useMatchTrace, String exportMatchTrace, EclModule eclModule) {
- super(source, parameters);
+ public EclExecutionContext(URI source, List parameters, String useMatchTrace, String exportMatchTrace, EclModule eclModule, Boolean parallel) {
+ super(source, parameters, false, parallel);
this.useMatchTrace = useMatchTrace;
this.exportMatchTrace = exportMatchTrace;
if (eclModule != null) {
this.eclModule = eclModule;
+ } else if (parallel != null && parallel) {
+ // TODO: Not supported yet, newer version have to be released
+ // this.eclModule = new EclModuleParallelAnnotation();
+ this.eclModule = new EclModule();
+ } else {
+ this.eclModule = new EclModule();
}
}
diff --git a/epsilon-runtime-execution/src/main/java/hu/blackbelt/epsilon/runtime/execution/contexts/EglExecutionContext.java b/epsilon-runtime-execution/src/main/java/hu/blackbelt/epsilon/runtime/execution/contexts/EglExecutionContext.java
index 70dd323..c1fe8b0 100644
--- a/epsilon-runtime-execution/src/main/java/hu/blackbelt/epsilon/runtime/execution/contexts/EglExecutionContext.java
+++ b/epsilon-runtime-execution/src/main/java/hu/blackbelt/epsilon/runtime/execution/contexts/EglExecutionContext.java
@@ -31,8 +31,8 @@ public class EglExecutionContext extends EolExecutionContext {
private ContentTypeRepository defaultContentTypeRepository;
@Builder(builderMethodName = "eglExecutionContextBuilder")
- public EglExecutionContext(URI source, List parameters, String outputRoot) {
- super(source, parameters);
+ public EglExecutionContext(URI source, List parameters, String outputRoot, Boolean parallel) {
+ super(source, parameters, false, parallel);
try {
defaultContentTypeRepository = new DefaultContentTypeRepository(
UriResolver.calculateURI(this.getClass(), DEFAULT_CONFIG_XML).toURL().openStream());
diff --git a/epsilon-runtime-execution/src/main/java/hu/blackbelt/epsilon/runtime/execution/contexts/EgxExecutionContext.java b/epsilon-runtime-execution/src/main/java/hu/blackbelt/epsilon/runtime/execution/contexts/EgxExecutionContext.java
index 803a462..4a40194 100644
--- a/epsilon-runtime-execution/src/main/java/hu/blackbelt/epsilon/runtime/execution/contexts/EgxExecutionContext.java
+++ b/epsilon-runtime-execution/src/main/java/hu/blackbelt/epsilon/runtime/execution/contexts/EgxExecutionContext.java
@@ -3,6 +3,7 @@
import hu.blackbelt.epsilon.runtime.execution.exceptions.ScriptExecutionException;
import lombok.Builder;
import org.eclipse.epsilon.egl.EgxModule;
+import org.eclipse.epsilon.egl.concurrent.EgxModuleParallelAnnotation;
import org.eclipse.epsilon.eol.IEolModule;
import java.net.URI;
@@ -12,14 +13,13 @@
public class EgxExecutionContext extends EglExecutionContext {
@Builder(builderMethodName = "egxExecutionContextBuilder")
- public EgxExecutionContext(URI source, List parameters, String outputRoot) {
- super(source, parameters, outputRoot);
+ public EgxExecutionContext(URI source, List parameters, String outputRoot, Boolean parallel) {
+ super(source, parameters, outputRoot, parallel);
}
@Override
public IEolModule getModule(Map