Class CircuitBreakerOperator<T>

java.lang.Object
io.github.resilience4j.rxjava3.circuitbreaker.operator.CircuitBreakerOperator<T>
Type Parameters:
T - the value type
All Implemented Interfaces:
io.reactivex.rxjava3.core.CompletableTransformer, io.reactivex.rxjava3.core.FlowableTransformer<T,T>, io.reactivex.rxjava3.core.MaybeTransformer<T,T>, io.reactivex.rxjava3.core.ObservableTransformer<T,T>, io.reactivex.rxjava3.core.SingleTransformer<T,T>

public class CircuitBreakerOperator<T> extends Object implements io.reactivex.rxjava3.core.FlowableTransformer<T,T>, io.reactivex.rxjava3.core.SingleTransformer<T,T>, io.reactivex.rxjava3.core.MaybeTransformer<T,T>, io.reactivex.rxjava3.core.CompletableTransformer, io.reactivex.rxjava3.core.ObservableTransformer<T,T>
A CircuitBreaker operator which checks if a downstream subscriber/observer can acquire a permission to subscribe to an upstream Publisher. Otherwise emits a CallNotPermittedException if the CircuitBreaker is OPEN.
  • Field Summary

    Fields
    Modifier and Type
    Field
    Description
    private final io.github.resilience4j.circuitbreaker.CircuitBreaker
     
  • Constructor Summary

    Constructors
    Modifier
    Constructor
    Description
    private
    CircuitBreakerOperator(io.github.resilience4j.circuitbreaker.CircuitBreaker circuitBreaker)
     
  • Method Summary

    Modifier and Type
    Method
    Description
    io.reactivex.rxjava3.core.CompletableSource
    apply(io.reactivex.rxjava3.core.Completable upstream)
     
    org.reactivestreams.Publisher<T>
    apply(io.reactivex.rxjava3.core.Flowable<T> upstream)
     
    io.reactivex.rxjava3.core.MaybeSource<T>
    apply(io.reactivex.rxjava3.core.Maybe<T> upstream)
     
    io.reactivex.rxjava3.core.ObservableSource<T>
    apply(io.reactivex.rxjava3.core.Observable<T> upstream)
     
    io.reactivex.rxjava3.core.SingleSource<T>
    apply(io.reactivex.rxjava3.core.Single<T> upstream)
     
    static <T> CircuitBreakerOperator<T>
    of(io.github.resilience4j.circuitbreaker.CircuitBreaker circuitBreaker)
    Creates a CircuitBreakerOperator.

    Methods inherited from class Object

    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
  • Field Details

    • circuitBreaker

      private final io.github.resilience4j.circuitbreaker.CircuitBreaker circuitBreaker
  • Constructor Details

    • CircuitBreakerOperator

      private CircuitBreakerOperator(io.github.resilience4j.circuitbreaker.CircuitBreaker circuitBreaker)
  • Method Details

    • of

      public static <T> CircuitBreakerOperator<T> of(io.github.resilience4j.circuitbreaker.CircuitBreaker circuitBreaker)
      Creates a CircuitBreakerOperator.
      Parameters:
      circuitBreaker - the CircuitBreaker
      Returns:
      a CircuitBreakerOperator
    • apply

      public org.reactivestreams.Publisher<T> apply(io.reactivex.rxjava3.core.Flowable<T> upstream)
      Specified by:
      apply in interface io.reactivex.rxjava3.core.FlowableTransformer<T,T>
    • apply

      public io.reactivex.rxjava3.core.SingleSource<T> apply(io.reactivex.rxjava3.core.Single<T> upstream)
      Specified by:
      apply in interface io.reactivex.rxjava3.core.SingleTransformer<T,T>
    • apply

      public io.reactivex.rxjava3.core.CompletableSource apply(io.reactivex.rxjava3.core.Completable upstream)
      Specified by:
      apply in interface io.reactivex.rxjava3.core.CompletableTransformer
    • apply

      public io.reactivex.rxjava3.core.MaybeSource<T> apply(io.reactivex.rxjava3.core.Maybe<T> upstream)
      Specified by:
      apply in interface io.reactivex.rxjava3.core.MaybeTransformer<T,T>
    • apply

      public io.reactivex.rxjava3.core.ObservableSource<T> apply(io.reactivex.rxjava3.core.Observable<T> upstream)
      Specified by:
      apply in interface io.reactivex.rxjava3.core.ObservableTransformer<T,T>