Package com.azure.core.util.paging
Class ContinuablePagedFlux<C,T,P extends ContinuablePage<C,T>>
- java.lang.Object
-
- reactor.core.publisher.Flux<T>
-
- com.azure.core.util.paging.ContinuablePagedFlux<C,T,P>
-
- Type Parameters:
C
- Type of the continuation token.T
- Type of the elements in the page.P
- Type of the page.
- All Implemented Interfaces:
org.reactivestreams.Publisher<T>
,CorePublisher<T>
- Direct Known Subclasses:
ContinuablePagedFluxCore
public abstract class ContinuablePagedFlux<C,T,P extends ContinuablePage<C,T>> extends Flux<T>
This class is aFlux
implementation that provides the ability to operate on pages of typeContinuablePage
and individual items in such pages. This type supports user-provided continuation tokens, allowing for restarting from a previously-retrieved continuation token.- See Also:
Flux
,ContinuablePage
-
-
Constructor Summary
Constructors Modifier Constructor Description ContinuablePagedFlux()
Creates an instance of ContinuablePagedFlux.protected
ContinuablePagedFlux(Predicate<C> continuationPredicate)
Creates an instance of ContinuablePagedFlux.
-
Method Summary
All Methods Instance Methods Abstract Methods Concrete Methods Modifier and Type Method Description abstract Flux<P>
byPage()
Gets aFlux
ofContinuablePage
starting at the first page.abstract Flux<P>
byPage(int preferredPageSize)
Gets aFlux
ofContinuablePage
starting at the first page requesting each page to contain a number of elements equal to the preferred page size.abstract Flux<P>
byPage(C continuationToken)
Gets aFlux
ofContinuablePage
beginning at the page identified by the given continuation token.abstract Flux<P>
byPage(C continuationToken, int preferredPageSize)
Gets aFlux
ofContinuablePage
beginning at the page identified by the given continuation token requesting each page to contain the number of elements equal to the preferred page size.protected Predicate<C>
getContinuationPredicate()
Gets thePredicate
that determines if paging should continue.-
Methods inherited from class reactor.core.publisher.Flux
all, any, as, blockFirst, blockFirst, blockLast, blockLast, buffer, buffer, buffer, buffer, buffer, buffer, buffer, buffer, buffer, buffer, buffer, bufferTimeout, bufferTimeout, bufferTimeout, bufferTimeout, bufferUntil, bufferUntil, bufferUntilChanged, bufferUntilChanged, bufferUntilChanged, bufferWhen, bufferWhen, bufferWhile, cache, cache, cache, cache, cache, cache, cancelOn, cast, checkpoint, checkpoint, checkpoint, collect, collect, collectList, collectMap, collectMap, collectMap, collectMultimap, collectMultimap, collectMultimap, collectSortedList, collectSortedList, combineLatest, combineLatest, combineLatest, combineLatest, combineLatest, combineLatest, combineLatest, combineLatest, combineLatest, concat, concat, concat, concat, concatDelayError, concatDelayError, concatDelayError, concatDelayError, concatMap, concatMap, concatMapDelayError, concatMapDelayError, concatMapDelayError, concatMapIterable, concatMapIterable, concatWith, concatWithValues, contextWrite, contextWrite, count, create, create, defaultIfEmpty, defer, deferContextual, deferWithContext, delayElements, delayElements, delaySequence, delaySequence, delaySubscription, delaySubscription, delaySubscription, delayUntil, dematerialize, distinct, distinct, distinct, distinct, distinctUntilChanged, distinctUntilChanged, distinctUntilChanged, doAfterTerminate, doFinally, doFirst, doOnCancel, doOnComplete, doOnDiscard, doOnEach, doOnError, doOnError, doOnError, doOnNext, doOnRequest, doOnSubscribe, doOnTerminate, elapsed, elapsed, elementAt, elementAt, empty, error, error, error, expand, expand, expandDeep, expandDeep, filter, filterWhen, filterWhen, first, first, firstWithSignal, firstWithSignal, firstWithValue, firstWithValue, flatMap, flatMap, flatMap, flatMap, flatMapDelayError, flatMapIterable, flatMapIterable, flatMapSequential, flatMapSequential, flatMapSequential, flatMapSequentialDelayError, from, fromArray, fromIterable, fromStream, fromStream, generate, generate, generate, getPrefetch, groupBy, groupBy, groupBy, groupBy, groupJoin, handle, hasElement, hasElements, hide, ignoreElements, index, index, interval, interval, interval, interval, join, just, just, last, last, limitRate, limitRate, limitRequest, log, log, log, log, log, log, map, mapNotNull, materialize, merge, merge, merge, merge, merge, merge, mergeComparing, mergeComparing, mergeComparing, mergeComparingDelayError, mergeComparingWith, mergeDelayError, mergeOrdered, mergeOrdered, mergeOrdered, mergeOrderedWith, mergeSequential, mergeSequential, mergeSequential, mergeSequential, mergeSequential, mergeSequential, mergeSequentialDelayError, mergeSequentialDelayError, mergeSequentialDelayError, mergeWith, metrics, name, never, next, ofType, onAssembly, onAssembly, onBackpressureBuffer, onBackpressureBuffer, onBackpressureBuffer, onBackpressureBuffer, onBackpressureBuffer, onBackpressureBuffer, onBackpressureBuffer, onBackpressureDrop, onBackpressureDrop, onBackpressureError, onBackpressureLatest, onErrorContinue, onErrorContinue, onErrorContinue, onErrorMap, onErrorMap, onErrorMap, onErrorResume, onErrorResume, onErrorResume, onErrorReturn, onErrorReturn, onErrorReturn, onErrorStop, onTerminateDetach, or, parallel, parallel, parallel, publish, publish, publish, publish, publishNext, publishOn, publishOn, publishOn, push, push, range, reduce, reduce, reduceWith, repeat, repeat, repeat, repeat, repeatWhen, replay, replay, replay, replay, replay, replay, retry, retry, retryWhen, sample, sample, sampleFirst, sampleFirst, sampleTimeout, sampleTimeout, scan, scan, scanWith, share, shareNext, single, single, singleOrEmpty, skip, skip, skip, skipLast, skipUntil, skipUntilOther, skipWhile, sort, sort, startWith, startWith, startWith, subscribe, subscribe, subscribe, subscribe, subscribe, subscribe, subscribe, subscribe, subscribeOn, subscribeOn, subscriberContext, subscriberContext, subscribeWith, switchIfEmpty, switchMap, switchMap, switchOnFirst, switchOnFirst, switchOnNext, switchOnNext, tag, take, take, take, take, takeLast, takeUntil, takeUntilOther, takeWhile, then, then, thenEmpty, thenMany, timed, timed, timeout, timeout, timeout, timeout, timeout, timeout, timeout, timestamp, timestamp, toIterable, toIterable, toIterable, toStream, toStream, toString, transform, transformDeferred, transformDeferredContextual, using, using, usingWhen, usingWhen, window, window, window, window, window, window, window, windowTimeout, windowTimeout, windowUntil, windowUntil, windowUntil, windowUntilChanged, windowUntilChanged, windowUntilChanged, windowWhen, windowWhile, windowWhile, withLatestFrom, zip, zip, zip, zip, zip, zip, zip, zip, zip, zip, zip, zip, zip, zipWith, zipWith, zipWith, zipWith, zipWithIterable, zipWithIterable
-
-
-
-
Constructor Detail
-
ContinuablePagedFlux
public ContinuablePagedFlux()
Creates an instance of ContinuablePagedFlux.Continuation completes when the last returned continuation token is null.
-
ContinuablePagedFlux
protected ContinuablePagedFlux(Predicate<C> continuationPredicate)
Creates an instance of ContinuablePagedFlux.If
continuationPredicate
is null then the predicate will only check if the continuation token is non-null.- Parameters:
continuationPredicate
- A predicate which determines if paging should continue.
-
-
Method Detail
-
byPage
public abstract Flux<P> byPage()
Gets aFlux
ofContinuablePage
starting at the first page.- Returns:
- A
Flux
ofContinuablePage
.
-
byPage
public abstract Flux<P> byPage(C continuationToken)
Gets aFlux
ofContinuablePage
beginning at the page identified by the given continuation token.- Parameters:
continuationToken
- A continuation token identifying the page to select.- Returns:
- A
Flux
ofContinuablePage
.
-
byPage
public abstract Flux<P> byPage(int preferredPageSize)
Gets aFlux
ofContinuablePage
starting at the first page requesting each page to contain a number of elements equal to the preferred page size.The service may or may not honor the preferred page size therefore the client MUST be prepared to handle pages with different page sizes.
- Parameters:
preferredPageSize
- The preferred page size.- Returns:
- A
Flux
ofContinuablePage
.
-
byPage
public abstract Flux<P> byPage(C continuationToken, int preferredPageSize)
Gets aFlux
ofContinuablePage
beginning at the page identified by the given continuation token requesting each page to contain the number of elements equal to the preferred page size.The service may or may not honor the preferred page size therefore the client MUST be prepared to handle pages with different page sizes.
- Parameters:
continuationToken
- A continuation token identifying the page to select.preferredPageSize
- The preferred page size.- Returns:
- A
Flux
ofContinuablePage
.
-
-