mirror of https://github.com/rusefi/rusefi-1.git
proxy progress
This commit is contained in:
parent
529772f939
commit
99fce91744
|
@ -16,6 +16,14 @@ public interface WriteStream {
|
|||
write(new byte[]{value});
|
||||
}
|
||||
|
||||
default void writeShort(int v) throws IOException {
|
||||
byte[] array = new byte[2];
|
||||
|
||||
array[0] = (byte) ((v >>> 8) & 0xFF);
|
||||
array[1] = (byte) ((v >>> 0) & 0xFF);
|
||||
write(array);
|
||||
}
|
||||
|
||||
default void writeInt(int v) throws IOException {
|
||||
byte[] array = new byte[4];
|
||||
|
||||
|
|
|
@ -81,6 +81,25 @@ public class BinaryProtocol implements BinaryProtocolCommands {
|
|||
|
||||
private List<StreamFile> compositeLogs = new ArrayList<>();
|
||||
|
||||
public static String findCommand(byte command) {
|
||||
switch (command) {
|
||||
case Fields.TS_CRC_CHECK_COMMAND:
|
||||
return "CRC_CHECK";
|
||||
case Fields.TS_BURN_COMMAND:
|
||||
return "BURN";
|
||||
case Fields.TS_HELLO_COMMAND:
|
||||
return "HELLO";
|
||||
case Fields.TS_READ_COMMAND:
|
||||
return "READ";
|
||||
case Fields.TS_GET_FIRMWARE_VERSION:
|
||||
return "GET_FW_VERSION";
|
||||
case Fields.TS_CHUNK_WRITE_COMMAND:
|
||||
return "WRITE_CHUNK";
|
||||
default:
|
||||
return "command " + (char) + command + "/" + command;
|
||||
}
|
||||
}
|
||||
|
||||
private void createCompositesIfNeeded() {
|
||||
if (!compositeLogs.isEmpty())
|
||||
return;
|
||||
|
|
|
@ -1,6 +1,7 @@
|
|||
package com.rusefi.io.tcp;
|
||||
|
||||
import com.opensr5.Logger;
|
||||
import com.rusefi.binaryprotocol.BinaryProtocol;
|
||||
import com.rusefi.io.IoStream;
|
||||
|
||||
import java.io.ByteArrayInputStream;
|
||||
|
@ -71,10 +72,9 @@ public class BinaryProtocolProxy {
|
|||
DataInputStream dis = new DataInputStream(new ByteArrayInputStream(packet.getPacket()));
|
||||
byte command = (byte) dis.read();
|
||||
|
||||
System.out.println("Relaying client command" + (char) command + "/" + command + " length=" + length);
|
||||
System.out.println("Relaying client command " + BinaryProtocol.findCommand(command));
|
||||
// sending proxies packet to controller
|
||||
targetOutputStream.write(firstByte);
|
||||
targetOutputStream.write(secondByte);
|
||||
targetOutputStream.writeShort(length);
|
||||
targetOutputStream.write(packet.getPacket());
|
||||
targetOutputStream.writeInt(packet.getCrc());
|
||||
}
|
||||
|
|
|
@ -3,10 +3,7 @@ package com.rusefi.io.tcp;
|
|||
import com.opensr5.ConfigurationImage;
|
||||
import com.opensr5.Logger;
|
||||
import com.rusefi.Listener;
|
||||
import com.rusefi.binaryprotocol.BinaryProtocolCommands;
|
||||
import com.rusefi.binaryprotocol.BinaryProtocolState;
|
||||
import com.rusefi.binaryprotocol.IncomingDataBuffer;
|
||||
import com.rusefi.binaryprotocol.IoHelper;
|
||||
import com.rusefi.binaryprotocol.*;
|
||||
import com.rusefi.config.generated.Fields;
|
||||
import com.rusefi.io.LinkManager;
|
||||
import com.rusefi.io.commands.HelloCommand;
|
||||
|
@ -126,7 +123,7 @@ public class BinaryProtocolServer implements BinaryProtocolCommands {
|
|||
|
||||
byte command = payload[0];
|
||||
|
||||
System.out.println("Got [" + (char) command + "/" + command + "] command");
|
||||
System.out.println("Got [" + BinaryProtocol.findCommand(command));
|
||||
|
||||
if (command == Fields.TS_HELLO_COMMAND) {
|
||||
new HelloCommand(logger, Fields.TS_SIGNATURE).handle(packet, stream);
|
||||
|
@ -171,7 +168,7 @@ public class BinaryProtocolServer implements BinaryProtocolCommands {
|
|||
} else {
|
||||
unknownCommands.incrementAndGet();
|
||||
new IllegalStateException().printStackTrace();
|
||||
logger.info("Error: unknown command " + (char) command + "/" + command);
|
||||
logger.info("Error: unexpected " + BinaryProtocol.findCommand(command));
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
Loading…
Reference in New Issue