I guess you need to super-source this class so the gwt compiler could use it.
-- You can take a look at my initial CompletableFuture implementation here:
https://github.com/nordligulv/gwt/tree/completable-future
https://github.com/nordligulv/gwt/commit/ea70c5358bac3c939cb0c1628a58ccc462cd7423
Feel free to use it but note that I haven't tested it properly yet.
On Monday, September 5, 2016 at 3:28:27 AM UTC+3, Ian Preston wrote:
On Monday, September 5, 2016 at 3:28:27 AM UTC+3, Ian Preston wrote:
I'm trying to emulate CompletableFuture by backing directly onto Promise, but when compiling it gives this error:"No source code is available for type java.util.concurrent.CompletableFuture<T>" (it finds other JRE classes I've replaced fine)My source I'm including is below. Am I doing anything illegal?******************************************** package java.util.concurrent;import com.google.gwt.user.client.*;import jsinterop.annotations.*;import java.util.function.*;@JsType(isNative=true, name = "Promise", namespace = JsPackage.GLOBAL)public class CompletableFuture<T> implements CompletionStage<T> {@JsMethod(name = "then")public native <U> CompletableFuture<U> thenApply(Function<? super T,? extends U> fn);@JsMethod(name = "then")public native CompletableFuture<Void> thenAccept(Consumer<? super T> action);@JsMethod(name = "then")public native <U> CompletableFuture<U> thenCompose(Function<? super T, ? extends CompletionStage<U>> fn);@JsMethod(name = "reject")public native boolean completeExceptionally(Throwable ex); @JsMethod(name = "resolve")public native boolean complete(T value);@JsMethod(name = "resolve")public static native <U> CompletableFuture<U> completedFuture(U value);@JsOverlaypublic T get() throws InterruptedException, ExecutionException {Window.alert("Calling synchronous get() on CompletableFuture is not possible in Javascript!");throw new IllegalStateException("Unimplemented!"); }}
You received this message because you are subscribed to the Google Groups "GWT Users" group.
To unsubscribe from this group and stop receiving emails from it, send an email to google-web-toolkit+unsubscribe@googlegroups.com.
To post to this group, send email to google-web-toolkit@googlegroups.com.
Visit this group at https://groups.google.com/group/google-web-toolkit.
For more options, visit https://groups.google.com/d/optout.
No comments:
Post a Comment