} // AsyncProcessRequest private void AsyncFinishedCallback(IAsyncResult ar) { IClientChannelSinkStack sinkStack = null; try { AsyncMessageDelegate d = (AsyncMessageDelegate)(((AsyncResult)ar).AsyncDelegate); ITransportHeaders responseHeaders; Stream responseStream; sinkStack = d.EndInvoke(out responseHeaders, out responseStream, ar); // call down the sink chain sinkStack.AsyncProcessResponse(responseHeaders, responseStream); } catch (Exception e) { try { if (sinkStack != null) { sinkStack.DispatchException(e); } } catch { // Fatal Error.. ignore } } }
public void AsyncProcessRequest(IClientChannelSinkStack sinkStack, IMessage requestMessage, ITransportHeaders requestHeaders, Stream requestStream) { ITransportHeaders responseHeaders = null; Stream responseStream = null; AsyncCallback callback = new AsyncCallback(this.AsyncFinishedCallback); IAsyncResult result = new AsyncMessageDelegate(this.AsyncProcessMessage).BeginInvoke(requestMessage, requestHeaders, requestStream, out responseHeaders, out responseStream, sinkStack, callback, null); }
public static void EvaluateJavascript(uint browserId, string javascript, AsyncMessageDelegate callback = null) { var nativeString = NativeUtf8FromString(javascript); UWK_MsgEvaluateJavascript(browserId, nativeString, callback); Marshal.FreeHGlobal(nativeString); }
public void AsyncProcessRequest(IClientChannelSinkStack sinkStack, IMessage msg, ITransportHeaders headers, Stream requestStream) { InternalRemotingServices.RemotingTrace("IpcClientTransportSink::AsyncProcessRequest"); ITransportHeaders responseHeaders; Stream responseStream; // Invoke ProcessMessage asynchronously. This should be improved // by using Datagram message AsyncCallback callback = new AsyncCallback(this.AsyncFinishedCallback); AsyncMessageDelegate async = new AsyncMessageDelegate(this.AsyncProcessMessage); async.BeginInvoke(msg, headers, requestStream, out responseHeaders, out responseStream, sinkStack, callback, null); } // AsyncProcessRequest
public void AsyncProcessRequest(IClientChannelSinkStack sinkStack, IMessage msg, ITransportHeaders headers, Stream requestStream) { InternalRemotingServices.RemotingTrace("IpcClientTransportSink::AsyncProcessRequest"); ITransportHeaders responseHeaders; Stream responseStream; // Invoke ProcessMessage asynchronously. This should be improved // by using Datagram message AsyncCallback callback = new AsyncCallback(this.AsyncFinishedCallback); AsyncMessageDelegate async = new AsyncMessageDelegate(this.AsyncProcessMessage); async.BeginInvoke(msg, headers, requestStream , out responseHeaders, out responseStream, sinkStack, callback, null); } // AsyncProcessRequest
private static extern uint UWK_MsgEvaluateJavascript(uint browserId, IntPtr utf8Javascript, AsyncMessageDelegate callback = null);