Interface Http1Config

All Superinterfaces:
HttpConfig, NamedService, NamedService, ProtocolConfig, Prototype.Api
All Known Implementing Classes:
Http1Config.BuilderBase.Http1ConfigImpl

public interface Http1Config extends Prototype.Api, HttpConfig
HTTP/1.1 server configuration.
See Also:
  • Method Details

    • builder

      static Http1Config.Builder builder()
      Create a new fluent API builder to customize configuration.
      Returns:
      a new builder
    • builder

      static Http1Config.Builder builder(Http1Config instance)
      Create a new fluent API builder from an existing instance.
      Parameters:
      instance - an existing instance used as a base for the builder
      Returns:
      a builder based on an instance
    • create

      static Http1Config create(Config config)
      Create a new instance from configuration.
      Parameters:
      config - used to configure the new instance
      Returns:
      a new instance configured from configuration
    • create

      @Deprecated static Http1Config create(Config config)
      Create a new instance from configuration.
      Parameters:
      config - used to configure the new instance
      Returns:
      a new instance configured from configuration
    • create

      static Http1Config create()
      Create a new instance with default values.
      Returns:
      a new instance
    • type

      default String type()
      Protocol configuration type.
      Specified by:
      type in interface NamedService
      Specified by:
      type in interface NamedService
      Returns:
      type of this configuration
    • name

      String name()
      Name of this configuration, in most cases the same as type().
      Specified by:
      name in interface NamedService
      Specified by:
      name in interface NamedService
      Returns:
      name of this configuration
    • maxPrologueLength

      int maxPrologueLength()
      Maximal size of received HTTP prologue (GET /path HTTP/1.1).
      Returns:
      maximal size in bytes
    • maxHeadersSize

      int maxHeadersSize()
      Maximal size of received headers in bytes.
      Returns:
      maximal header size
    • validateRequestHostHeader

      @Deprecated(since="4.1.3", forRemoval=true) boolean validateRequestHostHeader()
      Deprecated, for removal: This API element is subject to removal in a future version.
      this switch exists for temporary backward compatible behavior, and will be removed in a future Helidon version
      Request host header validation. When host header is invalid, we return Status.BAD_REQUEST_400.

      The validation is done according to RFC-3986 (see UriValidator). This is a requirement of the HTTP specification.

      This option allows you to disable the "full-blown" validation ("simple" validation is still in - the port must be parseable to integer).

      Returns:
      whether to do a full validation of Host header according to the specification
    • sendKeepAliveHeader

      boolean sendKeepAliveHeader()
      Whether to send the default Connection: keep-alive response header for persistent HTTP/1.1 connections.

      RFC 9112 does not require this header for persistent connections, but Helidon 4 defaults to true for backward compatibility. Set this to false to omit the header unless the application sets it explicitly.

      Returns:
      whether to send the default keep-alive response header
    • validatePrologue

      boolean validatePrologue()
      If set to false, any query and fragment is accepted (even containing illegal characters). Validation of path is controlled by validatePath().
      Returns:
      whether to validate prologue query and fragment
    • validatePath

      boolean validatePath()
      If set to false, any path is accepted (even containing illegal characters).
      Returns:
      whether to validate path
    • continueImmediately

      boolean continueImmediately()
      When true WebServer answers to expect continue with 100 continue immediately, not waiting for user to actually request the data.
      Returns:
      if true answer with 100 continue immediately after expect continue
    • requestedUriDiscovery

      RequestedUriDiscoveryContext requestedUriDiscovery()
      Requested URI discovery settings.
      Returns:
      settings for computing the requested URI
    • sendListeners

      List<Http1ConnectionListener> sendListeners()
      Connection send event listeners for HTTP/1.1.
      Returns:
      send event listeners
    • receiveListeners

      List<Http1ConnectionListener> receiveListeners()
      Connection receive event listeners for HTTP/1.1.
      Returns:
      receive event listeners
    • compositeSendListener

      Http1ConnectionListener compositeSendListener()
      A single send listener, this value is computed.
      Returns:
      send listener
    • compositeReceiveListener

      Http1ConnectionListener compositeReceiveListener()
      A single receive listener, this value is computed.
      Returns:
      receive listener
    • receiveLog

      @Deprecated(since="4.5.0", forRemoval=true) boolean receiveLog()
      Deprecated, for removal: This API element is subject to removal in a future version.
      Logging of received packets. Uses trace and debug levels on logger of Http1LoggingConnectionListener with suffix of .recv`.
      Returns:
      true if logging should be enabled for received packets, false if no logging should be done
    • sendLog

      @Deprecated(since="4.5.0", forRemoval=true) boolean sendLog()
      Deprecated, for removal: This API element is subject to removal in a future version.
      Logging of sent packets. Uses trace and debug levels on logger of Http1LoggingConnectionListener with suffix of .send`.
      Returns:
      true if logging should be enabled for sent packets, false if no logging should be done