Packages

class CircuitBreaker extends AnyRef

An implementation of the circuit breaker pattern for Vert.x

Linear Supertypes
AnyRef, Any
Ordering
  1. Alphabetic
  2. By Inheritance
Inherited
  1. CircuitBreaker
  2. AnyRef
  3. Any
  1. Hide All
  2. Show All
Visibility
  1. Public
  2. All

Instance Constructors

  1. new CircuitBreaker(_asJava: AnyRef)

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 asJava: AnyRef
  6. def clone(): AnyRef
    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @native() @throws( ... )
  7. def close(): CircuitBreaker

    Closes the circuit breaker.

    Closes the circuit breaker. It stops sending events on its state on the event bus. This method is not related to the close state of the circuit breaker. To set the circuit breaker in the close state, use io.vertx.scala.circuitbreaker.CircuitBreaker#reset.

  8. def closeHandler(handler: Handler[Unit]): CircuitBreaker

    Sets a invoked when the circuit breaker state switches to close.

    Sets a invoked when the circuit breaker state switches to close. * @param handler the handler, must not be null

    returns

    the current CircuitBreaker

  9. final def eq(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef
  10. def equals(arg0: Any): Boolean
    Definition Classes
    AnyRef → Any
  11. def execute[T](command: Handler[Future[T]])(implicit arg0: scala.reflect.api.JavaUniverse.TypeTag[T]): Future[T]

    Same as io.vertx.scala.circuitbreaker.CircuitBreaker#executeWithFallback but using the circuit breaker default fallback.

    Same as io.vertx.scala.circuitbreaker.CircuitBreaker#executeWithFallback but using the circuit breaker default fallback. * @param command the operation

    returns

    a future object completed when the operation or its fallback completes

  12. def executeAndReport[T](resultFuture: Future[T], command: Handler[Future[T]])(implicit arg0: scala.reflect.api.JavaUniverse.TypeTag[T]): CircuitBreaker

    Same as io.vertx.scala.circuitbreaker.CircuitBreaker#executeAndReportWithFallback but using the circuit breaker default fallback.

    Same as io.vertx.scala.circuitbreaker.CircuitBreaker#executeAndReportWithFallback but using the circuit breaker default fallback. * @param resultFuture the future on which the operation result is reported

    command

    the operation

    returns

    the current CircuitBreaker

  13. def executeAndReportWithFallback[T](resultFuture: Future[T], command: Handler[Future[T]], fallback: (Throwable) ⇒ T)(implicit arg0: scala.reflect.api.JavaUniverse.TypeTag[T]): CircuitBreaker

    Executes the given operation with the circuit breaker control.

    Executes the given operation with the circuit breaker control. The operation is generally calling an external system. The operation receives a object as parameter and must call when the operation has terminated successfully. The operation must also call in case of failure.

    The operation is not invoked if the circuit breaker is open, and the given fallback is called immediately. The circuit breaker also monitor the completion of the operation before a configure timeout. The operation is considered as failed if it does not terminate in time.

    Unlike io.vertx.scala.circuitbreaker.CircuitBreaker#executeWithFallback, this method does return a object, but let the caller pass a object on which the result is reported. If the fallback is called, the future is successfully completed with the value returned by the fallback function. If the fallback throws an exception, the future is marked as failed. * @param resultFuture the future on which the operation result is reported

    command

    the operation

    fallback

    the fallback function. It gets an exception as parameter and returns the fallback result

    returns

    the current CircuitBreaker

  14. def executeCommand[T](command: Handler[Future[T]], handler: Handler[AsyncResult[T]])(implicit arg0: scala.reflect.api.JavaUniverse.TypeTag[T]): Unit

    Same as io.vertx.scala.circuitbreaker.CircuitBreaker#executeWithFallback but using the circuit breaker default fallback.

    Same as io.vertx.scala.circuitbreaker.CircuitBreaker#executeWithFallback but using the circuit breaker default fallback. * @param command the operation

  15. def executeCommandFuture[T](command: Handler[Future[T]])(implicit arg0: scala.reflect.api.JavaUniverse.TypeTag[T]): Future[T]

    Like executeCommand but returns a scala.concurrent.Future instead of taking an AsyncResultHandler.

  16. def executeCommandWithFallback[T](command: Handler[Future[T]], fallback: (Throwable) ⇒ T, handler: Handler[AsyncResult[T]])(implicit arg0: scala.reflect.api.JavaUniverse.TypeTag[T]): Unit

    Same as io.vertx.scala.circuitbreaker.CircuitBreaker#executeWithFallback but using a callback.

    Same as io.vertx.scala.circuitbreaker.CircuitBreaker#executeWithFallback but using a callback. * @param command the operation

    fallback

    the fallback

    handler

    the completion handler receiving either the operation result or the fallback result. The parameter is an io.vertx.lang.scala.AsyncResult because if the fallback is not called, the error is passed to the handler.

  17. def executeCommandWithFallbackFuture[T](command: Handler[Future[T]], fallback: (Throwable) ⇒ T)(implicit arg0: scala.reflect.api.JavaUniverse.TypeTag[T]): Future[T]

    Like executeCommandWithFallback but returns a scala.concurrent.Future instead of taking an AsyncResultHandler.

  18. def executeWithFallback[T](command: Handler[Future[T]], fallback: (Throwable) ⇒ T)(implicit arg0: scala.reflect.api.JavaUniverse.TypeTag[T]): Future[T]

    Executes the given operation with the circuit breaker control.

    Executes the given operation with the circuit breaker control. The operation is generally calling an external system. The operation receives a object as parameter and must call when the operation has terminated successfully. The operation must also call in case of failure.

    The operation is not invoked if the circuit breaker is open, and the given fallback is called immediately. The circuit breaker also monitor the completion of the operation before a configure timeout. The operation is considered as failed if it does not terminate in time.

    This method returns a object to retrieve the status and result of the operation, with the status being a success or a failure. If the fallback is called, the returned future is successfully completed with the value returned from the fallback. If the fallback throws an exception, the returned future is marked as failed. * @param command the operation

    fallback

    the fallback function. It gets an exception as parameter and returns the fallback result

    returns

    a future object completed when the operation or its fallback completes

  19. def failureCount(): Long

    returns

    the current number of failures.

  20. def fallback[T](handler: (Throwable) ⇒ T)(implicit arg0: scala.reflect.api.JavaUniverse.TypeTag[T]): CircuitBreaker

    Sets a default invoked when the bridge is open to handle the "request", or on failure if CircuitBreakerOptions is enabled.

    Sets a default invoked when the bridge is open to handle the "request", or on failure if CircuitBreakerOptions is enabled.

    The function gets the exception as parameter and returns the fallback result. * @param handler the handler

    returns

    the current CircuitBreaker

  21. def finalize(): Unit
    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( classOf[java.lang.Throwable] )
  22. final def getClass(): Class[_]
    Definition Classes
    AnyRef → Any
    Annotations
    @native()
  23. def halfOpenHandler(handler: Handler[Unit]): CircuitBreaker

    Sets a invoked when the circuit breaker state switches to half-open.

    Sets a invoked when the circuit breaker state switches to half-open. * @param handler the handler, must not be null

    returns

    the current CircuitBreaker

  24. def hashCode(): Int
    Definition Classes
    AnyRef → Any
    Annotations
    @native()
  25. final def isInstanceOf[T0]: Boolean
    Definition Classes
    Any
  26. def name(): String

    returns

    the name of the circuit breaker.

  27. final def ne(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef
  28. final def notify(): Unit
    Definition Classes
    AnyRef
    Annotations
    @native()
  29. final def notifyAll(): Unit
    Definition Classes
    AnyRef
    Annotations
    @native()
  30. def open(): CircuitBreaker

    Explicitly opens the circuit.

    Explicitly opens the circuit. * @return the current CircuitBreaker

  31. def openHandler(handler: Handler[Unit]): CircuitBreaker

    Sets a invoked when the circuit breaker state switches to open.

    Sets a invoked when the circuit breaker state switches to open. * @param handler the handler, must not be null

    returns

    the current CircuitBreaker

  32. def reset(): CircuitBreaker

    Resets the circuit breaker state (number of failure set to 0 and state set to closed).

    Resets the circuit breaker state (number of failure set to 0 and state set to closed). * @return the current CircuitBreaker

  33. def retryPolicy(retryPolicy: (Int) ⇒ Long): CircuitBreaker
  34. def state(): CircuitBreakerState

    returns

    the current state.

  35. final def synchronized[T0](arg0: ⇒ T0): T0
    Definition Classes
    AnyRef
  36. def toString(): String
    Definition Classes
    AnyRef → Any
  37. final def wait(): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  38. final def wait(arg0: Long, arg1: Int): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  39. final def wait(arg0: Long): Unit
    Definition Classes
    AnyRef
    Annotations
    @native() @throws( ... )

Inherited from AnyRef

Inherited from Any

Ungrouped