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
- Point.cs
- IntranetCredentialPolicy.cs
- ServiceOperation.cs
- TextContainerHelper.cs
- DropShadowEffect.cs
- TaskResultSetter.cs
- XmlNodeList.cs
- RelationshipNavigation.cs
- DiscoveryClientReferences.cs
- ProxyHelper.cs
- SQLInt32Storage.cs
- Single.cs
- RuntimeHelpers.cs
- DiscoveryUtility.cs
- ImmComposition.cs
- MetadataCacheItem.cs
- SecUtil.cs
- FacetValues.cs
- WebControlParameterProxy.cs
- Image.cs
- UrlPath.cs
- Permission.cs
- XslTransform.cs
- SEHException.cs
- InheritanceContextChangedEventManager.cs
- DeploymentSectionCache.cs
- IList.cs
- ValidationErrorEventArgs.cs
- SafeEventLogWriteHandle.cs
- WebPart.cs
- DecimalAnimation.cs
- RoleService.cs
- RegularExpressionValidator.cs
- SerializationEventsCache.cs
- EntitySqlQueryCacheEntry.cs
- SocketElement.cs
- ObjectListField.cs
- WeakReferenceKey.cs
- CategoryAttribute.cs
- PropertyEmitterBase.cs
- DataSpaceManager.cs
- httpapplicationstate.cs
- QuinticEase.cs
- DataGridViewCellValueEventArgs.cs
- VoiceInfo.cs
- GradientSpreadMethodValidation.cs
- FlatButtonAppearance.cs
- NeutralResourcesLanguageAttribute.cs
- TextContainerChangeEventArgs.cs
- QuaternionAnimationUsingKeyFrames.cs
- FormsAuthenticationConfiguration.cs
- EmissiveMaterial.cs
- DataGridViewCheckBoxColumn.cs
- Cursor.cs
- UserInitiatedRoutedEventPermission.cs
- TypefaceMetricsCache.cs
- WebBrowserUriTypeConverter.cs
- FileClassifier.cs
- TaskHelper.cs
- DecimalSumAggregationOperator.cs
- AddressAccessDeniedException.cs
- SpecularMaterial.cs
- IProducerConsumerCollection.cs
- TdsRecordBufferSetter.cs
- DataGridViewColumnCollectionDialog.cs
- BehaviorEditorPart.cs
- __ComObject.cs
- CounterSampleCalculator.cs
- DataGridRelationshipRow.cs
- FormattedText.cs
- PageAdapter.cs
- Visual.cs
- Debug.cs
- XmlSchemaComplexType.cs
- BitmapEncoder.cs
- GenericUriParser.cs
- QueryParameter.cs
- TextEditorContextMenu.cs
- ToolStripLabel.cs
- cryptoapiTransform.cs
- LinqDataSource.cs
- XmlDataCollection.cs
- ValidationRuleCollection.cs
- CodeDesigner.cs
- NavigationPropertyEmitter.cs
- HttpCacheVaryByContentEncodings.cs
- PasswordBox.cs
- Wizard.cs
- NoResizeSelectionBorderGlyph.cs
- Section.cs
- SqlDataSourceEnumerator.cs
- ImageAttributes.cs
- DataServiceRequestException.cs
- HtmlMeta.cs
- util.cs
- NativeMethods.cs
- PersistenceProviderDirectory.cs
- URLIdentityPermission.cs
- DataSvcMapFileSerializer.cs
- CryptoSession.cs