Code:
/ 4.0 / 4.0 / untmp / DEVDIV_TFS / Dev10 / Releases / RTMRel / ndp / cdf / src / NetFx40 / System.ServiceModel.Routing / System / ServiceModel / Routing / DelegatingHeader.cs / 1305376 / DelegatingHeader.cs
//---------------------------------------------------------------- // Copyright (c) Microsoft Corporation. All rights reserved. //--------------------------------------------------------------- namespace System.ServiceModel.Routing { using System; using System.ServiceModel; using System.ServiceModel.Channels; using System.Xml; using System.Runtime; class DelegatingHeader : MessageHeader { int index; MessageHeaderInfo info; MessageHeaders originalHeaders; public DelegatingHeader(MessageHeaderInfo info, MessageHeaders originalHeaders) { Fx.Assert(info != null, "info is required"); Fx.Assert(originalHeaders != null, "originalHeaders is required"); this.info = info; this.originalHeaders = originalHeaders; this.index = -1; } void EnsureIndex() { if (this.index < 0) { this.index = this.originalHeaders.FindHeader(this.info.Name, this.info.Namespace); if (this.index < 0) { throw FxTrace.Exception.AsError(new InvalidOperationException(SR.SourceHeaderNotFound(this.info.Name, this.info.Namespace))); } } } protected override void OnWriteHeaderContents(XmlDictionaryWriter writer, MessageVersion messageVersion) { this.EnsureIndex(); this.originalHeaders.WriteHeaderContents(index, writer); this.index = -1; } protected override void OnWriteStartHeader(XmlDictionaryWriter writer, MessageVersion messageVersion) { this.EnsureIndex(); this.originalHeaders.WriteStartHeader(this.index, writer); } public override string Name { get { return this.info.Name; } } public override string Namespace { get { return this.info.Namespace; } } public override bool MustUnderstand { get { return this.info.MustUnderstand; } } public override string Actor { get { return this.info.Actor; } } public override bool IsReferenceParameter { get { return this.info.IsReferenceParameter; } } public override bool Relay { get { return base.Relay; } } } } // File provided for Reference Use Only by Microsoft Corporation (c) 2007.
Link Menu
This book is available now!
Buy at Amazon US or
Buy at Amazon UK
- MessageUtil.cs
- WebSysDescriptionAttribute.cs
- IntegerValidatorAttribute.cs
- CodeParameterDeclarationExpression.cs
- VisualTarget.cs
- SQLInt16.cs
- ScrollBar.cs
- ReadonlyMessageFilter.cs
- NetCodeGroup.cs
- SID.cs
- PrintPreviewGraphics.cs
- IndexingContentUnit.cs
- ResourceDictionaryCollection.cs
- NamedPermissionSet.cs
- DbConnectionPoolIdentity.cs
- TextMarkerSource.cs
- RegionInfo.cs
- JsonReader.cs
- RuleInfoComparer.cs
- Msec.cs
- EncryptedKeyIdentifierClause.cs
- CheckBox.cs
- CheckBoxField.cs
- ZipIOExtraField.cs
- Padding.cs
- PasswordRecovery.cs
- ListBoxItem.cs
- TextViewSelectionProcessor.cs
- JsonWriterDelegator.cs
- ConfigurationException.cs
- ListenUriMode.cs
- TreeViewImageIndexConverter.cs
- DeadCharTextComposition.cs
- ModelVisual3D.cs
- TextCharacters.cs
- AdRotator.cs
- ArgumentsParser.cs
- FrameworkElement.cs
- StructureChangedEventArgs.cs
- EmptyWithCancelationCheckWorkItem.cs
- BitmapMetadataEnumerator.cs
- ExtendedPropertiesHandler.cs
- ChannelEndpointElement.cs
- MaterialCollection.cs
- DataShape.cs
- Parsers.cs
- EdmToObjectNamespaceMap.cs
- HtmlInputPassword.cs
- DataViewManagerListItemTypeDescriptor.cs
- InfoCardSymmetricCrypto.cs
- PrintDialog.cs
- LocalBuilder.cs
- Subset.cs
- login.cs
- EndpointAddress.cs
- StylusPointPropertyInfoDefaults.cs
- TextContainerChangeEventArgs.cs
- FlowDocumentPaginator.cs
- ApplicationServiceHelper.cs
- PathSegment.cs
- returneventsaver.cs
- FloaterBaseParagraph.cs
- DataGridColumnFloatingHeader.cs
- TextContainer.cs
- DataBinding.cs
- MembershipAdapter.cs
- TagPrefixInfo.cs
- ImmComposition.cs
- PropertyConverter.cs
- SchemaConstraints.cs
- _StreamFramer.cs
- UserMapPath.cs
- Int64AnimationUsingKeyFrames.cs
- designeractionlistschangedeventargs.cs
- Link.cs
- SecurityTokenTypes.cs
- InputProcessorProfilesLoader.cs
- DataGridAutoFormatDialog.cs
- InfoCard.cs
- MarkupCompilePass1.cs
- RouteItem.cs
- securitycriticaldataformultiplegetandset.cs
- ExpressionContext.cs
- SynchronizedPool.cs
- GatewayDefinition.cs
- ReadWriteSpinLock.cs
- Schema.cs
- BitmapEffectState.cs
- MenuItem.cs
- BitStream.cs
- SimpleHandlerFactory.cs
- WebConfigurationFileMap.cs
- BamlBinaryWriter.cs
- CodeExpressionStatement.cs
- WebExceptionStatus.cs
- MouseWheelEventArgs.cs
- processwaithandle.cs
- DefaultShape.cs
- tooltip.cs
- PointUtil.cs