Trait/Object

com.lightbend.lagom.scaladsl.api

ServiceCall

Related Docs: object ServiceCall | package api

Permalink

trait ServiceCall[Request, Response] extends AnyRef

A service call for an entity.

A service call has a request and a response entity. Either entity may be NotUsed, if there is no entity associated with the call. They may also be an Akka streams Source, in situations where the endpoint serves a stream. In all other cases, the entities will be considered "strict" entities, that is, they will be parsed into memory, eg, using json.

Linear Supertypes
AnyRef, Any
Ordering
  1. Alphabetic
  2. By Inheritance
Inherited
  1. ServiceCall
  2. AnyRef
  3. Any
  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.

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. final def asInstanceOf[T0]: T0

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

    Permalink
    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  6. final def eq(arg0: AnyRef): Boolean

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

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

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

    Permalink
    Definition Classes
    AnyRef → Any
  10. def handleRequestHeader(handler: (RequestHeader) ⇒ RequestHeader): ServiceCall[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.

  11. def handleResponseHeader[T](handler: (ResponseHeader, Response) ⇒ T): ServiceCall[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.

  12. def hashCode(): Int

    Permalink
    Definition Classes
    AnyRef → Any
  13. def invoke()(implicit evidence: =:=[NotUsed, Request]): 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.

  14. final def isInstanceOf[T0]: Boolean

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

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

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

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

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

    Permalink
    Definition Classes
    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( ... )
  23. 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.

Inherited from AnyRef

Inherited from Any

Ungrouped