From b4359bea01e7cda0df28e73c5953280683259d81 Mon Sep 17 00:00:00 2001
From: "Bernhard J. Berger" <bernhard.berger@uni-bremen.de>
Date: Thu, 19 Jan 2023 09:06:00 +0100
Subject: [PATCH] Fixed creation.

---
 .../de/evoal/surrogate/main/ea/TrainingProducer.java | 12 ++++++++++++
 .../surrogate/main/ea/TrainingRepairStrategy.java    |  3 +--
 2 files changed, 13 insertions(+), 2 deletions(-)

diff --git a/src/core/de.evoal.surrogate.api/src/main/java/de/evoal/surrogate/main/ea/TrainingProducer.java b/src/core/de.evoal.surrogate.api/src/main/java/de/evoal/surrogate/main/ea/TrainingProducer.java
index 1e89c044..9bdd7789 100644
--- a/src/core/de.evoal.surrogate.api/src/main/java/de/evoal/surrogate/main/ea/TrainingProducer.java
+++ b/src/core/de.evoal.surrogate.api/src/main/java/de/evoal/surrogate/main/ea/TrainingProducer.java
@@ -5,6 +5,7 @@ import de.evoal.core.api.cdi.BeanFactory;
 import de.evoal.core.api.cdi.ConfigurationValue;
 import de.evoal.core.api.ea.initial.InitialPopulation;
 import de.evoal.languages.model.instance.Instance;
+import de.evoal.core.api.ea.constraints.strategies.RepairStrategy;
 
 import javax.enterprise.context.ApplicationScoped;
 import javax.enterprise.context.Dependent;
@@ -28,4 +29,15 @@ public class TrainingProducer {
 
         return population;
     }
+
+    @Produces
+    @Dependent
+    @Named("repair-with-training")
+    public RepairStrategy create() {
+
+        final RepairStrategy strategy = new TrainingRepairStrategy();
+        BeanFactory.injectFields(strategy);
+
+        return strategy;
+    }
 }
diff --git a/src/core/de.evoal.surrogate.api/src/main/java/de/evoal/surrogate/main/ea/TrainingRepairStrategy.java b/src/core/de.evoal.surrogate.api/src/main/java/de/evoal/surrogate/main/ea/TrainingRepairStrategy.java
index 33a89c13..254e4c4b 100644
--- a/src/core/de.evoal.surrogate.api/src/main/java/de/evoal/surrogate/main/ea/TrainingRepairStrategy.java
+++ b/src/core/de.evoal.surrogate.api/src/main/java/de/evoal/surrogate/main/ea/TrainingRepairStrategy.java
@@ -24,9 +24,8 @@ import java.io.File;
 import java.util.List;
 import java.util.stream.Collectors;
 
-@Dependent
-@Named("repair-with-training")
 @Slf4j
+@Dependent
 public class TrainingRepairStrategy<G extends Gene<?, G>, C extends Comparable<? super C>> implements RepairStrategy<G, C> {
     @Inject
     private Blackboard board;
-- 
GitLab