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
- DelegatedStream.cs
- QilGeneratorEnv.cs
- HtmlShimManager.cs
- LambdaReference.cs
- ValidationRule.cs
- HttpBufferlessInputStream.cs
- EdmProviderManifest.cs
- MetadataWorkspace.cs
- SudsWriter.cs
- EdmValidator.cs
- WebBrowserEvent.cs
- MergeFailedEvent.cs
- DoubleUtil.cs
- ReferentialConstraint.cs
- ManagementNamedValueCollection.cs
- UdpDuplexChannel.cs
- SqlCacheDependencyDatabaseCollection.cs
- ChannelSinkStacks.cs
- BrowserPolicyValidator.cs
- DataGridViewRowHeightInfoNeededEventArgs.cs
- OleDbCommandBuilder.cs
- NavigatorInput.cs
- AdPostCacheSubstitution.cs
- ServiceBusyException.cs
- NativeRecognizer.cs
- PipelineModuleStepContainer.cs
- DbParameterCollectionHelper.cs
- XpsColorContext.cs
- Run.cs
- LinqDataSourceSelectEventArgs.cs
- ConfigurationSectionHelper.cs
- PartBasedPackageProperties.cs
- AssemblyCollection.cs
- ObjectStateManager.cs
- GuidTagList.cs
- WithStatement.cs
- AttachedPropertyBrowsableWhenAttributePresentAttribute.cs
- ParentUndoUnit.cs
- UpdateTracker.cs
- AnnotationStore.cs
- GridViewSelectEventArgs.cs
- HttpModuleCollection.cs
- SymmetricSecurityBindingElement.cs
- IndicShape.cs
- Lasso.cs
- ListBindingConverter.cs
- BindingEntityInfo.cs
- DesignTimeParseData.cs
- BaseTreeIterator.cs
- UIElementIsland.cs
- TreeNodeStyle.cs
- Tuple.cs
- pingexception.cs
- Int32AnimationBase.cs
- XamlNamespaceHelper.cs
- TypeConverterHelper.cs
- AppDomainProtocolHandler.cs
- OletxResourceManager.cs
- CryptoHandle.cs
- BufferedGraphicsManager.cs
- Certificate.cs
- ExternalFile.cs
- QueryExtender.cs
- Thickness.cs
- XmlAnyElementAttribute.cs
- Imaging.cs
- DataRow.cs
- HtmlTableRowCollection.cs
- WebPartHelpVerb.cs
- ErrorView.xaml.cs
- ContentPlaceHolder.cs
- ControlSerializer.cs
- RequestCachingSection.cs
- ValidationPropertyAttribute.cs
- ToolTip.cs
- CFGGrammar.cs
- BindingSource.cs
- SafeNativeMethods.cs
- PointAnimation.cs
- Filter.cs
- CreateUserErrorEventArgs.cs
- EntityTypeEmitter.cs
- TextModifier.cs
- DefaultBindingPropertyAttribute.cs
- ConditionChanges.cs
- Attachment.cs
- GridErrorDlg.cs
- NegatedCellConstant.cs
- LinkUtilities.cs
- Cursor.cs
- Bitmap.cs
- SmuggledIUnknown.cs
- ExceptionUtil.cs
- TraceSource.cs
- AttachedAnnotation.cs
- LocatorPart.cs
- DateTimeFormatInfoScanner.cs
- BoundColumn.cs
- URIFormatException.cs
- PerspectiveCamera.cs