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
- MouseGestureConverter.cs
- ControlParameter.cs
- CharAnimationBase.cs
- InstanceOwnerException.cs
- ToolTipService.cs
- TimelineCollection.cs
- CacheMemory.cs
- StringFreezingAttribute.cs
- _AcceptOverlappedAsyncResult.cs
- TreeNodeSelectionProcessor.cs
- RijndaelCryptoServiceProvider.cs
- FlowLayoutSettings.cs
- MailMessageEventArgs.cs
- SoapEnvelopeProcessingElement.cs
- Thumb.cs
- PropertyChangingEventArgs.cs
- SqlDataSourceDesigner.cs
- FacetValues.cs
- XmlAttributeCollection.cs
- OleDbWrapper.cs
- Solver.cs
- Journal.cs
- ToolStripStatusLabel.cs
- ConstructorNeedsTagAttribute.cs
- AQNBuilder.cs
- FacetChecker.cs
- initElementDictionary.cs
- XmlDataContract.cs
- CodeStatement.cs
- Dispatcher.cs
- ReverseInheritProperty.cs
- ReaderOutput.cs
- BitmapCache.cs
- ReversePositionQuery.cs
- ConfigurationException.cs
- MessageTraceRecord.cs
- ItemsChangedEventArgs.cs
- MessageSmuggler.cs
- KeyValueSerializer.cs
- TemplateBuilder.cs
- HttpModulesSection.cs
- ListViewPagedDataSource.cs
- TaskFileService.cs
- DataGridViewControlCollection.cs
- BCLDebug.cs
- DelegatingTypeDescriptionProvider.cs
- DataGridCaption.cs
- FontWeightConverter.cs
- RootDesignerSerializerAttribute.cs
- ComboBox.cs
- MenuItemAutomationPeer.cs
- ProjectionPruner.cs
- CodeConstructor.cs
- DecimalAnimationUsingKeyFrames.cs
- TextEditorCharacters.cs
- ToolStripOverflowButton.cs
- ToolStripPanelCell.cs
- Viewport2DVisual3D.cs
- LinkTarget.cs
- ObjectRef.cs
- HttpModuleCollection.cs
- ToolStripPanelRenderEventArgs.cs
- MenuAdapter.cs
- SQLBoolean.cs
- control.ime.cs
- Automation.cs
- Int64Converter.cs
- CatalogZone.cs
- QueryableFilterUserControl.cs
- Lasso.cs
- XmlSchemaInfo.cs
- TargetParameterCountException.cs
- HostedHttpContext.cs
- SqlHelper.cs
- WinFormsComponentEditor.cs
- GeometryModel3D.cs
- PlatformCulture.cs
- ProviderConnectionPointCollection.cs
- KeyNotFoundException.cs
- TraceSwitch.cs
- XmlSerializerAssemblyAttribute.cs
- XmlCharType.cs
- NotImplementedException.cs
- ContentValidator.cs
- XamlNamespaceHelper.cs
- Rotation3D.cs
- ContractHandle.cs
- OperationResponse.cs
- UInt64.cs
- MetafileHeader.cs
- SQLInt64.cs
- AssemblyNameUtility.cs
- ScopelessEnumAttribute.cs
- XPathDocument.cs
- Size.cs
- BufferedOutputAsyncStream.cs
- WebPartVerbCollection.cs
- WpfKnownMember.cs
- Internal.cs
- BooleanConverter.cs