diff --git a/java_console/io/src/main/java/com/rusefi/io/LinkManager.java b/java_console/io/src/main/java/com/rusefi/io/LinkManager.java index 1464e78fa5..ff56cc1375 100644 --- a/java_console/io/src/main/java/com/rusefi/io/LinkManager.java +++ b/java_console/io/src/main/java/com/rusefi/io/LinkManager.java @@ -34,6 +34,7 @@ public class LinkManager { private final Logger logger; private LinkConnector connector; + private boolean isStarted; public LinkManager(Logger logger) { this.logger = logger; @@ -175,7 +176,15 @@ public class LinkManager { connector.connectAndReadConfiguration(stateListener); } + public LinkConnector getConnector() { + return connector; + } + public void start(String port) { + if (isStarted) { + throw new IllegalStateException("Already started"); + } + isStarted = true; Objects.requireNonNull(port, "port"); logger.info("LinkManager: Starting " + port); if (isLogViewerMode(port)) { diff --git a/java_console/ui/src/main/java/com/rusefi/ui/console/MainFrame.java b/java_console/ui/src/main/java/com/rusefi/ui/console/MainFrame.java index 1754949162..0429fca8d2 100644 --- a/java_console/ui/src/main/java/com/rusefi/ui/console/MainFrame.java +++ b/java_console/ui/src/main/java/com/rusefi/ui/console/MainFrame.java @@ -67,7 +67,7 @@ public class MainFrame { }); final LinkManager linkManager = consoleUI.uiContext.getLinkManager(); - linkManager.startAndConnect(consoleUI.port, new ConnectionStateListener() { + linkManager.getConnector().connectAndReadConfiguration(new ConnectionStateListener() { @Override public void onConnectionFailed() { }