Quellcode durchsuchen

SExec: Moved configuration flag for trace steps to module

Andreas Mülder vor 13 Jahren
Ursprung
Commit
68b5dcf8d5

+ 6 - 3
plugins/org.yakindu.sct.model.sexec.interpreter/src/org/yakindu/sct/model/sexec/interpreter/InterpreterModule.java

@@ -13,6 +13,7 @@ package org.yakindu.sct.model.sexec.interpreter;
 import org.yakindu.sct.model.sexec.interpreter.impl.ExecutionFlowInterpreter;
 import org.yakindu.sct.model.sexec.interpreter.impl.TimerTaskTimingService;
 import org.yakindu.sct.model.sexec.interpreter.stext.StextStatementInterpreter;
+import org.yakindu.sct.model.sexec.transformation.SequencerModule;
 import org.yakindu.sct.simulation.core.runtime.IExecutionContext;
 import org.yakindu.sct.simulation.core.runtime.impl.ExecutionContextImpl;
 
@@ -30,14 +31,16 @@ public class InterpreterModule implements Module {
 	public static final String INTERPRETER_NAME = "InterpreterName";
 
 	public void configure(Binder binder) {
-
+		binder.bind(Boolean.class)
+				.annotatedWith(Names.named(SequencerModule.ADD_TRACES))
+				.toInstance(Boolean.TRUE);
 		binder.bind(String.class).annotatedWith(Names.named(INTERPRETER_NAME))
 				.toInstance("SExecution Interpreter");
-
 		binder.bind(IStatementInterpreter.class).to(
 				StextStatementInterpreter.class);
 		binder.bind(IExecutionContext.class).to(ExecutionContextImpl.class);
 		binder.bind(ITimingService.class).to(TimerTaskTimingService.class);
-		binder.bind(IExecutionFlowInterpreter.class).to(ExecutionFlowInterpreter.class);
+		binder.bind(IExecutionFlowInterpreter.class).to(
+				ExecutionFlowInterpreter.class);
 	}
 }

+ 4 - 2
plugins/org.yakindu.sct.model.sexec.interpreter/src/org/yakindu/sct/model/sexec/interpreter/factory/SexecExecutionFacadeFactory.java

@@ -20,6 +20,7 @@ import org.yakindu.sct.simulation.core.runtime.IExecutionFacadeFactory;
 
 import com.google.inject.Guice;
 import com.google.inject.Inject;
+import com.google.inject.util.Modules;
 
 /**
  * Factory registered via extension point
@@ -36,8 +37,9 @@ public class SexecExecutionFacadeFactory implements IExecutionFacadeFactory {
 	private IExecutionFlowInterpreter interpreter;
 
 	public SexecExecutionFacadeFactory() {
-		Guice.createInjector(new SequencerModule(), new InterpreterModule())
-				.injectMembers(this);
+		Guice.createInjector(
+				Modules.override(new SequencerModule()).with(
+						new InterpreterModule())).injectMembers(this);
 	}
 
 	public IExecutionFlowInterpreter createExecutionFacade(Statechart statechart) {