Code:
/ WCF / WCF / 3.5.30729.1 / untmp / Orcas / SP / ndp / cdf / src / WCF / ServiceModel / System / ServiceModel / Channels / TerminateSequence.cs / 1 / TerminateSequence.cs
//---------------------------------------------------------------------------- // Copyright (c) Microsoft Corporation. All rights reserved. //--------------------------------------------------------------------------- namespace System.ServiceModel.Channels { using System; using System.ServiceModel; using System.ServiceModel.Diagnostics; using System.Xml; using System.Xml.Schema; using System.Xml.Serialization; sealed class TerminateSequence : BodyWriter { UniqueId identifier; Int64 lastMsgNumber; ReliableMessagingVersion reliableMessagingVersion; public TerminateSequence() : base(true) { } public TerminateSequence(ReliableMessagingVersion reliableMessagingVersion, UniqueId identifier, Int64 last) : base(true) { this.reliableMessagingVersion = reliableMessagingVersion; this.identifier = identifier; this.lastMsgNumber = last; } public static TerminateSequenceInfo Create(ReliableMessagingVersion reliableMessagingVersion, XmlDictionaryReader reader) { if (reader == null) { DiagnosticUtility.DebugAssert("Argument reader cannot be null."); } TerminateSequenceInfo terminateSequenceInfo = new TerminateSequenceInfo(); WsrmFeb2005Dictionary wsrmFeb2005Dictionary = XD.WsrmFeb2005Dictionary; XmlDictionaryString wsrmNs = WsrmIndex.GetNamespace(reliableMessagingVersion); reader.ReadStartElement(wsrmFeb2005Dictionary.TerminateSequence, wsrmNs); reader.ReadStartElement(wsrmFeb2005Dictionary.Identifier, wsrmNs); terminateSequenceInfo.Identifier = reader.ReadContentAsUniqueId(); reader.ReadEndElement(); if (reliableMessagingVersion == ReliableMessagingVersion.WSReliableMessaging11) { if (reader.IsStartElement(DXD.Wsrm11Dictionary.LastMsgNumber, wsrmNs)) { reader.ReadStartElement(); terminateSequenceInfo.LastMsgNumber = WsrmUtilities.ReadSequenceNumber(reader, false); reader.ReadEndElement(); } } while (reader.IsStartElement()) { reader.Skip(); } reader.ReadEndElement(); return terminateSequenceInfo; } protected override void OnWriteBodyContents(XmlDictionaryWriter writer) { WsrmFeb2005Dictionary wsrmFeb2005Dictionary = XD.WsrmFeb2005Dictionary; XmlDictionaryString wsrmNs = WsrmIndex.GetNamespace(this.reliableMessagingVersion); writer.WriteStartElement(wsrmFeb2005Dictionary.TerminateSequence, wsrmNs); writer.WriteStartElement(wsrmFeb2005Dictionary.Identifier, wsrmNs); writer.WriteValue(this.identifier); writer.WriteEndElement(); if (this.reliableMessagingVersion == ReliableMessagingVersion.WSReliableMessaging11) { if (this.lastMsgNumber > 0) { writer.WriteStartElement(DXD.Wsrm11Dictionary.LastMsgNumber, wsrmNs); writer.WriteValue(this.lastMsgNumber); writer.WriteEndElement(); } } writer.WriteEndElement(); } } } // File provided for Reference Use Only by Microsoft Corporation (c) 2007. // Copyright (c) Microsoft Corporation. All rights reserved.
Link Menu
This book is available now!
Buy at Amazon US or
Buy at Amazon UK
- XmlSchemaSearchPattern.cs
- DataSourceControl.cs
- _OverlappedAsyncResult.cs
- AuthenticationManager.cs
- LiteralTextParser.cs
- InvalidOperationException.cs
- Win32.cs
- LinqExpressionNormalizer.cs
- XmlValueConverter.cs
- CancellableEnumerable.cs
- ConnectAlgorithms.cs
- ListenerUnsafeNativeMethods.cs
- AudioFormatConverter.cs
- SystemWebCachingSectionGroup.cs
- TypeElementCollection.cs
- NavigationEventArgs.cs
- SevenBitStream.cs
- CommonRemoteMemoryBlock.cs
- XsltQilFactory.cs
- MemoryMappedViewAccessor.cs
- WorkflowDebuggerSteppingAttribute.cs
- WebResourceUtil.cs
- ToolStripOverflowButton.cs
- ViewUtilities.cs
- JsonReader.cs
- CodeAccessSecurityEngine.cs
- ToolStripStatusLabel.cs
- ConsumerConnectionPoint.cs
- ReliabilityContractAttribute.cs
- ScrollChrome.cs
- ListItemDetailViewAttribute.cs
- StructuralCache.cs
- IOThreadScheduler.cs
- Accessible.cs
- RuntimeConfig.cs
- ZipIOExtraFieldPaddingElement.cs
- HwndSubclass.cs
- CurrentChangingEventArgs.cs
- _ProxyChain.cs
- Scheduling.cs
- isolationinterop.cs
- FileSystemEnumerable.cs
- StatusBarDrawItemEvent.cs
- MethodToken.cs
- RequestBringIntoViewEventArgs.cs
- Models.cs
- InheritablePropertyChangeInfo.cs
- InputReportEventArgs.cs
- BaseAsyncResult.cs
- ComponentResourceKey.cs
- WorkflowCompensationBehavior.cs
- EnterpriseServicesHelper.cs
- NumericUpDownAccelerationCollection.cs
- CodeBlockBuilder.cs
- ToolStripGrip.cs
- _ChunkParse.cs
- ComponentDispatcher.cs
- BaseDataBoundControl.cs
- ClassDataContract.cs
- CacheAxisQuery.cs
- TemplateParser.cs
- SharedStatics.cs
- sqlcontext.cs
- ExtentJoinTreeNode.cs
- DecoratedNameAttribute.cs
- DurationConverter.cs
- PerformanceCountersElement.cs
- PropertyGridEditorPart.cs
- _AutoWebProxyScriptWrapper.cs
- QilParameter.cs
- EntityViewContainer.cs
- XmlReflectionImporter.cs
- XPathCompileException.cs
- TimeSpanParse.cs
- Property.cs
- LoginUtil.cs
- SymmetricSecurityBindingElement.cs
- FormParameter.cs
- MatrixTransform3D.cs
- ExpressionStringBuilder.cs
- ByteAnimationUsingKeyFrames.cs
- ContextStack.cs
- LineMetrics.cs
- coordinatorfactory.cs
- DefaultParameterValueAttribute.cs
- AttributeEmitter.cs
- CmsUtils.cs
- ExpandableObjectConverter.cs
- TypeExtension.cs
- latinshape.cs
- TypeReference.cs
- SpeechSeg.cs
- SmtpAuthenticationManager.cs
- DecimalAnimation.cs
- ResXResourceReader.cs
- TextModifierScope.cs
- StrokeNodeOperations.cs
- DataGridViewColumnConverter.cs
- ScalarType.cs
- TrackingSection.cs