Packages

class BlazeServerBuilder[F[_]] extends ServerBuilder[F] with BlazeBackendBuilder[Server[F]]

BlazeBuilder is the component for the builder pattern aggregating different components to finally serve requests.

Variables:

Source
BlazeServerBuilder.scala
Linear Supertypes
BlazeBackendBuilder[Server[F]], ServerBuilder[F], BackendBuilder[F, Server[F]], AnyRef, Any
Ordering
  1. Alphabetic
  2. By Inheritance
Inherited
  1. BlazeServerBuilder
  2. BlazeBackendBuilder
  3. ServerBuilder
  4. BackendBuilder
  5. AnyRef
  6. Any
  1. Hide All
  2. Show All
Visibility
  1. Public
  2. All

Instance Constructors

  1. new BlazeServerBuilder(socketAddress: InetSocketAddress, executionContext: ExecutionContext, responseHeaderTimeout: Duration, idleTimeout: Duration, isNio2: Boolean, connectorPoolSize: Int, bufferSize: Int, selectorThreadFactory: ThreadFactory, enableWebSockets: Boolean, sslConfig: SslConfig[F], isHttp2Enabled: Boolean, maxRequestLineLen: Int, maxHeadersLen: Int, chunkBufferMaxSize: Int, httpApp: HttpApp[F], serviceErrorHandler: ServiceErrorHandler[F], banner: Seq[String], maxConnections: Int, channelOptions: ChannelOptions)(implicit F: ConcurrentEffect[F], timer: Timer[F])
    Annotations
    @deprecated
    Deprecated

    (Since version 0.21.17) Use BlazeServerBuilder.apply and configure with with methods

Type Members

  1. type Self = BlazeServerBuilder[F]
    Definition Classes
    BlazeServerBuilder → BlazeBackendBuilder → ServerBuilder

Value Members

  1. def allocated: F[(Server[F], F[Unit])]

    Returns an effect that allocates a backend and an F[Unit] to release it.

    Returns an effect that allocates a backend and an F[Unit] to release it. The returned F waits until the backend is ready to process requests. The second element of the tuple shuts down the backend when run.

    Unlike resource and stream, there is no automatic release of the backend. This function is intended for REPL sessions, tests, and other situations where composing a cats.effect.Resource or fs2.Stream is not tenable. resource or stream is recommended wherever possible.

    Definition Classes
    BackendBuilder
  2. final def bindAny(host: String = defaults.IPv4Host): Self
    Definition Classes
    ServerBuilder
  3. final def bindHttp(port: Int = defaults.HttpPort, host: String = defaults.IPv4Host): Self
    Definition Classes
    ServerBuilder
  4. final def bindLocal(port: Int): Self
    Definition Classes
    ServerBuilder
  5. def bindSocketAddress(socketAddress: InetSocketAddress): Self
    Definition Classes
    BlazeServerBuilderServerBuilder
  6. def channelOption[A](socketOption: SocketOption[A]): Option[A]
    Definition Classes
    BlazeBackendBuilder
  7. val channelOptions: ChannelOptions
    Definition Classes
    BlazeServerBuilder → BlazeBackendBuilder
  8. def enableHttp2(enabled: Boolean): Self
  9. def resource: Resource[F, Server[F]]

    Returns a Server resource.

    Returns a Server resource. The resource is not acquired until the server is started and ready to accept requests.

    Definition Classes
    BlazeServerBuilderServerBuilder → BackendBuilder
  10. final def serve: Stream[F, ExitCode]

    Runs the server as a process that never emits.

    Runs the server as a process that never emits. Useful for a server that runs for the rest of the JVM's life.

    Definition Classes
    ServerBuilder
  11. final def serveWhile(terminateWhenTrue: Signal[F, Boolean], exitWith: Ref[F, ExitCode]): Stream[F, ExitCode]

    Runs the server as a Stream that emits only when the terminated signal becomes true.

    Runs the server as a Stream that emits only when the terminated signal becomes true. Useful for servers with associated lifetime behaviors.

    Definition Classes
    ServerBuilder
  12. def socketKeepAlive: Option[Boolean]
    Definition Classes
    BlazeBackendBuilder
  13. def socketReceiveBufferSize: Option[Int]
    Definition Classes
    BlazeBackendBuilder
  14. def socketReuseAddress: Option[Boolean]
    Definition Classes
    BlazeBackendBuilder
  15. def socketSendBufferSize: Option[Int]
    Definition Classes
    BlazeBackendBuilder
  16. def stream: Stream[F, Server[F]]

    Returns the backend as a single-element stream.

    Returns the backend as a single-element stream. The stream does not emit until the backend is ready to process requests. The backend is shut down when the stream is finalized.

    Definition Classes
    BackendBuilder
  17. def tcpNoDelay: Option[Boolean]
    Definition Classes
    BlazeBackendBuilder
  18. def withBanner(banner: Seq[String]): Self

    Set the banner to display when the server starts up

    Set the banner to display when the server starts up

    Definition Classes
    BlazeServerBuilderServerBuilder
  19. def withBufferSize(size: Int): Self
  20. def withChannelOption[A](key: SocketOption[A], value: A): Self
    Definition Classes
    BlazeBackendBuilder
  21. def withChannelOptions(channelOptions: ChannelOptions): BlazeServerBuilder[F]
    Definition Classes
    BlazeServerBuilder → BlazeBackendBuilder
  22. def withChunkBufferMaxSize(chunkBufferMaxSize: Int): BlazeServerBuilder[F]
  23. def withConnectorPoolSize(size: Int): Self
  24. def withDefaultChannelOption[A](key: SocketOption[A]): Self
    Definition Classes
    BlazeBackendBuilder
  25. def withDefaultSocketKeepAlive: Self
    Definition Classes
    BlazeBackendBuilder
  26. def withDefaultSocketReceiveBufferSize: Self
    Definition Classes
    BlazeBackendBuilder
  27. def withDefaultSocketReuseAddress: Self
    Definition Classes
    BlazeBackendBuilder
  28. def withDefaultSocketSendBufferSize: Self
    Definition Classes
    BlazeBackendBuilder
  29. def withDefaultTcpNoDelay: Self
    Definition Classes
    BlazeBackendBuilder
  30. def withExecutionContext(executionContext: ExecutionContext): BlazeServerBuilder[F]
  31. def withHttpApp(httpApp: HttpApp[F]): Self
  32. def withIdleTimeout(idleTimeout: Duration): Self
  33. def withLengthLimits(maxRequestLineLen: Int = maxRequestLineLen, maxHeadersLen: Int = maxHeadersLen): Self

    Configure HTTP parser length limits

    Configure HTTP parser length limits

    These are to avoid denial of service attacks due to, for example, an infinite request line.

    maxRequestLineLen

    maximum request line to parse

    maxHeadersLen

    maximum data that compose headers

  34. def withMaxConnections(maxConnections: Int): BlazeServerBuilder[F]
  35. def withMaxHeadersLength(maxHeadersLength: Int): BlazeServerBuilder[F]
  36. def withMaxRequestLineLength(maxRequestLineLength: Int): BlazeServerBuilder[F]
  37. def withResponseHeaderTimeout(responseHeaderTimeout: Duration): Self
  38. def withSelectorThreadFactory(selectorThreadFactory: ThreadFactory): Self
  39. def withServiceErrorHandler(serviceErrorHandler: ServiceErrorHandler[F]): Self

    Sets the handler for errors thrown invoking the service.

    Sets the handler for errors thrown invoking the service. Is not guaranteed to be invoked on errors on the server backend, such as parsing a request or handling a context timeout.

    Definition Classes
    BlazeServerBuilderServerBuilder
  40. def withSocketKeepAlive(socketKeepAlive: Boolean): Self
    Definition Classes
    BlazeBackendBuilder
  41. def withSocketReceiveBufferSize(socketReceiveBufferSize: Int): Self
    Definition Classes
    BlazeBackendBuilder
  42. def withSocketReuseAddress(socketReuseAddress: Boolean): Self
    Definition Classes
    BlazeBackendBuilder
  43. def withSocketSendBufferSize(socketSendBufferSize: Int): Self
    Definition Classes
    BlazeBackendBuilder
  44. def withSslContext(sslContext: SSLContext): Self

    Configures the server with TLS, using the provided SSLContext and its default SSLParameters

  45. def withSslContextAndParameters(sslContext: SSLContext, sslParameters: SSLParameters): Self

    Configures the server with TLS, using the provided SSLContext and SSLParameters.

  46. def withTcpNoDelay(tcpNoDelay: Boolean): Self
    Definition Classes
    BlazeBackendBuilder
  47. def withWebSockets(enableWebsockets: Boolean): Self
  48. final def withoutBanner: Self

    Disable the banner when the server starts up

    Disable the banner when the server starts up

    Definition Classes
    ServerBuilder
  49. def withoutSsl: Self

Deprecated Value Members

  1. def withNio2(isNio2: Boolean): Self
    Annotations
    @deprecated
    Deprecated

    (Since version 0.21.17) NIO2 support in http4s-blaze-server will be removed in 0.22.

  2. def withSSL(keyStore: StoreInfo, keyManagerPassword: String, protocol: String = "TLS", trustStore: Option[StoreInfo] = None, clientAuth: SSLClientAuthMode = SSLClientAuthMode.NotRequested): Self
    Annotations
    @deprecated
    Deprecated

    (Since version 0.21.0-RC3) Build an SSLContext from the first four parameters and use withSslContext (note lowercase). To also request client certificates, use withSslContextAndParameters, calling either .setWantClientAuth(true) or setNeedClientAuth(true) on the SSLParameters.

  3. def withSSLContext(sslContext: SSLContext, clientAuth: SSLClientAuthMode = SSLClientAuthMode.NotRequested): Self
    Annotations
    @deprecated
    Deprecated

    (Since version 0.21.0-RC3) Use withSslContext (note lowercase). To request client certificates, use withSslContextAndParameters, calling either .setWantClientAuth(true) or setNeedClientAuth(true) on the SSLParameters.