ReadOnlyByteBufferBuf Class — netty Architecture
Architecture documentation for the ReadOnlyByteBufferBuf class in ReadOnlyByteBufferBuf.java from the netty codebase.
Entity Profile
Dependency Diagram
graph TD 5273506a_32fb_bc2b_85cd_43b563e3f698["ReadOnlyByteBufferBuf"] 17429ce3_692b_144d_dec0_e97e7cc00a03["ReadOnlyByteBufferBuf.java"] 5273506a_32fb_bc2b_85cd_43b563e3f698 -->|defined in| 17429ce3_692b_144d_dec0_e97e7cc00a03 ace3e1ce_4202_1dc5_3341_b7b5adfb6cd1["ReadOnlyByteBufferBuf()"] 5273506a_32fb_bc2b_85cd_43b563e3f698 -->|method| ace3e1ce_4202_1dc5_3341_b7b5adfb6cd1 d379fe95_cfff_d2b3_b99d_c12735b86f31["deallocate()"] 5273506a_32fb_bc2b_85cd_43b563e3f698 -->|method| d379fe95_cfff_d2b3_b99d_c12735b86f31 be6f2d1a_9ac8_ce3f_3409_526fe7e16b67["isWritable()"] 5273506a_32fb_bc2b_85cd_43b563e3f698 -->|method| be6f2d1a_9ac8_ce3f_3409_526fe7e16b67 454d0618_b52f_b286_db1b_46eedf35b501["ByteBuf()"] 5273506a_32fb_bc2b_85cd_43b563e3f698 -->|method| 454d0618_b52f_b286_db1b_46eedf35b501 e877b15f_a1b9_6ea4_9c62_3449e024a238["ensureWritable()"] 5273506a_32fb_bc2b_85cd_43b563e3f698 -->|method| e877b15f_a1b9_6ea4_9c62_3449e024a238 5fd9436c_4607_b664_4294_fd8bb68440cd["getByte()"] 5273506a_32fb_bc2b_85cd_43b563e3f698 -->|method| 5fd9436c_4607_b664_4294_fd8bb68440cd 100fb5bc_2a7b_60ec_c33f_b1bccb47c311["_getByte()"] 5273506a_32fb_bc2b_85cd_43b563e3f698 -->|method| 100fb5bc_2a7b_60ec_c33f_b1bccb47c311 c99a60c5_dc52_765e_1d59_74be61727c70["getShort()"] 5273506a_32fb_bc2b_85cd_43b563e3f698 -->|method| c99a60c5_dc52_765e_1d59_74be61727c70 9ad552c8_3fd5_9a9a_673c_190326a1fdda["_getShort()"] 5273506a_32fb_bc2b_85cd_43b563e3f698 -->|method| 9ad552c8_3fd5_9a9a_673c_190326a1fdda af01ba42_8bc8_0d92_2a4d_e39a91c9f1fc["getShortLE()"] 5273506a_32fb_bc2b_85cd_43b563e3f698 -->|method| af01ba42_8bc8_0d92_2a4d_e39a91c9f1fc 657ab039_db8d_a362_e841_266210450377["_getShortLE()"] 5273506a_32fb_bc2b_85cd_43b563e3f698 -->|method| 657ab039_db8d_a362_e841_266210450377 570e6b85_3233_33a9_3bdd_4d1acc90f423["getUnsignedMedium()"] 5273506a_32fb_bc2b_85cd_43b563e3f698 -->|method| 570e6b85_3233_33a9_3bdd_4d1acc90f423 c63fe1e4_a195_7693_4bfc_bd685d698392["_getUnsignedMedium()"] 5273506a_32fb_bc2b_85cd_43b563e3f698 -->|method| c63fe1e4_a195_7693_4bfc_bd685d698392
Relationship Graph
Source Code
buffer/src/main/java/io/netty/buffer/ReadOnlyByteBufferBuf.java lines 34–653
class ReadOnlyByteBufferBuf extends AbstractReferenceCountedByteBuf {
protected final ByteBuffer buffer;
private final ByteBufAllocator allocator;
private ByteBuffer tmpNioBuf;
ReadOnlyByteBufferBuf(ByteBufAllocator allocator, ByteBuffer buffer) {
super(buffer.remaining());
if (!buffer.isReadOnly()) {
throw new IllegalArgumentException("must be a readonly buffer: " + StringUtil.simpleClassName(buffer));
}
this.allocator = allocator;
this.buffer = buffer.slice().order(ByteOrder.BIG_ENDIAN);
writerIndex(this.buffer.limit());
}
@Override
protected void deallocate() { }
@Override
public boolean isWritable() {
return false;
}
@Override
public boolean isWritable(int numBytes) {
return false;
}
@Override
public ByteBuf ensureWritable(int minWritableBytes) {
throw new ReadOnlyBufferException();
}
@Override
public int ensureWritable(int minWritableBytes, boolean force) {
return 1;
}
@Override
public byte getByte(int index) {
ensureAccessible();
return _getByte(index);
}
@Override
protected byte _getByte(int index) {
return buffer.get(index);
}
@Override
public short getShort(int index) {
ensureAccessible();
return _getShort(index);
}
@Override
protected short _getShort(int index) {
return buffer.getShort(index);
}
@Override
public short getShortLE(int index) {
ensureAccessible();
return _getShortLE(index);
}
@Override
protected short _getShortLE(int index) {
return ByteBufUtil.swapShort(buffer.getShort(index));
}
@Override
public int getUnsignedMedium(int index) {
ensureAccessible();
return _getUnsignedMedium(index);
}
@Override
protected int _getUnsignedMedium(int index) {
Source
Frequently Asked Questions
What is the ReadOnlyByteBufferBuf class?
ReadOnlyByteBufferBuf is a class in the netty codebase, defined in buffer/src/main/java/io/netty/buffer/ReadOnlyByteBufferBuf.java.
Where is ReadOnlyByteBufferBuf defined?
ReadOnlyByteBufferBuf is defined in buffer/src/main/java/io/netty/buffer/ReadOnlyByteBufferBuf.java at line 34.
Analyze Your Own Codebase
Get architecture documentation, dependency graphs, and domain analysis for your codebase in minutes.
Try Supermodel Free