PooledHeapByteBuf Class — netty Architecture
Architecture documentation for the PooledHeapByteBuf class in PooledHeapByteBuf.java from the netty codebase.
Entity Profile
Dependency Diagram
graph TD a62cfc26_17fe_4ffa_c982_878418dba986["PooledHeapByteBuf"] c1f3bbc3_1b3b_5617_31a9_016edddfc438["PooledHeapByteBuf.java"] a62cfc26_17fe_4ffa_c982_878418dba986 -->|defined in| c1f3bbc3_1b3b_5617_31a9_016edddfc438 f7929b1c_4225_c7a7_0fcc_c84763087501["PooledHeapByteBuf()"] a62cfc26_17fe_4ffa_c982_878418dba986 -->|method| f7929b1c_4225_c7a7_0fcc_c84763087501 46166e39_a310_e3a3_296b_22c0c9fa3b28["isDirect()"] a62cfc26_17fe_4ffa_c982_878418dba986 -->|method| 46166e39_a310_e3a3_296b_22c0c9fa3b28 63b46e56_f7a2_9fba_6adc_5a600e545247["_getByte()"] a62cfc26_17fe_4ffa_c982_878418dba986 -->|method| 63b46e56_f7a2_9fba_6adc_5a600e545247 ba9d6f28_3b5f_ef86_d585_2506c9b85a59["_getShort()"] a62cfc26_17fe_4ffa_c982_878418dba986 -->|method| ba9d6f28_3b5f_ef86_d585_2506c9b85a59 e64d5032_215f_2232_bb52_879168eda0be["_getShortLE()"] a62cfc26_17fe_4ffa_c982_878418dba986 -->|method| e64d5032_215f_2232_bb52_879168eda0be bbcfdbd6_643f_e419_5f75_51b7431434a0["_getUnsignedMedium()"] a62cfc26_17fe_4ffa_c982_878418dba986 -->|method| bbcfdbd6_643f_e419_5f75_51b7431434a0 e6a6d414_7bed_80d8_8d46_5d51ccf18074["_getUnsignedMediumLE()"] a62cfc26_17fe_4ffa_c982_878418dba986 -->|method| e6a6d414_7bed_80d8_8d46_5d51ccf18074 ee6d23f9_b195_bf47_f0e8_98f334e1abcc["_getInt()"] a62cfc26_17fe_4ffa_c982_878418dba986 -->|method| ee6d23f9_b195_bf47_f0e8_98f334e1abcc bd0f8994_22a6_4c76_ea5d_a6e43a572c4b["_getIntLE()"] a62cfc26_17fe_4ffa_c982_878418dba986 -->|method| bd0f8994_22a6_4c76_ea5d_a6e43a572c4b 25393533_996d_b803_4425_930643d01552["_getLong()"] a62cfc26_17fe_4ffa_c982_878418dba986 -->|method| 25393533_996d_b803_4425_930643d01552 468d723e_7971_b9a0_81d1_3dbd97b57dd7["_getLongLE()"] a62cfc26_17fe_4ffa_c982_878418dba986 -->|method| 468d723e_7971_b9a0_81d1_3dbd97b57dd7 1c5de21b_8119_3d49_301a_c8e323551d3c["ByteBuf()"] a62cfc26_17fe_4ffa_c982_878418dba986 -->|method| 1c5de21b_8119_3d49_301a_c8e323551d3c 58e5c17f_4d72_699f_2c09_20edb81c4cf5["_setByte()"] a62cfc26_17fe_4ffa_c982_878418dba986 -->|method| 58e5c17f_4d72_699f_2c09_20edb81c4cf5
Relationship Graph
Source Code
buffer/src/main/java/io/netty/buffer/PooledHeapByteBuf.java lines 26–253
class PooledHeapByteBuf extends PooledByteBuf<byte[]> {
private static final Recycler<PooledHeapByteBuf> RECYCLER =
new Recycler<PooledHeapByteBuf>() {
@Override
protected PooledHeapByteBuf newObject(Handle<PooledHeapByteBuf> handle) {
return new PooledHeapByteBuf(handle, 0);
}
};
static PooledHeapByteBuf newInstance(int maxCapacity) {
PooledHeapByteBuf buf = RECYCLER.get();
buf.reuse(maxCapacity);
return buf;
}
PooledHeapByteBuf(Handle<? extends PooledHeapByteBuf> recyclerHandle, int maxCapacity) {
super(recyclerHandle, maxCapacity);
}
@Override
public final boolean isDirect() {
return false;
}
@Override
protected byte _getByte(int index) {
return HeapByteBufUtil.getByte(memory, idx(index));
}
@Override
protected short _getShort(int index) {
return HeapByteBufUtil.getShort(memory, idx(index));
}
@Override
protected short _getShortLE(int index) {
return HeapByteBufUtil.getShortLE(memory, idx(index));
}
@Override
protected int _getUnsignedMedium(int index) {
return HeapByteBufUtil.getUnsignedMedium(memory, idx(index));
}
@Override
protected int _getUnsignedMediumLE(int index) {
return HeapByteBufUtil.getUnsignedMediumLE(memory, idx(index));
}
@Override
protected int _getInt(int index) {
return HeapByteBufUtil.getInt(memory, idx(index));
}
@Override
protected int _getIntLE(int index) {
return HeapByteBufUtil.getIntLE(memory, idx(index));
}
@Override
protected long _getLong(int index) {
return HeapByteBufUtil.getLong(memory, idx(index));
}
@Override
protected long _getLongLE(int index) {
return HeapByteBufUtil.getLongLE(memory, idx(index));
}
@Override
public final ByteBuf getBytes(int index, ByteBuf dst, int dstIndex, int length) {
checkDstIndex(index, length, dstIndex, dst.capacity());
if (dst.hasMemoryAddress() && PlatformDependent.hasUnsafe()) {
PlatformDependent.copyMemory(memory, idx(index), dst.memoryAddress() + dstIndex, length);
} else if (dst.hasArray()) {
getBytes(index, dst.array(), dst.arrayOffset() + dstIndex, length);
} else {
dst.setBytes(dstIndex, memory, idx(index), length);
}
return this;
Source
Frequently Asked Questions
What is the PooledHeapByteBuf class?
PooledHeapByteBuf is a class in the netty codebase, defined in buffer/src/main/java/io/netty/buffer/PooledHeapByteBuf.java.
Where is PooledHeapByteBuf defined?
PooledHeapByteBuf is defined in buffer/src/main/java/io/netty/buffer/PooledHeapByteBuf.java at line 26.
Analyze Your Own Codebase
Get architecture documentation, dependency graphs, and domain analysis for your codebase in minutes.
Try Supermodel Free