tdlib-session-container/src/main/java/it/tdlight/reactiveapi/rsocket/PendingEventsToProduce.java

16 lines
594 B
Java

package it.tdlight.reactiveapi.rsocket;
import io.rsocket.Payload;
import java.util.concurrent.CompletableFuture;
import reactor.core.publisher.Flux;
sealed interface PendingEventsToProduce {
record ServerPendingEventsToProduce(Flux<Payload> events, CompletableFuture<Void> initCf,
CompletableFuture<Void> doneCf) implements PendingEventsToProduce {}
record ClientPendingEventsToProduce(CompletableFuture<Void> doneCf,
CompletableFuture<Flux<Payload>> fluxCf,
CompletableFuture<Void> initCf) implements PendingEventsToProduce {}
}