Code:
/ WCF / WCF / 3.5.30729.1 / untmp / Orcas / SP / ndp / cdf / src / WCF / infocard / Service / managed / Microsoft / InfoCards / BeginSelectCardRequest.cs / 1 / BeginSelectCardRequest.cs
//------------------------------------------------------------------------------ // Copyright (c) Microsoft Corporation. All rights reserved. //----------------------------------------------------------------------------- namespace Microsoft.InfoCards { using Microsoft.Win32.SafeHandles; using System; using System.Collections; using System.Diagnostics; using System.Runtime.InteropServices; using System.Text; using System.Threading; using System.IO; using IDT = Microsoft.InfoCards.Diagnostics.InfoCardTrace; // // Summary: // Request class to start the Card Selection process. // internal class BeginSelectCardRequest : UIAgentAsyncBeginRequest { InfoCard m_card; // // Summary: // Creates an new BeginSelectCardRequest // // Arguments: // rpcHandle: The RPC Context handle. // inArgs: The stream to hold the input arguments // outArgs: The stream to hold the output arguments // parent: the parent UI Request // public BeginSelectCardRequest( IntPtr rpcHandle, Stream inArgs, Stream outArgs, ClientUIRequest parent ) : base( rpcHandle, inArgs, outArgs, parent ) { } // // Summary: // Marshals the incoming arguements // // Remarks: // reads the infocard id and auth type selected from that card. // -1 for authType means no auth. // protected override void OnMarshalAsyncInArgs( BinaryReader reader ) { // // First marshal the raw arguments. // m_card = new InfoCard( reader.BaseStream ); m_card.GetExtendedInformation().Deserialize( reader.BaseStream ); m_card.GetRPIdentityRequirement().Deserialize( reader.BaseStream ); m_card.GetClaims().Deserialize( reader.BaseStream ); StoreConnection connection = StoreConnection.GetConnection(); try { // // We are going to generate a token with this card // so we will need to decrypt the master key. // The claims are already decrypted so we can skip that // step in this case. // InfoCardMasterKey masterKey = m_card.GetMasterKey( connection ); if( m_card.IsPinProtected ) { masterKey.Decrypt( masterKey.GetPinHelper( m_card.Pin ) ); } } finally { connection.Close(); } } // // Summary: // The Async call to Select a card. // // Remarks: // Running on threadpool thread. // protected override object AsyncExecute( AsyncParams asyncParam ) { return ( ( GetTokenRequest )ParentRequest ).SelectCard( m_card, m_card.IsSelfIssued ); } // // Summary: // The Async cancel call to Select a card. // protected override void AsyncCancel() { ( ( GetTokenRequest ) ParentRequest ).CancelSelectCard(); } } } // 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
- EntityAdapter.cs
- QueueProcessor.cs
- RelationshipConstraintValidator.cs
- WindowsProgressbar.cs
- IgnoreFileBuildProvider.cs
- WindowsImpersonationContext.cs
- PerformanceCounterLib.cs
- ManagedWndProcTracker.cs
- LocalizableResourceBuilder.cs
- PackUriHelper.cs
- XsltFunctions.cs
- Transform3DGroup.cs
- PatternMatcher.cs
- SerializationUtilities.cs
- PeerNameResolver.cs
- ControlBuilderAttribute.cs
- StringUtil.cs
- ExpressionVisitor.cs
- RectConverter.cs
- HttpRawResponse.cs
- DbConnectionPoolGroup.cs
- ValidationResults.cs
- Model3D.cs
- StatusBarPanel.cs
- ConfigXmlComment.cs
- AssemblyAttributesGoHere.cs
- WebPartConnectVerb.cs
- DataColumnCollection.cs
- MatrixAnimationUsingKeyFrames.cs
- WindowsScrollBar.cs
- WhitespaceSignificantCollectionAttribute.cs
- BaseAddressElementCollection.cs
- ObjectHandle.cs
- RenamedEventArgs.cs
- LoginStatusDesigner.cs
- ColumnWidthChangedEvent.cs
- Int64Converter.cs
- Header.cs
- Function.cs
- CollectionTraceRecord.cs
- RuntimeIdentifierPropertyAttribute.cs
- XmlSchemaDocumentation.cs
- KeyboardNavigation.cs
- CoTaskMemHandle.cs
- FamilyMap.cs
- TextServicesPropertyRanges.cs
- TypeUtil.cs
- DependencyPropertyChangedEventArgs.cs
- EdmEntityTypeAttribute.cs
- DesignerAttribute.cs
- DPAPIProtectedConfigurationProvider.cs
- LayoutSettings.cs
- MediaPlayerState.cs
- PaintValueEventArgs.cs
- GridSplitter.cs
- RTLAwareMessageBox.cs
- SharedPersonalizationStateInfo.cs
- StyleSelector.cs
- NamespaceQuery.cs
- ControlUtil.cs
- FileIOPermission.cs
- DiagnosticsConfigurationHandler.cs
- ColumnHeader.cs
- ParameterInfo.cs
- WebPartHeaderCloseVerb.cs
- SerialPort.cs
- XmlSchemaSimpleContent.cs
- ParsedAttributeCollection.cs
- _UriTypeConverter.cs
- MetadataUtilsSmi.cs
- ButtonColumn.cs
- MemoryFailPoint.cs
- TypeEnumerableViewSchema.cs
- CustomErrorsSectionWrapper.cs
- MDIControlStrip.cs
- DatatypeImplementation.cs
- ReplyChannelAcceptor.cs
- SafeArrayTypeMismatchException.cs
- MetaData.cs
- NotFiniteNumberException.cs
- BindingSourceDesigner.cs
- SmtpException.cs
- BrowserCapabilitiesFactory.cs
- HttpModuleAction.cs
- _Events.cs
- PerformanceCounterCategory.cs
- ProxyWebPart.cs
- BitmapVisualManager.cs
- StateDesigner.LayoutSelectionGlyph.cs
- PanelStyle.cs
- RelationshipNavigation.cs
- WSTrustFeb2005.cs
- LifetimeServices.cs
- PropertyCondition.cs
- XmlParser.cs
- TreeNodeConverter.cs
- IProvider.cs
- _ProxyChain.cs
- ComboBox.cs
- GenericQueueSurrogate.cs