PooledNonRetainedSlicedByteBuf Class — netty Architecture
Architecture documentation for the PooledNonRetainedSlicedByteBuf class in AbstractPooledDerivedByteBuf.java from the netty codebase.
Entity Profile
Dependency Diagram
graph TD 45cc4645_1f82_3f18_df6c_b83f8845f12c["PooledNonRetainedSlicedByteBuf"] cdd4ec24_c048_f96a_9a21_1774c004b2a8["AbstractPooledDerivedByteBuf.java"] 45cc4645_1f82_3f18_df6c_b83f8845f12c -->|defined in| cdd4ec24_c048_f96a_9a21_1774c004b2a8 47cad22d_46d2_43da_b56a_8b5a16c278f0["PooledNonRetainedSlicedByteBuf()"] 45cc4645_1f82_3f18_df6c_b83f8845f12c -->|method| 47cad22d_46d2_43da_b56a_8b5a16c278f0 6657bc19_6e7b_1429_2309_874d6cdfc140["isAccessible0()"] 45cc4645_1f82_3f18_df6c_b83f8845f12c -->|method| 6657bc19_6e7b_1429_2309_874d6cdfc140 3ea60983_7505_4218_5f7f_ef06b06828fe["refCnt0()"] 45cc4645_1f82_3f18_df6c_b83f8845f12c -->|method| 3ea60983_7505_4218_5f7f_ef06b06828fe b1042c1b_7c87_3f82_acd1_776cedbdff82["ByteBuf()"] 45cc4645_1f82_3f18_df6c_b83f8845f12c -->|method| b1042c1b_7c87_3f82_acd1_776cedbdff82 affe9976_c320_f3ae_2409_caad5586b365["release0()"] 45cc4645_1f82_3f18_df6c_b83f8845f12c -->|method| affe9976_c320_f3ae_2409_caad5586b365
Relationship Graph
Source Code
buffer/src/main/java/io/netty/buffer/AbstractPooledDerivedByteBuf.java lines 248–329
private static final class PooledNonRetainedSlicedByteBuf extends UnpooledSlicedByteBuf {
private final ByteBuf referenceCountDelegate;
PooledNonRetainedSlicedByteBuf(ByteBuf referenceCountDelegate,
AbstractByteBuf buffer, int index, int length) {
super(buffer, index, length);
this.referenceCountDelegate = referenceCountDelegate;
}
@Override
boolean isAccessible0() {
return referenceCountDelegate.isAccessible();
}
@Override
int refCnt0() {
return referenceCountDelegate.refCnt();
}
@Override
ByteBuf retain0() {
referenceCountDelegate.retain();
return this;
}
@Override
ByteBuf retain0(int increment) {
referenceCountDelegate.retain(increment);
return this;
}
@Override
ByteBuf touch0() {
referenceCountDelegate.touch();
return this;
}
@Override
ByteBuf touch0(Object hint) {
referenceCountDelegate.touch(hint);
return this;
}
@Override
boolean release0() {
return referenceCountDelegate.release();
}
@Override
boolean release0(int decrement) {
return referenceCountDelegate.release(decrement);
}
@Override
public ByteBuf duplicate() {
ensureAccessible();
return new PooledNonRetainedDuplicateByteBuf(referenceCountDelegate, unwrap())
.setIndex(idx(readerIndex()), idx(writerIndex()));
}
@Override
public ByteBuf retainedDuplicate() {
return PooledDuplicatedByteBuf.newInstance(unwrap(), this, idx(readerIndex()), idx(writerIndex()));
}
@Override
public ByteBuf slice(int index, int length) {
checkIndex(index, length);
return new PooledNonRetainedSlicedByteBuf(referenceCountDelegate, unwrap(), idx(index), length);
}
@Override
public ByteBuf retainedSlice() {
// Capacity is not allowed to change for a sliced ByteBuf, so length == capacity()
return retainedSlice(0, capacity());
}
@Override
public ByteBuf retainedSlice(int index, int length) {
return PooledSlicedByteBuf.newInstance(unwrap(), this, idx(index), length);
}
Source
Frequently Asked Questions
What is the PooledNonRetainedSlicedByteBuf class?
PooledNonRetainedSlicedByteBuf is a class in the netty codebase, defined in buffer/src/main/java/io/netty/buffer/AbstractPooledDerivedByteBuf.java.
Where is PooledNonRetainedSlicedByteBuf defined?
PooledNonRetainedSlicedByteBuf is defined in buffer/src/main/java/io/netty/buffer/AbstractPooledDerivedByteBuf.java at line 248.
Analyze Your Own Codebase
Get architecture documentation, dependency graphs, and domain analysis for your codebase in minutes.
Try Supermodel Free