diff --git a/src/main/java/teetime/framework/AbstractStage.java b/src/main/java/teetime/framework/AbstractStage.java index 3506075674258c844187b6ac55800e8b2c3de6f1..1b3e0c9b326d9a1ca6c2208e4ad16bd412c5b495 100644 --- a/src/main/java/teetime/framework/AbstractStage.java +++ b/src/main/java/teetime/framework/AbstractStage.java @@ -29,7 +29,6 @@ import org.slf4j.LoggerFactory; import teetime.framework.exceptionHandling.AbstractExceptionListener; import teetime.framework.exceptionHandling.AbstractExceptionListener.FurtherExecution; import teetime.framework.exceptionHandling.TerminateException; -import teetime.framework.pipe.IPipe; import teetime.framework.signal.ISignal; import teetime.framework.signal.StartingSignal; import teetime.framework.signal.TerminatingSignal; @@ -279,7 +278,7 @@ public abstract class AbstractStage { } public void onValidating(final List<InvalidPortConnection> invalidPortConnections) { - this.validateOutputPorts(invalidPortConnections); + this.checkTypeCompliance(); changeState(StageState.VALIDATED); } @@ -292,7 +291,6 @@ public abstract class AbstractStage { */ @SuppressWarnings("PMD.SignatureDeclareThrowsException") public void onStarting() throws Exception { - checkTypeCompliance(); if (logger.isDebugEnabled()) { logger.debug("Stage {} within thread {}", getId(), getOwningThread().getId()); } @@ -446,26 +444,6 @@ public abstract class AbstractStage { return outputPort; } - /** - * This should check, if the OutputPorts are connected correctly. This is needed to avoid NullPointerExceptions and other errors. - * - * @param invalidPortConnections - * <i>(Passed as parameter for performance reasons)</i> - */ - @SuppressWarnings("PMD.DataflowAnomalyAnalysis") - public void validateOutputPorts(final List<InvalidPortConnection> invalidPortConnections) { - for (OutputPort<?> outputPort : outputPorts.getOpenedPorts()) { - final IPipe<?> pipe = outputPort.getPipe(); - - final Class<?> sourcePortType = outputPort.getType(); - final Class<?> targetPortType = pipe.getTargetPort().getType(); - if (null == sourcePortType || !sourcePortType.equals(targetPortType)) { - final InvalidPortConnection invalidPortConnection = new InvalidPortConnection(outputPort, pipe.getTargetPort()); - invalidPortConnections.add(invalidPortConnection); - } - } - } - protected void terminate() { changeState(StageState.TERMINATING); } diff --git a/src/test/java/teetime/framework/AbstractStageTest.java b/src/test/java/teetime/framework/AbstractStageTest.java index 8ab3a41dfcfa77ff235f56914dbcd3c32c16f7df..baaed72d811d7c31ed9ce5a14f09990bea999119 100644 --- a/src/test/java/teetime/framework/AbstractStageTest.java +++ b/src/test/java/teetime/framework/AbstractStageTest.java @@ -95,7 +95,7 @@ public class AbstractStageTest { @Test public void testCheckTypeCompliance() throws Exception { - new Execution<Configuration>(new TestConnectionsConfig(false)); + new Execution<Configuration>(new TestConnectionsConfig(false), true); } private class TestConnectionsConfig extends Configuration {