diff --git a/java_tools/proxy_server/src/main/java/com/rusefi/proxy/NetworkConnector.java b/java_tools/proxy_server/src/main/java/com/rusefi/proxy/NetworkConnector.java index d6a4657ade..1728524d3f 100644 --- a/java_tools/proxy_server/src/main/java/com/rusefi/proxy/NetworkConnector.java +++ b/java_tools/proxy_server/src/main/java/com/rusefi/proxy/NetworkConnector.java @@ -26,12 +26,12 @@ import java.util.concurrent.TimeUnit; */ public class NetworkConnector { public static SessionDetails runNetworkConnector(String authToken, String controllerPort, int serverPortForControllers, TcpIoStream.DisconnectListener disconnectListener) throws InterruptedException, IOException { - LinkManager linkManager = new LinkManager() + LinkManager controllerConnector = new LinkManager() .setCompositeLogicEnabled(false) .setNeedPullData(false); CountDownLatch onConnected = new CountDownLatch(1); - linkManager.startAndConnect(controllerPort, new ConnectionStateListener() { + controllerConnector.startAndConnect(controllerPort, new ConnectionStateListener() { @Override public void onConnectionEstablished() { onConnected.countDown(); @@ -50,7 +50,7 @@ public class NetworkConnector { return null; } - return runNetworkConnector(serverPortForControllers, linkManager, Logger.CONSOLE, authToken, disconnectListener); + return runNetworkConnector(serverPortForControllers, controllerConnector, Logger.CONSOLE, authToken, disconnectListener); } @NotNull diff --git a/java_tools/proxy_server/src/main/java/com/rusefi/server/Backend.java b/java_tools/proxy_server/src/main/java/com/rusefi/server/Backend.java index 9da6d27bd4..af5c8cdc1e 100644 --- a/java_tools/proxy_server/src/main/java/com/rusefi/server/Backend.java +++ b/java_tools/proxy_server/src/main/java/com/rusefi/server/Backend.java @@ -293,6 +293,7 @@ public class Backend implements Closeable { .add(UserDetails.USER_ID, client.getUserDetails().getUserId()) .add(UserDetails.USERNAME, client.getUserDetails().getUserName()) .add(AGE, client.getBirthday().getDuration()) + .add("OUTPUT_ROUND_TRIP", client.getOutputRoundAroundDuration()) .add(ProxyClient.IS_USED, client.getTwoKindSemaphore().isUsed()) .add(ControllerStateDetails.RPM, rpm) .add(ControllerStateDetails.CLT, clt) 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 4e3ba721eb..15f37c4fdb 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 @@ -37,6 +37,7 @@ public class ControllerConnectionState { private final TwoKindSemaphore twoKindSemaphore = new TwoKindSemaphore(); private final SensorsHolder sensorsHolder = new SensorsHolder(); private final Birthday birthday = new Birthday(); + private int outputRoundAroundDuration; public ControllerConnectionState(Socket clientSocket, UserDetailsResolver userDetailsResolver) { this.clientSocket = clientSocket; @@ -53,6 +54,10 @@ public class ControllerConnectionState { return birthday; } + public int getOutputRoundAroundDuration() { + return outputRoundAroundDuration; + } + public IoStream getStream() { return stream; } @@ -98,10 +103,11 @@ public class ControllerConnectionState { public void getOutputs() throws IOException { byte[] commandPacket = GetOutputsCommand.createRequest(); - + long start = System.currentTimeMillis(); stream.sendPacket(commandPacket); byte[] packet = incomingData.getPacket("msg", true); + outputRoundAroundDuration = (int) (System.currentTimeMillis() - start); if (packet == null) throw new IOException("getOutputs: No response"); sensorsHolder.grabSensorValues(packet);