Home / Class/ HttpRequestDecoderUtils Class — netty Architecture

HttpRequestDecoderUtils Class — netty Architecture

Architecture documentation for the HttpRequestDecoderUtils class in HttpRequestDecoderUtils.java from the netty codebase.

Entity Profile

Dependency Diagram

graph TD
  4238d3ce_d2dd_3ee0_55c9_88e847323c66["HttpRequestDecoderUtils"]
  c5584060_5e32_6839_99d1_c7670262f582["HttpRequestDecoderUtils.java"]
  4238d3ce_d2dd_3ee0_55c9_88e847323c66 -->|defined in| c5584060_5e32_6839_99d1_c7670262f582
  72d7514f_2260_d6e5_34fc_e92c57b5ae55["HttpRequestDecoderUtils()"]
  4238d3ce_d2dd_3ee0_55c9_88e847323c66 -->|method| 72d7514f_2260_d6e5_34fc_e92c57b5ae55
  87ae15a1_acb3_35e5_ca46_81dfc1182314["createContent()"]
  4238d3ce_d2dd_3ee0_55c9_88e847323c66 -->|method| 87ae15a1_acb3_35e5_ca46_81dfc1182314

Relationship Graph

Source Code

microbench/src/main/java/io/netty/microbench/http/HttpRequestDecoderUtils.java lines 20–68

final class HttpRequestDecoderUtils {

    private HttpRequestDecoderUtils() {
    }

    static final byte[] CONTENT_MIXED_DELIMITERS = createContent("\r\n", "\n");
    static final int CONTENT_LENGTH = 120;

    private static byte[] createContent(String... lineDelimiters) {
        String lineDelimiter;
        String lineDelimiter2;
        if (lineDelimiters.length == 2) {
            lineDelimiter = lineDelimiters[0];
            lineDelimiter2 = lineDelimiters[1];
        } else {
            lineDelimiter = lineDelimiters[0];
            lineDelimiter2 = lineDelimiters[0];
        }
        // This GET request is incorrect but it does not matter for HttpRequestDecoder.
        // It used only to get a long request.
        return ("GET /some/path?foo=bar&wibble=eek HTTP/1.1" + "\r\n" +
                "Upgrade: WebSocket" + lineDelimiter2 +
                "Connection: Upgrade" + lineDelimiter +
                "Host: localhost" + lineDelimiter2 +
                "Referer: http://www.site.ru/index.html" + lineDelimiter +
                "User-Agent: Mozilla/5.0 (X11; U; Linux i686; ru; rv:1.9b5) Gecko/2008050509 Firefox/3.0b5" +
                lineDelimiter2 +
                "Accept: text/html" + lineDelimiter +
                "Cookie: income=1" + lineDelimiter2 +
                "Origin: http://localhost:8080" + lineDelimiter +
                "Sec-WebSocket-Key1: 10  28 8V7 8 48     0" + lineDelimiter2 +
                "Sec-WebSocket-Key2: 8 Xt754O3Q3QW 0   _60" + lineDelimiter +
                "Content-Type: application/x-www-form-urlencoded" + lineDelimiter2 +
                "Content-Length: " + CONTENT_LENGTH + lineDelimiter +
                "\r\n" +
                "1234567890\r\n" +
                "1234567890\r\n" +
                "1234567890\r\n" +
                "1234567890\r\n" +
                "1234567890\r\n" +
                "1234567890\r\n" +
                "1234567890\r\n" +
                "1234567890\r\n" +
                "1234567890\r\n" +
                "1234567890\r\n"
        ).getBytes(CharsetUtil.US_ASCII);
    }

}

Frequently Asked Questions

What is the HttpRequestDecoderUtils class?
HttpRequestDecoderUtils is a class in the netty codebase, defined in microbench/src/main/java/io/netty/microbench/http/HttpRequestDecoderUtils.java.
Where is HttpRequestDecoderUtils defined?
HttpRequestDecoderUtils is defined in microbench/src/main/java/io/netty/microbench/http/HttpRequestDecoderUtils.java at line 20.

Analyze Your Own Codebase

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

Try Supermodel Free