Packages

case class Builder(solrServers: SolrServers, collectionAndTestQuery: (SolrServer) ⇒ (String, SolrQuery), minDelay: Duration = 100 millis, maxDelay: Duration = 10 seconds, initialTestRuns: Int = 10, filterFastServers: (Long) ⇒ ((SolrServer, Long)) ⇒ Boolean = ..., mapPredictedResponseTime: (Long) ⇒ Long = identity, isUpdatesToLeaders: Boolean = false, clock: Clock = Clock.systemDefault) extends Product with Serializable

Linear Supertypes
Serializable, Serializable, Product, Equals, AnyRef, Any
Ordering
  1. Alphabetic
  2. By Inheritance
Inherited
  1. Builder
  2. Serializable
  3. Serializable
  4. Product
  5. Equals
  6. AnyRef
  7. Any
  1. Hide All
  2. Show All
Visibility
  1. Public
  2. All

Instance Constructors

  1. new Builder(solrServers: SolrServers, collectionAndTestQuery: (SolrServer) ⇒ (String, SolrQuery), minDelay: Duration = 100 millis, maxDelay: Duration = 10 seconds, initialTestRuns: Int = 10, filterFastServers: (Long) ⇒ ((SolrServer, Long)) ⇒ Boolean = ..., mapPredictedResponseTime: (Long) ⇒ Long = identity, isUpdatesToLeaders: Boolean = false, clock: Clock = Clock.systemDefault)

Value Members

  1. final def !=(arg0: Any): Boolean
    Definition Classes
    AnyRef → Any
  2. final def ##(): Int
    Definition Classes
    AnyRef → Any
  3. final def ==(arg0: Any): Boolean
    Definition Classes
    AnyRef → Any
  4. final def asInstanceOf[T0]: T0
    Definition Classes
    Any
  5. def build[F[_]](implicit futureFactory: FutureFactory[F]): FastestServerLB[F]
  6. def build(): FastestServerLB[CompletionStage]
  7. val clock: Clock
  8. def clone(): AnyRef
    Attributes
    protected[lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( ... ) @native() @HotSpotIntrinsicCandidate()
  9. val collectionAndTestQuery: (SolrServer) ⇒ (String, SolrQuery)
  10. final def eq(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef
  11. val filterFastServers: (Long) ⇒ ((SolrServer, Long)) ⇒ Boolean
  12. final def getClass(): Class[_]
    Definition Classes
    AnyRef → Any
    Annotations
    @native() @HotSpotIntrinsicCandidate()
  13. val initialTestRuns: Int
  14. final def isInstanceOf[T0]: Boolean
    Definition Classes
    Any
  15. val isUpdatesToLeaders: Boolean
  16. val mapPredictedResponseTime: (Long) ⇒ Long
  17. val maxDelay: Duration
  18. val minDelay: Duration
  19. final def ne(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef
  20. final def notify(): Unit
    Definition Classes
    AnyRef
    Annotations
    @native() @HotSpotIntrinsicCandidate()
  21. final def notifyAll(): Unit
    Definition Classes
    AnyRef
    Annotations
    @native() @HotSpotIntrinsicCandidate()
  22. val solrServers: SolrServers
  23. final def synchronized[T0](arg0: ⇒ T0): T0
    Definition Classes
    AnyRef
  24. final def wait(arg0: Long, arg1: Int): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  25. final def wait(arg0: Long): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws( ... ) @native()
  26. final def wait(): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  27. def withClock(clock: Clock): Builder

    The clock to get the current time from.

  28. def withFilterFastServers(filter: LongFunction[BiFunction[SolrServer, Long, Boolean]]): Builder

    A function to filter fast / preferred servers.

    A function to filter fast / preferred servers. The function takes the calculated average duration of all servers of a collection, and returns a function for a SolrServer->Duration tuple that returns true/false to indicate if a server should be considered "fast".
    The default value for filterFastServers uses duration <= average * 1.1 + 5 (use 1.1 as multiplier to accept some deviation, for smaller values like 1 or 2 millis also add some fix value to allow normal deviation).

  29. def withInitialTestRuns(count: Int): Builder

    On start each active server is tested the given number of times to gather initial stats and determine fast/slow servers.

  30. def withMapPredictedResponseTime(mapPredictedResponseTime: Function[Long, Long]): Builder

    A function that's applied to the predicted response time.

    A function that's applied to the predicted response time. This can e.g. be used to quantize the time so that minor differences are ignored.

  31. def withMaxDelay(value: Long, unit: TimeUnit): Builder

    The delay between tests for slow servers (or all servers if there are no real requests)

  32. def withMinDelay(value: Long, unit: TimeUnit): Builder

    The minimum delay between the response of a test and the start of the next test (to limit test frequency)

  33. def withUpdatesToLeaders(isUpdatesToLeaders: Boolean): Builder

    If set to true, update requests will be sent to shard leaders if IsUpdateRequest.isSendToLeaders is true as well.

    If set to true, update requests will be sent to shard leaders if IsUpdateRequest.isSendToLeaders is true as well. Default is false

Deprecated Value Members

  1. def finalize(): Unit
    Attributes
    protected[lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( classOf[java.lang.Throwable] ) @Deprecated
    Deprecated

Inherited from Serializable

Inherited from Serializable

Inherited from Product

Inherited from Equals

Inherited from AnyRef

Inherited from Any

Ungrouped