| 12345678910111213141516171819202122232425262728293031323334353637383940 |
- package fr.natan.akkastreamfileprocessingapi.futurecompleteness;
-
-
- import scala.collection.IndexedSeq;
- import scala.concurrent.Future;
-
- import java.util.concurrent.CompletableFuture;
- import java.util.concurrent.Executors;
-
-
-
- public class CompletableFutureBuilder<T> {
-
- public static<T> CompletableFuture<T> buildcompletableFuture1(Future<T> futureT) {
- CompletableFuture<T> completableFuture = new CompletableFuture<>();
- Executors.newSingleThreadExecutor().submit(() -> {
- while(!futureT.isCompleted()){
- Thread.sleep(100);
- }
- completableFuture.complete(futureT.value().get().get());
- return null;
- });
-
- return completableFuture;
- }
-
- public static<T> CompletableFuture<IndexedSeq<T>> buildcompletableFuture2(Future<IndexedSeq<T>> futureListT) {
- CompletableFuture<IndexedSeq<T>> completableFuture = new CompletableFuture<>();
- Executors.newSingleThreadExecutor().submit(() -> {
- while(!futureListT.isCompleted()){
- Thread.sleep(100);
- }
- completableFuture.complete(futureListT.value().get().get());
- return null;
- });
-
- return completableFuture;
- }
-
- }
|