Code:
/ WCF / WCF / 3.5.30729.1 / untmp / Orcas / SP / ndp / cdf / src / WCF / infocard / Service / managed / Microsoft / InfoCards / TokenDescriptor.cs / 1 / TokenDescriptor.cs
//------------------------------------------------------------------------------ // Copyright (c) Microsoft Corporation. All rights reserved. //----------------------------------------------------------------------------- namespace Microsoft.InfoCards { using System; using System.Collections.Generic; using System.Collections.ObjectModel; using System.Security.Cryptography; using System.IdentityModel.Tokens; using System.ServiceModel.Security.Tokens; using System.Xml; using System.IO; internal class TokenDescriptor : IDisposable { string m_tokenId; DateTime m_effectiveTime; DateTime m_expirationTime; XmlElement m_protectedToken; DisplayToken m_displayToken; SymmetricAlgorithm m_symmetricProof; string m_internalTokenReference; string m_externalTokenReference; Listm_disclosedClaims; bool m_disposed; object m_sync; public TokenDescriptor( string tokenId, DateTime effectiveTime, DateTime expirationTime, XmlElement protectedToken, DisplayToken displayToken, SymmetricAlgorithm symmetricProof, string internalTokenReference, string externalTokenReference, IEnumerable disclosedClaims ) { m_sync = new object(); m_tokenId = tokenId; m_effectiveTime = effectiveTime; m_expirationTime = expirationTime; m_protectedToken = protectedToken; m_displayToken = displayToken; m_symmetricProof = symmetricProof; m_internalTokenReference = internalTokenReference; m_externalTokenReference = externalTokenReference; m_disclosedClaims = new List ( disclosedClaims ); } public ReadOnlyCollection DisclosedClaims { get { return m_disclosedClaims.AsReadOnly(); } } public string TokenId { get { return m_tokenId; } } public DateTime EffectiveTime { get { return m_effectiveTime; } } public DateTime ExpirationTime { get { return m_expirationTime; } } public string InternalTokenReference { get{ return m_internalTokenReference; } } public string ExternalTokenReference { get{ return m_externalTokenReference; } } public XmlElement ProtectedToken { get { return m_protectedToken; } } public DisplayToken DisplayToken { get { return m_displayToken; } } public SymmetricAlgorithm SymmetricProof { get { return m_symmetricProof; } } public void Write( BinaryWriter bwriter ) { bwriter.Write( m_effectiveTime.ToFileTimeUtc() ); bwriter.Write( m_expirationTime.ToFileTimeUtc() ); Utility.SerializeString( bwriter, m_protectedToken.OuterXml ); Utility.SerializeString( bwriter, m_internalTokenReference ); Utility.SerializeString( bwriter, m_externalTokenReference ); } public void Dispose() { if ( !m_disposed ) { lock ( m_sync ) { if ( !m_disposed ) { m_disposed = true; if ( null != m_symmetricProof ) { ( ( IDisposable )m_symmetricProof ).Dispose(); m_symmetricProof = null; } m_protectedToken = null; m_expirationTime = DateTime.MinValue; m_effectiveTime = DateTime.MinValue; m_tokenId = null; m_externalTokenReference = null; m_internalTokenReference = null; m_disclosedClaims = null; m_displayToken = null; } } } } } } // 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
- Composition.cs
- DictionarySurrogate.cs
- DataTableMappingCollection.cs
- loginstatus.cs
- rsa.cs
- GeometryGroup.cs
- Decorator.cs
- CharacterBufferReference.cs
- ProfileProvider.cs
- TdsParserStateObject.cs
- Selector.cs
- DataServiceHostFactory.cs
- TreeChangeInfo.cs
- TcpHostedTransportConfiguration.cs
- SiteMapDataSource.cs
- SchemaEntity.cs
- Attributes.cs
- TranslateTransform.cs
- WebServiceTypeData.cs
- InheritanceRules.cs
- KnownBoxes.cs
- GestureRecognitionResult.cs
- JoinCqlBlock.cs
- ValidatingReaderNodeData.cs
- _CacheStreams.cs
- Crc32.cs
- xsdvalidator.cs
- DataGridViewCellErrorTextNeededEventArgs.cs
- SoapDocumentServiceAttribute.cs
- GridErrorDlg.cs
- EncryptedType.cs
- ProxyWebPartManager.cs
- TrustManagerPromptUI.cs
- AutoGeneratedField.cs
- ActivityCodeGenerator.cs
- Perspective.cs
- ToolStripArrowRenderEventArgs.cs
- ProtocolsConfigurationEntry.cs
- SimpleHandlerFactory.cs
- ContextMenu.cs
- EdmComplexTypeAttribute.cs
- MediaCommands.cs
- ProbeDuplexCD1AsyncResult.cs
- ClusterRegistryConfigurationProvider.cs
- KeyEventArgs.cs
- TextDecorationCollection.cs
- PanelDesigner.cs
- StyleBamlRecordReader.cs
- NonSerializedAttribute.cs
- FormConverter.cs
- ObjectView.cs
- PersonalizableAttribute.cs
- Int32Rect.cs
- Bits.cs
- ActionFrame.cs
- DocumentGrid.cs
- DbConnectionPoolGroupProviderInfo.cs
- CheckedListBox.cs
- ToolStripRenderer.cs
- XAMLParseException.cs
- ToolStripHighContrastRenderer.cs
- DifferencingCollection.cs
- InsufficientExecutionStackException.cs
- ListViewTableCell.cs
- QueryOperatorEnumerator.cs
- InstallHelper.cs
- XXXInfos.cs
- JapaneseCalendar.cs
- SiteMapNodeItem.cs
- TypeConverterHelper.cs
- OracleInternalConnection.cs
- NTAccount.cs
- ProgressBarRenderer.cs
- ImmutableObjectAttribute.cs
- CodeVariableReferenceExpression.cs
- ProfilePropertyMetadata.cs
- SmiEventSink_DeferedProcessing.cs
- TargetFrameworkAttribute.cs
- HttpProfileBase.cs
- SessionEndingCancelEventArgs.cs
- xmlsaver.cs
- Int64.cs
- IMembershipProvider.cs
- ServiceHttpModule.cs
- ShaperBuffers.cs
- BooleanFunctions.cs
- XmlSchemaElement.cs
- ParseHttpDate.cs
- XmlBinaryReader.cs
- WindowsHyperlink.cs
- CfgArc.cs
- ByteAnimationUsingKeyFrames.cs
- DockEditor.cs
- PriorityBinding.cs
- ScrollPattern.cs
- DetailsViewInsertEventArgs.cs
- PasswordRecoveryAutoFormat.cs
- SecurityDocument.cs
- ProgressChangedEventArgs.cs
- XpsImage.cs