testDuplicateReleaseOriginal() — netty Function Reference
Architecture documentation for the testDuplicateReleaseOriginal() function in AbstractByteBufTest.java from the netty codebase.
Entity Profile
Dependency Diagram
graph TD 597da2bf_9ebe_2bbe_9289_a7848cd19502["testDuplicateReleaseOriginal()"] 6540f2d1_cdad_6705_dd1d_9a24e2e53242["AbstractByteBufTest"] 597da2bf_9ebe_2bbe_9289_a7848cd19502 -->|defined in| 6540f2d1_cdad_6705_dd1d_9a24e2e53242 a3a4b702_52e8_b15f_5ec5_567b5252d18d["testRetainedDuplicateReleaseOriginal1()"] a3a4b702_52e8_b15f_5ec5_567b5252d18d -->|calls| 597da2bf_9ebe_2bbe_9289_a7848cd19502 3d2c40aa_a555_f5fd_001e_4ea21c87fe6c["testRetainedDuplicateReleaseOriginal2()"] 3d2c40aa_a555_f5fd_001e_4ea21c87fe6c -->|calls| 597da2bf_9ebe_2bbe_9289_a7848cd19502 264d52a4_b2dd_9445_a246_87e88abdeb59["testRetainedDuplicateReleaseOriginal3()"] 264d52a4_b2dd_9445_a246_87e88abdeb59 -->|calls| 597da2bf_9ebe_2bbe_9289_a7848cd19502 4c792b15_173d_d514_a49f_79af9ad56473["testRetainedDuplicateReleaseOriginal4()"] 4c792b15_173d_d514_a49f_79af9ad56473 -->|calls| 597da2bf_9ebe_2bbe_9289_a7848cd19502 style 597da2bf_9ebe_2bbe_9289_a7848cd19502 fill:#6366f1,stroke:#818cf8,color:#fff
Relationship Graph
Source Code
buffer/src/test/java/io/netty/buffer/AbstractByteBufTest.java lines 5602–5631
private void testDuplicateReleaseOriginal(boolean retainedDuplicate1, boolean retainedDuplicate2) {
ByteBuf buf = newBuffer(8).resetWriterIndex();
ByteBuf expected = newBuffer(8).resetWriterIndex();
buf.writeBytes(new byte[] {1, 2, 3, 4, 5, 6, 7, 8});
expected.writeBytes(buf, buf.readerIndex(), buf.readableBytes());
ByteBuf dup1 = retainedDuplicate1 ? buf.retainedDuplicate()
: buf.duplicate().retain();
assertEquals(0, dup1.compareTo(expected));
// Simulate a handler that releases the original buffer, and propagates a slice.
buf.release();
ByteBuf dup2 = retainedDuplicate2 ? dup1.retainedDuplicate()
: dup1.duplicate().retain();
assertEquals(0, dup2.compareTo(expected));
// Cleanup the expected buffers used for testing.
assertTrue(expected.release());
// The handler created a slice of the slice and is now done with it.
dup2.release();
// The handler is now done with the original slice
assertTrue(dup1.release());
// Reference counting may be shared, or may be independently tracked, but at this point all buffers should
// be deallocated and have a reference count of 0.
assertEquals(0, buf.refCnt());
assertEquals(0, dup1.refCnt());
assertEquals(0, dup2.refCnt());
}
Domain
Subdomains
Called By
Source
Frequently Asked Questions
What does testDuplicateReleaseOriginal() do?
testDuplicateReleaseOriginal() is a function in the netty codebase, defined in buffer/src/test/java/io/netty/buffer/AbstractByteBufTest.java.
Where is testDuplicateReleaseOriginal() defined?
testDuplicateReleaseOriginal() is defined in buffer/src/test/java/io/netty/buffer/AbstractByteBufTest.java at line 5602.
What calls testDuplicateReleaseOriginal()?
testDuplicateReleaseOriginal() is called by 4 function(s): testRetainedDuplicateReleaseOriginal1, testRetainedDuplicateReleaseOriginal2, testRetainedDuplicateReleaseOriginal3, testRetainedDuplicateReleaseOriginal4.
Analyze Your Own Codebase
Get architecture documentation, dependency graphs, and domain analysis for your codebase in minutes.
Try Supermodel Free