Trait/Object

lol.http

Server

Related Docs: object Server | package http

Permalink

trait Server extends Service

An HTTP server.

val eventuallyContent = server(Get("/hello")).flatMap { response =>
  response.readAs[String]
}

An HTTP server is a service function. It handles HTTP requests and eventually returns HTTP responses.

The server listen for HTTP connections on the socketAddress TCP socket. If ssl is defined, it supports TLS connections. Calling the stop operation asks for a graceful shutdown.

Linear Supertypes
(Request) ⇒ Future[Response], AnyRef, Any
Ordering
  1. Alphabetic
  2. By Inheritance
Inherited
  1. Server
  2. Function1
  3. AnyRef
  4. Any
  1. Hide All
  2. Show All
Visibility
  1. Public
  2. All

Abstract Value Members

  1. abstract def apply(v1: Request): Future[Response]

    Permalink
    Definition Classes
    Function1
  2. abstract def options: ServerOptions

    Permalink

    returns

    the server options such as the number of IO thread used.

  3. abstract def socketAddress: InetSocketAddress

    Permalink

    returns

    the underlying server socket.

  4. abstract def ssl: Option[Configuration]

    Permalink

    returns

    the SSL configuration if enabled.

  5. abstract def stop(quietPeriod: Duration = 2 seconds, timeout: Duration = 15 seconds): Future[Unit]

    Permalink

    Stop this server instance gracefully.

    Stop this server instance gracefully. It ensures that no requests are handled for 'the quiet period' (usually a couple seconds) before it shuts itself down. If a request is submitted during the quiet period, it is guaranteed to be accepted and the quiet period will start over.

    quietPeriod

    The quiet period for the graceful shutdown.

    timeout

    The maximum amount of time to wait until the server is shutdown regardless of the quiet period.

    returns

    a Future resolved as soon as the server is shutdown.

Concrete Value Members

  1. final def !=(arg0: Any): Boolean

    Permalink
    Definition Classes
    AnyRef → Any
  2. final def ##(): Int

    Permalink
    Definition Classes
    AnyRef → Any
  3. final def ==(arg0: Any): Boolean

    Permalink
    Definition Classes
    AnyRef → Any
  4. def andThen[A](g: (Future[Response]) ⇒ A): (Request) ⇒ A

    Permalink
    Definition Classes
    Function1
    Annotations
    @unspecialized()
  5. final def asInstanceOf[T0]: T0

    Permalink
    Definition Classes
    Any
  6. def clone(): AnyRef

    Permalink
    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  7. def compose[A](g: (A) ⇒ Request): (A) ⇒ Future[Response]

    Permalink
    Definition Classes
    Function1
    Annotations
    @unspecialized()
  8. final def eq(arg0: AnyRef): Boolean

    Permalink
    Definition Classes
    AnyRef
  9. def equals(arg0: Any): Boolean

    Permalink
    Definition Classes
    AnyRef → Any
  10. def finalize(): Unit

    Permalink
    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( classOf[java.lang.Throwable] )
  11. final def getClass(): Class[_]

    Permalink
    Definition Classes
    AnyRef → Any
  12. def hashCode(): Int

    Permalink
    Definition Classes
    AnyRef → Any
  13. final def isInstanceOf[T0]: Boolean

    Permalink
    Definition Classes
    Any
  14. final def ne(arg0: AnyRef): Boolean

    Permalink
    Definition Classes
    AnyRef
  15. final def notify(): Unit

    Permalink
    Definition Classes
    AnyRef
  16. final def notifyAll(): Unit

    Permalink
    Definition Classes
    AnyRef
  17. def port: Int

    Permalink

    returns

    the TCP port from the underlying server socket.

  18. final def synchronized[T0](arg0: ⇒ T0): T0

    Permalink
    Definition Classes
    AnyRef
  19. def toString(): String

    Permalink
    Definition Classes
    Server → Function1 → AnyRef → Any
  20. final def wait(): Unit

    Permalink
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  21. final def wait(arg0: Long, arg1: Int): Unit

    Permalink
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  22. final def wait(arg0: Long): Unit

    Permalink
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )

Inherited from (Request) ⇒ Future[Response]

Inherited from AnyRef

Inherited from Any

Ungrouped