private void SetResult(IJavascriptObject[] e, IJSCBridgeCache bridge, Task<object> resulttask) { _IWebView.RunAsync (() => { if (e.Length < 2) return; IJavascriptObject promise = e[1]; if (!resulttask.IsFaulted) { bridge.RegisterInSession(resulttask.Result, (bridgevalue) => { promise.InvokeAsync("fullfill", _IWebView, bridgevalue.GetJSSessionValue()); }); } else { string error = (resulttask.IsCanceled) ? "Cancelled" : ((resulttask.Exception == null) ? "Faulted" : resulttask.Exception.Flatten().InnerException.Message); promise.InvokeAsync("reject", _IWebView, _IWebView.Factory.CreateString(error)); } }); }
private void SetResult(JavascriptMethodEventArgs e, IJSCBridgeCache bridge, Task <object> resulttask) { WebCore.QueueWork(() => { if (e.Arguments.Length < 2) { return; } JSObject promise = e.Arguments[1]; if (!resulttask.IsFaulted) { bridge.RegisterInSession(resulttask.Result, (bridgevalue) => { promise.Invoke("fullfill", bridgevalue.GetJSSessionValue()); }); } else { string error = (resulttask.IsCanceled) ? "Cancelled" : ((resulttask.Exception == null) ? "Faulted" : resulttask.Exception.Flatten().InnerException.Message); promise.Invoke("reject", error); } }); }
private void SetResult(IJavascriptObject[] e, IJSCBridgeCache bridge, Task <object> resulttask) { _IWebView.RunAsync(() => { if (e.Length < 2) { return; } IJavascriptObject promise = e[1]; if (!resulttask.IsFaulted) { bridge.RegisterInSession(resulttask.Result, (bridgevalue) => { promise.InvokeAsync("fullfill", _IWebView, bridgevalue.GetJSSessionValue()); }); } else { string error = (resulttask.IsCanceled) ? "Cancelled" : ((resulttask.Exception == null) ? "Faulted" : resulttask.Exception.Flatten().InnerException.Message); promise.InvokeAsync("reject", _IWebView, _IWebView.Factory.CreateString(error)); } }); }
private void SetResult(JavascriptMethodEventArgs e, IJSCBridgeCache bridge, Task<object> resulttask) { WebCore.QueueWork(()=> { if ( e.Arguments.Length<2) return; JSObject promise = e.Arguments[1]; if (!resulttask.IsFaulted) { bridge.RegisterInSession(resulttask.Result, (bridgevalue) => { promise.Invoke("fullfill", bridgevalue.GetJSSessionValue()); }); } else { string error = (resulttask.IsCanceled) ? "Cancelled" : ( (resulttask.Exception==null) ? "Faulted" : resulttask.Exception.Flatten().InnerException.Message); promise.Invoke("reject", error); } }); }