summaryrefslogtreecommitdiffstats
path: root/container-search/src/main/java/com/yahoo
diff options
context:
space:
mode:
authorHenning Baldersheim <balder@yahoo-inc.com>2019-03-27 11:43:05 +0200
committerHenning Baldersheim <balder@yahoo-inc.com>2019-03-27 11:43:05 +0200
commit45298453ec4c78b68a2c42782655451f72aa560d (patch)
tree21079e78250f55886ea0d354ff63a460d382f8ba /container-search/src/main/java/com/yahoo
parent0aab80f77a70b1e01b5ce26ccba18270ef69767c (diff)
GC old complicated stuff that is no longer in use to simplify.
Diffstat (limited to 'container-search/src/main/java/com/yahoo')
-rw-r--r--container-search/src/main/java/com/yahoo/fs4/BasicPacket.java36
-rw-r--r--container-search/src/main/java/com/yahoo/fs4/Packet.java13
2 files changed, 6 insertions, 43 deletions
diff --git a/container-search/src/main/java/com/yahoo/fs4/BasicPacket.java b/container-search/src/main/java/com/yahoo/fs4/BasicPacket.java
index 5441fff1aeb..ceb3ca31527 100644
--- a/container-search/src/main/java/com/yahoo/fs4/BasicPacket.java
+++ b/container-search/src/main/java/com/yahoo/fs4/BasicPacket.java
@@ -28,8 +28,6 @@ public abstract class BasicPacket {
private byte[] encodedBody;
- private ByteBuffer encodingBuffer;
-
/** The length of this packet in bytes or -1 if not known */
protected int length = -1;
@@ -222,16 +220,11 @@ public abstract class BasicPacket {
*
* If this packet does not use a channel ID, the ID will be ignored.
*/
- public final void allocateAndEncode(int channelId) {
- allocateAndEncode(channelId, DEFAULT_WRITE_BUFFER_SIZE);
+ public final ByteBuffer allocateAndEncode(int channelId) {
+ return allocateAndEncode(channelId, DEFAULT_WRITE_BUFFER_SIZE);
}
- private void allocateAndEncode(int channelId, int initialSize) {
- if (encodingBuffer != null) {
- patchChannelId(encodingBuffer, channelId);
- return;
- }
-
+ private ByteBuffer allocateAndEncode(int channelId, int initialSize) {
int size = initialSize;
ByteBuffer buffer = ByteBuffer.allocate(size);
while (true) {
@@ -242,7 +235,6 @@ public abstract class BasicPacket {
encode(buffer);
}
buffer.flip();
- encodingBuffer = buffer;
break;
}
catch (BufferTooSmallException e) {
@@ -250,35 +242,19 @@ public abstract class BasicPacket {
buffer = ByteBuffer.allocate(size);
}
}
+ return buffer;
}
- // No channel ID for BasicPacket instances, so it's a NOP
- protected void patchChannelId(ByteBuffer buf, int channelId) {}
-
/**
* Return buffer containing the encoded form of this package and
* remove internal reference to it.
*/
public final ByteBuffer grantEncodingBuffer(int channelId) {
- if (encodingBuffer == null) {
- allocateAndEncode(channelId);
- } else {
- patchChannelId(encodingBuffer, channelId);
- }
- ByteBuffer b = encodingBuffer;
- encodingBuffer = null;
- return b;
+ return allocateAndEncode(channelId);
}
public final ByteBuffer grantEncodingBuffer(int channelId, int initialSize) {
- if (encodingBuffer == null) {
- allocateAndEncode(channelId, initialSize);
- } else {
- patchChannelId(encodingBuffer, channelId);
- }
- ByteBuffer b = encodingBuffer;
- encodingBuffer = null;
- return b;
+ return allocateAndEncode(channelId, initialSize);
}
/** Returns the code of this package */
diff --git a/container-search/src/main/java/com/yahoo/fs4/Packet.java b/container-search/src/main/java/com/yahoo/fs4/Packet.java
index 78d5083c25f..1e9deede59d 100644
--- a/container-search/src/main/java/com/yahoo/fs4/Packet.java
+++ b/container-search/src/main/java/com/yahoo/fs4/Packet.java
@@ -19,8 +19,6 @@ public abstract class Packet extends BasicPacket {
*/
protected int channel = -1;
- private static final int CHANNEL_ID_OFFSET = 8;
-
/**
* Fills this package from a byte buffer positioned at the first
* byte of the package
@@ -109,17 +107,6 @@ public abstract class Packet extends BasicPacket {
return true;
}
- /**
- * Only for use with encodingBuffer magic.
- *
- * This is only called from allocateAndEncode and grantEncodingBuffer,
- * therefore an assumption about the packet starting at the beginning of the
- * buffer is made.
- */
- protected void patchChannelId(ByteBuffer buf, int channelId) {
- buf.putInt(CHANNEL_ID_OFFSET, channelId);
- }
-
public String toString() {
return "packet with code " + getCode() + ", channelId=" + getChannel();
}