Skip to content
Snippets Groups Projects
Commit 7c5076f0 authored by Alexander Diewald's avatar Alexander Diewald
Browse files

DI: Add methods to retrieve registered Exp. Modules from the Service.

parent aaaaf0ab
No related branches found
No related tags found
1 merge request!2Dependency injection
......@@ -6,7 +6,7 @@ IExplorationContraintTransformationModule.java 1d3560401275f719e2b9901d1639a6be6
IExplorationEncoding.java f58adbcf840af521333c2777f50041a60548bff3 RED
IExplorationEvaluatationService.java c79cd47a3eac58d56071e51bb5465efefa226fc5 RED
IExplorationExtension.java c2a148e18c580d2432357e93da45e7bf7df8eb0c RED
IExplorationModuleService.java ea24c2ae87c43a63d9c020be5d098eb67fe07bc7 YELLOW
IExplorationModuleService.java 7bae784ea25282dfa94ce907d3f2a6900c1dff0f YELLOW
IExplorationRepairService.java 879d73fce129cd3c4c6fd2819a5c4ed0a625c55b RED
IExplorationService.java 5aaf2b75e88e4ee1b1a206c00e77dd173a5cdeb5 RED
IExplorationTargetEvaluator.java 99c27a053a123462b8a4faadc9c3530fe6bc0c67 RED
......
......@@ -15,6 +15,8 @@
+--------------------------------------------------------------------------*/
package org.fortiss.af3.exploration.alg.service;
import java.util.Set;
import org.fortiss.af3.exploration.alg.dse.backend.opt4j.extensions.compositegene.phenotype.Phenotype;
import org.fortiss.af3.exploration.alg.dse.module.CreatorModule;
import org.fortiss.af3.exploration.alg.dse.module.DecoderModule;
......@@ -92,4 +94,16 @@ public interface IExplorationModuleService extends IExplorationService {
*/
void registerEvaluator(Class<EvaluatorModule<Phenotype>> evaluator)
throws ExplorationServiceException;
/** Returns the set of registered {@link Creator}s. */
Set<CreatorModule<?>> getCreators();
/** Returns the set of registered {@link Operator}s. */
Set<OperatorModule<?>> getOperators();
/** Returns the set of registered {@link Decoder}s. */
Set<DecoderModule<?>> getDecoders();
/** Returns the set of registered {@link Evaluator}s. */
Set<EvaluatorModule<?>> getEvaluators();
}
ExplorationConstraintTransformationService.java 5e7117398827ae129b3c9a8a16457d816ba665a7 RED
ExplorationEvaluationService.java c701675e13e3b2c4725822aa80f791aa36e11b24 RED
ExplorationModuleService.java 6a3c7f5b8bb98dd18fb1fe656c736dd4e291c698 YELLOW
ExplorationModuleService.java 0e8942167dc24432d28b6f479472cfdce78c581d YELLOW
ExplorationRepairService.java 940ceda7c8c48f282132355249af1fe0a005c0f5 RED
ExplorationTransformationService.java 36e2368dd6098e1f3aa210a6defd4f269628e28a RED
......@@ -15,6 +15,8 @@
+--------------------------------------------------------------------------*/
package org.fortiss.af3.exploration.alg.service.internal;
import static org.fortiss.tooling.common.util.LambdaUtils.filter;
import java.util.Collection;
import java.util.HashSet;
import java.util.Set;
......@@ -111,6 +113,38 @@ public class ExplorationModuleService implements IExplorationModuleService {
expModules.add(evaluator);
}
/** {@inheritDoc} */
@SuppressWarnings("unchecked")
@Override
public Set<CreatorModule<?>> getCreators() {
return (Set<CreatorModule<?>>)(Set<?>)filter(expModules,
m -> CreatorModule.class.isAssignableFrom(m));
}
/** {@inheritDoc} */
@SuppressWarnings("unchecked")
@Override
public Set<OperatorModule<?>> getOperators() {
return (Set<OperatorModule<?>>)(Set<?>)filter(expModules,
m -> OperatorModule.class.isAssignableFrom(m));
}
/** {@inheritDoc} */
@SuppressWarnings("unchecked")
@Override
public Set<DecoderModule<?>> getDecoders() {
return (Set<DecoderModule<?>>)(Set<?>)filter(expModules,
m -> DecoderModule.class.isAssignableFrom(m));
}
/** {@inheritDoc} */
@SuppressWarnings("unchecked")
@Override
public Set<EvaluatorModule<?>> getEvaluators() {
return (Set<EvaluatorModule<?>>)(Set<?>)filter(expModules,
m -> EvaluatorModule.class.isAssignableFrom(m));
}
/** {@inheritDoc} */
@Override
public void initializeService() {
......
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