Interface SocketConfiguration

All Known Subinterfaces:
ServerConfiguration

public interface SocketConfiguration
The SocketConfiguration configures a port to listen on and its associated server socket parameters.
  • Field Details

    • DEFAULT_BACKLOG_SIZE

      static final int DEFAULT_BACKLOG_SIZE
      The default backlog size to configure the server sockets with if no other value is provided.
      See Also:
  • Method Details

    • name

      default String name()
      Name of this socket. Default to WebServer.DEFAULT_SOCKET_NAME for the main and default server socket. All other sockets must be named.
      Returns:
      name of this socket
    • port

      int port()
      Returns a server port to listen on with the server socket. If port is 0 then any available ephemeral port will be used.
      Returns:
      the server port of the server socket
    • bindAddress

      InetAddress bindAddress()
      Returns local address where the server listens on with the server socket. If null then listens an all local addresses.
      Returns:
      an address to bind with the server socket; null for all local addresses
    • backlog

      int backlog()
      Returns a maximum length of the queue of incoming connections on the server socket.

      Default value is DEFAULT_BACKLOG_SIZE.

      Returns:
      a maximum length of the queue of incoming connections
    • timeoutMillis

      int timeoutMillis()
      Returns a server socket timeout in milliseconds or 0 for an infinite timeout.
      Returns:
      a server socket timeout in milliseconds or 0
    • receiveBufferSize

      int receiveBufferSize()
      Returns proposed value of the TCP receive window that is advertised to the remote peer on the server socket.

      If 0 then use implementation default.

      Returns:
      a buffer size in bytes of the server socket or 0
    • tls

      Return a WebServerTls containing server TLS configuration. When empty Optional is returned no TLS should be configured.
      Returns:
      web server tls configuration
    • enabled

      default boolean enabled()
      Whether this socket is enabled (and will be opened on server startup), or disabled (and ignored on server startup).
      Returns:
      true for enabled socket, false for socket that should not be opened
    • maxHeaderSize

      int maxHeaderSize()
      Maximal size of all headers combined.
      Returns:
      size in bytes
    • maxInitialLineLength

      int maxInitialLineLength()
      Maximal length of the initial HTTP line.
      Returns:
      length
    • maxChunkSize

      int maxChunkSize()
      Maximal size of a single chunk of received data.
      Returns:
      chunk size
    • validateHeaders

      boolean validateHeaders()
      Whether to validate HTTP header names. When set to true, we make sure the header name is a valid string
      Returns:
      true if headers should be validated
    • enableCompression

      default boolean enableCompression()
      Whether to allow negotiation for a gzip/deflate content encoding. Supporting HTTP compression may interfere with application that use streaming and other similar features. Thus, it defaults to false.
      Returns:
      compression flag
    • maxPayloadSize

      default long maxPayloadSize()
      Maximum size allowed for an HTTP payload in a client request. A negative value indicates that there is no maximum set.
      Returns:
      maximum payload size
    • backpressureBufferSize

      default long backpressureBufferSize()
      Maximum length of the response data sending buffer can keep without flushing. Depends on `backpressure-policy` what happens if max buffer size is reached.
      Returns:
      maximum non-flushed data Netty can buffer until backpressure is applied
    • backpressureStrategy

      default BackpressureStrategy backpressureStrategy()
      Strategy for applying backpressure to the reactive stream of response data. Switched default to BackpressureStrategy.AUTO_FLUSH since 3.1.1.
      Returns:
      strategy identifier for applying backpressure
    • continueImmediately

      default boolean continueImmediately()
      When true WebServer answers with 100 continue immediately, not waiting for user to actually request the data. False is default value.
      Returns:
      strategy identifier for applying backpressure
    • initialBufferSize

      int initialBufferSize()
      Initial size of the buffer used to parse HTTP line and headers.
      Returns:
      initial size of the buffer
    • maxUpgradeContentLength

      default int maxUpgradeContentLength()
      Maximum length of the content of an upgrade request.
      Returns:
      maximum length of the content of an upgrade request
    • requestedUriDiscoveryContext

      RequestedUriDiscoveryContext requestedUriDiscoveryContext()
      Requested URI discovery settings.
      Returns:
      current settings
    • builder

      static SocketConfiguration.Builder builder()
      Creates a builder of SocketConfiguration class.
      Returns:
      a builder
    • create

      static SocketConfiguration create(String name)
      Create a default named configuration.
      Parameters:
      name - name of the socket
      Returns:
      a new socket configuration with defaults