Trait/Object

com.lightbend.lagom.scaladsl.server

ServerServiceCall

Related Docs: object ServerServiceCall | package server

Permalink

trait ServerServiceCall[Request, Response] extends ServiceCall[Request, Response]

A server implementation of a service call.

While the server implementation of the service doesn't have to make use of this type, what this type does is it allows the supply and composition of request and response headers. When working with and or composing server service calls, it is almost never a good idea to call #invoke(Object), rather, Object) should be called. Invocation of the former may result in an UnsupportedOperationException being thrown.

In some cases, where the underlying transport doesn't allow sending a header after the request message has been received (eg WebSockets), the response header may be ignored. In these cases, Lagom will make a best effort attempt at determining whether there was custom information in the response header, and if so, log a warning that it wasn't set.

Source
ServerServiceCall.scala
Linear Supertypes
ServiceCall[Request, Response], AnyRef, Any
Ordering
  1. Alphabetic
  2. By Inheritance
Inherited
  1. ServerServiceCall
  2. ServiceCall
  3. AnyRef
  4. Any
Implicitly
  1. by any2stringadd
  2. by StringFormat
  3. by Ensuring
  4. by ArrowAssoc
  1. Hide All
  2. Show All
Visibility
  1. Public
  2. All

Abstract Value Members

  1. abstract def invoke(request: Request): Future[Response]

    Permalink

    Invoke the service call.

    Invoke the service call.

    request

    The request entity.

    returns

    A future of the response entity.

    Definition Classes
    ServiceCall

Concrete Value Members

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

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

    Permalink
    Definition Classes
    AnyRef → Any
  3. def +(other: String): String

    Permalink
    Implicit information
    This member is added by an implicit conversion from ServerServiceCall[Request, Response] to any2stringadd[ServerServiceCall[Request, Response]] performed by method any2stringadd in scala.Predef.
    Definition Classes
    any2stringadd
  4. def ->[B](y: B): (ServerServiceCall[Request, Response], B)

    Permalink
    Implicit information
    This member is added by an implicit conversion from ServerServiceCall[Request, Response] to ArrowAssoc[ServerServiceCall[Request, Response]] performed by method ArrowAssoc in scala.Predef.
    Definition Classes
    ArrowAssoc
    Annotations
    @inline()
  5. final def ==(arg0: Any): Boolean

    Permalink
    Definition Classes
    AnyRef → Any
  6. final def asInstanceOf[T0]: T0

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

    Permalink
    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  8. def ensuring(cond: (ServerServiceCall[Request, Response]) ⇒ Boolean, msg: ⇒ Any): ServerServiceCall[Request, Response]

    Permalink
    Implicit information
    This member is added by an implicit conversion from ServerServiceCall[Request, Response] to Ensuring[ServerServiceCall[Request, Response]] performed by method Ensuring in scala.Predef.
    Definition Classes
    Ensuring
  9. def ensuring(cond: (ServerServiceCall[Request, Response]) ⇒ Boolean): ServerServiceCall[Request, Response]

    Permalink
    Implicit information
    This member is added by an implicit conversion from ServerServiceCall[Request, Response] to Ensuring[ServerServiceCall[Request, Response]] performed by method Ensuring in scala.Predef.
    Definition Classes
    Ensuring
  10. def ensuring(cond: Boolean, msg: ⇒ Any): ServerServiceCall[Request, Response]

    Permalink
    Implicit information
    This member is added by an implicit conversion from ServerServiceCall[Request, Response] to Ensuring[ServerServiceCall[Request, Response]] performed by method Ensuring in scala.Predef.
    Definition Classes
    Ensuring
  11. def ensuring(cond: Boolean): ServerServiceCall[Request, Response]

    Permalink
    Implicit information
    This member is added by an implicit conversion from ServerServiceCall[Request, Response] to Ensuring[ServerServiceCall[Request, Response]] performed by method Ensuring in scala.Predef.
    Definition Classes
    Ensuring
  12. final def eq(arg0: AnyRef): Boolean

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

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

    Permalink
    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( classOf[java.lang.Throwable] )
  15. def formatted(fmtstr: String): String

    Permalink
    Implicit information
    This member is added by an implicit conversion from ServerServiceCall[Request, Response] to StringFormat[ServerServiceCall[Request, Response]] performed by method StringFormat in scala.Predef.
    Definition Classes
    StringFormat
    Annotations
    @inline()
  16. final def getClass(): Class[_]

    Permalink
    Definition Classes
    AnyRef → Any
  17. def handleRequestHeader(handler: (RequestHeader) ⇒ RequestHeader): ServerServiceCall[Request, Response]

    Permalink

    Make any modifications necessary to the request header.

    Make any modifications necessary to the request header.

    For client service calls, this gives clients an opportunity to add custom headers and/or modify the request in some way before it is made. The passed in handler is applied before the header transformers configured for the descriptor/endpoint are applied.

    For server implementations of service calls, this will be invoked by the server in order to supply the request header. A new service call can then be returned that uses the header. The header passed in to the handler by the service call can be anything, it will be ignored - RequestHeader#DEFAULT exists for this purpose. Generally, server implementations should not implement this method directly, rather, they should use ServerServiceCall, which provides an appropriate implementation.

    handler

    A function that takes in the request header representing the request, and transforms it.

    returns

    A service call that will use the given handler.

    Definition Classes
    ServerServiceCallServiceCall
  18. def handleResponseHeader[T](handler: (ResponseHeader, Response) ⇒ T): ServerServiceCall[Request, T]

    Permalink

    Transform the response using the given function that takes the response header and the response.

    Transform the response using the given function that takes the response header and the response.

    For client service calls, this gives clients an opportunity to inspect the response headers and status code. The passed in handler is applied after the header transformers configured for the descriptor/endpoint are applied.

    For server implementations of service calls, this will be invoked by the server in order to give the service call an opportunity to supply the response header when it supplies the response, but only if the underlying transport supports sending a response header. Generally, server implementations should not implement this method directly, rather, they should use ServerServiceCall, which provides an appropriate implementation.

    handler

    The handler.

    returns

    A service call that uses the given handler.

    Definition Classes
    ServerServiceCallServiceCall
  19. def hashCode(): Int

    Permalink
    Definition Classes
    AnyRef → Any
  20. def invoke()(implicit evidence: =:=[Request, NotUsed]): Future[Response]

    Permalink

    Invoke the service call with unit id argument and a unit request message.

    Invoke the service call with unit id argument and a unit request message.

    This should only be used when the request message is NotUsed.

    returns

    A future of the response entity.

    Definition Classes
    ServiceCall
  21. def invokeWithHeaders(requestHeader: RequestHeader, request: Request): Future[(ResponseHeader, Response)]

    Permalink

    Invoke the given action with the request and response headers.

    Invoke the given action with the request and response headers.

    requestHeader

    The request header.

    request

    The request message.

    returns

    A future of the response header and response message.

  22. final def isInstanceOf[T0]: Boolean

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

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

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

    Permalink
    Definition Classes
    AnyRef
  26. final def synchronized[T0](arg0: ⇒ T0): T0

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

    Permalink
    Definition Classes
    AnyRef → Any
  28. final def wait(): Unit

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

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

    Permalink
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  31. def withResponseHeader: ServiceCall[Request, (ResponseHeader, Response)]

    Permalink

    Allow handling of the response header.

    Allow handling of the response header.

    This converts the service call to one that returns both the response header and the response message.

    This is simply a convenience method for invoking handleResponseHeader((_, _).

    returns

    The a service call that returns the response header and the response message.

    Definition Classes
    ServiceCall
  32. def [B](y: B): (ServerServiceCall[Request, Response], B)

    Permalink
    Implicit information
    This member is added by an implicit conversion from ServerServiceCall[Request, Response] to ArrowAssoc[ServerServiceCall[Request, Response]] performed by method ArrowAssoc in scala.Predef.
    Definition Classes
    ArrowAssoc

Inherited from ServiceCall[Request, Response]

Inherited from AnyRef

Inherited from Any

Inherited by implicit conversion any2stringadd from ServerServiceCall[Request, Response] to any2stringadd[ServerServiceCall[Request, Response]]

Inherited by implicit conversion StringFormat from ServerServiceCall[Request, Response] to StringFormat[ServerServiceCall[Request, Response]]

Inherited by implicit conversion Ensuring from ServerServiceCall[Request, Response] to Ensuring[ServerServiceCall[Request, Response]]

Inherited by implicit conversion ArrowAssoc from ServerServiceCall[Request, Response] to ArrowAssoc[ServerServiceCall[Request, Response]]

Ungrouped