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
- ConfigurationElement.cs
- SessionStateSection.cs
- PermissionToken.cs
- MetafileEditor.cs
- DeobfuscatingStream.cs
- WorkflowElementDialog.cs
- TextBoxAutomationPeer.cs
- XmlChildNodes.cs
- GridViewRowPresenterBase.cs
- SqlServer2KCompatibilityCheck.cs
- XmlEnumAttribute.cs
- Rectangle.cs
- RayHitTestParameters.cs
- RegexFCD.cs
- TransformCryptoHandle.cs
- ProfileManager.cs
- Int16Converter.cs
- BooleanFunctions.cs
- AddressingProperty.cs
- HttpGetClientProtocol.cs
- DisableDpiAwarenessAttribute.cs
- PartDesigner.cs
- BuildProvidersCompiler.cs
- XdrBuilder.cs
- AttributeData.cs
- ProcessHostFactoryHelper.cs
- XmlCustomFormatter.cs
- CreateUserWizardStep.cs
- ClickablePoint.cs
- DialogWindow.cs
- Model3D.cs
- AesManaged.cs
- ToolbarAUtomationPeer.cs
- IISUnsafeMethods.cs
- ActiveXHelper.cs
- XsdValidatingReader.cs
- AbstractSvcMapFileLoader.cs
- StagingAreaInputItem.cs
- RuleConditionDialog.cs
- ReplyChannel.cs
- SelectedGridItemChangedEvent.cs
- HitTestFilterBehavior.cs
- SqlNodeAnnotation.cs
- NativeMethods.cs
- SimpleApplicationHost.cs
- GradientBrush.cs
- KnownTypeHelper.cs
- HandlerBase.cs
- BitmapPalettes.cs
- NetMsmqSecurity.cs
- RightNameExpirationInfoPair.cs
- SingleSelectRootGridEntry.cs
- MarkupExtensionParser.cs
- TypedRowHandler.cs
- LinkedResource.cs
- GlyphRunDrawing.cs
- ProfilePropertySettingsCollection.cs
- Graph.cs
- SerializerProvider.cs
- TabletDeviceInfo.cs
- DataGridViewRowCancelEventArgs.cs
- StringPropertyBuilder.cs
- CollectionEditVerbManager.cs
- DataGridPageChangedEventArgs.cs
- DetailsViewDeletedEventArgs.cs
- CompilerLocalReference.cs
- PartialArray.cs
- FirstMatchCodeGroup.cs
- DataGridViewRowEventArgs.cs
- DESCryptoServiceProvider.cs
- Timeline.cs
- GeometryValueSerializer.cs
- AppDomainManager.cs
- SaveLedgerEntryRequest.cs
- CriticalHandle.cs
- Ref.cs
- DataReaderContainer.cs
- HostedTransportConfigurationBase.cs
- QilStrConcat.cs
- EastAsianLunisolarCalendar.cs
- HttpDebugHandler.cs
- MultiTargetingUtil.cs
- SqlException.cs
- DrawingContextWalker.cs
- WebPartRestoreVerb.cs
- StopStoryboard.cs
- EntityDataSourceQueryBuilder.cs
- ProtectedConfigurationProviderCollection.cs
- ListItemConverter.cs
- serverconfig.cs
- StateManagedCollection.cs
- ServiceOperation.cs
- ErrorTableItemStyle.cs
- UnicodeEncoding.cs
- odbcmetadatafactory.cs
- CompilationUtil.cs
- ObjRef.cs
- TextElementAutomationPeer.cs
- AudioStateChangedEventArgs.cs
- RangeValueProviderWrapper.cs