Home / Type/ Http3SettingsFrame Type — netty Architecture

Http3SettingsFrame Type — netty Architecture

Architecture documentation for the Http3SettingsFrame type/interface in Http3SettingsFrame.java from the netty codebase.

Entity Profile

Dependency Diagram

graph TD
  950b191e_2b60_706a_0dbb_8d9c81c01f1a["Http3SettingsFrame"]
  012d606f_f768_a772_4c5b_c51329391ac5["Http3SettingsFrame.java"]
  950b191e_2b60_706a_0dbb_8d9c81c01f1a -->|defined in| 012d606f_f768_a772_4c5b_c51329391ac5
  style 950b191e_2b60_706a_0dbb_8d9c81c01f1a fill:#6366f1,stroke:#818cf8,color:#fff

Relationship Graph

Source Code

codec-http3/src/main/java/io/netty/handler/codec/http3/Http3SettingsFrame.java lines 25–111

public interface Http3SettingsFrame extends Http3ControlStreamFrame, Iterable<Map.Entry<Long, Long>> {

    /**
     * @deprecated Use {@link Http3SettingIdentifier#HTTP3_SETTINGS_QPACK_MAX_TABLE_CAPACITY} instead.
     * See <a href="https://tools.ietf.org/html/draft-ietf-quic-qpack-19#section-5">
     * SETTINGS_QPACK_MAX_TABLE_CAPACITY</a>.
     */
    @Deprecated
    long HTTP3_SETTINGS_QPACK_MAX_TABLE_CAPACITY = Http3SettingIdentifier.HTTP3_SETTINGS_QPACK_MAX_TABLE_CAPACITY.id();

    /**
     * @deprecated Use {@link Http3SettingIdentifier#HTTP3_SETTINGS_QPACK_BLOCKED_STREAMS} instead.
     * See <a href="https://tools.ietf.org/html/draft-ietf-quic-qpack-19#section-5">
     * SETTINGS_QPACK_BLOCKED_STREAMS</a>.
     */
    @Deprecated
    long HTTP3_SETTINGS_QPACK_BLOCKED_STREAMS = Http3SettingIdentifier.HTTP3_SETTINGS_QPACK_BLOCKED_STREAMS.id();

    /**
     * @deprecated Use {@link Http3SettingIdentifier#HTTP3_SETTINGS_ENABLE_CONNECT_PROTOCOL} instead.
     * See <a href="https://www.rfc-editor.org/rfc/rfc9220.html#section-5">
     * SETTINGS_ENABLE_CONNECT_PROTOCOL</a>.
     */
    @Deprecated
    long HTTP3_SETTINGS_ENABLE_CONNECT_PROTOCOL = Http3SettingIdentifier.HTTP3_SETTINGS_ENABLE_CONNECT_PROTOCOL.id();

    /**
     * @deprecated Use {@link Http3SettingIdentifier#HTTP3_SETTINGS_MAX_FIELD_SECTION_SIZE} instead.
     * See <a href="https://tools.ietf.org/html/draft-ietf-quic-http-32#section-7.2.4.1">
     * SETTINGS_MAX_FIELD_SECTION_SIZE</a>.
     */
    @Deprecated
    long HTTP3_SETTINGS_MAX_FIELD_SECTION_SIZE = Http3SettingIdentifier.HTTP3_SETTINGS_MAX_FIELD_SECTION_SIZE.id();

    default Http3Settings settings() {
        throw new UnsupportedOperationException(
                "Http3SettingsFrame.settings() not implemented in this version");
    }

    @Override
    default long type() {
        return Http3CodecUtils.HTTP3_SETTINGS_FRAME_TYPE;
    }

    /**
     * Get a setting from the frame.
     *
     * @param key   the key of the setting.
     * @return      the value of the setting or {@code null} if none was found with the given key.
     * @deprecated Use typed accessors via {@link #settings()} instead.
     * For example, {@code frame.settings().connectProtocolEnabled()}.
     */
    @Deprecated
    @Nullable
    default Long get(long key) {
        return settings().get(key);
    }

    /**
     * Get a setting from the frame.
     *
     * @param key   the key of the setting.
     * @param defaultValue If the setting does not exist.
     * @return the value of the setting or {@code defaultValue} if none was found with the given key.
     * @deprecated Use typed accessors via {@link #settings()} instead.
     * * For example, {@code frame.settings().qpackBlockedStreams()}.
     */
    @Deprecated
    default Long getOrDefault(long key, long defaultValue) {
        final Long val = get(key);
        return val == null ? defaultValue : val;
    }

    /**
     * Put a setting in the frame.
     *
     * @param key       the key of the setting
     * @param value     the value of the setting.
     * @return          the previous stored valued for the given key or {@code null} if none was stored before.
     * @deprecated Use typed accessors via {@link #settings()} instead.
     * * For example, {@code frame.settings().enableConnectProtocol(true)}.

Frequently Asked Questions

What is the Http3SettingsFrame type?
Http3SettingsFrame is a type/interface in the netty codebase, defined in codec-http3/src/main/java/io/netty/handler/codec/http3/Http3SettingsFrame.java.
Where is Http3SettingsFrame defined?
Http3SettingsFrame is defined in codec-http3/src/main/java/io/netty/handler/codec/http3/Http3SettingsFrame.java at line 25.

Analyze Your Own Codebase

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

Try Supermodel Free