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
- SplineQuaternionKeyFrame.cs
- DEREncoding.cs
- RotateTransform3D.cs
- PropertyStore.cs
- AxHost.cs
- ServiceHttpHandlerFactory.cs
- COM2ExtendedTypeConverter.cs
- SecurityHelper.cs
- HWStack.cs
- Scheduler.cs
- ModelFactory.cs
- ByteKeyFrameCollection.cs
- PropertyTab.cs
- StateBag.cs
- ScrollBar.cs
- Win32SafeHandles.cs
- ConnectionProviderAttribute.cs
- KnownTypesHelper.cs
- mediaeventargs.cs
- WmpBitmapDecoder.cs
- TimelineGroup.cs
- AsymmetricKeyExchangeDeformatter.cs
- Cast.cs
- OracleCommandSet.cs
- Exception.cs
- Roles.cs
- ColumnResizeUndoUnit.cs
- DataKey.cs
- TimelineClockCollection.cs
- QueryableDataSource.cs
- RichTextBoxContextMenu.cs
- Rijndael.cs
- MultiBindingExpression.cs
- ParserContext.cs
- DefaultAssemblyResolver.cs
- Shared.cs
- EventRoute.cs
- RegexCharClass.cs
- SqlXmlStorage.cs
- ParserStack.cs
- ProfileSettingsCollection.cs
- PeerNameRegistration.cs
- CodeTypeDelegate.cs
- SubpageParaClient.cs
- XmlSerializationGeneratedCode.cs
- Control.cs
- ZipFileInfo.cs
- PointConverter.cs
- BindingCompleteEventArgs.cs
- IdentityModelStringsVersion1.cs
- ProcessHost.cs
- Cast.cs
- TrackingLocation.cs
- TextParentUndoUnit.cs
- DataControlCommands.cs
- MobileUITypeEditor.cs
- HtmlTable.cs
- QueryableDataSourceHelper.cs
- RtfToken.cs
- SystemKeyConverter.cs
- OrderByQueryOptionExpression.cs
- ToolBar.cs
- RelationshipType.cs
- RawStylusInputCustomData.cs
- FragmentQueryKB.cs
- PopupEventArgs.cs
- FormConverter.cs
- ComAdminWrapper.cs
- SortKey.cs
- DbConnectionPool.cs
- CustomLineCap.cs
- ComplexBindingPropertiesAttribute.cs
- SessionStateContainer.cs
- FormClosingEvent.cs
- ToolBarPanel.cs
- ByteAnimationBase.cs
- ContainerVisual.cs
- safemediahandle.cs
- XPathSelfQuery.cs
- CatalogZoneBase.cs
- CryptoConfig.cs
- FolderBrowserDialog.cs
- WebDisplayNameAttribute.cs
- XmlAttributeAttribute.cs
- DelegatingTypeDescriptionProvider.cs
- HelloMessage11.cs
- EventMappingSettingsCollection.cs
- StringReader.cs
- SystemUnicastIPAddressInformation.cs
- VisualBasicSettingsHandler.cs
- Cursor.cs
- CacheEntry.cs
- ValueUnavailableException.cs
- SiteMembershipCondition.cs
- ProcessHostConfigUtils.cs
- ExitEventArgs.cs
- AppendHelper.cs
- PropertyGridView.cs
- ScaleTransform3D.cs
- RequestSecurityToken.cs