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
    @HotSpotIntrinsicCandidate() @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. final def getClass(): Class[_]

    Permalink
    Definition Classes
    AnyRef → Any
    Annotations
    @HotSpotIntrinsicCandidate()
  10. final def isInstanceOf[T0]: Boolean

    Permalink
    Definition Classes
    Any
  11. 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
  12. final def ne(arg0: AnyRef): Boolean

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

    Permalink
    Definition Classes
    AnyRef
    Annotations
    @HotSpotIntrinsicCandidate()
  14. final def notifyAll(): Unit

    Permalink
    Definition Classes
    AnyRef
    Annotations
    @HotSpotIntrinsicCandidate()
  15. val pool: Iterable[RestClient]

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

    Permalink
  17. val retryStrategy: RetryStrategy

    Permalink
  18. 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
  19. final def synchronized[T0](arg0: ⇒ T0): T0

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

Deprecated Value Members

  1. def finalize(): Unit

    Permalink
    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @Deprecated @deprecated @throws( classOf[java.lang.Throwable] )
    Deprecated

    (Since version ) see corresponding Javadoc for more information.

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