We read every piece of feedback, and take your input very seriously.
To see all available qualifiers, see our documentation.
1 parent 4774a20 commit 9159c3fCopy full SHA for 9159c3f
1 file changed
src/main/java/org/dataloader/orchestration/CF.java
@@ -5,6 +5,7 @@
5
import java.util.concurrent.LinkedBlockingDeque;
6
import java.util.concurrent.atomic.AtomicReference;
7
import java.util.function.BiFunction;
8
+import java.util.function.Supplier;
9
10
public class CF<T> {
11
@@ -71,6 +72,20 @@ public static <T> CF<T> newExceptionally(Throwable e) {
71
72
return result;
73
}
74
75
+ public static <T> CF<T> supplyAsync(Supplier<T> supplier,
76
+ Executor executor) {
77
+
78
+ CF<T> result = new CF<>();
79
+ executor.execute(() -> {
80
+ try {
81
+ result.encodeAndSetResult(supplier.get());
82
+ } catch (Throwable ex) {
83
+ result.encodeAndSetResult(ex);
84
+ }
85
+ });
86
+ return result;
87
88
89
90
public <U> CF<U> map(BiFunction<? super T, Throwable, ? extends U> fn) {
91
CF<U> newResult = new CF<>();
0 commit comments