Package com.cloudimpl.outstack.runtime
Class ReactiveRemoteResourceCache
java.lang.Object
com.cloudimpl.outstack.runtime.ReactiveRemoteResourceCache
public class ReactiveRemoteResourceCache
extends java.lang.Object
- Author:
- nuwan
-
Nested Class Summary
Nested Classes Modifier and Type Class Description static classReactiveRemoteResourceCache.CacheItem<T> -
Field Summary
Fields Modifier and Type Field Description static reactor.core.publisher.FluxSinkemitter -
Constructor Summary
Constructors Constructor Description ReactiveRemoteResourceCache(int maxSize, java.time.Duration evictionDuration, java.lang.String serviceName, java.util.function.BiFunction<java.lang.String,java.lang.Object,reactor.core.publisher.Flux> requestStream) -
Method Summary
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
-
Field Details
-
emitter
public static reactor.core.publisher.FluxSink emitter
-
-
Constructor Details
-
ReactiveRemoteResourceCache
public ReactiveRemoteResourceCache(int maxSize, java.time.Duration evictionDuration, java.lang.String serviceName, java.util.function.BiFunction<java.lang.String,java.lang.Object,reactor.core.publisher.Flux> requestStream)
-
-
Method Details
-
request
public <T> reactor.core.publisher.Mono<T> request(java.lang.String key, java.lang.Object req, java.util.function.Predicate<? super reactor.retry.RetryContext<T>> retryOn) -
main
public static void main(java.lang.String[] args) throws java.lang.InterruptedException- Throws:
java.lang.InterruptedException
-