Code:
/ WCF / WCF / 3.5.30729.1 / untmp / Orcas / SP / ndp / cdf / src / WCF / IdentityModel / System / IdentityModel / Tokens / SamlAction.cs / 1 / SamlAction.cs
//------------------------------------------------------------------------------ // Copyright (c) Microsoft Corporation. All rights reserved. //----------------------------------------------------------------------------- namespace System.IdentityModel.Tokens { using System.Collections; using System.Collections.Generic; using System.Collections.ObjectModel; using System.IdentityModel.Tokens; using System.IdentityModel.Selectors; using System.Xml; using System.Xml.Serialization; using System.Runtime.Serialization; public class SamlAction { string ns; string action; bool isReadOnly = false; public SamlAction(string action) : this(action, null) { } public SamlAction(string action, string ns) { if (String.IsNullOrEmpty(action)) throw DiagnosticUtility.ExceptionUtility.ThrowHelperArgument("action", SR.GetString(SR.SAMLActionNameRequired)); this.action = action; this.ns = ns; } public SamlAction() { } public string Action { get {return this.action; } set { if (isReadOnly) throw DiagnosticUtility.ExceptionUtility.ThrowHelperError(new InvalidOperationException(SR.GetString(SR.ObjectIsReadOnly))); if (String.IsNullOrEmpty(value)) throw DiagnosticUtility.ExceptionUtility.ThrowHelperArgument("value", SR.GetString(SR.SAMLActionNameRequired)); this.action = value; } } public string Namespace { get { return this.ns; } set { if (isReadOnly) throw DiagnosticUtility.ExceptionUtility.ThrowHelperError(new InvalidOperationException(SR.GetString(SR.ObjectIsReadOnly))); this.ns = value; } } public bool IsReadOnly { get { return this.isReadOnly; } } public void MakeReadOnly() { this.isReadOnly = true; } void CheckObjectValidity() { if (String.IsNullOrEmpty(action)) throw DiagnosticUtility.ExceptionUtility.ThrowHelperError(new SecurityTokenException(SR.GetString(SR.SAMLActionNameRequired))); } public virtual void ReadXml(XmlDictionaryReader reader, SamlSerializer samlSerializer, SecurityTokenSerializer keyInfoSerializer, SecurityTokenResolver outOfBandTokenResolver) { if (reader == null) throw DiagnosticUtility.ExceptionUtility.ThrowHelperError(new ArgumentNullException("reader")); if (samlSerializer == null) throw DiagnosticUtility.ExceptionUtility.ThrowHelperError(new ArgumentNullException("samlSerializer")); #pragma warning suppress 56506 // samlSerializer.DictionaryManager is never null. SamlDictionary dictionary = samlSerializer.DictionaryManager.SamlDictionary; if (reader.IsStartElement(dictionary.Action, dictionary.Namespace)) { // The Namespace attribute is optional. this.ns = reader.GetAttribute(dictionary.ActionNamespaceAttribute, null); reader.MoveToContent(); this.action = reader.ReadString(); if (string.IsNullOrEmpty(this.action)) throw DiagnosticUtility.ExceptionUtility.ThrowHelperError(new SecurityTokenException(SR.GetString(SR.SAMLActionNameRequiredOnRead))); reader.MoveToContent(); reader.ReadEndElement(); } } public virtual void WriteXml(XmlDictionaryWriter writer, SamlSerializer samlSerializer, SecurityTokenSerializer keyInfoSerializer) { CheckObjectValidity(); if (writer == null) throw DiagnosticUtility.ExceptionUtility.ThrowHelperError(new ArgumentNullException("writer")); if (samlSerializer == null) throw DiagnosticUtility.ExceptionUtility.ThrowHelperError(new ArgumentNullException("samlSerializer")); #pragma warning suppress 56506 // samlSerializer.DictionaryManager is never null. SamlDictionary dictionary = samlSerializer.DictionaryManager.SamlDictionary; writer.WriteStartElement(dictionary.PreferredPrefix.Value, dictionary.Action, dictionary.Namespace); if (this.ns != null) { writer.WriteStartAttribute(dictionary.ActionNamespaceAttribute, null); writer.WriteString(this.ns); writer.WriteEndAttribute(); } writer.WriteString(this.action); writer.WriteEndElement(); } } } // 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
- CodeTypeParameter.cs
- ListViewCommandEventArgs.cs
- RootBrowserWindowProxy.cs
- ConnectionInterfaceCollection.cs
- ReliabilityContractAttribute.cs
- ConfigurationManagerInternal.cs
- OleAutBinder.cs
- UnionCqlBlock.cs
- FilteredReadOnlyMetadataCollection.cs
- WmlPhoneCallAdapter.cs
- TextContainerHelper.cs
- WindowsFormsSynchronizationContext.cs
- SaveFileDialogDesigner.cs
- SiteMapHierarchicalDataSourceView.cs
- EpmCustomContentWriterNodeData.cs
- FormsAuthenticationCredentials.cs
- XmlAnyElementAttribute.cs
- EnvironmentPermission.cs
- SpeechSeg.cs
- ValueTable.cs
- TargetConverter.cs
- SiteMapDataSourceDesigner.cs
- SlipBehavior.cs
- ScrollViewer.cs
- MetadataProperty.cs
- ListView.cs
- ListViewItemMouseHoverEvent.cs
- RuntimeConfigLKG.cs
- TransformPattern.cs
- XmlElementAttributes.cs
- FlowDocumentReaderAutomationPeer.cs
- HttpListenerException.cs
- DiagnosticTraceSource.cs
- ToolBarPanel.cs
- SqlCacheDependency.cs
- NativeMethods.cs
- EmissiveMaterial.cs
- ObjectItemCollection.cs
- LoginCancelEventArgs.cs
- LocatorManager.cs
- XmlTextAttribute.cs
- OdbcConnectionFactory.cs
- DataTemplate.cs
- Semaphore.cs
- TemplateContentLoader.cs
- PropertyManager.cs
- CodeDOMUtility.cs
- _NetRes.cs
- DesignerLinkAdapter.cs
- PowerStatus.cs
- FixedNode.cs
- ComAdminWrapper.cs
- PropertyNames.cs
- PackWebRequestFactory.cs
- DatagridviewDisplayedBandsData.cs
- TextShapeableCharacters.cs
- MulticastNotSupportedException.cs
- HttpWebRequestElement.cs
- DbConnectionPool.cs
- Column.cs
- ScriptingWebServicesSectionGroup.cs
- XmlNodeChangedEventManager.cs
- IntSecurity.cs
- PathTooLongException.cs
- HeaderedContentControl.cs
- Function.cs
- TablePatternIdentifiers.cs
- ConfigurationManagerInternalFactory.cs
- Expander.cs
- EntityDesignerUtils.cs
- InProcStateClientManager.cs
- LogicalMethodInfo.cs
- SqlDataSourceQueryEditorForm.cs
- SqlFacetAttribute.cs
- DrawingState.cs
- X509CertificateChain.cs
- EventlogProvider.cs
- LocalizeDesigner.cs
- ColorTransformHelper.cs
- BindingCompleteEventArgs.cs
- DataSourceView.cs
- NetworkAddressChange.cs
- SignedXml.cs
- AttributeCollection.cs
- ListViewItemSelectionChangedEvent.cs
- SharedPersonalizationStateInfo.cs
- CancelEventArgs.cs
- MLangCodePageEncoding.cs
- UnhandledExceptionEventArgs.cs
- LinqToSqlWrapper.cs
- PrintingPermission.cs
- SettingsPropertyIsReadOnlyException.cs
- XmlNamespaceDeclarationsAttribute.cs
- ErrorTableItemStyle.cs
- DeferredElementTreeState.cs
- DbDataSourceEnumerator.cs
- PropertyFilterAttribute.cs
- AutomationProperty.cs
- EditorPartChrome.cs
- AuthenticationService.cs