Code:
/ WCF / WCF / 3.5.30729.1 / untmp / Orcas / SP / ndp / cdf / src / WCF / ServiceModel / System / ServiceModel / Security / SecurityTokenParametersEnumerable.cs / 1 / SecurityTokenParametersEnumerable.cs
//------------------------------------------------------------------------------ // Copyright (c) Microsoft Corporation. All rights reserved. //----------------------------------------------------------------------------- namespace System.ServiceModel.Security { using System.Collections.Generic; using System.ServiceModel; using System.ServiceModel.Channels; using System.ServiceModel.Security.Tokens; class SecurityTokenParametersEnumerable : IEnumerable{ SecurityBindingElement sbe; bool clientTokensOnly; public SecurityTokenParametersEnumerable(SecurityBindingElement sbe) : this(sbe, false) { } public SecurityTokenParametersEnumerable(SecurityBindingElement sbe, bool clientTokensOnly) { if (sbe == null) throw DiagnosticUtility.ExceptionUtility.ThrowHelperArgumentNull("sbe"); this.sbe = sbe; this.clientTokensOnly = clientTokensOnly; } public IEnumerator GetEnumerator() { if (this.sbe is SymmetricSecurityBindingElement) { SymmetricSecurityBindingElement ssbe = (SymmetricSecurityBindingElement)sbe; if (ssbe.ProtectionTokenParameters != null && (!this.clientTokensOnly || !ssbe.ProtectionTokenParameters.HasAsymmetricKey)) yield return ssbe.ProtectionTokenParameters; } else if (this.sbe is AsymmetricSecurityBindingElement) { AsymmetricSecurityBindingElement asbe = (AsymmetricSecurityBindingElement)sbe; if (asbe.InitiatorTokenParameters != null) yield return asbe.InitiatorTokenParameters; if (asbe.RecipientTokenParameters != null && !this.clientTokensOnly) yield return asbe.RecipientTokenParameters; } foreach (SecurityTokenParameters stp in this.sbe.EndpointSupportingTokenParameters.Endorsing) if (stp != null) yield return stp; foreach (SecurityTokenParameters stp in this.sbe.EndpointSupportingTokenParameters.SignedEncrypted) if (stp != null) yield return stp; foreach (SecurityTokenParameters stp in this.sbe.EndpointSupportingTokenParameters.SignedEndorsing) if (stp != null) yield return stp; foreach (SecurityTokenParameters stp in this.sbe.EndpointSupportingTokenParameters.Signed) if (stp != null) yield return stp; foreach (SupportingTokenParameters str in this.sbe.OperationSupportingTokenParameters.Values) if (str != null) { foreach (SecurityTokenParameters stp in str.Endorsing) if (stp != null) yield return stp; foreach (SecurityTokenParameters stp in str.SignedEncrypted) if (stp != null) yield return stp; foreach (SecurityTokenParameters stp in str.SignedEndorsing) if (stp != null) yield return stp; foreach (SecurityTokenParameters stp in str.Signed) if (stp != null) yield return stp; } } System.Collections.IEnumerator System.Collections.IEnumerable.GetEnumerator() { throw DiagnosticUtility.ExceptionUtility.ThrowHelperError(new NotImplementedException()); } } } // 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
- D3DImage.cs
- NavigationFailedEventArgs.cs
- Types.cs
- ToolTipAutomationPeer.cs
- DataSourceSelectArguments.cs
- XmlSchemaNotation.cs
- HtmlButton.cs
- XmlBindingWorker.cs
- ClientSettingsProvider.cs
- Base64Stream.cs
- CodeMemberMethod.cs
- DuplexChannel.cs
- TextBoxView.cs
- TextStore.cs
- TextElement.cs
- ConfigurationProperty.cs
- MultiViewDesigner.cs
- OperandQuery.cs
- StylusButtonEventArgs.cs
- PixelFormats.cs
- DbXmlEnabledProviderManifest.cs
- MarshalByRefObject.cs
- DocumentPaginator.cs
- SslStreamSecurityBindingElement.cs
- HebrewCalendar.cs
- AmbientLight.cs
- Int32Collection.cs
- ContentElement.cs
- CommonProperties.cs
- WindowsEditBoxRange.cs
- NetworkAddressChange.cs
- BuildManager.cs
- PointAnimationUsingKeyFrames.cs
- HttpWebRequest.cs
- DocumentXmlWriter.cs
- StrongBox.cs
- CalendarAutoFormat.cs
- DiscoveryVersion.cs
- PathNode.cs
- XmlCharacterData.cs
- DrawingAttributesDefaultValueFactory.cs
- ObjectItemCollectionAssemblyCacheEntry.cs
- AvTrace.cs
- EncodingDataItem.cs
- WindowsGrip.cs
- SqlDesignerDataSourceView.cs
- EnumBuilder.cs
- ViewValidator.cs
- ExtendedProtectionPolicyElement.cs
- Environment.cs
- _LocalDataStoreMgr.cs
- BulletedList.cs
- XmlnsDictionary.cs
- BindingValueChangedEventArgs.cs
- BackStopAuthenticationModule.cs
- DataColumnChangeEvent.cs
- MessageSmuggler.cs
- X509CertificateCollection.cs
- SettingsSavedEventArgs.cs
- FormsAuthenticationUser.cs
- DbConnectionClosed.cs
- ObjectNavigationPropertyMapping.cs
- Blend.cs
- TextSchema.cs
- WinInetCache.cs
- TabControl.cs
- WebPartConnectVerb.cs
- MultiTargetingUtil.cs
- ButtonColumn.cs
- AnonymousIdentificationModule.cs
- ApplicationCommands.cs
- HttpDateParse.cs
- FixedPageStructure.cs
- HttpCacheParams.cs
- HttpCookiesSection.cs
- OutputWindow.cs
- ReachNamespaceInfo.cs
- NetworkAddressChange.cs
- DBProviderConfigurationHandler.cs
- EntryWrittenEventArgs.cs
- ToolStripRendererSwitcher.cs
- PaginationProgressEventArgs.cs
- SingleKeyFrameCollection.cs
- SemanticValue.cs
- SignatureDescription.cs
- HttpListener.cs
- _DisconnectOverlappedAsyncResult.cs
- SchemaElement.cs
- ImmutablePropertyDescriptorGridEntry.cs
- LabelLiteral.cs
- FSWPathEditor.cs
- CalendarDay.cs
- UInt32.cs
- WebControl.cs
- InvalidEnumArgumentException.cs
- QueryParameter.cs
- AttributeCollection.cs
- CheckBoxRenderer.cs
- securestring.cs
- ToolStripContentPanelRenderEventArgs.cs