Package org.vaadin.firitin.util
Class JsPromise
java.lang.Object
org.vaadin.firitin.util.JsPromise
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionstatic <T> CompletableFuture<T> resolve(String promiseBody, Class<T> returnType, Serializable... args) Asynchronously returns a value from the client side.static CompletableFuture<Boolean> resolveBoolean(String promiseBody, Serializable... args) Asynchronously returns a boolean from the client side.static CompletableFuture<Double> resolveDouble(String promiseBody, Serializable... args) Asynchronously returns a double from the client side.static CompletableFuture<Integer> resolveInteger(String promiseBody, Serializable... args) Asynchronously returns an integer from the client side.static CompletableFuture<String> resolveString(String promiseBody, Serializable... args) Asynchronously returns a string from the client side.
-
Constructor Details
-
JsPromise
public JsPromise()
-
-
Method Details
-
resolveString
Asynchronously returns a string from the client side. The JS given for this method is a JS Promise body with "resolve" and "reject" defined for returning the value or failing the request.- Parameters:
promiseBody- a JS snippet that resolves a promiseargs- the extra arguments interpolated into JS as in Element.executeJs- Returns:
- the string as
CompletableFuture
-
resolveBoolean
Asynchronously returns a boolean from the client side. The JS given for this method is a JS Promise body with "resolve" and "reject" defined for returning the value or failing the request.- Parameters:
promiseBody- a JS snippet that resolves a promiseargs- the extra arguments interpolated into JS as in Element.executeJs- Returns:
- the boolean as
CompletableFuture
-
resolveInteger
Asynchronously returns an integer from the client side. The JS given for this method is a JS Promise body with "resolve" and "reject" defined for returning the value or failing the request.- Parameters:
promiseBody- a JS snippet that resolves a promiseargs- the extra arguments interpolated into JS as in Element.executeJs- Returns:
- the integer as
CompletableFuture
-
resolveDouble
Asynchronously returns a double from the client side. The JS given for this method is a JS Promise body with "resolve" and "reject" defined for returning the value or failing the request.- Parameters:
promiseBody- a JS snippet that resolves a promiseargs- the extra arguments interpolated into JS as in Element.executeJs- Returns:
- the double as
CompletableFuture
-
resolve
public static <T> CompletableFuture<T> resolve(String promiseBody, Class<T> returnType, Serializable... args) Asynchronously returns a value from the client side. The JS given for this method is a JS Promise body with "resolve" and "reject" defined for returning the value or failing the request.- Type Parameters:
T- the return type, if not a basic data type, the return parameter in browser is expected to be JSON that is then mapped to given type with Jackson- Parameters:
promiseBody- a JS snippet that resolves a promisereturnType- the return value type: String, Integer, Double, Boolean or an object that gets serialized to JSON and deserialized with default Jackson settings on the server side.args- the extra arguments interpolated into JS as in Element.executeJs- Returns:
- the future to get the value
-