package it.cavallium.dbengine.lucene.searcher; import it.cavallium.dbengine.client.query.current.data.TotalHitsCount; import org.jetbrains.annotations.NotNull; import reactor.core.CoreSubscriber; import reactor.core.publisher.Flux; public class CountedFlux extends Flux { private final TotalHitsCount totalHitsCount; private final Flux flux; private CountedFlux(TotalHitsCount totalHitsCount, Flux flux) { this.totalHitsCount = totalHitsCount; this.flux = flux; } public static CountedFlux of(TotalHitsCount totalHitsCount, Flux flux) { return new CountedFlux<>(totalHitsCount, flux); } public TotalHitsCount totalHitsCount() { return totalHitsCount; } @Override public void subscribe(@NotNull CoreSubscriber actual) { flux.subscribe(actual); } }