Code:
/ WCF / WCF / 3.5.30729.1 / untmp / Orcas / SP / ndp / cdf / src / WCF / ServiceModel / System / ServiceModel / Security / DecryptedHeader.cs / 1 / DecryptedHeader.cs
//------------------------------------------------------------ // Copyright (c) Microsoft Corporation. All rights reserved. //----------------------------------------------------------- namespace System.ServiceModel.Security { using System.Xml; using System.ServiceModel.Channels; using System.ServiceModel; sealed class DecryptedHeader : ReadableMessageHeader { XmlDictionaryReader cachedReader; readonly byte[] decryptedBuffer; readonly string id; readonly string name; readonly string namespaceUri; readonly string actor; readonly bool mustUnderstand; readonly bool relay; readonly bool isRefParam; readonly MessageVersion version; readonly XmlAttributeHolder[] envelopeAttributes; readonly XmlAttributeHolder[] headerAttributes; readonly XmlDictionaryReaderQuotas quotas; public DecryptedHeader(byte[] decryptedBuffer, XmlAttributeHolder[] envelopeAttributes, XmlAttributeHolder[] headerAttributes, MessageVersion version, SignatureTargetIdManager idManager, XmlDictionaryReaderQuotas quotas) { if (quotas == null) throw DiagnosticUtility.ExceptionUtility.ThrowHelperArgumentNull("quotas"); this.decryptedBuffer = decryptedBuffer; this.version = version; this.envelopeAttributes = envelopeAttributes; this.headerAttributes = headerAttributes; this.quotas = quotas; XmlDictionaryReader reader = CreateReader(); reader.MoveToStartElement(); this.name = reader.LocalName; this.namespaceUri = reader.NamespaceURI; MessageHeader.GetHeaderAttributes(reader, version, out this.actor, out this.mustUnderstand, out this.relay, out this.isRefParam); this.id = idManager.ExtractId(reader); this.cachedReader = reader; } public override string Actor { get { return this.actor; } } public string Id { get { return this.id; } } public override bool IsReferenceParameter { get { return this.isRefParam; } } public override bool MustUnderstand { get { return this.mustUnderstand; } } public override string Name { get { return this.name; } } public override string Namespace { get { return this.namespaceUri; } } public override bool Relay { get { return this.relay; } } XmlDictionaryReader CreateReader() { return ContextImportHelper.CreateSplicedReader( this.decryptedBuffer, this.envelopeAttributes, this.headerAttributes, null, this.quotas); } public override XmlDictionaryReader GetHeaderReader() { if (this.cachedReader != null) { XmlDictionaryReader cachedReader = this.cachedReader; this.cachedReader = null; return cachedReader; } XmlDictionaryReader reader = CreateReader(); reader.MoveToContent(); return reader; } public override bool IsMessageVersionSupported(MessageVersion messageVersion) { return this.version.Equals(version); } } } // 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
- DockPattern.cs
- DrawingCollection.cs
- SymmetricSecurityProtocol.cs
- SqlCacheDependencySection.cs
- ExecutedRoutedEventArgs.cs
- InstalledFontCollection.cs
- HtmlHead.cs
- FileDialogCustomPlace.cs
- ColumnHeader.cs
- Pen.cs
- ContainerAction.cs
- XmlSecureResolver.cs
- SafeNativeMethods.cs
- WebEventCodes.cs
- DictionarySectionHandler.cs
- OpacityConverter.cs
- QueryableFilterUserControl.cs
- InputScopeNameConverter.cs
- TypedReference.cs
- ClientRuntimeConfig.cs
- InputLanguageEventArgs.cs
- TreeNodeClickEventArgs.cs
- DesignBindingConverter.cs
- IntSecurity.cs
- RC2.cs
- FormatException.cs
- UIElementParaClient.cs
- RecommendedAsConfigurableAttribute.cs
- WebReferencesBuildProvider.cs
- CodeCompileUnit.cs
- ControlPaint.cs
- URLMembershipCondition.cs
- WebEventCodes.cs
- NegationPusher.cs
- DateTime.cs
- TextBoxBase.cs
- WebBrowserSiteBase.cs
- EventLogPermissionEntry.cs
- Line.cs
- InstallerTypeAttribute.cs
- UidPropertyAttribute.cs
- CompareValidator.cs
- XamlPathDataSerializer.cs
- PrePrepareMethodAttribute.cs
- PropertyMap.cs
- Memoizer.cs
- AttachedPropertyBrowsableForChildrenAttribute.cs
- ProjectionCamera.cs
- StorageMappingItemLoader.cs
- DesignerAdapterAttribute.cs
- SerialReceived.cs
- HtmlHistory.cs
- SmiRecordBuffer.cs
- NewArray.cs
- DetailsViewRowCollection.cs
- PropertyGridCommands.cs
- DataControlLinkButton.cs
- EventLogStatus.cs
- AuthenticationService.cs
- WebException.cs
- ActivityDefaults.cs
- DeleteIndexBinder.cs
- HandleCollector.cs
- DbProviderConfigurationHandler.cs
- SR.cs
- InfoCardBaseException.cs
- DetailsViewRowCollection.cs
- ManifestSignatureInformation.cs
- SortedDictionary.cs
- SchemaComplexType.cs
- WorkerRequest.cs
- StatusBarDesigner.cs
- WindowsTitleBar.cs
- Publisher.cs
- Comparer.cs
- MetadataArtifactLoaderCompositeFile.cs
- FixedLineResult.cs
- Image.cs
- Shared.cs
- TrackBarRenderer.cs
- SequenceDesigner.cs
- ConnectionInterfaceCollection.cs
- SiteMapDataSource.cs
- AutoScrollHelper.cs
- MsdtcWrapper.cs
- SystemWebExtensionsSectionGroup.cs
- ClientTarget.cs
- RuntimeCompatibilityAttribute.cs
- ObjectStateEntryDbDataRecord.cs
- ConnectionManagementElementCollection.cs
- CookielessHelper.cs
- HttpListenerResponse.cs
- SqlConnectionHelper.cs
- SelectiveScrollingGrid.cs
- NGCUIElementCollectionSerializerAsync.cs
- LOSFormatter.cs
- SyndicationItemFormatter.cs
- GeometryValueSerializer.cs
- AppliesToBehaviorDecisionTable.cs
- ResourceDescriptionAttribute.cs