Code:
/ WCF / WCF / 3.5.30729.1 / untmp / Orcas / SP / ndp / cdf / src / WCF / ServiceModel / System / ServiceModel / Channels / CreateSequenceResponse.cs / 1 / CreateSequenceResponse.cs
//---------------------------------------------------------------------------- // Copyright (c) Microsoft Corporation. All rights reserved. //--------------------------------------------------------------------------- namespace System.ServiceModel.Channels { using System.Xml; sealed class CreateSequenceResponse : BodyWriter { EndpointAddress acceptAcksTo; AddressingVersion addressingVersion; Nullableexpires; UniqueId identifier; bool ordered; ReliableMessagingVersion reliableMessagingVersion; CreateSequenceResponse() : base(true) { } public CreateSequenceResponse(AddressingVersion addressingVersion, ReliableMessagingVersion reliableMessagingVersion) : base(true) { this.addressingVersion = addressingVersion; this.reliableMessagingVersion = reliableMessagingVersion; } public EndpointAddress AcceptAcksTo { get { return this.acceptAcksTo; } set { this.acceptAcksTo = value; } } public Nullable Expires { get { return this.expires; } set { this.expires = value; } } public UniqueId Identifier { get { return this.identifier; } set { this.identifier = value; } } public bool Ordered { get { return this.ordered; } set { this.ordered = value; } } public static CreateSequenceResponseInfo Create(AddressingVersion addressingVersion, ReliableMessagingVersion reliableMessagingVersion, XmlDictionaryReader reader) { if (reader == null) { DiagnosticUtility.DebugAssert("Argument reader cannot be null."); } CreateSequenceResponseInfo createSequenceResponse = new CreateSequenceResponseInfo(); WsrmFeb2005Dictionary wsrmFeb2005Dictionary = XD.WsrmFeb2005Dictionary; XmlDictionaryString wsrmNs = WsrmIndex.GetNamespace(reliableMessagingVersion); reader.ReadStartElement(wsrmFeb2005Dictionary.CreateSequenceResponse, wsrmNs); reader.ReadStartElement(wsrmFeb2005Dictionary.Identifier, wsrmNs); createSequenceResponse.Identifier = reader.ReadContentAsUniqueId(); reader.ReadEndElement(); if (reader.IsStartElement(wsrmFeb2005Dictionary.Expires, wsrmNs)) { reader.ReadElementContentAsTimeSpan(); } if (reliableMessagingVersion == ReliableMessagingVersion.WSReliableMessaging11) { if (reader.IsStartElement(DXD.Wsrm11Dictionary.IncompleteSequenceBehavior, wsrmNs)) { string incompleteSequenceBehavior = reader.ReadElementContentAsString(); if ((incompleteSequenceBehavior != Wsrm11Strings.DiscardEntireSequence) && (incompleteSequenceBehavior != Wsrm11Strings.DiscardFollowingFirstGap) && (incompleteSequenceBehavior != Wsrm11Strings.NoDiscard)) { string reason = SR.GetString(SR.CSResponseWithInvalidIncompleteSequenceBehavior); throw DiagnosticUtility.ExceptionUtility.ThrowHelperError(new XmlException(reason)); } // Otherwise ignore the value. } } if (reader.IsStartElement(wsrmFeb2005Dictionary.Accept, wsrmNs)) { reader.ReadStartElement(); createSequenceResponse.AcceptAcksTo = EndpointAddress.ReadFrom(addressingVersion, reader, wsrmFeb2005Dictionary.AcksTo, wsrmNs); while (reader.IsStartElement()) { reader.Skip(); } reader.ReadEndElement(); } while (reader.IsStartElement()) { reader.Skip(); } reader.ReadEndElement(); return createSequenceResponse; } protected override void OnWriteBodyContents(XmlDictionaryWriter writer) { WsrmFeb2005Dictionary wsrmFeb2005Dictionary = XD.WsrmFeb2005Dictionary; XmlDictionaryString wsrmNs = WsrmIndex.GetNamespace(this.reliableMessagingVersion); writer.WriteStartElement(wsrmFeb2005Dictionary.CreateSequenceResponse, wsrmNs); writer.WriteStartElement(wsrmFeb2005Dictionary.Identifier, wsrmNs); writer.WriteValue(this.identifier); writer.WriteEndElement(); if (this.expires.HasValue) { writer.WriteStartElement(wsrmFeb2005Dictionary.Expires, wsrmNs); writer.WriteValue(this.expires.Value); writer.WriteEndElement(); } if (this.reliableMessagingVersion == ReliableMessagingVersion.WSReliableMessaging11) { Wsrm11Dictionary wsrm11Dictionary = DXD.Wsrm11Dictionary; writer.WriteStartElement(wsrm11Dictionary.IncompleteSequenceBehavior, wsrmNs); writer.WriteValue( this.ordered ? wsrm11Dictionary.DiscardFollowingFirstGap : wsrm11Dictionary.NoDiscard); writer.WriteEndElement(); } if (this.acceptAcksTo != null) { writer.WriteStartElement(wsrmFeb2005Dictionary.Accept, wsrmNs); this.acceptAcksTo.WriteTo(this.addressingVersion, writer, wsrmFeb2005Dictionary.AcksTo, wsrmNs); 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
- NameValueConfigurationElement.cs
- util.cs
- AsyncDataRequest.cs
- CompiledAction.cs
- FormatterConverter.cs
- RawTextInputReport.cs
- Int64.cs
- DbMetaDataCollectionNames.cs
- SvcFileManager.cs
- ASCIIEncoding.cs
- XmlSerializerFactory.cs
- DataPagerField.cs
- XamlGridLengthSerializer.cs
- ReferentialConstraint.cs
- ManipulationStartingEventArgs.cs
- InternalsVisibleToAttribute.cs
- PackWebRequestFactory.cs
- SafeMarshalContext.cs
- FloaterParagraph.cs
- StorageMappingFragment.cs
- Soap.cs
- RegexInterpreter.cs
- StreamInfo.cs
- PrimaryKeyTypeConverter.cs
- DescriptionAttribute.cs
- FamilyTypeface.cs
- DataGridTablesFactory.cs
- validation.cs
- DesignerMetadata.cs
- TextTreeInsertUndoUnit.cs
- PropertyGridEditorPart.cs
- PartialTrustVisibleAssembly.cs
- ColorAnimationBase.cs
- XmlAtomicValue.cs
- ProviderConnectionPointCollection.cs
- DataTableReaderListener.cs
- HMACSHA384.cs
- CodeRemoveEventStatement.cs
- ScriptMethodAttribute.cs
- SiteMapNodeItem.cs
- WpfWebRequestHelper.cs
- HtmlElementCollection.cs
- VariableBinder.cs
- HttpRequestTraceRecord.cs
- ValidationEventArgs.cs
- StringArrayEditor.cs
- TriggerActionCollection.cs
- CompressionTransform.cs
- HttpContext.cs
- DefaultBinder.cs
- AudioSignalProblemOccurredEventArgs.cs
- SynchronizedDispatch.cs
- Label.cs
- SettingsProviderCollection.cs
- SqlDelegatedTransaction.cs
- InvalidWMPVersionException.cs
- ToolBarButton.cs
- PreloadHost.cs
- OrderedEnumerableRowCollection.cs
- StateDesigner.CommentLayoutGlyph.cs
- WhileDesigner.cs
- TextEditorDragDrop.cs
- FixedSOMLineRanges.cs
- FixedLineResult.cs
- Helpers.cs
- FocusChangedEventArgs.cs
- SQLRoleProvider.cs
- TableLayoutPanelDesigner.cs
- HtmlFormParameterWriter.cs
- HMACSHA256.cs
- FieldToken.cs
- GPStream.cs
- ViewStateModeByIdAttribute.cs
- SwitchAttribute.cs
- CommandConverter.cs
- SecUtil.cs
- ManagedCodeMarkers.cs
- IIS7ConfigurationLoader.cs
- followingquery.cs
- EventPropertyMap.cs
- XmlSchemaSimpleTypeRestriction.cs
- QueryExtender.cs
- OpCodes.cs
- ColumnMapTranslator.cs
- TableRow.cs
- EventToken.cs
- StatusBarDrawItemEvent.cs
- HtmlTernaryTree.cs
- TimeManager.cs
- EventsTab.cs
- ContentValidator.cs
- PropertyDescriptorComparer.cs
- ClientRoleProvider.cs
- OleCmdHelper.cs
- BypassElementCollection.cs
- WebBrowserBase.cs
- FixedLineResult.cs
- SqlMetaData.cs
- BaseTemplateParser.cs
- _Events.cs