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
- HashHelper.cs
- Throw.cs
- Choices.cs
- HttpProfileBase.cs
- ComponentEvent.cs
- DrawingContextWalker.cs
- PolicyVersion.cs
- FileUpload.cs
- KeyGesture.cs
- RectAnimation.cs
- future.cs
- GenericArgumentsUpdater.cs
- FloaterBaseParagraph.cs
- SoapMessage.cs
- XmlSchemaAny.cs
- FamilyMap.cs
- GPPOINT.cs
- ModifierKeysConverter.cs
- DecoderReplacementFallback.cs
- TimeSpan.cs
- AuthenticationModuleElementCollection.cs
- PermissionRequestEvidence.cs
- xmlfixedPageInfo.cs
- SingleConverter.cs
- StrokeCollection2.cs
- IfAction.cs
- EmbeddedMailObject.cs
- WebPartDescription.cs
- PersonalizationAdministration.cs
- DataGridLengthConverter.cs
- RichTextBoxConstants.cs
- ListViewGroup.cs
- TextProviderWrapper.cs
- Menu.cs
- DrawingVisualDrawingContext.cs
- EntityDataSourceView.cs
- ColumnResizeUndoUnit.cs
- DocumentPaginator.cs
- CancelAsyncOperationRequest.cs
- CommandHelpers.cs
- PlatformNotSupportedException.cs
- XmlExtensionFunction.cs
- ModelService.cs
- DesignDataSource.cs
- ApplicationCommands.cs
- ZipIOExtraFieldElement.cs
- SmtpCommands.cs
- TranslateTransform3D.cs
- Pair.cs
- ImplicitInputBrush.cs
- DbDataRecord.cs
- CacheVirtualItemsEvent.cs
- CapabilitiesUse.cs
- DesignObjectWrapper.cs
- TemplateXamlTreeBuilder.cs
- CalendarDateChangedEventArgs.cs
- TextViewSelectionProcessor.cs
- TextElementEditingBehaviorAttribute.cs
- MultiByteCodec.cs
- GregorianCalendarHelper.cs
- ReferenceEqualityComparer.cs
- HttpCacheParams.cs
- InputBinder.cs
- ProgressiveCrcCalculatingStream.cs
- AssemblyName.cs
- IsolatedStorageFileStream.cs
- DefaultWorkflowTransactionService.cs
- UserNameSecurityTokenParameters.cs
- Label.cs
- WSSecurityPolicy11.cs
- TextEffectCollection.cs
- SynchronizationValidator.cs
- WebPartConnection.cs
- XmlSchemaParticle.cs
- SingleResultAttribute.cs
- ServiceHostingEnvironment.cs
- BufferedWebEventProvider.cs
- TypeSystemProvider.cs
- ConnectorSelectionGlyph.cs
- WebPartDeleteVerb.cs
- EventRoute.cs
- LinearGradientBrush.cs
- TableStyle.cs
- UncommonField.cs
- MatrixCamera.cs
- StreamGeometryContext.cs
- IteratorFilter.cs
- ArraySubsetEnumerator.cs
- ExceptionHandlersDesigner.cs
- SqlParameterizer.cs
- MasterPage.cs
- FastPropertyAccessor.cs
- BaseComponentEditor.cs
- CodeAttributeArgument.cs
- DataContractSerializerMessageContractImporter.cs
- UnknownBitmapDecoder.cs
- InfoCardSymmetricAlgorithm.cs
- WebPageTraceListener.cs
- HelpProvider.cs
- DispatcherOperation.cs