Github user dineshjoshi commented on a diff in the pull request:
https://github.com/apache/cassandra/pull/239#discussion_r201461066
--- Diff:
src/java/org/apache/cassandra/net/async/RebufferingByteBufDataInputPlus.java ---
@@ -249,4 +253,50 @@ public ByteBufAllocator getAllocator()
{
return channelConfig.getAllocator();
}
+
+ /**
+ * Consumes bytes in the stream until the given length
+ *
+ * @param writer
+ * @param len
+ * @return
+ * @throws IOException
+ */
+ public long consumeUntil(BufferedDataOutputStreamPlus writer, long
len) throws IOException
+ {
+ long copied = 0; // number of bytes copied
+ while (copied < len)
+ {
+ int position = buffer.position();
+ int remaining = buffer.remaining();
+ if (remaining == 0)
+ {
+ try
+ {
+ reBuffer();
+ } catch (EOFException e)
+ {
+ throw new EOFException("EOF after " + copied + " bytes
out of " + len);
+ }
+ position = buffer.position();
+ remaining = buffer.remaining();
+ if (remaining == 0)
--- End diff --
The codebase that I've been through doesn't use braces for single statement
blocks. I assumed that was the convention. I can change it in my PR to follow
the Sun style but we should ideally audit and change the code style in the
future to avoid confusion.
---
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]