Skip to content
Snippets Groups Projects
Commit 1dfb1f80 authored by Bernhard Johannes Berger's avatar Bernhard Johannes Berger
Browse files

Towards OL #6

parent a5dc28d2
No related branches found
No related tags found
No related merge requests found
Pipeline #243702 passed
Showing
with 54 additions and 32 deletions
......@@ -23,5 +23,12 @@
<groupId>org.junit.jupiter</groupId>
<artifactId>junit-jupiter</artifactId>
</dependency>
<dependency>
<groupId>org.eclipse.xtext</groupId>
<artifactId>org.eclipse.xtext.util</artifactId>
<version>2.29.0</version>
<scope>test</scope>
</dependency>
</dependencies>
</project>
......@@ -95,7 +95,7 @@ public class ArffPropertiesReader implements PropertiesReader {
if(instance.isMissing(index)) {
return decoratee.apply(instance, template, builder);
}
// add current specification to builder and let the chain complete it
builder.add(pSpec);
final Properties properties = decoratee.apply(instance, template, builder);
......
......@@ -2,7 +2,6 @@ module de.evoal.core.arff {
requires jakarta.inject.api;
requires jakarta.enterprise.cdi.api;
requires guice;
requires lombok;
requires org.slf4j;
......
......@@ -32,7 +32,7 @@ public class LanguageUtils {
}
private static void loadPackages() {
//DataDescriptionLanguageStandaloneSetup.doSetup();
DataDescriptionLanguageStandaloneSetup.doSetup();
}
private static <T extends EObject> T load(final URI modelURI, final Class<T> cl) {
......
......@@ -78,21 +78,28 @@
<dependency>
<groupId>org.eclipse.emf</groupId>
<artifactId>org.eclipse.emf.ecore</artifactId>
<version>2.25.0</version>
<version>2.29.0</version>
<scope>provided</scope>
</dependency>
<dependency>
<groupId>org.eclipse.emf</groupId>
<artifactId>org.eclipse.emf.common</artifactId>
<version>2.25.0</version>
<version>2.27.0</version>
<scope>provided</scope>
</dependency>
<dependency>
<groupId>org.eclipse.xtext</groupId>
<artifactId>org.eclipse.xtext</artifactId>
<version>2.25.0</version>
<version>2.29.0</version>
<scope>provided</scope>
</dependency>
<dependency>
<groupId>org.eclipse.xtext</groupId>
<artifactId>org.eclipse.xtext.util</artifactId>
<version>2.29.0</version>
<scope>provided</scope>
</dependency>
......
......@@ -143,7 +143,7 @@
<dependency>
<groupId>de.evoal.languages</groupId>
<artifactId>de.evoal.languages.model.eal</artifactId>
<artifactId>de.evoal.languages.model.ol</artifactId>
<version>${evoal.languages.version}</version>
<scope>compile</scope>
</dependency>
......@@ -186,7 +186,7 @@
<dependency>
<groupId>de.evoal.languages</groupId>
<artifactId>de.evoal.languages.model.eal.dsl</artifactId>
<artifactId>de.evoal.languages.model.ol.dsl</artifactId>
<version>${evoal.languages.version}</version>
<scope>compile</scope>
</dependency>
......@@ -231,6 +231,13 @@
<scope>compile</scope>
</dependency>
<dependency>
<groupId>org.eclipse.xtext</groupId>
<artifactId>org.eclipse.xtext.util</artifactId>
<version>2.29.0</version>
<scope>compile</scope>
</dependency>
<dependency>
<groupId>io.jenetics</groupId>
<artifactId>jenetics.ext</artifactId>
......
......@@ -97,7 +97,7 @@ public class RangeSwitch extends ELSwitch<Range> {
@Override
public Range caseCall(final Call object) {
final de.evoal.languages.model.eal.FunctionName calledFunction = (de.evoal.languages.model.eal.FunctionName)object.getFunction();
final de.evoal.languages.model.ol.FunctionName calledFunction = (de.evoal.languages.model.ol.FunctionName)object.getFunction();
if(!"range".equals(calledFunction.getDefinition().getName())) {
throw new IllegalStateException("Searching for range but found: " + calledFunction.getDefinition().getName());
}
......
......@@ -4,7 +4,7 @@ import de.evoal.core.api.board.Blackboard;
import de.evoal.core.api.board.BlackboardEntry;
import de.evoal.core.api.cdi.ConfigurationValue;
import de.evoal.core.api.utils.LanguageHelper;
import de.evoal.languages.model.eal.EAModel;
import de.evoal.languages.model.ol.OptimisationModel;
import de.evoal.languages.model.el.DoubleLiteral;
import de.evoal.languages.model.instance.Array;
import de.evoal.languages.model.instance.Instance;
......@@ -78,7 +78,7 @@ public class ConfigurationValueProducer {
.toArray();
}
private static <T> T lookup(final EAModel model, final String access) {
private static <T> T lookup(final OptimisationModel model, final String access) {
return LanguageHelper.lookup(model.getInstance(), access);
}
}
......@@ -4,7 +4,7 @@ import de.evoal.core.api.ea.constraints.model.DataConstraints;
import de.evoal.languages.model.ddl.DataDescription;
import de.evoal.languages.model.ddl.DataDescriptionModel;
import de.evoal.languages.model.ddl.TypedDataDescription;
import de.evoal.languages.model.eal.EAModel;
import de.evoal.languages.model.ol.OptimisationModel;
import de.evoal.languages.model.el.Expression;
import de.evoal.languages.model.instance.DataReference;
import org.eclipse.emf.common.util.TreeIterator;
......@@ -24,7 +24,7 @@ import java.util.stream.StreamSupport;
@ApplicationScoped
public class DataConstraintProducer {
@Produces @Dependent
public DataConstraints produceDataInformation(final EAModel model) {
public DataConstraints produceDataInformation(final OptimisationModel model) {
final TreeIterator<EObject> iterator = model.eAllContents();
Iterable<EObject> iterable = () -> iterator;
......
......@@ -10,9 +10,9 @@ import javax.enterprise.inject.Produces;
import de.evoal.languages.model.ddl.dsl.DataDescriptionLanguageStandaloneSetup;
import de.evoal.languages.model.dl.dsl.DefinitionLanguageStandaloneSetup;
import de.evoal.languages.model.eal.EAModel;
import de.evoal.languages.model.eal.dsl.EvolutionaryAlgorithmLanguageStandaloneSetup;
import de.evoal.languages.model.eal.impl.EALPackageImpl;
import de.evoal.languages.model.ol.OptimisationModel;
import de.evoal.languages.model.ol.dsl.OptimisationLanguageStandaloneSetup;
import de.evoal.languages.model.ol.impl.OLPackageImpl;
import lombok.extern.slf4j.Slf4j;
import org.eclipse.emf.common.util.URI;
import org.eclipse.emf.ecore.resource.Resource;
......@@ -28,7 +28,7 @@ import java.io.File;
public class EvolutionaryAlgorithmModelLoader {
@Inject
private Blackboard board;
private EAModel model;
private OptimisationModel model;
public void load(final @Observes BlackboardEntry entry) {
if(!entry.isSame(BlackboardEntry.EA_CONFIGURATION_FILE)) {
......@@ -46,7 +46,7 @@ public class EvolutionaryAlgorithmModelLoader {
initializeEMF();
final Injector ealInjector = new EvolutionaryAlgorithmLanguageStandaloneSetup().createInjectorAndDoEMFRegistration();
final Injector ealInjector = new OptimisationLanguageStandaloneSetup().createInjectorAndDoEMFRegistration();
// do not remove the following line even if the injector is not used. Otherwise, parsing eal files breaks.
final Injector idlInjector = new DefinitionLanguageStandaloneSetup().createInjectorAndDoEMFRegistration();
......@@ -80,7 +80,7 @@ public class EvolutionaryAlgorithmModelLoader {
throw new IllegalArgumentException("EAL file contains errors. Please fix the file.");
}
model = (EAModel) resource.getContents().get(0);
model = (OptimisationModel) resource.getContents().get(0);
board.bind(BlackboardEntry.EA_CONFIGURATION, model);
} catch (final Exception e) {
log.error("Unable to evolutionary algorithm configuration file '{}'.", configurationFile, e);
......@@ -91,15 +91,15 @@ public class EvolutionaryAlgorithmModelLoader {
* Initialize the model packages and perform the parser setup.
*/
private void initializeEMF() {
EALPackageImpl.init();
OLPackageImpl.init();
EvolutionaryAlgorithmLanguageStandaloneSetup.doSetup();
OptimisationLanguageStandaloneSetup.doSetup();
DataDescriptionLanguageStandaloneSetup.doSetup();
}
@Produces
@Dependent
public EAModel getConfiguration() {
public OptimisationModel getConfiguration() {
return model;
}
}
......@@ -21,11 +21,11 @@ import de.evoal.core.main.ea.codec.DynamicCodec;
import de.evoal.core.main.ea.fitness.JeneticsFitnessFunction;
import de.evoal.core.main.ea.initial.InitialPopulationFactory;
import de.evoal.core.main.jenetics.ConstraintList;
import de.evoal.languages.model.eal.EAModel;
import de.evoal.languages.model.instance.Array;
import de.evoal.languages.model.instance.Attribute;
import de.evoal.languages.model.instance.Name;
import de.evoal.languages.model.instance.Value;
import de.evoal.languages.model.ol.OptimisationModel;
import io.jenetics.*;
import io.jenetics.engine.*;
import io.jenetics.stat.MinMax;
......@@ -137,7 +137,7 @@ public class HeuristicSearch {
}
private void setup() {
final EAModel configuration = board.get(BlackboardEntry.EA_CONFIGURATION);
final OptimisationModel configuration = board.get(BlackboardEntry.EA_CONFIGURATION);
final de.evoal.languages.model.instance.Instance alterers = LanguageHelper.lookup(configuration.getInstance(), "algorithm.alterers");
......
......@@ -21,7 +21,6 @@ module de.evoal.core {
requires smile.math;
requires decimal4j;
requires guice;
requires com.fasterxml.jackson.databind;
......@@ -33,11 +32,12 @@ module de.evoal.core {
requires de.evoal.languages.model.ddl.dsl;
requires de.evoal.languages.model.dl;
requires de.evoal.languages.model.dl.dsl;
requires de.evoal.languages.model.eal;
requires de.evoal.languages.model.eal.dsl;
requires de.evoal.languages.model.ol;
requires de.evoal.languages.model.ol.dsl;
requires de.evoal.languages.model.el;
requires de.evoal.languages.model.el.dsl;
requires de.evoal.languages.model.instance;
requires com.google.guice;
exports de.evoal.core.api.board;
exports de.evoal.core.api.cdi;
......
......@@ -24,7 +24,6 @@ module de.evoal.generator.main {
requires de.evoal.languages.model.generator.dsl;
requires de.evoal.core;
requires guice;
requires commons.math3;
opens de.evoal.generator.main;
......
......@@ -113,21 +113,21 @@
<dependency>
<groupId>org.eclipse.emf</groupId>
<artifactId>org.eclipse.emf.ecore</artifactId>
<version>2.25.0</version>
<version>2.29.0</version>
<scope>provided</scope>
</dependency>
<dependency>
<groupId>org.eclipse.emf</groupId>
<artifactId>org.eclipse.emf.common</artifactId>
<version>2.25.0</version>
<version>2.27.0</version>
<scope>provided</scope>
</dependency>
<dependency>
<groupId>org.eclipse.xtext</groupId>
<artifactId>org.eclipse.xtext</artifactId>
<version>2.25.0</version>
<version>2.29.0</version>
<scope>provided</scope>
</dependency>
......@@ -290,6 +290,10 @@
<version>9.4</version>
</dependency>
</dependencies>
<configuration>
</configuration>
</plugin>
<plugin>
......
......@@ -10,7 +10,6 @@ module de.evoal.surrogate.api {
requires org.eclipse.emf.ecore;
requires org.eclipse.emf.common;
requires guice;
requires org.eclipse.xtext;
requires com.fasterxml.jackson.databind;
requires smile.math;
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment