Package io.keldysh.messaging
Class MessageFlow<T>
java.lang.Object
io.keldysh.messaging.MessageFlow<T>
- All Implemented Interfaces:
MessageSource<T>
,Supplier<MessageFlow<T>>
,org.reactivestreams.Publisher<Message<T>>
-
Nested Class Summary
Nested Classes -
Field Summary
Fields -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionreactor.core.publisher.Flux<T>
static reactor.util.retry.Retry
backoffRetry
(long min, long max) <U> MessageFlow<U>
batchFixed
(int size, Function<? super MessageFlow<T>, ? extends MessageFlow<U>> batchHandler) <U> MessageFlow<U>
batchInterval
(int duration, Function<? super MessageFlow<T>, ? extends MessageFlow<U>> batchHandler) <U> MessageFlow<U>
batchSamplingInterval
(int duration, Function<? super MessageFlow<T>, ? extends MessageFlow<U>> batchHandler) blockLastRetry
(reactor.util.retry.Retry retry) <A,
R> MessageFlow<R> <U> MessageFlow<U>
concatWith
(org.reactivestreams.Publisher<? extends Message<T>> other) <U> MessageFlow<U>
connect
(Function<? super MessageFlow<T>, ? extends org.reactivestreams.Publisher<? extends Message<U>>> handler) <E extends Throwable>
MessageFlow<T>static <T> MessageFlow<T>
empty()
static <T> MessageFlow<T>
final <U> MessageFlow<U>
fan
(Function<? super MessageFlow<T>, ? extends org.reactivestreams.Publisher<? extends Message<U>>>... consumerFlows) <U> MessageFlow<U>
<U> MessageFlow<U>
flatMap
(Function<? super T, ? extends org.reactivestreams.Publisher<? extends U>> handler, int concurrency) <K,
U> MessageFlow<U> group
(Function<T, K> keyMapper, Function<K, Function<? super MessageFlow<T>, ? extends org.reactivestreams.Publisher<Message<U>>>> groupHandlerFlow) <K,
U> MessageFlow<U> group
(Function<T, K> keyMapper, Function<K, Function<? super MessageFlow<T>, ? extends org.reactivestreams.Publisher<Message<U>>>> groupHandlerFlow, int maxGroups) <U> MessageFlow<U>
handle
(BiConsumer<? super T, reactor.core.publisher.SynchronousSink<U>> biConsumer) static <T> MessageFlow<T>
<U> MessageFlow<U>
static <T> MessageFlow<T>
reduce
(BinaryOperator<T> reducer) retry()
retry
(reactor.util.retry.Retry retry) reactor.core.Disposable
void
reactor.core.Disposable
reactor.core.Disposable
subscribeRetry
(reactor.util.retry.Retry retry) take
(long n) takeUntilOther
(org.reactivestreams.Publisher<?> other) <U> MessageFlow<U>
withMessages
(Function<? super reactor.core.publisher.Flux<Message<T>>, ? extends org.reactivestreams.Publisher<Message<U>>> fluxMapper) Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
Methods inherited from interface io.keldysh.messaging.MessageSource
flow, get
-
Field Details
-
DEFAULT_RETRY_STRATEGY
public static final reactor.util.retry.Retry DEFAULT_RETRY_STRATEGY
-
-
Constructor Details
-
MessageFlow
public MessageFlow()
-
-
Method Details
-
backoffRetry
public static reactor.util.retry.Retry backoffRetry(long min, long max) -
of
public static <T> MessageFlow<T> of(org.reactivestreams.Publisher<? extends Message<T>> messageFlux) -
just
-
empty
-
error
-
subscribe
- Specified by:
subscribe
in interfaceorg.reactivestreams.Publisher<T>
-
connect
public <U> MessageFlow<U> connect(Function<? super MessageFlow<T>, ? extends org.reactivestreams.Publisher<? extends Message<U>>> handler) -
withMessages
public <U> MessageFlow<U> withMessages(Function<? super reactor.core.publisher.Flux<Message<T>>, ? extends org.reactivestreams.Publisher<Message<U>>> fluxMapper) -
map
-
filter
-
handle
public <U> MessageFlow<U> handle(BiConsumer<? super T, reactor.core.publisher.SynchronousSink<U>> biConsumer) -
concatMap
public <U> MessageFlow<U> concatMap(Function<? super T, ? extends org.reactivestreams.Publisher<? extends U>> handler) -
flatMap
public <U> MessageFlow<U> flatMap(Function<? super T, ? extends org.reactivestreams.Publisher<? extends U>> handler) -
flatMap
public <U> MessageFlow<U> flatMap(Function<? super T, ? extends org.reactivestreams.Publisher<? extends U>> handler, int concurrency) -
consume
public MessageFlow<Void> consume(Function<? super T, ? extends org.reactivestreams.Publisher<Void>> handler) -
consume
public MessageFlow<Void> consume(Function<? super T, ? extends org.reactivestreams.Publisher<Void>> handler, int concurrency) -
batchFixed
public <U> MessageFlow<U> batchFixed(int size, Function<? super MessageFlow<T>, ? extends MessageFlow<U>> batchHandler) -
batchInterval
public <U> MessageFlow<U> batchInterval(int duration, Function<? super MessageFlow<T>, ? extends MessageFlow<U>> batchHandler) -
batchSamplingInterval
public <U> MessageFlow<U> batchSamplingInterval(int duration, Function<? super MessageFlow<T>, ? extends MessageFlow<U>> batchHandler) -
reduce
-
collect
-
group
public <K,U> MessageFlow<U> group(Function<T, K> keyMapper, Function<K, Function<? super MessageFlow<T>, ? extends org.reactivestreams.Publisher<Message<U>>>> groupHandlerFlow) -
group
public <K,U> MessageFlow<U> group(Function<T, K> keyMapper, Function<K, Function<? super MessageFlow<T>, ? extends org.reactivestreams.Publisher<Message<U>>>> groupHandlerFlow, int maxGroups) -
fan
@SafeVarargs public final <U> MessageFlow<U> fan(Function<? super MessageFlow<T>, ? extends org.reactivestreams.Publisher<? extends Message<U>>>... consumerFlows) -
retry
-
retry
-
to
-
acknowledge
-
subscribe
public reactor.core.Disposable subscribe() -
subscribeRetry
public reactor.core.Disposable subscribeRetry() -
subscribeRetry
public reactor.core.Disposable subscribeRetry(reactor.util.retry.Retry retry) -
take
-
take
-
takeUntilOther
-
blockLast
-
blockLastRetry
-
blockLastRetry
-
doOnEach
-
doOnError
-
doOnError
public <E extends Throwable> MessageFlow<T> doOnError(Class<E> exceptionType, Consumer<? super E> onError) -
doOnError
-
doOnNext
-
doFinally
-
concatWith
-