From cd076f8b3c15eacceaa445a9ddbdb7f8cf2d1ebb Mon Sep 17 00:00:00 2001 From: Rob Austin Date: Wed, 11 Mar 2015 19:08:45 +0000 Subject: [PATCH] CE-14 change the sizes to be 2 byte unsigned shorts ( to bring it inline with chronicle network ) --- .../chronicle/map/AbstractChannelReplicator.java | 2 +- .../chronicle/map/StatelessWiredConnector.java | 11 +++++++---- .../map/WiredStatelessClientTcpConnectionHub.java | 8 ++++---- 3 files changed, 12 insertions(+), 9 deletions(-) diff --git a/src/main/java/net/openhft/chronicle/map/AbstractChannelReplicator.java b/src/main/java/net/openhft/chronicle/map/AbstractChannelReplicator.java index 885139a28..a7281c2c3 100644 --- a/src/main/java/net/openhft/chronicle/map/AbstractChannelReplicator.java +++ b/src/main/java/net/openhft/chronicle/map/AbstractChannelReplicator.java @@ -54,7 +54,7 @@ abstract class AbstractChannelReplicator implements Closeable { public static final int BITS_IN_A_BYTE = 8; - public static final int SIZE_OF_SIZE = 4; + public static final int SIZE_OF_SIZE = 2; public static final int SIZE_OF_TRANSACTION_ID = 8; public static final int SIZE_OF_TIME_SHIFT = 2; diff --git a/src/main/java/net/openhft/chronicle/map/StatelessWiredConnector.java b/src/main/java/net/openhft/chronicle/map/StatelessWiredConnector.java index 1da0beafd..04bdee598 100644 --- a/src/main/java/net/openhft/chronicle/map/StatelessWiredConnector.java +++ b/src/main/java/net/openhft/chronicle/map/StatelessWiredConnector.java @@ -55,6 +55,7 @@ import java.util.function.Function; import static java.nio.channels.SelectionKey.OP_READ; import static java.nio.channels.SelectionKey.OP_WRITE; +import static net.openhft.chronicle.map.AbstractChannelReplicator.SIZE_OF_SIZE; /** * @author Rob Austin. @@ -243,7 +244,7 @@ public class StatelessWiredConnector 4) { + while (inWire.bytes().remaining() > SIZE_OF_SIZE) { final long limit = inWire.bytes().limit(); @@ -307,11 +308,13 @@ public class StatelessWiredConnector bytes = inWire.bytes(); - int size = bytes.readInt(bytes.position()); + + // the size of the next wire message + int size = bytes.readUnsignedShort(bytes.position()); inWire.bytes().ensureCapacity(bytes.position() + size); @@ -323,7 +326,7 @@ public class StatelessWiredConnector 0 : "Invalid message size " + messageSize; @@ -657,8 +657,8 @@ public class WiredStatelessClientTcpConnectionHub { // this is where the size will go outWire.bytes().mark(); - // skip the 4 bytes for the size - outWire.bytes().skip(4); + // skip the 2 bytes for the size + outWire.bytes().skip(2); } void startTime(long startTime) {