Class RxJava3PublisherExtension
java.lang.Object
io.github.resilience4j.micronaut.util.RxJava3PublisherExtension
- All Implemented Interfaces:
PublisherExtension
@Singleton
@Requires(classes={io.reactivex.rxjava3.core.Flowable.class,io.github.resilience4j.rxjava3.AbstractSubscriber.class})
public class RxJava3PublisherExtension
extends Object
implements PublisherExtension
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescription<T> org.reactivestreams.Publisher<T>bulkhead(org.reactivestreams.Publisher<T> publisher, io.github.resilience4j.bulkhead.Bulkhead bulkhead) <T> org.reactivestreams.Publisher<T>circuitBreaker(org.reactivestreams.Publisher<T> publisher, io.github.resilience4j.circuitbreaker.CircuitBreaker circuitBreaker) <T> org.reactivestreams.Publisher<T>fallbackPublisher(org.reactivestreams.Publisher<T> publisher, io.micronaut.aop.MethodInvocationContext<Object, Object> context, Function<io.micronaut.aop.MethodInvocationContext<Object, Object>, Optional<? extends io.micronaut.inject.MethodExecutionHandle<?, Object>>> handler) <T> org.reactivestreams.Publisher<T>rateLimiter(org.reactivestreams.Publisher<T> publisher, io.github.resilience4j.ratelimiter.RateLimiter rateLimiter) <T> org.reactivestreams.Publisher<T>retry(org.reactivestreams.Publisher<T> publisher, io.github.resilience4j.retry.Retry retry) <T> org.reactivestreams.Publisher<T>timeLimiter(org.reactivestreams.Publisher<T> publisher, io.github.resilience4j.timelimiter.TimeLimiter timeLimiter)
-
Constructor Details
-
RxJava3PublisherExtension
public RxJava3PublisherExtension()
-
-
Method Details
-
bulkhead
public <T> org.reactivestreams.Publisher<T> bulkhead(org.reactivestreams.Publisher<T> publisher, io.github.resilience4j.bulkhead.Bulkhead bulkhead) - Specified by:
bulkheadin interfacePublisherExtension
-
circuitBreaker
public <T> org.reactivestreams.Publisher<T> circuitBreaker(org.reactivestreams.Publisher<T> publisher, io.github.resilience4j.circuitbreaker.CircuitBreaker circuitBreaker) - Specified by:
circuitBreakerin interfacePublisherExtension
-
timeLimiter
public <T> org.reactivestreams.Publisher<T> timeLimiter(org.reactivestreams.Publisher<T> publisher, io.github.resilience4j.timelimiter.TimeLimiter timeLimiter) - Specified by:
timeLimiterin interfacePublisherExtension
-
retry
public <T> org.reactivestreams.Publisher<T> retry(org.reactivestreams.Publisher<T> publisher, io.github.resilience4j.retry.Retry retry) - Specified by:
retryin interfacePublisherExtension
-
rateLimiter
public <T> org.reactivestreams.Publisher<T> rateLimiter(org.reactivestreams.Publisher<T> publisher, io.github.resilience4j.ratelimiter.RateLimiter rateLimiter) - Specified by:
rateLimiterin interfacePublisherExtension
-
fallbackPublisher
public <T> org.reactivestreams.Publisher<T> fallbackPublisher(org.reactivestreams.Publisher<T> publisher, io.micronaut.aop.MethodInvocationContext<Object, Object> context, Function<io.micronaut.aop.MethodInvocationContext<Object, Object>, Optional<? extends io.micronaut.inject.MethodExecutionHandle<?, Object>>> handler) - Specified by:
fallbackPublisherin interfacePublisherExtension
-