Top Inners Fields Constructors Methods
io.rsocket.core

pack-priv final Class ReconnectMono<T>

Additional top-level class in compilation unit: Invalidatable.

extends Mono<T>
implements Invalidatable, Disposable, Scannable
Class Inheritance
All Implemented Interfaces
reactor.core.Scannable, reactor.core.Disposable, io.rsocket.core.Invalidatable
Imports
java.time.Duration, java.util.concurrent.CancellationException, java.util.concurrent.atomic.AtomicIntegerFieldUpdater, .AtomicReferenceFieldUpdater, java.util.function.BiConsumer, .Consumer, org.reactivestreams.Subscription, reactor.core.CoreSubscriber, .Disposable, .Scannable, reactor.core.publisher.Mono, .Operators, reactor.util.annotation.Nullable, reactor.util.context.Context

Nested and Inner Type Summary

Modifier and TypeClass and Description
pack-priv static class
ReconnectMono.ReconnectMainSubscriber<T>

Subscriber that subscribes to the source Mono to receive its value.

pack-priv static class

Field Summary

Modifier and TypeField and Description
pack-priv final Consumer<? super T>
pack-priv final BiConsumer<? super T, Invalidatable>
pack-priv final ReconnectMono.ResolvingInner<T>
pack-priv final Mono<T>

Constructor Summary

AccessConstructor and Description
pack-priv
ReconnectMono(Mono<T> source, Consumer<? super T> onValueExpired, BiConsumer<? super T, Invalidatable> onValueReceived)

Method Summary

Modifier and TypeMethod and Description
public T

Returns:

the value of this ReconnectMono
block
()

Overrides reactor.core.publisher.Mono.block.

Block the calling thread indefinitely, waiting for the completion of this ReconnectMono.
public T

Returns:

the value of this ReconnectMono or null if the timeout is reached and the ReconnectMono has not completed
block
(Duration
the timeout value as a Duration
timeout
)

Overrides reactor.core.publisher.Mono.block.

Block the calling thread for the specified time, waiting for the completion of this ReconnectMono.
public void
dispose()

Implements reactor.core.Disposable.dispose.

Cancel or dispose the underlying task or resource.
public Mono<T>
public void
public boolean
isDisposed()

Overrides default reactor.core.Disposable.isDisposed.

Optionally return true when the resource or task is disposed.
public Object
scanUnsafe(Scannable.Attr<T>
a Attr to resolve for the component.
key
)

Implements reactor.core.Scannable.scanUnsafe.

This method is used internally by components to define their key-value mappings in a single place.
public void
subscribe(CoreSubscriber<? super T>
the Subscriber interested into the published sequence
actual
)

Implements abstract reactor.core.publisher.Mono.subscribe.

Implements reactor.core.CorePublisher.subscribe.

An internal Publisher#subscribe(Subscriber) that will bypass Hooks#onLastOperator(Function) pointcut.
Inherited from reactor.core.publisher.Mono:
andasblockOptionalblockOptionalcachecachecachecachecachecacheInvalidateIfcacheInvalidateWhencacheInvalidateWhencancelOncastcheckpointcheckpointcheckpointconcatWithcontextCapturecontextWritecontextWritecreatedefaultIfEmptydeferdeferContextualdelaydelaydelayElementdelayElementdelaySubscriptiondelaySubscriptiondelaySubscriptiondelayUntildematerializedoAfterTerminatedoFinallydoFirstdoOnCanceldoOnDiscarddoOnEachdoOnErrordoOnErrordoOnErrordoOnNextdoOnRequestdoOnSubscribedoOnSuccessdoOnTerminateelapsedelapsedemptyerrorerrorexpandexpandexpandDeepexpandDeepfilterfilterWhenfirstfirstfirstWithSignalfirstWithSignalfirstWithValuefirstWithValueflatMapflatMapIterableflatMapManyflatMapManyfluxfromfromCallablefromCompletionStagefromCompletionStagefromDirectfromFuturefromFuturefromFuturefromFuturefromRunnablefromSupplierhandlehasElementhideignoreElementignoreElementsjustjustOrEmptyjustOrEmptyloglogloglogloglogmapmapNotNullmaterializemergeWithmetricsnameneverofTypeonAssemblyonErrorCompleteonErrorCompleteonErrorCompleteonErrorContinueonErrorContinueonErrorContinueonErrorMaponErrorMaponErrorMaponErrorResumeonErrorResumeonErrorResumeonErrorReturnonErrorReturnonErrorReturnonErrorStoponTerminateDetachorpublishpublishOnrepeatrepeatrepeatrepeatrepeatWhenrepeatWhenEmptyrepeatWhenEmptyretryretryretryWhensequenceEqualsequenceEqualsequenceEqualsharesinglesingleOptionalsubscribesubscribesubscribesubscribesubscribesubscribesubscribesubscribeOnsubscribeWithswitchIfEmptytagtaketaketakeUntilOthertaptaptapthenthenthenEmptythenManythenReturntimedtimedtimeouttimeouttimeouttimeouttimeouttimeouttimestamptimestamptoFuturetoStringtransformtransformDeferredtransformDeferredContextualusingusingusingWhenusingWhenwhenwhenwhenDelayErrorwhenDelayErrorzipzipzipzipzipzipzipzipzipzipzipDelayErrorzipDelayErrorzipDelayErrorzipDelayErrorzipDelayErrorzipDelayErrorzipDelayErrorzipDelayErrorzipDelayErrorzipWhenzipWhenzipWithzipWith

Field Detail

onValueExpiredback to summary
pack-priv final Consumer<? super T> onValueExpired
onValueReceivedback to summary
pack-priv final BiConsumer<? super T, Invalidatable> onValueReceived
resolvingInnerback to summary
pack-priv final ReconnectMono.ResolvingInner<T> resolvingInner
sourceback to summary
pack-priv final Mono<T> source

Constructor Detail

ReconnectMonoback to summary
pack-priv ReconnectMono(Mono<T> source, Consumer<? super T> onValueExpired, BiConsumer<? super T, Invalidatable> onValueReceived)

Method Detail

blockback to summary
public T block()

Overrides reactor.core.publisher.Mono.block.

Block the calling thread indefinitely, waiting for the completion of this ReconnectMono. If the ReconnectMono is completed with an error a RuntimeException that wraps the error is thrown.

Returns:T

the value of this ReconnectMono

Annotations
@Override
@Nullable
blockback to summary
public T block(Duration timeout)

Overrides reactor.core.publisher.Mono.block.

Block the calling thread for the specified time, waiting for the completion of this ReconnectMono. If the ReconnectMono is completed with an error a RuntimeException that wraps the error is thrown.

Parameters
timeout:Duration

the timeout value as a Duration

Returns:T

the value of this ReconnectMono or null if the timeout is reached and the ReconnectMono has not completed

Annotations
@Override
@Nullable
@SuppressWarnings:uncheked
disposeback to summary
public void dispose()

Implements reactor.core.Disposable.dispose.

Doc from reactor.core.Disposable.dispose.

Cancel or dispose the underlying task or resource.

Implementations are required to make this method idempotent.

Annotations
@Override
getSourceback to summary
public Mono<T> getSource()
invalidateback to summary
public void invalidate()

Implements io.rsocket.core.Invalidatable.invalidate.

Annotations
@Override
isDisposedback to summary
public boolean isDisposed()

Overrides default reactor.core.Disposable.isDisposed.

Doc from reactor.core.Disposable.isDisposed.

Optionally return true when the resource or task is disposed.

Implementations are not required to track disposition and as such may never return true even when disposed. However, they MUST only return true when there's a guarantee the resource or task is disposed.

Returns:boolean

true when there's a guarantee the resource or task is disposed.

Annotations
@Override
scanUnsafeback to summary
public Object scanUnsafe(Scannable.Attr<T> key)

Implements reactor.core.Scannable.scanUnsafe.

Doc from reactor.core.Scannable.scanUnsafe.

This method is used internally by components to define their key-value mappings in a single place. Although it is ignoring the generic type of the Attr key, implementors should take care to return values of the correct type, and return null if no specific value is available.

For public consumption of attributes, prefer using scan(Attr), which will return a typed value and fall back to the key's default if the component didn't define any mapping.

Parameters
key:Scannable.Attr<T>

a Attr to resolve for the component.

Returns:Object

the value associated to the key for that specific component, or null if none.

Annotations
@Override
subscribeback to summary
public void subscribe(CoreSubscriber<? super T> actual)

Implements abstract reactor.core.publisher.Mono.subscribe.

Implements reactor.core.CorePublisher.subscribe.

Doc from reactor.core.publisher.Mono.subscribe.

An internal Publisher#subscribe(Subscriber) that will bypass Hooks#onLastOperator(Function) pointcut.

In addition to behave as expected by Publisher#subscribe(Subscriber) in a controlled manner, it supports direct subscribe-time Context passing.

Parameters
actual:CoreSubscriber<? super T>

the Subscriber interested into the published sequence

Annotations
@Override
@SuppressWarnings:uncheked
io.rsocket.core back to summary

pack-priv final Class ReconnectMono.ReconnectMainSubscriber<T>

extends Object
implements CoreSubscriber<T>
Class Inheritance
All Implemented Interfaces
reactor.core.CoreSubscriber, org.reactivestreams.Subscriber

Subscriber that subscribes to the source Mono to receive its value.
Note that the source is not expected to complete empty, and if this happens, execution will terminate with an IllegalStateException.

Field Summary

Modifier and TypeField and Description
pack-priv final ReconnectMono.ResolvingInner<T>
pack-priv volatile Subscription
s

pack-priv static final AtomicReferenceFieldUpdater<ReconnectMono.ReconnectMainSubscriber<T>, Subscription>
S

pack-priv T
pack-priv volatile int
pack-priv static final AtomicIntegerFieldUpdater<ReconnectMono.ReconnectMainSubscriber<T>>

Constructor Summary

AccessConstructor and Description
pack-priv

Method Summary

Modifier and TypeMethod and Description
pack-priv void
pack-priv final void
public void
onComplete()

Implements org.reactivestreams.Subscriber.onComplete.

Successful terminal state.
public void
onError(Throwable
the throwable signaled
t
)

Implements org.reactivestreams.Subscriber.onError.

Failed terminal state.
public void
onNext(T
the element signaled
value
)

Implements org.reactivestreams.Subscriber.onNext.

Data notification sent by the Publisher in response to requests to Subscription#request(long).
public void
onSubscribe(Subscription
the Subscription that allows requesting data via Subscription#request(long)
s
)

Implements reactor.core.CoreSubscriber.onSubscribe.

Implementors should initialize any state used by onNext(Object) before calling Subscription#request(long).
Inherited from java.lang.Object:
cloneequalsfinalizegetClasshashCodenotifynotifyAlltoStringwaitwaitwait

Field Detail

parentback to summary
pack-priv final ReconnectMono.ResolvingInner<T> parent
sback to summary
pack-priv volatile Subscription s
Sback to summary
pack-priv static final AtomicReferenceFieldUpdater<ReconnectMono.ReconnectMainSubscriber<T>, Subscription> S
Annotations
@SuppressWarnings:rawtypes
valueback to summary
pack-priv T value
wipback to summary
pack-priv volatile int wip
WIPback to summary
pack-priv static final AtomicIntegerFieldUpdater<ReconnectMono.ReconnectMainSubscriber<T>> WIP
Annotations
@SuppressWarnings:rawtypes

Constructor Detail

ReconnectMainSubscriberback to summary
pack-priv ReconnectMainSubscriber(ReconnectMono.ResolvingInner<T> parent)

Method Detail

disposeback to summary
pack-priv void dispose()
doFinallyback to summary
pack-priv final void doFinally()
onCompleteback to summary
public void onComplete()

Implements org.reactivestreams.Subscriber.onComplete.

Doc from org.reactivestreams.Subscriber.onComplete.

Successful terminal state.

No further events will be sent even if Subscription#request(long) is invoked again.

Annotations
@Override
onErrorback to summary
public void onError(Throwable t)

Implements org.reactivestreams.Subscriber.onError.

Doc from org.reactivestreams.Subscriber.onError.

Failed terminal state.

No further events will be sent even if Subscription#request(long) is invoked again.

Parameters
t:Throwable

the throwable signaled

Annotations
@Override
onNextback to summary
public void onNext(T value)

Implements org.reactivestreams.Subscriber.onNext.

Doc from org.reactivestreams.Subscriber.onNext.

Data notification sent by the Publisher in response to requests to Subscription#request(long).

Parameters
value:T

the element signaled

Annotations
@Override
onSubscribeback to summary
public void onSubscribe(Subscription s)

Implements reactor.core.CoreSubscriber.onSubscribe.

Doc from reactor.core.CoreSubscriber.onSubscribe.

Implementors should initialize any state used by onNext(Object) before calling Subscription#request(long). Should further onNext related state modification occur, thread-safety will be required.

Note that an invalid request <= 0 will not produce an onError and will simply be ignored or reported through a debug-enabled reactor.util.Logger. Invoked after calling Publisher#subscribe(Subscriber).

No data will start flowing until Subscription#request(long) is invoked.

It is the responsibility of this Subscriber instance to call Subscription#request(long) whenever more data is wanted.

The Publisher will send notifications only in response to Subscription#request(long).

Parameters
s:Subscription

Doc from org.reactivestreams.Subscriber.onSubscribe.

the Subscription that allows requesting data via Subscription#request(long)

Annotations
@Override
io.rsocket.core back to summary

pack-priv final Class ReconnectMono.ResolvingInner<T>

extends ResolvingOperator<T>
implements Scannable
Class Inheritance
All Implemented Interfaces
reactor.core.Scannable

Field Summary

Modifier and TypeField and Description
pack-priv final ReconnectMono.ReconnectMainSubscriber<? super T>
pack-priv final ReconnectMono<T>
Inherited from io.rsocket.core.ResolvingOperator:
ADDED_STATEEMPTY_SUBSCRIBEDEMPTY_UNSUBSCRIBEDON_DISPOSEREADYREADY_STATEsubscribersSUBSCRIBERStTERMINATEDTERMINATED_STATEvaluewipWIP

Constructor Summary

AccessConstructor and Description
pack-priv

Method Summary

Modifier and TypeMethod and Description
protected void
protected void
protected void
protected void
public Object
scanUnsafe(Scannable.Attr<T>
a Attr to resolve for the component.
key
)

Implements reactor.core.Scannable.scanUnsafe.

This method is used internally by components to define their key-value mappings in a single place.
Inherited from io.rsocket.core.ResolvingOperator:
addblockcompleteconnectdisposedoFinallyinvalidateisDisposedisPendingobserveremoveterminatevalueIfResolved

Field Detail

mainSubscriberback to summary
pack-priv final ReconnectMono.ReconnectMainSubscriber<? super T> mainSubscriber
parentback to summary
pack-priv final ReconnectMono<T> parent

Constructor Detail

ResolvingInnerback to summary
pack-priv ResolvingInner(ReconnectMono<T> parent)

Method Detail

doOnDisposeback to summary
protected void doOnDispose()

Overrides io.rsocket.core.ResolvingOperator.doOnDispose.

Annotations
@Override
doOnValueExpiredback to summary
protected void doOnValueExpired(T value)

Overrides io.rsocket.core.ResolvingOperator.doOnValueExpired.

Annotations
@Override
doOnValueResolvedback to summary
protected void doOnValueResolved(T value)

Overrides io.rsocket.core.ResolvingOperator.doOnValueResolved.

Annotations
@Override
doSubscribeback to summary
protected void doSubscribe()

Overrides io.rsocket.core.ResolvingOperator.doSubscribe.

Annotations
@Override
scanUnsafeback to summary
public Object scanUnsafe(Scannable.Attr<T> key)

Implements reactor.core.Scannable.scanUnsafe.

Doc from reactor.core.Scannable.scanUnsafe.

This method is used internally by components to define their key-value mappings in a single place. Although it is ignoring the generic type of the Attr key, implementors should take care to return values of the correct type, and return null if no specific value is available.

For public consumption of attributes, prefer using scan(Attr), which will return a typed value and fall back to the key's default if the component didn't define any mapping.

Parameters
key:Scannable.Attr<T>

a Attr to resolve for the component.

Returns:Object

the value associated to the key for that specific component, or null if none.

Annotations
@Override