Home / Class/ DefaultHttpMessage Class — netty Architecture

DefaultHttpMessage Class — netty Architecture

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

Entity Profile

Dependency Diagram

graph TD
  3ce28620_c2eb_40ee_dc7d_fe8489fb510d["DefaultHttpMessage"]
  8f3491ac_148d_2e78_6d2f_9cbb2ed5fbfd["DefaultHttpMessage.java"]
  3ce28620_c2eb_40ee_dc7d_fe8489fb510d -->|defined in| 8f3491ac_148d_2e78_6d2f_9cbb2ed5fbfd
  eb069bc5_c5e7_2a48_b40c_d7d6a24dc0bf["DefaultHttpMessage()"]
  3ce28620_c2eb_40ee_dc7d_fe8489fb510d -->|method| eb069bc5_c5e7_2a48_b40c_d7d6a24dc0bf
  2c7ae5f6_d57c_39e8_bd0f_6d3d69350c23["HttpHeaders()"]
  3ce28620_c2eb_40ee_dc7d_fe8489fb510d -->|method| 2c7ae5f6_d57c_39e8_bd0f_6d3d69350c23
  25f30865_87d2_7bc3_8980_84df4f2067f8["HttpVersion()"]
  3ce28620_c2eb_40ee_dc7d_fe8489fb510d -->|method| 25f30865_87d2_7bc3_8980_84df4f2067f8
  686b1f42_852d_3032_c756_b59c9ea011ba["hashCode()"]
  3ce28620_c2eb_40ee_dc7d_fe8489fb510d -->|method| 686b1f42_852d_3032_c756_b59c9ea011ba
  355be335_b7b5_9dff_3f4e_7ce7597e77d2["equals()"]
  3ce28620_c2eb_40ee_dc7d_fe8489fb510d -->|method| 355be335_b7b5_9dff_3f4e_7ce7597e77d2
  993eea48_3d30_eebb_63c1_bce9d2f7ccbe["HttpMessage()"]
  3ce28620_c2eb_40ee_dc7d_fe8489fb510d -->|method| 993eea48_3d30_eebb_63c1_bce9d2f7ccbe

Relationship Graph

Source Code

codec-http/src/main/java/io/netty/handler/codec/http/DefaultHttpMessage.java lines 23–107

public abstract class DefaultHttpMessage extends DefaultHttpObject implements HttpMessage {
    private static final int HASH_CODE_PRIME = 31;
    private HttpVersion version;
    private final HttpHeaders headers;

    /**
     * Creates a new instance.
     */
    protected DefaultHttpMessage(final HttpVersion version) {
        this(version, DefaultHttpHeadersFactory.headersFactory());
    }

    /**
     * Creates a new instance.
     * <p>
     * @deprecated Use the {@link #DefaultHttpMessage(HttpVersion, HttpHeadersFactory)} constructor instead,
     * ideally using the {@link DefaultHttpHeadersFactory#headersFactory()},
     * or a factory that otherwise has validation enabled.
     */
    @Deprecated
    protected DefaultHttpMessage(final HttpVersion version, boolean validateHeaders, boolean singleFieldHeaders) {
        this(version, DefaultHttpHeadersFactory.headersFactory()
                .withValidation(validateHeaders)
                .withCombiningHeaders(singleFieldHeaders));
    }

    /**
     * Creates a new instance.
     */
    protected DefaultHttpMessage(HttpVersion version, HttpHeadersFactory headersFactory) {
        this(version, headersFactory.newHeaders());
    }

    /**
     * Creates a new instance.
     */
    protected DefaultHttpMessage(final HttpVersion version, HttpHeaders headers) {
        this.version = checkNotNull(version, "version");
        this.headers = checkNotNull(headers, "headers");
    }

    @Override
    public HttpHeaders headers() {
        return headers;
    }

    @Override
    @Deprecated
    public HttpVersion getProtocolVersion() {
        return protocolVersion();
    }

    @Override
    public HttpVersion protocolVersion() {
        return version;
    }

    @Override
    public int hashCode() {
        int result = 1;
        result = HASH_CODE_PRIME * result + headers.hashCode();
        result = HASH_CODE_PRIME * result + version.hashCode();
        result = HASH_CODE_PRIME * result + super.hashCode();
        return result;
    }

    @Override
    public boolean equals(Object o) {
        if (!(o instanceof DefaultHttpMessage)) {
            return false;
        }

        DefaultHttpMessage other = (DefaultHttpMessage) o;

        return headers().equals(other.headers()) &&
               protocolVersion().equals(other.protocolVersion()) &&
               super.equals(o);
    }

    @Override
    public HttpMessage setProtocolVersion(HttpVersion version) {

Frequently Asked Questions

What is the DefaultHttpMessage class?
DefaultHttpMessage is a class in the netty codebase, defined in codec-http/src/main/java/io/netty/handler/codec/http/DefaultHttpMessage.java.
Where is DefaultHttpMessage defined?
DefaultHttpMessage is defined in codec-http/src/main/java/io/netty/handler/codec/http/DefaultHttpMessage.java at line 23.

Analyze Your Own Codebase

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

Try Supermodel Free