static void OnAsyncFlush(IAsyncResult result) { if (result.CompletedSynchronously) { return; } ByteBuffer thisPtr = (ByteBuffer)result.AsyncState; AsyncEventArgs <object, ByteBuffer> asyncEventArgs = thisPtr.FlushAsyncArgs; try { ByteBuffer.WriteCallback(result); asyncEventArgs.Result = thisPtr; } catch (Exception exception) { if (Fx.IsFatal(exception)) { throw; } if (thisPtr.completionException == null) { thisPtr.completionException = exception; } } asyncEventArgs.Complete(false, thisPtr.completionException); }
static void OnWriteComplete(IAsyncEventArgs eventArgs) { InternalWriteBase64TextAsyncWriter thisPtr = (InternalWriteBase64TextAsyncWriter)eventArgs.AsyncState; AsyncEventArgs <XmlNodeWriterWriteBase64TextArgs> state = thisPtr.nodeState; thisPtr.nodeState = null; state.Complete(false, eventArgs.Exception); }
static private void OnTrailBytesComplete(IAsyncEventArgs eventArgs) { InternalWriteBase64TextAsyncWriter thisPtr = (InternalWriteBase64TextAsyncWriter)eventArgs.AsyncState; Exception completionException = null; bool completeSelf = false; try { if (eventArgs.Exception != null) { completionException = eventArgs.Exception; completeSelf = true; } else if (thisPtr.WriteBufferAsync() == AsyncCompletionResult.Completed) { completeSelf = true; } } catch (Exception exception) { if (Fx.IsFatal(exception)) { throw; } completionException = exception; completeSelf = true; } if (completeSelf) { AsyncEventArgs <XmlNodeWriterWriteBase64TextArgs> state = thisPtr.nodeState; thisPtr.nodeState = null; state.Complete(false, eventArgs.Exception); } }