public override Message CreateMessage() { OperationFormatterBodyWriter operationFormatterBodyWriter = base.BodyWriter as OperationFormatterBodyWriter; if (operationFormatterBodyWriter == null) { return(base.CreateMessage()); } lock (ThisLock) { if (base.Closed) { throw DiagnosticUtility.ExceptionUtility.ThrowHelperError(CreateBufferDisposedException()); } return(new OperationFormatterMessage(base.Headers, base.Properties, operationFormatterBodyWriter)); } }
internal OnWriteBodyContentsAsyncResult(OperationFormatterBodyWriter operationFormatterBodyWriter, XmlDictionaryWriter writer, AsyncCallback callback, object state) : base(callback, state) { bool completeSelf = true; _operationFormatter = operationFormatterBodyWriter.OperationFormatter; IAsyncResult result = _operationFormatter.BeginSerializeBodyContents(writer, operationFormatterBodyWriter._version, operationFormatterBodyWriter._parameters, operationFormatterBodyWriter._returnValue, operationFormatterBodyWriter._isRequest, PrepareAsyncCompletion(s_handleEndOnWriteBodyContents), this); completeSelf = SyncContinue(result); if (completeSelf) { Complete(true); } }
private OperationFormatterMessage(MessageHeaders headers, KeyValuePair <string, object>[] properties, OperationFormatterBodyWriter bodyWriter) : base(headers, properties, bodyWriter) { _operationFormatter = bodyWriter.OperationFormatter; }