From e204e6431646161bb2d74e023b39b3a32006affb Mon Sep 17 00:00:00 2001 From: rusefi Date: Thu, 25 Jun 2020 23:18:35 -0400 Subject: [PATCH] refactoring: better dependency control --- java_console/autotest/src/com/rusefi/TestingUtils.java | 2 +- java_console/io/src/com/rusefi/io/LinkManager.java | 10 +++++----- .../io/src/com/rusefi/io/serial/PortHolder.java | 3 ++- 3 files changed, 8 insertions(+), 7 deletions(-) diff --git a/java_console/autotest/src/com/rusefi/TestingUtils.java b/java_console/autotest/src/com/rusefi/TestingUtils.java index c409585744..5853d1d108 100644 --- a/java_console/autotest/src/com/rusefi/TestingUtils.java +++ b/java_console/autotest/src/com/rusefi/TestingUtils.java @@ -142,7 +142,7 @@ public class TestingUtils { long waitStartTime = System.currentTimeMillis(); IoUtil.wait(engineChartLatch, timeoutMs); FileLog.MAIN.logLine("got next chart in " + (System.currentTimeMillis() - waitStartTime) + "ms for engine_type " + AutoTest.currentEngineType); - LinkManager.engineState.replaceStringValueAction(EngineReport.ENGINE_CHART, (EngineState.ValueCallback) EngineState.ValueCallback.VOID); + commandQueue.getLinkManager().getEngineState().replaceStringValueAction(EngineReport.ENGINE_CHART, (EngineState.ValueCallback) EngineState.ValueCallback.VOID); if (result.get() == null) throw new IllegalStateException("Chart timeout: " + timeoutMs); return result.get(); diff --git a/java_console/io/src/com/rusefi/io/LinkManager.java b/java_console/io/src/com/rusefi/io/LinkManager.java index db6f480fe7..94ad2d4b8b 100644 --- a/java_console/io/src/com/rusefi/io/LinkManager.java +++ b/java_console/io/src/com/rusefi/io/LinkManager.java @@ -140,11 +140,7 @@ public class LinkManager { // throw new IllegalStateException("Communication on wrong thread"); } - public EngineState getEngineState() { - return engineState; - } - - public static EngineState engineState = new EngineState(new EngineState.EngineStateListenerImpl() { + private EngineState engineState = new EngineState(new EngineState.EngineStateListenerImpl() { @Override public void beforeLine(String fullLine) { FileLog.MAIN.logLine(fullLine); @@ -152,6 +148,10 @@ public class LinkManager { } }); + public EngineState getEngineState() { + return engineState; + } + /** * This flag controls if mock controls are needed */ diff --git a/java_console/io/src/com/rusefi/io/serial/PortHolder.java b/java_console/io/src/com/rusefi/io/serial/PortHolder.java index a5ac7fbf53..135293d371 100644 --- a/java_console/io/src/com/rusefi/io/serial/PortHolder.java +++ b/java_console/io/src/com/rusefi/io/serial/PortHolder.java @@ -19,7 +19,7 @@ import java.awt.*; * Andrey Belomutskiy, (c) 2013-2020 */ public class PortHolder { - private static final DataListener dataListener = freshData -> LinkManager.engineState.processNewData(new String(freshData), LinkManager.ENCODER); + private final DataListener dataListener; private final LinkManager linkManager; public ConnectionStateListener listener; @@ -30,6 +30,7 @@ public class PortHolder { protected PortHolder(LinkManager linkManager) { this.linkManager = linkManager; + dataListener = freshData -> linkManager.getEngineState().processNewData(new String(freshData), LinkManager.ENCODER); } public String port;