Class Http3Settings.Builder

java.lang.Object
io.github.mahmoudimus.http3.Http3Settings.Builder
Enclosing class:
Http3Settings

public static final class Http3Settings.Builder extends Object
Builds Http3Settings, starting from the defaults.
  • Method Details

    • qpackMaxTableCapacity

      public Http3Settings.Builder qpackMaxTableCapacity(long v)
      Sets SETTINGS_QPACK_MAX_TABLE_CAPACITY.
      Parameters:
      v - the capacity in octets
      Returns:
      this builder
    • maxFieldSectionSize

      public Http3Settings.Builder maxFieldSectionSize(long v)
      Sets SETTINGS_MAX_FIELD_SECTION_SIZE.
      Parameters:
      v - the size in octets, or Http3Settings.UNLIMITED
      Returns:
      this builder
    • qpackBlockedStreams

      public Http3Settings.Builder qpackBlockedStreams(long v)
      Sets SETTINGS_QPACK_BLOCKED_STREAMS.
      Parameters:
      v - the number of streams
      Returns:
      this builder
    • enableConnectProtocol

      public Http3Settings.Builder enableConnectProtocol(boolean v)
      Sets SETTINGS_ENABLE_CONNECT_PROTOCOL.
      Parameters:
      v - whether extended CONNECT is accepted
      Returns:
      this builder
    • h3Datagram

      public Http3Settings.Builder h3Datagram(boolean v)
      Sets SETTINGS_H3_DATAGRAM.
      Parameters:
      v - whether HTTP Datagrams are accepted
      Returns:
      this builder
    • extension

      public Http3Settings.Builder extension(long id, long value)
      Adds an extension or reserved setting, sent after the defined ones.
      Parameters:
      id - the setting identifier
      value - its value
      Returns:
      this builder
    • grease

      public Http3Settings.Builder grease(long n, long value)
      Adds the reserved (greasing) setting 0x1f * n + 0x21 with the given value.
      Parameters:
      n - which reserved identifier, from 0
      value - its value
      Returns:
      this builder
    • build

      public Http3Settings build()
      Builds the settings.
      Returns:
      the settings