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
- InvokeGenerator.cs
- FolderBrowserDialog.cs
- _SslState.cs
- CalendarBlackoutDatesCollection.cs
- sqlcontext.cs
- AllMembershipCondition.cs
- _FixedSizeReader.cs
- ReadOnlyCollectionBase.cs
- FontInfo.cs
- HwndSource.cs
- Converter.cs
- WinFormsSecurity.cs
- SqlFormatter.cs
- IDispatchConstantAttribute.cs
- BulletedList.cs
- TypedReference.cs
- InfoCardSymmetricAlgorithm.cs
- SqlProvider.cs
- SmtpNtlmAuthenticationModule.cs
- SQLMembershipProvider.cs
- _IPv6Address.cs
- ExpressionHelper.cs
- RandomDelayQueuedSendsAsyncResult.cs
- NTAccount.cs
- LabelLiteral.cs
- DataGridViewLayoutData.cs
- MetafileEditor.cs
- XmlSchemaObjectTable.cs
- ScriptIgnoreAttribute.cs
- QuotaThrottle.cs
- BrowserTree.cs
- SmtpReplyReaderFactory.cs
- SqlFacetAttribute.cs
- PolyQuadraticBezierSegmentFigureLogic.cs
- FrugalMap.cs
- SqlEnums.cs
- SqlDataSourceSelectingEventArgs.cs
- Encoding.cs
- TextEndOfParagraph.cs
- XmlSchemaInferenceException.cs
- AutomationTextAttribute.cs
- IteratorDescriptor.cs
- UriScheme.cs
- SqlProfileProvider.cs
- MultiPropertyDescriptorGridEntry.cs
- DataGridViewDataConnection.cs
- ErrorTableItemStyle.cs
- LoginViewDesigner.cs
- AuthenticationException.cs
- CompiledRegexRunner.cs
- RayMeshGeometry3DHitTestResult.cs
- WmpBitmapDecoder.cs
- WebPartUtil.cs
- BamlTreeNode.cs
- httpserverutility.cs
- SafeTimerHandle.cs
- SpecularMaterial.cs
- HwndStylusInputProvider.cs
- ListItemCollection.cs
- IIS7UserPrincipal.cs
- XmlnsDefinitionAttribute.cs
- SHA1Managed.cs
- NavigationHelper.cs
- XmlReader.cs
- InvokeFunc.cs
- WebPartDisplayMode.cs
- Button.cs
- EntityDataSourceMemberPath.cs
- VirtualPathExtension.cs
- XsltContext.cs
- FrameworkTemplate.cs
- NavigationProperty.cs
- Baml6ConstructorInfo.cs
- NetWebProxyFinder.cs
- WebPartAddingEventArgs.cs
- KoreanLunisolarCalendar.cs
- CapabilitiesRule.cs
- SerializationSectionGroup.cs
- HttpContext.cs
- Positioning.cs
- CqlParserHelpers.cs
- CollectionViewProxy.cs
- ParsedAttributeCollection.cs
- CompletionCallbackWrapper.cs
- SmtpNegotiateAuthenticationModule.cs
- SnapLine.cs
- PenCursorManager.cs
- XmlSigningNodeWriter.cs
- ParserContext.cs
- XmlSchemaAnnotation.cs
- DropSource.cs
- Timer.cs
- BasicHttpBindingCollectionElement.cs
- EventRecordWrittenEventArgs.cs
- TableProvider.cs
- LockCookie.cs
- DetailsViewInsertedEventArgs.cs
- JoinSymbol.cs
- TemplateEditingService.cs
- BindingNavigatorDesigner.cs