Code:
/ WCF / WCF / 3.5.30729.1 / untmp / Orcas / SP / ndp / cdf / src / WCF / ServiceModel / System / ServiceModel / Security / SecurityHeader.cs / 1 / SecurityHeader.cs
//---------------------------------------------------------- // Copyright (c) Microsoft Corporation. All rights reserved. //----------------------------------------------------------- namespace System.ServiceModel.Security { using System.Globalization; using System.ServiceModel.Channels; using System.ServiceModel; using System.ServiceModel.Description; using System.Xml; using DictionaryManager = System.IdentityModel.DictionaryManager; using ISecurityElement = System.IdentityModel.ISecurityElement; abstract class SecurityHeader : MessageHeader { readonly string actor; readonly SecurityAlgorithmSuite algorithmSuite; bool encryptedKeyContainsReferenceList = true; Message message; readonly bool mustUnderstand; readonly bool relay; bool requireMessageProtection = true; bool processingStarted; bool maintainSignatureConfirmationState; readonly SecurityStandardsManager standardsManager; MessageDirection transferDirection; SecurityHeaderLayout layout = SecurityHeaderLayout.Strict; public SecurityHeader(Message message, string actor, bool mustUnderstand, bool relay, SecurityStandardsManager standardsManager, SecurityAlgorithmSuite algorithmSuite, MessageDirection transferDirection) { if (message == null) { throw DiagnosticUtility.ExceptionUtility.ThrowHelperArgumentNull("message"); } if (actor == null) { throw DiagnosticUtility.ExceptionUtility.ThrowHelperArgumentNull("actor"); } if (standardsManager == null) { throw DiagnosticUtility.ExceptionUtility.ThrowHelperArgumentNull("standardsManager"); } if (algorithmSuite == null) { throw DiagnosticUtility.ExceptionUtility.ThrowHelperArgumentNull("algorithmSuite"); } this.message = message; this.actor = actor; this.mustUnderstand = mustUnderstand; this.relay = relay; this.standardsManager = standardsManager; this.algorithmSuite = algorithmSuite; this.transferDirection = transferDirection; } public override string Actor { get { return this.actor; } } public SecurityAlgorithmSuite AlgorithmSuite { get { return this.algorithmSuite; } } public bool EncryptedKeyContainsReferenceList { get { return this.encryptedKeyContainsReferenceList; } set { ThrowIfProcessingStarted(); this.encryptedKeyContainsReferenceList = value; } } public bool RequireMessageProtection { get { return this.requireMessageProtection; } set { ThrowIfProcessingStarted(); this.requireMessageProtection = value; } } public bool MaintainSignatureConfirmationState { get { return this.maintainSignatureConfirmationState; } set { ThrowIfProcessingStarted(); this.maintainSignatureConfirmationState = value; } } protected Message Message { get { return this.message; } set { this.message = value; } } public override bool MustUnderstand { get { return this.mustUnderstand; } } public override bool Relay { get { return this.relay; } } public SecurityHeaderLayout Layout { get { return this.layout; } set { ThrowIfProcessingStarted(); this.layout = value; } } public SecurityStandardsManager StandardsManager { get { return this.standardsManager; } } public MessageDirection MessageDirection { get { return this.transferDirection; } } protected MessageVersion Version { get { return this.message.Version; } } protected void SetProcessingStarted() { this.processingStarted = true; } protected void ThrowIfProcessingStarted() { if (this.processingStarted) { throw DiagnosticUtility.ExceptionUtility.ThrowHelperError(new InvalidOperationException(SR.GetString(SR.OperationCannotBeDoneAfterProcessingIsStarted))); } } public override string ToString() { return string.Format(CultureInfo.InvariantCulture, "{0}(Actor = '{1}')", GetType().Name, this.Actor); } } } // 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
- SystemUnicastIPAddressInformation.cs
- RequestContext.cs
- BitmapCodecInfo.cs
- ProcessThreadCollection.cs
- DropShadowEffect.cs
- ListItemParagraph.cs
- InvalidOleVariantTypeException.cs
- AppSecurityManager.cs
- Int16AnimationBase.cs
- RedistVersionInfo.cs
- TranslateTransform.cs
- EventHandlersDesigner.cs
- EventBuilder.cs
- SqlInfoMessageEvent.cs
- MethodBuilder.cs
- MimeAnyImporter.cs
- VoiceSynthesis.cs
- QuaternionValueSerializer.cs
- ItemCheckEvent.cs
- Faults.cs
- CodeExpressionCollection.cs
- DataTable.cs
- RequestCachePolicyConverter.cs
- DbConnectionFactory.cs
- CallSite.cs
- GetTokenRequest.cs
- CommunicationObject.cs
- MapPathBasedVirtualPathProvider.cs
- AuthenticationSection.cs
- ToolStripContentPanel.cs
- GuidelineCollection.cs
- AutomationAttributeInfo.cs
- HyperLink.cs
- StorageRoot.cs
- ListViewEditEventArgs.cs
- BufferedWebEventProvider.cs
- TransactionFlowAttribute.cs
- LessThanOrEqual.cs
- DataListItem.cs
- SocketCache.cs
- SerializeAbsoluteContext.cs
- DecoderFallback.cs
- CachingHintValidation.cs
- GlyphElement.cs
- XmlLinkedNode.cs
- DesignerActionUI.cs
- CreatingCookieEventArgs.cs
- CqlLexerHelpers.cs
- TreeIterators.cs
- QueryServiceConfigHandle.cs
- FirewallWrapper.cs
- ContentPosition.cs
- CodePageUtils.cs
- HostProtectionException.cs
- WebRequest.cs
- CallbackDebugElement.cs
- Triplet.cs
- UnsafeNativeMethodsCLR.cs
- SubqueryRules.cs
- MouseBinding.cs
- TimelineGroup.cs
- DbRetry.cs
- TriggerAction.cs
- Guid.cs
- ResourcePropertyMemberCodeDomSerializer.cs
- RegularExpressionValidator.cs
- ByteConverter.cs
- ClosableStream.cs
- OdbcDataAdapter.cs
- PolygonHotSpot.cs
- SqlFacetAttribute.cs
- _HelperAsyncResults.cs
- assertwrapper.cs
- EventProviderWriter.cs
- SortedSet.cs
- MemberPath.cs
- ReceiveSecurityHeader.cs
- PagesChangedEventArgs.cs
- ObjectItemNoOpAssemblyLoader.cs
- DefaultDialogButtons.cs
- UserControl.cs
- XmlNavigatorFilter.cs
- x509store.cs
- LongValidator.cs
- FlowPosition.cs
- AppSettingsSection.cs
- CompressedStack.cs
- WriteTimeStream.cs
- XmlComment.cs
- InputLanguage.cs
- RequestCachingSection.cs
- ColorAnimationUsingKeyFrames.cs
- HandleRef.cs
- SortFieldComparer.cs
- KnownBoxes.cs
- MenuScrollingVisibilityConverter.cs
- SystemBrushes.cs
- PropertyExpression.cs
- NotFiniteNumberException.cs
- InitializerFacet.cs