From c0a2dc99de0dd48c075cac4b7186399919f1a706 Mon Sep 17 00:00:00 2001 From: rusefi Date: Fri, 15 May 2020 23:37:32 -0400 Subject: [PATCH] only better method names, no logic change --- .../autotest/src/com/rusefi/AutoTest.java | 2 +- .../binaryprotocol/BinaryProtocolHolder.java | 18 ++++++++++-------- .../src/com/rusefi/io/serial/PortHolder.java | 15 +-------------- .../rusefi/io/tcp/BinaryProtocolServer.java | 6 +++--- .../io/src/com/rusefi/io/tcp/TcpConnector.java | 13 +------------ .../tcp/test/BinaryProtocolServerSandbox.java | 2 +- .../ui/src/com/rusefi/BenchTestPane.java | 2 +- .../ui/src/com/rusefi/SensorLogger.java | 2 +- .../ui/src/com/rusefi/TableEditorPane.java | 2 +- .../ui/src/com/rusefi/UploadChanges.java | 4 ++-- .../BinaryProtocolCmdSandbox.java | 2 +- .../ui/src/com/rusefi/ui/FormulasPane.java | 2 +- .../ui/src/com/rusefi/ui/FuelTunePane.java | 6 +++--- .../com/rusefi/ui/config/BaseConfigField.java | 2 +- .../src/com/rusefi/ui/console/MainFrame.java | 2 +- 15 files changed, 29 insertions(+), 51 deletions(-) diff --git a/java_console/autotest/src/com/rusefi/AutoTest.java b/java_console/autotest/src/com/rusefi/AutoTest.java index 8c8d90837c..ed4443fda6 100644 --- a/java_console/autotest/src/com/rusefi/AutoTest.java +++ b/java_console/autotest/src/com/rusefi/AutoTest.java @@ -43,7 +43,7 @@ public class AutoTest { } }); - BinaryProtocol bp = BinaryProtocolHolder.getInstance().get(); + BinaryProtocol bp = BinaryProtocolHolder.getInstance().getCurrentStreamState(); // let's make sure 'burn' command works since sometimes it does not bp.burn(Logger.CONSOLE); diff --git a/java_console/io/src/com/rusefi/binaryprotocol/BinaryProtocolHolder.java b/java_console/io/src/com/rusefi/binaryprotocol/BinaryProtocolHolder.java index f8cdbbcaf8..bad8a45c3d 100644 --- a/java_console/io/src/com/rusefi/binaryprotocol/BinaryProtocolHolder.java +++ b/java_console/io/src/com/rusefi/binaryprotocol/BinaryProtocolHolder.java @@ -4,26 +4,28 @@ import com.opensr5.Logger; import com.rusefi.io.IoStream; /** + * At any given moment of time JVM manages one communication stream + * + * * (c) Andrey Belomutskiy * 6/21/2017. */ public enum BinaryProtocolHolder { INSTANCE; - // todo: fix this? less horrible but still weird! - private BinaryProtocol instance; + private BinaryProtocol currentStream; public static BinaryProtocolHolder getInstance() { return INSTANCE; } - public BinaryProtocol get() { - return instance; - } - - public static BinaryProtocol create(final Logger logger, IoStream stream) { + public BinaryProtocol create(final Logger logger, IoStream stream) { BinaryProtocol result = new BinaryProtocol(logger, stream); - getInstance().instance = result; + currentStream = result; return result; } + + public BinaryProtocol getCurrentStreamState() { + return currentStream; + } } 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 6e3819aec3..b2ec43e5e8 100644 --- a/java_console/io/src/com/rusefi/io/serial/PortHolder.java +++ b/java_console/io/src/com/rusefi/io/serial/PortHolder.java @@ -62,16 +62,11 @@ public class PortHolder { } IoStream stream = establishConnection.getStream(); - bp = BinaryProtocolHolder.create(FileLog.LOGGER, stream); + bp = BinaryProtocolHolder.getInstance().create(FileLog.LOGGER, stream); return bp.connectAndReadConfiguration(listener); } - private static boolean isWindows10() { - // todo: this code is fragile! What about Windows 11, 12 etc!? this is a problem for the later day :( - return System.getProperty(FileLog.OS_VERSION).startsWith("10"); - } - public void close() { synchronized (portLock) { if (serialPort != null) { @@ -124,14 +119,6 @@ public class PortHolder { public EstablishConnection invoke() { stream = SerialIoStreamJSerialComm.open(port, BAUD_RATE, FileLog.LOGGER); -/* -todo: remove dead code - if (stream == null) { - isConnected = false; - return this; - } - */ - isConnected = true; return this; } diff --git a/java_console/io/src/com/rusefi/io/tcp/BinaryProtocolServer.java b/java_console/io/src/com/rusefi/io/tcp/BinaryProtocolServer.java index 708bae9713..1ebd660dfc 100644 --- a/java_console/io/src/com/rusefi/io/tcp/BinaryProtocolServer.java +++ b/java_console/io/src/com/rusefi/io/tcp/BinaryProtocolServer.java @@ -111,7 +111,7 @@ public class BinaryProtocolServer implements BinaryProtocolCommands { short offset = dis.readShort(); short count = dis.readShort(); // no swap here? interesting! System.out.println("CRC check " + page + "/" + offset + "/" + count); - BinaryProtocol bp = BinaryProtocolHolder.getInstance().get(); + BinaryProtocol bp = BinaryProtocolHolder.getInstance().getCurrentStreamState(); int result = IoHelper.getCrc32(bp.getController().getContent(), offset, count); ByteArrayOutputStream response = new ByteArrayOutputStream(); response.write(TS_OK.charAt(0)); @@ -127,7 +127,7 @@ public class BinaryProtocolServer implements BinaryProtocolCommands { FileLog.MAIN.logLine("Error: negative read request " + offset + "/" + count); } else { System.out.println("read " + page + "/" + offset + "/" + count); - BinaryProtocol bp = BinaryProtocolHolder.getInstance().get(); + BinaryProtocol bp = BinaryProtocolHolder.getInstance().getCurrentStreamState(); byte[] response = new byte[1 + count]; response[0] = (byte) TS_OK.charAt(0); System.arraycopy(bp.getController().getContent(), offset, response, 1, count); @@ -141,7 +141,7 @@ public class BinaryProtocolServer implements BinaryProtocolCommands { byte[] response = new byte[1 + Fields.TS_OUTPUT_SIZE]; response[0] = (byte) TS_OK.charAt(0); - BinaryProtocol bp = BinaryProtocolHolder.getInstance().get(); + BinaryProtocol bp = BinaryProtocolHolder.getInstance().getCurrentStreamState(); byte[] currentOutputs = bp.currentOutputs; if (currentOutputs != null) System.arraycopy(currentOutputs, 1, response, 1, Fields.TS_OUTPUT_SIZE); diff --git a/java_console/io/src/com/rusefi/io/tcp/TcpConnector.java b/java_console/io/src/com/rusefi/io/tcp/TcpConnector.java index 8756a27938..5d0c8f6be8 100644 --- a/java_console/io/src/com/rusefi/io/tcp/TcpConnector.java +++ b/java_console/io/src/com/rusefi/io/tcp/TcpConnector.java @@ -118,7 +118,7 @@ public class TcpConnector implements LinkConnector { }; // ioStream.setInputListener(listener1); - bp = BinaryProtocolHolder.create(FileLog.LOGGER, new TcpIoStream(stream, os)); + bp = BinaryProtocolHolder.getInstance().create(FileLog.LOGGER, new TcpIoStream(stream, os)); boolean result = bp.connectAndReadConfiguration(listener1); if (result) { @@ -130,7 +130,6 @@ public class TcpConnector implements LinkConnector { @Override public void restart() { -// FileLog.rlog("Restarting on " + port); } @Override @@ -141,7 +140,6 @@ public class TcpConnector implements LinkConnector { @Override public String unpack(String packet) { return packet; -// return EngineState.unpackString(packet); } @Override @@ -152,15 +150,6 @@ public class TcpConnector implements LinkConnector { } bp.doSend(command, fireEvent); -// String command = LinkManager.encodeCommand(text); -// FileLog.MAIN.logLine("Writing " + command); -// try { -// ioStream.write((command + "\n").getBytes()); -// } catch (IOException e) { -// withError = true; -// System.err.println("err in send"); -// e.printStackTrace(); //To change body of catch statement use File | Settings | File Templates. -// } } public static Collection getAvailablePorts() { diff --git a/java_console/io/src/com/rusefi/io/tcp/test/BinaryProtocolServerSandbox.java b/java_console/io/src/com/rusefi/io/tcp/test/BinaryProtocolServerSandbox.java index ad4185cba9..a4756e8078 100644 --- a/java_console/io/src/com/rusefi/io/tcp/test/BinaryProtocolServerSandbox.java +++ b/java_console/io/src/com/rusefi/io/tcp/test/BinaryProtocolServerSandbox.java @@ -14,7 +14,7 @@ import java.io.ByteArrayOutputStream; class BinaryProtocolServerSandbox { public static void main(String[] args) { TcpIoStream stream = new TcpIoStream(new ByteArrayInputStream(new byte[0]), new ByteArrayOutputStream()); - BinaryProtocol bp = BinaryProtocolHolder.create(FileLog.LOGGER, stream); + BinaryProtocol bp = BinaryProtocolHolder.getInstance().create(FileLog.LOGGER, stream); bp.setController(new ConfigurationImage(new byte[14008])); bp.currentOutputs = new byte[1 + Fields.TS_OUTPUT_SIZE]; BinaryProtocolServer.start(); diff --git a/java_console/ui/src/com/rusefi/BenchTestPane.java b/java_console/ui/src/com/rusefi/BenchTestPane.java index 325c0eba5b..373ecd2492 100644 --- a/java_console/ui/src/com/rusefi/BenchTestPane.java +++ b/java_console/ui/src/com/rusefi/BenchTestPane.java @@ -57,7 +57,7 @@ public class BenchTestPane { button.addActionListener(new ActionListener() { @Override public void actionPerformed(ActionEvent e) { - BinaryProtocol bp = BinaryProtocolHolder.INSTANCE.get(); + BinaryProtocol bp = BinaryProtocolHolder.INSTANCE.getCurrentStreamState(); bp.executeCommand(new byte[]{'r'}, "begin trace", false); try { diff --git a/java_console/ui/src/com/rusefi/SensorLogger.java b/java_console/ui/src/com/rusefi/SensorLogger.java index bffb22310a..0c72edebda 100644 --- a/java_console/ui/src/com/rusefi/SensorLogger.java +++ b/java_console/ui/src/com/rusefi/SensorLogger.java @@ -149,7 +149,7 @@ public class SensorLogger { logFile.write("Captured " + FileLog.getDate() + "\r\n"); int debugMode = -1; - BinaryProtocol bp = BinaryProtocolHolder.getInstance().get(); + BinaryProtocol bp = BinaryProtocolHolder.getInstance().getCurrentStreamState(); if (bp != null) { ConfigurationImage ci = bp.getController(); if (ci != null) { diff --git a/java_console/ui/src/com/rusefi/TableEditorPane.java b/java_console/ui/src/com/rusefi/TableEditorPane.java index 9d13a31bff..cf0cec1553 100644 --- a/java_console/ui/src/com/rusefi/TableEditorPane.java +++ b/java_console/ui/src/com/rusefi/TableEditorPane.java @@ -32,7 +32,7 @@ public class TableEditorPane extends JPanel { add(editor.getContent()); - BinaryProtocol instance = BinaryProtocolHolder.getInstance().get(); + BinaryProtocol instance = BinaryProtocolHolder.getInstance().getCurrentStreamState(); if (instance == null) throw new NullPointerException("instance"); ConfigurationImage image = instance.getController(); diff --git a/java_console/ui/src/com/rusefi/UploadChanges.java b/java_console/ui/src/com/rusefi/UploadChanges.java index b320c48cd2..ace061071c 100644 --- a/java_console/ui/src/com/rusefi/UploadChanges.java +++ b/java_console/ui/src/com/rusefi/UploadChanges.java @@ -73,7 +73,7 @@ public class UploadChanges { final ConfigurationImage ci2 = ConfigurationImageFile.readFromFile("rusefi_configuration.bin"); - final BinaryProtocol bp = BinaryProtocolHolder.create(logger, new SerialIoStreamJSSC(serialPort, logger)); + final BinaryProtocol bp = BinaryProtocolHolder.getInstance().create(logger, new SerialIoStreamJSSC(serialPort, logger)); bp.setController(ci1); scheduleUpload(ci2); @@ -90,7 +90,7 @@ public class UploadChanges { @Override public void run() { try { - BinaryProtocolHolder.getInstance().get().uploadChanges(newVersion, logger); + BinaryProtocolHolder.getInstance().getCurrentStreamState().uploadChanges(newVersion, logger); if (afterUpload != null) afterUpload.run(); } catch (InterruptedException | EOFException | SerialPortException e) { diff --git a/java_console/ui/src/com/rusefi/binaryprotocol/BinaryProtocolCmdSandbox.java b/java_console/ui/src/com/rusefi/binaryprotocol/BinaryProtocolCmdSandbox.java index 7434ea4ce2..d167b75cef 100644 --- a/java_console/ui/src/com/rusefi/binaryprotocol/BinaryProtocolCmdSandbox.java +++ b/java_console/ui/src/com/rusefi/binaryprotocol/BinaryProtocolCmdSandbox.java @@ -32,7 +32,7 @@ public class BinaryProtocolCmdSandbox { if (!opened) { logger.error("failed to open " + port); } - BinaryProtocol bp = BinaryProtocolHolder.create(logger, new SerialIoStreamJSSC(serialPort, logger)); + BinaryProtocol bp = BinaryProtocolHolder.getInstance().create(logger, new SerialIoStreamJSSC(serialPort, logger)); SerialIoStreamJSSC.setupPort(serialPort, 38400); logger.info("Binary looks good!"); diff --git a/java_console/ui/src/com/rusefi/ui/FormulasPane.java b/java_console/ui/src/com/rusefi/ui/FormulasPane.java index b055ed01d1..6ab3e89a27 100644 --- a/java_console/ui/src/com/rusefi/ui/FormulasPane.java +++ b/java_console/ui/src/com/rusefi/ui/FormulasPane.java @@ -105,7 +105,7 @@ public class FormulasPane { } private void updateFormula() { - BinaryProtocol bp = BinaryProtocolHolder.getInstance().get(); + BinaryProtocol bp = BinaryProtocolHolder.getInstance().getCurrentStreamState(); if (bp == null) return; ConfigurationImage ci = bp.getController(); diff --git a/java_console/ui/src/com/rusefi/ui/FuelTunePane.java b/java_console/ui/src/com/rusefi/ui/FuelTunePane.java index 1abf38198c..9a125074c2 100644 --- a/java_console/ui/src/com/rusefi/ui/FuelTunePane.java +++ b/java_console/ui/src/com/rusefi/ui/FuelTunePane.java @@ -136,7 +136,7 @@ public class FuelTunePane { private void uploadCurrentResult() { byte[] newVeMap = FuelTunePane.this.newVeMap; - BinaryProtocol bp = BinaryProtocolHolder.getInstance().get(); + BinaryProtocol bp = BinaryProtocolHolder.getInstance().getCurrentStreamState(); if (newVeMap == null || bp == null) return; ConfigurationImage ci = bp.getController().clone(); @@ -313,7 +313,7 @@ public class FuelTunePane { } private byte[] reloadVeTable() { - BinaryProtocol bp = BinaryProtocolHolder.getInstance().get(); + BinaryProtocol bp = BinaryProtocolHolder.getInstance().getCurrentStreamState(); byte[] content = bp.getController().getContent(); loadData(veTable.getXAxis(), content, veRpmOffset); @@ -329,7 +329,7 @@ public class FuelTunePane { } private void loadArray(double[] array, int offset) { - BinaryProtocol bp = BinaryProtocolHolder.getInstance().get(); + BinaryProtocol bp = BinaryProtocolHolder.getInstance().getCurrentStreamState(); if (bp == null) { FileLog.MAIN.logLine("bp not ready"); return; diff --git a/java_console/ui/src/com/rusefi/ui/config/BaseConfigField.java b/java_console/ui/src/com/rusefi/ui/config/BaseConfigField.java index ce0405c019..1a652d9144 100644 --- a/java_console/ui/src/com/rusefi/ui/config/BaseConfigField.java +++ b/java_console/ui/src/com/rusefi/ui/config/BaseConfigField.java @@ -28,7 +28,7 @@ public abstract class BaseConfigField { } private void processInitialValue(Field field) { - BinaryProtocol bp = BinaryProtocolHolder.getInstance().get(); + BinaryProtocol bp = BinaryProtocolHolder.getInstance().getCurrentStreamState(); if (bp == null) return; ConfigurationImage ci = bp.getController(); diff --git a/java_console/ui/src/com/rusefi/ui/console/MainFrame.java b/java_console/ui/src/com/rusefi/ui/console/MainFrame.java index a4885e2872..1c0ca03eee 100644 --- a/java_console/ui/src/com/rusefi/ui/console/MainFrame.java +++ b/java_console/ui/src/com/rusefi/ui/console/MainFrame.java @@ -111,7 +111,7 @@ public class MainFrame { root.setProperty(Launcher.TAB_INDEX, tabbedPane.tabbedPane.getSelectedIndex()); GaugesPanel.DetachedRepository.INSTANCE.saveConfig(); getConfig().save(); - BinaryProtocol bp = BinaryProtocolHolder.getInstance().get(); + BinaryProtocol bp = BinaryProtocolHolder.getInstance().getCurrentStreamState(); if (bp != null && !bp.isClosed) bp.close(); // it could be that serial driver wants to be closed explicitly System.exit(0);