Class/Object

agora.rest.client

RoundRobinClient

Related Docs: object RoundRobinClient | package client

Permalink

case class RoundRobinClient(pool: Iterable[RestClient], retryStrategy: RetryStrategy) extends RestClient with Product with Serializable

Linear Supertypes
Serializable, Serializable, Product, Equals, RestClient, Closeable, AutoCloseable, AnyRef, Any
Ordering
  1. Alphabetic
  2. By Inheritance
Inherited
  1. RoundRobinClient
  2. Serializable
  3. Serializable
  4. Product
  5. Equals
  6. RestClient
  7. Closeable
  8. AutoCloseable
  9. AnyRef
  10. Any
  1. Hide All
  2. Show All
Visibility
  1. Public
  2. All

Instance Constructors

  1. new RoundRobinClient(pool: Iterable[RestClient], retryStrategy: RetryStrategy)

    Permalink

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. def close(): Unit

    Permalink
    Definition Classes
    RestClient → Closeable → AutoCloseable
  7. final def eq(arg0: AnyRef): Boolean

    Permalink
    Definition Classes
    AnyRef
  8. implicit def executionContext: ExecutionContext

    Permalink

    See materializer comment

    See materializer comment

    returns

    the execution context associated w/ this client

    Definition Classes
    RestClient
  9. def finalize(): Unit

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

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

    Permalink
    Definition Classes
    Any
  12. implicit def materializer: Materializer

    Permalink

    You could argue that putting this here sullies the otherwise clean functional interface, but that sacrifice is laid upon the alter of sanity.

    You could argue that putting this here sullies the otherwise clean functional interface, but that sacrifice is laid upon the alter of sanity. It's much easier to reason about which materializer/execution context is used when it comes baked in with a client -- in particular in the retry/failover scenarios.

    We don't want to e.g. accidentally bring another materializer (and by extension its execution context) in scope from a stopped actor system

    returns

    the materializer associated w/ this client

    Definition Classes
    RoundRobinClientRestClient
  13. final def ne(arg0: AnyRef): Boolean

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

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

    Permalink
    Definition Classes
    AnyRef
  16. val pool: Iterable[RestClient]

    Permalink
  17. def reset(err: Option[Throwable]): RoundRobinClient

    Permalink
  18. val retryStrategy: RetryStrategy

    Permalink
  19. def send(request: HttpRequest): Future[HttpResponse]

    Permalink

    Does what it says on the tin -- send the HttpRequest and eventually return a HttpResponse.

    Does what it says on the tin -- send the HttpRequest and eventually return a HttpResponse.

    The client is presumably established for a know HostLocation, but

    request

    the request to send

    returns

    the response in a future

    Definition Classes
    RoundRobinClientRestClient
  20. final def synchronized[T0](arg0: ⇒ T0): T0

    Permalink
    Definition Classes
    AnyRef
  21. final def wait(): Unit

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

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

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

Inherited from Serializable

Inherited from Serializable

Inherited from Product

Inherited from Equals

Inherited from RestClient

Inherited from Closeable

Inherited from AutoCloseable

Inherited from AnyRef

Inherited from Any

Ungrouped