Code:
/ 4.0 / 4.0 / untmp / DEVDIV_TFS / Dev10 / Releases / RTMRel / ndp / cdf / src / WCF / IdentityModel / System / IdentityModel / Selectors / SecurityTokenSerializer.cs / 1305376 / SecurityTokenSerializer.cs
//------------------------------------------------------------ // Copyright (c) Microsoft Corporation. All rights reserved. //----------------------------------------------------------- namespace System.IdentityModel.Selectors { using System.Xml; using System.IdentityModel.Tokens; ////// SecurityTokenSerializer is responsible for writing and reading SecurityKeyIdentifiers, SecurityKeyIdentifierClauses and SecurityTokens. /// In order to read SecurityTokens the SecurityTokenSerializer may need to resolve token references using the SecurityTokenResolvers that get passed in. /// The SecurityTokenSerializer is stateless /// Exceptions: XmlException, SecurityTokenException, NotSupportedException, InvalidOperationException, ArgumentException /// public abstract class SecurityTokenSerializer { // public methods public bool CanReadToken(XmlReader reader) { if (reader == null) { throw DiagnosticUtility.ExceptionUtility.ThrowHelperArgumentNull("reader"); } return CanReadTokenCore(reader); ; } public bool CanWriteToken(SecurityToken token) { if (token == null) { throw DiagnosticUtility.ExceptionUtility.ThrowHelperArgumentNull("token"); } return CanWriteTokenCore(token); ; } public bool CanReadKeyIdentifier(XmlReader reader) { if (reader == null) { throw DiagnosticUtility.ExceptionUtility.ThrowHelperArgumentNull("reader"); } return CanReadKeyIdentifierCore(reader); ; } public bool CanWriteKeyIdentifier(SecurityKeyIdentifier keyIdentifier) { if (keyIdentifier == null) { throw DiagnosticUtility.ExceptionUtility.ThrowHelperArgumentNull("keyIdentifier"); } return CanWriteKeyIdentifierCore(keyIdentifier); ; } public bool CanReadKeyIdentifierClause(XmlReader reader) { if (reader == null) { throw DiagnosticUtility.ExceptionUtility.ThrowHelperArgumentNull("reader"); } return CanReadKeyIdentifierClauseCore(reader); ; } public bool CanWriteKeyIdentifierClause(SecurityKeyIdentifierClause keyIdentifierClause) { if (keyIdentifierClause == null) { throw DiagnosticUtility.ExceptionUtility.ThrowHelperArgumentNull("keyIdentifierClause"); } return CanWriteKeyIdentifierClauseCore(keyIdentifierClause); ; } public SecurityToken ReadToken(XmlReader reader, SecurityTokenResolver tokenResolver) { if (reader == null) { throw DiagnosticUtility.ExceptionUtility.ThrowHelperArgumentNull("reader"); } return ReadTokenCore(reader, tokenResolver); } public void WriteToken(XmlWriter writer, SecurityToken token) { if (writer == null) { throw DiagnosticUtility.ExceptionUtility.ThrowHelperArgumentNull("writer"); } if (token == null) { throw DiagnosticUtility.ExceptionUtility.ThrowHelperArgumentNull("token"); } WriteTokenCore(writer, token); } public SecurityKeyIdentifier ReadKeyIdentifier(XmlReader reader) { if (reader == null) { throw DiagnosticUtility.ExceptionUtility.ThrowHelperArgumentNull("reader"); } return ReadKeyIdentifierCore(reader); } public void WriteKeyIdentifier(XmlWriter writer, SecurityKeyIdentifier keyIdentifier) { if (writer == null) { throw DiagnosticUtility.ExceptionUtility.ThrowHelperArgumentNull("writer"); } if (keyIdentifier == null) { throw DiagnosticUtility.ExceptionUtility.ThrowHelperArgumentNull("keyIdentifier"); } WriteKeyIdentifierCore(writer, keyIdentifier); } public SecurityKeyIdentifierClause ReadKeyIdentifierClause(XmlReader reader) { if (reader == null) { throw DiagnosticUtility.ExceptionUtility.ThrowHelperArgumentNull("reader"); } return ReadKeyIdentifierClauseCore(reader); } public void WriteKeyIdentifierClause(XmlWriter writer, SecurityKeyIdentifierClause keyIdentifierClause) { if (writer == null) { throw DiagnosticUtility.ExceptionUtility.ThrowHelperArgumentNull("writer"); } if (keyIdentifierClause == null) { throw DiagnosticUtility.ExceptionUtility.ThrowHelperArgumentNull("keyIdentifierClause"); } WriteKeyIdentifierClauseCore(writer, keyIdentifierClause); } // protected abstract methods protected abstract bool CanReadTokenCore(XmlReader reader); protected abstract bool CanWriteTokenCore(SecurityToken token); protected abstract bool CanReadKeyIdentifierCore(XmlReader reader); protected abstract bool CanWriteKeyIdentifierCore(SecurityKeyIdentifier keyIdentifier); protected abstract bool CanReadKeyIdentifierClauseCore(XmlReader reader); protected abstract bool CanWriteKeyIdentifierClauseCore(SecurityKeyIdentifierClause keyIdentifierClause); protected abstract SecurityToken ReadTokenCore(XmlReader reader, SecurityTokenResolver tokenResolver); protected abstract void WriteTokenCore(XmlWriter writer, SecurityToken token); protected abstract SecurityKeyIdentifier ReadKeyIdentifierCore(XmlReader reader); protected abstract void WriteKeyIdentifierCore(XmlWriter writer, SecurityKeyIdentifier keyIdentifier); protected abstract SecurityKeyIdentifierClause ReadKeyIdentifierClauseCore(XmlReader reader); protected abstract void WriteKeyIdentifierClauseCore(XmlWriter writer, SecurityKeyIdentifierClause keyIdentifierClause); } } // File provided for Reference Use Only by Microsoft Corporation (c) 2007.
Link Menu
This book is available now!
Buy at Amazon US or
Buy at Amazon UK
- DropSource.cs
- Menu.cs
- DataBoundControl.cs
- Funcletizer.cs
- NamedPermissionSet.cs
- AsyncOperationManager.cs
- panel.cs
- SiteMapPath.cs
- Win32SafeHandles.cs
- AttributeData.cs
- WebPartVerbCollection.cs
- XmlSchemaSimpleType.cs
- HtmlTextArea.cs
- AuthenticationManager.cs
- BasicCellRelation.cs
- HtmlTableCell.cs
- SmtpDigestAuthenticationModule.cs
- LocalFileSettingsProvider.cs
- WebSysDisplayNameAttribute.cs
- Automation.cs
- LoadMessageLogger.cs
- ImplicitInputBrush.cs
- EmissiveMaterial.cs
- OpenFileDialog.cs
- ManageRequest.cs
- CodeDesigner.cs
- QueryParameter.cs
- BindingManagerDataErrorEventArgs.cs
- PackUriHelper.cs
- RegistryKey.cs
- StrokeCollectionConverter.cs
- WebPartConnectionsEventArgs.cs
- Byte.cs
- DynamicActivityProperty.cs
- NodeFunctions.cs
- _SslStream.cs
- IPEndPoint.cs
- XslTransformFileEditor.cs
- MediaCommands.cs
- Span.cs
- RepeaterItem.cs
- HandoffBehavior.cs
- NameObjectCollectionBase.cs
- TrackingMemoryStream.cs
- ResizeGrip.cs
- X509CertificateCollection.cs
- unsafeIndexingFilterStream.cs
- TypefaceMap.cs
- CodeObject.cs
- FontSource.cs
- StaticDataManager.cs
- SignatureToken.cs
- HelloOperationAsyncResult.cs
- RequestQueryParser.cs
- SearchForVirtualItemEventArgs.cs
- ByteRangeDownloader.cs
- RewritingPass.cs
- ExpressionCopier.cs
- Perspective.cs
- WrappedOptions.cs
- StaticResourceExtension.cs
- PriorityChain.cs
- Ipv6Element.cs
- JsonDataContract.cs
- BindingContext.cs
- StringConverter.cs
- CodeAccessPermission.cs
- BuildProviderCollection.cs
- EditingCoordinator.cs
- OleDbEnumerator.cs
- UniqueConstraint.cs
- BitmapFrame.cs
- DelayedRegex.cs
- baseaxisquery.cs
- OleDbDataAdapter.cs
- TypeBuilder.cs
- clipboard.cs
- WpfWebRequestHelper.cs
- FieldBuilder.cs
- ZipIOCentralDirectoryDigitalSignature.cs
- TrustLevelCollection.cs
- TableCell.cs
- RevocationPoint.cs
- ConnectionPoint.cs
- Win32SafeHandles.cs
- SqlDataSourceView.cs
- TextRunProperties.cs
- WebPartsPersonalizationAuthorization.cs
- LambdaCompiler.ControlFlow.cs
- Win32PrintDialog.cs
- CodeConditionStatement.cs
- PropertyEntry.cs
- EdmEntityTypeAttribute.cs
- GridViewRowCollection.cs
- WebConfigurationFileMap.cs
- SchemaDeclBase.cs
- NativeMethods.cs
- Stack.cs
- AuthenticationService.cs
- NoneExcludedImageIndexConverter.cs