Skip to content

Commit 548ddaf

Browse files
committed
added BufferUnpacker#getBufferSize()
1 parent bffc6b1 commit 548ddaf

4 files changed

Lines changed: 21 additions & 0 deletions

File tree

src/main/java/org/msgpack/io/LinkedBufferInput.java

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -369,6 +369,14 @@ public void copyReferencedBuffer() {
369369
}
370370
}
371371

372+
public int getSize() {
373+
int size = 0;
374+
for(ByteBuffer bb : link) {
375+
size += bb.remaining();
376+
}
377+
return size;
378+
}
379+
372380
public void close() {
373381
}
374382
}

src/main/java/org/msgpack/unpacker/BufferUnpacker.java

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -44,6 +44,8 @@ public interface BufferUnpacker extends Unpacker {
4444

4545
public BufferUnpacker feed(ByteBuffer buf, boolean reference);
4646

47+
public int getBufferSize();
48+
4749
public void copyReferencedBuffer();
4850

4951
public void clear();

src/main/java/org/msgpack/unpacker/MessagePackBufferUnpacker.java

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -89,6 +89,11 @@ public MessagePackBufferUnpacker feed(ByteBuffer buf, boolean reference) {
8989
return this;
9090
}
9191

92+
@Override
93+
public int getBufferSize() {
94+
return ((LinkedBufferInput) in).getSize();
95+
}
96+
9297
@Override
9398
public void copyReferencedBuffer() {
9499
((LinkedBufferInput) in).copyReferencedBuffer();

src/main/java/org/msgpack/util/json/JSONBufferUnpacker.java

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -97,6 +97,12 @@ public JSONBufferUnpacker feed(ByteBuffer buf, boolean reference) {
9797
"JSONBufferUnpacker doesn't support feed()");
9898
}
9999

100+
@Override
101+
public int getBufferSize() {
102+
throw new UnsupportedOperationException(
103+
"JSONBufferUnpacker doesn't support getBufferSize()");
104+
}
105+
100106
@Override
101107
public void copyReferencedBuffer() {
102108
throw new UnsupportedOperationException(

0 commit comments

Comments
 (0)