Home / Function/ removeHttpDataFromCleanShouldIdentifiesDataByTheirIdentities() — netty Function Reference

removeHttpDataFromCleanShouldIdentifiesDataByTheirIdentities() — netty Function Reference

Architecture documentation for the removeHttpDataFromCleanShouldIdentifiesDataByTheirIdentities() function in DefaultHttpDataFactoryTest.java from the netty codebase.

Entity Profile

Dependency Diagram

graph TD
  73d199c8_2a99_aaa1_67ab_19580ad0cd07["removeHttpDataFromCleanShouldIdentifiesDataByTheirIdentities()"]
  1a20c5f5_1b82_e72a_f3bd_2eeffc52e856["DefaultHttpDataFactoryTest"]
  73d199c8_2a99_aaa1_67ab_19580ad0cd07 -->|defined in| 1a20c5f5_1b82_e72a_f3bd_2eeffc52e856
  style 73d199c8_2a99_aaa1_67ab_19580ad0cd07 fill:#6366f1,stroke:#818cf8,color:#fff

Relationship Graph

Source Code

codec-http/src/test/java/io/netty/handler/codec/http/multipart/DefaultHttpDataFactoryTest.java lines 117–163

    @Test
    public void removeHttpDataFromCleanShouldIdentifiesDataByTheirIdentities() throws Exception {
        // Create some equal data items belonging to the same request
        Attribute attribute1 = factory.createAttribute(req1, "attribute", "value");
        Attribute attribute2 = factory.createAttribute(req1, "attribute", "value");
        FileUpload file1 = factory.createFileUpload(
                req1, "file", "file.txt",
                DEFAULT_TEXT_CONTENT_TYPE, IDENTITY.toString(), UTF_8, 123
        );
        FileUpload file2 = factory.createFileUpload(
                req1, "file", "file.txt",
                DEFAULT_TEXT_CONTENT_TYPE, IDENTITY.toString(), UTF_8, 123
        );
        file1.setContent(Unpooled.copiedBuffer("file content", UTF_8));
        file2.setContent(Unpooled.copiedBuffer("file content", UTF_8));

        // Before doing anything, assert that the data items are equal
        assertEquals(attribute1.hashCode(), attribute2.hashCode());
        assertTrue(attribute1.equals(attribute2));
        assertEquals(file1.hashCode(), file2.hashCode());
        assertTrue(file1.equals(file2));

        // Remove attribute2 and file2 from being cleaned up by factory
        factory.removeHttpDataFromClean(req1, attribute2);
        factory.removeHttpDataFromClean(req1, file2);

        // Clean up by req1
        factory.cleanRequestHttpData(req1);

        // Assert that attribute1 and file1 have been cleaned up
        assertNull(attribute1.getByteBuf());
        assertNull(file1.getByteBuf());
        assertEquals(0, attribute1.refCnt());
        assertEquals(0, file1.refCnt());

        // But not attribute2 and file2
        assertNotNull(attribute2.getByteBuf());
        assertNotNull(file2.getByteBuf());
        assertEquals(1, attribute2.refCnt());
        assertEquals(1, file2.refCnt());

        // Cleanup attribute2 and file2 manually to avoid memory leak, not via factory
        attribute2.release();
        file2.release();
        assertEquals(0, attribute2.refCnt());
        assertEquals(0, file2.refCnt());
    }

Domain

Subdomains

Frequently Asked Questions

What does removeHttpDataFromCleanShouldIdentifiesDataByTheirIdentities() do?
removeHttpDataFromCleanShouldIdentifiesDataByTheirIdentities() is a function in the netty codebase, defined in codec-http/src/test/java/io/netty/handler/codec/http/multipart/DefaultHttpDataFactoryTest.java.
Where is removeHttpDataFromCleanShouldIdentifiesDataByTheirIdentities() defined?
removeHttpDataFromCleanShouldIdentifiesDataByTheirIdentities() is defined in codec-http/src/test/java/io/netty/handler/codec/http/multipart/DefaultHttpDataFactoryTest.java at line 117.

Analyze Your Own Codebase

Get architecture documentation, dependency graphs, and domain analysis for your codebase in minutes.

Try Supermodel Free