Home / Function/ testSpdySessionHandlerGoAway() — netty Function Reference

testSpdySessionHandlerGoAway() — netty Function Reference

Architecture documentation for the testSpdySessionHandlerGoAway() function in SpdySessionHandlerTest.java from the netty codebase.

Function java Buffer Allocators calls 5 called by 2

Entity Profile

Dependency Diagram

graph TD
  fc0303da_b005_411c_9ecc_10715887fee7["testSpdySessionHandlerGoAway()"]
  8cf70e1a_42ea_1993_5d10_4e8bc2411532["SpdySessionHandlerTest"]
  fc0303da_b005_411c_9ecc_10715887fee7 -->|defined in| 8cf70e1a_42ea_1993_5d10_4e8bc2411532
  64163465_b130_906b_3ea3_aa215159796d["testSpdyClientSessionHandlerGoAway()"]
  64163465_b130_906b_3ea3_aa215159796d -->|calls| fc0303da_b005_411c_9ecc_10715887fee7
  978dc37d_b342_0a81_48b3_b748ccef651e["testSpdyServerSessionHandlerGoAway()"]
  978dc37d_b342_0a81_48b3_b748ccef651e -->|calls| fc0303da_b005_411c_9ecc_10715887fee7
  711f3e19_b210_9c43_500f_2d54a946afd4["EchoHandler()"]
  fc0303da_b005_411c_9ecc_10715887fee7 -->|calls| 711f3e19_b210_9c43_500f_2d54a946afd4
  2045fa36_f8b8_b510_db9a_dddc7845a2b1["assertSynReply()"]
  fc0303da_b005_411c_9ecc_10715887fee7 -->|calls| 2045fa36_f8b8_b510_db9a_dddc7845a2b1
  2430ecbe_5fd8_01c8_bb12_fbbd3a76314e["assertDataFrame()"]
  fc0303da_b005_411c_9ecc_10715887fee7 -->|calls| 2430ecbe_5fd8_01c8_bb12_fbbd3a76314e
  8e718148_fcdf_bd12_c452_390317a3ce70["assertGoAway()"]
  fc0303da_b005_411c_9ecc_10715887fee7 -->|calls| 8e718148_fcdf_bd12_c452_390317a3ce70
  eb2eca19_b9ab_73bf_fcff_cc734d15ad0e["assertRstStream()"]
  fc0303da_b005_411c_9ecc_10715887fee7 -->|calls| eb2eca19_b9ab_73bf_fcff_cc734d15ad0e
  style fc0303da_b005_411c_9ecc_10715887fee7 fill:#6366f1,stroke:#818cf8,color:#fff

Relationship Graph

Source Code

codec-http/src/test/java/io/netty/handler/codec/spdy/SpdySessionHandlerTest.java lines 239–284

    private static void testSpdySessionHandlerGoAway(SpdyVersion version, boolean server) {
        EmbeddedChannel sessionHandler = new EmbeddedChannel(
                new SpdySessionHandler(version, server), new EchoHandler(closeSignal, server));

        while (sessionHandler.readOutbound() != null) {
            continue;
        }

        int localStreamId = server ? 1 : 2;

        SpdySynStreamFrame spdySynStreamFrame =
                new DefaultSpdySynStreamFrame(localStreamId, 0, (byte) 0);
        spdySynStreamFrame.headers().set("compression", "test");

        SpdyDataFrame spdyDataFrame = new DefaultSpdyDataFrame(localStreamId);
        spdyDataFrame.setLast(true);

        // Send an initial request
        sessionHandler.writeInbound(spdySynStreamFrame);
        assertSynReply(sessionHandler.readOutbound(), localStreamId, false, spdySynStreamFrame.headers());
        assertNull(sessionHandler.readOutbound());
        sessionHandler.writeInbound(spdyDataFrame);
        assertDataFrame(sessionHandler.readOutbound(), localStreamId, true);
        assertNull(sessionHandler.readOutbound());

        // Check if session handler sends a GOAWAY frame when closing
        sessionHandler.writeInbound(closeMessage);
        assertGoAway(sessionHandler.readOutbound(), localStreamId);
        assertNull(sessionHandler.readOutbound());
        localStreamId += 2;

        // Check if session handler returns REFUSED_STREAM if it receives
        // SYN_STREAM frames after sending a GOAWAY frame
        spdySynStreamFrame.setStreamId(localStreamId);
        sessionHandler.writeInbound(spdySynStreamFrame);
        assertRstStream(sessionHandler.readOutbound(), localStreamId, SpdyStreamStatus.REFUSED_STREAM);
        assertNull(sessionHandler.readOutbound());

        // Check if session handler ignores Data frames after sending
        // a GOAWAY frame
        spdyDataFrame.setStreamId(localStreamId);
        sessionHandler.writeInbound(spdyDataFrame);
        assertNull(sessionHandler.readOutbound());

        sessionHandler.finish();
    }

Domain

Subdomains

Frequently Asked Questions

What does testSpdySessionHandlerGoAway() do?
testSpdySessionHandlerGoAway() is a function in the netty codebase, defined in codec-http/src/test/java/io/netty/handler/codec/spdy/SpdySessionHandlerTest.java.
Where is testSpdySessionHandlerGoAway() defined?
testSpdySessionHandlerGoAway() is defined in codec-http/src/test/java/io/netty/handler/codec/spdy/SpdySessionHandlerTest.java at line 239.
What does testSpdySessionHandlerGoAway() call?
testSpdySessionHandlerGoAway() calls 5 function(s): EchoHandler, assertDataFrame, assertGoAway, assertRstStream, assertSynReply.
What calls testSpdySessionHandlerGoAway()?
testSpdySessionHandlerGoAway() is called by 2 function(s): testSpdyClientSessionHandlerGoAway, testSpdyServerSessionHandlerGoAway.

Analyze Your Own Codebase

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

Try Supermodel Free