From 4194b63024078f02782efaa9ad7f7df3875af098 Mon Sep 17 00:00:00 2001 From: rusefillc Date: Sat, 16 Apr 2022 02:30:54 -0400 Subject: [PATCH] logging of live data structs was: data points #3614 --- .../main/java/com/rusefi/binaryprotocol/BinaryProtocol.java | 4 ++-- .../main/java/com/rusefi/io/commands/GetOutputsCommand.java | 6 ++++-- java_console/io/src/test/java/com/rusefi/TestHelper.java | 3 ++- .../java/com/rusefi/io/BinaryProtocolServerSandbox.java | 3 ++- .../com/rusefi/proxy/client/LocalApplicationProxyTest.java | 2 +- .../java/com/rusefi/server/ControllerConnectionState.java | 2 +- 6 files changed, 12 insertions(+), 8 deletions(-) diff --git a/java_console/io/src/main/java/com/rusefi/binaryprotocol/BinaryProtocol.java b/java_console/io/src/main/java/com/rusefi/binaryprotocol/BinaryProtocol.java index 0a760400e7..729fc8f0c9 100644 --- a/java_console/io/src/main/java/com/rusefi/binaryprotocol/BinaryProtocol.java +++ b/java_console/io/src/main/java/com/rusefi/binaryprotocol/BinaryProtocol.java @@ -546,11 +546,11 @@ public class BinaryProtocol { // TODO: Get rid of the +1. This adds a byte at the front to tack a fake TS response code on the front // of the reassembled packet. - byte[] reassemblyBuffer = new byte[Fields.TS_OUTPUT_SIZE + 1]; + byte[] reassemblyBuffer = new byte[GetOutputsCommand.OUTPUT_SIZE + 1]; reassemblyBuffer[0] = Fields.TS_RESPONSE_OK; int reassemblyIdx = 0; - int remaining = Fields.TS_OUTPUT_SIZE; + int remaining = GetOutputsCommand.OUTPUT_SIZE; while (remaining > 0) { // If less than one full chunk left, do a smaller read diff --git a/java_console/io/src/main/java/com/rusefi/io/commands/GetOutputsCommand.java b/java_console/io/src/main/java/com/rusefi/io/commands/GetOutputsCommand.java index d5b3e54173..e6d1912b8b 100644 --- a/java_console/io/src/main/java/com/rusefi/io/commands/GetOutputsCommand.java +++ b/java_console/io/src/main/java/com/rusefi/io/commands/GetOutputsCommand.java @@ -10,8 +10,10 @@ import static com.rusefi.binaryprotocol.IoHelper.putShort; import static com.rusefi.binaryprotocol.IoHelper.swap16; public class GetOutputsCommand { + public static int OUTPUT_SIZE = Fields.TS_OUTPUT_SIZE; + public static byte[] createRequest() { - return createRequest(0, Fields.TS_OUTPUT_SIZE); + return createRequest(0, GetOutputsCommand.OUTPUT_SIZE); } public static byte[] createRequest(int offset, int size) { @@ -22,7 +24,7 @@ public class GetOutputsCommand { } public static void sendOutput(IoStream stream) throws IOException { - byte[] response = new byte[1 + Fields.TS_OUTPUT_SIZE]; + byte[] response = new byte[1 + GetOutputsCommand.OUTPUT_SIZE]; response[0] = (byte) BinaryProtocolServer.TS_OK.charAt(0); stream.sendPacket(response); } diff --git a/java_console/io/src/test/java/com/rusefi/TestHelper.java b/java_console/io/src/test/java/com/rusefi/TestHelper.java index 38d6fa8a19..0699727f5f 100644 --- a/java_console/io/src/test/java/com/rusefi/TestHelper.java +++ b/java_console/io/src/test/java/com/rusefi/TestHelper.java @@ -10,6 +10,7 @@ import com.rusefi.config.generated.Fields; import com.rusefi.io.IoStream; import com.rusefi.io.LinkConnector; import com.rusefi.io.LinkManager; +import com.rusefi.io.commands.GetOutputsCommand; import com.rusefi.io.tcp.BinaryProtocolServer; import com.rusefi.io.tcp.TcpConnector; import com.rusefi.io.tcp.TcpIoStream; @@ -59,7 +60,7 @@ public class TestHelper { public static BinaryProtocolServer createVirtualController(ConfigurationImage ci, int port, Listener serverSocketCreationCallback, BinaryProtocolServer.Context context) throws IOException { BinaryProtocolState state = new BinaryProtocolState(); state.setController(ci); - state.setCurrentOutputs(new byte[1 + Fields.TS_OUTPUT_SIZE]); + state.setCurrentOutputs(new byte[1 + GetOutputsCommand.OUTPUT_SIZE]); LinkManager linkManager = new LinkManager(); linkManager.setConnector(LinkConnector.getDetachedConnector(state)); diff --git a/java_console/ui/src/test/java/com/rusefi/io/BinaryProtocolServerSandbox.java b/java_console/ui/src/test/java/com/rusefi/io/BinaryProtocolServerSandbox.java index 84b44937da..79f71fa6ee 100644 --- a/java_console/ui/src/test/java/com/rusefi/io/BinaryProtocolServerSandbox.java +++ b/java_console/ui/src/test/java/com/rusefi/io/BinaryProtocolServerSandbox.java @@ -5,6 +5,7 @@ import com.opensr5.ini.field.ScalarIniField; import com.rusefi.TestHelper; import com.rusefi.binaryprotocol.BinaryProtocolState; import com.rusefi.config.generated.Fields; +import com.rusefi.io.commands.GetOutputsCommand; import com.rusefi.io.tcp.BinaryProtocolServer; import com.rusefi.tune.xml.Constant; @@ -25,7 +26,7 @@ class BinaryProtocolServerSandbox { ScalarIniField iniField = TestHelper.createIniField(Fields.TWOSTROKE); iniField.setValue(controller, new Constant(iniField.getName(), "", "1", iniField.getDigits())); state.setController(controller); - state.setCurrentOutputs(new byte[1 + Fields.TS_OUTPUT_SIZE]); + state.setCurrentOutputs(new byte[1 + GetOutputsCommand.OUTPUT_SIZE]); LinkManager linkManager = new LinkManager(); linkManager.setConnector(LinkConnector.getDetachedConnector(state)); diff --git a/java_console/ui/src/test/java/com/rusefi/proxy/client/LocalApplicationProxyTest.java b/java_console/ui/src/test/java/com/rusefi/proxy/client/LocalApplicationProxyTest.java index a955135066..3f07f5a5fc 100644 --- a/java_console/ui/src/test/java/com/rusefi/proxy/client/LocalApplicationProxyTest.java +++ b/java_console/ui/src/test/java/com/rusefi/proxy/client/LocalApplicationProxyTest.java @@ -98,7 +98,7 @@ public class LocalApplicationProxyTest { applicationConnection.sendPacket(commandPacket); BinaryProtocolServer.Packet response = applicationConnection.readPacket(); - assertEquals(Fields.TS_OUTPUT_SIZE + 1, response.getPacket().length); + assertEquals(GetOutputsCommand.OUTPUT_SIZE + 1, response.getPacket().length); } } } diff --git a/java_tools/proxy_server/src/main/java/com/rusefi/server/ControllerConnectionState.java b/java_tools/proxy_server/src/main/java/com/rusefi/server/ControllerConnectionState.java index dc6a57f6b7..d373117425 100644 --- a/java_tools/proxy_server/src/main/java/com/rusefi/server/ControllerConnectionState.java +++ b/java_tools/proxy_server/src/main/java/com/rusefi/server/ControllerConnectionState.java @@ -140,7 +140,7 @@ public class ControllerConnectionState { outputRoundAroundDuration = (int) (System.currentTimeMillis() - start); if (packet == null) throw new IOException("getOutputs: No response"); - if (packet.length != 1 + Fields.TS_OUTPUT_SIZE) + if (packet.length != 1 + GetOutputsCommand.OUTPUT_SIZE) throw new IOException("getOutputs: unexpected package length " + packet.length); sensorsHolder.grabSensorValues(packet); }