Click here to Skip to main content
Click here to Skip to main content
 
Add your own
alternative version

OpenID With Forms Authentication

, 13 Dec 2010
Shows how to use OpenID with ASP.NET MVC Forms Authentication.
Prize winner in Competition "Best ASP.NET article of December 2010"
DotNetOpenIdTest.zip
DotNetOpenIdTest
DotNetOpenIdTest
App_Data
bin
DotNetOpenAuth.dll
DotNetOpenIdTest.dll
Content
images
aolW.png
blogger.png
claimid.png
facebookW.png
fadegrey.png
flickr.png
flickrW.png
googleW.png
livejournal.png
myopenid.png
myopenidW.png
myspaceW.png
openidico.png
openidW.png
technorati.png
verisign.png
vidoop.png
wordpress.png
yahooW.png
Controllers
DotNetOpenIdTest.csproj.user
Global.asax
obj
Debug
DotNetOpenIdTest.dll
TempPE
Properties
Scripts
Views
Account
Home
Site
refs
DotNetOpenAuth.dll
<?xml version="1.0"?>
<doc>
  <assembly>
    <name>DotNetOpenAuth</name>
  </assembly>
  <members>
    <member name="T:DotNetOpenAuth.ComponentModel.ClaimTypeSuggestions">
      <summary>
            A design-time helper to give a Uri property an auto-complete functionality
            listing the URIs in the <see cref="T:System.IdentityModel.Claims.ClaimTypes" /> class.
            </summary>
    </member>
    <member name="T:DotNetOpenAuth.ComponentModel.SuggestedStringsConverter">
      <summary>
            A type that generates suggested strings for Intellisense,
            but doesn't actually convert between strings and other types.
            </summary>
    </member>
    <member name="T:DotNetOpenAuth.ComponentModel.ConverterBase`1">
      <summary>
            A design-time helper to allow Intellisense to aid typing
            ClaimType URIs.
            </summary>
      <typeparam name="T">The strong-type of the property this class is affixed to.</typeparam>
    </member>
    <member name="F:DotNetOpenAuth.ComponentModel.ConverterBase`1.standardValues">
      <summary>
            A cache of the standard claim types known to the application.
            </summary>
    </member>
    <member name="M:DotNetOpenAuth.ComponentModel.ConverterBase`1.#ctor">
      <summary>
            Initializes a new instance of the ConverterBase class.
            </summary>
    </member>
    <member name="M:DotNetOpenAuth.ComponentModel.ConverterBase`1.GetStandardValuesSupported(System.ComponentModel.ITypeDescriptorContext)">
      <summary>
            Returns whether this object supports a standard set of values that can be picked from a list, using the specified context.
            </summary>
      <param name="context">An <see cref="T:System.ComponentModel.ITypeDescriptorContext" /> that provides a format context.</param>
      <returns>
            true if <see cref="M:System.ComponentModel.TypeConverter.GetStandardValues" /> should be called to find a common set of values the object supports; otherwise, false.
            </returns>
    </member>
    <member name="M:DotNetOpenAuth.ComponentModel.ConverterBase`1.GetStandardValues(System.ComponentModel.ITypeDescriptorContext)">
      <summary>
            Returns a collection of standard values for the data type this type converter is designed for when provided with a format context.
            </summary>
      <param name="context">An <see cref="T:System.ComponentModel.ITypeDescriptorContext" /> that provides a format context that can be used to extract additional information about the environment from which this converter is invoked. This parameter or properties of this parameter can be null.</param>
      <returns>
            A <see cref="T:System.ComponentModel.TypeConverter.StandardValuesCollection" /> that holds a standard set of valid values, or null if the data type does not support a standard set of values.
            </returns>
    </member>
    <member name="M:DotNetOpenAuth.ComponentModel.ConverterBase`1.GetStandardValuesExclusive(System.ComponentModel.ITypeDescriptorContext)">
      <summary>
            Returns whether the collection of standard values returned from <see cref="M:System.ComponentModel.TypeConverter.GetStandardValues" /> is an exclusive list of possible values, using the specified context.
            </summary>
      <param name="context">An <see cref="T:System.ComponentModel.ITypeDescriptorContext" /> that provides a format context.</param>
      <returns>
            true if the <see cref="T:System.ComponentModel.TypeConverter.StandardValuesCollection" /> returned from <see cref="M:System.ComponentModel.TypeConverter.GetStandardValues" /> is an exhaustive list of possible values; false if other values are possible.
            </returns>
    </member>
    <member name="M:DotNetOpenAuth.ComponentModel.ConverterBase`1.CanConvertFrom(System.ComponentModel.ITypeDescriptorContext,System.Type)">
      <summary>
            Returns whether this converter can convert an object of the given type to the type of this converter, using the specified context.
            </summary>
      <param name="context">An <see cref="T:System.ComponentModel.ITypeDescriptorContext" /> that provides a format context.</param>
      <param name="sourceType">A <see cref="T:System.Type" /> that represents the type you want to convert from.</param>
      <returns>
            true if this converter can perform the conversion; otherwise, false.
            </returns>
    </member>
    <member name="M:DotNetOpenAuth.ComponentModel.ConverterBase`1.CanConvertTo(System.ComponentModel.ITypeDescriptorContext,System.Type)">
      <summary>
            Returns whether this converter can convert the object to the specified type, using the specified context.
            </summary>
      <param name="context">An <see cref="T:System.ComponentModel.ITypeDescriptorContext" /> that provides a format context.</param>
      <param name="destinationType">A <see cref="T:System.Type" /> that represents the type you want to convert to.</param>
      <returns>
            true if this converter can perform the conversion; otherwise, false.
            </returns>
    </member>
    <member name="M:DotNetOpenAuth.ComponentModel.ConverterBase`1.ConvertFrom(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object)">
      <summary>
            Converts the given object to the type of this converter, using the specified context and culture information.
            </summary>
      <param name="context">An <see cref="T:System.ComponentModel.ITypeDescriptorContext" /> that provides a format context.</param>
      <param name="culture">The <see cref="T:System.Globalization.CultureInfo" /> to use as the current culture.</param>
      <param name="value">The <see cref="T:System.Object" /> to convert.</param>
      <returns>
            An <see cref="T:System.Object" /> that represents the converted value.
            </returns>
      <exception cref="T:System.NotSupportedException">
            The conversion cannot be performed.
            </exception>
    </member>
    <member name="M:DotNetOpenAuth.ComponentModel.ConverterBase`1.ConvertTo(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type)">
      <summary>
            Converts the given value object to the specified type, using the specified context and culture information.
            </summary>
      <param name="context">An <see cref="T:System.ComponentModel.ITypeDescriptorContext" /> that provides a format context.</param>
      <param name="culture">A <see cref="T:System.Globalization.CultureInfo" />. If null is passed, the current culture is assumed.</param>
      <param name="value">The <see cref="T:System.Object" /> to convert.</param>
      <param name="destinationType">The <see cref="T:System.Type" /> to convert the <paramref name="value" /> parameter to.</param>
      <returns>
            An <see cref="T:System.Object" /> that represents the converted value.
            </returns>
      <exception cref="T:System.ArgumentNullException">
            The <paramref name="destinationType" /> parameter is null.
            </exception>
      <exception cref="T:System.NotSupportedException">
            The conversion cannot be performed.
            </exception>
    </member>
    <member name="M:DotNetOpenAuth.ComponentModel.ConverterBase`1.CreateInstanceDescriptor(System.Reflection.MemberInfo,System.Collections.ICollection)">
      <summary>
            Creates an <see cref="T:System.ComponentModel.Design.Serialization.InstanceDescriptor" /> instance, protecting against the LinkDemand.
            </summary>
      <param name="memberInfo">The member info.</param>
      <param name="arguments">The arguments.</param>
      <returns>A <see cref="T:System.ComponentModel.Design.Serialization.InstanceDescriptor" />, or <c>null</c> if sufficient permissions are unavailable.</returns>
    </member>
    <member name="M:DotNetOpenAuth.ComponentModel.ConverterBase`1.GetStandardValuesForCache">
      <summary>
            Gets the standard values to suggest with Intellisense in the designer.
            </summary>
      <returns>A collection of the standard values.</returns>
      <pure />
    </member>
    <member name="M:DotNetOpenAuth.ComponentModel.ConverterBase`1.ConvertFrom(System.String)">
      <summary>
            Converts a value from its string representation to its strongly-typed object.
            </summary>
      <param name="value">The value.</param>
      <returns>The strongly-typed object.</returns>
      <pure />
    </member>
    <member name="M:DotNetOpenAuth.ComponentModel.ConverterBase`1.CreateFrom(`0)">
      <summary>
            Creates the reflection instructions for recreating an instance later.
            </summary>
      <param name="value">The value to recreate later.</param>
      <returns>The description of how to recreate an instance.</returns>
      <pure />
    </member>
    <member name="M:DotNetOpenAuth.ComponentModel.ConverterBase`1.ConvertToString(`0)">
      <summary>
            Converts the strongly-typed value to a string.
            </summary>
      <param name="value">The value to convert.</param>
      <returns>The string representation of the object.</returns>
      <pure />
    </member>
    <member name="M:DotNetOpenAuth.ComponentModel.ConverterBase`1.CreateInstanceDescriptorPrivate(System.Reflection.MemberInfo,System.Collections.ICollection)">
      <summary>
            Creates an <see cref="T:System.ComponentModel.Design.Serialization.InstanceDescriptor" /> instance, protecting against the LinkDemand.
            </summary>
      <param name="memberInfo">The member info.</param>
      <param name="arguments">The arguments.</param>
      <returns>A <see cref="T:System.ComponentModel.Design.Serialization.InstanceDescriptor" />.</returns>
    </member>
    <member name="P:DotNetOpenAuth.ComponentModel.ConverterBase`1.StandardValueCache">
      <summary>
            Gets a cache of the standard values to suggest.
            </summary>
    </member>
    <member name="M:DotNetOpenAuth.ComponentModel.SuggestedStringsConverter.#ctor">
      <summary>
            Initializes a new instance of the <see cref="T:DotNetOpenAuth.ComponentModel.SuggestedStringsConverter" /> class.
            </summary>
    </member>
    <member name="M:DotNetOpenAuth.ComponentModel.SuggestedStringsConverter.GetStandardValuesForCacheShared(System.Type)">
      <summary>
            Gets the values of public static fields and properties on a given type.
            </summary>
      <param name="type">The type to reflect over.</param>
      <returns>A collection of values.</returns>
    </member>
    <member name="M:DotNetOpenAuth.ComponentModel.SuggestedStringsConverter.ConvertFrom(System.String)">
      <summary>
            Converts a value from its string representation to its strongly-typed object.
            </summary>
      <param name="value">The value.</param>
      <returns>The strongly-typed object.</returns>
      <pure />
    </member>
    <member name="M:DotNetOpenAuth.ComponentModel.SuggestedStringsConverter.CreateFrom(System.String)">
      <summary>
            Creates the reflection instructions for recreating an instance later.
            </summary>
      <param name="value">The value to recreate later.</param>
      <returns>
            The description of how to recreate an instance.
            </returns>
      <pure />
    </member>
    <member name="M:DotNetOpenAuth.ComponentModel.SuggestedStringsConverter.ConvertToString(System.String)">
      <summary>
            Converts the strongly-typed value to a string.
            </summary>
      <param name="value">The value to convert.</param>
      <returns>The string representation of the object.</returns>
      <pure />
    </member>
    <member name="M:DotNetOpenAuth.ComponentModel.SuggestedStringsConverter.GetStandardValuesForCache">
      <summary>
            Gets the standard values to suggest with Intellisense in the designer.
            </summary>
      <returns>A collection of the standard values.</returns>
      <pure />
    </member>
    <member name="P:DotNetOpenAuth.ComponentModel.SuggestedStringsConverter.WellKnownValuesType">
      <summary>
            Gets the type to reflect over for the well known values.
            </summary>
    </member>
    <member name="M:DotNetOpenAuth.ComponentModel.ClaimTypeSuggestions.#ctor">
      <summary>
            Initializes a new instance of the <see cref="T:DotNetOpenAuth.ComponentModel.ClaimTypeSuggestions" /> class.
            </summary>
    </member>
    <member name="P:DotNetOpenAuth.ComponentModel.ClaimTypeSuggestions.WellKnownValuesType">
      <summary>
            Gets the type to reflect over to extract the well known values.
            </summary>
    </member>
    <member name="T:DotNetOpenAuth.ComponentModel.SuggestedStringsConverterContract">
      <summary>
            Contract class for the <see cref="T:DotNetOpenAuth.ComponentModel.SuggestedStringsConverter" /> class.
            </summary>
    </member>
    <member name="P:DotNetOpenAuth.ComponentModel.SuggestedStringsConverterContract.WellKnownValuesType">
      <summary>
            Gets the type to reflect over for the well known values.
            </summary>
    </member>
    <member name="T:DotNetOpenAuth.ComponentModel.IssuersSuggestions">
      <summary>
            A design-time helper to give a Uri property an auto-complete functionality
            listing the URIs in the <see cref="T:DotNetOpenAuth.InfoCard.WellKnownIssuers" /> class.
            </summary>
    </member>
    <member name="M:DotNetOpenAuth.ComponentModel.IssuersSuggestions.#ctor">
      <summary>
            Initializes a new instance of the <see cref="T:DotNetOpenAuth.ComponentModel.IssuersSuggestions" /> class.
            </summary>
    </member>
    <member name="P:DotNetOpenAuth.ComponentModel.IssuersSuggestions.WellKnownValuesType">
      <summary>
            Gets the type to reflect over to extract the well known values.
            </summary>
    </member>
    <member name="T:DotNetOpenAuth.ComponentModel.IdentifierConverter">
      <summary>
            A design-time helper to give an OpenID Identifier property an auto-complete functionality
            listing the OP Identifiers in the <see cref="T:DotNetOpenAuth.OpenId.RelyingParty.WellKnownProviders" /> class.
            </summary>
    </member>
    <member name="M:DotNetOpenAuth.ComponentModel.IdentifierConverter.#ctor">
      <summary>
            Initializes a new instance of the <see cref="T:DotNetOpenAuth.ComponentModel.IdentifierConverter" /> class.
            </summary>
    </member>
    <member name="M:DotNetOpenAuth.ComponentModel.IdentifierConverter.ConvertFrom(System.String)">
      <summary>
            Converts a value from its string representation to its strongly-typed object.
            </summary>
      <param name="value">The value.</param>
      <returns>The strongly-typed object.</returns>
    </member>
    <member name="M:DotNetOpenAuth.ComponentModel.IdentifierConverter.CreateFrom(DotNetOpenAuth.OpenId.Identifier)">
      <summary>
            Creates the reflection instructions for recreating an instance later.
            </summary>
      <param name="value">The value to recreate later.</param>
      <returns>
            The description of how to recreate an instance.
            </returns>
    </member>
    <member name="M:DotNetOpenAuth.ComponentModel.IdentifierConverter.ConvertToString(DotNetOpenAuth.OpenId.Identifier)">
      <summary>
            Converts the strongly-typed value to a string.
            </summary>
      <param name="value">The value to convert.</param>
      <returns>The string representation of the object.</returns>
    </member>
    <member name="M:DotNetOpenAuth.ComponentModel.IdentifierConverter.GetStandardValuesForCache">
      <summary>
            Gets the standard values to suggest with Intellisense in the designer.
            </summary>
      <returns>A collection of the standard values.</returns>
    </member>
    <member name="T:DotNetOpenAuth.ComponentModel.UriConverter">
      <summary>
            A design-time helper to allow controls to have properties
            of type <see cref="T:System.Uri" />.
            </summary>
    </member>
    <member name="M:DotNetOpenAuth.ComponentModel.UriConverter.#ctor">
      <summary>
            Initializes a new instance of the UriConverter class.
            </summary>
    </member>
    <member name="M:DotNetOpenAuth.ComponentModel.UriConverter.IsValid(System.ComponentModel.ITypeDescriptorContext,System.Object)">
      <summary>
            Returns whether the given value object is valid for this type and for the specified context.
            </summary>
      <param name="context">An <see cref="T:System.ComponentModel.ITypeDescriptorContext" /> that provides a format context.</param>
      <param name="value">The <see cref="T:System.Object" /> to test for validity.</param>
      <returns>
            true if the specified value is valid for this object; otherwise, false.
            </returns>
    </member>
    <member name="M:DotNetOpenAuth.ComponentModel.UriConverter.ConvertFrom(System.String)">
      <summary>
            Converts a value from its string representation to its strongly-typed object.
            </summary>
      <param name="value">The value.</param>
      <returns>The strongly-typed object.</returns>
      <pure />
    </member>
    <member name="M:DotNetOpenAuth.ComponentModel.UriConverter.CreateFrom(System.Uri)">
      <summary>
            Creates the reflection instructions for recreating an instance later.
            </summary>
      <param name="value">The value to recreate later.</param>
      <returns>
            The description of how to recreate an instance.
            </returns>
      <pure />
    </member>
    <member name="M:DotNetOpenAuth.ComponentModel.UriConverter.ConvertToString(System.Uri)">
      <summary>
            Converts the strongly-typed value to a string.
            </summary>
      <param name="value">The value to convert.</param>
      <returns>The string representation of the object.</returns>
      <pure />
    </member>
    <member name="M:DotNetOpenAuth.ComponentModel.UriConverter.GetStandardValuesForCache">
      <summary>
            Gets the standard claim type URIs known to the library.
            </summary>
      <returns>An array of the standard claim types.</returns>
      <pure />
    </member>
    <member name="P:DotNetOpenAuth.ComponentModel.UriConverter.WellKnownValuesType">
      <summary>
            Gets the type to reflect over to extract the well known values.
            </summary>
    </member>
    <member name="T:DotNetOpenAuth.Configuration.AssociationTypeCollection">
      <summary>
            Describes a collection of association type sub-elements in a .config file.
            </summary>
    </member>
    <member name="M:DotNetOpenAuth.Configuration.AssociationTypeCollection.#ctor">
      <summary>
            Initializes a new instance of the <see cref="T:DotNetOpenAuth.Configuration.AssociationTypeCollection" /> class.
            </summary>
    </member>
    <member name="M:DotNetOpenAuth.Configuration.AssociationTypeCollection.GetEnumerator">
      <summary>
            Returns an enumerator that iterates through the collection.
            </summary>
      <returns>
            A <see cref="T:System.Collections.Generic.IEnumerator`1" /> that can be used to iterate through the collection.
            </returns>
      <ensures inheritedFrom="M:System.Collections.Generic.IEnumerable`1.GetEnumerator" inheritedFromTypeName="IEnumerable">Contract.Result&lt;IEnumerator&lt;T&gt;&gt;() != null</ensures>
    </member>
    <member name="M:DotNetOpenAuth.Configuration.AssociationTypeCollection.CreateNewElement">
      <summary>
            When overridden in a derived class, creates a new <see cref="T:System.Configuration.ConfigurationElement" />.
            </summary>
      <returns>
            A new <see cref="T:System.Configuration.ConfigurationElement" />.
            </returns>
      <ensures inheritedFrom="M:System.Configuration.ConfigurationElementCollection.CreateNewElement" inheritedFromTypeName="ConfigurationElementCollection">Contract.Result&lt;ConfigurationElement&gt;() != null</ensures>
    </member>
    <member name="M:DotNetOpenAuth.Configuration.AssociationTypeCollection.GetElementKey(System.Configuration.ConfigurationElement)">
      <summary>
            Gets the element key for a specified configuration element when overridden in a derived class.
            </summary>
      <param name="element">The <see cref="T:System.Configuration.ConfigurationElement" /> to return the key for.</param>
      <returns>
            An <see cref="T:System.Object" /> that acts as the key for the specified <see cref="T:System.Configuration.ConfigurationElement" />.
            </returns>
      <requires inheritedFrom="M:System.Configuration.ConfigurationElementCollection.GetElementKey(System.Configuration.ConfigurationElement)" inheritedFromTypeName="ConfigurationElementCollection">element != null</requires>
      <ensures inheritedFrom="M:System.Configuration.ConfigurationElementCollection.GetElementKey(System.Configuration.ConfigurationElement)" inheritedFromTypeName="ConfigurationElementCollection">Contract.Result&lt;object&gt;() != null</ensures>
    </member>
    <member name="T:DotNetOpenAuth.Configuration.AssociationTypeElement">
      <summary>
            Describes an association type and its maximum lifetime as an element
            in a .config file.
            </summary>
    </member>
    <member name="F:DotNetOpenAuth.Configuration.AssociationTypeElement.AssociationTypeConfigName">
      <summary>
            The name of the attribute that stores the association type.
            </summary>
    </member>
    <member name="F:DotNetOpenAuth.Configuration.AssociationTypeElement.MaximumLifetimeConfigName">
      <summary>
            The name of the attribute that stores the association's maximum lifetime.
            </summary>
    </member>
    <member name="M:DotNetOpenAuth.Configuration.AssociationTypeElement.#ctor">
      <summary>
            Initializes a new instance of the <see cref="T:DotNetOpenAuth.Configuration.AssociationTypeElement" /> class.
            </summary>
    </member>
    <member name="P:DotNetOpenAuth.Configuration.AssociationTypeElement.AssociationType">
      <summary>
            Gets or sets the protocol name of the association.
            </summary>
    </member>
    <member name="P:DotNetOpenAuth.Configuration.AssociationTypeElement.MaximumLifetime">
      <summary>
            Gets or sets the maximum time a shared association should live.
            </summary>
      <value>The default value is 14 days.</value>
    </member>
    <member name="T:DotNetOpenAuth.Configuration.DotNetOpenAuthSection">
      <summary>
            Represents the section in the host's .config file that configures
            this library's settings.
            </summary>
    </member>
    <member name="F:DotNetOpenAuth.Configuration.DotNetOpenAuthSection.SectionName">
      <summary>
            The name of the section under which this library's settings must be found.
            </summary>
    </member>
    <member name="F:DotNetOpenAuth.Configuration.DotNetOpenAuthSection.MessagingElementName">
      <summary>
            The name of the &lt;messaging&gt; sub-element.
            </summary>
    </member>
    <member name="F:DotNetOpenAuth.Configuration.DotNetOpenAuthSection.OpenIdElementName">
      <summary>
            The name of the &lt;openid&gt; sub-element.
            </summary>
    </member>
    <member name="F:DotNetOpenAuth.Configuration.DotNetOpenAuthSection.OAuthElementName">
      <summary>
            The name of the &lt;oauth&gt; sub-element.
            </summary>
    </member>
    <member name="M:DotNetOpenAuth.Configuration.DotNetOpenAuthSection.#ctor">
      <summary>
            Initializes a new instance of the <see cref="T:DotNetOpenAuth.Configuration.DotNetOpenAuthSection" /> class.
            </summary>
    </member>
    <member name="P:DotNetOpenAuth.Configuration.DotNetOpenAuthSection.Configuration">
      <summary>
            Gets the configuration section from the .config file.
            </summary>
    </member>
    <member name="P:DotNetOpenAuth.Configuration.DotNetOpenAuthSection.Messaging">
      <summary>
            Gets or sets the configuration for the messaging framework.
            </summary>
    </member>
    <member name="P:DotNetOpenAuth.Configuration.DotNetOpenAuthSection.OpenId">
      <summary>
            Gets or sets the configuration for OpenID.
            </summary>
    </member>
    <member name="P:DotNetOpenAuth.Configuration.DotNetOpenAuthSection.OAuth">
      <summary>
            Gets or sets the configuration for OAuth.
            </summary>
    </member>
    <member name="T:DotNetOpenAuth.Configuration.MessagingElement">
      <summary>
            Represents the &lt;messaging&gt; element in the host's .config file.
            </summary>
    </member>
    <member name="F:DotNetOpenAuth.Configuration.MessagingElement.UntrustedWebRequestElementName">
      <summary>
            The name of the &lt;untrustedWebRequest&gt; sub-element.
            </summary>
    </member>
    <member name="F:DotNetOpenAuth.Configuration.MessagingElement.MaximumMessageLifetimeConfigName">
      <summary>
            The name of the attribute that stores the association's maximum lifetime.
            </summary>
    </member>
    <member name="F:DotNetOpenAuth.Configuration.MessagingElement.MaximumClockSkewConfigName">
      <summary>
            The name of the attribute that stores the maximum allowable clock skew.
            </summary>
    </member>
    <member name="P:DotNetOpenAuth.Configuration.MessagingElement.MaximumMessageLifetime">
      <summary>
            Gets the actual maximum message lifetime that a program should allow.
            </summary>
      <value>The sum of the <see cref="P:DotNetOpenAuth.Configuration.MessagingElement.MaximumMessageLifetime" /> and 
            <see cref="P:DotNetOpenAuth.Configuration.MessagingElement.MaximumClockSkew" /> property values.</value>
    </member>
    <member name="P:DotNetOpenAuth.Configuration.MessagingElement.MaximumMessageLifetimeNoSkew">
      <summary>
            Gets or sets the time between a message's creation and its receipt
            before it is considered expired.
            </summary>
      <value>
            The default value value is 3 minutes.
            </value>
      <remarks>
        <para>Smaller timespans mean lower tolerance for delays in message delivery.
            Larger timespans mean more nonces must be stored to provide replay protection.</para>
        <para>The maximum age a message implementing the
            <see cref="T:DotNetOpenAuth.Messaging.Bindings.IExpiringProtocolMessage" /> interface can be before
            being discarded as too old.</para>
        <para>This time limit should NOT take into account expected 
            time skew for servers across the Internet.  Time skew is added to
            this value and is controlled by the <see cref="P:DotNetOpenAuth.Configuration.MessagingElement.MaximumClockSkew" /> property.</para>
      </remarks>
    </member>
    <member name="P:DotNetOpenAuth.Configuration.MessagingElement.MaximumClockSkew">
      <summary>
            Gets or sets the maximum clock skew.
            </summary>
      <value>The default value is 10 minutes.</value>
      <remarks>
        <para>Smaller timespans mean lower tolerance for 
            time variance due to server clocks not being synchronized.
            Larger timespans mean greater chance for replay attacks and
            larger nonce caches.</para>
        <para>For example, if a server could conceivably have its
            clock d = 5 minutes off UTC time, then any two servers could have
            their clocks disagree by as much as 2*d = 10 minutes. </para>
      </remarks>
    </member>
    <member name="P:DotNetOpenAuth.Configuration.MessagingElement.UntrustedWebRequest">
      <summary>
            Gets or sets the configuration for the <see cref="T:DotNetOpenAuth.Messaging.UntrustedWebRequestHandler" /> class.
            </summary>
      <value>The untrusted web request.</value>
    </member>
    <member name="T:DotNetOpenAuth.Configuration.OAuthConsumerElement">
      <summary>
            Represents the &lt;oauth/consumer&gt; element in the host's .config file.
            </summary>
    </member>
    <member name="F:DotNetOpenAuth.Configuration.OAuthConsumerElement.SecuritySettingsConfigName">
      <summary>
            Gets the name of the security sub-element.
            </summary>
    </member>
    <member name="M:DotNetOpenAuth.Configuration.OAuthConsumerElement.#ctor">
      <summary>
            Initializes a new instance of the <see cref="T:DotNetOpenAuth.Configuration.OAuthConsumerElement" /> class.
            </summary>
    </member>
    <member name="P:DotNetOpenAuth.Configuration.OAuthConsumerElement.SecuritySettings">
      <summary>
            Gets or sets the security settings.
            </summary>
    </member>
    <member name="T:DotNetOpenAuth.Configuration.OAuthConsumerSecuritySettingsElement">
      <summary>
            Security settings that are applicable to consumers.
            </summary>
    </member>
    <member name="M:DotNetOpenAuth.Configuration.OAuthConsumerSecuritySettingsElement.#ctor">
      <summary>
            Initializes a new instance of the <see cref="T:DotNetOpenAuth.Configuration.OAuthConsumerSecuritySettingsElement" /> class.
            </summary>
    </member>
    <member name="M:DotNetOpenAuth.Configuration.OAuthConsumerSecuritySettingsElement.CreateSecuritySettings">
      <summary>
            Initializes a programmatically manipulatable bag of these security settings with the settings from the config file.
            </summary>
      <returns>The newly created security settings object.</returns>
    </member>
    <member name="T:DotNetOpenAuth.Configuration.OAuthElement">
      <summary>
            Represents the &lt;oauth&gt; element in the host's .config file.
            </summary>
    </member>
    <member name="F:DotNetOpenAuth.Configuration.OAuthElement.ConsumerElementName">
      <summary>
            The name of the &lt;consumer&gt; sub-element.
            </summary>
    </member>
    <member name="F:DotNetOpenAuth.Configuration.OAuthElement.ServiceProviderElementName">
      <summary>
            The name of the &lt;serviceProvider&gt; sub-element.
            </summary>
    </member>
    <member name="M:DotNetOpenAuth.Configuration.OAuthElement.#ctor">
      <summary>
            Initializes a new instance of the <see cref="T:DotNetOpenAuth.Configuration.OAuthElement" /> class.
            </summary>
    </member>
    <member name="P:DotNetOpenAuth.Configuration.OAuthElement.Consumer">
      <summary>
            Gets or sets the configuration specific for Consumers.
            </summary>
    </member>
    <member name="P:DotNetOpenAuth.Configuration.OAuthElement.ServiceProvider">
      <summary>
            Gets or sets the configuration specific for Service Providers.
            </summary>
    </member>
    <member name="T:DotNetOpenAuth.Configuration.OAuthServiceProviderElement">
      <summary>
            Represents the &lt;oauth/serviceProvider&gt; element in the host's .config file.
            </summary>
    </member>
    <member name="F:DotNetOpenAuth.Configuration.OAuthServiceProviderElement.StoreConfigName">
      <summary>
            The name of the custom store sub-element.
            </summary>
    </member>
    <member name="F:DotNetOpenAuth.Configuration.OAuthServiceProviderElement.SecuritySettingsConfigName">
      <summary>
            Gets the name of the security sub-element.
            </summary>
    </member>
    <member name="M:DotNetOpenAuth.Configuration.OAuthServiceProviderElement.#ctor">
      <summary>
            Initializes a new instance of the <see cref="T:DotNetOpenAuth.Configuration.OAuthServiceProviderElement" /> class.
            </summary>
    </member>
    <member name="P:DotNetOpenAuth.Configuration.OAuthServiceProviderElement.ApplicationStore">
      <summary>
            Gets or sets the type to use for storing application state.
            </summary>
    </member>
    <member name="P:DotNetOpenAuth.Configuration.OAuthServiceProviderElement.SecuritySettings">
      <summary>
            Gets or sets the security settings.
            </summary>
    </member>
    <member name="T:DotNetOpenAuth.Configuration.OAuthServiceProviderSecuritySettingsElement">
      <summary>
            Security settings that are applicable to service providers.
            </summary>
    </member>
    <member name="F:DotNetOpenAuth.Configuration.OAuthServiceProviderSecuritySettingsElement.MinimumRequiredOAuthVersionConfigName">
      <summary>
            Gets the name of the @minimumRequiredOAuthVersion attribute.
            </summary>
    </member>
    <member name="F:DotNetOpenAuth.Configuration.OAuthServiceProviderSecuritySettingsElement.MaximumRequestTokenTimeToLiveConfigName">
      <summary>
            Gets the name of the @maxAuthorizationTime attribute.
            </summary>
    </member>
    <member name="M:DotNetOpenAuth.Configuration.OAuthServiceProviderSecuritySettingsElement.#ctor">
      <summary>
            Initializes a new instance of the <see cref="T:DotNetOpenAuth.Configuration.OAuthServiceProviderSecuritySettingsElement" /> class.
            </summary>
    </member>
    <member name="M:DotNetOpenAuth.Configuration.OAuthServiceProviderSecuritySettingsElement.CreateSecuritySettings">
      <summary>
            Initializes a programmatically manipulatable bag of these security settings with the settings from the config file.
            </summary>
      <returns>The newly created security settings object.</returns>
    </member>
    <member name="P:DotNetOpenAuth.Configuration.OAuthServiceProviderSecuritySettingsElement.MinimumRequiredOAuthVersion">
      <summary>
            Gets or sets the minimum OAuth version a Consumer is required to support in order for this library to interoperate with it.
            </summary>
      <remarks>
            Although the earliest versions of OAuth are supported, for security reasons it may be desirable to require the
            remote party to support a later version of OAuth.
            </remarks>
    </member>
    <member name="P:DotNetOpenAuth.Configuration.OAuthServiceProviderSecuritySettingsElement.MaximumRequestTokenTimeToLive">
      <summary>
            Gets or sets the maximum time a user can take to complete authorization.
            </summary>
      <remarks>
            This time limit serves as a security mitigation against brute force attacks to
            compromise (unauthorized or authorized) request tokens.
            Longer time limits is more friendly to slow users or consumers, while shorter
            time limits provide better security.
            </remarks>
    </member>
    <member name="T:DotNetOpenAuth.Configuration.OpenIdElement">
      <summary>
            Represents the &lt;openid&gt; element in the host's .config file.
            </summary>
    </member>
    <member name="F:DotNetOpenAuth.Configuration.OpenIdElement.RelyingPartyElementName">
      <summary>
            The name of the &lt;relyingParty&gt; sub-element.
            </summary>
    </member>
    <member name="F:DotNetOpenAuth.Configuration.OpenIdElement.ProviderElementName">
      <summary>
            The name of the &lt;provider&gt; sub-element.
            </summary>
    </member>
    <member name="F:DotNetOpenAuth.Configuration.OpenIdElement.ExtensionFactoriesElementName">
      <summary>
            The name of the &lt;extensions&gt; sub-element.
            </summary>
    </member>
    <member name="F:DotNetOpenAuth.Configuration.OpenIdElement.XriResolverElementName">
      <summary>
            The name of the &lt;xriResolver&gt; sub-element.
            </summary>
    </member>
    <member name="F:DotNetOpenAuth.Configuration.OpenIdElement.MaxAuthenticationTimePropertyName">
      <summary>
            The name of the @maxAuthenticationTime attribute.
            </summary>
    </member>
    <member name="F:DotNetOpenAuth.Configuration.OpenIdElement.CacheDiscoveryPropertyName">
      <summary>
            The name of the @cacheDiscovery attribute.
            </summary>
    </member>
    <member name="M:DotNetOpenAuth.Configuration.OpenIdElement.#ctor">
      <summary>
            Initializes a new instance of the <see cref="T:DotNetOpenAuth.Configuration.OpenIdElement" /> class.
            </summary>
    </member>
    <member name="P:DotNetOpenAuth.Configuration.OpenIdElement.MaxAuthenticationTime">
      <summary>
            Gets or sets the maximum time a user can take to complete authentication.
            </summary>
      <remarks>
            This time limit allows the library to decide how long to cache certain values
            necessary to complete authentication.  The lower the time, the less demand on
            the server.  But too short a time can frustrate the user.
            </remarks>
    </member>
    <member name="P:DotNetOpenAuth.Configuration.OpenIdElement.CacheDiscovery">
      <summary>
            Gets or sets a value indicating whether the results of Identifier discovery
            should be cached.
            </summary>
      <value>
            Use <c>true</c> to allow identifier discovery to immediately return cached results when available;
            otherwise, use <c>false</c>.to force fresh results every time at the cost of slightly slower logins.
            The default value is <c>true</c>.
            </value>
      <remarks>
            When enabled, caching is done according to HTTP standards.
            </remarks>
    </member>
    <member name="P:DotNetOpenAuth.Configuration.OpenIdElement.RelyingParty">
      <summary>
            Gets or sets the configuration specific for Relying Parties.
            </summary>
    </member>
    <member name="P:DotNetOpenAuth.Configuration.OpenIdElement.Provider">
      <summary>
            Gets or sets the configuration specific for Providers.
            </summary>
    </member>
    <member name="P:DotNetOpenAuth.Configuration.OpenIdElement.ExtensionFactories">
      <summary>
            Gets or sets the registered OpenID extensions.
            </summary>
    </member>
    <member name="P:DotNetOpenAuth.Configuration.OpenIdElement.XriResolver">
      <summary>
            Gets or sets the configuration for the XRI resolver.
            </summary>
    </member>
    <member name="T:DotNetOpenAuth.Configuration.OpenIdProviderElement">
      <summary>
            The section in the .config file that allows customization of OpenID Provider behaviors.
            </summary>
    </member>
    <member name="F:DotNetOpenAuth.Configuration.OpenIdProviderElement.SecuritySettingsConfigName">
      <summary>
            The name of the security sub-element.
            </summary>
    </member>
    <member name="F:DotNetOpenAuth.Configuration.OpenIdProviderElement.BehaviorsElementName">
      <summary>
            Gets the name of the &lt;behaviors&gt; sub-element.
            </summary>
    </member>
    <member name="F:DotNetOpenAuth.Configuration.OpenIdProviderElement.StoreConfigName">
      <summary>
            The name of the custom store sub-element.
            </summary>
    </member>
    <member name="M:DotNetOpenAuth.Configuration.OpenIdProviderElement.#ctor">
      <summary>
            Initializes a new instance of the <see cref="T:DotNetOpenAuth.Configuration.OpenIdProviderElement" /> class.
            </summary>
    </member>
    <member name="P:DotNetOpenAuth.Configuration.OpenIdProviderElement.SecuritySettings">
      <summary>
            Gets or sets the security settings.
            </summary>
    </member>
    <member name="P:DotNetOpenAuth.Configuration.OpenIdProviderElement.Behaviors">
      <summary>
            Gets or sets the special behaviors to apply.
            </summary>
    </member>
    <member name="P:DotNetOpenAuth.Configuration.OpenIdProviderElement.ApplicationStore">
      <summary>
            Gets or sets the type to use for storing application state.
            </summary>
    </member>
    <member name="T:DotNetOpenAuth.Configuration.OpenIdProviderSecuritySettingsElement">
      <summary>
            Represents the .config file element that allows for setting the security policies of the Provider.
            </summary>
    </member>
    <member name="F:DotNetOpenAuth.Configuration.OpenIdProviderSecuritySettingsElement.ProtectDownlevelReplayAttacksConfigName">
      <summary>
            Gets the name of the @protectDownlevelReplayAttacks attribute.
            </summary>
    </member>
    <member name="F:DotNetOpenAuth.Configuration.OpenIdProviderSecuritySettingsElement.MinimumHashBitLengthConfigName">
      <summary>
            Gets the name of the @minimumHashBitLength attribute.
            </summary>
    </member>
    <member name="F:DotNetOpenAuth.Configuration.OpenIdProviderSecuritySettingsElement.MaximumHashBitLengthConfigName">
      <summary>
            Gets the name of the @maximumHashBitLength attribute.
            </summary>
    </member>
    <member name="F:DotNetOpenAuth.Configuration.OpenIdProviderSecuritySettingsElement.AssociationsConfigName">
      <summary>
            The name of the associations collection sub-element.
            </summary>
    </member>
    <member name="F:DotNetOpenAuth.Configuration.OpenIdProviderSecuritySettingsElement.RequireSslConfigName">
      <summary>
            Gets the name of the @requireSsl attribute.
            </summary>
    </member>
    <member name="F:DotNetOpenAuth.Configuration.OpenIdProviderSecuritySettingsElement.UnsolicitedAssertionVerificationConfigName">
      <summary>
            Gets the name of the @unsolicitedAssertionVerification attribute.
            </summary>
    </member>
    <member name="M:DotNetOpenAuth.Configuration.OpenIdProviderSecuritySettingsElement.#ctor">
      <summary>
            Initializes a new instance of the <see cref="T:DotNetOpenAuth.Configuration.OpenIdProviderSecuritySettingsElement" /> class.
            </summary>
    </member>
    <member name="M:DotNetOpenAuth.Configuration.OpenIdProviderSecuritySettingsElement.CreateSecuritySettings">
      <summary>
            Initializes a programmatically manipulatable bag of these security settings with the settings from the config file.
            </summary>
      <returns>The newly created security settings object.</returns>
    </member>
    <member name="P:DotNetOpenAuth.Configuration.OpenIdProviderSecuritySettingsElement.RequireSsl">
      <summary>
            Gets or sets a value indicating whether all discovery and authentication should require SSL security.
            </summary>
    </member>
    <member name="P:DotNetOpenAuth.Configuration.OpenIdProviderSecuritySettingsElement.MinimumHashBitLength">
      <summary>
            Gets or sets the minimum length of the hash that protects the protocol from hijackers.
            </summary>
    </member>
    <member name="P:DotNetOpenAuth.Configuration.OpenIdProviderSecuritySettingsElement.MaximumHashBitLength">
      <summary>
            Gets or sets the maximum length of the hash that protects the protocol from hijackers.
            </summary>
    </member>
    <member name="P:DotNetOpenAuth.Configuration.OpenIdProviderSecuritySettingsElement.ProtectDownlevelReplayAttacks">
      <summary>
            Gets or sets a value indicating whether the Provider should take special care 
            to protect OpenID 1.x relying parties against replay attacks.
            </summary>
    </member>
    <member name="P:DotNetOpenAuth.Configuration.OpenIdProviderSecuritySettingsElement.UnsolicitedAssertionVerification">
      <summary>
            Gets or sets the level of verification a Provider performs on an identifier before
            sending an unsolicited assertion for it.
            </summary>
      <value>The default value is <see cref="F:DotNetOpenAuth.OpenId.Provider.ProviderSecuritySettings.UnsolicitedAssertionVerificationLevel.RequireSuccess" />.</value>
    </member>
    <member name="P:DotNetOpenAuth.Configuration.OpenIdProviderSecuritySettingsElement.AssociationLifetimes">
      <summary>
            Gets or sets the configured lifetimes of the various association types.
            </summary>
    </member>
    <member name="T:DotNetOpenAuth.Configuration.OpenIdRelyingPartyElement">
      <summary>
            The section in the .config file that allows customization of OpenID Relying Party behaviors.
            </summary>
    </member>
    <member name="F:DotNetOpenAuth.Configuration.OpenIdRelyingPartyElement.StoreConfigName">
      <summary>
            The name of the custom store sub-element.
            </summary>
    </member>
    <member name="F:DotNetOpenAuth.Configuration.OpenIdRelyingPartyElement.SecuritySettingsConfigName">
      <summary>
            Gets the name of the security sub-element.
            </summary>
    </member>
    <member name="F:DotNetOpenAuth.Configuration.OpenIdRelyingPartyElement.BehaviorsElementName">
      <summary>
            Gets the name of the &lt;behaviors&gt; sub-element.
            </summary>
    </member>
    <member name="M:DotNetOpenAuth.Configuration.OpenIdRelyingPartyElement.#ctor">
      <summary>
            Initializes a new instance of the <see cref="T:DotNetOpenAuth.Configuration.OpenIdRelyingPartyElement" /> class.
            </summary>
    </member>
    <member name="P:DotNetOpenAuth.Configuration.OpenIdRelyingPartyElement.SecuritySettings">
      <summary>
            Gets or sets the security settings.
            </summary>
    </member>
    <member name="P:DotNetOpenAuth.Configuration.OpenIdRelyingPartyElement.Behaviors">
      <summary>
            Gets or sets the special behaviors to apply.
            </summary>
    </member>
    <member name="P:DotNetOpenAuth.Configuration.OpenIdRelyingPartyElement.ApplicationStore">
      <summary>
            Gets or sets the type to use for storing application state.
            </summary>
    </member>
    <member name="T:DotNetOpenAuth.Configuration.OpenIdRelyingPartySecuritySettingsElement">
      <summary>
            Represents the .config file element that allows for setting the security policies of the Relying Party.
            </summary>
    </member>
    <member name="F:DotNetOpenAuth.Configuration.OpenIdRelyingPartySecuritySettingsElement.MinimumRequiredOpenIdVersionConfigName">
      <summary>
            Gets the name of the @minimumRequiredOpenIdVersion attribute.
            </summary>
    </member>
    <member name="F:DotNetOpenAuth.Configuration.OpenIdRelyingPartySecuritySettingsElement.MinimumHashBitLengthConfigName">
      <summary>
            Gets the name of the @minimumHashBitLength attribute.
            </summary>
    </member>
    <member name="F:DotNetOpenAuth.Configuration.OpenIdRelyingPartySecuritySettingsElement.MaximumHashBitLengthConfigName">
      <summary>
            Gets the name of the @maximumHashBitLength attribute.
            </summary>
    </member>
    <member name="F:DotNetOpenAuth.Configuration.OpenIdRelyingPartySecuritySettingsElement.RequireSslConfigName">
      <summary>
            Gets the name of the @requireSsl attribute.
            </summary>
    </member>
    <member name="F:DotNetOpenAuth.Configuration.OpenIdRelyingPartySecuritySettingsElement.RequireDirectedIdentityConfigName">
      <summary>
            Gets the name of the @requireDirectedIdentity attribute.
            </summary>
    </member>
    <member name="F:DotNetOpenAuth.Configuration.OpenIdRelyingPartySecuritySettingsElement.RequireAssociationConfigName">
      <summary>
            Gets the name of the @requireAssociation attribute.
            </summary>
    </member>
    <member name="F:DotNetOpenAuth.Configuration.OpenIdRelyingPartySecuritySettingsElement.RejectUnsolicitedAssertionsConfigName">
      <summary>
            Gets the name of the @rejectUnsolicitedAssertions attribute.
            </summary>
    </member>
    <member name="F:DotNetOpenAuth.Configuration.OpenIdRelyingPartySecuritySettingsElement.RejectDelegatingIdentifiersConfigName">
      <summary>
            Gets the name of the @rejectDelegatedIdentifiers attribute.
            </summary>
    </member>
    <member name="F:DotNetOpenAuth.Configuration.OpenIdRelyingPartySecuritySettingsElement.IgnoreUnsignedExtensionsConfigName">
      <summary>
            Gets the name of the @ignoreUnsignedExtensions attribute.
            </summary>
    </member>
    <member name="F:DotNetOpenAuth.Configuration.OpenIdRelyingPartySecuritySettingsElement.PrivateSecretMaximumAgeConfigName">
      <summary>
            Gets the name of the @privateSecretMaximumAge attribute.
            </summary>
    </member>
    <member name="M:DotNetOpenAuth.Configuration.OpenIdRelyingPartySecuritySettingsElement.#ctor">
      <summary>
            Initializes a new instance of the <see cref="T:DotNetOpenAuth.Configuration.OpenIdRelyingPartySecuritySettingsElement" /> class.
            </summary>
    </member>
    <member name="M:DotNetOpenAuth.Configuration.OpenIdRelyingPartySecuritySettingsElement.CreateSecuritySettings">
      <summary>
            Initializes a programmatically manipulatable bag of these security settings with the settings from the config file.
            </summary>
      <returns>The newly created security settings object.</returns>
    </member>
    <member name="P:DotNetOpenAuth.Configuration.OpenIdRelyingPartySecuritySettingsElement.RequireSsl">
      <summary>
            Gets or sets a value indicating whether all discovery and authentication should require SSL security.
            </summary>
    </member>
    <member name="P:DotNetOpenAuth.Configuration.OpenIdRelyingPartySecuritySettingsElement.RequireDirectedIdentity">
      <summary>
            Gets or sets a value indicating whether only OP Identifiers will be discoverable 
            when creating authentication requests.
            </summary>
    </member>
    <member name="P:DotNetOpenAuth.Configuration.OpenIdRelyingPartySecuritySettingsElement.RequireAssociation">
      <summary>
            Gets or sets a value indicating whether authentication requests
            will only be created where an association with the Provider can be established.
            </summary>
    </member>
    <member name="P:DotNetOpenAuth.Configuration.OpenIdRelyingPartySecuritySettingsElement.MinimumRequiredOpenIdVersion">
      <summary>
            Gets or sets the minimum OpenID version a Provider is required to support in order for this library to interoperate with it.
            </summary>
      <remarks>
            Although the earliest versions of OpenID are supported, for security reasons it may be desirable to require the
            remote party to support a later version of OpenID.
            </remarks>
    </member>
    <member name="P:DotNetOpenAuth.Configuration.OpenIdRelyingPartySecuritySettingsElement.MinimumHashBitLength">
      <summary>
            Gets or sets the minimum length of the hash that protects the protocol from hijackers.
            </summary>
    </member>
    <member name="P:DotNetOpenAuth.Configuration.OpenIdRelyingPartySecuritySettingsElement.MaximumHashBitLength">
      <summary>
            Gets or sets the maximum length of the hash that protects the protocol from hijackers.
            </summary>
    </member>
    <member name="P:DotNetOpenAuth.Configuration.OpenIdRelyingPartySecuritySettingsElement.PrivateSecretMaximumAge">
      <summary>
            Gets or sets the maximum allowable age of the secret a Relying Party
            uses to its return_to URLs and nonces with 1.0 Providers.
            </summary>
      <value>The default value is 7 days.</value>
    </member>
    <member name="P:DotNetOpenAuth.Configuration.OpenIdRelyingPartySecuritySettingsElement.RejectUnsolicitedAssertions">
      <summary>
            Gets or sets a value indicating whether all unsolicited assertions should be ignored.
            </summary>
      <value>The default value is <c>false</c>.</value>
    </member>
    <member name="P:DotNetOpenAuth.Configuration.OpenIdRelyingPartySecuritySettingsElement.RejectDelegatingIdentifiers">
      <summary>
            Gets or sets a value indicating whether delegating identifiers are refused for authentication.
            </summary>
      <value>The default value is <c>false</c>.</value>
      <remarks>
            When set to <c>true</c>, login attempts that start at the RP or arrive via unsolicited
            assertions will be rejected if discovery on the identifier shows that OpenID delegation
            is used for the identifier.  This is useful for an RP that should only accept identifiers
            directly issued by the Provider that is sending the assertion.
            </remarks>
    </member>
    <member name="P:DotNetOpenAuth.Configuration.OpenIdRelyingPartySecuritySettingsElement.IgnoreUnsignedExtensions">
      <summary>
            Gets or sets a value indicating whether unsigned extensions in authentication responses should be ignored.
            </summary>
      <value>The default value is <c>false</c>.</value>
      <remarks>
            When set to true, the <see cref="M:DotNetOpenAuth.OpenId.RelyingParty.IAuthenticationResponse.GetUntrustedExtension(System.Type)" /> methods
            will not return any extension that was not signed by the Provider.
            </remarks>
    </member>
    <member name="T:DotNetOpenAuth.Configuration.TypeConfigurationCollection`1">
      <summary>
            A collection of <see cref="T:DotNetOpenAuth.Configuration.TypeConfigurationElement`1" />.
            </summary>
      <typeparam name="T">The type that all types specified in the elements must derive from.</typeparam>
    </member>
    <member name="M:DotNetOpenAuth.Configuration.TypeConfigurationCollection`1.#ctor">
      <summary>
            Initializes a new instance of the TypeConfigurationCollection class.
            </summary>
    </member>
    <member name="M:DotNetOpenAuth.Configuration.TypeConfigurationCollection`1.#ctor(System.Collections.Generic.IEnumerable{System.Type})">
      <summary>
            Initializes a new instance of the TypeConfigurationCollection class.
            </summary>
      <param name="elements">The elements that should be added to the collection initially.</param>
    </member>
    <member name="M:DotNetOpenAuth.Configuration.TypeConfigurationCollection`1.CreateInstances(System.Boolean)">
      <summary>
            Creates instances of all the types listed in the collection.
            </summary>
      <param name="allowInternals">if set to <c>true</c> then internal types may be instantiated.</param>
      <returns>A sequence of instances generated from types in this collection.  May be empty, but never null.</returns>
    </member>
    <member name="M:DotNetOpenAuth.Configuration.TypeConfigurationCollection`1.CreateNewElement">
      <summary>
            When overridden in a derived class, creates a new <see cref="T:System.Configuration.ConfigurationElement" />.
            </summary>
      <returns>
            A new <see cref="T:System.Configuration.ConfigurationElement" />.
            </returns>
      <ensures inheritedFrom="M:System.Configuration.ConfigurationElementCollection.CreateNewElement" inheritedFromTypeName="ConfigurationElementCollection">Contract.Result&lt;ConfigurationElement&gt;() != null</ensures>
    </member>
    <member name="M:DotNetOpenAuth.Configuration.TypeConfigurationCollection`1.GetElementKey(System.Configuration.ConfigurationElement)">
      <summary>
            Gets the element key for a specified configuration element when overridden in a derived class.
            </summary>
      <param name="element">The <see cref="T:System.Configuration.ConfigurationElement" /> to return the key for.</param>
      <returns>
            An <see cref="T:System.Object" /> that acts as the key for the specified <see cref="T:System.Configuration.ConfigurationElement" />.
            </returns>
      <requires inheritedFrom="M:System.Configuration.ConfigurationElementCollection.GetElementKey(System.Configuration.ConfigurationElement)" inheritedFromTypeName="ConfigurationElementCollection">element != null</requires>
      <ensures inheritedFrom="M:System.Configuration.ConfigurationElementCollection.GetElementKey(System.Configuration.ConfigurationElement)" inheritedFromTypeName="ConfigurationElementCollection">Contract.Result&lt;object&gt;() != null</ensures>
    </member>
    <member name="T:DotNetOpenAuth.Configuration.TypeConfigurationElement`1">
      <summary>
            Represents an element in a .config file that allows the user to provide a @type attribute specifying
            the full type that provides some service used by this library.
            </summary>
      <typeparam name="T">A constraint on the type the user may provide.</typeparam>
    </member>
    <member name="F:DotNetOpenAuth.Configuration.TypeConfigurationElement`1.CustomTypeConfigName">
      <summary>
            The name of the attribute whose value is the full name of the type the user is specifying.
            </summary>
    </member>
    <member name="F:DotNetOpenAuth.Configuration.TypeConfigurationElement`1.XamlReaderSourceConfigName">
      <summary>
            The name of the attribute whose value is the path to the XAML file to deserialize to obtain the type.
            </summary>
    </member>
    <member name="M:DotNetOpenAuth.Configuration.TypeConfigurationElement`1.#ctor">
      <summary>
            Initializes a new instance of the TypeConfigurationElement class.
            </summary>
    </member>
    <member name="M:DotNetOpenAuth.Configuration.TypeConfigurationElement`1.CreateInstance(`0)">
      <summary>
            Creates an instance of the type described in the .config file.
            </summary>
      <param name="defaultValue">The value to return if no type is given in the .config file.</param>
      <returns>The newly instantiated type.</returns>
    </member>
    <member name="M:DotNetOpenAuth.Configuration.TypeConfigurationElement`1.CreateInstance(`0,System.Boolean)">
      <summary>
            Creates an instance of the type described in the .config file.
            </summary>
      <param name="defaultValue">The value to return if no type is given in the .config file.</param>
      <param name="allowInternals">if set to <c>true</c> then internal types may be instantiated.</param>
      <returns>The newly instantiated type.</returns>
    </member>
    <member name="M:DotNetOpenAuth.Configuration.TypeConfigurationElement`1.CreateInstanceFromXaml(System.IO.Stream)">
      <summary>
            Creates the instance from xaml.
            </summary>
      <param name="xaml">The stream of xaml to deserialize.</param>
      <returns>The deserialized object.</returns>
      <remarks>
            This exists as its own method to prevent the CLR's JIT compiler from failing
            to compile the CreateInstance method just because the PresentationFramework.dll
            may be missing (which it is on some shared web hosts).  This way, if the
            XamlSource attribute is never used, the PresentationFramework.dll never need
            be present.
            </remarks>
    </member>
    <member name="P:DotNetOpenAuth.Configuration.TypeConfigurationElement`1.TypeName">
      <summary>
            Gets or sets the full name of the type.
            </summary>
      <value>The full name of the type, such as: "ConsumerPortal.Code.CustomStore, ConsumerPortal".</value>
    </member>
    <member name="P:DotNetOpenAuth.Configuration.TypeConfigurationElement`1.XamlSource">
      <summary>
            Gets or sets the path to the XAML file to deserialize to obtain the instance.
            </summary>
    </member>
    <member name="P:DotNetOpenAuth.Configuration.TypeConfigurationElement`1.CustomType">
      <summary>
            Gets the type described in the .config file.
            </summary>
    </member>
    <member name="P:DotNetOpenAuth.Configuration.TypeConfigurationElement`1.IsEmpty">
      <summary>
            Gets a value indicating whether this type has no meaningful type to instantiate.
            </summary>
    </member>
    <member name="T:DotNetOpenAuth.Configuration.UntrustedWebRequestElement">
      <summary>
            Represents the section of a .config file where security policies regarding web requests
            to user-provided, untrusted servers is controlled.
            </summary>
    </member>
    <member name="F:DotNetOpenAuth.Configuration.UntrustedWebRequestElement.TimeoutConfigName">
      <summary>
            Gets the name of the @timeout attribute.
            </summary>
    </member>
    <member name="F:DotNetOpenAuth.Configuration.UntrustedWebRequestElement.ReadWriteTimeoutConfigName">
      <summary>
            Gets the name of the @readWriteTimeout attribute.
            </summary>
    </member>
    <member name="F:DotNetOpenAuth.Configuration.UntrustedWebRequestElement.MaximumBytesToReadConfigName">
      <summary>
            Gets the name of the @maximumBytesToRead attribute.
            </summary>
    </member>
    <member name="F:DotNetOpenAuth.Configuration.UntrustedWebRequestElement.MaximumRedirectionsConfigName">
      <summary>
            Gets the name of the @maximumRedirections attribute.
            </summary>
    </member>
    <member name="F:DotNetOpenAuth.Configuration.UntrustedWebRequestElement.WhitelistHostsConfigName">
      <summary>
            Gets the name of the @whitelistHosts attribute.
            </summary>
    </member>
    <member name="F:DotNetOpenAuth.Configuration.UntrustedWebRequestElement.WhitelistHostsRegexConfigName">
      <summary>
            Gets the name of the @whitelistHostsRegex attribute.
            </summary>
    </member>
    <member name="F:DotNetOpenAuth.Configuration.UntrustedWebRequestElement.BlacklistHostsConfigName">
      <summary>
            Gets the name of the @blacklistHosts attribute.
            </summary>
    </member>
    <member name="F:DotNetOpenAuth.Configuration.UntrustedWebRequestElement.BlacklistHostsRegexConfigName">
      <summary>
            Gets the name of the @blacklistHostsRegex attribute.
            </summary>
    </member>
    <member name="P:DotNetOpenAuth.Configuration.UntrustedWebRequestElement.ReadWriteTimeout">
      <summary>
            Gets or sets the read/write timeout after which an HTTP request will fail.
            </summary>
    </member>
    <member name="P:DotNetOpenAuth.Configuration.UntrustedWebRequestElement.Timeout">
      <summary>
            Gets or sets the timeout after which an HTTP request will fail.
            </summary>
    </member>
    <member name="P:DotNetOpenAuth.Configuration.UntrustedWebRequestElement.MaximumBytesToRead">
      <summary>
            Gets or sets the maximum bytes to read from an untrusted web server.
            </summary>
    </member>
    <member name="P:DotNetOpenAuth.Configuration.UntrustedWebRequestElement.MaximumRedirections">
      <summary>
            Gets or sets the maximum redirections that will be followed before an HTTP request fails.
            </summary>
    </member>
    <member name="P:DotNetOpenAuth.Configuration.UntrustedWebRequestElement.WhitelistHosts">
      <summary>
            Gets or sets the collection of hosts on the whitelist.
            </summary>
    </member>
    <member name="P:DotNetOpenAuth.Configuration.UntrustedWebRequestElement.BlacklistHosts">
      <summary>
            Gets or sets the collection of hosts on the blacklist.
            </summary>
    </member>
    <member name="P:DotNetOpenAuth.Configuration.UntrustedWebRequestElement.WhitelistHostsRegex">
      <summary>
            Gets or sets the collection of regular expressions that describe hosts on the whitelist.
            </summary>
    </member>
    <member name="P:DotNetOpenAuth.Configuration.UntrustedWebRequestElement.BlacklistHostsRegex">
      <summary>
            Gets or sets the collection of regular expressions that describe hosts on the blacklist.
            </summary>
    </member>
    <member name="T:DotNetOpenAuth.Configuration.HostNameOrRegexCollection">
      <summary>
            Represents a collection of child elements that describe host names either as literal host names or regex patterns.
            </summary>
    </member>
    <member name="M:DotNetOpenAuth.Configuration.HostNameOrRegexCollection.#ctor">
      <summary>
            Initializes a new instance of the <see cref="T:DotNetOpenAuth.Configuration.HostNameOrRegexCollection" /> class.
            </summary>
    </member>
    <member name="M:DotNetOpenAuth.Configuration.HostNameOrRegexCollection.CreateNewElement">
      <summary>
            Creates a new child host name element.
            </summary>
      <returns>
            A new <see cref="T:System.Configuration.ConfigurationElement" />.
            </returns>
      <ensures inheritedFrom="M:System.Configuration.ConfigurationElementCollection.CreateNewElement" inheritedFromTypeName="ConfigurationElementCollection">Contract.Result&lt;ConfigurationElement&gt;() != null</ensures>
    </member>
    <member name="M:DotNetOpenAuth.Configuration.HostNameOrRegexCollection.GetElementKey(System.Configuration.ConfigurationElement)">
      <summary>
            Gets the element key for a specified configuration element.
            </summary>
      <param name="element">The <see cref="T:System.Configuration.ConfigurationElement" /> to return the key for.</param>
      <returns>
            An <see cref="T:System.Object" /> that acts as the key for the specified <see cref="T:System.Configuration.ConfigurationElement" />.
            </returns>
      <requires inheritedFrom="M:System.Configuration.ConfigurationElementCollection.GetElementKey(System.Configuration.ConfigurationElement)" inheritedFromTypeName="ConfigurationElementCollection">element != null</requires>
      <ensures inheritedFrom="M:System.Configuration.ConfigurationElementCollection.GetElementKey(System.Configuration.ConfigurationElement)" inheritedFromTypeName="ConfigurationElementCollection">Contract.Result&lt;object&gt;() != null</ensures>
    </member>
    <member name="P:DotNetOpenAuth.Configuration.HostNameOrRegexCollection.KeysAsStrings">
      <summary>
            Gets all the members of the collection assuming they are all literal host names.
            </summary>
    </member>
    <member name="P:DotNetOpenAuth.Configuration.HostNameOrRegexCollection.KeysAsRegexs">
      <summary>
            Gets all the members of the collection assuming they are all host names regex patterns.
            </summary>
    </member>
    <member name="T:DotNetOpenAuth.Configuration.HostNameElement">
      <summary>
            Represents the name of a single host or a regex pattern for host names.
            </summary>
    </member>
    <member name="F:DotNetOpenAuth.Configuration.HostNameElement.NameConfigName">
      <summary>
            Gets the name of the @name attribute.
            </summary>
    </member>
    <member name="M:DotNetOpenAuth.Configuration.HostNameElement.#ctor">
      <summary>
            Initializes a new instance of the <see cref="T:DotNetOpenAuth.Configuration.HostNameElement" /> class.
            </summary>
    </member>
    <member name="M:DotNetOpenAuth.Configuration.HostNameElement.#ctor(System.String)">
      <summary>
            Initializes a new instance of the <see cref="T:DotNetOpenAuth.Configuration.HostNameElement" /> class.
            </summary>
      <param name="name">The default value of the <see cref="P:DotNetOpenAuth.Configuration.HostNameElement.Name" /> property.</param>
    </member>
    <member name="P:DotNetOpenAuth.Configuration.HostNameElement.Name">
      <summary>
            Gets or sets the name of the host on the white or black list.
            </summary>
    </member>
    <member name="T:DotNetOpenAuth.Configuration.XriResolverElement">
      <summary>
            Represents the &lt;xriResolver&gt; element in the host's .config file.
            </summary>
    </member>
    <member name="F:DotNetOpenAuth.Configuration.XriResolverElement.EnabledAttributeName">
      <summary>
            Gets the name of the @enabled attribute.
            </summary>
    </member>
    <member name="F:DotNetOpenAuth.Configuration.XriResolverElement.EnabledDefaultValue">
      <summary>
            The default value for <see cref="P:DotNetOpenAuth.Configuration.XriResolverElement.Enabled" />.
            </summary>
    </member>
    <member name="F:DotNetOpenAuth.Configuration.XriResolverElement.ProxyElementName">
      <summary>
            The name of the &lt;proxy&gt; sub-element.
            </summary>
    </member>
    <member name="F:DotNetOpenAuth.Configuration.XriResolverElement.ProxyDefault">
      <summary>
            The default XRI proxy resolver to use.
            </summary>
    </member>
    <member name="M:DotNetOpenAuth.Configuration.XriResolverElement.#ctor">
      <summary>
            Initializes a new instance of the <see cref="T:DotNetOpenAuth.Configuration.XriResolverElement" /> class.
            </summary>
    </member>
    <member name="P:DotNetOpenAuth.Configuration.XriResolverElement.Enabled">
      <summary>
            Gets or sets a value indicating whether this XRI resolution is enabled.
            </summary>
      <value>The default value is <c>true</c>.</value>
    </member>
    <member name="P:DotNetOpenAuth.Configuration.XriResolverElement.Proxy">
      <summary>
            Gets or sets the proxy to use for resolving XRIs.
            </summary>
      <value>The default value is "xri.net".</value>
    </member>
    <member name="T:DotNetOpenAuth.InfoCard.ClaimType">
      <summary>
            Description of a claim that is requested or required in a submitted Information Card.
            </summary>
    </member>
    <member name="M:DotNetOpenAuth.InfoCard.ClaimType.#ctor">
      <summary>
            Initializes a new instance of the <see cref="T:DotNetOpenAuth.InfoCard.ClaimType" /> class.
            </summary>
    </member>
    <member name="M:DotNetOpenAuth.InfoCard.ClaimType.ToString">
      <summary>
            Returns a <see cref="T:System.String" /> that represents the current <see cref="T:System.Object" />.
            </summary>
      <returns>
            A <see cref="T:System.String" /> that represents the current <see cref="T:System.Object" />.
            </returns>
      <ensures inheritedFrom="M:System.Object.ToString" inheritedFromTypeName="Object">Contract.Result&lt;string&gt;() != null</ensures>
    </member>
    <member name="P:DotNetOpenAuth.InfoCard.ClaimType.Name">
      <summary>
            Gets or sets the URI of a requested claim.
            </summary>
      <remarks>
            For a list of well-known claim type URIs, see the <see cref="T:System.IdentityModel.Claims.ClaimTypes" /> class.
            </remarks>
    </member>
    <member name="P:DotNetOpenAuth.InfoCard.ClaimType.IsOptional">
      <summary>
            Gets or sets a value indicating whether this claim is optional.
            </summary>
      <value>
        <c>true</c> if this instance is optional; otherwise, <c>false</c>.
            </value>
    </member>
    <member name="T:DotNetOpenAuth.InfoCard.ReceivingTokenEventArgs">
      <summary>
            Arguments for the <see cref="E:DotNetOpenAuth.InfoCard.InfoCardSelector.ReceivingToken" /> event.
            </summary>
    </member>
    <member name="M:DotNetOpenAuth.InfoCard.ReceivingTokenEventArgs.#ctor(System.String)">
      <summary>
            Initializes a new instance of the <see cref="T:DotNetOpenAuth.InfoCard.ReceivingTokenEventArgs" /> class.
            </summary>
      <param name="tokenXml">The raw token XML, prior to any decryption.</param>
    </member>
    <member name="M:DotNetOpenAuth.InfoCard.ReceivingTokenEventArgs.AddDecryptingToken(System.IdentityModel.Tokens.SecurityToken)">
      <summary>
            Adds a security token that may be used to decrypt the incoming token.
            </summary>
      <param name="securityToken">The security token.</param>
    </member>
    <member name="M:DotNetOpenAuth.InfoCard.ReceivingTokenEventArgs.AddDecryptingToken(System.Security.Cryptography.X509Certificates.X509Certificate2)">
      <summary>
            Adds an X.509 certificate with a private key that may be used to decrypt the incoming token.
            </summary>
      <param name="certificate">The certificate.</param>
    </member>
    <member name="M:DotNetOpenAuth.InfoCard.ReceivingTokenEventArgs.ObjectInvariant">
      <summary>
            Verifies conditions that should be true for any valid state of this object.
            </summary>
    </member>
    <member name="P:DotNetOpenAuth.InfoCard.ReceivingTokenEventArgs.IsEncrypted">
      <summary>
            Gets a value indicating whether the token is encrypted.
            </summary>
      <value>
        <c>true</c> if the token is encrypted; otherwise, <c>false</c>.
            </value>
    </member>
    <member name="P:DotNetOpenAuth.InfoCard.ReceivingTokenEventArgs.TokenXml">
      <summary>
            Gets the raw token XML, prior to any decryption.
            </summary>
    </member>
    <member name="P:DotNetOpenAuth.InfoCard.ReceivingTokenEventArgs.Cancel">
      <summary>
            Gets or sets a value indicating whether processing
            this token should be canceled.
            </summary>
      <value>
        <c>true</c> if cancel; otherwise, <c>false</c>.</value>
      <remarks>
            If set the <c>true</c>, the <see cref="E:DotNetOpenAuth.InfoCard.InfoCardSelector.ReceivedToken" />
            event will never be fired.
            </remarks>
    </member>
    <member name="P:DotNetOpenAuth.InfoCard.ReceivingTokenEventArgs.DecryptingTokens">
      <summary>
            Gets a list where security tokens such as X.509 certificates may be
            added to be used for token decryption.
            </summary>
    </member>
    <member name="T:DotNetOpenAuth.InfoCard.TokenProcessingErrorEventArgs">
      <summary>
            Arguments for the <see cref="E:DotNetOpenAuth.InfoCard.InfoCardSelector.TokenProcessingError" /> event.
            </summary>
    </member>
    <member name="M:DotNetOpenAuth.InfoCard.TokenProcessingErrorEventArgs.#ctor(System.String,System.Exception)">
      <summary>
            Initializes a new instance of the <see cref="T:DotNetOpenAuth.InfoCard.TokenProcessingErrorEventArgs" /> class.
            </summary>
      <param name="tokenXml">The token XML.</param>
      <param name="exception">The exception.</param>
    </member>
    <member name="M:DotNetOpenAuth.InfoCard.TokenProcessingErrorEventArgs.ObjectInvariant">
      <summary>
            Verifies conditions that should be true for any valid state of this object.
            </summary>
    </member>
    <member name="P:DotNetOpenAuth.InfoCard.TokenProcessingErrorEventArgs.TokenXml">
      <summary>
            Gets the raw token XML.
            </summary>
    </member>
    <member name="P:DotNetOpenAuth.InfoCard.TokenProcessingErrorEventArgs.Exception">
      <summary>
            Gets the exception that was generated while processing the token.
            </summary>
    </member>
    <member name="T:DotNetOpenAuth.InfoCard.InfoCardImageSize">
      <summary>
            A set of sizes for which standard InfoCard icons are available.
            </summary>
    </member>
    <member name="F:DotNetOpenAuth.InfoCard.InfoCardImageSize.Size14x10">
      <summary>
            A standard InfoCard icon with size 14x10
            </summary>
    </member>
    <member name="F:DotNetOpenAuth.InfoCard.InfoCardImageSize.Size23x16">
      <summary>
            A standard InfoCard icon with size 23x16
            </summary>
    </member>
    <member name="F:DotNetOpenAuth.InfoCard.InfoCardImageSize.Size34x24">
      <summary>
            A standard InfoCard icon with size 34x24
            </summary>
    </member>
    <member name="F:DotNetOpenAuth.InfoCard.InfoCardImageSize.Size41x29">
      <summary>
            A standard InfoCard icon with size 41x29
            </summary>
    </member>
    <member name="F:DotNetOpenAuth.InfoCard.InfoCardImageSize.Size50x35">
      <summary>
            A standard InfoCard icon with size 50x35
            </summary>
    </member>
    <member name="F:DotNetOpenAuth.InfoCard.InfoCardImageSize.Size60x42">
      <summary>
            A standard InfoCard icon with size 60x42
            </summary>
    </member>
    <member name="F:DotNetOpenAuth.InfoCard.InfoCardImageSize.Size71x50">
      <summary>
            A standard InfoCard icon with size 71x50
            </summary>
    </member>
    <member name="F:DotNetOpenAuth.InfoCard.InfoCardImageSize.Size92x64">
      <summary>
            A standard InfoCard icon with size 92x64
            </summary>
    </member>
    <member name="F:DotNetOpenAuth.InfoCard.InfoCardImageSize.Size114x80">
      <summary>
            A standard InfoCard icon with size 114x80
            </summary>
    </member>
    <member name="F:DotNetOpenAuth.InfoCard.InfoCardImageSize.Size164x108">
      <summary>
            A standard InfoCard icon with size 164x108
            </summary>
    </member>
    <member name="F:DotNetOpenAuth.InfoCard.InfoCardImageSize.Size214x50">
      <summary>
            A standard InfoCard icon with size 214x50
            </summary>
    </member>
    <member name="F:DotNetOpenAuth.InfoCard.InfoCardImageSize.Size300x210">
      <summary>
            A standard InfoCard icon with size 300x210
            </summary>
    </member>
    <member name="F:DotNetOpenAuth.InfoCard.InfoCardImageSize.Size365x256">
      <summary>
            A standard InfoCard icon with size 365x256
            </summary>
    </member>
    <member name="T:DotNetOpenAuth.InfoCard.InfoCardImage">
      <summary>
            Assists in selecting the InfoCard image to display in the user agent.
            </summary>
    </member>
    <member name="F:DotNetOpenAuth.InfoCard.InfoCardImage.DefaultImageSize">
      <summary>
            The default size of the InfoCard icon to use.
            </summary>
    </member>
    <member name="F:DotNetOpenAuth.InfoCard.InfoCardImage.UrlFormatString">
      <summary>
            The format to use when generating the image manifest resource stream name.
            </summary>
    </member>
    <member name="M:DotNetOpenAuth.InfoCard.InfoCardImage.GetImageManifestResourceStreamName(DotNetOpenAuth.InfoCard.InfoCardImageSize)">
      <summary>
            Gets the name of the image manifest resource stream for an InfoCard image of the given size.
            </summary>
      <param name="size">The size of the desired InfoCard image.</param>
      <returns>The manifest resource stream name.</returns>
    </member>
    <member name="T:DotNetOpenAuth.InfoCard.RenderMode">
      <summary>
            The style to use for NOT displaying a hidden region.
            </summary>
    </member>
    <member name="F:DotNetOpenAuth.InfoCard.RenderMode.Static">
      <summary>
            A hidden region should be invisible while still occupying space in the page layout.
            </summary>
    </member>
    <member name="F:DotNetOpenAuth.InfoCard.RenderMode.Dynamic">
      <summary>
            A hidden region should collapse so that it does not occupy space in the page layout.
            </summary>
    </member>
    <member name="T:DotNetOpenAuth.InfoCard.InfoCardSelector">
      <summary>
            An Information Card selector ASP.NET control.
            </summary>
    </member>
    <member name="F:DotNetOpenAuth.InfoCard.InfoCardSelector.ScriptResourceName">
      <summary>
            The resource name for getting at the SupportingScript.js embedded manifest stream.
            </summary>
    </member>
    <member name="F:DotNetOpenAuth.InfoCard.InfoCardSelector.RenderModeDefault">
      <summary>
            Default value for the <see cref="P:DotNetOpenAuth.InfoCard.InfoCardSelector.RenderMode" /> property.
            </summary>
    </member>
    <member name="F:DotNetOpenAuth.InfoCard.InfoCardSelector.AutoPostBackDefault">
      <summary>
            Default value for the <see cref="P:DotNetOpenAuth.InfoCard.InfoCardSelector.AutoPostBack" /> property.
            </summary>
    </member>
    <member name="F:DotNetOpenAuth.InfoCard.InfoCardSelector.AutoPopupDefault">
      <summary>
            Default value for the <see cref="P:DotNetOpenAuth.InfoCard.InfoCardSelector.AutoPopup" /> property.
            </summary>
    </member>
    <member name="F:DotNetOpenAuth.InfoCard.InfoCardSelector.PrivacyUrlDefault">
      <summary>
            Default value for the <see cref="P:DotNetOpenAuth.InfoCard.InfoCardSelector.PrivacyUrl" /> property.
            </summary>
    </member>
    <member name="F:DotNetOpenAuth.InfoCard.InfoCardSelector.PrivacyVersionDefault">
      <summary>
            Default value for the <see cref="P:DotNetOpenAuth.InfoCard.InfoCardSelector.PrivacyVersion" /> property.
            </summary>
    </member>
    <member name="F:DotNetOpenAuth.InfoCard.InfoCardSelector.InfoCardImageDefault">
      <summary>
            Default value for the <see cref="T:DotNetOpenAuth.InfoCard.InfoCardImage" /> property.
            </summary>
    </member>
    <member name="F:DotNetOpenAuth.InfoCard.InfoCardSelector.IssuerPolicyDefault">
      <summary>
            Default value for the <see cref="P:DotNetOpenAuth.InfoCard.InfoCardSelector.IssuerPolicy" /> property.
            </summary>
    </member>
    <member name="F:DotNetOpenAuth.InfoCard.InfoCardSelector.IssuerDefault">
      <summary>
            Default value for the <see cref="P:DotNetOpenAuth.InfoCard.InfoCardSelector.Issuer" /> property.
            </summary>
    </member>
    <member name="F:DotNetOpenAuth.InfoCard.InfoCardSelector.TokenTypeDefault">
      <summary>
            The default value for the <see cref="P:DotNetOpenAuth.InfoCard.InfoCardSelector.TokenType" /> property.
            </summary>
    </member>
    <member name="F:DotNetOpenAuth.InfoCard.InfoCardSelector.IssuerViewStateKey">
      <summary>
            The viewstate key for storing the <see cref="P:DotNetOpenAuth.InfoCard.InfoCardSelector.Issuer" /> property.
            </summary>
    </member>
    <member name="F:DotNetOpenAuth.InfoCard.InfoCardSelector.IssuerPolicyViewStateKey">
      <summary>
            The viewstate key for storing the <see cref="P:DotNetOpenAuth.InfoCard.InfoCardSelector.IssuerPolicy" /> property.
            </summary>
    </member>
    <member name="F:DotNetOpenAuth.InfoCard.InfoCardSelector.AutoPopupViewStateKey">
      <summary>
            The viewstate key for storing the <see cref="P:DotNetOpenAuth.InfoCard.InfoCardSelector.AutoPopup" /> property.
            </summary>
    </member>
    <member name="F:DotNetOpenAuth.InfoCard.InfoCardSelector.ClaimsRequestedViewStateKey">
      <summary>
            The viewstate key for storing the <see cref="P:DotNetOpenAuth.InfoCard.InfoCardSelector.ClaimsRequested" /> property.
            </summary>
    </member>
    <member name="F:DotNetOpenAuth.InfoCard.InfoCardSelector.TokenTypeViewStateKey">
      <summary>
            The viewstate key for storing the <see cref="P:DotNetOpenAuth.InfoCard.InfoCardSelector.TokenType" /> property.
            </summary>
    </member>
    <member name="F:DotNetOpenAuth.InfoCard.InfoCardSelector.PrivacyUrlViewStateKey">
      <summary>
            The viewstate key for storing the <see cref="P:DotNetOpenAuth.InfoCard.InfoCardSelector.PrivacyUrl" /> property.
            </summary>
    </member>
    <member name="F:DotNetOpenAuth.InfoCard.InfoCardSelector.PrivacyVersionViewStateKey">
      <summary>
            The viewstate key for storing the <see cref="P:DotNetOpenAuth.InfoCard.InfoCardSelector.PrivacyVersion" /> property.
            </summary>
    </member>
    <member name="F:DotNetOpenAuth.InfoCard.InfoCardSelector.AudienceViewStateKey">
      <summary>
            The viewstate key for storing the <see cref="P:DotNetOpenAuth.InfoCard.InfoCardSelector.Audience" /> property.
            </summary>
    </member>
    <member name="F:DotNetOpenAuth.InfoCard.InfoCardSelector.AutoPostBackViewStateKey">
      <summary>
            The viewstate key for storing the <see cref="P:DotNetOpenAuth.InfoCard.InfoCardSelector.AutoPostBack" /> property.
            </summary>
    </member>
    <member name="F:DotNetOpenAuth.InfoCard.InfoCardSelector.ImageSizeViewStateKey">
      <summary>
            The viewstate key for storing the <see cref="P:DotNetOpenAuth.InfoCard.InfoCardSelector.ImageSize" /> property.
            </summary>
    </member>
    <member name="F:DotNetOpenAuth.InfoCard.InfoCardSelector.RenderModeViewStateKey">
      <summary>
            The viewstate key for storing the <see cref="P:DotNetOpenAuth.InfoCard.InfoCardSelector.RenderMode" /> property.
            </summary>
    </member>
    <member name="F:DotNetOpenAuth.InfoCard.InfoCardSelector.BehaviorCategory">
      <summary>
            The "Behavior" property category.
            </summary>
    </member>
    <member name="F:DotNetOpenAuth.InfoCard.InfoCardSelector.AppearanceCategory">
      <summary>
            The "Appearance" property category.
            </summary>
    </member>
    <member name="F:DotNetOpenAuth.InfoCard.InfoCardSelector.InfoCardCategory">
      <summary>
            The "InfoCard" property category.
            </summary>
    </member>
    <member name="F:DotNetOpenAuth.InfoCard.InfoCardSelector.infoCardSupportedPanel">
      <summary>
            The panel containing the controls to display if InfoCard is supported in the user agent.
            </summary>
    </member>
    <member name="F:DotNetOpenAuth.InfoCard.InfoCardSelector.infoCardNotSupportedPanel">
      <summary>
            The panel containing the controls to display if InfoCard is NOT supported in the user agent.
            </summary>
    </member>
    <member name="F:DotNetOpenAuth.InfoCard.InfoCardSelector.audienceSet">
      <summary>
            Recalls whether the <see cref="P:DotNetOpenAuth.InfoCard.InfoCardSelector.Audience" /> property has been set yet,
            so its default can be set as soon as possible without overwriting
            an intentional value.
            </summary>
    </member>
    <member name="M:DotNetOpenAuth.InfoCard.InfoCardSelector.#ctor">
      <summary>
            Initializes a new instance of the <see cref="T:DotNetOpenAuth.InfoCard.InfoCardSelector" /> class.
            </summary>
    </member>
    <member name="M:DotNetOpenAuth.InfoCard.InfoCardSelector.System#Web#UI#IPostBackEventHandler#RaisePostBackEvent(System.String)">
      <summary>
            When implemented by a class, enables a server control to process an event raised when a form is posted to the server.
            </summary>
      <param name="eventArgument">A <see cref="T:System.String" /> that represents an optional event argument to be passed to the event handler.</param>
    </member>
    <member name="M:DotNetOpenAuth.InfoCard.InfoCardSelector.RaisePostBackEvent(System.String)">
      <summary>
            When implemented by a class, enables a server control to process an event raised when a form is posted to the server.
            </summary>
      <param name="eventArgument">A <see cref="T:System.String" /> that represents an optional event argument to be passed to the event handler.</param>
    </member>
    <member name="M:DotNetOpenAuth.InfoCard.InfoCardSelector.OnReceivingToken(System.String)">
      <summary>
            Fires the <see cref="E:DotNetOpenAuth.InfoCard.InfoCardSelector.ReceivingToken" /> event.
            </summary>
      <param name="tokenXml">The token XML, prior to any processing.</param>
      <returns>The event arguments sent to the event handlers.</returns>
    </member>
    <member name="M:DotNetOpenAuth.InfoCard.InfoCardSelector.OnReceivedToken(DotNetOpenAuth.InfoCard.Token)">
      <summary>
            Fires the <see cref="E:DotNetOpenAuth.InfoCard.InfoCardSelector.ReceivedToken" /> event.
            </summary>
      <param name="token">The token, if it was decrypted.</param>
    </member>
    <member name="M:DotNetOpenAuth.InfoCard.InfoCardSelector.OnTokenProcessingError(System.String,System.Exception)">
      <summary>
            Fires the <see cref="E:DotNetOpenAuth.InfoCard.InfoCardSelector.TokenProcessingError" /> event.
            </summary>
      <param name="unprocessedToken">The unprocessed token.</param>
      <param name="ex">The exception generated while processing the token.</param>
    </member>
    <member name="M:DotNetOpenAuth.InfoCard.InfoCardSelector.OnInit(System.EventArgs)">
      <summary>
            Raises the <see cref="E:System.Web.UI.Control.Init" /> event.
            </summary>
      <param name="e">An <see cref="T:System.EventArgs" /> object that contains the event data.</param>
      <requires inheritedFrom="M:System.Web.UI.Control.OnInit(System.EventArgs)" inheritedFromTypeName="Control">e != null</requires>
    </member>
    <member name="M:DotNetOpenAuth.InfoCard.InfoCardSelector.CreateChildControls">
      <summary>
            Called by the ASP.NET page framework to notify server controls that use composition-based implementation to create any child controls they contain in preparation for posting back or rendering.
            </summary>
    </member>
    <member name="M:DotNetOpenAuth.InfoCard.InfoCardSelector.OnPreRender(System.EventArgs)">
      <summary>
            Raises the <see cref="E:System.Web.UI.Control.PreRender" /> event.
            </summary>
      <param name="e">An <see cref="T:System.EventArgs" /> object that contains the event data.</param>
      <requires inheritedFrom="M:System.Web.UI.Control.OnPreRender(System.EventArgs)" inheritedFromTypeName="Control">e != null</requires>
    </member>
    <member name="M:DotNetOpenAuth.InfoCard.InfoCardSelector.CreateParamJs(System.String,System.String)">
      <summary>
            Creates a control that renders to &lt;Param Name="{0}" Value="{1}" /&gt;
            </summary>
      <param name="name">The parameter name.</param>
      <param name="value">The parameter value.</param>
      <returns>The control that renders to the Param tag.</returns>
    </member>
    <member name="M:DotNetOpenAuth.InfoCard.InfoCardSelector.CreateInfoCardSupportedPanel">
      <summary>
            Creates the panel whose contents are displayed to the user
            on a user agent that has an Information Card selector.
            </summary>
      <returns>The Panel control</returns>
      <pure />
    </member>
    <member name="M:DotNetOpenAuth.InfoCard.InfoCardSelector.GetInfoCardSelectorActivationScript(System.Boolean)">
      <summary>
            Gets the InfoCard selector activation script.
            </summary>
      <param name="alwaysPostback">Whether a postback should always immediately follow the selector, even if <see cref="P:DotNetOpenAuth.InfoCard.InfoCardSelector.AutoPostBack" /> is <c>false</c>.</param>
      <returns>The javascript to inject into the surrounding context.</returns>
    </member>
    <member name="M:DotNetOpenAuth.InfoCard.InfoCardSelector.CreateInfoCardUnsupportedPanel">
      <summary>
            Creates the panel whose contents are displayed to the user
            on a user agent that does not have an Information Card selector.
            </summary>
      <returns>The Panel control.</returns>
      <pure />
    </member>
    <member name="M:DotNetOpenAuth.InfoCard.InfoCardSelector.RegisterInfoCardSelectorObjectScript">
      <summary>
            Adds the javascript that adds the info card selector &lt;object&gt; HTML tag to the page.
            </summary>
      <pure />
    </member>
    <member name="M:DotNetOpenAuth.InfoCard.InfoCardSelector.CreateInfoCardImage">
      <summary>
            Creates the info card clickable image.
            </summary>
      <returns>An Image object.</returns>
      <pure />
    </member>
    <member name="M:DotNetOpenAuth.InfoCard.InfoCardSelector.GetRequestedClaims(System.String@,System.String@)">
      <summary>
            Compiles lists of requested/required claims that should accompany
            any submitted Information Card.
            </summary>
      <param name="required">A space-delimited list of claim type URIs for claims that must be included in a submitted Information Card.</param>
      <param name="optional">A space-delimited list of claim type URIs for claims that may optionally be included in a submitted Information Card.</param>
      <pure />
    </member>
    <member name="M:DotNetOpenAuth.InfoCard.InfoCardSelector.RenderSupportingScript">
      <summary>
            Adds Javascript snippets to the page to help the Information Card selector do its work,
            or to downgrade gracefully if the user agent lacks an Information Card selector.
            </summary>
    </member>
    <member name="E:DotNetOpenAuth.InfoCard.InfoCardSelector.ReceivingToken">
      <summary>
            Occurs when an InfoCard has been submitted but not decoded yet.
            </summary>
    </member>
    <member name="E:DotNetOpenAuth.InfoCard.InfoCardSelector.ReceivedToken">
      <summary>
            Occurs when an InfoCard has been submitted and decoded.
            </summary>
    </member>
    <member name="E:DotNetOpenAuth.InfoCard.InfoCardSelector.TokenProcessingError">
      <summary>
            Occurs when an InfoCard token is submitted but an error occurs in processing.
            </summary>
    </member>
    <member name="P:DotNetOpenAuth.InfoCard.InfoCardSelector.ClaimsRequested">
      <summary>
            Gets the set of claims that are requested from the Information Card.
            </summary>
    </member>
    <member name="P:DotNetOpenAuth.InfoCard.InfoCardSelector.Issuer">
      <summary>
            Gets or sets the issuer URI.
            </summary>
    </member>
    <member name="P:DotNetOpenAuth.InfoCard.InfoCardSelector.IssuerPolicy">
      <summary>
            Gets or sets the issuer policy URI.
            </summary>
    </member>
    <member name="P:DotNetOpenAuth.InfoCard.InfoCardSelector.PrivacyUrl">
      <summary>
            Gets or sets the URL to this site's privacy policy.
            </summary>
    </member>
    <member name="P:DotNetOpenAuth.InfoCard.InfoCardSelector.PrivacyVersion">
      <summary>
            Gets or sets the version of the privacy policy file.
            </summary>
    </member>
    <member name="P:DotNetOpenAuth.InfoCard.InfoCardSelector.Audience">
      <summary>
            Gets or sets the URI that must be found for the SAML token's intended audience
            in order for the token to be processed.
            </summary>
      <value>Typically the URI of the page hosting the control, or <c>null</c> to disable audience verification.</value>
      <remarks>
            Disabling audience verification introduces a security risk 
            because tokens can be redirected to allow access to unintended resources.
            </remarks>
    </member>
    <member name="P:DotNetOpenAuth.InfoCard.InfoCardSelector.AutoPostBack">
      <summary>
            Gets or sets a value indicating whether a postback will automatically
            be invoked when the user selects an Information Card.
            </summary>
    </member>
    <member name="P:DotNetOpenAuth.InfoCard.InfoCardSelector.ImageSize">
      <summary>
            Gets or sets the size of the standard InfoCard image to display.
            </summary>
      <value>The default size is 114x80.</value>
    </member>
    <member name="P:DotNetOpenAuth.InfoCard.InfoCardSelector.UnsupportedTemplate">
      <summary>
            Gets or sets the template to display when the user agent lacks
            an Information Card selector.
            </summary>
    </member>
    <member name="P:DotNetOpenAuth.InfoCard.InfoCardSelector.RenderMode">
      <summary>
            Gets or sets a value indicating whether a hidden region (either
            the unsupported or supported InfoCard HTML)
            collapses or merely becomes invisible when it is not to be displayed.
            </summary>
    </member>
    <member name="P:DotNetOpenAuth.InfoCard.InfoCardSelector.AutoPopup">
      <summary>
            Gets or sets a value indicating whether the identity selector will be triggered at page load.
            </summary>
    </member>
    <member name="P:DotNetOpenAuth.InfoCard.InfoCardSelector.HiddenFieldName">
      <summary>
            Gets the name of the hidden field that is used to transport the token back to the server.
            </summary>
    </member>
    <member name="P:DotNetOpenAuth.InfoCard.InfoCardSelector.SelectorObjectId">
      <summary>
            Gets the id of the OBJECT tag that creates the InfoCard Selector.
            </summary>
    </member>
    <member name="P:DotNetOpenAuth.InfoCard.InfoCardSelector.TokenXml">
      <summary>
            Gets the XML token, which will be encrypted if it was received over SSL.
            </summary>
    </member>
    <member name="P:DotNetOpenAuth.InfoCard.InfoCardSelector.TokenType">
      <summary>
            Gets or sets the type of token the page is prepared to receive.
            </summary>
    </member>
    <member name="T:DotNetOpenAuth.InfoCard.InfoCardStrings">
      <summary>
              A strongly-typed resource class, for looking up localized strings, etc.
            </summary>
    </member>
    <member name="P:DotNetOpenAuth.InfoCard.InfoCardStrings.ResourceManager">
      <summary>
              Returns the cached ResourceManager instance used by this class.
            </summary>
    </member>
    <member name="P:DotNetOpenAuth.InfoCard.InfoCardStrings.Culture">
      <summary>
              Overrides the current thread's CurrentUICulture property for all
              resource lookups using this strongly typed resource class.
            </summary>
    </member>
    <member name="P:DotNetOpenAuth.InfoCard.InfoCardStrings.AudienceMismatch">
      <summary>
              Looks up a localized string similar to The token is invalid: The audience restrictions does not match the Relying Party..
            </summary>
    </member>
    <member name="P:DotNetOpenAuth.InfoCard.InfoCardStrings.EmptyClaimListNotAllowed">
      <summary>
              Looks up a localized string similar to The list of claims requested for inclusion in the InfoCard must be non-empty..
            </summary>
    </member>
    <member name="P:DotNetOpenAuth.InfoCard.InfoCardStrings.EncryptionAlgorithmNotFound">
      <summary>
              Looks up a localized string similar to Failed to find the encryptionAlgorithm..
            </summary>
    </member>
    <member name="P:DotNetOpenAuth.InfoCard.InfoCardStrings.PpidClaimRequired">
      <summary>
              Looks up a localized string similar to This operation requires the PPID claim to be included in the InfoCard token..
            </summary>
    </member>
    <member name="P:DotNetOpenAuth.InfoCard.InfoCardStrings.PrivacyVersionRequiredWithPrivacyUrl">
      <summary>
              Looks up a localized string similar to The PrivacyVersion property must be set whenever the PrivacyUrl property is set..
            </summary>
    </member>
    <member name="P:DotNetOpenAuth.InfoCard.InfoCardStrings.SelectorClickPrompt">
      <summary>
              Looks up a localized string similar to Click here to select your Information Card..
            </summary>
    </member>
    <member name="T:DotNetOpenAuth.InfoCard.ReceivedTokenEventArgs">
      <summary>
            Arguments for the <see cref="E:DotNetOpenAuth.InfoCard.InfoCardSelector.ReceivedToken" /> event.
            </summary>
    </member>
    <member name="M:DotNetOpenAuth.InfoCard.ReceivedTokenEventArgs.#ctor(DotNetOpenAuth.InfoCard.Token)">
      <summary>
            Initializes a new instance of the <see cref="T:DotNetOpenAuth.InfoCard.ReceivedTokenEventArgs" /> class.
            </summary>
      <param name="token">The token.</param>
    </member>
    <member name="M:DotNetOpenAuth.InfoCard.ReceivedTokenEventArgs.ObjectInvariant">
      <summary>
            Verifies conditions that should be true for any valid state of this object.
            </summary>
    </member>
    <member name="P:DotNetOpenAuth.InfoCard.ReceivedTokenEventArgs.Token">
      <summary>
            Gets the processed token.
            </summary>
    </member>
    <member name="T:DotNetOpenAuth.InfoCard.InformationCardException">
      <summary>
            An exception class for Information Cards.
            </summary>
    </member>
    <member name="T:DotNetOpenAuth.Messaging.ProtocolException">
      <summary>
            An exception to represent errors in the local or remote implementation of the protocol.
            </summary>
    </member>
    <member name="M:DotNetOpenAuth.Messaging.ProtocolException.#ctor">
      <summary>
            Initializes a new instance of the <see cref="T:DotNetOpenAuth.Messaging.ProtocolException" /> class.
            </summary>
    </member>
    <member name="M:DotNetOpenAuth.Messaging.ProtocolException.#ctor(System.String)">
      <summary>
            Initializes a new instance of the <see cref="T:DotNetOpenAuth.Messaging.ProtocolException" /> class.
            </summary>
      <param name="message">A message describing the specific error the occurred or was detected.</param>
    </member>
    <member name="M:DotNetOpenAuth.Messaging.ProtocolException.#ctor(System.String,System.Exception)">
      <summary>
            Initializes a new instance of the <see cref="T:DotNetOpenAuth.Messaging.ProtocolException" /> class.
            </summary>
      <param name="message">A message describing the specific error the occurred or was detected.</param>
      <param name="inner">The inner exception to include.</param>
    </member>
    <member name="M:DotNetOpenAuth.Messaging.ProtocolException.#ctor(System.String,DotNetOpenAuth.Messaging.IProtocolMessage)">
      <summary>
            Initializes a new instance of the <see cref="T:DotNetOpenAuth.Messaging.ProtocolException" /> class
            such that it can be sent as a protocol message response to a remote caller.
            </summary>
      <param name="message">The human-readable exception message.</param>
      <param name="faultedMessage">The message that was the cause of the exception.  Must not be null.</param>
    </member>
    <member name="M:DotNetOpenAuth.Messaging.ProtocolException.#ctor(System.Runtime.Serialization.SerializationInfo,System.Runtime.Serialization.StreamingContext)">
      <summary>
            Initializes a new instance of the <see cref="T:DotNetOpenAuth.Messaging.ProtocolException" /> class.
            </summary>
      <param name="info">The <see cref="T:System.Runtime.Serialization.SerializationInfo" /> 
            that holds the serialized object data about the exception being thrown.</param>
      <param name="context">The System.Runtime.Serialization.StreamingContext 
            that contains contextual information about the source or destination.</param>
    </member>
    <member name="M:DotNetOpenAuth.Messaging.ProtocolException.GetObjectData(System.Runtime.Serialization.SerializationInfo,System.Runtime.Serialization.StreamingContext)">
      <summary>
            When overridden in a derived class, sets the <see cref="T:System.Runtime.Serialization.SerializationInfo" /> with information about the exception.
            </summary>
      <param name="info">The <see cref="T:System.Runtime.Serialization.SerializationInfo" /> that holds the serialized object data about the exception being thrown.</param>
      <param name="context">The <see cref="T:System.Runtime.Serialization.StreamingContext" /> that contains contextual information about the source or destination.</param>
      <exception cref="T:System.ArgumentNullException">
            The <paramref name="info" /> parameter is a null reference (Nothing in Visual Basic).
            </exception>
      <PermissionSet>
        <IPermission class="System.Security.Permissions.FileIOPermission, mscorlib, Version=2.0.3600.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" version="1" Read="*AllFiles*" PathDiscovery="*AllFiles*" />
        <IPermission class="System.Security.Permissions.SecurityPermission, mscorlib, Version=2.0.3600.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" version="1" Flags="SerializationFormatter" />
      </PermissionSet>
    </member>
    <member name="P:DotNetOpenAuth.Messaging.ProtocolException.FaultedMessage">
      <summary>
            Gets the message that caused the exception.
            </summary>
    </member>
    <member name="M:DotNetOpenAuth.InfoCard.InformationCardException.#ctor">
      <summary>
            Initializes a new instance of the <see cref="T:DotNetOpenAuth.InfoCard.InformationCardException" /> class.
            </summary>
    </member>
    <member name="M:DotNetOpenAuth.InfoCard.InformationCardException.#ctor(System.String)">
      <summary>
            Initializes a new instance of the <see cref="T:DotNetOpenAuth.InfoCard.InformationCardException" /> class with a specified
            error message.
            </summary>
      <param name="message">The error message.</param>
    </member>
    <member name="M:DotNetOpenAuth.InfoCard.InformationCardException.#ctor(System.String,System.Exception)">
      <summary>
            Initializes a new instance of the <see cref="T:DotNetOpenAuth.InfoCard.InformationCardException" /> class
            with a specified error message and a reference to the inner exception that is
            the cause of this exception.
            </summary>
      <param name="message">The error message that explains the reason for the exception.</param>
      <param name="innerException">
            The exception that is the cause of the current exception, or a null reference
                (Nothing in Visual Basic) if no inner exception is specified.
            </param>
    </member>
    <member name="M:DotNetOpenAuth.InfoCard.InformationCardException.#ctor(System.Runtime.Serialization.SerializationInfo,System.Runtime.Serialization.StreamingContext)">
      <summary>
            Initializes a new instance of the <see cref="T:DotNetOpenAuth.InfoCard.InformationCardException" /> class
             with serialized data.
            </summary>
      <param name="info">The <see cref="T:System.Runtime.Serialization.SerializationInfo" /> that holds the serialized object data about the exception being thrown.</param>
      <param name="context">The <see cref="T:System.Runtime.Serialization.StreamingContext" /> that contains contextual information about the source or destination.</param>
      <exception cref="T:System.ArgumentNullException">
            The <paramref name="info" /> parameter is null.
            </exception>
      <exception cref="T:System.Runtime.Serialization.SerializationException">
            The class name is null or <see cref="P:System.Exception.HResult" /> is zero (0).
            </exception>
    </member>
    <member name="T:DotNetOpenAuth.InfoCard.Token">
      <summary>
            The decrypted token that was submitted as an Information Card.
            </summary>
    </member>
    <member name="F:DotNetOpenAuth.InfoCard.Token.claims">
      <summary>
            Backing field for the <see cref="P:DotNetOpenAuth.InfoCard.Token.Claims" /> property.
            </summary>
    </member>
    <member name="F:DotNetOpenAuth.InfoCard.Token.uniqueId">
      <summary>
            Backing field for the <see cref="P:DotNetOpenAuth.InfoCard.Token.UniqueId" /> property.
            </summary>
    </member>
    <member name="M:DotNetOpenAuth.InfoCard.Token.#ctor(System.String,System.Uri,DotNetOpenAuth.InfoCard.TokenDecryptor)">
      <summary>
            Initializes a new instance of the <see cref="T:DotNetOpenAuth.InfoCard.Token" /> class.
            </summary>
      <param name="tokenXml">Xml token, which may be encrypted.</param>
      <param name="audience">The audience.  May be <c>null</c> to avoid audience checking.</param>
      <param name="decryptor">The decryptor to use to decrypt the token, if necessary..</param>
      <exception cref="T:DotNetOpenAuth.InfoCard.InformationCardException">Thrown for any problem decoding or decrypting the token.</exception>
    </member>
    <member name="M:DotNetOpenAuth.InfoCard.Token.Read(System.String)">
      <summary>
            Deserializes an XML document into a token.
            </summary>
      <param name="tokenXml">The token XML.</param>
      <returns>The deserialized token.</returns>
    </member>
    <member name="M:DotNetOpenAuth.InfoCard.Token.Read(System.String,System.Uri)">
      <summary>
            Deserializes an XML document into a token.
            </summary>
      <param name="tokenXml">The token XML.</param>
      <param name="audience">The URI that this token must have been crafted to be sent to.  Use <c>null</c> to accept any intended audience.</param>
      <returns>The deserialized token.</returns>
    </member>
    <member name="M:DotNetOpenAuth.InfoCard.Token.Read(System.String,System.Collections.Generic.IEnumerable{System.IdentityModel.Tokens.SecurityToken})">
      <summary>
            Deserializes an XML document into a token.
            </summary>
      <param name="tokenXml">The token XML.</param>
      <param name="decryptionTokens">Any X.509 certificates that may be used to decrypt the token, if necessary.</param>
      <returns>The deserialized token.</returns>
    </member>
    <member name="M:DotNetOpenAuth.InfoCard.Token.Read(System.String,System.Uri,System.Collections.Generic.IEnumerable{System.IdentityModel.Tokens.SecurityToken})">
      <summary>
            Deserializes an XML document into a token.
            </summary>
      <param name="tokenXml">The token XML.</param>
      <param name="audience">The URI that this token must have been crafted to be sent to.  Use <c>null</c> to accept any intended audience.</param>
      <param name="decryptionTokens">Any X.509 certificates that may be used to decrypt the token, if necessary.</param>
      <returns>The deserialized token.</returns>
    </member>
    <member name="M:DotNetOpenAuth.InfoCard.Token.IsEncrypted(System.String)">
      <summary>
            Determines whether the specified token XML is encrypted.
            </summary>
      <param name="tokenXml">The token XML.</param>
      <returns>
        <c>true</c> if the specified token XML is encrypted; otherwise, <c>false</c>.
            </returns>
      <pure />
    </member>
    <member name="M:DotNetOpenAuth.InfoCard.Token.ObjectInvariant">
      <summary>
            Verifies conditions that should be true for any valid state of this object.
            </summary>
    </member>
    <member name="M:DotNetOpenAuth.InfoCard.Token.IsEncrypted(System.Xml.XmlReader)">
      <summary>
            Determines whether the specified token XML is encrypted.
            </summary>
      <param name="tokenXmlReader">The token XML.</param>
      <returns>
        <c>true</c> if the specified token XML is encrypted; otherwise, <c>false</c>.
            </returns>
    </member>
    <member name="M:DotNetOpenAuth.InfoCard.Token.GetFlattenedClaims">
      <summary>
            Flattens the claims into a dictionary
            </summary>
      <returns>A dictionary of claim type URIs and claim values.</returns>
      <pure />
    </member>
    <member name="P:DotNetOpenAuth.InfoCard.Token.AuthorizationContext">
      <summary>
            Gets the AuthorizationContext behind this token.
            </summary>
    </member>
    <member name="P:DotNetOpenAuth.InfoCard.Token.Xml">
      <summary>
            Gets the the decrypted token XML.
            </summary>
    </member>
    <member name="P:DotNetOpenAuth.InfoCard.Token.UniqueId">
      <summary>
            Gets the UniqueID of this token, usable as a stable username that the user
            has already verified belongs to him/her.
            </summary>
      <remarks>
            By default, this uses the PPID and the Issuer's Public Key and hashes them 
            together to generate a UniqueID.
            </remarks>
    </member>
    <member name="P:DotNetOpenAuth.InfoCard.Token.IssuerPubKeyHash">
      <summary>
            Gets the hash of the card issuer's public key.
            </summary>
    </member>
    <member name="P:DotNetOpenAuth.InfoCard.Token.SiteSpecificId">
      <summary>
            Gets the Site Specific ID that the user sees in the Identity Selector.
            </summary>
    </member>
    <member name="P:DotNetOpenAuth.InfoCard.Token.Claims">
      <summary>
            Gets the claims in all the claimsets as a dictionary of strings.
            </summary>
    </member>
    <member name="T:DotNetOpenAuth.InfoCard.TokenUtility">
      <summary>
            Tools for reading InfoCard tokens.
            </summary>
    </member>
    <member name="M:DotNetOpenAuth.InfoCard.TokenUtility.AuthenticateToken(System.Xml.XmlReader,System.Uri)">
      <summary>
            Token Authentication.  Translates the decrypted data into a AuthContext.
            </summary>
      <param name="reader">The token XML reader.</param>
      <param name="audience">The audience that the token must be scoped for.
            Use <c>null</c> to indicate any audience is acceptable.</param>
      <returns>
            The authorization context carried by the token.
            </returns>
    </member>
    <member name="M:DotNetOpenAuth.InfoCard.TokenUtility.GetResourceValue(System.IdentityModel.Claims.Claim)">
      <summary>
            Translates claims to strings
            </summary>
      <param name="claim">Claim to translate to a string</param>
      <returns>The string representation of a claim's value.</returns>
    </member>
    <member name="M:DotNetOpenAuth.InfoCard.TokenUtility.GetIssuerPubKeyHash(System.IdentityModel.Policy.AuthorizationContext)">
      <summary>
            Generates a UniqueID based off the Issuer's key
            </summary>
      <param name="authzContext">the Authorization Context</param>
      <returns>the hash of the internal key of the issuer</returns>
    </member>
    <member name="M:DotNetOpenAuth.InfoCard.TokenUtility.GetUniqueName(System.IdentityModel.Policy.AuthorizationContext)">
      <summary>
            Generates a UniqueID based off the Issuer's key and the PPID.
            </summary>
      <param name="authzContext">The Authorization Context</param>
      <returns>A unique ID for this user at this web site.</returns>
    </member>
    <member name="M:DotNetOpenAuth.InfoCard.TokenUtility.CalculateSiteSpecificID(System.String)">
      <summary>
            Generates the Site Specific ID to match the one in the Identity Selector.
            </summary>
      <value>The ID displayed by the Identity Selector.</value>
      <param name="ppid">The personal private identifier.</param>
      <returns>A string containing the XXX-XXXX-XXX cosmetic value.</returns>
    </member>
    <member name="M:DotNetOpenAuth.InfoCard.TokenUtility.GetUniqueRsaClaim(System.IdentityModel.Claims.ClaimSet)">
      <summary>
            Gets the Unique RSA Claim from the SAML token.
            </summary>
      <param name="cs">the claimset which contains the claim</param>
      <returns>a RSA claim</returns>
    </member>
    <member name="M:DotNetOpenAuth.InfoCard.TokenUtility.ComputeCombinedId(System.Security.Cryptography.RSA,System.String)">
      <summary>
            Does the actual calculation of a combined ID from a value and an RSA key.
            </summary>
      <param name="issuerKey">The key of the issuer of the token</param>
      <param name="claimValue">the claim value to hash with.</param>
      <returns>A base64 representation of the combined ID.</returns>
    </member>
    <member name="P:DotNetOpenAuth.InfoCard.TokenUtility.MaximumClockSkew">
      <summary>
            Gets the maximum amount the token can be out of sync with time.
            </summary>
    </member>
    <member name="T:DotNetOpenAuth.InfoCard.TokenDecryptor">
      <summary>
            A utility class for decrypting InfoCard tokens.
            </summary>
    </member>
    <member name="F:DotNetOpenAuth.InfoCard.TokenDecryptor.tokens">
      <summary>
            Backing field for the <see cref="P:DotNetOpenAuth.InfoCard.TokenDecryptor.Tokens" /> property.
            </summary>
    </member>
    <member name="M:DotNetOpenAuth.InfoCard.TokenDecryptor.#ctor">
      <summary>
            Initializes a new instance of the <see cref="T:DotNetOpenAuth.InfoCard.TokenDecryptor" /> class.
            </summary>
    </member>
    <member name="M:DotNetOpenAuth.InfoCard.TokenDecryptor.AddDecryptionCertificate(System.Security.Cryptography.X509Certificates.X509Certificate2)">
      <summary>
            Adds a certificate to the list of certificates to decrypt with.
            </summary>
      <param name="certificate">The x509 cert to use for decryption</param>
    </member>
    <member name="M:DotNetOpenAuth.InfoCard.TokenDecryptor.AddDecryptionCertificate(System.Security.Cryptography.X509Certificates.StoreName,System.Security.Cryptography.X509Certificates.StoreLocation,System.String)">
      <summary>
            Adds a certificate to the list of certificates to decrypt with.
            </summary>
      <param name="storeName">store name of the certificate</param>
      <param name="storeLocation">store location</param>
      <param name="thumbprint">thumbprint of the cert to use</param>
    </member>
    <member name="M:DotNetOpenAuth.InfoCard.TokenDecryptor.AddDecryptionCertificates(System.Security.Cryptography.X509Certificates.StoreName,System.Security.Cryptography.X509Certificates.StoreLocation)">
      <summary>
            Adds a store of certificates to the list of certificates to decrypt with.
            </summary>
      <param name="storeName">store name of the certificates</param>
      <param name="storeLocation">store location</param>
    </member>
    <member name="M:DotNetOpenAuth.InfoCard.TokenDecryptor.DecryptToken(System.Xml.XmlReader)">
      <summary>
            Decrpyts a security token from an XML EncryptedData 
            </summary>
      <param name="reader">The encrypted token XML reader.</param>
      <returns>A byte array of the contents of the encrypted token</returns>
    </member>
    <member name="M:DotNetOpenAuth.InfoCard.TokenDecryptor.ObjectInvariant">
      <summary>
            Verifies conditions that should be true for any valid state of this object.
            </summary>
    </member>
    <member name="M:DotNetOpenAuth.InfoCard.TokenDecryptor.AddDecryptionCertificates(System.Security.Cryptography.X509Certificates.StoreName,System.Security.Cryptography.X509Certificates.StoreLocation,System.Func{System.Security.Cryptography.X509Certificates.X509Certificate2Collection,System.Security.Cryptography.X509Certificates.X509Certificate2Collection})">
      <summary>
            Adds a store of certificates to the list of certificates to decrypt with.
            </summary>
      <param name="storeName">store name of the certificates</param>
      <param name="storeLocation">store location</param>
      <param name="filter">A filter to on the certificates to add.</param>
    </member>
    <member name="P:DotNetOpenAuth.InfoCard.TokenDecryptor.Tokens">
      <summary>
            Gets a list of possible decryption certificates, from the store/location set
            </summary>
      <remarks>
            Defaults to localmachine:my (same place SSL certs are)
            </remarks>
    </member>
    <member name="T:DotNetOpenAuth.InfoCard.TokenDecryptor.XmlEncryptionStrings">
      <summary>
            A set of strings used in parsing the XML token.
            </summary>
    </member>
    <member name="F:DotNetOpenAuth.InfoCard.TokenDecryptor.XmlEncryptionStrings.Namespace">
      <summary>
            The "http://www.w3.org/2001/04/xmlenc#" value.
            </summary>
    </member>
    <member name="F:DotNetOpenAuth.InfoCard.TokenDecryptor.XmlEncryptionStrings.EncryptionMethod">
      <summary>
            The "EncryptionMethod" value.
            </summary>
    </member>
    <member name="F:DotNetOpenAuth.InfoCard.TokenDecryptor.XmlEncryptionStrings.CipherValue">
      <summary>
            The "CipherValue" value.
            </summary>
    </member>
    <member name="F:DotNetOpenAuth.InfoCard.TokenDecryptor.XmlEncryptionStrings.Algorithm">
      <summary>
            The "Algorithm" value.
            </summary>
    </member>
    <member name="F:DotNetOpenAuth.InfoCard.TokenDecryptor.XmlEncryptionStrings.EncryptedData">
      <summary>
            The "EncryptedData" value.
            </summary>
    </member>
    <member name="F:DotNetOpenAuth.InfoCard.TokenDecryptor.XmlEncryptionStrings.CipherData">
      <summary>
            The "CipherData" value.
            </summary>
    </member>
    <member name="T:DotNetOpenAuth.InfoCard.WellKnownIssuers">
      <summary>
            Common InfoCard issuers.
            </summary>
    </member>
    <member name="F:DotNetOpenAuth.InfoCard.WellKnownIssuers.SelfIssued">
      <summary>
            The Issuer URI to use for self-issued cards.
            </summary>
    </member>
    <member name="M:DotNetOpenAuth.InfoCard.WellKnownIssuers.#ctor">
      <summary>
            Prevents a default instance of the <see cref="T:DotNetOpenAuth.InfoCard.WellKnownIssuers" /> class from being created.
            </summary>
    </member>
    <member name="T:DotNetOpenAuth.Messaging.CachedDirectWebResponse">
      <summary>
            Cached details on the response from a direct web request to a remote party.
            </summary>
    </member>
    <member name="T:DotNetOpenAuth.Messaging.IncomingWebResponse">
      <summary>
            Details on the incoming response from a direct web request to a remote party.
            </summary>
    </member>
    <member name="F:DotNetOpenAuth.Messaging.IncomingWebResponse.DefaultContentEncoding">
      <summary>
            The encoding to use in reading a response that does not declare its own content encoding.
            </summary>
    </member>
    <member name="M:DotNetOpenAuth.Messaging.IncomingWebResponse.#ctor">
      <summary>
            Initializes a new instance of the <see cref="T:DotNetOpenAuth.Messaging.IncomingWebResponse" /> class.
            </summary>
    </member>
    <member name="M:DotNetOpenAuth.Messaging.IncomingWebResponse.#ctor(System.Uri,System.Net.HttpWebResponse)">
      <summary>
            Initializes a new instance of the <see cref="T:DotNetOpenAuth.Messaging.IncomingWebResponse" /> class.
            </summary>
      <param name="requestUri">The original request URI.</param>
      <param name="response">The response to initialize from.  The network stream is used by this class directly.</param>
    </member>
    <member name="M:DotNetOpenAuth.Messaging.IncomingWebResponse.#ctor(System.Uri,System.Uri,System.Net.WebHeaderCollection,System.Net.HttpStatusCode,System.String,System.String)">
      <summary>
            Initializes a new instance of the <see cref="T:DotNetOpenAuth.Messaging.IncomingWebResponse" /> class.
            </summary>
      <param name="requestUri">The request URI.</param>
      <param name="responseUri">The final URI to respond to the request.</param>
      <param name="headers">The headers.</param>
      <param name="statusCode">The status code.</param>
      <param name="contentType">Type of the content.</param>
      <param name="contentEncoding">The content encoding.</param>
    </member>
    <member name="M:DotNetOpenAuth.Messaging.IncomingWebResponse.ToString">
      <summary>
            Returns a <see cref="T:System.String" /> that represents the current <see cref="T:System.Object" />.
            </summary>
      <returns>
            A <see cref="T:System.String" /> that represents the current <see cref="T:System.Object" />.
            </returns>
      <ensures inheritedFrom="M:System.Object.ToString" inheritedFromTypeName="Object">Contract.Result&lt;string&gt;() != null</ensures>
    </member>
    <member name="M:DotNetOpenAuth.Messaging.IncomingWebResponse.Dispose">
      <summary>
            Performs application-defined tasks associated with freeing, releasing, or resetting unmanaged resources.
            </summary>
    </member>
    <member name="M:DotNetOpenAuth.Messaging.IncomingWebResponse.GetResponseReader">
      <summary>
            Creates a text reader for the response stream.
            </summary>
      <returns>The text reader, initialized for the proper encoding.</returns>
    </member>
    <member name="M:DotNetOpenAuth.Messaging.IncomingWebResponse.GetSnapshot(System.Int32)">
      <summary>
            Gets an offline snapshot version of this instance.
            </summary>
      <param name="maximumBytesToCache">The maximum bytes from the response stream to cache.</param>
      <returns>A snapshot version of this instance.</returns>
      <remarks>
            If this instance is a <see cref="T:DotNetOpenAuth.Messaging.NetworkDirectWebResponse" /> creating a snapshot
            will automatically close and dispose of the underlying response stream.
            If this instance is a <see cref="T:DotNetOpenAuth.Messaging.CachedDirectWebResponse" />, the result will
            be the self same instance.
            </remarks>
    </member>
    <member name="M:DotNetOpenAuth.Messaging.IncomingWebResponse.Dispose(System.Boolean)">
      <summary>
            Releases unmanaged and - optionally - managed resources
            </summary>
      <param name="disposing">
        <c>true</c> to release both managed and unmanaged resources; <c>false</c> to release only unmanaged resources.</param>
    </member>
    <member name="P:DotNetOpenAuth.Messaging.IncomingWebResponse.ContentType">
      <summary>
            Gets the type of the content.
            </summary>
    </member>
    <member name="P:DotNetOpenAuth.Messaging.IncomingWebResponse.ContentEncoding">
      <summary>
            Gets the content encoding.
            </summary>
    </member>
    <member name="P:DotNetOpenAuth.Messaging.IncomingWebResponse.RequestUri">
      <summary>
            Gets the URI of the initial request.
            </summary>
    </member>
    <member name="P:DotNetOpenAuth.Messaging.IncomingWebResponse.FinalUri">
      <summary>
            Gets the URI that finally responded to the request.
            </summary>
      <remarks>
            This can be different from the <see cref="P:DotNetOpenAuth.Messaging.IncomingWebResponse.RequestUri" /> in cases of 
            redirection during the request.
            </remarks>
    </member>
    <member name="P:DotNetOpenAuth.Messaging.IncomingWebResponse.Headers">
      <summary>
            Gets the headers that must be included in the response to the user agent.
            </summary>
      <remarks>
            The headers in this collection are not meant to be a comprehensive list
            of exactly what should be sent, but are meant to augment whatever headers
            are generally included in a typical response.
            </remarks>
    </member>
    <member name="P:DotNetOpenAuth.Messaging.IncomingWebResponse.Status">
      <summary>
            Gets the HTTP status code to use in the HTTP response.
            </summary>
    </member>
    <member name="P:DotNetOpenAuth.Messaging.IncomingWebResponse.ResponseStream">
      <summary>
            Gets the body of the HTTP response.
            </summary>
    </member>
    <member name="F:DotNetOpenAuth.Messaging.CachedDirectWebResponse.responseStream">
      <summary>
            A seekable, repeatable response stream.
            </summary>
    </member>
    <member name="M:DotNetOpenAuth.Messaging.CachedDirectWebResponse.#ctor">
      <summary>
            Initializes a new instance of the <see cref="T:DotNetOpenAuth.Messaging.CachedDirectWebResponse" /> class.
            </summary>
    </member>
    <member name="M:DotNetOpenAuth.Messaging.CachedDirectWebResponse.#ctor(System.Uri,System.Net.HttpWebResponse,System.Int32)">
      <summary>
            Initializes a new instance of the <see cref="T:DotNetOpenAuth.Messaging.CachedDirectWebResponse" /> class.
            </summary>
      <param name="requestUri">The request URI.</param>
      <param name="response">The response.</param>
      <param name="maximumBytesToRead">The maximum bytes to read.</param>
    </member>
    <member name="M:DotNetOpenAuth.Messaging.CachedDirectWebResponse.#ctor(System.Uri,System.Uri,System.Net.WebHeaderCollection,System.Net.HttpStatusCode,System.String,System.String,System.IO.MemoryStream)">
      <summary>
            Initializes a new instance of the <see cref="T:DotNetOpenAuth.Messaging.CachedDirectWebResponse" /> class.
            </summary>
      <param name="requestUri">The request URI.</param>
      <param name="responseUri">The final URI to respond to the request.</param>
      <param name="headers">The headers.</param>
      <param name="statusCode">The status code.</param>
      <param name="contentType">Type of the content.</param>
      <param name="contentEncoding">The content encoding.</param>
      <param name="responseStream">The response stream.</param>
    </member>
    <member name="M:DotNetOpenAuth.Messaging.CachedDirectWebResponse.GetResponseReader">
      <summary>
            Creates a text reader for the response stream.
            </summary>
      <returns>The text reader, initialized for the proper encoding.</returns>
    </member>
    <member name="M:DotNetOpenAuth.Messaging.CachedDirectWebResponse.GetResponseString">
      <summary>
            Gets the body of the response as a string.
            </summary>
      <returns>The entire body of the response.</returns>
    </member>
    <member name="M:DotNetOpenAuth.Messaging.CachedDirectWebResponse.GetSnapshot(System.Int32)">
      <summary>
            Gets an offline snapshot version of this instance.
            </summary>
      <param name="maximumBytesToCache">The maximum bytes from the response stream to cache.</param>
      <returns>A snapshot version of this instance.</returns>
      <remarks>
            If this instance is a <see cref="T:DotNetOpenAuth.Messaging.NetworkDirectWebResponse" /> creating a snapshot
            will automatically close and dispose of the underlying response stream.
            If this instance is a <see cref="T:DotNetOpenAuth.Messaging.CachedDirectWebResponse" />, the result will
            be the self same instance.
            </remarks>
    </member>
    <member name="M:DotNetOpenAuth.Messaging.CachedDirectWebResponse.SetResponse(System.String)">
      <summary>
            Sets the response to some string, encoded as UTF-8.
            </summary>
      <param name="body">The string to set the response to.</param>
    </member>
    <member name="M:DotNetOpenAuth.Messaging.CachedDirectWebResponse.CacheNetworkStreamAndClose(System.Net.HttpWebResponse,System.Int32)">
      <summary>
            Caches the network stream and closes it if it is open.
            </summary>
      <param name="response">The response whose stream is to be cloned.</param>
      <param name="maximumBytesToRead">The maximum bytes to cache.</param>
      <returns>The seekable Stream instance that contains a copy of what was returned in the HTTP response.</returns>
    </member>
    <member name="P:DotNetOpenAuth.Messaging.CachedDirectWebResponse.ResponseTruncated">
      <summary>
            Gets a value indicating whether the cached response stream was
            truncated to a maximum allowable length.
            </summary>
    </member>
    <member name="P:DotNetOpenAuth.Messaging.CachedDirectWebResponse.ResponseStream">
      <summary>
            Gets the body of the HTTP response.
            </summary>
    </member>
    <member name="P:DotNetOpenAuth.Messaging.CachedDirectWebResponse.CachedResponseStream">
      <summary>
            Gets or sets the cached response stream.
            </summary>
    </member>
    <member name="T:DotNetOpenAuth.Messaging.ChannelContract">
      <summary>
            Code contract for the <see cref="T:DotNetOpenAuth.Messaging.Channel" /> class.
            </summary>
    </member>
    <member name="T:DotNetOpenAuth.Messaging.Channel">
      <summary>
            Manages sending direct messages to a remote party and receiving responses.
            </summary>
    </member>
    <member name="F:DotNetOpenAuth.Messaging.Channel.HttpFormUrlEncoded">
      <summary>
            The content-type used on HTTP POST requests where the POST entity is a
            URL-encoded series of key=value pairs.
            </summary>
    </member>
    <member name="F:DotNetOpenAuth.Messaging.Channel.IndirectMessageGetToPostThreshold">
      <summary>
            The maximum allowable size for a 301 Redirect response before we send
            a 200 OK response with a scripted form POST with the parameters instead
            in order to ensure successfully sending a large payload to another server
            that might have a maximum allowable size restriction on its GET request.
            </summary>
    </member>
    <member name="F:DotNetOpenAuth.Messaging.Channel.IndirectMessageFormPostFormat">
      <summary>
            The template for indirect messages that require form POST to forward through the user agent.
            </summary>
      <remarks>
            We are intentionally using " instead of the html single quote ' below because
            the HtmlEncode'd values that we inject will only escape the double quote, so
            only the double-quote used around these values is safe.
            </remarks>
    </member>
    <member name="F:DotNetOpenAuth.Messaging.Channel.PostEntityEncoding">
      <summary>
            The encoding to use when writing out POST entity strings.
            </summary>
    </member>
    <member name="F:DotNetOpenAuth.Messaging.Channel.outgoingBindingElements">
      <summary>
            A list of binding elements in the order they must be applied to outgoing messages.
            </summary>
    </member>
    <member name="F:DotNetOpenAuth.Messaging.Channel.incomingBindingElements">
      <summary>
            A list of binding elements in the order they must be applied to incoming messages.
            </summary>
    </member>
    <member name="F:DotNetOpenAuth.Messaging.Channel.defaultMessageDescriptions">
      <summary>
            The default cache of message descriptions to use unless they are customized.
            </summary>
      <remarks>
            This is a perf optimization, so that we don't reflect over every message type
            every time a channel is constructed.
            </remarks>
    </member>
    <member name="F:DotNetOpenAuth.Messaging.Channel.messageDescriptions">
      <summary>
            A cache of reflected message types that may be sent or received on this channel.
            </summary>
    </member>
    <member name="F:DotNetOpenAuth.Messaging.Channel.messageTypeProvider">
      <summary>
            A tool that can figure out what kind of message is being received
            so it can be deserialized.
            </summary>
    </member>
    <member name="F:DotNetOpenAuth.Messaging.Channel.cachePolicy">
      <summary>
            Backing store for the <see cref="P:DotNetOpenAuth.Messaging.Channel.CachePolicy" /> property.
            </summary>
    </member>
    <member name="M:DotNetOpenAuth.Messaging.Channel.#ctor(DotNetOpenAuth.Messaging.IMessageFactory,DotNetOpenAuth.Messaging.IChannelBindingElement[])">
      <summary>
            Initializes a new instance of the <see cref="T:DotNetOpenAuth.Messaging.Channel" /> class.
            </summary>
      <param name="messageTypeProvider">
            A class prepared to analyze incoming messages and indicate what concrete
            message types can deserialize from it.
            </param>
      <param name="bindingElements">The binding elements to use in sending and receiving messages.</param>
    </member>
    <member name="M:DotNetOpenAuth.Messaging.Channel.Send(DotNetOpenAuth.Messaging.IProtocolMessage)">
      <summary>
            Sends an indirect message (either a request or response) 
            or direct message response for transmission to a remote party
            and ends execution on the current page or handler.
            </summary>
      <param name="message">The one-way message to send</param>
      <exception cref="T:System.Threading.ThreadAbortException">Thrown by ASP.NET in order to prevent additional data from the page being sent to the client and corrupting the response.</exception>
      <remarks>
            Requires an HttpContext.Current context.
            </remarks>
    </member>
    <member name="M:DotNetOpenAuth.Messaging.Channel.PrepareResponse(DotNetOpenAuth.Messaging.IProtocolMessage)">
      <summary>
            Prepares an indirect message (either a request or response) 
            or direct message response for transmission to a remote party.
            </summary>
      <param name="message">The one-way message to send</param>
      <returns>The pending user agent redirect based message to be sent as an HttpResponse.</returns>
    </member>
    <member name="M:DotNetOpenAuth.Messaging.Channel.ReadFromRequest">
      <summary>
            Gets the protocol message embedded in the given HTTP request, if present.
            </summary>
      <returns>The deserialized message, if one is found.  Null otherwise.</returns>
      <remarks>
            Requires an HttpContext.Current context.
            </remarks>
      <exception cref="T:System.InvalidOperationException">Thrown when <see cref="P:System.Web.HttpContext.Current" /> is null.</exception>
    </member>
    <member name="M:DotNetOpenAuth.Messaging.Channel.TryReadFromRequest``1(``0@)">
      <summary>
            Gets the protocol message embedded in the given HTTP request, if present.
            </summary>
      <typeparam name="TRequest">The expected type of the message to be received.</typeparam>
      <param name="request">The deserialized message, if one is found.  Null otherwise.</param>
      <returns>True if the expected message was recognized and deserialized.  False otherwise.</returns>
      <remarks>
            Requires an HttpContext.Current context.
            </remarks>
      <exception cref="T:System.InvalidOperationException">Thrown when <see cref="P:System.Web.HttpContext.Current" /> is null.</exception>
      <exception cref="T:DotNetOpenAuth.Messaging.ProtocolException">Thrown when a request message of an unexpected type is received.</exception>
    </member>
    <member name="M:DotNetOpenAuth.Messaging.Channel.TryReadFromRequest``1(DotNetOpenAuth.Messaging.HttpRequestInfo,``0@)">
      <summary>
            Gets the protocol message embedded in the given HTTP request, if present.
            </summary>
      <typeparam name="TRequest">The expected type of the message to be received.</typeparam>
      <param name="httpRequest">The request to search for an embedded message.</param>
      <param name="request">The deserialized message, if one is found.  Null otherwise.</param>
      <returns>True if the expected message was recognized and deserialized.  False otherwise.</returns>
      <exception cref="T:System.InvalidOperationException">Thrown when <see cref="P:System.Web.HttpContext.Current" /> is null.</exception>
      <exception cref="T:DotNetOpenAuth.Messaging.ProtocolException">Thrown when a request message of an unexpected type is received.</exception>
    </member>
    <member name="M:DotNetOpenAuth.Messaging.Channel.ReadFromRequest``1">
      <summary>
            Gets the protocol message embedded in the current HTTP request.
            </summary>
      <typeparam name="TRequest">The expected type of the message to be received.</typeparam>
      <returns>The deserialized message.  Never null.</returns>
      <remarks>
            Requires an HttpContext.Current context.
            </remarks>
      <exception cref="T:System.InvalidOperationException">Thrown when <see cref="P:System.Web.HttpContext.Current" /> is null.</exception>
      <exception cref="T:DotNetOpenAuth.Messaging.ProtocolException">Thrown if the expected message was not recognized in the response.</exception>
    </member>
    <member name="M:DotNetOpenAuth.Messaging.Channel.ReadFromRequest``1(DotNetOpenAuth.Messaging.HttpRequestInfo)">
      <summary>
            Gets the protocol message embedded in the given HTTP request.
            </summary>
      <typeparam name="TRequest">The expected type of the message to be received.</typeparam>
      <param name="httpRequest">The request to search for an embedded message.</param>
      <returns>The deserialized message.  Never null.</returns>
      <exception cref="T:DotNetOpenAuth.Messaging.ProtocolException">Thrown if the expected message was not recognized in the response.</exception>
    </member>
    <member name="M:DotNetOpenAuth.Messaging.Channel.ReadFromRequest(DotNetOpenAuth.Messaging.HttpRequestInfo)">
      <summary>
            Gets the protocol message that may be embedded in the given HTTP request.
            </summary>
      <param name="httpRequest">The request to search for an embedded message.</param>
      <returns>The deserialized message, if one is found.  Null otherwise.</returns>
    </member>
    <member name="M:DotNetOpenAuth.Messaging.Channel.Request``1(DotNetOpenAuth.Messaging.IDirectedProtocolMessage)">
      <summary>
            Sends a direct message to a remote party and waits for the response.
            </summary>
      <typeparam name="TResponse">The expected type of the message to be received.</typeparam>
      <param name="requestMessage">The message to send.</param>
      <returns>The remote party's response.</returns>
      <exception cref="T:DotNetOpenAuth.Messaging.ProtocolException">
            Thrown if no message is recognized in the response
            or an unexpected type of message is received.
            </exception>
    </member>
    <member name="M:DotNetOpenAuth.Messaging.Channel.Request(DotNetOpenAuth.Messaging.IDirectedProtocolMessage)">
      <summary>
            Sends a direct message to a remote party and waits for the response.
            </summary>
      <param name="requestMessage">The message to send.</param>
      <returns>The remote party's response.  Guaranteed to never be null.</returns>
      <exception cref="T:DotNetOpenAuth.Messaging.ProtocolException">Thrown if the response does not include a protocol message.</exception>
    </member>
    <member name="M:DotNetOpenAuth.Messaging.Channel.Dispose">
      <summary>
            Performs application-defined tasks associated with freeing, releasing, or resetting unmanaged resources.
            </summary>
    </member>
    <member name="M:DotNetOpenAuth.Messaging.Channel.GetRequestFromContext">
      <summary>
            Gets the current HTTP request being processed.
            </summary>
      <returns>The HttpRequestInfo for the current request.</returns>
      <remarks>
            Requires an <see cref="P:System.Web.HttpContext.Current" /> context.
            </remarks>
      <exception cref="T:System.InvalidOperationException">Thrown if <see cref="P:System.Web.HttpContext.Current">HttpContext.Current</see> == <c>null</c>.</exception>
    </member>
    <member name="M:DotNetOpenAuth.Messaging.Channel.HttpMethodHasEntity(System.String)">
      <summary>
            Checks whether a given HTTP method is expected to include an entity body in its request.
            </summary>
      <param name="httpMethod">The HTTP method.</param>
      <returns>
        <c>true</c> if the HTTP method is supposed to have an entity; <c>false</c> otherwise.</returns>
    </member>
    <member name="M:DotNetOpenAuth.Messaging.Channel.Dispose(System.Boolean)">
      <summary>
            Releases unmanaged and - optionally - managed resources
            </summary>
      <param name="disposing">
        <c>true</c> to release both managed and unmanaged resources; <c>false</c> to release only unmanaged resources.</param>
    </member>
    <member name="M:DotNetOpenAuth.Messaging.Channel.OnSending(DotNetOpenAuth.Messaging.IProtocolMessage)">
      <summary>
            Fires the <see cref="E:DotNetOpenAuth.Messaging.Channel.Sending" /> event.
            </summary>
      <param name="message">The message about to be encoded and sent.</param>
    </member>
    <member name="M:DotNetOpenAuth.Messaging.Channel.GetDirectResponse(System.Net.HttpWebRequest)">
      <summary>
            Gets the direct response of a direct HTTP request.
            </summary>
      <param name="webRequest">The web request.</param>
      <returns>The response to the web request.</returns>
      <exception cref="T:DotNetOpenAuth.Messaging.ProtocolException">Thrown on network or protocol errors.</exception>
    </member>
    <member name="M:DotNetOpenAuth.Messaging.Channel.RequestCore(DotNetOpenAuth.Messaging.IDirectedProtocolMessage)">
      <summary>
            Submits a direct request message to some remote party and blocks waiting for an immediately reply.
            </summary>
      <param name="request">The request message.</param>
      <returns>The response message, or null if the response did not carry a message.</returns>
      <remarks>
            Typically a deriving channel will override <see cref="M:DotNetOpenAuth.Messaging.Channel.CreateHttpRequest(DotNetOpenAuth.Messaging.IDirectedProtocolMessage)" /> to customize this method's
            behavior.  However in non-HTTP frameworks, such as unit test mocks, it may be appropriate to override 
            this method to eliminate all use of an HTTP transport.
            </remarks>
    </member>
    <member name="M:DotNetOpenAuth.Messaging.Channel.OnReceivingDirectResponse(DotNetOpenAuth.Messaging.IncomingWebResponse,DotNetOpenAuth.Messaging.IDirectResponseProtocolMessage)">
      <summary>
            Called when receiving a direct response message, before deserialization begins.
            </summary>
      <param name="response">The HTTP direct response.</param>
      <param name="message">The newly instantiated message, prior to deserialization.</param>
    </member>
    <member name="M:DotNetOpenAuth.Messaging.Channel.ReadFromRequestCore(DotNetOpenAuth.Messaging.HttpRequestInfo)">
      <summary>
            Gets the protocol message that may be embedded in the given HTTP request.
            </summary>
      <param name="request">The request to search for an embedded message.</param>
      <returns>The deserialized message, if one is found.  Null otherwise.</returns>
    </member>
    <member name="M:DotNetOpenAuth.Messaging.Channel.Receive(System.Collections.Generic.Dictionary{System.String,System.String},DotNetOpenAuth.Messaging.MessageReceivingEndpoint)">
      <summary>
            Deserializes a dictionary of values into a message.
            </summary>
      <param name="fields">The dictionary of values that were read from an HTTP request or response.</param>
      <param name="recipient">Information about where the message was directed.  Null for direct response messages.</param>
      <returns>The deserialized message, or null if no message could be recognized in the provided data.</returns>
    </member>
    <member name="M:DotNetOpenAuth.Messaging.Channel.PrepareIndirectResponse(DotNetOpenAuth.Messaging.IDirectedProtocolMessage)">
      <summary>
            Queues an indirect message for transmittal via the user agent.
            </summary>
      <param name="message">The message to send.</param>
      <returns>The pending user agent redirect based message to be sent as an HttpResponse.</returns>
    </member>
    <member name="M:DotNetOpenAuth.Messaging.Channel.Create301RedirectResponse(DotNetOpenAuth.Messaging.IDirectedProtocolMessage,System.Collections.Generic.IDictionary{System.String,System.String})">
      <summary>
            Encodes an HTTP response that will instruct the user agent to forward a message to
            some remote third party using a 301 Redirect GET method.
            </summary>
      <param name="message">The message to forward.</param>
      <param name="fields">The pre-serialized fields from the message.</param>
      <returns>The encoded HTTP response.</returns>
      <pure />
    </member>
    <member name="M:DotNetOpenAuth.Messaging.Channel.CreateFormPostResponse(DotNetOpenAuth.Messaging.IDirectedProtocolMessage,System.Collections.Generic.IDictionary{System.String,System.String})">
      <summary>
            Encodes an HTTP response that will instruct the user agent to forward a message to
            some remote third party using a form POST method.
            </summary>
      <param name="message">The message to forward.</param>
      <param name="fields">The pre-serialized fields from the message.</param>
      <returns>The encoded HTTP response.</returns>
    </member>
    <member name="M:DotNetOpenAuth.Messaging.Channel.ReadFromResponseCore(DotNetOpenAuth.Messaging.IncomingWebResponse)">
      <summary>
            Gets the protocol message that may be in the given HTTP response.
            </summary>
      <param name="response">The response that is anticipated to contain an protocol message.</param>
      <returns>The deserialized message parts, if found.  Null otherwise.</returns>
      <exception cref="T:DotNetOpenAuth.Messaging.ProtocolException">Thrown when the response is not valid.</exception>
    </member>
    <member name="M:DotNetOpenAuth.Messaging.Channel.CreateHttpRequest(DotNetOpenAuth.Messaging.IDirectedProtocolMessage)">
      <summary>
            Prepares an HTTP request that carries a given message.
            </summary>
      <param name="request">The message to send.</param>
      <returns>The <see cref="T:System.Net.HttpWebRequest" /> prepared to send the request.</returns>
      <remarks>
            This method must be overridden by a derived class, unless the <see cref="M:DotNetOpenAuth.Messaging.Channel.RequestCore(DotNetOpenAuth.Messaging.IDirectedProtocolMessage)" /> method
            is overridden and does not require this method.
            </remarks>
    </member>
    <member name="M:DotNetOpenAuth.Messaging.Channel.PrepareDirectResponse(DotNetOpenAuth.Messaging.IProtocolMessage)">
      <summary>
            Queues a message for sending in the response stream where the fields
            are sent in the response stream in querystring style.
            </summary>
      <param name="response">The message to send as a response.</param>
      <returns>The pending user agent redirect based message to be sent as an HttpResponse.</returns>
      <remarks>
            This method implements spec OAuth V1.0 section 5.3.
            </remarks>
    </member>
    <member name="M:DotNetOpenAuth.Messaging.Channel.ProcessOutgoingMessage(DotNetOpenAuth.Messaging.IProtocolMessage)">
      <summary>
            Prepares a message for transmit by applying signatures, nonces, etc.
            </summary>
      <param name="message">The message to prepare for sending.</param>
      <remarks>
            This method should NOT be called by derived types
            except when sending ONE WAY request messages.
            </remarks>
    </member>
    <member name="M:DotNetOpenAuth.Messaging.Channel.InitializeRequestAsGet(DotNetOpenAuth.Messaging.IDirectedProtocolMessage)">
      <summary>
            Prepares to send a request to the Service Provider as the query string in a GET request.
            </summary>
      <param name="requestMessage">The message to be transmitted to the ServiceProvider.</param>
      <returns>The web request ready to send.</returns>
      <remarks>
            This method is simply a standard HTTP Get request with the message parts serialized to the query string.
            This method satisfies OAuth 1.0 section 5.2, item #3.
            </remarks>
    </member>
    <member name="M:DotNetOpenAuth.Messaging.Channel.InitializeRequestAsPost(DotNetOpenAuth.Messaging.IDirectedProtocolMessage)">
      <summary>
            Prepares to send a request to the Service Provider as the payload of a POST request.
            </summary>
      <param name="requestMessage">The message to be transmitted to the ServiceProvider.</param>
      <returns>The web request ready to send.</returns>
      <remarks>
            This method is simply a standard HTTP POST request with the message parts serialized to the POST entity
            with the application/x-www-form-urlencoded content type
            This method satisfies OAuth 1.0 section 5.2, item #2 and OpenID 2.0 section 4.1.2.
            </remarks>
    </member>
    <member name="M:DotNetOpenAuth.Messaging.Channel.InitializeRequestAsPut(DotNetOpenAuth.Messaging.IDirectedProtocolMessage)">
      <summary>
            Prepares to send a request to the Service Provider as the query string in a PUT request.
            </summary>
      <param name="requestMessage">The message to be transmitted to the ServiceProvider.</param>
      <returns>The web request ready to send.</returns>
      <remarks>
            This method is simply a standard HTTP PUT request with the message parts serialized to the query string.
            </remarks>
    </member>
    <member name="M:DotNetOpenAuth.Messaging.Channel.InitializeRequestAsDelete(DotNetOpenAuth.Messaging.IDirectedProtocolMessage)">
      <summary>
            Prepares to send a request to the Service Provider as the query string in a DELETE request.
            </summary>
      <param name="requestMessage">The message to be transmitted to the ServiceProvider.</param>
      <returns>The web request ready to send.</returns>
      <remarks>
            This method is simply a standard HTTP DELETE request with the message parts serialized to the query string.
            </remarks>
    </member>
    <member name="M:DotNetOpenAuth.Messaging.Channel.SendParametersInEntity(System.Net.HttpWebRequest,System.Collections.Generic.IDictionary{System.String,System.String})">
      <summary>
            Sends the given parameters in the entity stream of an HTTP request.
            </summary>
      <param name="httpRequest">The HTTP request.</param>
      <param name="fields">The parameters to send.</param>
      <remarks>
            This method calls <see cref="M:System.Net.HttpWebRequest.GetRequestStream" /> and closes
            the request stream, but does not call <see cref="M:System.Net.HttpWebRequest.GetResponse" />.
            </remarks>
    </member>
    <member name="M:DotNetOpenAuth.Messaging.Channel.ProcessIncomingMessage(DotNetOpenAuth.Messaging.IProtocolMessage)">
      <summary>
            Verifies the integrity and applicability of an incoming message.
            </summary>
      <param name="message">The message just received.</param>
      <exception cref="T:DotNetOpenAuth.Messaging.ProtocolException">
            Thrown when the message is somehow invalid.
            This can be due to tampering, replay attack or expiration, among other things.
            </exception>
    </member>
    <member name="M:DotNetOpenAuth.Messaging.Channel.CustomizeBindingElementOrder(System.Collections.Generic.IEnumerable{DotNetOpenAuth.Messaging.IChannelBindingElement},System.Collections.Generic.IEnumerable{DotNetOpenAuth.Messaging.IChannelBindingElement})">
      <summary>
            Customizes the binding element order for outgoing and incoming messages.
            </summary>
      <param name="outgoingOrder">The outgoing order.</param>
      <param name="incomingOrder">The incoming order.</param>
      <remarks>
            No binding elements can be added or removed from the channel using this method.
            Only a customized order is allowed.
            </remarks>
      <exception cref="T:System.ArgumentException">Thrown if a binding element is new or missing in one of the ordered lists.</exception>
    </member>
    <member name="M:DotNetOpenAuth.Messaging.Channel.ObjectInvariant">
      <summary>
            Verifies conditions that should be true for any valid state of this object.
            </summary>
    </member>
    <member name="M:DotNetOpenAuth.Messaging.Channel.ValidateAndPrepareBindingElements(System.Collections.Generic.IEnumerable{DotNetOpenAuth.Messaging.IChannelBindingElement})">
      <summary>
            Ensures a consistent and secure set of binding elements and 
            sorts them as necessary for a valid sequence of operations.
            </summary>
      <param name="elements">The binding elements provided to the channel.</param>
      <returns>The properly ordered list of elements.</returns>
      <exception cref="T:DotNetOpenAuth.Messaging.ProtocolException">Thrown when the binding elements are incomplete or inconsistent with each other.</exception>
    </member>
    <member name="M:DotNetOpenAuth.Messaging.Channel.BindingElementOutgoingMessageApplicationOrder(DotNetOpenAuth.Messaging.MessageProtections,DotNetOpenAuth.Messaging.MessageProtections)">
      <summary>
            Puts binding elements in their correct outgoing message processing order.
            </summary>
      <param name="protection1">The first protection type to compare.</param>
      <param name="protection2">The second protection type to compare.</param>
      <returns>
            -1 if <paramref name="element1" /> should be applied to an outgoing message before <paramref name="element2" />.
            1 if <paramref name="element2" /> should be applied to an outgoing message before <paramref name="element1" />.
            0 if it doesn't matter.
            </returns>
    </member>
    <member name="M:DotNetOpenAuth.Messaging.Channel.EnsureValidMessageParts(DotNetOpenAuth.Messaging.IProtocolMessage)">
      <summary>
            Verifies that all required message parts are initialized to values
            prior to sending the message to a remote party.
            </summary>
      <param name="message">The message to verify.</param>
      <exception cref="T:DotNetOpenAuth.Messaging.ProtocolException">
            Thrown when any required message part does not have a value.
            </exception>
    </member>
    <member name="M:DotNetOpenAuth.Messaging.Channel.IsBindingElementOrderValid(System.Collections.Generic.IEnumerable{DotNetOpenAuth.Messaging.IChannelBindingElement})">
      <summary>
            Determines whether a given ordered list of binding elements includes every
            binding element in this channel exactly once.
            </summary>
      <param name="order">The list of binding elements to test.</param>
      <returns>
        <c>true</c> if the given list is a valid description of a binding element ordering; otherwise, <c>false</c>.
            </returns>
      <pure />
    </member>
    <member name="E:DotNetOpenAuth.Messaging.Channel.Sending">
      <summary>
            An event fired whenever a message is about to be encoded and sent.
            </summary>
    </member>
    <member name="P:DotNetOpenAuth.Messaging.Channel.WebRequestHandler">
      <summary>
            Gets or sets an instance to a <see cref="T:DotNetOpenAuth.Messaging.IDirectWebRequestHandler" /> that will be used when 
            submitting HTTP requests and waiting for responses.
            </summary>
      <remarks>
            This defaults to a straightforward implementation, but can be set
            to a mock object for testing purposes.
            </remarks>
    </member>
    <member name="P:DotNetOpenAuth.Messaging.Channel.MessageDescriptions">
      <summary>
            Gets or sets the message descriptions.
            </summary>
    </member>
    <member name="P:DotNetOpenAuth.Messaging.Channel.BindingElements">
      <summary>
            Gets the binding elements used by this channel, in no particular guaranteed order.
            </summary>
    </member>
    <member name="P:DotNetOpenAuth.Messaging.Channel.OutgoingBindingElements">
      <summary>
            Gets the binding elements used by this channel, in the order applied to outgoing messages.
            </summary>
    </member>
    <member name="P:DotNetOpenAuth.Messaging.Channel.IncomingBindingElements">
      <summary>
            Gets the binding elements used by this channel, in the order applied to incoming messages.
            </summary>
    </member>
    <member name="P:DotNetOpenAuth.Messaging.Channel.IsDisposed">
      <summary>
            Gets or sets a value indicating whether this instance is disposed.
            </summary>
      <value>
        <c>true</c> if this instance is disposed; otherwise, <c>false</c>.
            </value>
    </member>
    <member name="P:DotNetOpenAuth.Messaging.Channel.MessageFactory">
      <summary>
            Gets a tool that can figure out what kind of message is being received
            so it can be deserialized.
            </summary>
    </member>
    <member name="P:DotNetOpenAuth.Messaging.Channel.CachePolicy">
      <summary>
            Gets or sets the cache policy to use for direct message requests.
            </summary>
      <value>Default is <see cref="F:System.Net.Cache.HttpRequestCacheLevel.NoCacheNoStore" />.</value>
    </member>
    <member name="M:DotNetOpenAuth.Messaging.ChannelContract.#ctor">
      <summary>
            Prevents a default instance of the ChannelContract class from being created.
            </summary>
    </member>
    <member name="M:DotNetOpenAuth.Messaging.ChannelContract.ReadFromResponseCore(DotNetOpenAuth.Messaging.IncomingWebResponse)">
      <summary>
            Gets the protocol message that may be in the given HTTP response.
            </summary>
      <param name="response">The response that is anticipated to contain an protocol message.</param>
      <returns>
            The deserialized message parts, if found.  Null otherwise.
            </returns>
      <exception cref="T:DotNetOpenAuth.Messaging.ProtocolException">Thrown when the response is not valid.</exception>
    </member>
    <member name="M:DotNetOpenAuth.Messaging.ChannelContract.PrepareDirectResponse(DotNetOpenAuth.Messaging.IProtocolMessage)">
      <summary>
            Queues a message for sending in the response stream where the fields
            are sent in the response stream in querystring style.
            </summary>
      <param name="response">The message to send as a response.</param>
      <returns>
            The pending user agent redirect based message to be sent as an HttpResponse.
            </returns>
      <remarks>
            This method implements spec V1.0 section 5.3.
            </remarks>
    </member>
    <member name="T:DotNetOpenAuth.Messaging.DirectWebRequestOptions">
      <summary>
            A set of flags that can control the behavior of an individual web request.
            </summary>
    </member>
    <member name="F:DotNetOpenAuth.Messaging.DirectWebRequestOptions.None">
      <summary>
            Indicates that default <see cref="T:System.Net.HttpWebRequest" /> behavior is required.
            </summary>
    </member>
    <member name="F:DotNetOpenAuth.Messaging.DirectWebRequestOptions.AcceptAllHttpResponses">
      <summary>
            Indicates that any response from the remote server, even those
            with HTTP status codes that indicate errors, should not result
            in a thrown exception.
            </summary>
      <remarks>
            Even with this flag set, <see cref="T:DotNetOpenAuth.Messaging.ProtocolException" /> should
            be thrown when an HTTP protocol error occurs (i.e. timeouts).
            </remarks>
    </member>
    <member name="F:DotNetOpenAuth.Messaging.DirectWebRequestOptions.RequireSsl">
      <summary>
            Indicates that the HTTP request must be completed entirely 
            using SSL (including any redirects).
            </summary>
    </member>
    <member name="T:DotNetOpenAuth.Messaging.EnumerableCacheExtensions">
      <summary>
            Extension methods for <see cref="T:System.Collections.Generic.IEnumerable`1" /> types.
            </summary>
    </member>
    <member name="M:DotNetOpenAuth.Messaging.EnumerableCacheExtensions.CacheGeneratedResults``1(System.Collections.Generic.IEnumerable{``0})">
      <summary>
            Caches the results of enumerating over a given object so that subsequence enumerations
            don't require interacting with the object a second time.
            </summary>
      <typeparam name="T">The type of element found in the enumeration.</typeparam>
      <param name="sequence">The enumerable object.</param>
      <returns>
            Either a new enumerable object that caches enumerated results, or the original, <paramref name="sequence" />
            object if no caching is necessary to avoid additional CPU work.
            </returns>
      <remarks>
        <para>This is designed for use on the results of generator methods (the ones with <c>yield return</c> in them)
            so that only those elements in the sequence that are needed are ever generated, while not requiring
            regeneration of elements that are enumerated over multiple times.</para>
        <para>This can be a huge performance gain if enumerating multiple times over an expensive generator method.</para>
        <para>Some enumerable types such as collections, lists, and already-cached generators do not require
            any (additional) caching, and this method will simply return those objects rather than caching them
            to avoid double-caching.</para>
      </remarks>
    </member>
    <member name="T:DotNetOpenAuth.Messaging.EnumerableCacheExtensions.EnumerableCache`1">
      <summary>
            A wrapper for <see cref="T:System.Collections.Generic.IEnumerable`1" /> types and returns a caching <see cref="T:System.Collections.Generic.IEnumerator`1" />
            from its <see cref="M:System.Collections.Generic.IEnumerable`1.GetEnumerator" /> method.
            </summary>
      <typeparam name="T">The type of element in the sequence.</typeparam>
    </member>
    <member name="F:DotNetOpenAuth.Messaging.EnumerableCacheExtensions.EnumerableCache`1.cache">
      <summary>
            The results from enumeration of the live object that have been collected thus far.
            </summary>
    </member>
    <member name="F:DotNetOpenAuth.Messaging.EnumerableCacheExtensions.EnumerableCache`1.generator">
      <summary>
            The original generator method or other enumerable object whose contents should only be enumerated once.
            </summary>
    </member>
    <member name="F:DotNetOpenAuth.Messaging.EnumerableCacheExtensions.EnumerableCache`1.generatorEnumerator">
      <summary>
            The enumerator we're using over the generator method's results.
            </summary>
    </member>
    <member name="F:DotNetOpenAuth.Messaging.EnumerableCacheExtensions.EnumerableCache`1.generatorLock">
      <summary>
            The sync object our caching enumerators use when adding a new live generator method result to the cache.
            </summary>
      <remarks>
            Although individual enumerators are not thread-safe, this <see cref="T:System.Collections.Generic.IEnumerable`1" /> should be
            thread safe so that multiple enumerators can be created from it and used from different threads.
            </remarks>
    </member>
    <member name="M:DotNetOpenAuth.Messaging.EnumerableCacheExtensions.EnumerableCache`1.#ctor(System.Collections.Generic.IEnumerable{`0})">
      <summary>
            Initializes a new instance of the EnumerableCache class.
            </summary>
      <param name="generator">The generator.</param>
    </member>
    <member name="M:DotNetOpenAuth.Messaging.EnumerableCacheExtensions.EnumerableCache`1.GetEnumerator">
      <summary>
            Returns an enumerator that iterates through the collection.
            </summary>
      <returns>
            A <see cref="T:System.Collections.Generic.IEnumerator`1" /> that can be used to iterate through the collection.
            </returns>
      <ensures inheritedFrom="M:System.Collections.Generic.IEnumerable`1.GetEnumerator" inheritedFromTypeName="IEnumerable">Contract.Result&lt;IEnumerator&lt;T&gt;&gt;() != null</ensures>
    </member>
    <member name="M:DotNetOpenAuth.Messaging.EnumerableCacheExtensions.EnumerableCache`1.System#Collections#IEnumerable#GetEnumerator">
      <summary>
            Returns an enumerator that iterates through a collection.
            </summary>
      <returns>
            An <see cref="T:System.Collections.IEnumerator" /> object that can be used to iterate through the collection.
            </returns>
      <ensures inheritedFrom="M:System.Collections.IEnumerable.GetEnumerator" inheritedFromTypeName="IEnumerable">Contract.Result&lt;IEnumerator&gt;() != null</ensures>
    </member>
    <member name="T:DotNetOpenAuth.Messaging.EnumerableCacheExtensions.EnumerableCache`1.EnumeratorCache">
      <summary>
            An enumerator that uses cached enumeration results whenever they are available,
            and caches whatever results it has to pull from the original <see cref="T:System.Collections.Generic.IEnumerable`1" /> object.
            </summary>
    </member>
    <member name="F:DotNetOpenAuth.Messaging.EnumerableCacheExtensions.EnumerableCache`1.EnumeratorCache.parent">
      <summary>
            The parent enumeration wrapper class that stores the cached results.
            </summary>
    </member>
    <member name="F:DotNetOpenAuth.Messaging.EnumerableCacheExtensions.EnumerableCache`1.EnumeratorCache.cachePosition">
      <summary>
            The position of this enumerator in the cached list.
            </summary>
    </member>
    <member name="M:DotNetOpenAuth.Messaging.EnumerableCacheExtensions.EnumerableCache`1.EnumeratorCache.#ctor(DotNetOpenAuth.Messaging.EnumerableCacheExtensions.EnumerableCache{`0})">
      <summary>
            Initializes a new instance of the <see cref="T:DotNetOpenAuth.Messaging.EnumerableCacheExtensions.EnumerableCache`1.EnumeratorCache" /> class.
            </summary>
      <param name="parent">The parent cached enumerable whose GetEnumerator method is calling this constructor.</param>
    </member>
    <member name="M:DotNetOpenAuth.Messaging.EnumerableCacheExtensions.EnumerableCache`1.EnumeratorCache.Dispose">
      <summary>
            Performs application-defined tasks associated with freeing, releasing, or resetting unmanaged resources.
            </summary>
    </member>
    <member name="M:DotNetOpenAuth.Messaging.EnumerableCacheExtensions.EnumerableCache`1.EnumeratorCache.MoveNext">
      <summary>
            Advances the enumerator to the next element of the collection.
            </summary>
      <returns>
            true if the enumerator was successfully advanced to the next element; false if the enumerator has passed the end of the collection.
            </returns>
      <exception cref="T:System.InvalidOperationException">
            The collection was modified after the enumerator was created.
            </exception>
    </member>
    <member name="M:DotNetOpenAuth.Messaging.EnumerableCacheExtensions.EnumerableCache`1.EnumeratorCache.Reset">
      <summary>
            Sets the enumerator to its initial position, which is before the first element in the collection.
            </summary>
      <exception cref="T:System.InvalidOperationException">
            The collection was modified after the enumerator was created.
            </exception>
    </member>
    <member name="M:DotNetOpenAuth.Messaging.EnumerableCacheExtensions.EnumerableCache`1.EnumeratorCache.Dispose(System.Boolean)">
      <summary>
            Releases unmanaged and - optionally - managed resources
            </summary>
      <param name="disposing">
        <c>true</c> to release both managed and unmanaged resources; <c>false</c> to release only unmanaged resources.</param>
    </member>
    <member name="P:DotNetOpenAuth.Messaging.EnumerableCacheExtensions.EnumerableCache`1.EnumeratorCache.Current">
      <summary>
            Gets the element in the collection at the current position of the enumerator.
            </summary>
      <returns>
            The element in the collection at the current position of the enumerator.
            </returns>
    </member>
    <member name="P:DotNetOpenAuth.Messaging.EnumerableCacheExtensions.EnumerableCache`1.EnumeratorCache.System#Collections#IEnumerator#Current">
      <summary>
            Gets the element in the collection at the current position of the enumerator.
            </summary>
      <returns>
            The element in the collection at the current position of the enumerator.
            </returns>
    </member>
    <member name="T:DotNetOpenAuth.Messaging.HostErrorException">
      <summary>
            An exception to call out a configuration or runtime failure on the part of the
            (web) application that is hosting this library.
            </summary>
      <remarks>
        <para>This exception is used rather than <see cref="T:DotNetOpenAuth.Messaging.ProtocolException" /> for those errors
            that should never be caught because they indicate a major error in the app itself
            or its configuration.</para>
        <para>It is an internal exception to assist in making it uncatchable.</para>
      </remarks>
    </member>
    <member name="M:DotNetOpenAuth.Messaging.HostErrorException.#ctor">
      <summary>
            Initializes a new instance of the <see cref="T:DotNetOpenAuth.Messaging.HostErrorException" /> class.
            </summary>
    </member>
    <member name="M:DotNetOpenAuth.Messaging.HostErrorException.#ctor(System.String)">
      <summary>
            Initializes a new instance of the <see cref="T:DotNetOpenAuth.Messaging.HostErrorException" /> class.
            </summary>
      <param name="message">The message.</param>
    </member>
    <member name="M:DotNetOpenAuth.Messaging.HostErrorException.#ctor(System.String,System.Exception)">
      <summary>
            Initializes a new instance of the <see cref="T:DotNetOpenAuth.Messaging.HostErrorException" /> class.
            </summary>
      <param name="message">The message.</param>
      <param name="inner">The inner exception.</param>
    </member>
    <member name="M:DotNetOpenAuth.Messaging.HostErrorException.#ctor(System.Runtime.Serialization.SerializationInfo,System.Runtime.Serialization.StreamingContext)">
      <summary>
            Initializes a new instance of the <see cref="T:DotNetOpenAuth.Messaging.HostErrorException" /> class.
            </summary>
      <param name="info">The <see cref="T:System.Runtime.Serialization.SerializationInfo" /> that holds the serialized object data about the exception being thrown.</param>
      <param name="context">The <see cref="T:System.Runtime.Serialization.StreamingContext" /> that contains contextual information about the source or destination.</param>
      <exception cref="T:System.ArgumentNullException">
            The <paramref name="info" /> parameter is null.
            </exception>
      <exception cref="T:System.Runtime.Serialization.SerializationException">
            The class name is null or <see cref="P:System.Exception.HResult" /> is zero (0).
            </exception>
    </member>
    <member name="T:DotNetOpenAuth.Messaging.IHttpDirectResponse">
      <summary>
            An interface that allows direct response messages to specify
            HTTP transport specific properties.
            </summary>
    </member>
    <member name="P:DotNetOpenAuth.Messaging.IHttpDirectResponse.HttpStatusCode">
      <summary>
            Gets the HTTP status code that the direct respones should be sent with.
            </summary>
    </member>
    <member name="T:DotNetOpenAuth.Messaging.IExtensionMessage">
      <summary>
            An interface that extension messages must implement.
            </summary>
    </member>
    <member name="T:DotNetOpenAuth.Messaging.IMessage">
      <summary>
            The interface that classes must implement to be serialized/deserialized
            as protocol or extension messages.
            </summary>
    </member>
    <member name="M:DotNetOpenAuth.Messaging.IMessage.EnsureValidMessage">
      <summary>
            Checks the message state for conformity to the protocol specification
            and throws an exception if the message is invalid.
            </summary>
      <remarks>
        <para>Some messages have required fields, or combinations of fields that must relate to each other
            in specialized ways.  After deserializing a message, this method checks the state of the 
            message to see if it conforms to the protocol.</para>
        <para>Note that this property should <i>not</i> check signatures or perform any state checks
            outside this scope of this particular message.</para>
      </remarks>
      <exception cref="T:DotNetOpenAuth.Messaging.ProtocolException">Thrown if the message is invalid.</exception>
    </member>
    <member name="P:DotNetOpenAuth.Messaging.IMessage.Version">
      <summary>
            Gets the version of the protocol or extension this message is prepared to implement.
            </summary>
      <remarks>
            Implementations of this interface should ensure that this property never returns null.
            </remarks>
    </member>
    <member name="P:DotNetOpenAuth.Messaging.IMessage.ExtraData">
      <summary>
            Gets the extra, non-standard Protocol parameters included in the message.
            </summary>
      <remarks>
            Implementations of this interface should ensure that this property never returns null.
            </remarks>
    </member>
    <member name="T:DotNetOpenAuth.Messaging.IMessageContract">
      <summary>
            Code contract for the <see cref="T:DotNetOpenAuth.Messaging.IMessage" /> interface.
            </summary>
    </member>
    <member name="M:DotNetOpenAuth.Messaging.IMessageContract.DotNetOpenAuth#Messaging#IMessage#EnsureValidMessage">
      <summary>
            Checks the message state for conformity to the protocol specification
            and throws an exception if the message is invalid.
            </summary>
      <remarks>
        <para>Some messages have required fields, or combinations of fields that must relate to each other
            in specialized ways.  After deserializing a message, this method checks the state of the
            message to see if it conforms to the protocol.</para>
        <para>Note that this property should <i>not</i> check signatures or perform any state checks
            outside this scope of this particular message.</para>
      </remarks>
      <exception cref="T:DotNetOpenAuth.Messaging.ProtocolException">Thrown if the message is invalid.</exception>
    </member>
    <member name="P:DotNetOpenAuth.Messaging.IMessageContract.DotNetOpenAuth#Messaging#IMessage#Version">
      <summary>
            Gets the version of the protocol or extension this message is prepared to implement.
            </summary>
    </member>
    <member name="P:DotNetOpenAuth.Messaging.IMessageContract.DotNetOpenAuth#Messaging#IMessage#ExtraData">
      <summary>
            Gets the extra, non-standard Protocol parameters included in the message.
            </summary>
      <value />
      <remarks>
            Implementations of this interface should ensure that this property never returns null.
            </remarks>
    </member>
    <member name="T:DotNetOpenAuth.Messaging.IDirectResponseProtocolMessage">
      <summary>
            Undirected messages that serve as direct responses to direct requests.
            </summary>
    </member>
    <member name="T:DotNetOpenAuth.Messaging.IProtocolMessage">
      <summary>
            The interface that classes must implement to be serialized/deserialized
            as protocol messages.
            </summary>
    </member>
    <member name="P:DotNetOpenAuth.Messaging.IProtocolMessage.RequiredProtection">
      <summary>
            Gets the level of protection this message requires.
            </summary>
    </member>
    <member name="P:DotNetOpenAuth.Messaging.IProtocolMessage.Transport">
      <summary>
            Gets a value indicating whether this is a direct or indirect message.
            </summary>
    </member>
    <member name="P:DotNetOpenAuth.Messaging.IDirectResponseProtocolMessage.OriginatingRequest">
      <summary>
            Gets the originating request message that caused this response to be formed.
            </summary>
    </member>
    <member name="T:DotNetOpenAuth.Messaging.EmptyDictionary`2">
      <summary>
            An empty dictionary.  Useful for avoiding memory allocations in creating new dictionaries to represent empty ones.
            </summary>
      <typeparam name="TKey">The type of the key.</typeparam>
      <typeparam name="TValue">The type of the value.</typeparam>
    </member>
    <member name="F:DotNetOpenAuth.Messaging.EmptyDictionary`2.Instance">
      <summary>
            The singleton instance of the empty dictionary.
            </summary>
    </member>
    <member name="M:DotNetOpenAuth.Messaging.EmptyDictionary`2.#ctor">
      <summary>
            Prevents a default instance of the EmptyDictionary class from being created.
            </summary>
    </member>
    <member name="M:DotNetOpenAuth.Messaging.EmptyDictionary`2.Add(`0,`1)">
      <summary>
            Adds an element with the provided key and value to the <see cref="T:System.Collections.Generic.IDictionary`2" />.
            </summary>
      <param name="key">The object to use as the key of the element to add.</param>
      <param name="value">The object to use as the value of the element to add.</param>
      <exception cref="T:System.ArgumentNullException">
        <paramref name="key" /> is null.
            </exception>
      <exception cref="T:System.ArgumentException">
            An element with the same key already exists in the <see cref="T:System.Collections.Generic.IDictionary`2" />.
            </exception>
      <exception cref="T:System.NotSupportedException">
            The <see cref="T:System.Collections.Generic.IDictionary`2" /> is read-only.
            </exception>
    </member>
    <member name="M:DotNetOpenAuth.Messaging.EmptyDictionary`2.ContainsKey(`0)">
      <summary>
            Determines whether the <see cref="T:System.Collections.Generic.IDictionary`2" /> contains an element with the specified key.
            </summary>
      <param name="key">The key to locate in the <see cref="T:System.Collections.Generic.IDictionary`2" />.</param>
      <returns>
            true if the <see cref="T:System.Collections.Generic.IDictionary`2" /> contains an element with the key; otherwise, false.
            </returns>
      <exception cref="T:System.ArgumentNullException">
        <paramref name="key" /> is null.
            </exception>
      <ensures inheritedFrom="M:System.Collections.Generic.IDictionary`2.ContainsKey(`0)" inheritedFromTypeName="IDictionary">!Contract.Result&lt;bool&gt;() || @this.Count &gt; 0</ensures>
    </member>
    <member name="M:DotNetOpenAuth.Messaging.EmptyDictionary`2.Remove(`0)">
      <summary>
            Removes the element with the specified key from the <see cref="T:System.Collections.Generic.IDictionary`2" />.
            </summary>
      <param name="key">The key of the element to remove.</param>
      <returns>
            true if the element is successfully removed; otherwise, false.  This method also returns false if <paramref name="key" /> was not found in the original <see cref="T:System.Collections.Generic.IDictionary`2" />.
            </returns>
      <exception cref="T:System.ArgumentNullException">
        <paramref name="key" /> is null.
            </exception>
      <exception cref="T:System.NotSupportedException">
            The <see cref="T:System.Collections.Generic.IDictionary`2" /> is read-only.
            </exception>
    </member>
    <member name="M:DotNetOpenAuth.Messaging.EmptyDictionary`2.TryGetValue(`0,`1@)">
      <summary>
            Gets the value associated with the specified key.
            </summary>
      <param name="key">The key whose value to get.</param>
      <param name="value">When this method returns, the value associated with the specified key, if the key is found; otherwise, the default value for the type of the <paramref name="value" /> parameter. This parameter is passed uninitialized.</param>
      <returns>
            true if the object that implements <see cref="T:System.Collections.Generic.IDictionary`2" /> contains an element with the specified key; otherwise, false.
            </returns>
      <exception cref="T:System.ArgumentNullException">
        <paramref name="key" /> is null.
            </exception>
      <ensures inheritedFrom="M:System.Collections.Generic.IDictionary`2.TryGetValue(`0,`1@)" inheritedFromTypeName="IDictionary">Contract.Result&lt;bool&gt;() == @this.ContainsKey(key)</ensures>
    </member>
    <member name="M:DotNetOpenAuth.Messaging.EmptyDictionary`2.Add(System.Collections.Generic.KeyValuePair{`0,`1})">
      <summary>
            Adds an item to the <see cref="T:System.Collections.Generic.ICollection`1" />.
            </summary>
      <param name="item">The object to add to the <see cref="T:System.Collections.Generic.ICollection`1" />.</param>
      <exception cref="T:System.NotSupportedException">
            The <see cref="T:System.Collections.Generic.ICollection`1" /> is read-only.
            </exception>
      <ensures inheritedFrom="M:System.Collections.Generic.ICollection`1.Add(`0)" inheritedFromTypeName="ICollection">@this.Count == Contract.OldValue(@this.Count) + 1</ensures>
    </member>
    <member name="M:DotNetOpenAuth.Messaging.EmptyDictionary`2.Clear">
      <summary>
            Removes all items from the <see cref="T:System.Collections.Generic.ICollection`1" />.
            </summary>
      <exception cref="T:System.NotSupportedException">
            The <see cref="T:System.Collections.Generic.ICollection`1" /> is read-only.
            </exception>
      <ensures inheritedFrom="M:System.Collections.Generic.ICollection`1.Clear" inheritedFromTypeName="ICollection">@this.Count == 0</ensures>
    </member>
    <member name="M:DotNetOpenAuth.Messaging.EmptyDictionary`2.Contains(System.Collections.Generic.KeyValuePair{`0,`1})">
      <summary>
            Determines whether the <see cref="T:System.Collections.Generic.ICollection`1" /> contains a specific value.
            </summary>
      <param name="item">The object to locate in the <see cref="T:System.Collections.Generic.ICollection`1" />.</param>
      <returns>
            true if <paramref name="item" /> is found in the <see cref="T:System.Collections.Generic.ICollection`1" />; otherwise, false.
            </returns>
      <ensures inheritedFrom="M:System.Collections.Generic.ICollection`1.Contains(`0)" inheritedFromTypeName="ICollection">!Contract.Result&lt;bool&gt;() || @this.Count &gt; 0</ensures>
    </member>
    <member name="M:DotNetOpenAuth.Messaging.EmptyDictionary`2.CopyTo(System.Collections.Generic.KeyValuePair{`0,`1}[],System.Int32)">
      <summary>
            Copies the elements of the <see cref="T:System.Collections.Generic.ICollection`1" /> to an <see cref="T:System.Array" />, starting at a particular <see cref="T:System.Array" /> index.
            </summary>
      <param name="array">The one-dimensional <see cref="T:System.Array" /> that is the destination of the elements copied from <see cref="T:System.Collections.Generic.ICollection`1" />. The <see cref="T:System.Array" /> must have zero-based indexing.</param>
      <param name="arrayIndex">The zero-based index in <paramref name="array" /> at which copying begins.</param>
      <exception cref="T:System.ArgumentNullException">
        <paramref name="array" /> is null.
            </exception>
      <exception cref="T:System.ArgumentOutOfRangeException">
        <paramref name="arrayIndex" /> is less than 0.
            </exception>
      <exception cref="T:System.ArgumentException">
        <paramref name="array" /> is multidimensional.
            -or-
            <paramref name="arrayIndex" /> is equal to or greater than the length of <paramref name="array" />.
            -or-
            The number of elements in the source <see cref="T:System.Collections.Generic.ICollection`1" /> is greater than the available space from <paramref name="arrayIndex" /> to the end of the destination <paramref name="array" />.
            -or-
            Type <paramref name="T" /> cannot be cast automatically to the type of the destination <paramref name="array" />.
            </exception>
      <requires inheritedFrom="M:System.Collections.Generic.ICollection`1.CopyTo(`0[],System.Int32)" inheritedFromTypeName="ICollection">array != null</requires>
      <requires inheritedFrom="M:System.Collections.Generic.ICollection`1.CopyTo(`0[],System.Int32)" inheritedFromTypeName="ICollection">arrayIndex &gt;= 0</requires>
      <requires inheritedFrom="M:System.Collections.Generic.ICollection`1.CopyTo(`0[],System.Int32)" inheritedFromTypeName="ICollection">arrayIndex + @this.Count  &lt;= array.Length</requires>
    </member>
    <member name="M:DotNetOpenAuth.Messaging.EmptyDictionary`2.Remove(System.Collections.Generic.KeyValuePair{`0,`1})">
      <summary>
            Removes the first occurrence of a specific object from the <see cref="T:System.Collections.Generic.ICollection`1" />.
            </summary>
      <param name="item">The object to remove from the <see cref="T:System.Collections.Generic.ICollection`1" />.</param>
      <returns>
            true if <paramref name="item" /> was successfully removed from the <see cref="T:System.Collections.Generic.ICollection`1" />; otherwise, false. This method also returns false if <paramref name="item" /> is not found in the original <see cref="T:System.Collections.Generic.ICollection`1" />.
            </returns>
      <exception cref="T:System.NotSupportedException">
            The <see cref="T:System.Collections.Generic.ICollection`1" /> is read-only.
            </exception>
    </member>
    <member name="M:DotNetOpenAuth.Messaging.EmptyDictionary`2.GetEnumerator">
      <summary>
            Returns an enumerator that iterates through the collection.
            </summary>
      <returns>
            A <see cref="T:System.Collections.Generic.IEnumerator`1" /> that can be used to iterate through the collection.
            </returns>
      <ensures inheritedFrom="M:System.Collections.Generic.IEnumerable`1.GetEnumerator" inheritedFromTypeName="IEnumerable">Contract.Result&lt;IEnumerator&lt;T&gt;&gt;() != null</ensures>
    </member>
    <member name="M:DotNetOpenAuth.Messaging.EmptyDictionary`2.System#Collections#IEnumerable#GetEnumerator">
      <summary>
            Returns an enumerator that iterates through a collection.
            </summary>
      <returns>
            An <see cref="T:System.Collections.IEnumerator" /> object that can be used to iterate through the collection.
            </returns>
      <ensures inheritedFrom="M:System.Collections.IEnumerable.GetEnumerator" inheritedFromTypeName="IEnumerable">Contract.Result&lt;IEnumerator&gt;() != null</ensures>
    </member>
    <member name="P:DotNetOpenAuth.Messaging.EmptyDictionary`2.Values">
      <summary>
            Gets an <see cref="T:System.Collections.Generic.ICollection`1" /> containing the values in the <see cref="T:System.Collections.Generic.IDictionary`2" />.
            </summary>
      <value />
      <returns>
            An <see cref="T:System.Collections.Generic.ICollection`1" /> containing the values in the object that implements <see cref="T:System.Collections.Generic.IDictionary`2" />.
            </returns>
      <getter>
        <ensures inheritedFrom="M:System.Collections.Generic.IDictionary`2.get_Values" inheritedFromTypeName="IDictionary">Contract.Result&lt;ICollection&lt;TValue&gt;&gt;() != null</ensures>
      </getter>
    </member>
    <member name="P:DotNetOpenAuth.Messaging.EmptyDictionary`2.Count">
      <summary>
            Gets the number of elements contained in the <see cref="T:System.Collections.Generic.ICollection`1" />.
            </summary>
      <value />
      <returns>
            The number of elements contained in the <see cref="T:System.Collections.Generic.ICollection`1" />.
            </returns>
      <getter>
        <ensures inheritedFrom="M:System.Collections.Generic.ICollection`1.get_Count" inheritedFromTypeName="ICollection">Contract.Result&lt;int&gt;() &gt;= 0</ensures>
      </getter>
    </member>
    <member name="P:DotNetOpenAuth.Messaging.EmptyDictionary`2.IsReadOnly">
      <summary>
            Gets a value indicating whether the <see cref="T:System.Collections.Generic.ICollection`1" /> is read-only.
            </summary>
      <value />
      <returns>true if the <see cref="T:System.Collections.Generic.ICollection`1" /> is read-only; otherwise, false.
            </returns>
    </member>
    <member name="P:DotNetOpenAuth.Messaging.EmptyDictionary`2.Keys">
      <summary>
            Gets an <see cref="T:System.Collections.Generic.ICollection`1" /> containing the keys of the <see cref="T:System.Collections.Generic.IDictionary`2" />.
            </summary>
      <value />
      <returns>
            An <see cref="T:System.Collections.Generic.ICollection`1" /> containing the keys of the object that implements <see cref="T:System.Collections.Generic.IDictionary`2" />.
            </returns>
      <getter>
        <ensures inheritedFrom="M:System.Collections.Generic.IDictionary`2.get_Keys" inheritedFromTypeName="IDictionary">Contract.Result&lt;ICollection&lt;TKey&gt;&gt;() != null</ensures>
      </getter>
    </member>
    <member name="P:DotNetOpenAuth.Messaging.EmptyDictionary`2.Item(`0)">
      <summary>
            Gets or sets the value with the specified key.
            </summary>
      <param name="key">The key being read or written.</param>
    </member>
    <member name="T:DotNetOpenAuth.Messaging.EmptyEnumerator">
      <summary>
            An enumerator that always generates zero elements.
            </summary>
    </member>
    <member name="F:DotNetOpenAuth.Messaging.EmptyEnumerator.Instance">
      <summary>
            The singleton instance of this empty enumerator.
            </summary>
    </member>
    <member name="M:DotNetOpenAuth.Messaging.EmptyEnumerator.#ctor">
      <summary>
            Prevents a default instance of the <see cref="T:DotNetOpenAuth.Messaging.EmptyEnumerator" /> class from being created.
            </summary>
    </member>
    <member name="M:DotNetOpenAuth.Messaging.EmptyEnumerator.MoveNext">
      <summary>
            Advances the enumerator to the next element of the collection.
            </summary>
      <returns>
            true if the enumerator was successfully advanced to the next element; false if the enumerator has passed the end of the collection.
            </returns>
      <exception cref="T:System.InvalidOperationException">
            The collection was modified after the enumerator was created.
            </exception>
    </member>
    <member name="M:DotNetOpenAuth.Messaging.EmptyEnumerator.Reset">
      <summary>
            Sets the enumerator to its initial position, which is before the first element in the collection.
            </summary>
      <exception cref="T:System.InvalidOperationException">
            The collection was modified after the enumerator was created.
            </exception>
    </member>
    <member name="P:DotNetOpenAuth.Messaging.EmptyEnumerator.Current">
      <summary>
            Gets the current element in the collection.
            </summary>
      <value />
      <returns>
            The current element in the collection.
            </returns>
      <exception cref="T:System.InvalidOperationException">
            The enumerator is positioned before the first element of the collection or after the last element.
            </exception>
    </member>
    <member name="T:DotNetOpenAuth.Messaging.EmptyList`1">
      <summary>
            An empty, read-only list.
            </summary>
      <typeparam name="T">The type the list claims to include.</typeparam>
    </member>
    <member name="F:DotNetOpenAuth.Messaging.EmptyList`1.Instance">
      <summary>
            The singleton instance of the empty list.
            </summary>
    </member>
    <member name="M:DotNetOpenAuth.Messaging.EmptyList`1.#ctor">
      <summary>
            Prevents a default instance of the EmptyList class from being created.
            </summary>
    </member>
    <member name="M:DotNetOpenAuth.Messaging.EmptyList`1.IndexOf(`0)">
      <summary>
            Determines the index of a specific item in the <see cref="T:System.Collections.Generic.IList`1" />.
            </summary>
      <param name="item">The object to locate in the <see cref="T:System.Collections.Generic.IList`1" />.</param>
      <returns>
            The index of <paramref name="item" /> if found in the list; otherwise, -1.
            </returns>
      <ensures inheritedFrom="M:System.Collections.Generic.IList`1.IndexOf(`0)" inheritedFromTypeName="IList">Contract.Result&lt;int&gt;() &gt;= -1</ensures>
      <ensures inheritedFrom="M:System.Collections.Generic.IList`1.IndexOf(`0)" inheritedFromTypeName="IList">Contract.Result&lt;int&gt;() &lt; @this.Count</ensures>
    </member>
    <member name="M:DotNetOpenAuth.Messaging.EmptyList`1.Insert(System.Int32,`0)">
      <summary>
            Inserts an item to the <see cref="T:System.Collections.Generic.IList`1" /> at the specified index.
            </summary>
      <param name="index">The zero-based index at which <paramref name="item" /> should be inserted.</param>
      <param name="item">The object to insert into the <see cref="T:System.Collections.Generic.IList`1" />.</param>
      <exception cref="T:System.ArgumentOutOfRangeException">
        <paramref name="index" /> is not a valid index in the <see cref="T:System.Collections.Generic.IList`1" />.
            </exception>
      <exception cref="T:System.NotSupportedException">
            The <see cref="T:System.Collections.Generic.IList`1" /> is read-only.
            </exception>
      <requires inheritedFrom="M:System.Collections.Generic.IList`1.Insert(System.Int32,`0)" inheritedFromTypeName="IList">index &gt;= 0</requires>
    </member>
    <member name="M:DotNetOpenAuth.Messaging.EmptyList`1.RemoveAt(System.Int32)">
      <summary>
            Removes the <see cref="T:System.Collections.Generic.IList`1" /> item at the specified index.
            </summary>
      <param name="index">The zero-based index of the item to remove.</param>
      <exception cref="T:System.ArgumentOutOfRangeException">
        <paramref name="index" /> is not a valid index in the <see cref="T:System.Collections.Generic.IList`1" />.
            </exception>
      <exception cref="T:System.NotSupportedException">
            The <see cref="T:System.Collections.Generic.IList`1" /> is read-only.
            </exception>
      <requires inheritedFrom="M:System.Collections.Generic.IList`1.RemoveAt(System.Int32)" inheritedFromTypeName="IList">index &gt;= 0</requires>
      <requires inheritedFrom="M:System.Collections.Generic.IList`1.RemoveAt(System.Int32)" inheritedFromTypeName="IList">index &lt; @this.Count</requires>
      <ensures inheritedFrom="M:System.Collections.Generic.IList`1.RemoveAt(System.Int32)" inheritedFromTypeName="IList">@this.Count == Contract.OldValue(@this.Count) - 1</ensures>
    </member>
    <member name="M:DotNetOpenAuth.Messaging.EmptyList`1.Add(`0)">
      <summary>
            Adds an item to the <see cref="T:System.Collections.Generic.ICollection`1" />.
            </summary>
      <param name="item">The object to add to the <see cref="T:System.Collections.Generic.ICollection`1" />.</param>
      <exception cref="T:System.NotSupportedException">
            The <see cref="T:System.Collections.Generic.ICollection`1" /> is read-only.
            </exception>
      <ensures inheritedFrom="M:System.Collections.Generic.ICollection`1.Add(`0)" inheritedFromTypeName="ICollection">@this.Count == Contract.OldValue(@this.Count) + 1</ensures>
    </member>
    <member name="M:DotNetOpenAuth.Messaging.EmptyList`1.Clear">
      <summary>
            Removes all items from the <see cref="T:System.Collections.Generic.ICollection`1" />.
            </summary>
      <exception cref="T:System.NotSupportedException">
            The <see cref="T:System.Collections.Generic.ICollection`1" /> is read-only.
            </exception>
      <ensures inheritedFrom="M:System.Collections.Generic.ICollection`1.Clear" inheritedFromTypeName="ICollection">@this.Count == 0</ensures>
    </member>
    <member name="M:DotNetOpenAuth.Messaging.EmptyList`1.Contains(`0)">
      <summary>
            Determines whether the <see cref="T:System.Collections.Generic.ICollection`1" /> contains a specific value.
            </summary>
      <param name="item">The object to locate in the <see cref="T:System.Collections.Generic.ICollection`1" />.</param>
      <returns>
            true if <paramref name="item" /> is found in the <see cref="T:System.Collections.Generic.ICollection`1" />; otherwise, false.
            </returns>
      <ensures inheritedFrom="M:System.Collections.Generic.ICollection`1.Contains(`0)" inheritedFromTypeName="ICollection">!Contract.Result&lt;bool&gt;() || @this.Count &gt; 0</ensures>
    </member>
    <member name="M:DotNetOpenAuth.Messaging.EmptyList`1.CopyTo(`0[],System.Int32)">
      <summary>
            Copies the elements of the <see cref="T:System.Collections.Generic.ICollection`1" /> to an <see cref="T:System.Array" />, starting at a particular <see cref="T:System.Array" /> index.
            </summary>
      <param name="array">The one-dimensional <see cref="T:System.Array" /> that is the destination of the elements copied from <see cref="T:System.Collections.Generic.ICollection`1" />. The <see cref="T:System.Array" /> must have zero-based indexing.</param>
      <param name="arrayIndex">The zero-based index in <paramref name="array" /> at which copying begins.</param>
      <exception cref="T:System.ArgumentNullException">
        <paramref name="array" /> is null.
            </exception>
      <exception cref="T:System.ArgumentOutOfRangeException">
        <paramref name="arrayIndex" /> is less than 0.
            </exception>
      <exception cref="T:System.ArgumentException">
        <paramref name="array" /> is multidimensional.
            -or-
            <paramref name="arrayIndex" /> is equal to or greater than the length of <paramref name="array" />.
            -or-
            The number of elements in the source <see cref="T:System.Collections.Generic.ICollection`1" /> is greater than the available space from <paramref name="arrayIndex" /> to the end of the destination <paramref name="array" />.
            -or-
            Type <paramref name="T" /> cannot be cast automatically to the type of the destination <paramref name="array" />.
            </exception>
      <requires inheritedFrom="M:System.Collections.Generic.ICollection`1.CopyTo(`0[],System.Int32)" inheritedFromTypeName="ICollection">array != null</requires>
      <requires inheritedFrom="M:System.Collections.Generic.ICollection`1.CopyTo(`0[],System.Int32)" inheritedFromTypeName="ICollection">arrayIndex &gt;= 0</requires>
      <requires inheritedFrom="M:System.Collections.Generic.ICollection`1.CopyTo(`0[],System.Int32)" inheritedFromTypeName="ICollection">arrayIndex + @this.Count  &lt;= array.Length</requires>
    </member>
    <member name="M:DotNetOpenAuth.Messaging.EmptyList`1.Remove(`0)">
      <summary>
            Removes the first occurrence of a specific object from the <see cref="T:System.Collections.Generic.ICollection`1" />.
            </summary>
      <param name="item">The object to remove from the <see cref="T:System.Collections.Generic.ICollection`1" />.</param>
      <returns>
            true if <paramref name="item" /> was successfully removed from the <see cref="T:System.Collections.Generic.ICollection`1" />; otherwise, false. This method also returns false if <paramref name="item" /> is not found in the original <see cref="T:System.Collections.Generic.ICollection`1" />.
            </returns>
      <exception cref="T:System.NotSupportedException">
            The <see cref="T:System.Collections.Generic.ICollection`1" /> is read-only.
            </exception>
    </member>
    <member name="M:DotNetOpenAuth.Messaging.EmptyList`1.GetEnumerator">
      <summary>
            Returns an enumerator that iterates through the collection.
            </summary>
      <returns>
            A <see cref="T:System.Collections.Generic.IEnumerator`1" /> that can be used to iterate through the collection.
            </returns>
      <ensures inheritedFrom="M:System.Collections.Generic.IEnumerable`1.GetEnumerator" inheritedFromTypeName="IEnumerable">Contract.Result&lt;IEnumerator&lt;T&gt;&gt;() != null</ensures>
    </member>
    <member name="M:DotNetOpenAuth.Messaging.EmptyList`1.System#Collections#IEnumerable#GetEnumerator">
      <summary>
            Returns an enumerator that iterates through a collection.
            </summary>
      <returns>
            An <see cref="T:System.Collections.IEnumerator" /> object that can be used to iterate through the collection.
            </returns>
      <ensures inheritedFrom="M:System.Collections.IEnumerable.GetEnumerator" inheritedFromTypeName="IEnumerable">Contract.Result&lt;IEnumerator&gt;() != null</ensures>
    </member>
    <member name="P:DotNetOpenAuth.Messaging.EmptyList`1.Count">
      <summary>
            Gets the number of elements contained in the <see cref="T:System.Collections.Generic.ICollection`1" />.
            </summary>
      <value />
      <returns>
            The number of elements contained in the <see cref="T:System.Collections.Generic.ICollection`1" />.
            </returns>
      <getter>
        <ensures inheritedFrom="M:System.Collections.Generic.ICollection`1.get_Count" inheritedFromTypeName="ICollection">Contract.Result&lt;int&gt;() &gt;= 0</ensures>
      </getter>
    </member>
    <member name="P:DotNetOpenAuth.Messaging.EmptyList`1.IsReadOnly">
      <summary>
            Gets a value indicating whether the <see cref="T:System.Collections.Generic.ICollection`1" /> is read-only.
            </summary>
      <value />
      <returns>true if the <see cref="T:System.Collections.Generic.ICollection`1" /> is read-only; otherwise, false.
            </returns>
    </member>
    <member name="P:DotNetOpenAuth.Messaging.EmptyList`1.Item(System.Int32)">
      <summary>
            Gets or sets the <typeparamref name="T" /> at the specified index.
            </summary>
      <param name="index">The index of the element in the list to change.</param>
      <getter>
        <requires inheritedFrom="M:System.Collections.Generic.IList`1.get_Item(System.Int32)" inheritedFromTypeName="IList">index &gt;= 0</requires>
        <requires inheritedFrom="M:System.Collections.Generic.IList`1.get_Item(System.Int32)" inheritedFromTypeName="IList">index &lt; @this.Count</requires>
      </getter>
      <setter>
        <requires inheritedFrom="M:System.Collections.Generic.IList`1.set_Item(System.Int32,`0)" inheritedFromTypeName="IList">index &gt;= 0</requires>
        <requires inheritedFrom="M:System.Collections.Generic.IList`1.set_Item(System.Int32,`0)" inheritedFromTypeName="IList">index &lt; @this.Count</requires>
      </setter>
    </member>
    <member name="T:DotNetOpenAuth.Messaging.ErrorUtilities">
      <summary>
            A collection of error checking and reporting methods.
            </summary>
    </member>
    <member name="M:DotNetOpenAuth.Messaging.ErrorUtilities.Wrap(System.Exception,System.String,System.Object[])">
      <summary>
            Wraps an exception in a new <see cref="T:DotNetOpenAuth.Messaging.ProtocolException" />.
            </summary>
      <param name="inner">The inner exception to wrap.</param>
      <param name="errorMessage">The error message for the outer exception.</param>
      <param name="args">The string formatting arguments, if any.</param>
      <returns>The newly constructed (unthrown) exception.</returns>
      <pure />
    </member>
    <member name="M:DotNetOpenAuth.Messaging.ErrorUtilities.ThrowInternal(System.String)">
      <summary>
            Throws an internal error exception.
            </summary>
      <param name="errorMessage">The error message.</param>
      <returns>Nothing.  But included here so callers can "throw" this method for C# safety.</returns>
      <exception cref="T:DotNetOpenAuth.Messaging.InternalErrorException">Always thrown.</exception>
      <pure />
    </member>
    <member name="M:DotNetOpenAuth.Messaging.ErrorUtilities.VerifyInternal(System.Boolean,System.String)">
      <summary>
            Checks a condition and throws an internal error exception if it evaluates to false.
            </summary>
      <param name="condition">The condition to check.</param>
      <param name="errorMessage">The message to include in the exception, if created.</param>
      <exception cref="T:DotNetOpenAuth.Messaging.InternalErrorException">Thrown if <paramref name="condition" /> evaluates to <c>false</c>.</exception>
      <pure />
    </member>
    <member name="M:DotNetOpenAuth.Messaging.ErrorUtilities.VerifyInternal(System.Boolean,System.String,System.Object[])">
      <summary>
            Checks a condition and throws an internal error exception if it evaluates to false.
            </summary>
      <param name="condition">The condition to check.</param>
      <param name="errorMessage">The message to include in the exception, if created.</param>
      <param name="args">The formatting arguments.</param>
      <exception cref="T:DotNetOpenAuth.Messaging.InternalErrorException">Thrown if <paramref name="condition" /> evaluates to <c>false</c>.</exception>
      <pure />
    </member>
    <member name="M:DotNetOpenAuth.Messaging.ErrorUtilities.VerifyOperation(System.Boolean,System.String)">
      <summary>
            Checks a condition and throws an <see cref="T:System.InvalidOperationException" /> if it evaluates to false.
            </summary>
      <param name="condition">The condition to check.</param>
      <param name="errorMessage">The message to include in the exception, if created.</param>
      <exception cref="T:System.InvalidOperationException">Thrown if <paramref name="condition" /> evaluates to <c>false</c>.</exception>
      <pure />
    </member>
    <member name="M:DotNetOpenAuth.Messaging.ErrorUtilities.VerifySupported(System.Boolean,System.String)">
      <summary>
            Checks a condition and throws a <see cref="T:System.NotSupportedException" /> if it evaluates to false.
            </summary>
      <param name="condition">The condition to check.</param>
      <param name="errorMessage">The message to include in the exception, if created.</param>
      <exception cref="T:System.NotSupportedException">Thrown if <paramref name="condition" /> evaluates to <c>false</c>.</exception>
      <pure />
    </member>
    <member name="M:DotNetOpenAuth.Messaging.ErrorUtilities.VerifySupported(System.Boolean,System.String,System.Object[])">
      <summary>
            Checks a condition and throws a <see cref="T:System.NotSupportedException" /> if it evaluates to false.
            </summary>
      <param name="condition">The condition to check.</param>
      <param name="errorMessage">The message to include in the exception, if created.</param>
      <param name="args">The string formatting arguments for <paramref name="message" />.</param>
      <exception cref="T:System.NotSupportedException">Thrown if <paramref name="condition" /> evaluates to <c>false</c>.</exception>
      <pure />
    </member>
    <member name="M:DotNetOpenAuth.Messaging.ErrorUtilities.VerifyOperation(System.Boolean,System.String,System.Object[])">
      <summary>
            Checks a condition and throws an <see cref="T:System.InvalidOperationException" /> if it evaluates to false.
            </summary>
      <param name="condition">The condition to check.</param>
      <param name="errorMessage">The message to include in the exception, if created.</param>
      <param name="args">The formatting arguments.</param>
      <exception cref="T:System.InvalidOperationException">Thrown if <paramref name="condition" /> evaluates to <c>false</c>.</exception>
      <pure />
    </member>
    <member name="M:DotNetOpenAuth.Messaging.ErrorUtilities.VerifyInfoCard(System.Boolean,System.String,System.Object[])">
      <summary>
            Checks a condition and throws an <see cref="T:DotNetOpenAuth.InfoCard.InformationCardException" /> 
            if it evaluates to false.
            </summary>
      <param name="condition">The condition to check.</param>
      <param name="errorMessage">The message to include in the exception, if created.</param>
      <param name="args">The formatting arguments.</param>
      <exception cref="T:DotNetOpenAuth.InfoCard.InformationCardException">Thrown if <paramref name="condition" /> evaluates to <c>false</c>.</exception>
      <pure />
    </member>
    <member name="M:DotNetOpenAuth.Messaging.ErrorUtilities.VerifyHost(System.Boolean,System.String,System.Object[])">
      <summary>
            Throws a <see cref="T:DotNetOpenAuth.Messaging.HostErrorException" /> if some <paramref name="condition" /> evaluates to false.
            </summary>
      <param name="condition">True to do nothing; false to throw the exception.</param>
      <param name="errorMessage">The error message for the exception.</param>
      <param name="args">The string formatting arguments, if any.</param>
      <exception cref="T:DotNetOpenAuth.Messaging.HostErrorException">Thrown if <paramref name="condition" /> evaluates to <c>false</c>.</exception>
      <pure />
    </member>
    <member name="M:DotNetOpenAuth.Messaging.ErrorUtilities.VerifyProtocol(System.Boolean,DotNetOpenAuth.Messaging.IProtocolMessage,System.String,System.Object[])">
      <summary>
            Throws a <see cref="T:DotNetOpenAuth.Messaging.ProtocolException" /> if some <paramref name="condition" /> evaluates to false.
            </summary>
      <param name="condition">True to do nothing; false to throw the exception.</param>
      <param name="faultedMessage">The message being processed that would be responsible for the exception if thrown.</param>
      <param name="errorMessage">The error message for the exception.</param>
      <param name="args">The string formatting arguments, if any.</param>
      <exception cref="T:DotNetOpenAuth.Messaging.ProtocolException">Thrown if <paramref name="condition" /> evaluates to <c>false</c>.</exception>
      <pure />
    </member>
    <member name="M:DotNetOpenAuth.Messaging.ErrorUtilities.VerifyProtocol(System.Boolean,System.String,System.Object[])">
      <summary>
            Throws a <see cref="T:DotNetOpenAuth.Messaging.ProtocolException" /> if some <paramref name="condition" /> evaluates to false.
            </summary>
      <param name="condition">True to do nothing; false to throw the exception.</param>
      <param name="message">The error message for the exception.</param>
      <param name="args">The string formatting arguments, if any.</param>
      <exception cref="T:DotNetOpenAuth.Messaging.ProtocolException">Thrown if <paramref name="condition" /> evaluates to <c>false</c>.</exception>
      <pure />
    </member>
    <member name="M:DotNetOpenAuth.Messaging.ErrorUtilities.ThrowProtocol(System.String,System.Object[])">
      <summary>
            Throws a <see cref="T:DotNetOpenAuth.Messaging.ProtocolException" />.
            </summary>
      <param name="message">The message to set in the exception.</param>
      <param name="args">The formatting arguments of the message.</param>
      <returns>
            An InternalErrorException, which may be "thrown" by the caller in order
            to satisfy C# rules to show that code will never be reached, but no value
            actually is ever returned because this method guarantees to throw.
            </returns>
      <exception cref="T:DotNetOpenAuth.Messaging.ProtocolException">Always thrown.</exception>
      <pure />
    </member>
    <member name="M:DotNetOpenAuth.Messaging.ErrorUtilities.ThrowFormat(System.String,System.Object[])">
      <summary>
            Throws a <see cref="T:System.FormatException" />.
            </summary>
      <param name="message">The message for the exception.</param>
      <param name="args">The string formatting arguments for <paramref name="message" />.</param>
      <returns>Nothing.  It's just here so the caller can throw this method for C# compilation check.</returns>
      <pure />
    </member>
    <member name="M:DotNetOpenAuth.Messaging.ErrorUtilities.VerifyFormat(System.Boolean,System.String,System.Object[])">
      <summary>
            Throws a <see cref="T:System.FormatException" /> if some condition is false.
            </summary>
      <param name="condition">The expression to evaluate.  A value of <c>false</c> will cause the exception to be thrown.</param>
      <param name="message">The message for the exception.</param>
      <param name="args">The string formatting arguments for <paramref name="message" />.</param>
      <exception cref="T:System.FormatException">Thrown when <paramref name="condition" /> is <c>false</c>.</exception>
      <pure />
    </member>
    <member name="M:DotNetOpenAuth.Messaging.ErrorUtilities.VerifyArgument(System.Boolean,System.String,System.Object[])">
      <summary>
            Verifies something about the argument supplied to a method.
            </summary>
      <param name="condition">The condition that must evaluate to true to avoid an exception.</param>
      <param name="message">The message to use in the exception if the condition is false.</param>
      <param name="args">The string formatting arguments, if any.</param>
      <exception cref="T:System.ArgumentException">Thrown if <paramref name="condition" /> evaluates to <c>false</c>.</exception>
      <pure />
    </member>
    <member name="M:DotNetOpenAuth.Messaging.ErrorUtilities.ThrowArgumentNamed(System.String,System.String,System.Object[])">
      <summary>
            Verifies something about the argument supplied to a method.
            </summary>
      <param name="parameterName">Name of the parameter.</param>
      <param name="message">The message to use in the exception if the condition is false.</param>
      <param name="args">The string formatting arguments, if any.</param>
      <returns>Never returns anything.  It always throws.</returns>
      <exception cref="T:System.ArgumentException">Thrown if <paramref name="condition" /> evaluates to <c>false</c>.</exception>
      <pure />
    </member>
    <member name="M:DotNetOpenAuth.Messaging.ErrorUtilities.VerifyArgumentNamed(System.Boolean,System.String,System.String,System.Object[])">
      <summary>
            Verifies something about the argument supplied to a method.
            </summary>
      <param name="condition">The condition that must evaluate to true to avoid an exception.</param>
      <param name="parameterName">Name of the parameter.</param>
      <param name="message">The message to use in the exception if the condition is false.</param>
      <param name="args">The string formatting arguments, if any.</param>
      <exception cref="T:System.ArgumentException">Thrown if <paramref name="condition" /> evaluates to <c>false</c>.</exception>
      <pure />
    </member>
    <member name="M:DotNetOpenAuth.Messaging.ErrorUtilities.VerifyArgumentNotNull(System.Object,System.String)">
      <summary>
            Verifies that some given value is not null.
            </summary>
      <param name="value">The value to check.</param>
      <param name="paramName">Name of the parameter, which will be used in the <see cref="T:System.ArgumentException" />, if thrown.</param>
      <exception cref="T:System.ArgumentNullException">Thrown if <paramref name="value" /> is null.</exception>
      <pure />
    </member>
    <member name="M:DotNetOpenAuth.Messaging.ErrorUtilities.VerifyNonZeroLength(System.String,System.String)">
      <summary>
            Verifies that some string is not null and has non-zero length.
            </summary>
      <param name="value">The value to check.</param>
      <param name="paramName">Name of the parameter, which will be used in the <see cref="T:System.ArgumentException" />, if thrown.</param>
      <exception cref="T:System.ArgumentNullException">Thrown if <paramref name="value" /> is null.</exception>
      <exception cref="T:System.ArgumentException">Thrown if <paramref name="value" /> has zero length.</exception>
      <pure />
    </member>
    <member name="M:DotNetOpenAuth.Messaging.ErrorUtilities.VerifyHttpContext">
      <summary>
            Verifies that <see cref="P:System.Web.HttpContext.Current" /> != <c>null</c>.
            </summary>
      <exception cref="T:System.InvalidOperationException">Thrown if <see cref="P:System.Web.HttpContext.Current" /> == <c>null</c></exception>
      <pure />
    </member>
    <member name="T:DotNetOpenAuth.Messaging.IMessageWithEvents">
      <summary>
            An interface that messages wishing to perform custom serialization/deserialization
            may implement to be notified of <see cref="T:DotNetOpenAuth.Messaging.Channel" /> events.
            </summary>
    </member>
    <member name="M:DotNetOpenAuth.Messaging.IMessageWithEvents.OnSending">
      <summary>
            Called when the message is about to be transmitted,
            before it passes through the channel binding elements.
            </summary>
    </member>
    <member name="M:DotNetOpenAuth.Messaging.IMessageWithEvents.OnReceiving">
      <summary>
            Called when the message has been received, 
            after it passes through the channel binding elements.
            </summary>
    </member>
    <member name="T:DotNetOpenAuth.Messaging.IncomingWebResponseContract">
      <summary>
            Code contract for the <see cref="T:DotNetOpenAuth.Messaging.IncomingWebResponse" /> class.
            </summary>
    </member>
    <member name="M:DotNetOpenAuth.Messaging.IncomingWebResponseContract.GetResponseReader">
      <summary>
            Creates a text reader for the response stream.
            </summary>
      <returns>
            The text reader, initialized for the proper encoding.
            </returns>
    </member>
    <member name="M:DotNetOpenAuth.Messaging.IncomingWebResponseContract.GetSnapshot(System.Int32)">
      <summary>
            Gets an offline snapshot version of this instance.
            </summary>
      <param name="maximumBytesToCache">The maximum bytes from the response stream to cache.</param>
      <returns>A snapshot version of this instance.</returns>
      <remarks>
            If this instance is a <see cref="T:DotNetOpenAuth.Messaging.NetworkDirectWebResponse" /> creating a snapshot
            will automatically close and dispose of the underlying response stream.
            If this instance is a <see cref="T:DotNetOpenAuth.Messaging.CachedDirectWebResponse" />, the result will
            be the self same instance.
            </remarks>
    </member>
    <member name="P:DotNetOpenAuth.Messaging.IncomingWebResponseContract.ResponseStream">
      <summary>
            Gets the body of the HTTP response.
            </summary>
      <value />
    </member>
    <member name="T:DotNetOpenAuth.Messaging.IProtocolMessageWithExtensions">
      <summary>
            A protocol message that supports adding extensions to the payload for transmission.
            </summary>
    </member>
    <member name="P:DotNetOpenAuth.Messaging.IProtocolMessageWithExtensions.Extensions">
      <summary>
            Gets the list of extensions that are included with this message.
            </summary>
      <remarks>
            Implementations of this interface should ensure that this property never returns null.
            </remarks>
    </member>
    <member name="T:DotNetOpenAuth.Messaging.IProtocolMessageWithExtensionsContract">
      <summary>
            Code contract for the <see cref="T:DotNetOpenAuth.Messaging.IProtocolMessageWithExtensions" /> interface.
            </summary>
    </member>
    <member name="M:DotNetOpenAuth.Messaging.IProtocolMessageWithExtensionsContract.#ctor">
      <summary>
            Prevents a default instance of the <see cref="T:DotNetOpenAuth.Messaging.IProtocolMessageWithExtensionsContract" /> class from being created.
            </summary>
    </member>
    <member name="M:DotNetOpenAuth.Messaging.IProtocolMessageWithExtensionsContract.DotNetOpenAuth#Messaging#IMessage#EnsureValidMessage">
      <summary>
            Checks the message state for conformity to the protocol specification
            and throws an exception if the message is invalid.
            </summary>
      <remarks>
        <para>Some messages have required fields, or combinations of fields that must relate to each other
            in specialized ways.  After deserializing a message, this method checks the state of the
            message to see if it conforms to the protocol.</para>
        <para>Note that this property should <i>not</i> check signatures or perform any state checks
            outside this scope of this particular message.</para>
      </remarks>
      <exception cref="T:DotNetOpenAuth.Messaging.ProtocolException">Thrown if the message is invalid.</exception>
    </member>
    <member name="P:DotNetOpenAuth.Messaging.IProtocolMessageWithExtensionsContract.DotNetOpenAuth#Messaging#IProtocolMessageWithExtensions#Extensions">
      <summary>
            Gets the list of extensions that are included with this message.
            </summary>
      <remarks>
            Implementations of this interface should ensure that this property never returns null.
            </remarks>
    </member>
    <member name="P:DotNetOpenAuth.Messaging.IProtocolMessageWithExtensionsContract.DotNetOpenAuth#Messaging#IProtocolMessage#RequiredProtection">
      <summary>
            Gets the level of protection this message requires.
            </summary>
    </member>
    <member name="P:DotNetOpenAuth.Messaging.IProtocolMessageWithExtensionsContract.DotNetOpenAuth#Messaging#IProtocolMessage#Transport">
      <summary>
            Gets a value indicating whether this is a direct or indirect message.
            </summary>
    </member>
    <member name="P:DotNetOpenAuth.Messaging.IProtocolMessageWithExtensionsContract.DotNetOpenAuth#Messaging#IMessage#Version">
      <summary>
            Gets the version of the protocol or extension this message is prepared to implement.
            </summary>
      <remarks>
            Implementations of this interface should ensure that this property never returns null.
            </remarks>
    </member>
    <member name="P:DotNetOpenAuth.Messaging.IProtocolMessageWithExtensionsContract.DotNetOpenAuth#Messaging#IMessage#ExtraData">
      <summary>
            Gets the extra, non-standard Protocol parameters included in the message.
            </summary>
      <remarks>
            Implementations of this interface should ensure that this property never returns null.
            </remarks>
    </member>
    <member name="T:DotNetOpenAuth.Messaging.InternalErrorException">
      <summary>
            An internal exception to throw if an internal error within the library requires
            an abort of the operation.
            </summary>
      <remarks>
            This exception is internal to prevent clients of the library from catching what is
            really an unexpected, potentially unrecoverable exception.
            </remarks>
    </member>
    <member name="M:DotNetOpenAuth.Messaging.InternalErrorException.#ctor">
      <summary>
            Initializes a new instance of the <see cref="T:DotNetOpenAuth.Messaging.InternalErrorException" /> class.
            </summary>
    </member>
    <member name="M:DotNetOpenAuth.Messaging.InternalErrorException.#ctor(System.String)">
      <summary>
            Initializes a new instance of the <see cref="T:DotNetOpenAuth.Messaging.InternalErrorException" /> class.
            </summary>
      <param name="message">The message.</param>
    </member>
    <member name="M:DotNetOpenAuth.Messaging.InternalErrorException.#ctor(System.String,System.Exception)">
      <summary>
            Initializes a new instance of the <see cref="T:DotNetOpenAuth.Messaging.InternalErrorException" /> class.
            </summary>
      <param name="message">The message.</param>
      <param name="inner">The inner exception.</param>
    </member>
    <member name="M:DotNetOpenAuth.Messaging.InternalErrorException.#ctor(System.Runtime.Serialization.SerializationInfo,System.Runtime.Serialization.StreamingContext)">
      <summary>
            Initializes a new instance of the <see cref="T:DotNetOpenAuth.Messaging.InternalErrorException" /> class.
            </summary>
      <param name="info">The <see cref="T:System.Runtime.Serialization.SerializationInfo" /> that holds the serialized object data about the exception being thrown.</param>
      <param name="context">The <see cref="T:System.Runtime.Serialization.StreamingContext" /> that contains contextual information about the source or destination.</param>
      <exception cref="T:System.ArgumentNullException">
            The <paramref name="info" /> parameter is null.
            </exception>
      <exception cref="T:System.Runtime.Serialization.SerializationException">
            The class name is null or <see cref="P:System.Exception.HResult" /> is zero (0).
            </exception>
    </member>
    <member name="T:DotNetOpenAuth.Messaging.KeyedCollectionDelegate`2">
      <summary>
            A KeyedCollection whose item -&gt; key transform is provided via a delegate
            to its constructor, and null items are disallowed.
            </summary>
      <typeparam name="TKey">The type of the key.</typeparam>
      <typeparam name="TItem">The type of the item.</typeparam>
    </member>
    <member name="F:DotNetOpenAuth.Messaging.KeyedCollectionDelegate`2.getKeyForItemDelegate">
      <summary>
            The delegate that returns a key for the given item.
            </summary>
    </member>
    <member name="M:DotNetOpenAuth.Messaging.KeyedCollectionDelegate`2.#ctor(System.Func{`1,`0})">
      <summary>
            Initializes a new instance of the KeyedCollectionDelegate class.
            </summary>
      <param name="getKeyForItemDelegate">The delegate that gets the key for a given item.</param>
    </member>
    <member name="M:DotNetOpenAuth.Messaging.KeyedCollectionDelegate`2.GetKeyForItem(`1)">
      <summary>
            When implemented in a derived class, extracts the key from the specified element.
            </summary>
      <param name="item">The element from which to extract the key.</param>
      <returns>The key for the specified element.</returns>
    </member>
    <member name="T:DotNetOpenAuth.Messaging.MultipartPostPart">
      <summary>
            Represents a single part in a HTTP multipart POST request.
            </summary>
    </member>
    <member name="F:DotNetOpenAuth.Messaging.MultipartPostPart.ContentDispositionHeader">
      <summary>
            The "Content-Disposition" string.
            </summary>
    </member>
    <member name="F:DotNetOpenAuth.Messaging.MultipartPostPart.NewLine">
      <summary>
            The two-character \r\n newline character sequence to use.
            </summary>
    </member>
    <member name="M:DotNetOpenAuth.Messaging.MultipartPostPart.#ctor(System.String)">
      <summary>
            Initializes a new instance of the <see cref="T:DotNetOpenAuth.Messaging.MultipartPostPart" /> class.
            </summary>
      <param name="contentDisposition">The content disposition of the part.</param>
    </member>
    <member name="M:DotNetOpenAuth.Messaging.MultipartPostPart.CreateFormPart(System.String,System.String)">
      <summary>
            Creates a part that represents a simple form field.
            </summary>
      <param name="name">The name of the form field.</param>
      <param name="value">The value.</param>
      <returns>The constructed part.</returns>
    </member>
    <member name="M:DotNetOpenAuth.Messaging.MultipartPostPart.CreateFormFilePart(System.String,System.String,System.String)">
      <summary>
            Creates a part that represents a file attachment.
            </summary>
      <param name="name">The name of the form field.</param>
      <param name="filePath">The path to the file to send.</param>
      <param name="contentType">Type of the content in HTTP Content-Type format.</param>
      <returns>The constructed part.</returns>
    </member>
    <member name="M:DotNetOpenAuth.Messaging.MultipartPostPart.CreateFormFilePart(System.String,System.String,System.String,System.IO.Stream)">
      <summary>
            Creates a part that represents a file attachment.
            </summary>
      <param name="name">The name of the form field.</param>
      <param name="fileName">Name of the file as the server should see it.</param>
      <param name="contentType">Type of the content in HTTP Content-Type format.</param>
      <param name="content">The content of the file.</param>
      <returns>The constructed part.</returns>
    </member>
    <member name="M:DotNetOpenAuth.Messaging.MultipartPostPart.Dispose">
      <summary>
            Performs application-defined tasks associated with freeing, releasing, or resetting unmanaged resources.
            </summary>
    </member>
    <member name="M:DotNetOpenAuth.Messaging.MultipartPostPart.Serialize(System.IO.StreamWriter)">
      <summary>
            Serializes the part to a stream.
            </summary>
      <param name="streamWriter">The stream writer.</param>
    </member>
    <member name="M:DotNetOpenAuth.Messaging.MultipartPostPart.Dispose(System.Boolean)">
      <summary>
            Releases unmanaged and - optionally - managed resources
            </summary>
      <param name="disposing">
        <c>true</c> to release both managed and unmanaged resources; <c>false</c> to release only unmanaged resources.</param>
    </member>
    <member name="M:DotNetOpenAuth.Messaging.MultipartPostPart.Invariant">
      <summary>
            Verifies conditions that should be true for any valid state of this object.
            </summary>
    </member>
    <member name="P:DotNetOpenAuth.Messaging.MultipartPostPart.ContentDisposition">
      <summary>
            Gets the content disposition.
            </summary>
      <value>The content disposition.</value>
    </member>
    <member name="P:DotNetOpenAuth.Messaging.MultipartPostPart.ContentAttributes">
      <summary>
            Gets the key=value attributes that appear on the same line as the Content-Disposition.
            </summary>
      <value>The content attributes.</value>
    </member>
    <member name="P:DotNetOpenAuth.Messaging.MultipartPostPart.PartHeaders">
      <summary>
            Gets the headers that appear on subsequent lines after the Content-Disposition.
            </summary>
    </member>
    <member name="P:DotNetOpenAuth.Messaging.MultipartPostPart.Content">
      <summary>
            Gets or sets the content of the part.
            </summary>
    </member>
    <member name="P:DotNetOpenAuth.Messaging.MultipartPostPart.Length">
      <summary>
            Gets the length of this entire part.
            </summary>
      <remarks>Useful for calculating the ContentLength HTTP header to send before actually serializing the content.</remarks>
    </member>
    <member name="T:DotNetOpenAuth.Messaging.NetworkDirectWebResponse">
      <summary>
            A live network HTTP response
            </summary>
    </member>
    <member name="F:DotNetOpenAuth.Messaging.NetworkDirectWebResponse.httpWebResponse">
      <summary>
            The network response object, used to initialize this instance, that still needs 
            to be closed if applicable.
            </summary>
    </member>
    <member name="F:DotNetOpenAuth.Messaging.NetworkDirectWebResponse.responseStream">
      <summary>
            The incoming network response stream.
            </summary>
    </member>
    <member name="F:DotNetOpenAuth.Messaging.NetworkDirectWebResponse.streamReadBegun">
      <summary>
            A value indicating whether a stream reader has already been
            created on this instance.
            </summary>
    </member>
    <member name="M:DotNetOpenAuth.Messaging.NetworkDirectWebResponse.#ctor(System.Uri,System.Net.HttpWebResponse)">
      <summary>
            Initializes a new instance of the <see cref="T:DotNetOpenAuth.Messaging.NetworkDirectWebResponse" /> class.
            </summary>
      <param name="requestUri">The request URI.</param>
      <param name="response">The response.</param>
    </member>
    <member name="M:DotNetOpenAuth.Messaging.NetworkDirectWebResponse.GetResponseReader">
      <summary>
            Creates a text reader for the response stream.
            </summary>
      <returns>The text reader, initialized for the proper encoding.</returns>
    </member>
    <member name="M:DotNetOpenAuth.Messaging.NetworkDirectWebResponse.GetSnapshot(System.Int32)">
      <summary>
            Gets an offline snapshot version of this instance.
            </summary>
      <param name="maximumBytesToCache">The maximum bytes from the response stream to cache.</param>
      <returns>A snapshot version of this instance.</returns>
      <remarks>
            If this instance is a <see cref="T:DotNetOpenAuth.Messaging.NetworkDirectWebResponse" /> creating a snapshot
            will automatically close and dispose of the underlying response stream.
            If this instance is a <see cref="T:DotNetOpenAuth.Messaging.CachedDirectWebResponse" />, the result will
            be the self same instance.
            </remarks>
    </member>
    <member name="M:DotNetOpenAuth.Messaging.NetworkDirectWebResponse.Dispose(System.Boolean)">
      <summary>
            Releases unmanaged and - optionally - managed resources
            </summary>
      <param name="disposing">
        <c>true</c> to release both managed and unmanaged resources; <c>false</c> to release only unmanaged resources.</param>
    </member>
    <member name="P:DotNetOpenAuth.Messaging.NetworkDirectWebResponse.ResponseStream">
      <summary>
            Gets the body of the HTTP response.
            </summary>
    </member>
    <member name="T:DotNetOpenAuth.Messaging.OutgoingWebResponseActionResult">
      <summary>
            An ASP.NET MVC structure to represent the response to send
            to the user agent when the controller has finished its work.
            </summary>
    </member>
    <member name="F:DotNetOpenAuth.Messaging.OutgoingWebResponseActionResult.response">
      <summary>
            The outgoing web response to send when the ActionResult is executed.
            </summary>
    </member>
    <member name="M:DotNetOpenAuth.Messaging.OutgoingWebResponseActionResult.#ctor(DotNetOpenAuth.Messaging.OutgoingWebResponse)">
      <summary>
            Initializes a new instance of the <see cref="T:DotNetOpenAuth.Messaging.OutgoingWebResponseActionResult" /> class.
            </summary>
      <param name="response">The response.</param>
    </member>
    <member name="M:DotNetOpenAuth.Messaging.OutgoingWebResponseActionResult.ExecuteResult(System.Web.Mvc.ControllerContext)">
      <summary>
            Enables processing of the result of an action method by a custom type that inherits from <see cref="T:System.Web.Mvc.ActionResult" />.
            </summary>
      <param name="context">The context in which to set the response.</param>
    </member>
    <member name="T:DotNetOpenAuth.Messaging.Reflection.IMessagePartEncoder">
      <summary>
            An interface describing how various objects can be serialized and deserialized between their object and string forms.
            </summary>
      <remarks>
            Implementations of this interface must include a default constructor and must be thread-safe.
            </remarks>
    </member>
    <member name="M:DotNetOpenAuth.Messaging.Reflection.IMessagePartEncoder.Encode(System.Object)">
      <summary>
            Encodes the specified value.
            </summary>
      <param name="value">The value.  Guaranteed to never be null.</param>
      <returns>The <paramref name="value" /> in string form, ready for message transport.</returns>
    </member>
    <member name="M:DotNetOpenAuth.Messaging.Reflection.IMessagePartEncoder.Decode(System.String)">
      <summary>
            Decodes the specified value.
            </summary>
      <param name="value">The string value carried by the transport.  Guaranteed to never be null, although it may be empty.</param>
      <returns>The deserialized form of the given string.</returns>
      <exception cref="T:System.FormatException">Thrown when the string value given cannot be decoded into the required object type.</exception>
    </member>
    <member name="T:DotNetOpenAuth.Messaging.Reflection.IMessagePartEncoderContract">
      <summary>
            Code contract for the <see cref="T:DotNetOpenAuth.Messaging.Reflection.IMessagePartEncoder" /> type.
            </summary>
    </member>
    <member name="M:DotNetOpenAuth.Messaging.Reflection.IMessagePartEncoderContract.#ctor">
      <summary>
            Initializes a new instance of the <see cref="T:DotNetOpenAuth.Messaging.Reflection.IMessagePartEncoderContract" /> class.
            </summary>
    </member>
    <member name="M:DotNetOpenAuth.Messaging.Reflection.IMessagePartEncoderContract.DotNetOpenAuth#Messaging#Reflection#IMessagePartEncoder#Encode(System.Object)">
      <summary>
            Encodes the specified value.
            </summary>
      <param name="value">The value.  Guaranteed to never be null.</param>
      <returns>
            The <paramref name="value" /> in string form, ready for message transport.
            </returns>
    </member>
    <member name="M:DotNetOpenAuth.Messaging.Reflection.IMessagePartEncoderContract.DotNetOpenAuth#Messaging#Reflection#IMessagePartEncoder#Decode(System.String)">
      <summary>
            Decodes the specified value.
            </summary>
      <param name="value">The string value carried by the transport.  Guaranteed to never be null, although it may be empty.</param>
      <returns>
            The deserialized form of the given string.
            </returns>
      <exception cref="T:System.FormatException">Thrown when the string value given cannot be decoded into the required object type.</exception>
    </member>
    <member name="T:DotNetOpenAuth.Messaging.Reflection.IMessagePartNullEncoder">
      <summary>
            A message part encoder that has a special encoding for a null value.
            </summary>
    </member>
    <member name="P:DotNetOpenAuth.Messaging.Reflection.IMessagePartNullEncoder.EncodedNullValue">
      <summary>
            Gets the string representation to include in a serialized message 
            when the message part has a <c>null</c> value.
            </summary>
    </member>
    <member name="T:DotNetOpenAuth.Messaging.Reflection.MessageDescriptionCollection">
      <summary>
            A cache of <see cref="T:DotNetOpenAuth.Messaging.Reflection.MessageDescription" /> instances.
            </summary>
    </member>
    <member name="F:DotNetOpenAuth.Messaging.Reflection.MessageDescriptionCollection.reflectedMessageTypes">
      <summary>
            A dictionary of reflected message types and the generated reflection information.
            </summary>
    </member>
    <member name="M:DotNetOpenAuth.Messaging.Reflection.MessageDescriptionCollection.#ctor">
      <summary>
            Initializes a new instance of the <see cref="T:DotNetOpenAuth.Messaging.Reflection.MessageDescriptionCollection" /> class.
            </summary>
    </member>
    <member name="M:DotNetOpenAuth.Messaging.Reflection.MessageDescriptionCollection.Get(System.Type,System.Version)">
      <summary>
            Gets a <see cref="T:DotNetOpenAuth.Messaging.Reflection.MessageDescription" /> instance prepared for the
            given message type.
            </summary>
      <param name="messageType">A type that implements <see cref="T:DotNetOpenAuth.Messaging.IMessage" />.</param>
      <param name="messageVersion">The protocol version of the message.</param>
      <returns>A <see cref="T:DotNetOpenAuth.Messaging.Reflection.MessageDescription" /> instance.</returns>
      <pure />
    </member>
    <member name="M:DotNetOpenAuth.Messaging.Reflection.MessageDescriptionCollection.Get(DotNetOpenAuth.Messaging.IMessage)">
      <summary>
            Gets a <see cref="T:DotNetOpenAuth.Messaging.Reflection.MessageDescription" /> instance prepared for the
            given message type.
            </summary>
      <param name="message">The message for which a <see cref="T:DotNetOpenAuth.Messaging.Reflection.MessageDescription" /> should be obtained.</param>
      <returns>
            A <see cref="T:DotNetOpenAuth.Messaging.Reflection.MessageDescription" /> instance.
            </returns>
      <pure />
    </member>
    <member name="M:DotNetOpenAuth.Messaging.Reflection.MessageDescriptionCollection.GetAccessor(DotNetOpenAuth.Messaging.IMessage)">
      <summary>
            Gets the dictionary that provides read/write access to a message.
            </summary>
      <param name="message">The message.</param>
      <returns>The dictionary.</returns>
      <pure />
    </member>
    <member name="T:DotNetOpenAuth.Messaging.Reflection.MessageDescriptionCollection.MessageTypeAndVersion">
      <summary>
            A struct used as the key to bundle message type and version.
            </summary>
    </member>
    <member name="F:DotNetOpenAuth.Messaging.Reflection.MessageDescriptionCollection.MessageTypeAndVersion.type">
      <summary>
            Backing store for the <see cref="P:DotNetOpenAuth.Messaging.Reflection.MessageDescriptionCollection.MessageTypeAndVersion.Type" /> property.
            </summary>
    </member>
    <member name="F:DotNetOpenAuth.Messaging.Reflection.MessageDescriptionCollection.MessageTypeAndVersion.version">
      <summary>
            Backing store for the <see cref="P:DotNetOpenAuth.Messaging.Reflection.MessageDescriptionCollection.MessageTypeAndVersion.Version" /> property.
            </summary>
    </member>
    <member name="M:DotNetOpenAuth.Messaging.Reflection.MessageDescriptionCollection.MessageTypeAndVersion.#ctor(System.Type,System.Version)">
      <summary>
            Initializes a new instance of the <see cref="T:DotNetOpenAuth.Messaging.Reflection.MessageDescriptionCollection.MessageTypeAndVersion" /> struct.
            </summary>
      <param name="messageType">Type of the message.</param>
      <param name="messageVersion">The message version.</param>
    </member>
    <member name="M:DotNetOpenAuth.Messaging.Reflection.MessageDescriptionCollection.MessageTypeAndVersion.op_Equality(DotNetOpenAuth.Messaging.Reflection.MessageDescriptionCollection.MessageTypeAndVersion,DotNetOpenAuth.Messaging.Reflection.MessageDescriptionCollection.MessageTypeAndVersion)">
      <summary>
            Implements the operator ==.
            </summary>
      <param name="first">The first object to compare.</param>
      <param name="second">The second object to compare.</param>
      <returns>The result of the operator.</returns>
    </member>
    <member name="M:DotNetOpenAuth.Messaging.Reflection.MessageDescriptionCollection.MessageTypeAndVersion.op_Inequality(DotNetOpenAuth.Messaging.Reflection.MessageDescriptionCollection.MessageTypeAndVersion,DotNetOpenAuth.Messaging.Reflection.MessageDescriptionCollection.MessageTypeAndVersion)">
      <summary>
            Implements the operator !=.
            </summary>
      <param name="first">The first object to compare.</param>
      <param name="second">The second object to compare.</param>
      <returns>The result of the operator.</returns>
    </member>
    <member name="M:DotNetOpenAuth.Messaging.Reflection.MessageDescriptionCollection.MessageTypeAndVersion.Equals(System.Object)">
      <summary>
            Indicates whether this instance and a specified object are equal.
            </summary>
      <param name="obj">Another object to compare to.</param>
      <returns>
            true if <paramref name="obj" /> and this instance are the same type and represent the same value; otherwise, false.
            </returns>
    </member>
    <member name="M:DotNetOpenAuth.Messaging.Reflection.MessageDescriptionCollection.MessageTypeAndVersion.GetHashCode">
      <summary>
            Returns the hash code for this instance.
            </summary>
      <returns>
            A 32-bit signed integer that is the hash code for this instance.
            </returns>
    </member>
    <member name="P:DotNetOpenAuth.Messaging.Reflection.MessageDescriptionCollection.MessageTypeAndVersion.Type">
      <summary>
            Gets the message type.
            </summary>
    </member>
    <member name="P:DotNetOpenAuth.Messaging.Reflection.MessageDescriptionCollection.MessageTypeAndVersion.Version">
      <summary>
            Gets the message version.
            </summary>
    </member>
    <member name="T:DotNetOpenAuth.OAuth.ChannelElements.ICombinedOpenIdProviderTokenManager">
      <summary>
            An interface that providers that play a dual role as OpenID Provider
            and OAuth Service Provider should implement on their token manager classes.
            </summary>
      <remarks>
            This interface should be implemented by the same class that implements
            <see cref="T:DotNetOpenAuth.OAuth.ChannelElements.ITokenManager" /> in order to enable the OpenID+OAuth extension.
            </remarks>
    </member>
    <member name="T:DotNetOpenAuth.OAuth.ChannelElements.IOpenIdOAuthTokenManager">
      <summary>
            Additional methods an <see cref="T:DotNetOpenAuth.OAuth.ChannelElements.ITokenManager" /> implementing class
            may implement to support the OpenID+OAuth extension.
            </summary>
    </member>
    <member name="M:DotNetOpenAuth.OAuth.ChannelElements.IOpenIdOAuthTokenManager.StoreOpenIdAuthorizedRequestToken(System.String,DotNetOpenAuth.OpenId.Extensions.OAuth.AuthorizationApprovedResponse)">
      <summary>
            Stores a new request token obtained over an OpenID request.
            </summary>
      <param name="consumerKey">The consumer key.</param>
      <param name="authorization">The authorization message carrying the request token and authorized access scope.</param>
      <remarks>
        <para>The token secret is the empty string.</para>
        <para>Tokens stored by this method should be short-lived to mitigate 
            possible security threats.  Their lifetime should be sufficient for the
            relying party to receive the positive authentication assertion and immediately
            send a follow-up request for the access token.</para>
      </remarks>
    </member>
    <member name="T:DotNetOpenAuth.OAuth.ChannelElements.ITokenManager">
      <summary>
            An interface OAuth hosts must implement for persistent storage
            and recall of tokens and secrets for an individual OAuth consumer
            or service provider.
            </summary>
    </member>
    <member name="M:DotNetOpenAuth.OAuth.ChannelElements.ITokenManager.GetTokenSecret(System.String)">
      <summary>
            Gets the Token Secret given a request or access token.
            </summary>
      <param name="token">The request or access token.</param>
      <returns>The secret associated with the given token.</returns>
      <exception cref="T:System.ArgumentException">Thrown if the secret cannot be found for the given token.</exception>
    </member>
    <member name="M:DotNetOpenAuth.OAuth.ChannelElements.ITokenManager.StoreNewRequestToken(DotNetOpenAuth.OAuth.Messages.UnauthorizedTokenRequest,DotNetOpenAuth.OAuth.Messages.ITokenSecretContainingMessage)">
      <summary>
            Stores a newly generated unauthorized request token, secret, and optional
            application-specific parameters for later recall.
            </summary>
      <param name="request">The request message that resulted in the generation of a new unauthorized request token.</param>
      <param name="response">The response message that includes the unauthorized request token.</param>
      <exception cref="T:System.ArgumentException">Thrown if the consumer key is not registered, or a required parameter was not found in the parameters collection.</exception>
      <remarks>
            Request tokens stored by this method SHOULD NOT associate any user account with this token.
            It usually opens up security holes in your application to do so.  Instead, you associate a user
            account with access tokens (not request tokens) in the <see cref="M:DotNetOpenAuth.OAuth.ChannelElements.ITokenManager.ExpireRequestTokenAndStoreNewAccessToken(System.String,System.String,System.String,System.String)" />
            method.
            </remarks>
    </member>
    <member name="M:DotNetOpenAuth.OAuth.ChannelElements.ITokenManager.ExpireRequestTokenAndStoreNewAccessToken(System.String,System.String,System.String,System.String)">
      <summary>
            Deletes a request token and its associated secret and stores a new access token and secret.
            </summary>
      <param name="consumerKey">The Consumer that is exchanging its request token for an access token.</param>
      <param name="requestToken">The Consumer's request token that should be deleted/expired.</param>
      <param name="accessToken">The new access token that is being issued to the Consumer.</param>
      <param name="accessTokenSecret">The secret associated with the newly issued access token.</param>
      <remarks>
        <para>
            Any scope of granted privileges associated with the request token from the
            original call to <see cref="M:DotNetOpenAuth.OAuth.ChannelElements.ITokenManager.StoreNewRequestToken(DotNetOpenAuth.OAuth.Messages.UnauthorizedTokenRequest,DotNetOpenAuth.OAuth.Messages.ITokenSecretContainingMessage)" /> should be carried over
            to the new Access Token.
            </para>
        <para>
            To associate a user account with the new access token, 
            <see cref="P:System.Web.HttpContext.User">HttpContext.Current.User</see> may be
            useful in an ASP.NET web application within the implementation of this method.
            Alternatively you may store the access token here without associating with a user account,
            and wait until <see cref="M:DotNetOpenAuth.OAuth.WebConsumer.ProcessUserAuthorization" /> or
            <see cref="M:DotNetOpenAuth.OAuth.DesktopConsumer.ProcessUserAuthorization(System.String,System.String)" /> return the access
            token to associate the access token with a user account at that point.
            </para>
      </remarks>
    </member>
    <member name="M:DotNetOpenAuth.OAuth.ChannelElements.ITokenManager.GetTokenType(System.String)">
      <summary>
            Classifies a token as a request token or an access token.
            </summary>
      <param name="token">The token to classify.</param>
      <returns>Request or Access token, or invalid if the token is not recognized.</returns>
    </member>
    <member name="M:DotNetOpenAuth.OAuth.ChannelElements.ICombinedOpenIdProviderTokenManager.GetConsumerKey(DotNetOpenAuth.OpenId.Realm)">
      <summary>
            Gets the OAuth consumer key for a given OpenID relying party realm.
            </summary>
      <param name="realm">The relying party's OpenID realm.</param>
      <returns>The OAuth consumer key for a given OpenID realm.</returns>
      <para>This is a security-critical function.  Since OpenID requests 
            and OAuth extensions for those requests can be formulated by ANYONE 
            (no signing is required by the relying party), and since the response to 
            the authentication will include access the user is granted to the 
            relying party who CLAIMS to be from some realm, it is of paramount 
            importance that the realm is recognized as belonging to the consumer 
            key by the host service provider in order to protect against phishers.</para>
    </member>
    <member name="T:DotNetOpenAuth.OAuth.ChannelElements.IConsumerDescription">
      <summary>
            A description of a consumer from a Service Provider's point of view.
            </summary>
    </member>
    <member name="P:DotNetOpenAuth.OAuth.ChannelElements.IConsumerDescription.Key">
      <summary>
            Gets the Consumer key.
            </summary>
    </member>
    <member name="P:DotNetOpenAuth.OAuth.ChannelElements.IConsumerDescription.Secret">
      <summary>
            Gets the consumer secret.
            </summary>
    </member>
    <member name="P:DotNetOpenAuth.OAuth.ChannelElements.IConsumerDescription.Certificate">
      <summary>
            Gets the certificate that can be used to verify the signature of an incoming
            message from a Consumer.
            </summary>
      <returns>The public key from the Consumer's X.509 Certificate, if one can be found; otherwise <c>null</c>.</returns>
      <remarks>
            This property must be implemented only if the RSA-SHA1 algorithm is supported by the Service Provider.
            </remarks>
    </member>
    <member name="P:DotNetOpenAuth.OAuth.ChannelElements.IConsumerDescription.Callback">
      <summary>
            Gets the callback URI that this consumer has pre-registered with the service provider, if any.
            </summary>
      <value>A URI that user authorization responses should be directed to; or <c>null</c> if no preregistered callback was arranged.</value>
    </member>
    <member name="P:DotNetOpenAuth.OAuth.ChannelElements.IConsumerDescription.VerificationCodeFormat">
      <summary>
            Gets the verification code format that is most appropriate for this consumer
            when a callback URI is not available.
            </summary>
      <value>A set of characters that can be easily keyed in by the user given the Consumer's
            application type and form factor.</value>
      <remarks>
            The value <see cref="F:DotNetOpenAuth.OAuth.VerificationCodeFormat.IncludedInCallback" /> should NEVER be returned
            since this property is only used in no callback scenarios anyway.
            </remarks>
    </member>
    <member name="P:DotNetOpenAuth.OAuth.ChannelElements.IConsumerDescription.VerificationCodeLength">
      <summary>
            Gets the length of the verification code to issue for this Consumer.
            </summary>
      <value>A positive number, generally at least 4.</value>
    </member>
    <member name="T:DotNetOpenAuth.OAuth.ChannelElements.IConsumerTokenManager">
      <summary>
            A token manager for use by a web site in its role as a consumer of
            an individual ServiceProvider.
            </summary>
    </member>
    <member name="P:DotNetOpenAuth.OAuth.ChannelElements.IConsumerTokenManager.ConsumerKey">
      <summary>
            Gets the consumer key.
            </summary>
      <value>The consumer key.</value>
    </member>
    <member name="P:DotNetOpenAuth.OAuth.ChannelElements.IConsumerTokenManager.ConsumerSecret">
      <summary>
            Gets the consumer secret.
            </summary>
      <value>The consumer secret.</value>
    </member>
    <member name="T:DotNetOpenAuth.OAuth.ChannelElements.IServiceProviderAccessToken">
      <summary>
            A description of an access token and its metadata as required by a Service Provider.
            </summary>
    </member>
    <member name="P:DotNetOpenAuth.OAuth.ChannelElements.IServiceProviderAccessToken.Token">
      <summary>
            Gets the token itself.
            </summary>
    </member>
    <member name="P:DotNetOpenAuth.OAuth.ChannelElements.IServiceProviderAccessToken.ExpirationDate">
      <summary>
            Gets the expiration date (local time) for the access token.
            </summary>
      <value>The expiration date, or <c>null</c> if there is no expiration date.</value>
    </member>
    <member name="P:DotNetOpenAuth.OAuth.ChannelElements.IServiceProviderAccessToken.Username">
      <summary>
            Gets the username of the principal that will be impersonated by this access token.
            </summary>
      <value>
            The name of the user who authorized the OAuth request token originally.
            </value>
    </member>
    <member name="P:DotNetOpenAuth.OAuth.ChannelElements.IServiceProviderAccessToken.Roles">
      <summary>
            Gets the roles that the OAuth principal should belong to.
            </summary>
      <value>
            The roles that the user belongs to, or a subset of these according to the rights
            granted when the user authorized the request token.
            </value>
    </member>
    <member name="T:DotNetOpenAuth.OAuth.ChannelElements.IServiceProviderTokenManager">
      <summary>
            A token manager for use by a web site in its role as a
            service provider.
            </summary>
    </member>
    <member name="M:DotNetOpenAuth.OAuth.ChannelElements.IServiceProviderTokenManager.GetConsumer(System.String)">
      <summary>
            Gets the Consumer description for a given a Consumer Key.
            </summary>
      <param name="consumerKey">The Consumer Key.</param>
      <returns>A description of the consumer.  Never null.</returns>
      <exception cref="T:System.Collections.Generic.KeyNotFoundException">Thrown if the consumer key cannot be found.</exception>
    </member>
    <member name="M:DotNetOpenAuth.OAuth.ChannelElements.IServiceProviderTokenManager.IsRequestTokenAuthorized(System.String)">
      <summary>
            Checks whether a given request token has already been authorized
            by some user for use by the Consumer that requested it.
            </summary>
      <param name="requestToken">The Consumer's request token.</param>
      <returns>
            True if the request token has already been fully authorized by the user
            who owns the relevant protected resources.  False if the token has not yet
            been authorized, has expired or does not exist.
            </returns>
    </member>
    <member name="M:DotNetOpenAuth.OAuth.ChannelElements.IServiceProviderTokenManager.GetRequestToken(System.String)">
      <summary>
            Gets details on the named request token.
            </summary>
      <param name="token">The request token.</param>
      <returns>A description of the token.  Never null.</returns>
      <exception cref="T:System.Collections.Generic.KeyNotFoundException">Thrown if the token cannot be found.</exception>
      <remarks>
            It is acceptable for implementations to find the token, see that it has expired,
            delete it from the database and then throw <see cref="T:System.Collections.Generic.KeyNotFoundException" />,
            or alternatively it can return the expired token anyway and the OAuth channel will
            log and throw the appropriate error.
            </remarks>
    </member>
    <member name="M:DotNetOpenAuth.OAuth.ChannelElements.IServiceProviderTokenManager.GetAccessToken(System.String)">
      <summary>
            Gets details on the named access token.
            </summary>
      <param name="token">The access token.</param>
      <returns>A description of the token.  Never null.</returns>
      <exception cref="T:System.Collections.Generic.KeyNotFoundException">Thrown if the token cannot be found.</exception>
      <remarks>
            It is acceptable for implementations to find the token, see that it has expired,
            delete it from the database and then throw <see cref="T:System.Collections.Generic.KeyNotFoundException" />,
            or alternatively it can return the expired token anyway and the OAuth channel will
            log and throw the appropriate error.
            </remarks>
    </member>
    <member name="M:DotNetOpenAuth.OAuth.ChannelElements.IServiceProviderTokenManager.UpdateToken(DotNetOpenAuth.OAuth.ChannelElements.IServiceProviderRequestToken)">
      <summary>
            Persists any changes made to the token.
            </summary>
      <param name="token">The token whose properties have been changed.</param>
      <remarks>
            This library will invoke this method after making a set
            of changes to the token as part of a web request to give the host
            the opportunity to persist those changes to a database.
            Depending on the object persistence framework the host site uses,
            this method MAY not need to do anything (if changes made to the token
            will automatically be saved without any extra handling).
            </remarks>
    </member>
    <member name="T:DotNetOpenAuth.OAuth.ChannelElements.IServiceProviderTokenManagerContract">
      <summary>
            Code contract class for the <see cref="T:DotNetOpenAuth.OAuth.ChannelElements.IServiceProviderTokenManager" /> interface.
            </summary>
    </member>
    <member name="M:DotNetOpenAuth.OAuth.ChannelElements.IServiceProviderTokenManagerContract.#ctor">
      <summary>
            Initializes a new instance of the <see cref="T:DotNetOpenAuth.OAuth.ChannelElements.IServiceProviderTokenManagerContract" /> class.
            </summary>
    </member>
    <member name="M:DotNetOpenAuth.OAuth.ChannelElements.IServiceProviderTokenManagerContract.DotNetOpenAuth#OAuth#ChannelElements#IServiceProviderTokenManager#GetConsumer(System.String)">
      <summary>
            Gets the Consumer description for a given a Consumer Key.
            </summary>
      <param name="consumerKey">The Consumer Key.</param>
      <returns>
            A description of the consumer.  Never null.
            </returns>
      <exception cref="T:System.Collections.Generic.KeyNotFoundException">Thrown if the consumer key cannot be found.</exception>
    </member>
    <member name="M:DotNetOpenAuth.OAuth.ChannelElements.IServiceProviderTokenManagerContract.DotNetOpenAuth#OAuth#ChannelElements#IServiceProviderTokenManager#IsRequestTokenAuthorized(System.String)">
      <summary>
            Checks whether a given request token has already been authorized
            by some user for use by the Consumer that requested it.
            </summary>
      <param name="requestToken">The Consumer's request token.</param>
      <returns>
            True if the request token has already been fully authorized by the user
            who owns the relevant protected resources.  False if the token has not yet
            been authorized, has expired or does not exist.
            </returns>
    </member>
    <member name="M:DotNetOpenAuth.OAuth.ChannelElements.IServiceProviderTokenManagerContract.DotNetOpenAuth#OAuth#ChannelElements#IServiceProviderTokenManager#GetRequestToken(System.String)">
      <summary>
            Gets details on the named request token.
            </summary>
      <param name="token">The request token.</param>
      <returns>A description of the token.  Never null.</returns>
      <exception cref="T:System.Collections.Generic.KeyNotFoundException">Thrown if the token cannot be found.</exception>
      <remarks>
            It is acceptable for implementations to find the token, see that it has expired,
            delete it from the database and then throw <see cref="T:System.Collections.Generic.KeyNotFoundException" />,
            or alternatively it can return the expired token anyway and the OAuth channel will
            log and throw the appropriate error.
            </remarks>
    </member>
    <member name="M:DotNetOpenAuth.OAuth.ChannelElements.IServiceProviderTokenManagerContract.DotNetOpenAuth#OAuth#ChannelElements#IServiceProviderTokenManager#GetAccessToken(System.String)">
      <summary>
            Gets details on the named access token.
            </summary>
      <param name="token">The access token.</param>
      <returns>A description of the token.  Never null.</returns>
      <exception cref="T:System.Collections.Generic.KeyNotFoundException">Thrown if the token cannot be found.</exception>
      <remarks>
            It is acceptable for implementations to find the token, see that it has expired,
            delete it from the database and then throw <see cref="T:System.Collections.Generic.KeyNotFoundException" />,
            or alternatively it can return the expired token anyway and the OAuth channel will
            log and throw the appropriate error.
            </remarks>
    </member>
    <member name="M:DotNetOpenAuth.OAuth.ChannelElements.IServiceProviderTokenManagerContract.DotNetOpenAuth#OAuth#ChannelElements#IServiceProviderTokenManager#UpdateToken(DotNetOpenAuth.OAuth.ChannelElements.IServiceProviderRequestToken)">
      <summary>
            Persists any changes made to the token.
            </summary>
      <param name="token">The token whose properties have been changed.</param>
      <remarks>
            This library will invoke this method after making a set
            of changes to the token as part of a web request to give the host
            the opportunity to persist those changes to a database.
            Depending on the object persistence framework the host site uses,
            this method MAY not need to do anything (if changes made to the token
            will automatically be saved without any extra handling).
            </remarks>
    </member>
    <member name="M:DotNetOpenAuth.OAuth.ChannelElements.IServiceProviderTokenManagerContract.DotNetOpenAuth#OAuth#ChannelElements#ITokenManager#GetTokenSecret(System.String)">
      <summary>
            Gets the Token Secret given a request or access token.
            </summary>
      <param name="token">The request or access token.</param>
      <returns>
            The secret associated with the given token.
            </returns>
      <exception cref="T:System.ArgumentException">Thrown if the secret cannot be found for the given token.</exception>
    </member>
    <member name="M:DotNetOpenAuth.OAuth.ChannelElements.IServiceProviderTokenManagerContract.DotNetOpenAuth#OAuth#ChannelElements#ITokenManager#StoreNewRequestToken(DotNetOpenAuth.OAuth.Messages.UnauthorizedTokenRequest,DotNetOpenAuth.OAuth.Messages.ITokenSecretContainingMessage)">
      <summary>
            Stores a newly generated unauthorized request token, secret, and optional
            application-specific parameters for later recall.
            </summary>
      <param name="request">The request message that resulted in the generation of a new unauthorized request token.</param>
      <param name="response">The response message that includes the unauthorized request token.</param>
      <exception cref="T:System.ArgumentException">Thrown if the consumer key is not registered, or a required parameter was not found in the parameters collection.</exception>
      <remarks>
            Request tokens stored by this method SHOULD NOT associate any user account with this token.
            It usually opens up security holes in your application to do so.  Instead, you associate a user
            account with access tokens (not request tokens) in the <see cref="M:DotNetOpenAuth.OAuth.ChannelElements.ITokenManager.ExpireRequestTokenAndStoreNewAccessToken(System.String,System.String,System.String,System.String)" />
            method.
            </remarks>
    </member>
    <member name="M:DotNetOpenAuth.OAuth.ChannelElements.IServiceProviderTokenManagerContract.DotNetOpenAuth#OAuth#ChannelElements#ITokenManager#ExpireRequestTokenAndStoreNewAccessToken(System.String,System.String,System.String,System.String)">
      <summary>
            Deletes a request token and its associated secret and stores a new access token and secret.
            </summary>
      <param name="consumerKey">The Consumer that is exchanging its request token for an access token.</param>
      <param name="requestToken">The Consumer's request token that should be deleted/expired.</param>
      <param name="accessToken">The new access token that is being issued to the Consumer.</param>
      <param name="accessTokenSecret">The secret associated with the newly issued access token.</param>
      <remarks>
        <para>
            Any scope of granted privileges associated with the request token from the
            original call to <see cref="M:DotNetOpenAuth.OAuth.ChannelElements.ITokenManager.StoreNewRequestToken(DotNetOpenAuth.OAuth.Messages.UnauthorizedTokenRequest,DotNetOpenAuth.OAuth.Messages.ITokenSecretContainingMessage)" /> should be carried over
            to the new Access Token.
            </para>
        <para>
            To associate a user account with the new access token,
            <see cref="P:System.Web.HttpContext.User">HttpContext.Current.User</see> may be
            useful in an ASP.NET web application within the implementation of this method.
            Alternatively you may store the access token here without associating with a user account,
            and wait until <see cref="M:DotNetOpenAuth.OAuth.WebConsumer.ProcessUserAuthorization" /> or
            <see cref="M:DotNetOpenAuth.OAuth.DesktopConsumer.ProcessUserAuthorization(System.String,System.String)" /> return the access
            token to associate the access token with a user account at that point.
            </para>
      </remarks>
    </member>
    <member name="M:DotNetOpenAuth.OAuth.ChannelElements.IServiceProviderTokenManagerContract.DotNetOpenAuth#OAuth#ChannelElements#ITokenManager#GetTokenType(System.String)">
      <summary>
            Classifies a token as a request token or an access token.
            </summary>
      <param name="token">The token to classify.</param>
      <returns>
            Request or Access token, or invalid if the token is not recognized.
            </returns>
    </member>
    <member name="T:DotNetOpenAuth.OAuth.ChannelElements.OAuthConsumerMessageFactory">
      <summary>
            An OAuth-protocol specific implementation of the <see cref="T:DotNetOpenAuth.Messaging.IMessageFactory" />
            interface.
            </summary>
    </member>
    <member name="T:DotNetOpenAuth.Messaging.IMessageFactory">
      <summary>
            A tool to analyze an incoming message to figure out what concrete class
            is designed to deserialize it and instantiates that class.
            </summary>
    </member>
    <member name="M:DotNetOpenAuth.Messaging.IMessageFactory.GetNewRequestMessage(DotNetOpenAuth.Messaging.MessageReceivingEndpoint,System.Collections.Generic.IDictionary{System.String,System.String})">
      <summary>
            Analyzes an incoming request message payload to discover what kind of 
            message is embedded in it and returns the type, or null if no match is found.
            </summary>
      <param name="recipient">The intended or actual recipient of the request message.</param>
      <param name="fields">The name/value pairs that make up the message payload.</param>
      <returns>
            A newly instantiated <see cref="T:DotNetOpenAuth.Messaging.IProtocolMessage" />-derived object that this message can
            deserialize to.  Null if the request isn't recognized as a valid protocol message.
            </returns>
    </member>
    <member name="M:DotNetOpenAuth.Messaging.IMessageFactory.GetNewResponseMessage(DotNetOpenAuth.Messaging.IDirectedProtocolMessage,System.Collections.Generic.IDictionary{System.String,System.String})">
      <summary>
            Analyzes an incoming request message payload to discover what kind of 
            message is embedded in it and returns the type, or null if no match is found.
            </summary>
      <param name="request">
            The message that was sent as a request that resulted in the response.
            </param>
      <param name="fields">The name/value pairs that make up the message payload.</param>
      <returns>
            A newly instantiated <see cref="T:DotNetOpenAuth.Messaging.IProtocolMessage" />-derived object that this message can
            deserialize to.  Null if the request isn't recognized as a valid protocol message.
            </returns>
    </member>
    <member name="M:DotNetOpenAuth.OAuth.ChannelElements.OAuthConsumerMessageFactory.#ctor">
      <summary>
            Initializes a new instance of the <see cref="T:DotNetOpenAuth.OAuth.ChannelElements.OAuthConsumerMessageFactory" /> class.
            </summary>
    </member>
    <member name="M:DotNetOpenAuth.OAuth.ChannelElements.OAuthConsumerMessageFactory.GetNewRequestMessage(DotNetOpenAuth.Messaging.MessageReceivingEndpoint,System.Collections.Generic.IDictionary{System.String,System.String})">
      <summary>
            Analyzes an incoming request message payload to discover what kind of
            message is embedded in it and returns the type, or null if no match is found.
            </summary>
      <param name="recipient">The intended or actual recipient of the request message.</param>
      <param name="fields">The name/value pairs that make up the message payload.</param>
      <returns>
            A newly instantiated <see cref="T:DotNetOpenAuth.Messaging.IProtocolMessage" />-derived object that this message can
            deserialize to.  Null if the request isn't recognized as a valid protocol message.
            </returns>
      <remarks>
            The request messages are:
            UserAuthorizationResponse
            </remarks>
    </member>
    <member name="M:DotNetOpenAuth.OAuth.ChannelElements.OAuthConsumerMessageFactory.GetNewResponseMessage(DotNetOpenAuth.Messaging.IDirectedProtocolMessage,System.Collections.Generic.IDictionary{System.String,System.String})">
      <summary>
            Analyzes an incoming request message payload to discover what kind of 
            message is embedded in it and returns the type, or null if no match is found.
            </summary>
      <param name="request">
            The message that was sent as a request that resulted in the response.
            Null on a Consumer site that is receiving an indirect message from the Service Provider.
            </param>
      <param name="fields">The name/value pairs that make up the message payload.</param>
      <returns>
            A newly instantiated <see cref="T:DotNetOpenAuth.Messaging.IProtocolMessage" />-derived object that this message can
            deserialize to.  Null if the request isn't recognized as a valid protocol message.
            </returns>
      <remarks>
            The response messages are:
            UnauthorizedTokenResponse
            AuthorizedTokenResponse
            </remarks>
    </member>
    <member name="T:DotNetOpenAuth.OAuth.ChannelElements.ITokenGenerator">
      <summary>
            An interface allowing OAuth hosts to inject their own algorithm for generating tokens and secrets.
            </summary>
    </member>
    <member name="M:DotNetOpenAuth.OAuth.ChannelElements.ITokenGenerator.GenerateRequestToken(System.String)">
      <summary>
            Generates a new token to represent a not-yet-authorized request to access protected resources.
            </summary>
      <param name="consumerKey">The consumer that requested this token.</param>
      <returns>The newly generated token.</returns>
      <remarks>
            This method should not store the newly generated token in any persistent store.
            This will be done in <see cref="M:DotNetOpenAuth.OAuth.ChannelElements.ITokenManager.StoreNewRequestToken(DotNetOpenAuth.OAuth.Messages.UnauthorizedTokenRequest,DotNetOpenAuth.OAuth.Messages.ITokenSecretContainingMessage)" />.
            </remarks>
    </member>
    <member name="M:DotNetOpenAuth.OAuth.ChannelElements.ITokenGenerator.GenerateAccessToken(System.String)">
      <summary>
            Generates a new token to represent an authorized request to access protected resources.
            </summary>
      <param name="consumerKey">The consumer that requested this token.</param>
      <returns>The newly generated token.</returns>
      <remarks>
            This method should not store the newly generated token in any persistent store.
            This will be done in <see cref="M:DotNetOpenAuth.OAuth.ChannelElements.ITokenManager.ExpireRequestTokenAndStoreNewAccessToken(System.String,System.String,System.String,System.String)" />.
            </remarks>
    </member>
    <member name="M:DotNetOpenAuth.OAuth.ChannelElements.ITokenGenerator.GenerateSecret">
      <summary>
            Returns a cryptographically strong random string for use as a token secret.
            </summary>
      <returns>The generated string.</returns>
    </member>
    <member name="T:DotNetOpenAuth.OAuth.ChannelElements.ITokenManagerContract">
      <summary>
            The code contract class for the <see cref="T:DotNetOpenAuth.OAuth.ChannelElements.ITokenManager" /> interface.
            </summary>
    </member>
    <member name="M:DotNetOpenAuth.OAuth.ChannelElements.ITokenManagerContract.#ctor">
      <summary>
            Initializes a new instance of the <see cref="T:DotNetOpenAuth.OAuth.ChannelElements.ITokenManagerContract" /> class.
            </summary>
    </member>
    <member name="M:DotNetOpenAuth.OAuth.ChannelElements.ITokenManagerContract.DotNetOpenAuth#OAuth#ChannelElements#ITokenManager#GetTokenSecret(System.String)">
      <summary>
            Gets the Token Secret given a request or access token.
            </summary>
      <param name="token">The request or access token.</param>
      <returns>
            The secret associated with the given token.
            </returns>
      <exception cref="T:System.ArgumentException">Thrown if the secret cannot be found for the given token.</exception>
    </member>
    <member name="M:DotNetOpenAuth.OAuth.ChannelElements.ITokenManagerContract.DotNetOpenAuth#OAuth#ChannelElements#ITokenManager#StoreNewRequestToken(DotNetOpenAuth.OAuth.Messages.UnauthorizedTokenRequest,DotNetOpenAuth.OAuth.Messages.ITokenSecretContainingMessage)">
      <summary>
            Stores a newly generated unauthorized request token, secret, and optional
            application-specific parameters for later recall.
            </summary>
      <param name="request">The request message that resulted in the generation of a new unauthorized request token.</param>
      <param name="response">The response message that includes the unauthorized request token.</param>
      <exception cref="T:System.ArgumentException">Thrown if the consumer key is not registered, or a required parameter was not found in the parameters collection.</exception>
      <remarks>
            Request tokens stored by this method SHOULD NOT associate any user account with this token.
            It usually opens up security holes in your application to do so.  Instead, you associate a user
            account with access tokens (not request tokens) in the <see cref="M:DotNetOpenAuth.OAuth.ChannelElements.ITokenManager.ExpireRequestTokenAndStoreNewAccessToken(System.String,System.String,System.String,System.String)" />
            method.
            </remarks>
    </member>
    <member name="M:DotNetOpenAuth.OAuth.ChannelElements.ITokenManagerContract.DotNetOpenAuth#OAuth#ChannelElements#ITokenManager#ExpireRequestTokenAndStoreNewAccessToken(System.String,System.String,System.String,System.String)">
      <summary>
            Deletes a request token and its associated secret and stores a new access token and secret.
            </summary>
      <param name="consumerKey">The Consumer that is exchanging its request token for an access token.</param>
      <param name="requestToken">The Consumer's request token that should be deleted/expired.</param>
      <param name="accessToken">The new access token that is being issued to the Consumer.</param>
      <param name="accessTokenSecret">The secret associated with the newly issued access token.</param>
      <remarks>
        <para>
            Any scope of granted privileges associated with the request token from the
            original call to <see cref="M:DotNetOpenAuth.OAuth.ChannelElements.ITokenManager.StoreNewRequestToken(DotNetOpenAuth.OAuth.Messages.UnauthorizedTokenRequest,DotNetOpenAuth.OAuth.Messages.ITokenSecretContainingMessage)" /> should be carried over
            to the new Access Token.
            </para>
        <para>
            To associate a user account with the new access token,
            <see cref="P:System.Web.HttpContext.User">HttpContext.Current.User</see> may be
            useful in an ASP.NET web application within the implementation of this method.
            Alternatively you may store the access token here without associating with a user account,
            and wait until <see cref="M:DotNetOpenAuth.OAuth.WebConsumer.ProcessUserAuthorization" /> or
            <see cref="M:DotNetOpenAuth.OAuth.DesktopConsumer.ProcessUserAuthorization(System.String,System.String)" /> return the access
            token to associate the access token with a user account at that point.
            </para>
      </remarks>
    </member>
    <member name="M:DotNetOpenAuth.OAuth.ChannelElements.ITokenManagerContract.DotNetOpenAuth#OAuth#ChannelElements#ITokenManager#GetTokenType(System.String)">
      <summary>
            Classifies a token as a request token or an access token.
            </summary>
      <param name="token">The token to classify.</param>
      <returns>
            Request or Access token, or invalid if the token is not recognized.
            </returns>
    </member>
    <member name="T:DotNetOpenAuth.OAuth.ChannelElements.OAuthHttpMethodBindingElement">
      <summary>
            Sets the HTTP Method property on a signed message before the signing module gets to it.
            </summary>
    </member>
    <member name="T:DotNetOpenAuth.Messaging.IChannelBindingElement">
      <summary>
            An interface that must be implemented by message transforms/validators in order
            to be included in the channel stack.
            </summary>
    </member>
    <member name="M:DotNetOpenAuth.Messaging.IChannelBindingElement.ProcessOutgoingMessage(DotNetOpenAuth.Messaging.IProtocolMessage)">
      <summary>
            Prepares a message for sending based on the rules of this channel binding element.
            </summary>
      <param name="message">The message to prepare for sending.</param>
      <returns>
            The protections (if any) that this binding element applied to the message.
            Null if this binding element did not even apply to this binding element.
            </returns>
      <remarks>
            Implementations that provide message protection must honor the 
            <see cref="P:DotNetOpenAuth.Messaging.MessagePartAttribute.RequiredProtection" /> properties where applicable.
            </remarks>
    </member>
    <member name="M:DotNetOpenAuth.Messaging.IChannelBindingElement.ProcessIncomingMessage(DotNetOpenAuth.Messaging.IProtocolMessage)">
      <summary>
            Performs any transformation on an incoming message that may be necessary and/or
            validates an incoming message based on the rules of this channel binding element.
            </summary>
      <param name="message">The incoming message to process.</param>
      <returns>
            The protections (if any) that this binding element applied to the message.
            Null if this binding element did not even apply to this binding element.
            </returns>
      <exception cref="T:DotNetOpenAuth.Messaging.ProtocolException">
            Thrown when the binding element rules indicate that this message is invalid and should
            NOT be processed.
            </exception>
      <remarks>
            Implementations that provide message protection must honor the 
            <see cref="P:DotNetOpenAuth.Messaging.MessagePartAttribute.RequiredProtection" /> properties where applicable.
            </remarks>
    </member>
    <member name="P:DotNetOpenAuth.Messaging.IChannelBindingElement.Channel">
      <summary>
            Gets or sets the channel that this binding element belongs to.
            </summary>
      <remarks>
            This property is set by the channel when it is first constructed.
            </remarks>
    </member>
    <member name="P:DotNetOpenAuth.Messaging.IChannelBindingElement.Protection">
      <summary>
            Gets the protection commonly offered (if any) by this binding element.
            </summary>
      <remarks>
            This value is used to assist in sorting binding elements in the channel stack.
            </remarks>
    </member>
    <member name="M:DotNetOpenAuth.OAuth.ChannelElements.OAuthHttpMethodBindingElement.ProcessOutgoingMessage(DotNetOpenAuth.Messaging.IProtocolMessage)">
      <summary>
            Prepares a message for sending based on the rules of this channel binding element.
            </summary>
      <param name="message">The message to prepare for sending.</param>
      <returns>
            True if the <paramref name="message" /> applied to this binding element
            and the operation was successful.  False otherwise.
            </returns>
    </member>
    <member name="M:DotNetOpenAuth.OAuth.ChannelElements.OAuthHttpMethodBindingElement.ProcessIncomingMessage(DotNetOpenAuth.Messaging.IProtocolMessage)">
      <summary>
            Performs any transformation on an incoming message that may be necessary and/or
            validates an incoming message based on the rules of this channel binding element.
            </summary>
      <param name="message">The incoming message to process.</param>
      <returns>
            True if the <paramref name="message" /> applied to this binding element
            and the operation was successful.  False if the operation did not apply to this message.
            </returns>
      <exception cref="T:DotNetOpenAuth.Messaging.ProtocolException">
            Thrown when the binding element rules indicate that this message is invalid and should
            NOT be processed.
            </exception>
    </member>
    <member name="P:DotNetOpenAuth.OAuth.ChannelElements.OAuthHttpMethodBindingElement.Protection">
      <summary>
            Gets the protection offered (if any) by this binding element.
            </summary>
    </member>
    <member name="P:DotNetOpenAuth.OAuth.ChannelElements.OAuthHttpMethodBindingElement.Channel">
      <summary>
            Gets or sets the channel that this binding element belongs to.
            </summary>
    </member>
    <member name="T:DotNetOpenAuth.OAuth.ChannelElements.OAuthIdentity">
      <summary>
            Represents an OAuth consumer that is impersonating a known user on the system.
            </summary>
    </member>
    <member name="M:DotNetOpenAuth.OAuth.ChannelElements.OAuthIdentity.#ctor(System.String)">
      <summary>
            Initializes a new instance of the <see cref="T:DotNetOpenAuth.OAuth.ChannelElements.OAuthIdentity" /> class.
            </summary>
      <param name="username">The username.</param>
    </member>
    <member name="P:DotNetOpenAuth.OAuth.ChannelElements.OAuthIdentity.AuthenticationType">
      <summary>
            Gets the type of authentication used.
            </summary>
      <value>The constant "OAuth"</value>
      <returns>
            The type of authentication used to identify the user.
            </returns>
    </member>
    <member name="P:DotNetOpenAuth.OAuth.ChannelElements.OAuthIdentity.IsAuthenticated">
      <summary>
            Gets a value indicating whether the user has been authenticated.
            </summary>
      <value>The value <c>true</c></value>
      <returns>true if the user was authenticated; otherwise, false.
            </returns>
    </member>
    <member name="P:DotNetOpenAuth.OAuth.ChannelElements.OAuthIdentity.Name">
      <summary>
            Gets the name of the user who authorized the OAuth token the consumer is using for authorization.
            </summary>
      <returns>
            The name of the user on whose behalf the code is running.
            </returns>
    </member>
    <member name="T:DotNetOpenAuth.OAuth.ChannelElements.OAuthPrincipal">
      <summary>
            Represents an OAuth consumer that is impersonating a known user on the system.
            </summary>
    </member>
    <member name="F:DotNetOpenAuth.OAuth.ChannelElements.OAuthPrincipal.roles">
      <summary>
            The roles this user belongs to.
            </summary>
    </member>
    <member name="M:DotNetOpenAuth.OAuth.ChannelElements.OAuthPrincipal.#ctor(DotNetOpenAuth.OAuth.ChannelElements.IServiceProviderAccessToken)">
      <summary>
            Initializes a new instance of the <see cref="T:DotNetOpenAuth.OAuth.ChannelElements.OAuthPrincipal" /> class.
            </summary>
      <param name="token">The access token.</param>
    </member>
    <member name="M:DotNetOpenAuth.OAuth.ChannelElements.OAuthPrincipal.#ctor(DotNetOpenAuth.OAuth.ChannelElements.OAuthIdentity,System.String[])">
      <summary>
            Initializes a new instance of the <see cref="T:DotNetOpenAuth.OAuth.ChannelElements.OAuthPrincipal" /> class.
            </summary>
      <param name="identity">The identity.</param>
      <param name="roles">The roles this user belongs to.</param>
    </member>
    <member name="M:DotNetOpenAuth.OAuth.ChannelElements.OAuthPrincipal.#ctor(System.String,System.String[])">
      <summary>
            Initializes a new instance of the <see cref="T:DotNetOpenAuth.OAuth.ChannelElements.OAuthPrincipal" /> class.
            </summary>
      <param name="username">The username.</param>
      <param name="roles">The roles this user belongs to.</param>
    </member>
    <member name="M:DotNetOpenAuth.OAuth.ChannelElements.OAuthPrincipal.IsInRole(System.String)">
      <summary>
            Determines whether the current principal belongs to the specified role.
            </summary>
      <param name="role">The name of the role for which to check membership.</param>
      <returns>
            true if the current principal is a member of the specified role; otherwise, false.
            </returns>
      <remarks>
            The role membership check uses <see cref="P:System.StringComparer.OrdinalIgnoreCase" />.
            </remarks>
    </member>
    <member name="P:DotNetOpenAuth.OAuth.ChannelElements.OAuthPrincipal.AccessToken">
      <summary>
            Gets the access token used to create this principal.
            </summary>
      <value>A non-empty string.</value>
    </member>
    <member name="P:DotNetOpenAuth.OAuth.ChannelElements.OAuthPrincipal.Identity">
      <summary>
            Gets the identity of the current principal.
            </summary>
      <value />
      <returns>
            The <see cref="T:System.Security.Principal.IIdentity" /> object associated with the current principal.
            </returns>
    </member>
    <member name="T:DotNetOpenAuth.OAuth.ChannelElements.PlaintextSigningBindingElement">
      <summary>
            A binding element that signs outgoing messages and verifies the signature on incoming messages.
            </summary>
    </member>
    <member name="T:DotNetOpenAuth.OAuth.ChannelElements.SigningBindingElementBase">
      <summary>
            A binding element that signs outgoing messages and verifies the signature on incoming messages.
            </summary>
    </member>
    <member name="T:DotNetOpenAuth.Messaging.ITamperProtectionChannelBindingElement">
      <summary>
            An interface that must be implemented by message transforms/validators in order
            to be included in the channel stack.
            </summary>
    </member>
    <member name="M:DotNetOpenAuth.Messaging.ITamperProtectionChannelBindingElement.Clone">
      <summary>
            Clones this instance.
            </summary>
      <returns>The cloned instance.</returns>
    </member>
    <member name="P:DotNetOpenAuth.Messaging.ITamperProtectionChannelBindingElement.SignatureCallback">
      <summary>
            Gets or sets the delegate that will initialize the non-serialized properties necessary on a
            signable message so that its signature can be correctly calculated or verified.
            </summary>
    </member>
    <member name="F:DotNetOpenAuth.OAuth.ChannelElements.SigningBindingElementBase.signatureMethod">
      <summary>
            The signature method this binding element uses.
            </summary>
    </member>
    <member name="M:DotNetOpenAuth.OAuth.ChannelElements.SigningBindingElementBase.#ctor(System.String)">
      <summary>
            Initializes a new instance of the <see cref="T:DotNetOpenAuth.OAuth.ChannelElements.SigningBindingElementBase" /> class.
            </summary>
      <param name="signatureMethod">The OAuth signature method that the binding element uses.</param>
    </member>
    <member name="M:DotNetOpenAuth.OAuth.ChannelElements.SigningBindingElementBase.DotNetOpenAuth#Messaging#ITamperProtectionChannelBindingElement#Clone">
      <summary>
            Creates a new object that is a copy of the current instance.
            </summary>
      <returns>
            A new object that is a copy of this instance.
            </returns>
    </member>
    <member name="M:DotNetOpenAuth.OAuth.ChannelElements.SigningBindingElementBase.ProcessOutgoingMessage(DotNetOpenAuth.Messaging.IProtocolMessage)">
      <summary>
            Signs the outgoing message.
            </summary>
      <param name="message">The message to sign.</param>
      <returns>
            The protections (if any) that this binding element applied to the message.
            Null if this binding element did not even apply to this binding element.
            </returns>
    </member>
    <member name="M:DotNetOpenAuth.OAuth.ChannelElements.SigningBindingElementBase.ProcessIncomingMessage(DotNetOpenAuth.Messaging.IProtocolMessage)">
      <summary>
            Verifies the signature on an incoming message.
            </summary>
      <param name="message">The message whose signature should be verified.</param>
      <returns>
            The protections (if any) that this binding element applied to the message.
            Null if this binding element did not even apply to this binding element.
            </returns>
      <exception cref="T:DotNetOpenAuth.Messaging.Bindings.InvalidSignatureException">Thrown if the signature is invalid.</exception>
    </member>
    <member name="M:DotNetOpenAuth.OAuth.ChannelElements.SigningBindingElementBase.ConstructSignatureBaseString(DotNetOpenAuth.OAuth.ChannelElements.ITamperResistantOAuthMessage,DotNetOpenAuth.Messaging.Reflection.MessageDictionary)">
      <summary>
            Constructs the OAuth Signature Base String and returns the result.
            </summary>
      <param name="message">The message.</param>
      <param name="messageDictionary">The message to derive the signature base string from.</param>
      <returns>The signature base string.</returns>
      <remarks>
            This method implements OAuth 1.0 section 9.1.
            </remarks>
    </member>
    <member name="M:DotNetOpenAuth.OAuth.ChannelElements.SigningBindingElementBase.GetConsumerAndTokenSecretString(DotNetOpenAuth.OAuth.ChannelElements.ITamperResistantOAuthMessage)">
      <summary>
            Gets the "ConsumerSecret&amp;TokenSecret" string, allowing either property to be empty or null.
            </summary>
      <param name="message">The message to extract the secrets from.</param>
      <returns>The concatenated string.</returns>
    </member>
    <member name="M:DotNetOpenAuth.OAuth.ChannelElements.SigningBindingElementBase.IsSignatureValid(DotNetOpenAuth.OAuth.ChannelElements.ITamperResistantOAuthMessage)">
      <summary>
            Determines whether the signature on some message is valid.
            </summary>
      <param name="message">The message to check the signature on.</param>
      <returns>
        <c>true</c> if the signature on the message is valid; otherwise, <c>false</c>.
            </returns>
    </member>
    <member name="M:DotNetOpenAuth.OAuth.ChannelElements.SigningBindingElementBase.Clone">
      <summary>
            Clones this instance.
            </summary>
      <returns>A new instance of the binding element.</returns>
      <remarks>
            Implementations of this method need not clone the SignatureVerificationCallback member, as the
            <see cref="T:DotNetOpenAuth.OAuth.ChannelElements.SigningBindingElementBase" /> class does this.
            </remarks>
    </member>
    <member name="M:DotNetOpenAuth.OAuth.ChannelElements.SigningBindingElementBase.GetSignature(DotNetOpenAuth.OAuth.ChannelElements.ITamperResistantOAuthMessage)">
      <summary>
            Calculates a signature for a given message.
            </summary>
      <param name="message">The message to sign.</param>
      <returns>The signature for the message.</returns>
    </member>
    <member name="M:DotNetOpenAuth.OAuth.ChannelElements.SigningBindingElementBase.IsMessageApplicable(DotNetOpenAuth.OAuth.ChannelElements.ITamperResistantOAuthMessage)">
      <summary>
            Checks whether this binding element applies to this message.
            </summary>
      <param name="message">The message that needs to be signed.</param>
      <returns>True if this binding element can be used to sign the message.  False otherwise.</returns>
    </member>
    <member name="M:DotNetOpenAuth.OAuth.ChannelElements.SigningBindingElementBase.SignatureBaseStringParameterComparer(System.Collections.Generic.KeyValuePair{System.String,System.String},System.Collections.Generic.KeyValuePair{System.String,System.String})">
      <summary>
            Sorts parameters according to OAuth signature base string rules.
            </summary>
      <param name="left">The first parameter to compare.</param>
      <param name="right">The second parameter to compare.</param>
      <returns>Negative, zero or positive.</returns>
    </member>
    <member name="P:DotNetOpenAuth.OAuth.ChannelElements.SigningBindingElementBase.Protection">
      <summary>
            Gets the message protection provided by this binding element.
            </summary>
    </member>
    <member name="P:DotNetOpenAuth.OAuth.ChannelElements.SigningBindingElementBase.Channel">
      <summary>
            Gets or sets the channel that this binding element belongs to.
            </summary>
    </member>
    <member name="P:DotNetOpenAuth.OAuth.ChannelElements.SigningBindingElementBase.SignatureCallback">
      <summary>
            Gets or sets the delegate that will initialize the non-serialized properties necessary on a signed
            message so that its signature can be correctly calculated for verification.
            </summary>
    </member>
    <member name="M:DotNetOpenAuth.OAuth.ChannelElements.PlaintextSigningBindingElement.#ctor">
      <summary>
            Initializes a new instance of the <see cref="T:DotNetOpenAuth.OAuth.ChannelElements.PlaintextSigningBindingElement" /> class.
            </summary>
    </member>
    <member name="M:DotNetOpenAuth.OAuth.ChannelElements.PlaintextSigningBindingElement.GetSignature(DotNetOpenAuth.OAuth.ChannelElements.ITamperResistantOAuthMessage)">
      <summary>
            Calculates a signature for a given message.
            </summary>
      <param name="message">The message to sign.</param>
      <returns>The signature for the message.</returns>
      <remarks>
            This method signs the message according to OAuth 1.0 section 9.4.1.
            </remarks>
    </member>
    <member name="M:DotNetOpenAuth.OAuth.ChannelElements.PlaintextSigningBindingElement.IsMessageApplicable(DotNetOpenAuth.OAuth.ChannelElements.ITamperResistantOAuthMessage)">
      <summary>
            Checks whether this binding element applies to this message.
            </summary>
      <param name="message">The message that needs to be signed.</param>
      <returns>True if this binding element can be used to sign the message.  False otherwise.</returns>
    </member>
    <member name="M:DotNetOpenAuth.OAuth.ChannelElements.PlaintextSigningBindingElement.Clone">
      <summary>
            Clones this instance.
            </summary>
      <returns>A new instance of the binding element.</returns>
    </member>
    <member name="T:DotNetOpenAuth.OAuth.ChannelElements.HmacSha1SigningBindingElement">
      <summary>
            A binding element that signs outgoing messages and verifies the signature on incoming messages.
            </summary>
    </member>
    <member name="M:DotNetOpenAuth.OAuth.ChannelElements.HmacSha1SigningBindingElement.#ctor">
      <summary>
            Initializes a new instance of the <see cref="T:DotNetOpenAuth.OAuth.ChannelElements.HmacSha1SigningBindingElement" /> class
            </summary>
    </member>
    <member name="M:DotNetOpenAuth.OAuth.ChannelElements.HmacSha1SigningBindingElement.GetSignature(DotNetOpenAuth.OAuth.ChannelElements.ITamperResistantOAuthMessage)">
      <summary>
            Calculates a signature for a given message.
            </summary>
      <param name="message">The message to sign.</param>
      <returns>The signature for the message.</returns>
      <remarks>
            This method signs the message per OAuth 1.0 section 9.2.
            </remarks>
    </member>
    <member name="M:DotNetOpenAuth.OAuth.ChannelElements.HmacSha1SigningBindingElement.Clone">
      <summary>
            Clones this instance.
            </summary>
      <returns>A new instance of the binding element.</returns>
    </member>
    <member name="T:DotNetOpenAuth.OAuth.ChannelElements.IServiceProviderRequestToken">
      <summary>
            A description of a request token and its metadata as required by a Service Provider
            </summary>
    </member>
    <member name="P:DotNetOpenAuth.OAuth.ChannelElements.IServiceProviderRequestToken.Token">
      <summary>
            Gets the token itself.
            </summary>
    </member>
    <member name="P:DotNetOpenAuth.OAuth.ChannelElements.IServiceProviderRequestToken.ConsumerKey">
      <summary>
            Gets the consumer key that requested this token.
            </summary>
    </member>
    <member name="P:DotNetOpenAuth.OAuth.ChannelElements.IServiceProviderRequestToken.CreatedOn">
      <summary>
            Gets the (local) date that this request token was first created on.
            </summary>
    </member>
    <member name="P:DotNetOpenAuth.OAuth.ChannelElements.IServiceProviderRequestToken.Callback">
      <summary>
            Gets or sets the callback associated specifically with this token, if any.
            </summary>
      <value>The callback URI; or <c>null</c> if no callback was specifically assigned to this token.</value>
    </member>
    <member name="P:DotNetOpenAuth.OAuth.ChannelElements.IServiceProviderRequestToken.VerificationCode">
      <summary>
            Gets or sets the verifier that the consumer must include in the <see cref="T:DotNetOpenAuth.OAuth.Messages.AuthorizedTokenRequest" />
            message to exchange this request token for an access token.
            </summary>
      <value>The verifier code, or <c>null</c> if none has been assigned (yet).</value>
    </member>
    <member name="P:DotNetOpenAuth.OAuth.ChannelElements.IServiceProviderRequestToken.ConsumerVersion">
      <summary>
            Gets or sets the version of the Consumer that requested this token.
            </summary>
      <remarks>
            This property is used to determine whether a <see cref="P:DotNetOpenAuth.OAuth.ChannelElements.IServiceProviderRequestToken.VerificationCode" /> must be
            generated when the user authorizes the Consumer or not.
            </remarks>
    </member>
    <member name="T:DotNetOpenAuth.OAuth.ChannelElements.SigningBindingElementBaseContract">
      <summary>
            Code Contract for the <see cref="T:DotNetOpenAuth.OAuth.ChannelElements.SigningBindingElementBase" /> class.
            </summary>
    </member>
    <member name="M:DotNetOpenAuth.OAuth.ChannelElements.SigningBindingElementBaseContract.#ctor">
      <summary>
            Prevents a default instance of the SigningBindingElementBaseContract
            class from being created.
            </summary>
    </member>
    <member name="M:DotNetOpenAuth.OAuth.ChannelElements.SigningBindingElementBaseContract.Clone">
      <summary>
            Clones this instance.
            </summary>
      <returns>A new instance of the binding element.</returns>
      <remarks>
            Implementations of this method need not clone the SignatureVerificationCallback member, as the
            <see cref="T:DotNetOpenAuth.OAuth.ChannelElements.SigningBindingElementBase" /> class does this.
            </remarks>
    </member>
    <member name="M:DotNetOpenAuth.OAuth.ChannelElements.SigningBindingElementBaseContract.GetSignature(DotNetOpenAuth.OAuth.ChannelElements.ITamperResistantOAuthMessage)">
      <summary>
            Calculates a signature for a given message.
            </summary>
      <param name="message">The message to sign.</param>
      <returns>The signature for the message.</returns>
    </member>
    <member name="T:DotNetOpenAuth.OAuth.ChannelElements.SigningBindingElementChain">
      <summary>
            A tamper protection applying binding element that can use any of several given
            binding elements to apply the protection.
            </summary>
    </member>
    <member name="F:DotNetOpenAuth.OAuth.ChannelElements.SigningBindingElementChain.signers">
      <summary>
            The various signing binding elements that may be applicable to a message in preferred use order.
            </summary>
    </member>
    <member name="M:DotNetOpenAuth.OAuth.ChannelElements.SigningBindingElementChain.#ctor(DotNetOpenAuth.Messaging.ITamperProtectionChannelBindingElement[])">
      <summary>
            Initializes a new instance of the <see cref="T:DotNetOpenAuth.OAuth.ChannelElements.SigningBindingElementChain" /> class.
            </summary>
      <param name="signers">
            The signing binding elements that may be used for some outgoing message,
            in preferred use order.
            </param>
    </member>
    <member name="M:DotNetOpenAuth.OAuth.ChannelElements.SigningBindingElementChain.ProcessOutgoingMessage(DotNetOpenAuth.Messaging.IProtocolMessage)">
      <summary>
            Prepares a message for sending based on the rules of this channel binding element.
            </summary>
      <param name="message">The message to prepare for sending.</param>
      <returns>
            The protections (if any) that this binding element applied to the message.
            Null if this binding element did not even apply to this binding element.
            </returns>
    </member>
    <member name="M:DotNetOpenAuth.OAuth.ChannelElements.SigningBindingElementChain.ProcessIncomingMessage(DotNetOpenAuth.Messaging.IProtocolMessage)">
      <summary>
            Performs any transformation on an incoming message that may be necessary and/or
            validates an incoming message based on the rules of this channel binding element.
            </summary>
      <param name="message">The incoming message to process.</param>
      <returns>
            The protections (if any) that this binding element applied to the message.
            Null if this binding element did not even apply to this binding element.
            </returns>
    </member>
    <member name="M:DotNetOpenAuth.OAuth.ChannelElements.SigningBindingElementChain.DotNetOpenAuth#Messaging#ITamperProtectionChannelBindingElement#Clone">
      <summary>
            Creates a new object that is a copy of the current instance.
            </summary>
      <returns>
            A new object that is a copy of this instance.
            </returns>
    </member>
    <member name="P:DotNetOpenAuth.OAuth.ChannelElements.SigningBindingElementChain.SignatureCallback">
      <summary>
            Gets or sets the delegate that will initialize the non-serialized properties necessary on a signed
            message so that its signature can be correctly calculated for verification.
            May be null for Consumers (who never have to verify signatures).
            </summary>
    </member>
    <member name="P:DotNetOpenAuth.OAuth.ChannelElements.SigningBindingElementChain.Protection">
      <summary>
            Gets the protection offered (if any) by this binding element.
            </summary>
    </member>
    <member name="P:DotNetOpenAuth.OAuth.ChannelElements.SigningBindingElementChain.Channel">
      <summary>
            Gets or sets the channel that this binding element belongs to.
            </summary>
    </member>
    <member name="T:DotNetOpenAuth.OAuth.ChannelElements.StandardTokenGenerator">
      <summary>
            A cryptographically strong random string generator for tokens and secrets.
            </summary>
    </member>
    <member name="M:DotNetOpenAuth.OAuth.ChannelElements.StandardTokenGenerator.GenerateRequestToken(System.String)">
      <summary>
            Generates a new token to represent a not-yet-authorized request to access protected resources.
            </summary>
      <param name="consumerKey">The consumer that requested this token.</param>
      <returns>The newly generated token.</returns>
      <remarks>
            This method should not store the newly generated token in any persistent store.
            This will be done in <see cref="M:DotNetOpenAuth.OAuth.ChannelElements.ITokenManager.StoreNewRequestToken(DotNetOpenAuth.OAuth.Messages.UnauthorizedTokenRequest,DotNetOpenAuth.OAuth.Messages.ITokenSecretContainingMessage)" />.
            </remarks>
    </member>
    <member name="M:DotNetOpenAuth.OAuth.ChannelElements.StandardTokenGenerator.GenerateAccessToken(System.String)">
      <summary>
            Generates a new token to represent an authorized request to access protected resources.
            </summary>
      <param name="consumerKey">The consumer that requested this token.</param>
      <returns>The newly generated token.</returns>
      <remarks>
            This method should not store the newly generated token in any persistent store.
            This will be done in <see cref="M:DotNetOpenAuth.OAuth.ChannelElements.ITokenManager.ExpireRequestTokenAndStoreNewAccessToken(System.String,System.String,System.String,System.String)" />.
            </remarks>
    </member>
    <member name="M:DotNetOpenAuth.OAuth.ChannelElements.StandardTokenGenerator.GenerateSecret">
      <summary>
            Returns a cryptographically strong random string for use as a token secret.
            </summary>
      <returns>The generated string.</returns>
    </member>
    <member name="M:DotNetOpenAuth.OAuth.ChannelElements.StandardTokenGenerator.GenerateCryptographicallyStrongString">
      <summary>
            Returns a new random string.
            </summary>
      <returns>The new random string.</returns>
    </member>
    <member name="T:DotNetOpenAuth.OAuth.ChannelElements.TokenType">
      <summary>
            The two types of tokens that exist in the OAuth protocol.
            </summary>
    </member>
    <member name="F:DotNetOpenAuth.OAuth.ChannelElements.TokenType.RequestToken">
      <summary>
            A token that is freely issued to any known Consumer.
            It does not grant any authorization to access protected resources,
            but is used as a step in obtaining that access.
            </summary>
    </member>
    <member name="F:DotNetOpenAuth.OAuth.ChannelElements.TokenType.AccessToken">
      <summary>
            A token only obtained after the owner of some protected resource(s)
            has approved a Consumer's access to said resource(s).
            </summary>
    </member>
    <member name="F:DotNetOpenAuth.OAuth.ChannelElements.TokenType.InvalidToken">
      <summary>
            An unrecognized, expired or invalid token.
            </summary>
    </member>
    <member name="T:DotNetOpenAuth.OAuth.ChannelElements.UriOrOobEncoding">
      <summary>
            An URI encoder that translates null <see cref="T:System.Uri" /> references as "oob" 
            instead of an empty/missing argument.
            </summary>
    </member>
    <member name="F:DotNetOpenAuth.OAuth.ChannelElements.UriOrOobEncoding.OutOfBandConfiguration">
      <summary>
            The string constant "oob", used to indicate an out-of-band configuration.
            </summary>
    </member>
    <member name="M:DotNetOpenAuth.OAuth.ChannelElements.UriOrOobEncoding.#ctor">
      <summary>
            Initializes a new instance of the <see cref="T:DotNetOpenAuth.OAuth.ChannelElements.UriOrOobEncoding" /> class.
            </summary>
    </member>
    <member name="M:DotNetOpenAuth.OAuth.ChannelElements.UriOrOobEncoding.Encode(System.Object)">
      <summary>
            Encodes the specified value.
            </summary>
      <param name="value">The value.  Guaranteed to never be null.</param>
      <returns>
            The <paramref name="value" /> in string form, ready for message transport.
            </returns>
    </member>
    <member name="M:DotNetOpenAuth.OAuth.ChannelElements.UriOrOobEncoding.Decode(System.String)">
      <summary>
            Decodes the specified value.
            </summary>
      <param name="value">The string value carried by the transport.  Guaranteed to never be null, although it may be empty.</param>
      <returns>
            The deserialized form of the given string.
            </returns>
      <exception cref="T:System.FormatException">Thrown when the string value given cannot be decoded into the required object type.</exception>
    </member>
    <member name="P:DotNetOpenAuth.OAuth.ChannelElements.UriOrOobEncoding.EncodedNullValue">
      <summary>
            Gets the string representation to include in a serialized message
            when the message part has a <c>null</c> value.
            </summary>
      <value />
    </member>
    <member name="T:DotNetOpenAuth.OAuth.ChannelElements.TokenHandlingBindingElement">
      <summary>
            A binding element for Service Providers to manage the 
            callbacks and verification codes on applicable messages.
            </summary>
    </member>
    <member name="F:DotNetOpenAuth.OAuth.ChannelElements.TokenHandlingBindingElement.tokenManager">
      <summary>
            The token manager offered by the service provider.
            </summary>
    </member>
    <member name="M:DotNetOpenAuth.OAuth.ChannelElements.TokenHandlingBindingElement.#ctor(DotNetOpenAuth.OAuth.ChannelElements.IServiceProviderTokenManager)">
      <summary>
            Initializes a new instance of the <see cref="T:DotNetOpenAuth.OAuth.ChannelElements.TokenHandlingBindingElement" /> class.
            </summary>
      <param name="tokenManager">The token manager.</param>
    </member>
    <member name="M:DotNetOpenAuth.OAuth.ChannelElements.TokenHandlingBindingElement.ProcessOutgoingMessage(DotNetOpenAuth.Messaging.IProtocolMessage)">
      <summary>
            Prepares a message for sending based on the rules of this channel binding element.
            </summary>
      <param name="message">The message to prepare for sending.</param>
      <returns>
            The protections (if any) that this binding element applied to the message.
            Null if this binding element did not even apply to this binding element.
            </returns>
      <remarks>
            Implementations that provide message protection must honor the
            <see cref="P:DotNetOpenAuth.Messaging.MessagePartAttribute.RequiredProtection" /> properties where applicable.
            </remarks>
    </member>
    <member name="M:DotNetOpenAuth.OAuth.ChannelElements.TokenHandlingBindingElement.ProcessIncomingMessage(DotNetOpenAuth.Messaging.IProtocolMessage)">
      <summary>
            Performs any transformation on an incoming message that may be necessary and/or
            validates an incoming message based on the rules of this channel binding element.
            </summary>
      <param name="message">The incoming message to process.</param>
      <returns>
            The protections (if any) that this binding element applied to the message.
            Null if this binding element did not even apply to this binding element.
            </returns>
      <exception cref="T:DotNetOpenAuth.Messaging.ProtocolException">
            Thrown when the binding element rules indicate that this message is invalid and should
            NOT be processed.
            </exception>
      <remarks>
            Implementations that provide message protection must honor the
            <see cref="P:DotNetOpenAuth.Messaging.MessagePartAttribute.RequiredProtection" /> properties where applicable.
            </remarks>
    </member>
    <member name="M:DotNetOpenAuth.OAuth.ChannelElements.TokenHandlingBindingElement.VerifyThrowTokenNotExpired(DotNetOpenAuth.OAuth.Messages.AccessProtectedResourceRequest)">
      <summary>
            Ensures that access tokens have not yet expired.
            </summary>
      <param name="message">The incoming message carrying the access token.</param>
    </member>
    <member name="M:DotNetOpenAuth.OAuth.ChannelElements.TokenHandlingBindingElement.VerifyThrowTokenTimeToLive(DotNetOpenAuth.OAuth.Messages.ITokenContainingMessage)">
      <summary>
            Ensures that short-lived request tokens included in incoming messages have not expired.
            </summary>
      <param name="message">The incoming message.</param>
      <exception cref="T:DotNetOpenAuth.Messaging.ProtocolException">Thrown when the token in the message has expired.</exception>
    </member>
    <member name="P:DotNetOpenAuth.OAuth.ChannelElements.TokenHandlingBindingElement.Channel">
      <summary>
            Gets or sets the channel that this binding element belongs to.
            </summary>
      <remarks>
            This property is set by the channel when it is first constructed.
            </remarks>
    </member>
    <member name="P:DotNetOpenAuth.OAuth.ChannelElements.TokenHandlingBindingElement.Protection">
      <summary>
            Gets the protection commonly offered (if any) by this binding element.
            </summary>
      <remarks>
            This value is used to assist in sorting binding elements in the channel stack.
            </remarks>
    </member>
    <member name="T:DotNetOpenAuth.OAuth.ConsumerBase">
      <summary>
            Base class for <see cref="T:DotNetOpenAuth.OAuth.WebConsumer" /> and <see cref="T:DotNetOpenAuth.OAuth.DesktopConsumer" /> types.
            </summary>
    </member>
    <member name="M:DotNetOpenAuth.OAuth.ConsumerBase.#ctor(DotNetOpenAuth.OAuth.ServiceProviderDescription,DotNetOpenAuth.OAuth.ChannelElements.IConsumerTokenManager)">
      <summary>
            Initializes a new instance of the <see cref="T:DotNetOpenAuth.OAuth.ConsumerBase" /> class.
            </summary>
      <param name="serviceDescription">The endpoints and behavior of the Service Provider.</param>
      <param name="tokenManager">The host's method of storing and recalling tokens and secrets.</param>
    </member>
    <member name="M:DotNetOpenAuth.OAuth.ConsumerBase.PrepareAuthorizedRequest(DotNetOpenAuth.Messaging.MessageReceivingEndpoint,System.String)">
      <summary>
            Creates a web request prepared with OAuth authorization 
            that may be further tailored by adding parameters by the caller.
            </summary>
      <param name="endpoint">The URL and method on the Service Provider to send the request to.</param>
      <param name="accessToken">The access token that permits access to the protected resource.</param>
      <returns>The initialized WebRequest object.</returns>
    </member>
    <member name="M:DotNetOpenAuth.OAuth.ConsumerBase.PrepareAuthorizedRequest(DotNetOpenAuth.Messaging.MessageReceivingEndpoint,System.String,System.Collections.Generic.IDictionary{System.String,System.String})">
      <summary>
            Creates a web request prepared with OAuth authorization
            that may be further tailored by adding parameters by the caller.
            </summary>
      <param name="endpoint">The URL and method on the Service Provider to send the request to.</param>
      <param name="accessToken">The access token that permits access to the protected resource.</param>
      <param name="extraData">Extra parameters to include in the message.  Must not be null, but may be empty.</param>
      <returns>The initialized WebRequest object.</returns>
    </member>
    <member name="M:DotNetOpenAuth.OAuth.ConsumerBase.PrepareAuthorizedRequest(DotNetOpenAuth.OAuth.Messages.AccessProtectedResourceRequest)">
      <summary>
            Prepares an HTTP request that has OAuth authorization already attached to it.
            </summary>
      <param name="message">The OAuth authorization message to attach to the HTTP request.</param>
      <returns>
            The HttpWebRequest that can be used to send the HTTP request to the remote service provider.
            </returns>
      <remarks>
            If <see cref="P:DotNetOpenAuth.Messaging.IDirectedProtocolMessage.HttpMethods" /> property on the
            <paramref name="message" /> has the
            <see cref="F:DotNetOpenAuth.Messaging.HttpDeliveryMethods.AuthorizationHeaderRequest" /> flag set and
            <see cref="P:DotNetOpenAuth.OAuth.ChannelElements.ITamperResistantOAuthMessage.HttpMethod" /> is set to an HTTP method
            that includes an entity body, the request stream is automatically sent
            if and only if the <see cref="P:DotNetOpenAuth.Messaging.IMessage.ExtraData" /> dictionary is non-empty.
            </remarks>
    </member>
    <member name="M:DotNetOpenAuth.OAuth.ConsumerBase.PrepareAuthorizedRequestAndSend(DotNetOpenAuth.Messaging.MessageReceivingEndpoint,System.String)">
      <summary>
            Creates a web request prepared with OAuth authorization 
            that may be further tailored by adding parameters by the caller.
            </summary>
      <param name="endpoint">The URL and method on the Service Provider to send the request to.</param>
      <param name="accessToken">The access token that permits access to the protected resource.</param>
      <returns>The initialized WebRequest object.</returns>
      <exception cref="T:System.Net.WebException">Thrown if the request fails for any reason after it is sent to the Service Provider.</exception>
    </member>
    <member name="M:DotNetOpenAuth.OAuth.ConsumerBase.Dispose">
      <summary>
            Performs application-defined tasks associated with freeing, releasing, or resetting unmanaged resources.
            </summary>
    </member>
    <member name="M:DotNetOpenAuth.OAuth.ConsumerBase.CreateAuthorizingMessage(DotNetOpenAuth.Messaging.MessageReceivingEndpoint,System.String)">
      <summary>
            Creates a web request prepared with OAuth authorization 
            that may be further tailored by adding parameters by the caller.
            </summary>
      <param name="endpoint">The URL and method on the Service Provider to send the request to.</param>
      <param name="accessToken">The access token that permits access to the protected resource.</param>
      <returns>The initialized WebRequest object.</returns>
    </member>
    <member name="M:DotNetOpenAuth.OAuth.ConsumerBase.PrepareRequestUserAuthorization(System.Uri,System.Collections.Generic.IDictionary{System.String,System.String},System.Collections.Generic.IDictionary{System.String,System.String},System.String@)">
      <summary>
            Prepares an OAuth message that begins an authorization request that will 
            redirect the user to the Service Provider to provide that authorization.
            </summary>
      <param name="callback">
            An optional Consumer URL that the Service Provider should redirect the 
            User Agent to upon successful authorization.
            </param>
      <param name="requestParameters">Extra parameters to add to the request token message.  Optional.</param>
      <param name="redirectParameters">Extra parameters to add to the redirect to Service Provider message.  Optional.</param>
      <param name="requestToken">The request token that must be exchanged for an access token after the user has provided authorization.</param>
      <returns>The pending user agent redirect based message to be sent as an HttpResponse.</returns>
    </member>
    <member name="M:DotNetOpenAuth.OAuth.ConsumerBase.ProcessUserAuthorization(System.String,System.String)">
      <summary>
            Exchanges a given request token for access token.
            </summary>
      <param name="requestToken">The request token that the user has authorized.</param>
      <param name="verifier">The verifier code.</param>
      <returns>
            The access token assigned by the Service Provider.
            </returns>
    </member>
    <member name="M:DotNetOpenAuth.OAuth.ConsumerBase.Dispose(System.Boolean)">
      <summary>
            Releases unmanaged and - optionally - managed resources
            </summary>
      <param name="disposing">
        <c>true</c> to release both managed and unmanaged resources; <c>false</c> to release only unmanaged resources.</param>
    </member>
    <member name="P:DotNetOpenAuth.OAuth.ConsumerBase.ConsumerKey">
      <summary>
            Gets the Consumer Key used to communicate with the Service Provider.
            </summary>
    </member>
    <member name="P:DotNetOpenAuth.OAuth.ConsumerBase.ServiceProvider">
      <summary>
            Gets the Service Provider that will be accessed.
            </summary>
    </member>
    <member name="P:DotNetOpenAuth.OAuth.ConsumerBase.TokenManager">
      <summary>
            Gets the persistence store for tokens and secrets.
            </summary>
    </member>
    <member name="P:DotNetOpenAuth.OAuth.ConsumerBase.Channel">
      <summary>
            Gets the channel to use for sending/receiving messages.
            </summary>
    </member>
    <member name="P:DotNetOpenAuth.OAuth.ConsumerBase.SecuritySettings">
      <summary>
            Gets the security settings for this consumer.
            </summary>
    </member>
    <member name="P:DotNetOpenAuth.OAuth.ConsumerBase.OAuthChannel">
      <summary>
            Gets or sets the channel to use for sending/receiving messages.
            </summary>
    </member>
    <member name="T:DotNetOpenAuth.OAuth.ConsumerSecuritySettings">
      <summary>
            Security settings that are applicable to consumers.
            </summary>
    </member>
    <member name="T:DotNetOpenAuth.OAuth.SecuritySettings">
      <summary>
            Security settings that may be applicable to both consumers and service providers.
            </summary>
    </member>
    <member name="M:DotNetOpenAuth.OAuth.SecuritySettings.#ctor">
      <summary>
            Initializes a new instance of the <see cref="T:DotNetOpenAuth.OAuth.SecuritySettings" /> class.
            </summary>
    </member>
    <member name="M:DotNetOpenAuth.OAuth.ConsumerSecuritySettings.#ctor">
      <summary>
            Initializes a new instance of the <see cref="T:DotNetOpenAuth.OAuth.ConsumerSecuritySettings" /> class.
            </summary>
    </member>
    <member name="T:DotNetOpenAuth.OAuth.DesktopConsumer">
      <summary>
            Used by a desktop application to use OAuth to access the Service Provider on behalf of the User.
            </summary>
      <remarks>
            The methods on this class are thread-safe.  Provided the properties are set and not changed
            afterward, a single instance of this class may be used by an entire desktop application safely.
            </remarks>
    </member>
    <member name="M:DotNetOpenAuth.OAuth.DesktopConsumer.#ctor(DotNetOpenAuth.OAuth.ServiceProviderDescription,DotNetOpenAuth.OAuth.ChannelElements.IConsumerTokenManager)">
      <summary>
            Initializes a new instance of the <see cref="T:DotNetOpenAuth.OAuth.DesktopConsumer" /> class.
            </summary>
      <param name="serviceDescription">The endpoints and behavior of the Service Provider.</param>
      <param name="tokenManager">The host's method of storing and recalling tokens and secrets.</param>
    </member>
    <member name="M:DotNetOpenAuth.OAuth.DesktopConsumer.RequestUserAuthorization(System.Collections.Generic.IDictionary{System.String,System.String},System.Collections.Generic.IDictionary{System.String,System.String},System.String@)">
      <summary>
            Begins an OAuth authorization request.
            </summary>
      <param name="requestParameters">Extra parameters to add to the request token message.  Optional.</param>
      <param name="redirectParameters">Extra parameters to add to the redirect to Service Provider message.  Optional.</param>
      <param name="requestToken">The request token that must be exchanged for an access token after the user has provided authorization.</param>
      <returns>The URL to open a browser window to allow the user to provide authorization.</returns>
    </member>
    <member name="M:DotNetOpenAuth.OAuth.DesktopConsumer.ProcessUserAuthorization(System.String)">
      <summary>
            Exchanges a given request token for access token.
            </summary>
      <param name="requestToken">The request token that the user has authorized.</param>
      <returns>The access token assigned by the Service Provider.</returns>
    </member>
    <member name="M:DotNetOpenAuth.OAuth.DesktopConsumer.ProcessUserAuthorization(System.String,System.String)">
      <summary>
            Exchanges a given request token for access token.
            </summary>
      <param name="requestToken">The request token that the user has authorized.</param>
      <param name="verifier">The verifier code typed in by the user.  Must not be <c>Null</c> for OAuth 1.0a service providers and later.</param>
      <returns>
            The access token assigned by the Service Provider.
            </returns>
    </member>
    <member name="T:DotNetOpenAuth.OAuth.Messages.ITokenSecretContainingMessage">
      <summary>
            An interface implemented by all OAuth messages that have a request or access token and secret properties.
            </summary>
    </member>
    <member name="T:DotNetOpenAuth.OAuth.Messages.ITokenContainingMessage">
      <summary>
            An interface implemented by all OAuth messages that have a request or access token property.
            </summary>
    </member>
    <member name="P:DotNetOpenAuth.OAuth.Messages.ITokenContainingMessage.Token">
      <summary>
            Gets or sets the Request or Access Token.
            </summary>
    </member>
    <member name="P:DotNetOpenAuth.OAuth.Messages.ITokenSecretContainingMessage.TokenSecret">
      <summary>
            Gets or sets the Request or Access Token secret.
            </summary>
    </member>
    <member name="T:DotNetOpenAuth.Messaging.ChannelEventArgs">
      <summary>
            The data packet sent with Channel events.
            </summary>
    </member>
    <member name="M:DotNetOpenAuth.Messaging.ChannelEventArgs.#ctor(DotNetOpenAuth.Messaging.IProtocolMessage)">
      <summary>
            Initializes a new instance of the <see cref="T:DotNetOpenAuth.Messaging.ChannelEventArgs" /> class.
            </summary>
      <param name="message">The message behind the fired event..</param>
    </member>
    <member name="P:DotNetOpenAuth.Messaging.ChannelEventArgs.Message">
      <summary>
            Gets the message that caused the event to fire.
            </summary>
    </member>
    <member name="T:DotNetOpenAuth.OAuth.OAuthStrings">
      <summary>
              A strongly-typed resource class, for looking up localized strings, etc.
            </summary>
    </member>
    <member name="P:DotNetOpenAuth.OAuth.OAuthStrings.ResourceManager">
      <summary>
              Returns the cached ResourceManager instance used by this class.
            </summary>
    </member>
    <member name="P:DotNetOpenAuth.OAuth.OAuthStrings.Culture">
      <summary>
              Overrides the current thread's CurrentUICulture property for all
              resource lookups using this strongly typed resource class.
            </summary>
    </member>
    <member name="P:DotNetOpenAuth.OAuth.OAuthStrings.AccessTokenNotAuthorized">
      <summary>
              Looks up a localized string similar to Cannot send access token to Consumer for request token '{0}' before it has been authorized..
            </summary>
    </member>
    <member name="P:DotNetOpenAuth.OAuth.OAuthStrings.BadAccessTokenInProtectedResourceRequest">
      <summary>
              Looks up a localized string similar to The access token '{0}' is invalid or expired..
            </summary>
    </member>
    <member name="P:DotNetOpenAuth.OAuth.OAuthStrings.ConsumerOrTokenSecretNotFound">
      <summary>
              Looks up a localized string similar to Failure looking up secret for consumer or token..
            </summary>
    </member>
    <member name="P:DotNetOpenAuth.OAuth.OAuthStrings.IncorrectVerifier">
      <summary>
              Looks up a localized string similar to oauth_verifier argument was incorrect..
            </summary>
    </member>
    <member name="P:DotNetOpenAuth.OAuth.OAuthStrings.InvalidIncomingMessage">
      <summary>
              Looks up a localized string similar to An invalid OAuth message received and discarded..
            </summary>
    </member>
    <member name="P:DotNetOpenAuth.OAuth.OAuthStrings.MessageNotAllowedExtraParameters">
      <summary>
              Looks up a localized string similar to The {0} message included extra data which is not allowed..
            </summary>
    </member>
    <member name="P:DotNetOpenAuth.OAuth.OAuthStrings.OpenIdOAuthExtensionRequiresSpecialTokenManagerInterface">
      <summary>
              Looks up a localized string similar to Use of the OpenID+OAuth extension requires that the token manager in use implement the {0} interface..
            </summary>
    </member>
    <member name="P:DotNetOpenAuth.OAuth.OAuthStrings.OpenIdOAuthRealmConsumerKeyDoNotMatch">
      <summary>
              Looks up a localized string similar to The OpenID Relying Party's realm is not recognized as belonging to the OAuth Consumer identified by the consumer key given..
            </summary>
    </member>
    <member name="P:DotNetOpenAuth.OAuth.OAuthStrings.MinimumConsumerVersionRequirementNotMet">
      <summary>
              Looks up a localized string similar to This OAuth service provider requires OAuth consumers to implement OAuth {0}, but this consumer appears to only support {1}..
            </summary>
    </member>
    <member name="P:DotNetOpenAuth.OAuth.OAuthStrings.RequestUrlMustNotHaveOAuthParameters">
      <summary>
              Looks up a localized string similar to The request URL query MUST NOT contain any OAuth Protocol Parameters..
            </summary>
    </member>
    <member name="P:DotNetOpenAuth.OAuth.OAuthStrings.SigningElementAlreadyAssociatedWithChannel">
      <summary>
              Looks up a localized string similar to The signing element already has been associated with a channel..
            </summary>
    </member>
    <member name="P:DotNetOpenAuth.OAuth.OAuthStrings.SigningElementsMustShareSameProtection">
      <summary>
              Looks up a localized string similar to All signing elements must offer the same message protection..
            </summary>
    </member>
    <member name="P:DotNetOpenAuth.OAuth.OAuthStrings.TokenNotFound">
      <summary>
              Looks up a localized string similar to A token in the message was not recognized by the service provider..
            </summary>
    </member>
    <member name="P:DotNetOpenAuth.OAuth.OAuthStrings.X509CertificateNotProvidedForSigning">
      <summary>
              Looks up a localized string similar to The RSA-SHA1 signing binding element has not been set with a certificate for signing..
            </summary>
    </member>
    <member name="T:DotNetOpenAuth.OAuth.ServiceProviderDescription">
      <summary>
            A description of the endpoints on a Service Provider.
            </summary>
    </member>
    <member name="F:DotNetOpenAuth.OAuth.ServiceProviderDescription.requestTokenEndpoint">
      <summary>
            The field used to store the value of the <see cref="P:DotNetOpenAuth.OAuth.ServiceProviderDescription.RequestTokenEndpoint" /> property.
            </summary>
    </member>
    <member name="M:DotNetOpenAuth.OAuth.ServiceProviderDescription.#ctor">
      <summary>
            Initializes a new instance of the <see cref="T:DotNetOpenAuth.OAuth.ServiceProviderDescription" /> class.
            </summary>
    </member>
    <member name="M:DotNetOpenAuth.OAuth.ServiceProviderDescription.CreateTamperProtectionElement">
      <summary>
            Creates a signing element that includes all the signing elements this service provider supports.
            </summary>
      <returns>The created signing element.</returns>
    </member>
    <member name="P:DotNetOpenAuth.OAuth.ServiceProviderDescription.ProtocolVersion">
      <summary>
            Gets or sets the OAuth version supported by the Service Provider.
            </summary>
    </member>
    <member name="P:DotNetOpenAuth.OAuth.ServiceProviderDescription.RequestTokenEndpoint">
      <summary>
            Gets or sets the URL used to obtain an unauthorized Request Token,
            described in Section 6.1 (Obtaining an Unauthorized Request Token).
            </summary>
      <remarks>
            The request URL query MUST NOT contain any OAuth Protocol Parameters.
            This is the URL that <see cref="T:DotNetOpenAuth.OAuth.Messages.UnauthorizedTokenRequest" /> messages are directed to.
            </remarks>
      <exception cref="T:System.ArgumentException">Thrown if this property is set to a URI with OAuth protocol parameters.</exception>
    </member>
    <member name="P:DotNetOpenAuth.OAuth.ServiceProviderDescription.UserAuthorizationEndpoint">
      <summary>
            Gets or sets the URL used to obtain User authorization for Consumer access, 
            described in Section 6.2 (Obtaining User Authorization).
            </summary>
      <remarks>
            This is the URL that <see cref="T:DotNetOpenAuth.OAuth.Messages.UserAuthorizationRequest" /> messages are
            indirectly (via the user agent) sent to.
            </remarks>
    </member>
    <member name="P:DotNetOpenAuth.OAuth.ServiceProviderDescription.AccessTokenEndpoint">
      <summary>
            Gets or sets the URL used to exchange the User-authorized Request Token 
            for an Access Token, described in Section 6.3 (Obtaining an Access Token).
            </summary>
      <remarks>
            This is the URL that <see cref="T:DotNetOpenAuth.OAuth.Messages.AuthorizedTokenRequest" /> messages are directed to.
            </remarks>
    </member>
    <member name="P:DotNetOpenAuth.OAuth.ServiceProviderDescription.TamperProtectionElements">
      <summary>
            Gets or sets the signing policies that apply to this Service Provider.
            </summary>
    </member>
    <member name="P:DotNetOpenAuth.OAuth.ServiceProviderDescription.Version">
      <summary>
            Gets the OAuth version supported by the Service Provider.
            </summary>
    </member>
    <member name="T:DotNetOpenAuth.OAuth.Messages.SignedMessageBase">
      <summary>
            A base class for all signed OAuth messages.
            </summary>
    </member>
    <member name="T:DotNetOpenAuth.OAuth.Messages.MessageBase">
      <summary>
            A base class for all OAuth messages.
            </summary>
    </member>
    <member name="T:DotNetOpenAuth.Messaging.IDirectedProtocolMessage">
      <summary>
            Implemented by messages that have explicit recipients
            (direct requests and all indirect messages).
            </summary>
    </member>
    <member name="P:DotNetOpenAuth.Messaging.IDirectedProtocolMessage.HttpMethods">
      <summary>
            Gets the preferred method of transport for the message.
            </summary>
      <remarks>
            For indirect messages this will likely be GET+POST, which both can be simulated in the user agent:
            the GET with a simple 301 Redirect, and the POST with an HTML form in the response with javascript
            to automate submission.
            </remarks>
    </member>
    <member name="P:DotNetOpenAuth.Messaging.IDirectedProtocolMessage.Recipient">
      <summary>
            Gets the URL of the intended receiver of this message.
            </summary>
    </member>
    <member name="F:DotNetOpenAuth.OAuth.Messages.MessageBase.extraData">
      <summary>
            A store for extra name/value data pairs that are attached to this message.
            </summary>
    </member>
    <member name="F:DotNetOpenAuth.OAuth.Messages.MessageBase.protectionRequired">
      <summary>
            Gets a value indicating whether signing this message is required.
            </summary>
    </member>
    <member name="F:DotNetOpenAuth.OAuth.Messages.MessageBase.transport">
      <summary>
            Gets a value indicating whether this is a direct or indirect message.
            </summary>
    </member>
    <member name="F:DotNetOpenAuth.OAuth.Messages.MessageBase.recipient">
      <summary>
            The URI to the remote endpoint to send this message to.
            </summary>
    </member>
    <member name="F:DotNetOpenAuth.OAuth.Messages.MessageBase.originatingRequest">
      <summary>
            Backing store for the <see cref="P:DotNetOpenAuth.OAuth.Messages.MessageBase.OriginatingRequest" /> properties.
            </summary>
    </member>
    <member name="F:DotNetOpenAuth.OAuth.Messages.MessageBase.incoming">
      <summary>
            Backing store for the <see cref="P:DotNetOpenAuth.OAuth.Messages.MessageBase.Incoming" /> properties.
            </summary>
    </member>
    <member name="M:DotNetOpenAuth.OAuth.Messages.MessageBase.#ctor(DotNetOpenAuth.Messaging.MessageProtections,DotNetOpenAuth.Messaging.IDirectedProtocolMessage,System.Version)">
      <summary>
            Initializes a new instance of the <see cref="T:DotNetOpenAuth.OAuth.Messages.MessageBase" /> class for direct response messages.
            </summary>
      <param name="protectionRequired">The level of protection the message requires.</param>
      <param name="originatingRequest">The request that asked for this direct response.</param>
      <param name="version">The OAuth version.</param>
    </member>
    <member name="M:DotNetOpenAuth.OAuth.Messages.MessageBase.#ctor(DotNetOpenAuth.Messaging.MessageProtections,DotNetOpenAuth.Messaging.MessageTransport,DotNetOpenAuth.Messaging.MessageReceivingEndpoint,System.Version)">
      <summary>
            Initializes a new instance of the <see cref="T:DotNetOpenAuth.OAuth.Messages.MessageBase" /> class for direct requests or indirect messages.
            </summary>
      <param name="protectionRequired">The level of protection the message requires.</param>
      <param name="transport">A value indicating whether this message requires a direct or indirect transport.</param>
      <param name="recipient">The URI that a directed message will be delivered to.</param>
      <param name="version">The OAuth version.</param>
    </member>
    <member name="M:DotNetOpenAuth.OAuth.Messages.MessageBase.DotNetOpenAuth#Messaging#IMessage#EnsureValidMessage">
      <summary>
            Checks the message state for conformity to the protocol specification
            and throws an exception if the message is invalid.
            </summary>
    </member>
    <member name="M:DotNetOpenAuth.OAuth.Messages.MessageBase.ToString(DotNetOpenAuth.Messaging.Channel)">
      <summary>
            Returns a human-friendly string describing the message and all serializable properties.
            </summary>
      <param name="channel">The channel that will carry this message.</param>
      <returns>
            The string representation of this object.
            </returns>
    </member>
    <member name="M:DotNetOpenAuth.OAuth.Messages.MessageBase.SetAsIncoming">
      <summary>
            Sets a flag indicating that this message is received (as opposed to sent).
            </summary>
    </member>
    <member name="M:DotNetOpenAuth.OAuth.Messages.MessageBase.EnsureValidMessage">
      <summary>
            Checks the message state for conformity to the protocol specification
            and throws an exception if the message is invalid.
            </summary>
    </member>
    <member name="P:DotNetOpenAuth.OAuth.Messages.MessageBase.DotNetOpenAuth#Messaging#IMessage#Version">
      <summary>
            Gets the version of the protocol this message is prepared to implement.
            </summary>
    </member>
    <member name="P:DotNetOpenAuth.OAuth.Messages.MessageBase.DotNetOpenAuth#Messaging#IProtocolMessage#RequiredProtection">
      <summary>
            Gets the level of protection this message requires.
            </summary>
    </member>
    <member name="P:DotNetOpenAuth.OAuth.Messages.MessageBase.DotNetOpenAuth#Messaging#IProtocolMessage#Transport">
      <summary>
            Gets a value indicating whether this is a direct or indirect message.
            </summary>
    </member>
    <member name="P:DotNetOpenAuth.OAuth.Messages.MessageBase.DotNetOpenAuth#Messaging#IMessage#ExtraData">
      <summary>
            Gets the dictionary of additional name/value fields tacked on to this message.
            </summary>
    </member>
    <member name="P:DotNetOpenAuth.OAuth.Messages.MessageBase.DotNetOpenAuth#Messaging#IDirectedProtocolMessage#Recipient">
      <summary>
            Gets the URI to the Service Provider endpoint to send this message to.
            </summary>
    </member>
    <member name="P:DotNetOpenAuth.OAuth.Messages.MessageBase.DotNetOpenAuth#Messaging#IDirectedProtocolMessage#HttpMethods">
      <summary>
            Gets the preferred method of transport for the message.
            </summary>
    </member>
    <member name="P:DotNetOpenAuth.OAuth.Messages.MessageBase.DotNetOpenAuth#Messaging#IDirectResponseProtocolMessage#OriginatingRequest">
      <summary>
            Gets the originating request message that caused this response to be formed.
            </summary>
    </member>
    <member name="P:DotNetOpenAuth.OAuth.Messages.MessageBase.LowSecurityMode">
      <summary>
            Gets or sets a value indicating whether security sensitive strings are 
            emitted from the ToString() method.
            </summary>
    </member>
    <member name="P:DotNetOpenAuth.OAuth.Messages.MessageBase.Incoming">
      <summary>
            Gets a value indicating whether this message was deserialized as an incoming message.
            </summary>
    </member>
    <member name="P:DotNetOpenAuth.OAuth.Messages.MessageBase.Version">
      <summary>
            Gets the version of the protocol this message is prepared to implement.
            </summary>
    </member>
    <member name="P:DotNetOpenAuth.OAuth.Messages.MessageBase.RequiredProtection">
      <summary>
            Gets the level of protection this message requires.
            </summary>
    </member>
    <member name="P:DotNetOpenAuth.OAuth.Messages.MessageBase.Transport">
      <summary>
            Gets a value indicating whether this is a direct or indirect message.
            </summary>
    </member>
    <member name="P:DotNetOpenAuth.OAuth.Messages.MessageBase.ExtraData">
      <summary>
            Gets the dictionary of additional name/value fields tacked on to this message.
            </summary>
    </member>
    <member name="P:DotNetOpenAuth.OAuth.Messages.MessageBase.HttpMethods">
      <summary>
            Gets the preferred method of transport for the message.
            </summary>
    </member>
    <member name="P:DotNetOpenAuth.OAuth.Messages.MessageBase.Recipient">
      <summary>
            Gets or sets the URI to the Service Provider endpoint to send this message to.
            </summary>
    </member>
    <member name="P:DotNetOpenAuth.OAuth.Messages.MessageBase.OriginatingRequest">
      <summary>
            Gets the originating request message that caused this response to be formed.
            </summary>
    </member>
    <member name="T:DotNetOpenAuth.OAuth.ChannelElements.ITamperResistantOAuthMessage">
      <summary>
            An interface that OAuth messages implement to support signing.
            </summary>
    </member>
    <member name="T:DotNetOpenAuth.Messaging.ITamperResistantProtocolMessage">
      <summary>
            The contract a message that is signed must implement.
            </summary>
      <remarks>
            This type might have appeared in the DotNetOpenAuth.Messaging.Bindings namespace since
            it is only used by types in that namespace, but all those types are internal and this
            is the only one that was public.
            </remarks>
    </member>
    <member name="P:DotNetOpenAuth.Messaging.ITamperResistantProtocolMessage.Signature">
      <summary>
            Gets or sets the message signature.
            </summary>
    </member>
    <member name="P:DotNetOpenAuth.OAuth.ChannelElements.ITamperResistantOAuthMessage.SignatureMethod">
      <summary>
            Gets or sets the method used to sign the message.
            </summary>
    </member>
    <member name="P:DotNetOpenAuth.OAuth.ChannelElements.ITamperResistantOAuthMessage.TokenSecret">
      <summary>
            Gets or sets the Token Secret used to sign the message.
            </summary>
    </member>
    <member name="P:DotNetOpenAuth.OAuth.ChannelElements.ITamperResistantOAuthMessage.ConsumerKey">
      <summary>
            Gets or sets the Consumer key.
            </summary>
    </member>
    <member name="P:DotNetOpenAuth.OAuth.ChannelElements.ITamperResistantOAuthMessage.ConsumerSecret">
      <summary>
            Gets or sets the Consumer Secret used to sign the message.
            </summary>
    </member>
    <member name="P:DotNetOpenAuth.OAuth.ChannelElements.ITamperResistantOAuthMessage.HttpMethod">
      <summary>
            Gets or sets the HTTP method that will be used to transmit the message.
            </summary>
    </member>
    <member name="P:DotNetOpenAuth.OAuth.ChannelElements.ITamperResistantOAuthMessage.Recipient">
      <summary>
            Gets or sets the URL of the intended receiver of this message.
            </summary>
    </member>
    <member name="T:DotNetOpenAuth.Messaging.Bindings.IExpiringProtocolMessage">
      <summary>
            The contract a message that has an allowable time window for processing must implement.
            </summary>
      <remarks>
            All expiring messages must also be signed to prevent tampering with the creation date.
            </remarks>
    </member>
    <member name="P:DotNetOpenAuth.Messaging.Bindings.IExpiringProtocolMessage.UtcCreationDate">
      <summary>
            Gets or sets the UTC date/time the message was originally sent onto the network.
            </summary>
      <remarks>
            The property setter should ensure a UTC date/time,
            and throw an exception if this is not possible.
            </remarks>
      <exception cref="T:System.ArgumentException">
            Thrown when a DateTime that cannot be converted to UTC is set.
            </exception>
    </member>
    <member name="T:DotNetOpenAuth.Messaging.Bindings.IReplayProtectedProtocolMessage">
      <summary>
            The contract a message that has an allowable time window for processing must implement.
            </summary>
      <remarks>
            All replay-protected messages must also be set to expire so the nonces do not have
            to be stored indefinitely.
            </remarks>
    </member>
    <member name="P:DotNetOpenAuth.Messaging.Bindings.IReplayProtectedProtocolMessage.NonceContext">
      <summary>
            Gets the context within which the nonce must be unique.
            </summary>
      <value>
            The value of this property must be a value assigned by the nonce consumer
            to represent the entity that generated the nonce.  The value must never be
            <c>null</c> but may be the empty string.
            This value is treated as case-sensitive.
            </value>
    </member>
    <member name="P:DotNetOpenAuth.Messaging.Bindings.IReplayProtectedProtocolMessage.Nonce">
      <summary>
            Gets or sets the nonce that will protect the message from replay attacks.
            </summary>
    </member>
    <member name="F:DotNetOpenAuth.OAuth.Messages.SignedMessageBase.epoch">
      <summary>
            The reference date and time for calculating time stamps.
            </summary>
    </member>
    <member name="F:DotNetOpenAuth.OAuth.Messages.SignedMessageBase.timestamp">
      <summary>
            The number of seconds since 1/1/1970, consistent with the OAuth timestamp requirement.
            </summary>
    </member>
    <member name="M:DotNetOpenAuth.OAuth.Messages.SignedMessageBase.#ctor(DotNetOpenAuth.Messaging.MessageTransport,DotNetOpenAuth.Messaging.MessageReceivingEndpoint,System.Version)">
      <summary>
            Initializes a new instance of the <see cref="T:DotNetOpenAuth.OAuth.Messages.SignedMessageBase" /> class.
            </summary>
      <param name="transport">A value indicating whether this message requires a direct or indirect transport.</param>
      <param name="recipient">The URI that a directed message will be delivered to.</param>
      <param name="version">The OAuth version.</param>
    </member>
    <member name="P:DotNetOpenAuth.OAuth.Messages.SignedMessageBase.DotNetOpenAuth#OAuth#ChannelElements#ITamperResistantOAuthMessage#SignatureMethod">
      <summary>
            Gets or sets the signature method used to sign the request.
            </summary>
    </member>
    <member name="P:DotNetOpenAuth.OAuth.Messages.SignedMessageBase.DotNetOpenAuth#OAuth#ChannelElements#ITamperResistantOAuthMessage#TokenSecret">
      <summary>
            Gets or sets the Token Secret used to sign the message.
            </summary>
    </member>
    <member name="P:DotNetOpenAuth.OAuth.Messages.SignedMessageBase.ConsumerKey">
      <summary>
            Gets or sets the Consumer key.
            </summary>
    </member>
    <member name="P:DotNetOpenAuth.OAuth.Messages.SignedMessageBase.DotNetOpenAuth#OAuth#ChannelElements#ITamperResistantOAuthMessage#ConsumerSecret">
      <summary>
            Gets or sets the Consumer Secret used to sign the message.
            </summary>
    </member>
    <member name="P:DotNetOpenAuth.OAuth.Messages.SignedMessageBase.DotNetOpenAuth#OAuth#ChannelElements#ITamperResistantOAuthMessage#HttpMethod">
      <summary>
            Gets or sets the HTTP method that will be used to transmit the message.
            </summary>
    </member>
    <member name="P:DotNetOpenAuth.OAuth.Messages.SignedMessageBase.DotNetOpenAuth#OAuth#ChannelElements#ITamperResistantOAuthMessage#Recipient">
      <summary>
            Gets or sets the URI to the Service Provider endpoint to send this message to.
            </summary>
    </member>
    <member name="P:DotNetOpenAuth.OAuth.Messages.SignedMessageBase.DotNetOpenAuth#Messaging#ITamperResistantProtocolMessage#Signature">
      <summary>
            Gets or sets the message signature.
            </summary>
    </member>
    <member name="P:DotNetOpenAuth.OAuth.Messages.SignedMessageBase.DotNetOpenAuth#Messaging#Bindings#IExpiringProtocolMessage#UtcCreationDate">
      <summary>
            Gets or sets the OAuth timestamp of the message.
            </summary>
    </member>
    <member name="P:DotNetOpenAuth.OAuth.Messages.SignedMessageBase.DotNetOpenAuth#Messaging#Bindings#IReplayProtectedProtocolMessage#NonceContext">
      <summary>
            Gets the context within which the nonce must be unique.
            </summary>
      <value>The consumer key.</value>
    </member>
    <member name="P:DotNetOpenAuth.OAuth.Messages.SignedMessageBase.DotNetOpenAuth#Messaging#Bindings#IReplayProtectedProtocolMessage#Nonce">
      <summary>
            Gets or sets the message nonce used for replay detection.
            </summary>
    </member>
    <member name="P:DotNetOpenAuth.OAuth.Messages.SignedMessageBase.SignatureMethod">
      <summary>
            Gets or sets the signature method used to sign the request.
            </summary>
    </member>
    <member name="P:DotNetOpenAuth.OAuth.Messages.SignedMessageBase.TokenSecret">
      <summary>
            Gets or sets the Token Secret used to sign the message.
            </summary>
    </member>
    <member name="P:DotNetOpenAuth.OAuth.Messages.SignedMessageBase.ConsumerSecret">
      <summary>
            Gets or sets the Consumer Secret used to sign the message.
            </summary>
    </member>
    <member name="P:DotNetOpenAuth.OAuth.Messages.SignedMessageBase.HttpMethod">
      <summary>
            Gets or sets the HTTP method that will be used to transmit the message.
            </summary>
    </member>
    <member name="P:DotNetOpenAuth.OAuth.Messages.SignedMessageBase.Signature">
      <summary>
            Gets or sets the message signature.
            </summary>
    </member>
    <member name="P:DotNetOpenAuth.OAuth.Messages.SignedMessageBase.OAuthVersion">
      <summary>
            Gets or sets the version of the protocol this message was created with.
            </summary>
    </member>
    <member name="T:DotNetOpenAuth.Messaging.Bindings.NonceMemoryStore">
      <summary>
            An in-memory nonce store.  Useful for single-server web applications.
            NOT for web farms.
            </summary>
    </member>
    <member name="T:DotNetOpenAuth.Messaging.Bindings.INonceStore">
      <summary>
            Describes the contract a nonce store must fulfill.
            </summary>
    </member>
    <member name="M:DotNetOpenAuth.Messaging.Bindings.INonceStore.StoreNonce(System.String,System.String,System.DateTime)">
      <summary>
            Stores a given nonce and timestamp.
            </summary>
      <param name="context">The context, or namespace, within which the 
            <paramref name="nonce" /> must be unique.  
            The context SHOULD be treated as case-sensitive.
            The value will never be <c>null</c> but may be the empty string.</param>
      <param name="nonce">A series of random characters.</param>
      <param name="timestampUtc">The UTC timestamp that together with the nonce string make it unique
            within the given <paramref name="context" />.
            The timestamp may also be used by the data store to clear out old nonces.</param>
      <returns>
            True if the context+nonce+timestamp (combination) was not previously in the database.
            False if the nonce was stored previously with the same timestamp and context.
            </returns>
      <remarks>
            The nonce must be stored for no less than the maximum time window a message may
            be processed within before being discarded as an expired message.
            This maximum message age can be looked up via the
            <see cref="P:DotNetOpenAuth.Configuration.MessagingElement.MaximumMessageLifetime" />
            property, accessible via the <see cref="P:DotNetOpenAuth.Configuration.DotNetOpenAuthSection.Configuration" />
            property.
            </remarks>
    </member>
    <member name="F:DotNetOpenAuth.Messaging.Bindings.NonceMemoryStore.AutoCleaningFrequency">
      <summary>
            How frequently we should take time to clear out old nonces.
            </summary>
    </member>
    <member name="F:DotNetOpenAuth.Messaging.Bindings.NonceMemoryStore.maximumMessageAge">
      <summary>
            The maximum age a message can be before it is discarded.
            </summary>
      <remarks>
            This is useful for knowing how long used nonces must be retained.
            </remarks>
    </member>
    <member name="F:DotNetOpenAuth.Messaging.Bindings.NonceMemoryStore.usedNonces">
      <summary>
            A list of the consumed nonces.
            </summary>
    </member>
    <member name="F:DotNetOpenAuth.Messaging.Bindings.NonceMemoryStore.nonceLock">
      <summary>
            A lock object used around accesses to the <see cref="F:DotNetOpenAuth.Messaging.Bindings.NonceMemoryStore.usedNonces" /> field.
            </summary>
    </member>
    <member name="F:DotNetOpenAuth.Messaging.Bindings.NonceMemoryStore.nonceClearingCounter">
      <summary>
            Where we're currently at in our periodic nonce cleaning cycle.
            </summary>
    </member>
    <member name="M:DotNetOpenAuth.Messaging.Bindings.NonceMemoryStore.#ctor">
      <summary>
            Initializes a new instance of the <see cref="T:DotNetOpenAuth.Messaging.Bindings.NonceMemoryStore" /> class.
            </summary>
    </member>
    <member name="M:DotNetOpenAuth.Messaging.Bindings.NonceMemoryStore.#ctor(System.TimeSpan)">
      <summary>
            Initializes a new instance of the <see cref="T:DotNetOpenAuth.Messaging.Bindings.NonceMemoryStore" /> class.
            </summary>
      <param name="maximumMessageAge">The maximum age a message can be before it is discarded.</param>
    </member>
    <member name="M:DotNetOpenAuth.Messaging.Bindings.NonceMemoryStore.StoreNonce(System.String,System.String,System.DateTime)">
      <summary>
            Stores a given nonce and timestamp.
            </summary>
      <param name="context">The context, or namespace, within which the <paramref name="nonce" /> must be unique.</param>
      <param name="nonce">A series of random characters.</param>
      <param name="timestamp">The timestamp that together with the nonce string make it unique.
            The timestamp may also be used by the data store to clear out old nonces.</param>
      <returns>
            True if the nonce+timestamp (combination) was not previously in the database.
            False if the nonce was stored previously with the same timestamp.
            </returns>
      <remarks>
            The nonce must be stored for no less than the maximum time window a message may
            be processed within before being discarded as an expired message.
            If the binding element is applicable to your channel, this expiration window
            is retrieved or set using the
            <see cref="P:DotNetOpenAuth.Messaging.Bindings.StandardExpirationBindingElement.MaximumMessageAge" /> property.
            </remarks>
    </member>
    <member name="M:DotNetOpenAuth.Messaging.Bindings.NonceMemoryStore.ClearExpiredNonces">
      <summary>
            Clears consumed nonces from the cache that are so old they would be
            rejected if replayed because it is expired.
            </summary>
    </member>
    <member name="T:DotNetOpenAuth.OAuth.ServiceProviderSecuritySettings">
      <summary>
            Security settings that are applicable to service providers.
            </summary>
    </member>
    <member name="M:DotNetOpenAuth.OAuth.ServiceProviderSecuritySettings.#ctor">
      <summary>
            Initializes a new instance of the <see cref="T:DotNetOpenAuth.OAuth.ServiceProviderSecuritySettings" /> class.
            </summary>
    </member>
    <member name="P:DotNetOpenAuth.OAuth.ServiceProviderSecuritySettings.MinimumRequiredOAuthVersion">
      <summary>
            Gets or sets the minimum required version of OAuth that must be implemented by a Consumer.
            </summary>
    </member>
    <member name="T:DotNetOpenAuth.OAuth.VerificationCodeFormat">
      <summary>
            The different formats a user authorization verifier code can take
            in order to be as secure as possible while being compatible with
            the type of OAuth Consumer requesting access.
            </summary>
      <remarks>
            Some Consumers may be set-top boxes, video games, mobile devies, etc.
            with very limited character entry support and no ability to receive
            a callback URI.  OAuth 1.0a requires that these devices operators
            must manually key in a verifier code, so in these cases it better
            be possible to do so given the input options on that device.
            </remarks>
    </member>
    <member name="F:DotNetOpenAuth.OAuth.VerificationCodeFormat.IncludedInCallback">
      <summary>
            The strongest verification code.
            The best option for web consumers since a callback is usually an option.
            </summary>
    </member>
    <member name="F:DotNetOpenAuth.OAuth.VerificationCodeFormat.AlphaNumericNoLookAlikes">
      <summary>
            A combination of upper and lowercase letters and numbers may be used,
            allowing a computer operator to easily read from the screen and key
            in the verification code.
            </summary>
      <remarks>
            Some letters and numbers will be skipped where they are visually similar
            enough that they can be difficult to distinguish when displayed with most fonts.
            </remarks>
    </member>
    <member name="F:DotNetOpenAuth.OAuth.VerificationCodeFormat.AlphaUpper">
      <summary>
            Only uppercase letters will be used in the verification code.
            Verification codes are case-sensitive, so consumers with fixed
            keyboards with only one character case option may require this option.
            </summary>
    </member>
    <member name="F:DotNetOpenAuth.OAuth.VerificationCodeFormat.AlphaLower">
      <summary>
            Only lowercase letters will be used in the verification code.
            Verification codes are case-sensitive, so consumers with fixed
            keyboards with only one character case option may require this option.
            </summary>
    </member>
    <member name="F:DotNetOpenAuth.OAuth.VerificationCodeFormat.Numeric">
      <summary>
            Only the numbers 0-9 will be used in the verification code.
            Must useful for consumers running on mobile phone devices.
            </summary>
    </member>
    <member name="T:DotNetOpenAuth.OAuth.WebConsumer">
      <summary>
            A website or application that uses OAuth to access the Service Provider on behalf of the User.
            </summary>
      <remarks>
            The methods on this class are thread-safe.  Provided the properties are set and not changed
            afterward, a single instance of this class may be used by an entire web application safely.
            </remarks>
    </member>
    <member name="M:DotNetOpenAuth.OAuth.WebConsumer.#ctor(DotNetOpenAuth.OAuth.ServiceProviderDescription,DotNetOpenAuth.OAuth.ChannelElements.IConsumerTokenManager)">
      <summary>
            Initializes a new instance of the <see cref="T:DotNetOpenAuth.OAuth.WebConsumer" /> class.
            </summary>
      <param name="serviceDescription">The endpoints and behavior of the Service Provider.</param>
      <param name="tokenManager">The host's method of storing and recalling tokens and secrets.</param>
    </member>
    <member name="M:DotNetOpenAuth.OAuth.WebConsumer.PrepareRequestUserAuthorization">
      <summary>
            Begins an OAuth authorization request and redirects the user to the Service Provider
            to provide that authorization.  Upon successful authorization, the user is redirected
            back to the current page.
            </summary>
      <returns>The pending user agent redirect based message to be sent as an HttpResponse.</returns>
      <remarks>
            Requires HttpContext.Current.
            </remarks>
    </member>
    <member name="M:DotNetOpenAuth.OAuth.WebConsumer.PrepareRequestUserAuthorization(System.Uri,System.Collections.Generic.IDictionary{System.String,System.String},System.Collections.Generic.IDictionary{System.String,System.String})">
      <summary>
            Prepares an OAuth message that begins an authorization request that will 
            redirect the user to the Service Provider to provide that authorization.
            </summary>
      <param name="callback">
            An optional Consumer URL that the Service Provider should redirect the 
            User Agent to upon successful authorization.
            </param>
      <param name="requestParameters">Extra parameters to add to the request token message.  Optional.</param>
      <param name="redirectParameters">Extra parameters to add to the redirect to Service Provider message.  Optional.</param>
      <returns>The pending user agent redirect based message to be sent as an HttpResponse.</returns>
    </member>
    <member name="M:DotNetOpenAuth.OAuth.WebConsumer.ProcessUserAuthorization">
      <summary>
            Processes an incoming authorization-granted message from an SP and obtains an access token.
            </summary>
      <returns>The access token, or null if no incoming authorization message was recognized.</returns>
      <remarks>
            Requires HttpContext.Current.
            </remarks>
    </member>
    <member name="M:DotNetOpenAuth.OAuth.WebConsumer.AttachAuthorizationRequest(DotNetOpenAuth.OpenId.RelyingParty.IAuthenticationRequest,System.String)">
      <summary>
            Attaches an OAuth authorization request to an outgoing OpenID authentication request.
            </summary>
      <param name="openIdAuthenticationRequest">The OpenID authentication request.</param>
      <param name="scope">The scope of access that is requested of the service provider.</param>
    </member>
    <member name="M:DotNetOpenAuth.OAuth.WebConsumer.ProcessUserAuthorization(DotNetOpenAuth.OpenId.RelyingParty.IAuthenticationResponse)">
      <summary>
            Processes an incoming authorization-granted message from an SP and obtains an access token.
            </summary>
      <param name="openIdAuthenticationResponse">The OpenID authentication response that may be carrying an authorized request token.</param>
      <returns>
            The access token, or null if OAuth authorization was denied by the user or service provider.
            </returns>
      <remarks>
            The access token, if granted, is automatically stored in the <see cref="P:DotNetOpenAuth.OAuth.ConsumerBase.TokenManager" />.
            The token manager instance must implement <see cref="T:DotNetOpenAuth.OAuth.ChannelElements.IOpenIdOAuthTokenManager" />.
            </remarks>
    </member>
    <member name="M:DotNetOpenAuth.OAuth.WebConsumer.ProcessUserAuthorization(DotNetOpenAuth.Messaging.HttpRequestInfo)">
      <summary>
            Processes an incoming authorization-granted message from an SP and obtains an access token.
            </summary>
      <param name="request">The incoming HTTP request.</param>
      <returns>The access token, or null if no incoming authorization message was recognized.</returns>
    </member>
    <member name="T:DotNetOpenAuth.Messaging.IDirectWebRequestHandler">
      <summary>
            A contract for <see cref="T:System.Net.HttpWebRequest" /> handling.
            </summary>
      <remarks>
            Implementations of this interface must be thread safe.
            </remarks>
    </member>
    <member name="M:DotNetOpenAuth.Messaging.IDirectWebRequestHandler.CanSupport(DotNetOpenAuth.Messaging.DirectWebRequestOptions)">
      <summary>
            Determines whether this instance can support the specified options.
            </summary>
      <param name="options">The set of options that might be given in a subsequent web request.</param>
      <returns>
        <c>true</c> if this instance can support the specified options; otherwise, <c>false</c>.
            </returns>
      <pure />
    </member>
    <member name="M:DotNetOpenAuth.Messaging.IDirectWebRequestHandler.GetRequestStream(System.Net.HttpWebRequest)">
      <summary>
            Prepares an <see cref="T:System.Net.HttpWebRequest" /> that contains an POST entity for sending the entity.
            </summary>
      <param name="request">The <see cref="T:System.Net.HttpWebRequest" /> that should contain the entity.</param>
      <returns>
            The stream the caller should write out the entity data to.
            </returns>
      <exception cref="T:DotNetOpenAuth.Messaging.ProtocolException">Thrown for any network error.</exception>
      <remarks>
        <para>The caller should have set the <see cref="P:System.Net.HttpWebRequest.ContentLength" />
            and any other appropriate properties <i>before</i> calling this method.
            Callers <i>must</i> close and dispose of the request stream when they are done
            writing to it to avoid taking up the connection too long and causing long waits on
            subsequent requests.</para>
        <para>Implementations should catch <see cref="T:System.Net.WebException" /> and wrap it in a
            <see cref="T:DotNetOpenAuth.Messaging.ProtocolException" /> to abstract away the transport and provide
            a single exception type for hosts to catch.</para>
      </remarks>
    </member>
    <member name="M:DotNetOpenAuth.Messaging.IDirectWebRequestHandler.GetRequestStream(System.Net.HttpWebRequest,DotNetOpenAuth.Messaging.DirectWebRequestOptions)">
      <summary>
            Prepares an <see cref="T:System.Net.HttpWebRequest" /> that contains an POST entity for sending the entity.
            </summary>
      <param name="request">The <see cref="T:System.Net.HttpWebRequest" /> that should contain the entity.</param>
      <param name="options">The options to apply to this web request.</param>
      <returns>
            The stream the caller should write out the entity data to.
            </returns>
      <exception cref="T:DotNetOpenAuth.Messaging.ProtocolException">Thrown for any network error.</exception>
      <remarks>
        <para>The caller should have set the <see cref="P:System.Net.HttpWebRequest.ContentLength" />
            and any other appropriate properties <i>before</i> calling this method.
            Callers <i>must</i> close and dispose of the request stream when they are done
            writing to it to avoid taking up the connection too long and causing long waits on
            subsequent requests.</para>
        <para>Implementations should catch <see cref="T:System.Net.WebException" /> and wrap it in a
            <see cref="T:DotNetOpenAuth.Messaging.ProtocolException" /> to abstract away the transport and provide
            a single exception type for hosts to catch.</para>
      </remarks>
    </member>
    <member name="M:DotNetOpenAuth.Messaging.IDirectWebRequestHandler.GetResponse(System.Net.HttpWebRequest)">
      <summary>
            Processes an <see cref="T:System.Net.HttpWebRequest" /> and converts the 
            <see cref="T:System.Net.HttpWebResponse" /> to a <see cref="T:DotNetOpenAuth.Messaging.IncomingWebResponse" /> instance.
            </summary>
      <param name="request">The <see cref="T:System.Net.HttpWebRequest" /> to handle.</param>
      <returns>An instance of <see cref="T:DotNetOpenAuth.Messaging.IncomingWebResponse" /> describing the response.</returns>
      <exception cref="T:DotNetOpenAuth.Messaging.ProtocolException">Thrown for any network error.</exception>
      <remarks>
        <para>Implementations should catch <see cref="T:System.Net.WebException" /> and wrap it in a
            <see cref="T:DotNetOpenAuth.Messaging.ProtocolException" /> to abstract away the transport and provide
            a single exception type for hosts to catch.  The <see cref="P:System.Net.WebException.Response" />
            value, if set, shoud be Closed before throwing.</para>
      </remarks>
    </member>
    <member name="M:DotNetOpenAuth.Messaging.IDirectWebRequestHandler.GetResponse(System.Net.HttpWebRequest,DotNetOpenAuth.Messaging.DirectWebRequestOptions)">
      <summary>
            Processes an <see cref="T:System.Net.HttpWebRequest" /> and converts the 
            <see cref="T:System.Net.HttpWebResponse" /> to a <see cref="T:DotNetOpenAuth.Messaging.IncomingWebResponse" /> instance.
            </summary>
      <param name="request">The <see cref="T:System.Net.HttpWebRequest" /> to handle.</param>
      <param name="options">The options to apply to this web request.</param>
      <returns>An instance of <see cref="T:DotNetOpenAuth.Messaging.IncomingWebResponse" /> describing the response.</returns>
      <exception cref="T:DotNetOpenAuth.Messaging.ProtocolException">Thrown for any network error.</exception>
      <remarks>
        <para>Implementations should catch <see cref="T:System.Net.WebException" /> and wrap it in a
            <see cref="T:DotNetOpenAuth.Messaging.ProtocolException" /> to abstract away the transport and provide
            a single exception type for hosts to catch.  The <see cref="P:System.Net.WebException.Response" />
            value, if set, shoud be Closed before throwing.</para>
      </remarks>
    </member>
    <member name="T:DotNetOpenAuth.Messaging.IDirectWebRequestHandlerContract">
      <summary>
            Code contract for the <see cref="T:DotNetOpenAuth.Messaging.IDirectWebRequestHandler" /> type.
            </summary>
    </member>
    <member name="M:DotNetOpenAuth.Messaging.IDirectWebRequestHandlerContract.DotNetOpenAuth#Messaging#IDirectWebRequestHandler#CanSupport(DotNetOpenAuth.Messaging.DirectWebRequestOptions)">
      <summary>
            Determines whether this instance can support the specified options.
            </summary>
      <param name="options">The set of options that might be given in a subsequent web request.</param>
      <returns>
        <c>true</c> if this instance can support the specified options; otherwise, <c>false</c>.
            </returns>
    </member>
    <member name="M:DotNetOpenAuth.Messaging.IDirectWebRequestHandlerContract.DotNetOpenAuth#Messaging#IDirectWebRequestHandler#GetRequestStream(System.Net.HttpWebRequest)">
      <summary>
            Prepares an <see cref="T:System.Net.HttpWebRequest" /> that contains an POST entity for sending the entity.
            </summary>
      <param name="request">The <see cref="T:System.Net.HttpWebRequest" /> that should contain the entity.</param>
      <returns>
            The stream the caller should write out the entity data to.
            </returns>
      <exception cref="T:DotNetOpenAuth.Messaging.ProtocolException">Thrown for any network error.</exception>
      <remarks>
        <para>The caller should have set the <see cref="P:System.Net.HttpWebRequest.ContentLength" />
            and any other appropriate properties <i>before</i> calling this method.
            Callers <i>must</i> close and dispose of the request stream when they are done
            writing to it to avoid taking up the connection too long and causing long waits on
            subsequent requests.</para>
        <para>Implementations should catch <see cref="T:System.Net.WebException" /> and wrap it in a
            <see cref="T:DotNetOpenAuth.Messaging.ProtocolException" /> to abstract away the transport and provide
            a single exception type for hosts to catch.</para>
      </remarks>
    </member>
    <member name="M:DotNetOpenAuth.Messaging.IDirectWebRequestHandlerContract.DotNetOpenAuth#Messaging#IDirectWebRequestHandler#GetRequestStream(System.Net.HttpWebRequest,DotNetOpenAuth.Messaging.DirectWebRequestOptions)">
      <summary>
            Prepares an <see cref="T:System.Net.HttpWebRequest" /> that contains an POST entity for sending the entity.
            </summary>
      <param name="request">The <see cref="T:System.Net.HttpWebRequest" /> that should contain the entity.</param>
      <param name="options">The options to apply to this web request.</param>
      <returns>
            The stream the caller should write out the entity data to.
            </returns>
      <exception cref="T:DotNetOpenAuth.Messaging.ProtocolException">Thrown for any network error.</exception>
      <remarks>
        <para>The caller should have set the <see cref="P:System.Net.HttpWebRequest.ContentLength" />
            and any other appropriate properties <i>before</i> calling this method.
            Callers <i>must</i> close and dispose of the request stream when they are done
            writing to it to avoid taking up the connection too long and causing long waits on
            subsequent requests.</para>
        <para>Implementations should catch <see cref="T:System.Net.WebException" /> and wrap it in a
            <see cref="T:DotNetOpenAuth.Messaging.ProtocolException" /> to abstract away the transport and provide
            a single exception type for hosts to catch.</para>
      </remarks>
    </member>
    <member name="M:DotNetOpenAuth.Messaging.IDirectWebRequestHandlerContract.DotNetOpenAuth#Messaging#IDirectWebRequestHandler#GetResponse(System.Net.HttpWebRequest)">
      <summary>
            Processes an <see cref="T:System.Net.HttpWebRequest" /> and converts the
            <see cref="T:System.Net.HttpWebResponse" /> to a <see cref="T:DotNetOpenAuth.Messaging.IncomingWebResponse" /> instance.
            </summary>
      <param name="request">The <see cref="T:System.Net.HttpWebRequest" /> to handle.</param>
      <returns>
            An instance of <see cref="T:DotNetOpenAuth.Messaging.IncomingWebResponse" /> describing the response.
            </returns>
      <exception cref="T:DotNetOpenAuth.Messaging.ProtocolException">Thrown for any network error.</exception>
      <remarks>
            Implementations should catch <see cref="T:System.Net.WebException" /> and wrap it in a
            <see cref="T:DotNetOpenAuth.Messaging.ProtocolException" /> to abstract away the transport and provide
            a single exception type for hosts to catch.  The <see cref="P:System.Net.WebException.Response" />
            value, if set, shoud be Closed before throwing.
            </remarks>
    </member>
    <member name="M:DotNetOpenAuth.Messaging.IDirectWebRequestHandlerContract.DotNetOpenAuth#Messaging#IDirectWebRequestHandler#GetResponse(System.Net.HttpWebRequest,DotNetOpenAuth.Messaging.DirectWebRequestOptions)">
      <summary>
            Processes an <see cref="T:System.Net.HttpWebRequest" /> and converts the
            <see cref="T:System.Net.HttpWebResponse" /> to a <see cref="T:DotNetOpenAuth.Messaging.IncomingWebResponse" /> instance.
            </summary>
      <param name="request">The <see cref="T:System.Net.HttpWebRequest" /> to handle.</param>
      <param name="options">The options to apply to this web request.</param>
      <returns>
            An instance of <see cref="T:DotNetOpenAuth.Messaging.IncomingWebResponse" /> describing the response.
            </returns>
      <exception cref="T:DotNetOpenAuth.Messaging.ProtocolException">Thrown for any network error.</exception>
      <remarks>
            Implementations should catch <see cref="T:System.Net.WebException" /> and wrap it in a
            <see cref="T:DotNetOpenAuth.Messaging.ProtocolException" /> to abstract away the transport and provide
            a single exception type for hosts to catch.  The <see cref="P:System.Net.WebException.Response" />
            value, if set, shoud be Closed before throwing.
            </remarks>
    </member>
    <member name="T:DotNetOpenAuth.OAuth.Messages.AuthorizedTokenRequest">
      <summary>
            A direct message sent by the Consumer to exchange an authorized Request Token
            for an Access Token and Token Secret.
            </summary>
      <remarks>
            The class is sealed because the OAuth spec forbids adding parameters to this message.
            </remarks>
    </member>
    <member name="M:DotNetOpenAuth.OAuth.Messages.AuthorizedTokenRequest.#ctor(DotNetOpenAuth.Messaging.MessageReceivingEndpoint,System.Version)">
      <summary>
            Initializes a new instance of the <see cref="T:DotNetOpenAuth.OAuth.Messages.AuthorizedTokenRequest" /> class.
            </summary>
      <param name="serviceProvider">The URI of the Service Provider endpoint to send this message to.</param>
      <param name="version">The OAuth version.</param>
    </member>
    <member name="M:DotNetOpenAuth.OAuth.Messages.AuthorizedTokenRequest.EnsureValidMessage">
      <summary>
            Checks the message state for conformity to the protocol specification
            and throws an exception if the message is invalid.
            </summary>
    </member>
    <member name="P:DotNetOpenAuth.OAuth.Messages.AuthorizedTokenRequest.DotNetOpenAuth#OAuth#Messages#ITokenContainingMessage#Token">
      <summary>
            Gets or sets the Token.
            </summary>
    </member>
    <member name="P:DotNetOpenAuth.OAuth.Messages.AuthorizedTokenRequest.VerificationCode">
      <summary>
            Gets or sets the verification code received by the Consumer from the Service Provider 
            in the <see cref="P:DotNetOpenAuth.OAuth.Messages.UserAuthorizationResponse.VerificationCode" /> property.
            </summary>
    </member>
    <member name="P:DotNetOpenAuth.OAuth.Messages.AuthorizedTokenRequest.RequestToken">
      <summary>
            Gets or sets the unauthorized Request Token used to obtain authorization.
            </summary>
    </member>
    <member name="T:DotNetOpenAuth.Messaging.Bindings.StandardReplayProtectionBindingElement">
      <summary>
            A binding element that checks/verifies a nonce message part.
            </summary>
    </member>
    <member name="F:DotNetOpenAuth.Messaging.Bindings.StandardReplayProtectionBindingElement.AllowedCharacters">
      <summary>
            These are the characters that may be chosen from when forming a random nonce.
            </summary>
    </member>
    <member name="F:DotNetOpenAuth.Messaging.Bindings.StandardReplayProtectionBindingElement.nonceStore">
      <summary>
            The persistent store for nonces received.
            </summary>
    </member>
    <member name="F:DotNetOpenAuth.Messaging.Bindings.StandardReplayProtectionBindingElement.nonceLength">
      <summary>
            The length of generated nonces.
            </summary>
    </member>
    <member name="M:DotNetOpenAuth.Messaging.Bindings.StandardReplayProtectionBindingElement.#ctor(DotNetOpenAuth.Messaging.Bindings.INonceStore)">
      <summary>
            Initializes a new instance of the <see cref="T:DotNetOpenAuth.Messaging.Bindings.StandardReplayProtectionBindingElement" /> class.
            </summary>
      <param name="nonceStore">The store where nonces will be persisted and checked.</param>
    </member>
    <member name="M:DotNetOpenAuth.Messaging.Bindings.StandardReplayProtectionBindingElement.#ctor(DotNetOpenAuth.Messaging.Bindings.INonceStore,System.Boolean)">
      <summary>
            Initializes a new instance of the <see cref="T:DotNetOpenAuth.Messaging.Bindings.StandardReplayProtectionBindingElement" /> class.
            </summary>
      <param name="nonceStore">The store where nonces will be persisted and checked.</param>
      <param name="allowEmptyNonces">A value indicating whether zero-length nonces will be allowed.</param>
    </member>
    <member name="M:DotNetOpenAuth.Messaging.Bindings.StandardReplayProtectionBindingElement.ProcessOutgoingMessage(DotNetOpenAuth.Messaging.IProtocolMessage)">
      <summary>
            Applies a nonce to the message.
            </summary>
      <param name="message">The message to apply replay protection to.</param>
      <returns>
            The protections (if any) that this binding element applied to the message.
            Null if this binding element did not even apply to this binding element.
            </returns>
    </member>
    <member name="M:DotNetOpenAuth.Messaging.Bindings.StandardReplayProtectionBindingElement.ProcessIncomingMessage(DotNetOpenAuth.Messaging.IProtocolMessage)">
      <summary>
            Verifies that the nonce in an incoming message has not been seen before.
            </summary>
      <param name="message">The incoming message.</param>
      <returns>
            The protections (if any) that this binding element applied to the message.
            Null if this binding element did not even apply to this binding element.
            </returns>
      <exception cref="T:DotNetOpenAuth.Messaging.Bindings.ReplayedMessageException">Thrown when the nonce check revealed a replayed message.</exception>
    </member>
    <member name="M:DotNetOpenAuth.Messaging.Bindings.StandardReplayProtectionBindingElement.GenerateUniqueFragment">
      <summary>
            Generates a string of random characters for use as a nonce.
            </summary>
      <returns>The nonce string.</returns>
    </member>
    <member name="P:DotNetOpenAuth.Messaging.Bindings.StandardReplayProtectionBindingElement.Protection">
      <summary>
            Gets the protection that this binding element provides messages.
            </summary>
    </member>
    <member name="P:DotNetOpenAuth.Messaging.Bindings.StandardReplayProtectionBindingElement.Channel">
      <summary>
            Gets or sets the channel that this binding element belongs to.
            </summary>
    </member>
    <member name="P:DotNetOpenAuth.Messaging.Bindings.StandardReplayProtectionBindingElement.NonceStrength">
      <summary>
            Gets or sets the strength of the nonce, which is measured by the number of
            nonces that could theoretically be generated.
            </summary>
      <remarks>
            The strength of the nonce is equal to the number of characters that might appear
            in the nonce to the power of the length of the nonce.
            </remarks>
    </member>
    <member name="P:DotNetOpenAuth.Messaging.Bindings.StandardReplayProtectionBindingElement.AllowZeroLengthNonce">
      <summary>
            Gets or sets a value indicating whether empty nonces are allowed.
            </summary>
      <value>Default is <c>false</c>.</value>
    </member>
    <member name="T:DotNetOpenAuth.Messaging.MessagePartAttribute">
      <summary>
            Applied to fields and properties that form a key/value in a protocol message.
            </summary>
    </member>
    <member name="F:DotNetOpenAuth.Messaging.MessagePartAttribute.name">
      <summary>
            The overridden name to use as the serialized name for the property.
            </summary>
    </member>
    <member name="M:DotNetOpenAuth.Messaging.MessagePartAttribute.#ctor">
      <summary>
            Initializes a new instance of the <see cref="T:DotNetOpenAuth.Messaging.MessagePartAttribute" /> class.
            </summary>
    </member>
    <member name="M:DotNetOpenAuth.Messaging.MessagePartAttribute.#ctor(System.String)">
      <summary>
            Initializes a new instance of the <see cref="T:DotNetOpenAuth.Messaging.MessagePartAttribute" /> class.
            </summary>
      <param name="name">
            A special name to give the value of this member in the serialized message.
            When null or empty, the name of the member will be used in the serialized message.
            </param>
    </member>
    <member name="P:DotNetOpenAuth.Messaging.MessagePartAttribute.Name">
      <summary>
            Gets the name of the serialized form of this member in the message.
            </summary>
    </member>
    <member name="P:DotNetOpenAuth.Messaging.MessagePartAttribute.RequiredProtection">
      <summary>
            Gets or sets the level of protection required by this member in the serialized message.
            </summary>
      <remarks>
            Message part protection must be provided and verified by the channel binding element(s)
            that provide security.
            </remarks>
    </member>
    <member name="P:DotNetOpenAuth.Messaging.MessagePartAttribute.IsRequired">
      <summary>
            Gets or sets a value indicating whether this member is a required part of the serialized message.
            </summary>
    </member>
    <member name="P:DotNetOpenAuth.Messaging.MessagePartAttribute.AllowEmpty">
      <summary>
            Gets or sets a value indicating whether the string value is allowed to be empty in the serialized message.
            </summary>
      <value>Default is true.</value>
    </member>
    <member name="P:DotNetOpenAuth.Messaging.MessagePartAttribute.Encoder">
      <summary>
            Gets or sets an IMessagePartEncoder custom encoder to use
            to translate the applied member to and from a string.
            </summary>
    </member>
    <member name="P:DotNetOpenAuth.Messaging.MessagePartAttribute.MinVersion">
      <summary>
            Gets or sets the minimum version of the protocol this attribute applies to
            and overrides any attributes with lower values for this property.
            </summary>
      <value>Defaults to 0.0.</value>
    </member>
    <member name="P:DotNetOpenAuth.Messaging.MessagePartAttribute.MaxVersion">
      <summary>
            Gets or sets the maximum version of the protocol this attribute applies to.
            </summary>
      <value>Defaults to int.MaxValue for the major version number.</value>
      <remarks>
            Specifying <see cref="P:DotNetOpenAuth.Messaging.MessagePartAttribute.MinVersion" /> on another attribute on the same member
            automatically turns this attribute off.  This property should only be set when
            a property is totally dropped from a newer version of the protocol.
            </remarks>
    </member>
    <member name="P:DotNetOpenAuth.Messaging.MessagePartAttribute.MinVersionValue">
      <summary>
            Gets or sets the minimum version of the protocol this attribute applies to
            and overrides any attributes with lower values for this property.
            </summary>
      <value>Defaults to 0.0.</value>
    </member>
    <member name="P:DotNetOpenAuth.Messaging.MessagePartAttribute.MaxVersionValue">
      <summary>
            Gets or sets the maximum version of the protocol this attribute applies to.
            </summary>
      <value>Defaults to int.MaxValue for the major version number.</value>
      <remarks>
            Specifying <see cref="P:DotNetOpenAuth.Messaging.MessagePartAttribute.MinVersion" /> on another attribute on the same member
            automatically turns this attribute off.  This property should only be set when
            a property is totally dropped from a newer version of the protocol.
            </remarks>
    </member>
    <member name="T:DotNetOpenAuth.Messaging.MessageProtections">
      <summary>
            Categorizes the various types of channel binding elements so they can be properly ordered.
            </summary>
      <remarks>
            The order of these enum values is significant.  
            Each successive value requires the protection offered by all the previous values
            in order to be reliable.  For example, message expiration is meaningless without
            tamper protection to prevent a user from changing the timestamp on a message.
            </remarks>
    </member>
    <member name="F:DotNetOpenAuth.Messaging.MessageProtections.None">
      <summary>
            No protection.
            </summary>
    </member>
    <member name="F:DotNetOpenAuth.Messaging.MessageProtections.TamperProtection">
      <summary>
            A binding element that signs a message before sending and validates its signature upon receiving.
            </summary>
    </member>
    <member name="F:DotNetOpenAuth.Messaging.MessageProtections.Expiration">
      <summary>
            A binding element that enforces a maximum message age between sending and processing on the receiving side.
            </summary>
    </member>
    <member name="F:DotNetOpenAuth.Messaging.MessageProtections.ReplayProtection">
      <summary>
            A binding element that prepares messages for replay detection and detects replayed messages on the receiving side.
            </summary>
    </member>
    <member name="F:DotNetOpenAuth.Messaging.MessageProtections.All">
      <summary>
            All forms of protection together.
            </summary>
    </member>
    <member name="T:DotNetOpenAuth.Messaging.IChannelBindingElementContract">
      <summary>
            Code Contract for the <see cref="T:DotNetOpenAuth.Messaging.IChannelBindingElement" /> interface.
            </summary>
    </member>
    <member name="M:DotNetOpenAuth.Messaging.IChannelBindingElementContract.DotNetOpenAuth#Messaging#IChannelBindingElement#ProcessOutgoingMessage(DotNetOpenAuth.Messaging.IProtocolMessage)">
      <summary>
            Prepares a message for sending based on the rules of this channel binding element.
            </summary>
      <param name="message">The message to prepare for sending.</param>
      <returns>
            The protections (if any) that this binding element applied to the message.
            Null if this binding element did not even apply to this binding element.
            </returns>
      <remarks>
            Implementations that provide message protection must honor the
            <see cref="P:DotNetOpenAuth.Messaging.MessagePartAttribute.RequiredProtection" /> properties where applicable.
            </remarks>
    </member>
    <member name="M:DotNetOpenAuth.Messaging.IChannelBindingElementContract.DotNetOpenAuth#Messaging#IChannelBindingElement#ProcessIncomingMessage(DotNetOpenAuth.Messaging.IProtocolMessage)">
      <summary>
            Performs any transformation on an incoming message that may be necessary and/or
            validates an incoming message based on the rules of this channel binding element.
            </summary>
      <param name="message">The incoming message to process.</param>
      <returns>
            The protections (if any) that this binding element applied to the message.
            Null if this binding element did not even apply to this binding element.
            </returns>
      <exception cref="T:DotNetOpenAuth.Messaging.ProtocolException">
            Thrown when the binding element rules indicate that this message is invalid and should
            NOT be processed.
            </exception>
      <remarks>
            Implementations that provide message protection must honor the
            <see cref="P:DotNetOpenAuth.Messaging.MessagePartAttribute.RequiredProtection" /> properties where applicable.
            </remarks>
    </member>
    <member name="P:DotNetOpenAuth.Messaging.IChannelBindingElementContract.DotNetOpenAuth#Messaging#IChannelBindingElement#Channel">
      <summary>
            Gets or sets the channel that this binding element belongs to.
            </summary>
      <value />
      <remarks>
            This property is set by the channel when it is first constructed.
            </remarks>
    </member>
    <member name="P:DotNetOpenAuth.Messaging.IChannelBindingElementContract.DotNetOpenAuth#Messaging#IChannelBindingElement#Protection">
      <summary>
            Gets the protection commonly offered (if any) by this binding element.
            </summary>
      <value />
      <remarks>
            This value is used to assist in sorting binding elements in the channel stack.
            </remarks>
    </member>
    <member name="T:DotNetOpenAuth.Messaging.Bindings.ReplayedMessageException">
      <summary>
            An exception thrown when a message is received for the second time, signalling a possible
            replay attack.
            </summary>
    </member>
    <member name="M:DotNetOpenAuth.Messaging.Bindings.ReplayedMessageException.#ctor(DotNetOpenAuth.Messaging.IProtocolMessage)">
      <summary>
            Initializes a new instance of the <see cref="T:DotNetOpenAuth.Messaging.Bindings.ReplayedMessageException" /> class.
            </summary>
      <param name="faultedMessage">The replayed message.</param>
    </member>
    <member name="M:DotNetOpenAuth.Messaging.Bindings.ReplayedMessageException.#ctor(System.Runtime.Serialization.SerializationInfo,System.Runtime.Serialization.StreamingContext)">
      <summary>
            Initializes a new instance of the <see cref="T:DotNetOpenAuth.Messaging.Bindings.ReplayedMessageException" /> class.
            </summary>
      <param name="info">The <see cref="T:System.Runtime.Serialization.SerializationInfo" /> 
            that holds the serialized object data about the exception being thrown.</param>
      <param name="context">The System.Runtime.Serialization.StreamingContext 
            that contains contextual information about the source or destination.</param>
    </member>
    <member name="T:DotNetOpenAuth.Messaging.Bindings.ExpiredMessageException">
      <summary>
            An exception thrown when a message is received that exceeds the maximum message age limit.
            </summary>
    </member>
    <member name="M:DotNetOpenAuth.Messaging.Bindings.ExpiredMessageException.#ctor(System.DateTime,DotNetOpenAuth.Messaging.IProtocolMessage)">
      <summary>
            Initializes a new instance of the <see cref="T:DotNetOpenAuth.Messaging.Bindings.ExpiredMessageException" /> class.
            </summary>
      <param name="utcExpirationDate">The date the message expired.</param>
      <param name="faultedMessage">The expired message.</param>
    </member>
    <member name="M:DotNetOpenAuth.Messaging.Bindings.ExpiredMessageException.#ctor(System.Runtime.Serialization.SerializationInfo,System.Runtime.Serialization.StreamingContext)">
      <summary>
            Initializes a new instance of the <see cref="T:DotNetOpenAuth.Messaging.Bindings.ExpiredMessageException" /> class.
            </summary>
      <param name="info">The <see cref="T:System.Runtime.Serialization.SerializationInfo" /> 
            that holds the serialized object data about the exception being thrown.</param>
      <param name="context">The System.Runtime.Serialization.StreamingContext 
            that contains contextual information about the source or destination.</param>
    </member>
    <member name="T:DotNetOpenAuth.Messaging.Bindings.InvalidSignatureException">
      <summary>
            An exception thrown when a signed message does not pass signature validation.
            </summary>
    </member>
    <member name="M:DotNetOpenAuth.Messaging.Bindings.InvalidSignatureException.#ctor(DotNetOpenAuth.Messaging.IProtocolMessage)">
      <summary>
            Initializes a new instance of the <see cref="T:DotNetOpenAuth.Messaging.Bindings.InvalidSignatureException" /> class.
            </summary>
      <param name="faultedMessage">The message with the invalid signature.</param>
    </member>
    <member name="M:DotNetOpenAuth.Messaging.Bindings.InvalidSignatureException.#ctor(System.Runtime.Serialization.SerializationInfo,System.Runtime.Serialization.StreamingContext)">
      <summary>
            Initializes a new instance of the <see cref="T:DotNetOpenAuth.Messaging.Bindings.InvalidSignatureException" /> class.
            </summary>
      <param name="info">The <see cref="T:System.Runtime.Serialization.SerializationInfo" /> 
            that holds the serialized object data about the exception being thrown.</param>
      <param name="context">The System.Runtime.Serialization.StreamingContext 
            that contains contextual information about the source or destination.</param>
    </member>
    <member name="T:DotNetOpenAuth.OAuth.Messages.AccessProtectedResourceRequest">
      <summary>
            A message attached to a request for protected resources that provides the necessary
            credentials to be granted access to those resources.
            </summary>
    </member>
    <member name="M:DotNetOpenAuth.OAuth.Messages.AccessProtectedResourceRequest.#ctor(DotNetOpenAuth.Messaging.MessageReceivingEndpoint,System.Version)">
      <summary>
            Initializes a new instance of the <see cref="T:DotNetOpenAuth.OAuth.Messages.AccessProtectedResourceRequest" /> class.
            </summary>
      <param name="serviceProvider">The URI of the Service Provider endpoint to send this message to.</param>
      <param name="version">The OAuth version.</param>
    </member>
    <member name="P:DotNetOpenAuth.OAuth.Messages.AccessProtectedResourceRequest.DotNetOpenAuth#OAuth#Messages#ITokenContainingMessage#Token">
      <summary>
            Gets or sets the Token.
            </summary>
    </member>
    <member name="P:DotNetOpenAuth.OAuth.Messages.AccessProtectedResourceRequest.AccessToken">
      <summary>
            Gets or sets the Access Token.
            </summary>
      <remarks>
            In addition to just allowing OAuth to verify a valid message,
            this property is useful on the Service Provider to verify that the access token
            has proper authorization for the resource being requested, and to know the
            context around which user provided the authorization.
            </remarks>
    </member>
    <member name="T:DotNetOpenAuth.OAuth.Messages.AuthorizedTokenResponse">
      <summary>
            A direct message sent from Service Provider to Consumer in response to 
            a Consumer's <see cref="T:DotNetOpenAuth.OAuth.Messages.AuthorizedTokenRequest" /> request.
            </summary>
    </member>
    <member name="M:DotNetOpenAuth.OAuth.Messages.AuthorizedTokenResponse.#ctor(DotNetOpenAuth.OAuth.Messages.AuthorizedTokenRequest)">
      <summary>
            Initializes a new instance of the <see cref="T:DotNetOpenAuth.OAuth.Messages.AuthorizedTokenResponse" /> class.
            </summary>
      <param name="originatingRequest">The originating request.</param>
    </member>
    <member name="P:DotNetOpenAuth.OAuth.Messages.AuthorizedTokenResponse.AccessToken">
      <summary>
            Gets or sets the Access Token assigned by the Service Provider.
            </summary>
    </member>
    <member name="P:DotNetOpenAuth.OAuth.Messages.AuthorizedTokenResponse.DotNetOpenAuth#OAuth#Messages#ITokenContainingMessage#Token">
      <summary>
            Gets or sets the Request or Access Token.
            </summary>
    </member>
    <member name="P:DotNetOpenAuth.OAuth.Messages.AuthorizedTokenResponse.DotNetOpenAuth#OAuth#Messages#ITokenSecretContainingMessage#TokenSecret">
      <summary>
            Gets or sets the Request or Access Token secret.
            </summary>
    </member>
    <member name="P:DotNetOpenAuth.OAuth.Messages.AuthorizedTokenResponse.ExtraData">
      <summary>
            Gets the extra, non-OAuth parameters that will be included in the message.
            </summary>
    </member>
    <member name="P:DotNetOpenAuth.OAuth.Messages.AuthorizedTokenResponse.TokenSecret">
      <summary>
            Gets or sets the Token Secret.
            </summary>
    </member>
    <member name="T:DotNetOpenAuth.OAuth.Messages.UserAuthorizationResponse">
      <summary>
            A message used to redirect the user from a Service Provider to a Consumer's web site.
            </summary>
      <remarks>
            The class is sealed because extra parameters are determined by the callback URI provided by the Consumer.
            </remarks>
    </member>
    <member name="M:DotNetOpenAuth.OAuth.Messages.UserAuthorizationResponse.#ctor(System.Uri,System.Version)">
      <summary>
            Initializes a new instance of the <see cref="T:DotNetOpenAuth.OAuth.Messages.UserAuthorizationResponse" /> class.
            </summary>
      <param name="consumer">The URI of the Consumer endpoint to send this message to.</param>
      <param name="version">The OAuth version.</param>
    </member>
    <member name="P:DotNetOpenAuth.OAuth.Messages.UserAuthorizationResponse.DotNetOpenAuth#OAuth#Messages#ITokenContainingMessage#Token">
      <summary>
            Gets or sets the Request or Access Token.
            </summary>
    </member>
    <member name="P:DotNetOpenAuth.OAuth.Messages.UserAuthorizationResponse.VerificationCode">
      <summary>
            Gets or sets the verification code that must accompany the request to exchange the
            authorized request token for an access token.
            </summary>
      <value>An unguessable value passed to the Consumer via the User and REQUIRED to complete the process.</value>
      <remarks>
            If the Consumer did not provide a callback URL, the Service Provider SHOULD display the value of the 
            verification code, and instruct the User to manually inform the Consumer that authorization is 
            completed. If the Service Provider knows a Consumer to be running on a mobile device or set-top box, 
            the Service Provider SHOULD ensure that the verifier value is suitable for manual entry.
            </remarks>
    </member>
    <member name="P:DotNetOpenAuth.OAuth.Messages.UserAuthorizationResponse.RequestToken">
      <summary>
            Gets or sets the Request Token.
            </summary>
    </member>
    <member name="T:DotNetOpenAuth.OAuth.Messages.UserAuthorizationRequest">
      <summary>
            A message used to redirect the user from a Consumer to a Service Provider's web site
            so the Service Provider can ask the user to authorize the Consumer's access to some
            protected resource(s).
            </summary>
    </member>
    <member name="M:DotNetOpenAuth.OAuth.Messages.UserAuthorizationRequest.#ctor(DotNetOpenAuth.Messaging.MessageReceivingEndpoint,System.String,System.Version)">
      <summary>
            Initializes a new instance of the <see cref="T:DotNetOpenAuth.OAuth.Messages.UserAuthorizationRequest" /> class.
            </summary>
      <param name="serviceProvider">The URI of the Service Provider endpoint to send this message to.</param>
      <param name="requestToken">The request token.</param>
      <param name="version">The OAuth version.</param>
    </member>
    <member name="M:DotNetOpenAuth.OAuth.Messages.UserAuthorizationRequest.#ctor(DotNetOpenAuth.Messaging.MessageReceivingEndpoint,System.Version)">
      <summary>
            Initializes a new instance of the <see cref="T:DotNetOpenAuth.OAuth.Messages.UserAuthorizationRequest" /> class.
            </summary>
      <param name="serviceProvider">The URI of the Service Provider endpoint to send this message to.</param>
      <param name="version">The OAuth version.</param>
    </member>
    <member name="P:DotNetOpenAuth.OAuth.Messages.UserAuthorizationRequest.DotNetOpenAuth#OAuth#Messages#ITokenContainingMessage#Token">
      <summary>
            Gets or sets the Request or Access Token.
            </summary>
    </member>
    <member name="P:DotNetOpenAuth.OAuth.Messages.UserAuthorizationRequest.ExtraData">
      <summary>
            Gets the extra, non-OAuth parameters that will be included in the message.
            </summary>
    </member>
    <member name="P:DotNetOpenAuth.OAuth.Messages.UserAuthorizationRequest.IsUnsafeRequest">
      <summary>
            Gets a value indicating whether this is a safe OAuth authorization request.
            </summary>
      <value>
        <c>true</c> if the Consumer is using OAuth 1.0a or later; otherwise, <c>false</c>.</value>
    </member>
    <member name="P:DotNetOpenAuth.OAuth.Messages.UserAuthorizationRequest.RequestToken">
      <summary>
            Gets or sets the Request Token obtained in the previous step.
            </summary>
      <remarks>
            The Service Provider MAY declare this parameter as REQUIRED, or 
            accept requests to the User Authorization URL without it, in which 
            case it will prompt the User to enter it manually.
            </remarks>
    </member>
    <member name="P:DotNetOpenAuth.OAuth.Messages.UserAuthorizationRequest.Callback">
      <summary>
            Gets or sets a URL the Service Provider will use to redirect the User back 
            to the Consumer when Obtaining User Authorization is complete. Optional.
            </summary>
    </member>
    <member name="T:DotNetOpenAuth.OAuth.Messages.UnauthorizedTokenResponse">
      <summary>
            A direct message sent from Service Provider to Consumer in response to 
            a Consumer's <see cref="T:DotNetOpenAuth.OAuth.Messages.UnauthorizedTokenRequest" /> request.
            </summary>
    </member>
    <member name="M:DotNetOpenAuth.OAuth.Messages.UnauthorizedTokenResponse.#ctor(DotNetOpenAuth.OAuth.Messages.UnauthorizedTokenRequest,System.String,System.String)">
      <summary>
            Initializes a new instance of the <see cref="T:DotNetOpenAuth.OAuth.Messages.UnauthorizedTokenResponse" /> class.
            </summary>
      <param name="requestMessage">The unauthorized request token message that this message is being generated in response to.</param>
      <param name="requestToken">The request token.</param>
      <param name="tokenSecret">The token secret.</param>
      <remarks>
            This constructor is used by the Service Provider to send the message.
            </remarks>
    </member>
    <member name="M:DotNetOpenAuth.OAuth.Messages.UnauthorizedTokenResponse.#ctor(DotNetOpenAuth.OAuth.Messages.UnauthorizedTokenRequest,System.Version)">
      <summary>
            Initializes a new instance of the <see cref="T:DotNetOpenAuth.OAuth.Messages.UnauthorizedTokenResponse" /> class.
            </summary>
      <param name="originatingRequest">The originating request.</param>
      <param name="version">The OAuth version.</param>
      <remarks>This constructor is used by the consumer to deserialize the message.</remarks>
    </member>
    <member name="P:DotNetOpenAuth.OAuth.Messages.UnauthorizedTokenResponse.DotNetOpenAuth#OAuth#Messages#ITokenContainingMessage#Token">
      <summary>
            Gets or sets the Request or Access Token.
            </summary>
    </member>
    <member name="P:DotNetOpenAuth.OAuth.Messages.UnauthorizedTokenResponse.DotNetOpenAuth#OAuth#Messages#ITokenSecretContainingMessage#TokenSecret">
      <summary>
            Gets or sets the Request or Access Token secret.
            </summary>
    </member>
    <member name="P:DotNetOpenAuth.OAuth.Messages.UnauthorizedTokenResponse.ExtraData">
      <summary>
            Gets the extra, non-OAuth parameters that will be included in the message.
            </summary>
    </member>
    <member name="P:DotNetOpenAuth.OAuth.Messages.UnauthorizedTokenResponse.RequestToken">
      <summary>
            Gets or sets the Request Token.
            </summary>
    </member>
    <member name="P:DotNetOpenAuth.OAuth.Messages.UnauthorizedTokenResponse.RequestMessage">
      <summary>
            Gets the original request for an unauthorized token.
            </summary>
    </member>
    <member name="P:DotNetOpenAuth.OAuth.Messages.UnauthorizedTokenResponse.TokenSecret">
      <summary>
            Gets or sets the Token Secret.
            </summary>
    </member>
    <member name="P:DotNetOpenAuth.OAuth.Messages.UnauthorizedTokenResponse.CallbackConfirmed">
      <summary>
            Gets a value indicating whether the Service Provider recognized the callback parameter in the request.
            </summary>
    </member>
    <member name="T:DotNetOpenAuth.Messaging.HttpRequestInfo">
      <summary>
            A property store of details of an incoming HTTP request.
            </summary>
      <remarks>
            This serves a very similar purpose to <see cref="T:System.Web.HttpRequest" />, except that
            ASP.NET does not let us fully initialize that class, so we have to write one
            of our one.
            </remarks>
    </member>
    <member name="F:DotNetOpenAuth.Messaging.HttpRequestInfo.form">
      <summary>
            The key/value pairs found in the entity of a POST request.
            </summary>
    </member>
    <member name="F:DotNetOpenAuth.Messaging.HttpRequestInfo.queryString">
      <summary>
            The key/value pairs found in the querystring of the incoming request.
            </summary>
    </member>
    <member name="F:DotNetOpenAuth.Messaging.HttpRequestInfo.queryStringBeforeRewriting">
      <summary>
            Backing field for the <see cref="P:DotNetOpenAuth.Messaging.HttpRequestInfo.QueryStringBeforeRewriting" /> property.
            </summary>
    </member>
    <member name="F:DotNetOpenAuth.Messaging.HttpRequestInfo.message">
      <summary>
            Backing field for the <see cref="P:DotNetOpenAuth.Messaging.HttpRequestInfo.Message" /> property.
            </summary>
    </member>
    <member name="M:DotNetOpenAuth.Messaging.HttpRequestInfo.#ctor(System.Web.HttpRequest)">
      <summary>
            Initializes a new instance of the <see cref="T:DotNetOpenAuth.Messaging.HttpRequestInfo" /> class.
            </summary>
      <param name="request">The ASP.NET structure to copy from.</param>
    </member>
    <member name="M:DotNetOpenAuth.Messaging.HttpRequestInfo.#ctor(System.String,System.Uri,System.String,System.Net.WebHeaderCollection,System.IO.Stream)">
      <summary>
            Initializes a new instance of the <see cref="T:DotNetOpenAuth.Messaging.HttpRequestInfo" /> class.
            </summary>
      <param name="httpMethod">The HTTP method (i.e. GET or POST) of the incoming request.</param>
      <param name="requestUrl">The URL being requested.</param>
      <param name="rawUrl">The raw URL that appears immediately following the HTTP verb in the request,
            before any URL rewriting takes place.</param>
      <param name="headers">Headers in the HTTP request.</param>
      <param name="inputStream">The entity stream, if any.  (POST requests typically have these).  Use <c>null</c> for GET requests.</param>
    </member>
    <member name="M:DotNetOpenAuth.Messaging.HttpRequestInfo.#ctor(System.Net.HttpListenerRequest)">
      <summary>
            Initializes a new instance of the <see cref="T:DotNetOpenAuth.Messaging.HttpRequestInfo" /> class.
            </summary>
      <param name="listenerRequest">Details on the incoming HTTP request.</param>
    </member>
    <member name="M:DotNetOpenAuth.Messaging.HttpRequestInfo.#ctor(System.ServiceModel.Channels.HttpRequestMessageProperty,System.Uri)">
      <summary>
            Initializes a new instance of the <see cref="T:DotNetOpenAuth.Messaging.HttpRequestInfo" /> class.
            </summary>
      <param name="request">The WCF incoming request structure to get the HTTP information from.</param>
      <param name="requestUri">The URI of the service endpoint.</param>
    </member>
    <member name="M:DotNetOpenAuth.Messaging.HttpRequestInfo.#ctor">
      <summary>
            Initializes a new instance of the <see cref="T:DotNetOpenAuth.Messaging.HttpRequestInfo" /> class.
            </summary>
    </member>
    <member name="M:DotNetOpenAuth.Messaging.HttpRequestInfo.#ctor(System.Net.WebRequest)">
      <summary>
            Initializes a new instance of the <see cref="T:DotNetOpenAuth.Messaging.HttpRequestInfo" /> class.
            </summary>
      <param name="request">The HttpWebRequest (that was never used) to copy from.</param>
    </member>
    <member name="M:DotNetOpenAuth.Messaging.HttpRequestInfo.#ctor(DotNetOpenAuth.Messaging.IDirectedProtocolMessage,DotNetOpenAuth.Messaging.HttpDeliveryMethods)">
      <summary>
            Initializes a new instance of the <see cref="T:DotNetOpenAuth.Messaging.HttpRequestInfo" /> class.
            </summary>
      <param name="message">The message being passed in through a mock transport.  May be null.</param>
      <param name="httpMethod">The HTTP method that the incoming request came in on, whether or not <paramref name="message" /> is null.</param>
    </member>
    <member name="M:DotNetOpenAuth.Messaging.HttpRequestInfo.GetQueryOrFormFromContext">
      <summary>
            Gets the query or form data from the original request (before any URL rewriting has occurred.)
            </summary>
      <returns>A set of name=value pairs.</returns>
    </member>
    <member name="M:DotNetOpenAuth.Messaging.HttpRequestInfo.ObjectInvariant">
      <summary>
            Verifies conditions that should be true for any valid state of this object.
            </summary>
    </member>
    <member name="M:DotNetOpenAuth.Messaging.HttpRequestInfo.GetPublicFacingUrl(System.Web.HttpRequest)">
      <summary>
            Gets the public facing URL for the given incoming HTTP request.
            </summary>
      <param name="request">The request.</param>
      <returns>The URI that the outside world used to create this request.</returns>
    </member>
    <member name="M:DotNetOpenAuth.Messaging.HttpRequestInfo.MakeUpRawUrlFromUrl(System.Uri)">
      <summary>
            Makes up a reasonable guess at the raw URL from the possibly rewritten URL.
            </summary>
      <param name="url">A full URL.</param>
      <returns>A raw URL that might have come in on the HTTP verb.</returns>
    </member>
    <member name="M:DotNetOpenAuth.Messaging.HttpRequestInfo.GetHeaderCollection(System.Collections.Specialized.NameValueCollection)">
      <summary>
            Converts a NameValueCollection to a WebHeaderCollection.
            </summary>
      <param name="pairs">The collection a HTTP headers.</param>
      <returns>A new collection of the given headers.</returns>
    </member>
    <member name="P:DotNetOpenAuth.Messaging.HttpRequestInfo.Message">
      <summary>
            Gets or sets the message that is being sent over a mock transport (for testing).
            </summary>
    </member>
    <member name="P:DotNetOpenAuth.Messaging.HttpRequestInfo.HttpMethod">
      <summary>
            Gets or sets the verb in the request (i.e. GET, POST, etc.)
            </summary>
    </member>
    <member name="P:DotNetOpenAuth.Messaging.HttpRequestInfo.Url">
      <summary>
            Gets or sets the entire URL of the request, after any URL rewriting.
            </summary>
    </member>
    <member name="P:DotNetOpenAuth.Messaging.HttpRequestInfo.RawUrl">
      <summary>
            Gets or sets the raw URL that appears immediately following the HTTP verb in the request,
            before any URL rewriting takes place.
            </summary>
    </member>
    <member name="P:DotNetOpenAuth.Messaging.HttpRequestInfo.UrlBeforeRewriting">
      <summary>
            Gets or sets the full public URL used by the remote client to initiate this request,
            before any URL rewriting and before any changes made by web farm load distributors.
            </summary>
    </member>
    <member name="P:DotNetOpenAuth.Messaging.HttpRequestInfo.Query">
      <summary>
            Gets the query part of the URL (The ? and everything after it), after URL rewriting.
            </summary>
    </member>
    <member name="P:DotNetOpenAuth.Messaging.HttpRequestInfo.Headers">
      <summary>
            Gets or sets the collection of headers that came in with the request.
            </summary>
    </member>
    <member name="P:DotNetOpenAuth.Messaging.HttpRequestInfo.InputStream">
      <summary>
            Gets or sets the entity, or body of the request, if any.
            </summary>
    </member>
    <member name="P:DotNetOpenAuth.Messaging.HttpRequestInfo.Form">
      <summary>
            Gets the key/value pairs found in the entity of a POST request.
            </summary>
    </member>
    <member name="P:DotNetOpenAuth.Messaging.HttpRequestInfo.QueryString">
      <summary>
            Gets the key/value pairs found in the querystring of the incoming request.
            </summary>
    </member>
    <member name="P:DotNetOpenAuth.Messaging.HttpRequestInfo.QueryStringBeforeRewriting">
      <summary>
            Gets the query data from the original request (before any URL rewriting has occurred.)
            </summary>
      <returns>A <see cref="T:System.Collections.Specialized.NameValueCollection" /> containing all the parameters in the query string.</returns>
    </member>
    <member name="P:DotNetOpenAuth.Messaging.HttpRequestInfo.IsUrlRewritten">
      <summary>
            Gets a value indicating whether the request's URL was rewritten by ASP.NET
            or some other module.
            </summary>
      <value>
        <c>true</c> if this request's URL was rewritten; otherwise, <c>false</c>.
            </value>
    </member>
    <member name="T:DotNetOpenAuth.Messaging.IMessageFactoryContract">
      <summary>
            Code contract for the <see cref="T:DotNetOpenAuth.Messaging.IMessageFactory" /> interface.
            </summary>
    </member>
    <member name="M:DotNetOpenAuth.Messaging.IMessageFactoryContract.DotNetOpenAuth#Messaging#IMessageFactory#GetNewRequestMessage(DotNetOpenAuth.Messaging.MessageReceivingEndpoint,System.Collections.Generic.IDictionary{System.String,System.String})">
      <summary>
            Analyzes an incoming request message payload to discover what kind of
            message is embedded in it and returns the type, or null if no match is found.
            </summary>
      <param name="recipient">The intended or actual recipient of the request message.</param>
      <param name="fields">The name/value pairs that make up the message payload.</param>
      <returns>
            A newly instantiated <see cref="T:DotNetOpenAuth.Messaging.IProtocolMessage" />-derived object that this message can
            deserialize to.  Null if the request isn't recognized as a valid protocol message.
            </returns>
    </member>
    <member name="M:DotNetOpenAuth.Messaging.IMessageFactoryContract.DotNetOpenAuth#Messaging#IMessageFactory#GetNewResponseMessage(DotNetOpenAuth.Messaging.IDirectedProtocolMessage,System.Collections.Generic.IDictionary{System.String,System.String})">
      <summary>
            Analyzes an incoming request message payload to discover what kind of
            message is embedded in it and returns the type, or null if no match is found.
            </summary>
      <param name="request">The message that was sent as a request that resulted in the response.</param>
      <param name="fields">The name/value pairs that make up the message payload.</param>
      <returns>
            A newly instantiated <see cref="T:DotNetOpenAuth.Messaging.IProtocolMessage" />-derived object that this message can
            deserialize to.  Null if the request isn't recognized as a valid protocol message.
            </returns>
    </member>
    <member name="T:DotNetOpenAuth.Messaging.MessageSerializer">
      <summary>
            Serializes/deserializes OAuth messages for/from transit.
            </summary>
    </member>
    <member name="F:DotNetOpenAuth.Messaging.MessageSerializer.messageType">
      <summary>
            The specific <see cref="T:DotNetOpenAuth.Messaging.IMessage" />-derived type
            that will be serialized and deserialized using this class.
            </summary>
    </member>
    <member name="M:DotNetOpenAuth.Messaging.MessageSerializer.#ctor(System.Type)">
      <summary>
            Initializes a new instance of the MessageSerializer class.
            </summary>
      <param name="messageType">The specific <see cref="T:DotNetOpenAuth.Messaging.IMessage" />-derived type
            that will be serialized and deserialized using this class.</param>
    </member>
    <member name="M:DotNetOpenAuth.Messaging.MessageSerializer.Get(System.Type)">
      <summary>
            Creates or reuses a message serializer for a given message type.
            </summary>
      <param name="messageType">The type of message that will be serialized/deserialized.</param>
      <returns>A message serializer for the given message type.</returns>
    </member>
    <member name="M:DotNetOpenAuth.Messaging.MessageSerializer.Serialize(DotNetOpenAuth.Messaging.Reflection.MessageDictionary)">
      <summary>
            Reads the data from a message instance and returns a series of name=value pairs for the fields that must be included in the message.
            </summary>
      <param name="messageDictionary">The message to be serialized.</param>
      <returns>The dictionary of values to send for the message.</returns>
      <pure />
    </member>
    <member name="M:DotNetOpenAuth.Messaging.MessageSerializer.Deserialize(System.Collections.Generic.IDictionary{System.String,System.String},DotNetOpenAuth.Messaging.Reflection.MessageDictionary)">
      <summary>
            Reads name=value pairs into a message.
            </summary>
      <param name="fields">The name=value pairs that were read in from the transport.</param>
      <param name="messageDictionary">The message to deserialize into.</param>
      <exception cref="T:DotNetOpenAuth.Messaging.ProtocolException">Thrown when protocol rules are broken by the incoming message.</exception>
    </member>
    <member name="M:DotNetOpenAuth.Messaging.MessageSerializer.ObjectInvariant">
      <summary>
            Verifies conditions that should be true for any valid state of this object.
            </summary>
    </member>
    <member name="T:DotNetOpenAuth.Messaging.MessagingStrings">
      <summary>
              A strongly-typed resource class, for looking up localized strings, etc.
            </summary>
    </member>
    <member name="P:DotNetOpenAuth.Messaging.MessagingStrings.ResourceManager">
      <summary>
              Returns the cached ResourceManager instance used by this class.
            </summary>
    </member>
    <member name="P:DotNetOpenAuth.Messaging.MessagingStrings.Culture">
      <summary>
              Overrides the current thread's CurrentUICulture property for all
              resource lookups using this strongly typed resource class.
            </summary>
    </member>
    <member name="P:DotNetOpenAuth.Messaging.MessagingStrings.ArgumentPropertyMissing">
      <summary>
              Looks up a localized string similar to Argument's {0}.{1} property is required but is empty or null..
            </summary>
    </member>
    <member name="P:DotNetOpenAuth.Messaging.MessagingStrings.CurrentHttpContextRequired">
      <summary>
              Looks up a localized string similar to HttpContext.Current is null.  There must be an ASP.NET request in process for this operation to succeed..
            </summary>
    </member>
    <member name="P:DotNetOpenAuth.Messaging.MessagingStrings.DataContractMissingFromMessageType">
      <summary>
              Looks up a localized string similar to DataContractSerializer could not be initialized on message type {0}.  Is it missing a [DataContract] attribute?.
            </summary>
    </member>
    <member name="P:DotNetOpenAuth.Messaging.MessagingStrings.DataContractMissingNamespace">
      <summary>
              Looks up a localized string similar to DataContractSerializer could not be initialized on message type {0} because the DataContractAttribute.Namespace property is not set..
            </summary>
    </member>
    <member name="P:DotNetOpenAuth.Messaging.MessagingStrings.DerivedTypeNotExpected">
      <summary>
              Looks up a localized string similar to An instance of type {0} was expected, but received unexpected derived type {1}..
            </summary>
    </member>
    <member name="P:DotNetOpenAuth.Messaging.MessagingStrings.DirectedMessageMissingRecipient">
      <summary>
              Looks up a localized string similar to The directed message's Recipient property must not be null..
            </summary>
    </member>
    <member name="P:DotNetOpenAuth.Messaging.MessagingStrings.DirectWebRequestOptionsNotSupported">
      <summary>
              Looks up a localized string similar to The given set of options is not supported by this web request handler..
            </summary>
    </member>
    <member name="P:DotNetOpenAuth.Messaging.MessagingStrings.ErrorDeserializingMessage">
      <summary>
              Looks up a localized string similar to Error while deserializing message {0}..
            </summary>
    </member>
    <member name="P:DotNetOpenAuth.Messaging.MessagingStrings.ErrorInRequestReplyMessage">
      <summary>
              Looks up a localized string similar to Error occurred while sending a direct message or getting the response..
            </summary>
    </member>
    <member name="P:DotNetOpenAuth.Messaging.MessagingStrings.ExceptionNotConstructedForTransit">
      <summary>
              Looks up a localized string similar to This exception was not constructed with a root request message that caused it..
            </summary>
    </member>
    <member name="P:DotNetOpenAuth.Messaging.MessagingStrings.ExceptionUndeliverable">
      <summary>
              Looks up a localized string similar to This exception must be instantiated with a recipient that will receive the error message, or a direct request message instance that this exception will respond to..
            </summary>
    </member>
    <member name="P:DotNetOpenAuth.Messaging.MessagingStrings.ExpectedMessageNotReceived">
      <summary>
              Looks up a localized string similar to Expected {0} message but received no recognizable message..
            </summary>
    </member>
    <member name="P:DotNetOpenAuth.Messaging.MessagingStrings.ExpiredMessage">
      <summary>
              Looks up a localized string similar to The message expired at {0} and it is now {1}..
            </summary>
    </member>
    <member name="P:DotNetOpenAuth.Messaging.MessagingStrings.GetOrPostFlagsRequired">
      <summary>
              Looks up a localized string similar to At least one of GET or POST flags must be present..
            </summary>
    </member>
    <member name="P:DotNetOpenAuth.Messaging.MessagingStrings.HttpContextRequired">
      <summary>
              Looks up a localized string similar to This method requires a current HttpContext.  Alternatively, use an overload of this method that allows you to pass in information without an HttpContext..
            </summary>
    </member>
    <member name="P:DotNetOpenAuth.Messaging.MessagingStrings.IndirectMessagesMustImplementIDirectedProtocolMessage">
      <summary>
              Looks up a localized string similar to Messages that indicate indirect transport must implement the {0} interface..
            </summary>
    </member>
    <member name="P:DotNetOpenAuth.Messaging.MessagingStrings.InsecureWebRequestWithSslRequired">
      <summary>
              Looks up a localized string similar to Insecure web request for '{0}' aborted due to security requirements demanding HTTPS..
            </summary>
    </member>
    <member name="P:DotNetOpenAuth.Messaging.MessagingStrings.InsufficientMessageProtection">
      <summary>
              Looks up a localized string similar to The {0} message required protections {{{1}}} but the channel could only apply {{{2}}}..
            </summary>
    </member>
    <member name="P:DotNetOpenAuth.Messaging.MessagingStrings.InvalidCustomBindingElementOrder">
      <summary>
              Looks up a localized string similar to The customized binding element ordering is invalid..
            </summary>
    </member>
    <member name="P:DotNetOpenAuth.Messaging.MessagingStrings.InvalidMessageParts">
      <summary>
              Looks up a localized string similar to Some part(s) of the message have invalid values: {0}.
            </summary>
    </member>
    <member name="P:DotNetOpenAuth.Messaging.MessagingStrings.InvalidNonceReceived">
      <summary>
              Looks up a localized string similar to The incoming message had an invalid or missing nonce..
            </summary>
    </member>
    <member name="P:DotNetOpenAuth.Messaging.MessagingStrings.KeyAlreadyExists">
      <summary>
              Looks up a localized string similar to An item with the same key has already been added..
            </summary>
    </member>
    <member name="P:DotNetOpenAuth.Messaging.MessagingStrings.MessageNotExtensible">
      <summary>
              Looks up a localized string similar to The {0} message does not support extensions..
            </summary>
    </member>
    <member name="P:DotNetOpenAuth.Messaging.MessagingStrings.MessagePartEncoderWrongType">
      <summary>
              Looks up a localized string similar to The value for {0}.{1} on member {1} was expected to derive from {2} but was {3}..
            </summary>
    </member>
    <member name="P:DotNetOpenAuth.Messaging.MessagingStrings.MessagePartReadFailure">
      <summary>
              Looks up a localized string similar to Error while reading message '{0}' parameter '{1}' with value '{2}'..
            </summary>
    </member>
    <member name="P:DotNetOpenAuth.Messaging.MessagingStrings.MessagePartValueBase64DecodingFault">
      <summary>
              Looks up a localized string similar to Message parameter '{0}' with value '{1}' failed to base64 decode..
            </summary>
    </member>
    <member name="P:DotNetOpenAuth.Messaging.MessagingStrings.MessagePartWriteFailure">
      <summary>
              Looks up a localized string similar to Error while preparing message '{0}' parameter '{1}' for sending..
            </summary>
    </member>
    <member name="P:DotNetOpenAuth.Messaging.MessagingStrings.NonEmptyStringExpected">
      <summary>
              Looks up a localized string similar to A non-empty string was expected..
            </summary>
    </member>
    <member name="P:DotNetOpenAuth.Messaging.MessagingStrings.QueuedMessageResponseAlreadyExists">
      <summary>
              Looks up a localized string similar to A message response is already queued for sending in the response stream..
            </summary>
    </member>
    <member name="P:DotNetOpenAuth.Messaging.MessagingStrings.ReplayAttackDetected">
      <summary>
              Looks up a localized string similar to This message has already been processed.  This could indicate a replay attack in progress..
            </summary>
    </member>
    <member name="P:DotNetOpenAuth.Messaging.MessagingStrings.ReplayProtectionNotSupported">
      <summary>
              Looks up a localized string similar to This channel does not support replay protection..
            </summary>
    </member>
    <member name="P:DotNetOpenAuth.Messaging.MessagingStrings.RequiredNonEmptyParameterWasEmpty">
      <summary>
              Looks up a localized string similar to The following required non-empty parameters were empty in the {0} message: {1}.
            </summary>
    </member>
    <member name="P:DotNetOpenAuth.Messaging.MessagingStrings.RequiredParametersMissing">
      <summary>
              Looks up a localized string similar to The following required parameters were missing from the {0} message: {1}.
            </summary>
    </member>
    <member name="P:DotNetOpenAuth.Messaging.MessagingStrings.RequiredProtectionMissing">
      <summary>
              Looks up a localized string similar to The binding element offering the {0} protection requires other protection that is not provided..
            </summary>
    </member>
    <member name="P:DotNetOpenAuth.Messaging.MessagingStrings.SequenceContainsNoElements">
      <summary>
              Looks up a localized string similar to The list is empty..
            </summary>
    </member>
    <member name="P:DotNetOpenAuth.Messaging.MessagingStrings.SequenceContainsNullElement">
      <summary>
              Looks up a localized string similar to The list contains a null element..
            </summary>
    </member>
    <member name="P:DotNetOpenAuth.Messaging.MessagingStrings.SignatureInvalid">
      <summary>
              Looks up a localized string similar to Message signature was incorrect..
            </summary>
    </member>
    <member name="P:DotNetOpenAuth.Messaging.MessagingStrings.SigningNotSupported">
      <summary>
              Looks up a localized string similar to This channel does not support signing messages.  To support signing messages, a derived Channel type must override the Sign and IsSignatureValid methods..
            </summary>
    </member>
    <member name="P:DotNetOpenAuth.Messaging.MessagingStrings.StreamMustHaveKnownLength">
      <summary>
              Looks up a localized string similar to The stream must have a known length..
            </summary>
    </member>
    <member name="P:DotNetOpenAuth.Messaging.MessagingStrings.StreamUnreadable">
      <summary>
              Looks up a localized string similar to The stream's CanRead property returned false..
            </summary>
    </member>
    <member name="P:DotNetOpenAuth.Messaging.MessagingStrings.StreamUnwritable">
      <summary>
              Looks up a localized string similar to The stream's CanWrite property returned false..
            </summary>
    </member>
    <member name="P:DotNetOpenAuth.Messaging.MessagingStrings.TooManyBindingsOfferingSameProtection">
      <summary>
              Looks up a localized string similar to Expected at most 1 binding element to apply the {0} protection, but more than one applied..
            </summary>
    </member>
    <member name="P:DotNetOpenAuth.Messaging.MessagingStrings.TooManyRedirects">
      <summary>
              Looks up a localized string similar to The maximum allowable number of redirects were exceeded while requesting '{0}'..
            </summary>
    </member>
    <member name="P:DotNetOpenAuth.Messaging.MessagingStrings.UnexpectedEmptyArray">
      <summary>
              Looks up a localized string similar to The array must not be empty..
            </summary>
    </member>
    <member name="P:DotNetOpenAuth.Messaging.MessagingStrings.UnexpectedEmptyString">
      <summary>
              Looks up a localized string similar to The empty string is not allowed..
            </summary>
    </member>
    <member name="P:DotNetOpenAuth.Messaging.MessagingStrings.UnexpectedHttpStatusCode">
      <summary>
              Looks up a localized string similar to Expected direct response to use HTTP status code {0} but was {1} instead..
            </summary>
    </member>
    <member name="P:DotNetOpenAuth.Messaging.MessagingStrings.UnexpectedMessagePartValue">
      <summary>
              Looks up a localized string similar to Message parameter '{0}' had unexpected value '{1}'..
            </summary>
    </member>
    <member name="P:DotNetOpenAuth.Messaging.MessagingStrings.UnexpectedMessagePartValueForConstant">
      <summary>
              Looks up a localized string similar to Expected message {0} parameter '{1}' to have value '{2}' but had '{3}' instead..
            </summary>
    </member>
    <member name="P:DotNetOpenAuth.Messaging.MessagingStrings.UnexpectedMessageReceived">
      <summary>
              Looks up a localized string similar to Expected message {0} but received {1} instead..
            </summary>
    </member>
    <member name="P:DotNetOpenAuth.Messaging.MessagingStrings.UnexpectedMessageReceivedOfMany">
      <summary>
              Looks up a localized string similar to Unexpected message type received..
            </summary>
    </member>
    <member name="P:DotNetOpenAuth.Messaging.MessagingStrings.UnexpectedNullKey">
      <summary>
              Looks up a localized string similar to A null key was included and is not allowed..
            </summary>
    </member>
    <member name="P:DotNetOpenAuth.Messaging.MessagingStrings.UnexpectedNullOrEmptyKey">
      <summary>
              Looks up a localized string similar to A null or empty key was included and is not allowed..
            </summary>
    </member>
    <member name="P:DotNetOpenAuth.Messaging.MessagingStrings.UnexpectedNullValue">
      <summary>
              Looks up a localized string similar to A null value was included for key '{0}' and is not allowed..
            </summary>
    </member>
    <member name="P:DotNetOpenAuth.Messaging.MessagingStrings.UnexpectedType">
      <summary>
              Looks up a localized string similar to The type {0} or a derived type was expected, but {1} was given..
            </summary>
    </member>
    <member name="P:DotNetOpenAuth.Messaging.MessagingStrings.UnrecognizedEnumValue">
      <summary>
              Looks up a localized string similar to {0} property has unrecognized value {1}..
            </summary>
    </member>
    <member name="P:DotNetOpenAuth.Messaging.MessagingStrings.UnsafeWebRequestDetected">
      <summary>
              Looks up a localized string similar to The URL '{0}' is rated unsafe and cannot be requested this way..
            </summary>
    </member>
    <member name="P:DotNetOpenAuth.Messaging.MessagingStrings.UnsupportedHttpVerb">
      <summary>
              Looks up a localized string similar to The HTTP verb '{0}' is unrecognized and unsupported..
            </summary>
    </member>
    <member name="P:DotNetOpenAuth.Messaging.MessagingStrings.UnsupportedHttpVerbForMessageType">
      <summary>
              Looks up a localized string similar to '{0}' messages cannot be received with HTTP verb '{1}'..
            </summary>
    </member>
    <member name="P:DotNetOpenAuth.Messaging.MessagingStrings.UntrustedRedirectsOnPOSTNotSupported">
      <summary>
              Looks up a localized string similar to Redirects on POST requests that are to untrusted servers is not supported..
            </summary>
    </member>
    <member name="P:DotNetOpenAuth.Messaging.MessagingStrings.WebRequestFailed">
      <summary>
              Looks up a localized string similar to Web request to '{0}' failed..
            </summary>
    </member>
    <member name="T:DotNetOpenAuth.Messaging.MessagingUtilities">
      <summary>
            A grab-bag of utility methods useful for the channel stack of the protocol.
            </summary>
    </member>
    <member name="F:DotNetOpenAuth.Messaging.MessagingUtilities.UppercaseLetters">
      <summary>
            The uppercase alphabet.
            </summary>
    </member>
    <member name="F:DotNetOpenAuth.Messaging.MessagingUtilities.LowercaseLetters">
      <summary>
            The lowercase alphabet.
            </summary>
    </member>
    <member name="F:DotNetOpenAuth.Messaging.MessagingUtilities.Digits">
      <summary>
            The set of base 10 digits.
            </summary>
    </member>
    <member name="F:DotNetOpenAuth.Messaging.MessagingUtilities.AlphaNumericNoLookAlikes">
      <summary>
            The set of digits, and alphabetic letters (upper and lowercase) that are clearly
            visually distinguishable.
            </summary>
    </member>
    <member name="F:DotNetOpenAuth.Messaging.MessagingUtilities.CryptoRandomDataGenerator">
      <summary>
            The cryptographically strong random data generator used for creating secrets.
            </summary>
      <remarks>The random number generator is thread-safe.</remarks>
    </member>
    <member name="F:DotNetOpenAuth.Messaging.MessagingUtilities.NonCryptoRandomDataGenerator">
      <summary>
            A pseudo-random data generator (NOT cryptographically strong random data)
            </summary>
    </member>
    <member name="F:DotNetOpenAuth.Messaging.MessagingUtilities.UriRfc3986CharsToEscape">
      <summary>
            The set of characters that are unreserved in RFC 2396 but are NOT unreserved in RFC 3986.
            </summary>
    </member>
    <member name="F:DotNetOpenAuth.Messaging.MessagingUtilities.javascriptStaticStringEscaping">
      <summary>
            A set of escaping mappings that help secure a string from javscript execution.
            </summary>
      <remarks>
            The characters to escape here are inspired by 
            http://code.google.com/p/doctype/wiki/ArticleXSSInJavaScript
            </remarks>
    </member>
    <member name="M:DotNetOpenAuth.Messaging.MessagingUtilities.AsActionResult(DotNetOpenAuth.Messaging.OutgoingWebResponse)">
      <summary>
            Transforms an OutgoingWebResponse to an MVC-friendly ActionResult.
            </summary>
      <param name="response">The response to send to the uesr agent.</param>
      <returns>The <see cref="T:System.Web.Mvc.ActionResult" /> instance to be returned by the Controller's action method.</returns>
    </member>
    <member name="M:DotNetOpenAuth.Messaging.MessagingUtilities.GetRequestUrlFromContext">
      <summary>
            Gets the original request URL, as seen from the browser before any URL rewrites on the server if any.
            Cookieless session directory (if applicable) is also included.
            </summary>
      <returns>The URL in the user agent's Location bar.</returns>
    </member>
    <member name="M:DotNetOpenAuth.Messaging.MessagingUtilities.StripQueryArgumentsWithPrefix(System.Uri,System.String)">
      <summary>
            Strips any and all URI query parameters that start with some prefix.
            </summary>
      <param name="uri">The URI that may have a query with parameters to remove.</param>
      <param name="prefix">The prefix for parameters to remove.  A period is NOT automatically appended.</param>
      <returns>Either a new Uri with the parameters removed if there were any to remove, or the same Uri instance if no parameters needed to be removed.</returns>
    </member>
    <member name="M:DotNetOpenAuth.Messaging.MessagingUtilities.PostMultipart(System.Net.HttpWebRequest,DotNetOpenAuth.Messaging.IDirectWebRequestHandler,System.Collections.Generic.IEnumerable{DotNetOpenAuth.Messaging.MultipartPostPart})">
      <summary>
            Sends an multipart HTTP POST request (useful for posting files).
            </summary>
      <param name="request">The HTTP request.</param>
      <param name="requestHandler">The request handler.</param>
      <param name="parts">The parts to include in the POST entity.</param>
      <returns>The HTTP response.</returns>
    </member>
    <member name="M:DotNetOpenAuth.Messaging.MessagingUtilities.ToStringDescriptive(System.Exception)">
      <summary>
            Assembles a message comprised of the message on a given exception and all inner exceptions.
            </summary>
      <param name="exception">The exception.</param>
      <returns>The assembled message.</returns>
    </member>
    <member name="M:DotNetOpenAuth.Messaging.MessagingUtilities.GetNonCryptoRandomData(System.Int32)">
      <summary>
            Gets a buffer of random data (not cryptographically strong).
            </summary>
      <param name="length">The length of the sequence to generate.</param>
      <returns>The generated values, which may contain zeros.</returns>
    </member>
    <member name="M:DotNetOpenAuth.Messaging.MessagingUtilities.GetCryptoRandomData(System.Int32)">
      <summary>
            Gets a cryptographically strong random sequence of values.
            </summary>
      <param name="length">The length of the sequence to generate.</param>
      <returns>The generated values, which may contain zeros.</returns>
    </member>
    <member name="M:DotNetOpenAuth.Messaging.MessagingUtilities.GetCryptoRandomDataAsBase64(System.Int32)">
      <summary>
            Gets a cryptographically strong random sequence of values.
            </summary>
      <param name="binaryLength">The length of the byte sequence to generate.</param>
      <returns>A base64 encoding of the generated random data, 
            whose length in characters will likely be greater than <paramref name="binaryLength" />.</returns>
    </member>
    <member name="M:DotNetOpenAuth.Messaging.MessagingUtilities.GetRandomString(System.Int32,System.String)">
      <summary>
            Gets a random string made up of a given set of allowable characters.
            </summary>
      <param name="length">The length of the desired random string.</param>
      <param name="allowableCharacters">The allowable characters.</param>
      <returns>A random string.</returns>
    </member>
    <member name="M:DotNetOpenAuth.Messaging.MessagingUtilities.ApplyHeadersToResponse(System.Net.WebHeaderCollection,System.Web.HttpResponse)">
      <summary>
            Adds a set of HTTP headers to an <see cref="T:System.Web.HttpResponse" /> instance,
            taking care to set some headers to the appropriate properties of
            <see cref="T:System.Web.HttpResponse" /></summary>
      <param name="headers">The headers to add.</param>
      <param name="response">The <see cref="T:System.Web.HttpResponse" /> instance to set the appropriate values to.</param>
    </member>
    <member name="M:DotNetOpenAuth.Messaging.MessagingUtilities.ApplyHeadersToResponse(System.Net.WebHeaderCollection,System.Net.HttpListenerResponse)">
      <summary>
            Adds a set of HTTP headers to an <see cref="T:System.Web.HttpResponse" /> instance,
            taking care to set some headers to the appropriate properties of
            <see cref="T:System.Web.HttpResponse" /></summary>
      <param name="headers">The headers to add.</param>
      <param name="response">The <see cref="T:System.Net.HttpListenerResponse" /> instance to set the appropriate values to.</param>
    </member>
    <member name="M:DotNetOpenAuth.Messaging.MessagingUtilities.CopyTo(System.IO.Stream,System.IO.Stream)">
      <summary>
            Copies the contents of one stream to another.
            </summary>
      <param name="copyFrom">The stream to copy from, at the position where copying should begin.</param>
      <param name="copyTo">The stream to copy to, at the position where bytes should be written.</param>
      <returns>The total number of bytes copied.</returns>
      <remarks>
            Copying begins at the streams' current positions.
            The positions are NOT reset after copying is complete.
            </remarks>
    </member>
    <member name="M:DotNetOpenAuth.Messaging.MessagingUtilities.CopyTo(System.IO.Stream,System.IO.Stream,System.Int32)">
      <summary>
            Copies the contents of one stream to another.
            </summary>
      <param name="copyFrom">The stream to copy from, at the position where copying should begin.</param>
      <param name="copyTo">The stream to copy to, at the position where bytes should be written.</param>
      <param name="maximumBytesToCopy">The maximum bytes to copy.</param>
      <returns>The total number of bytes copied.</returns>
      <remarks>
            Copying begins at the streams' current positions.
            The positions are NOT reset after copying is complete.
            </remarks>
    </member>
    <member name="M:DotNetOpenAuth.Messaging.MessagingUtilities.CreateSnapshot(System.IO.Stream)">
      <summary>
            Creates a snapshot of some stream so it is seekable, and the original can be closed.
            </summary>
      <param name="copyFrom">The stream to copy bytes from.</param>
      <returns>A seekable stream with the same contents as the original.</returns>
    </member>
    <member name="M:DotNetOpenAuth.Messaging.MessagingUtilities.Clone(System.Net.HttpWebRequest)">
      <summary>
            Clones an <see cref="T:System.Net.HttpWebRequest" /> in order to send it again.
            </summary>
      <param name="request">The request to clone.</param>
      <returns>The newly created instance.</returns>
    </member>
    <member name="M:DotNetOpenAuth.Messaging.MessagingUtilities.Clone(System.Net.HttpWebRequest,System.Uri)">
      <summary>
            Clones an <see cref="T:System.Net.HttpWebRequest" /> in order to send it again.
            </summary>
      <param name="request">The request to clone.</param>
      <param name="newRequestUri">The new recipient of the request.</param>
      <returns>The newly created instance.</returns>
    </member>
    <member name="M:DotNetOpenAuth.Messaging.MessagingUtilities.AreEquivalent``1(``0[],``0[])">
      <summary>
            Tests whether two arrays are equal in contents and ordering.
            </summary>
      <typeparam name="T">The type of elements in the arrays.</typeparam>
      <param name="first">The first array in the comparison.  May not be null.</param>
      <param name="second">The second array in the comparison. May not be null.</param>
      <returns>True if the arrays equal; false otherwise.</returns>
    </member>
    <member name="M:DotNetOpenAuth.Messaging.MessagingUtilities.AreEquivalent``1(System.Collections.Generic.IEnumerable{``0},System.Collections.Generic.IEnumerable{``0})">
      <summary>
            Tests two sequences for same contents and ordering.
            </summary>
      <typeparam name="T">The type of elements in the arrays.</typeparam>
      <param name="sequence1">The first sequence in the comparison.  May not be null.</param>
      <param name="sequence2">The second sequence in the comparison. May not be null.</param>
      <returns>True if the arrays equal; false otherwise.</returns>
    </member>
    <member name="M:DotNetOpenAuth.Messaging.MessagingUtilities.AreEquivalentUnordered``1(System.Collections.Generic.ICollection{``0},System.Collections.Generic.ICollection{``0})">
      <summary>
            Tests two unordered collections for same contents.
            </summary>
      <typeparam name="T">The type of elements in the collections.</typeparam>
      <param name="first">The first collection in the comparison.  May not be null.</param>
      <param name="second">The second collection in the comparison. May not be null.</param>
      <returns>True if the collections have the same contents; false otherwise.</returns>
    </member>
    <member name="M:DotNetOpenAuth.Messaging.MessagingUtilities.AreEquivalent``2(System.Collections.Generic.IDictionary{``0,``1},System.Collections.Generic.IDictionary{``0,``1})">
      <summary>
            Tests whether two dictionaries are equal in length and contents.
            </summary>
      <typeparam name="TKey">The type of keys in the dictionaries.</typeparam>
      <typeparam name="TValue">The type of values in the dictionaries.</typeparam>
      <param name="first">The first dictionary in the comparison.  May not be null.</param>
      <param name="second">The second dictionary in the comparison. May not be null.</param>
      <returns>True if the arrays equal; false otherwise.</returns>
    </member>
    <member name="M:DotNetOpenAuth.Messaging.MessagingUtilities.CreateQueryString(System.Collections.Generic.IEnumerable{System.Collections.Generic.KeyValuePair{System.String,System.String}})">
      <summary>
            Concatenates a list of name-value pairs as key=value&amp;key=value,
            taking care to properly encode each key and value for URL
            transmission according to RFC 3986.  No ? is prefixed to the string.
            </summary>
      <param name="args">The dictionary of key/values to read from.</param>
      <returns>The formulated querystring style string.</returns>
    </member>
    <member name="M:DotNetOpenAuth.Messaging.MessagingUtilities.AppendQueryArgs(System.UriBuilder,System.Collections.Generic.IEnumerable{System.Collections.Generic.KeyValuePair{System.String,System.String}})">
      <summary>
            Adds a set of name-value pairs to the end of a given URL
            as part of the querystring piece.  Prefixes a ? or &amp; before
            first element as necessary.
            </summary>
      <param name="builder">The UriBuilder to add arguments to.</param>
      <param name="args">
            The arguments to add to the query.  
            If null, <paramref name="builder" /> is not changed.
            </param>
      <remarks>
            If the parameters to add match names of parameters that already are defined
            in the query string, the existing ones are <i>not</i> replaced.
            </remarks>
    </member>
    <member name="M:DotNetOpenAuth.Messaging.MessagingUtilities.AppendAndReplaceQueryArgs(System.UriBuilder,System.Collections.Generic.IEnumerable{System.Collections.Generic.KeyValuePair{System.String,System.String}})">
      <summary>
            Adds parameters to a query string, replacing parameters that
            match ones that already exist in the query string.
            </summary>
      <param name="builder">The UriBuilder to add arguments to.</param>
      <param name="args">
            The arguments to add to the query.  
            If null, <paramref name="builder" /> is not changed.
            </param>
    </member>
    <member name="M:DotNetOpenAuth.Messaging.MessagingUtilities.GetRecipient(DotNetOpenAuth.Messaging.HttpRequestInfo)">
      <summary>
            Extracts the recipient from an HttpRequestInfo.
            </summary>
      <param name="request">The request to get recipient information from.</param>
      <returns>The recipient.</returns>
    </member>
    <member name="M:DotNetOpenAuth.Messaging.MessagingUtilities.GetHttpDeliveryMethod(System.String)">
      <summary>
            Gets the <see cref="T:DotNetOpenAuth.Messaging.HttpDeliveryMethods" /> enum value for a given HTTP verb.
            </summary>
      <param name="httpVerb">The HTTP verb.</param>
      <returns>A <see cref="T:DotNetOpenAuth.Messaging.HttpDeliveryMethods" /> enum value that is within the <see cref="F:DotNetOpenAuth.Messaging.HttpDeliveryMethods.HttpVerbMask" />.</returns>
    </member>
    <member name="M:DotNetOpenAuth.Messaging.MessagingUtilities.GetHttpVerb(DotNetOpenAuth.Messaging.HttpDeliveryMethods)">
      <summary>
            Gets the HTTP verb to use for a given <see cref="T:DotNetOpenAuth.Messaging.HttpDeliveryMethods" /> enum value.
            </summary>
      <param name="httpMethod">The HTTP method.</param>
      <returns>An HTTP verb, such as GET, POST, PUT, or DELETE.</returns>
    </member>
    <member name="M:DotNetOpenAuth.Messaging.MessagingUtilities.AddExtraParameters(DotNetOpenAuth.Messaging.Reflection.MessageDictionary,System.Collections.Generic.IDictionary{System.String,System.String})">
      <summary>
            Copies some extra parameters into a message.
            </summary>
      <param name="messageDictionary">The message to copy the extra data into.</param>
      <param name="extraParameters">The extra data to copy into the message.  May be null to do nothing.</param>
    </member>
    <member name="M:DotNetOpenAuth.Messaging.MessagingUtilities.ToDictionary(System.Collections.Specialized.NameValueCollection)">
      <summary>
            Converts a <see cref="T:System.Collections.Specialized.NameValueCollection" /> to an IDictionary&lt;string, string&gt;.
            </summary>
      <param name="nvc">The NameValueCollection to convert.  May be null.</param>
      <returns>The generated dictionary, or null if <paramref name="nvc" /> is null.</returns>
      <remarks>
            If a <c>null</c> key is encountered, its value is ignored since
            <c>Dictionary&lt;string, string&gt;</c> does not allow null keys.
            </remarks>
    </member>
    <member name="M:DotNetOpenAuth.Messaging.MessagingUtilities.ToDictionary(System.Collections.Specialized.NameValueCollection,System.Boolean)">
      <summary>
            Converts a <see cref="T:System.Collections.Specialized.NameValueCollection" /> to an IDictionary&lt;string, string&gt;.
            </summary>
      <param name="nvc">The NameValueCollection to convert.  May be null.</param>
      <param name="throwOnNullKey">
            A value indicating whether a null key in the <see cref="T:System.Collections.Specialized.NameValueCollection" /> should be silently skipped since it is not a valid key in a Dictionary.  
            Use <c>true</c> to throw an exception if a null key is encountered.
            Use <c>false</c> to silently continue converting the valid keys.
            </param>
      <returns>The generated dictionary, or null if <paramref name="nvc" /> is null.</returns>
      <exception cref="T:System.ArgumentException">Thrown if <paramref name="throwOnNullKey" /> is <c>true</c> and a null key is encountered.</exception>
    </member>
    <member name="M:DotNetOpenAuth.Messaging.MessagingUtilities.OrderBy``2(System.Collections.Generic.IEnumerable{``0},System.Func{``0,``1},System.Comparison{``1})">
      <summary>
            Sorts the elements of a sequence in ascending order by using a specified comparer.
            </summary>
      <typeparam name="TSource">The type of the elements of source.</typeparam>
      <typeparam name="TKey">The type of the key returned by keySelector.</typeparam>
      <param name="source">A sequence of values to order.</param>
      <param name="keySelector">A function to extract a key from an element.</param>
      <param name="comparer">A comparison function to compare keys.</param>
      <returns>An System.Linq.IOrderedEnumerable&lt;TElement&gt; whose elements are sorted according to a key.</returns>
    </member>
    <member name="M:DotNetOpenAuth.Messaging.MessagingUtilities.IsRequest(DotNetOpenAuth.Messaging.IDirectedProtocolMessage)">
      <summary>
            Determines whether the specified message is a request (indirect message or direct request).
            </summary>
      <param name="message">The message in question.</param>
      <returns>
        <c>true</c> if the specified message is a request; otherwise, <c>false</c>.
            </returns>
      <remarks>
            Although an <see cref="T:DotNetOpenAuth.Messaging.IProtocolMessage" /> may implement the <see cref="T:DotNetOpenAuth.Messaging.IDirectedProtocolMessage" />
            interface, it may only be doing that for its derived classes.  These objects are only requests
            if their <see cref="P:DotNetOpenAuth.Messaging.IDirectedProtocolMessage.Recipient" /> property is non-null.
            </remarks>
    </member>
    <member name="M:DotNetOpenAuth.Messaging.MessagingUtilities.IsDirectResponse(DotNetOpenAuth.Messaging.IDirectResponseProtocolMessage)">
      <summary>
            Determines whether the specified message is a direct response.
            </summary>
      <param name="message">The message in question.</param>
      <returns>
        <c>true</c> if the specified message is a direct response; otherwise, <c>false</c>.
            </returns>
      <remarks>
            Although an <see cref="T:DotNetOpenAuth.Messaging.IProtocolMessage" /> may implement the 
            <see cref="T:DotNetOpenAuth.Messaging.IDirectResponseProtocolMessage" /> interface, it may only be doing 
            that for its derived classes.  These objects are only requests if their 
            <see cref="P:DotNetOpenAuth.Messaging.IDirectResponseProtocolMessage.OriginatingRequest" /> property is non-null.
            </remarks>
    </member>
    <member name="M:DotNetOpenAuth.Messaging.MessagingUtilities.CreateJsonObject(System.Collections.Generic.IEnumerable{System.Collections.Generic.KeyValuePair{System.String,System.String}},System.Boolean)">
      <summary>
            Constructs a Javascript expression that will create an object
            on the user agent when assigned to a variable.
            </summary>
      <param name="namesAndValues">The untrusted names and untrusted values to inject into the JSON object.</param>
      <param name="valuesPreEncoded">if set to <c>true</c> the values will NOT be escaped as if it were a pure string.</param>
      <returns>The Javascript JSON object as a string.</returns>
    </member>
    <member name="M:DotNetOpenAuth.Messaging.MessagingUtilities.GetSafeJavascriptValue(System.String)">
      <summary>
            Prepares what SHOULD be simply a string value for safe injection into Javascript
            by using appropriate character escaping.
            </summary>
      <param name="value">The untrusted string value to be escaped to protected against XSS attacks.  May be null.</param>
      <returns>The escaped string.</returns>
    </member>
    <member name="M:DotNetOpenAuth.Messaging.MessagingUtilities.EscapeUriDataStringRfc3986(System.String)">
      <summary>
            Escapes a string according to the URI data string rules given in RFC 3986.
            </summary>
      <param name="value">The value to escape.</param>
      <returns>The escaped value.</returns>
      <remarks>
            The <see cref="M:System.Uri.EscapeDataString(System.String)" /> method is <i>supposed</i> to take on
            RFC 3986 behavior if certain elements are present in a .config file.  Even if this
            actually worked (which in my experiments it <i>doesn't</i>), we can't rely on every
            host actually having this configuration element present.
            </remarks>
    </member>
    <member name="M:DotNetOpenAuth.Messaging.MessagingUtilities.ToLocalTimeSafe(System.DateTime)">
      <summary>
            Ensures that UTC times are converted to local times.  Unspecified kinds are unchanged.
            </summary>
      <param name="value">The date-time to convert.</param>
      <returns>The date-time in local time.</returns>
    </member>
    <member name="M:DotNetOpenAuth.Messaging.MessagingUtilities.ToUniversalTimeSafe(System.DateTime)">
      <summary>
            Ensures that local times are converted to UTC times.  Unspecified kinds are unchanged.
            </summary>
      <param name="value">The date-time to convert.</param>
      <returns>The date-time in UTC time.</returns>
    </member>
    <member name="T:DotNetOpenAuth.Messaging.MessagingUtilities.ComparisonHelper`1">
      <summary>
            A class to convert a <see cref="T:System.Comparison`1" /> into an <see cref="T:System.Collections.Generic.IComparer`1" />.
            </summary>
      <typeparam name="T">The type of objects being compared.</typeparam>
    </member>
    <member name="F:DotNetOpenAuth.Messaging.MessagingUtilities.ComparisonHelper`1.comparison">
      <summary>
            The comparison method to use.
            </summary>
    </member>
    <member name="M:DotNetOpenAuth.Messaging.MessagingUtilities.ComparisonHelper`1.#ctor(System.Comparison{`0})">
      <summary>
            Initializes a new instance of the ComparisonHelper class.
            </summary>
      <param name="comparison">The comparison method to use.</param>
    </member>
    <member name="M:DotNetOpenAuth.Messaging.MessagingUtilities.ComparisonHelper`1.Compare(`0,`0)">
      <summary>
            Compares two instances of <typeparamref name="T" />.
            </summary>
      <param name="x">The first object to compare.</param>
      <param name="y">The second object to compare.</param>
      <returns>Any of -1, 0, or 1 according to standard comparison rules.</returns>
    </member>
    <member name="T:DotNetOpenAuth.Messaging.Bindings.StandardExpirationBindingElement">
      <summary>
            A message expiration enforcing binding element that supports messages
            implementing the <see cref="T:DotNetOpenAuth.Messaging.Bindings.IExpiringProtocolMessage" /> interface.
            </summary>
    </member>
    <member name="M:DotNetOpenAuth.Messaging.Bindings.StandardExpirationBindingElement.#ctor">
      <summary>
            Initializes a new instance of the <see cref="T:DotNetOpenAuth.Messaging.Bindings.StandardExpirationBindingElement" /> class.
            </summary>
    </member>
    <member name="M:DotNetOpenAuth.Messaging.Bindings.StandardExpirationBindingElement.ProcessOutgoingMessage(DotNetOpenAuth.Messaging.IProtocolMessage)">
      <summary>
            Sets the timestamp on an outgoing message.
            </summary>
      <param name="message">The outgoing message.</param>
      <returns>
            The protections (if any) that this binding element applied to the message.
            Null if this binding element did not even apply to this binding element.
            </returns>
    </member>
    <member name="M:DotNetOpenAuth.Messaging.Bindings.StandardExpirationBindingElement.ProcessIncomingMessage(DotNetOpenAuth.Messaging.IProtocolMessage)">
      <summary>
            Reads the timestamp on a message and throws an exception if the message is too old.
            </summary>
      <param name="message">The incoming message.</param>
      <returns>
            The protections (if any) that this binding element applied to the message.
            Null if this binding element did not even apply to this binding element.
            </returns>
      <exception cref="T:DotNetOpenAuth.Messaging.Bindings.ExpiredMessageException">Thrown if the given message has already expired.</exception>
      <exception cref="T:DotNetOpenAuth.Messaging.ProtocolException">
            Thrown when the binding element rules indicate that this message is invalid and should
            NOT be processed.
            </exception>
    </member>
    <member name="P:DotNetOpenAuth.Messaging.Bindings.StandardExpirationBindingElement.DotNetOpenAuth#Messaging#IChannelBindingElement#Protection">
      <summary>
            Gets the protection offered by this binding element.
            </summary>
      <value>
        <see cref="F:DotNetOpenAuth.Messaging.MessageProtections.Expiration" />
      </value>
    </member>
    <member name="P:DotNetOpenAuth.Messaging.Bindings.StandardExpirationBindingElement.Channel">
      <summary>
            Gets or sets the channel that this binding element belongs to.
            </summary>
    </member>
    <member name="P:DotNetOpenAuth.Messaging.Bindings.StandardExpirationBindingElement.MaximumMessageAge">
      <summary>
            Gets the maximum age a message implementing the 
            <see cref="T:DotNetOpenAuth.Messaging.Bindings.IExpiringProtocolMessage" /> interface can be before
            being discarded as too old.
            </summary>
    </member>
    <member name="T:DotNetOpenAuth.Messaging.Reflection.ValueMapping">
      <summary>
            A pair of conversion functions to map some type to a string and back again.
            </summary>
    </member>
    <member name="F:DotNetOpenAuth.Messaging.Reflection.ValueMapping.ValueToString">
      <summary>
            The mapping function that converts some custom type to a string.
            </summary>
    </member>
    <member name="F:DotNetOpenAuth.Messaging.Reflection.ValueMapping.StringToValue">
      <summary>
            The mapping function that converts a string to some custom type.
            </summary>
    </member>
    <member name="M:DotNetOpenAuth.Messaging.Reflection.ValueMapping.#ctor(System.Func{System.Object,System.String},System.Func{System.String,System.Object})">
      <summary>
            Initializes a new instance of the <see cref="T:DotNetOpenAuth.Messaging.Reflection.ValueMapping" /> struct.
            </summary>
      <param name="toString">The mapping function that converts some custom type to a string.</param>
      <param name="toValue">The mapping function that converts a string to some custom type.</param>
    </member>
    <member name="M:DotNetOpenAuth.Messaging.Reflection.ValueMapping.#ctor(DotNetOpenAuth.Messaging.Reflection.IMessagePartEncoder)">
      <summary>
            Initializes a new instance of the <see cref="T:DotNetOpenAuth.Messaging.Reflection.ValueMapping" /> struct.
            </summary>
      <param name="encoder">The encoder.</param>
    </member>
    <member name="T:DotNetOpenAuth.Messaging.Reflection.MessageDescription">
      <summary>
            A mapping between serialized key names and <see cref="T:DotNetOpenAuth.Messaging.Reflection.MessagePart" /> instances describing
            those key/values pairs.
            </summary>
    </member>
    <member name="F:DotNetOpenAuth.Messaging.Reflection.MessageDescription.messageType">
      <summary>
            The type of message this instance was generated from.
            </summary>
    </member>
    <member name="F:DotNetOpenAuth.Messaging.Reflection.MessageDescription.messageVersion">
      <summary>
            The message version this instance was generated from.
            </summary>
    </member>
    <member name="F:DotNetOpenAuth.Messaging.Reflection.MessageDescription.mapping">
      <summary>
            A mapping between the serialized key names and their 
            describing <see cref="T:DotNetOpenAuth.Messaging.Reflection.MessagePart" /> instances.
            </summary>
    </member>
    <member name="M:DotNetOpenAuth.Messaging.Reflection.MessageDescription.#ctor(System.Type,System.Version)">
      <summary>
            Initializes a new instance of the <see cref="T:DotNetOpenAuth.Messaging.Reflection.MessageDescription" /> class.
            </summary>
      <param name="messageType">Type of the message.</param>
      <param name="messageVersion">The message version.</param>
    </member>
    <member name="M:DotNetOpenAuth.Messaging.Reflection.MessageDescription.GetDictionary(DotNetOpenAuth.Messaging.IMessage)">
      <summary>
            Gets a dictionary that provides read/write access to a message.
            </summary>
      <param name="message">The message the dictionary should provide access to.</param>
      <returns>The dictionary accessor to the message</returns>
      <pure />
    </member>
    <member name="M:DotNetOpenAuth.Messaging.Reflection.MessageDescription.ReflectMessageType">
      <summary>
            Reflects over some <see cref="T:DotNetOpenAuth.Messaging.IMessage" />-implementing type
            and prepares to serialize/deserialize instances of that type.
            </summary>
    </member>
    <member name="M:DotNetOpenAuth.Messaging.Reflection.MessageDescription.EnsureMessagePartsPassBasicValidation(System.Collections.Generic.IDictionary{System.String,System.String})">
      <summary>
            Ensures the message parts pass basic validation.
            </summary>
      <param name="parts">The key/value pairs of the serialized message.</param>
    </member>
    <member name="M:DotNetOpenAuth.Messaging.Reflection.MessageDescription.EnsureRequiredMessagePartsArePresent(System.Collections.Generic.IEnumerable{System.String})">
      <summary>
            Verifies that a given set of keys include all the required parameters
            for this message type or throws an exception.
            </summary>
      <param name="keys">The names of all parameters included in a message.</param>
      <exception cref="T:DotNetOpenAuth.Messaging.ProtocolException">Thrown when required parts of a message are not in <paramref name="keys" /></exception>
    </member>
    <member name="M:DotNetOpenAuth.Messaging.Reflection.MessageDescription.EnsureRequiredProtocolMessagePartsAreNotEmpty(System.Collections.Generic.IDictionary{System.String,System.String})">
      <summary>
            Ensures the protocol message parts that must not be empty are in fact not empty.
            </summary>
      <param name="partValues">A dictionary of key/value pairs that make up the serialized message.</param>
    </member>
    <member name="P:DotNetOpenAuth.Messaging.Reflection.MessageDescription.Mapping">
      <summary>
            Gets the mapping between the serialized key names and their describing
            <see cref="T:DotNetOpenAuth.Messaging.Reflection.MessagePart" /> instances.
            </summary>
    </member>
    <member name="T:DotNetOpenAuth.Messaging.Reflection.MessageDictionary">
      <summary>
            Wraps an <see cref="T:DotNetOpenAuth.Messaging.IMessage" /> instance in a dictionary that
            provides access to both well-defined message properties and "extra" 
            name/value pairs that have no properties associated with them.
            </summary>
    </member>
    <member name="F:DotNetOpenAuth.Messaging.Reflection.MessageDictionary.message">
      <summary>
            The <see cref="T:DotNetOpenAuth.Messaging.IMessage" /> instance manipulated by this dictionary.
            </summary>
    </member>
    <member name="F:DotNetOpenAuth.Messaging.Reflection.MessageDictionary.description">
      <summary>
            The <see cref="T:DotNetOpenAuth.Messaging.Reflection.MessageDescription" /> instance that describes the message type.
            </summary>
    </member>
    <member name="M:DotNetOpenAuth.Messaging.Reflection.MessageDictionary.#ctor(DotNetOpenAuth.Messaging.IMessage,DotNetOpenAuth.Messaging.Reflection.MessageDescription)">
      <summary>
            Initializes a new instance of the <see cref="T:DotNetOpenAuth.Messaging.Reflection.MessageDictionary" /> class.
            </summary>
      <param name="message">The message instance whose values will be manipulated by this dictionary.</param>
      <param name="description">The message description.</param>
      <pure />
    </member>
    <member name="M:DotNetOpenAuth.Messaging.Reflection.MessageDictionary.Add(System.String,System.String)">
      <summary>
            Adds a named value to the message.
            </summary>
      <param name="key">The serialized form of the name whose value is being set.</param>
      <param name="value">The serialized form of the value.</param>
      <exception cref="T:System.ArgumentException">
            Thrown if <paramref name="key" /> already has a set value in this message.
            </exception>
      <exception cref="T:System.ArgumentNullException">
            Thrown if <paramref name="value" /> is null.
            </exception>
    </member>
    <member name="M:DotNetOpenAuth.Messaging.Reflection.MessageDictionary.ContainsKey(System.String)">
      <summary>
            Checks whether some named parameter has a value set in the message.
            </summary>
      <param name="key">The serialized form of the message part's name.</param>
      <returns>True if the parameter by the given name has a set value.  False otherwise.</returns>
      <ensures inheritedFrom="M:System.Collections.Generic.IDictionary`2.ContainsKey(`0)" inheritedFromTypeName="IDictionary">!Contract.Result&lt;bool&gt;() || @this.Count &gt; 0</ensures>
    </member>
    <member name="M:DotNetOpenAuth.Messaging.Reflection.MessageDictionary.Remove(System.String)">
      <summary>
            Removes a name and value from the message given its name.
            </summary>
      <param name="key">The serialized form of the name to remove.</param>
      <returns>True if a message part by the given name was found and removed.  False otherwise.</returns>
    </member>
    <member name="M:DotNetOpenAuth.Messaging.Reflection.MessageDictionary.TryGetValue(System.String,System.String@)">
      <summary>
            Gets some named value if the key has a value.
            </summary>
      <param name="key">The name (in serialized form) of the value being sought.</param>
      <param name="value">The variable where the value will be set.</param>
      <returns>True if the key was found and <paramref name="value" /> was set.  False otherwise.</returns>
      <ensures inheritedFrom="M:System.Collections.Generic.IDictionary`2.TryGetValue(`0,`1@)" inheritedFromTypeName="IDictionary">Contract.Result&lt;bool&gt;() == @this.ContainsKey(key)</ensures>
    </member>
    <member name="M:DotNetOpenAuth.Messaging.Reflection.MessageDictionary.Add(System.Collections.Generic.KeyValuePair{System.String,System.String})">
      <summary>
            Sets a named value in the message.
            </summary>
      <param name="item">The name-value pair to add.  The name is the serialized form of the key.</param>
      <ensures inheritedFrom="M:System.Collections.Generic.ICollection`1.Add(`0)" inheritedFromTypeName="ICollection">@this.Count == Contract.OldValue(@this.Count) + 1</ensures>
    </member>
    <member name="M:DotNetOpenAuth.Messaging.Reflection.MessageDictionary.ClearValues">
      <summary>
            Removes all values in the message.
            </summary>
    </member>
    <member name="M:DotNetOpenAuth.Messaging.Reflection.MessageDictionary.Clear">
      <summary>
            Removes all items from the <see cref="T:System.Collections.Generic.ICollection`1" />.
            </summary>
      <exception cref="T:System.NotSupportedException">
            The <see cref="T:System.Collections.Generic.ICollection`1" /> is read-only.
            </exception>
      <remarks>
            This method cannot be implemented because keys are not guaranteed to be removed
            since some are inherent to the type of message that this dictionary provides
            access to.
            </remarks>
      <ensures inheritedFrom="M:System.Collections.Generic.ICollection`1.Clear" inheritedFromTypeName="ICollection">@this.Count == 0</ensures>
    </member>
    <member name="M:DotNetOpenAuth.Messaging.Reflection.MessageDictionary.Contains(System.Collections.Generic.KeyValuePair{System.String,System.String})">
      <summary>
            Checks whether a named value has been set on the message.
            </summary>
      <param name="item">The name/value pair.</param>
      <returns>True if the key exists and has the given value.  False otherwise.</returns>
      <ensures inheritedFrom="M:System.Collections.Generic.ICollection`1.Contains(`0)" inheritedFromTypeName="ICollection">!Contract.Result&lt;bool&gt;() || @this.Count &gt; 0</ensures>
    </member>
    <member name="M:DotNetOpenAuth.Messaging.Reflection.MessageDictionary.System#Collections#Generic#ICollection{System#Collections#Generic#KeyValuePair{System#String@System#String}}#CopyTo(System.Collections.Generic.KeyValuePair{System.String,System.String}[],System.Int32)">
      <summary>
            Copies all the serializable data from the message to a key/value array.
            </summary>
      <param name="array">The array to copy to.</param>
      <param name="arrayIndex">The index in the <paramref name="array" /> to begin copying to.</param>
      <requires inheritedFrom="M:System.Collections.Generic.ICollection`1.CopyTo(`0[],System.Int32)" inheritedFromTypeName="ICollection">array != null</requires>
      <requires inheritedFrom="M:System.Collections.Generic.ICollection`1.CopyTo(`0[],System.Int32)" inheritedFromTypeName="ICollection">arrayIndex &gt;= 0</requires>
      <requires inheritedFrom="M:System.Collections.Generic.ICollection`1.CopyTo(`0[],System.Int32)" inheritedFromTypeName="ICollection">arrayIndex + @this.Count  &lt;= array.Length</requires>
    </member>
    <member name="M:DotNetOpenAuth.Messaging.Reflection.MessageDictionary.Remove(System.Collections.Generic.KeyValuePair{System.String,System.String})">
      <summary>
            Removes a named value from the message if it exists.
            </summary>
      <param name="item">The serialized form of the name and value to remove.</param>
      <returns>True if the name/value was found and removed.  False otherwise.</returns>
    </member>
    <member name="M:DotNetOpenAuth.Messaging.Reflection.MessageDictionary.GetEnumerator">
      <summary>
            Gets an enumerator that generates KeyValuePair&lt;string, string&gt; instances
            for all the key/value pairs that are set in the message.
            </summary>
      <returns>The enumerator that can generate the name/value pairs.</returns>
      <ensures inheritedFrom="M:System.Collections.Generic.IEnumerable`1.GetEnumerator" inheritedFromTypeName="IEnumerable">Contract.Result&lt;IEnumerator&lt;T&gt;&gt;() != null</ensures>
    </member>
    <member name="M:DotNetOpenAuth.Messaging.Reflection.MessageDictionary.System#Collections#IEnumerable#GetEnumerator">
      <summary>
            Gets an enumerator that generates KeyValuePair&lt;string, string&gt; instances
            for all the key/value pairs that are set in the message.
            </summary>
      <returns>The enumerator that can generate the name/value pairs.</returns>
      <ensures inheritedFrom="M:System.Collections.IEnumerable.GetEnumerator" inheritedFromTypeName="IEnumerable">Contract.Result&lt;IEnumerator&gt;() != null</ensures>
    </member>
    <member name="M:DotNetOpenAuth.Messaging.Reflection.MessageDictionary.Serialize">
      <summary>
            Saves the data in a message to a standard dictionary.
            </summary>
      <returns>The generated dictionary.</returns>
      <pure />
    </member>
    <member name="M:DotNetOpenAuth.Messaging.Reflection.MessageDictionary.Deserialize(System.Collections.Generic.IDictionary{System.String,System.String})">
      <summary>
            Loads data from a dictionary into the message.
            </summary>
      <param name="fields">The data to load into the message.</param>
    </member>
    <member name="M:DotNetOpenAuth.Messaging.Reflection.MessageDictionary.ObjectInvariant">
      <summary>
            Verifies conditions that should be true for any valid state of this object.
            </summary>
    </member>
    <member name="P:DotNetOpenAuth.Messaging.Reflection.MessageDictionary.Message">
      <summary>
            Gets the message this dictionary provides access to.
            </summary>
    </member>
    <member name="P:DotNetOpenAuth.Messaging.Reflection.MessageDictionary.Description">
      <summary>
            Gets the description of the type of message this dictionary provides access to.
            </summary>
    </member>
    <member name="P:DotNetOpenAuth.Messaging.Reflection.MessageDictionary.Count">
      <summary>
            Gets the number of explicitly set values in the message.
            </summary>
      <getter>
        <ensures inheritedFrom="M:System.Collections.Generic.ICollection`1.get_Count" inheritedFromTypeName="ICollection">Contract.Result&lt;int&gt;() &gt;= 0</ensures>
      </getter>
    </member>
    <member name="P:DotNetOpenAuth.Messaging.Reflection.MessageDictionary.System#Collections#Generic#ICollection{System#Collections#Generic#KeyValuePair{System#String@System#String}}#IsReadOnly">
      <summary>
            Gets a value indicating whether this message is read only.
            </summary>
    </member>
    <member name="P:DotNetOpenAuth.Messaging.Reflection.MessageDictionary.Keys">
      <summary>
            Gets all the keys that have values associated with them.
            </summary>
      <getter>
        <ensures inheritedFrom="M:System.Collections.Generic.IDictionary`2.get_Keys" inheritedFromTypeName="IDictionary">Contract.Result&lt;ICollection&lt;TKey&gt;&gt;() != null</ensures>
      </getter>
    </member>
    <member name="P:DotNetOpenAuth.Messaging.Reflection.MessageDictionary.DeclaredKeys">
      <summary>
            Gets the set of official message part names that have non-null values associated with them.
            </summary>
    </member>
    <member name="P:DotNetOpenAuth.Messaging.Reflection.MessageDictionary.AdditionalKeys">
      <summary>
            Gets the keys that are in the message but not declared as official OAuth properties.
            </summary>
    </member>
    <member name="P:DotNetOpenAuth.Messaging.Reflection.MessageDictionary.Values">
      <summary>
            Gets all the values.
            </summary>
      <getter>
        <ensures inheritedFrom="M:System.Collections.Generic.IDictionary`2.get_Values" inheritedFromTypeName="IDictionary">Contract.Result&lt;ICollection&lt;TValue&gt;&gt;() != null</ensures>
      </getter>
    </member>
    <member name="P:DotNetOpenAuth.Messaging.Reflection.MessageDictionary.Serializer">
      <summary>
            Gets the serializer for the message this dictionary provides access to.
            </summary>
    </member>
    <member name="P:DotNetOpenAuth.Messaging.Reflection.MessageDictionary.Item(System.String)">
      <summary>
            Gets or sets a value for some named value.
            </summary>
      <param name="key">The serialized form of a name for the value to read or write.</param>
      <returns>The named value.</returns>
      <remarks>
            If the key matches a declared property or field on the message type,
            that type member is set.  Otherwise the key/value is stored in a
            dictionary for extra (weakly typed) strings.
            </remarks>
      <exception cref="T:System.ArgumentException">Thrown when setting a value that is not allowed for a given <paramref name="key" />.</exception>
    </member>
    <member name="T:DotNetOpenAuth.Messaging.Reflection.MessagePart">
      <summary>
            Describes an individual member of a message and assists in its serialization.
            </summary>
    </member>
    <member name="F:DotNetOpenAuth.Messaging.Reflection.MessagePart.converters">
      <summary>
            A map of converters that help serialize custom objects to string values and back again.
            </summary>
    </member>
    <member name="F:DotNetOpenAuth.Messaging.Reflection.MessagePart.encoders">
      <summary>
            A map of instantiated custom encoders used to encode/decode message parts.
            </summary>
    </member>
    <member name="F:DotNetOpenAuth.Messaging.Reflection.MessagePart.converter">
      <summary>
            The string-object conversion routines to use for this individual message part.
            </summary>
    </member>
    <member name="F:DotNetOpenAuth.Messaging.Reflection.MessagePart.property">
      <summary>
            The property that this message part is associated with, if aplicable.
            </summary>
    </member>
    <member name="F:DotNetOpenAuth.Messaging.Reflection.MessagePart.field">
      <summary>
            The field that this message part is associated with, if aplicable.
            </summary>
    </member>
    <member name="F:DotNetOpenAuth.Messaging.Reflection.MessagePart.memberDeclaredType">
      <summary>
            The type of the message part.  (Not the type of the message itself).
            </summary>
    </member>
    <member name="F:DotNetOpenAuth.Messaging.Reflection.MessagePart.defaultMemberValue">
      <summary>
            The default (uninitialized) value of the member inherent in its type.
            </summary>
    </member>
    <member name="M:DotNetOpenAuth.Messaging.Reflection.MessagePart.#cctor">
      <summary>
            Initializes static members of the <see cref="T:DotNetOpenAuth.Messaging.Reflection.MessagePart" /> class.
            </summary>
    </member>
    <member name="M:DotNetOpenAuth.Messaging.Reflection.MessagePart.#ctor(System.Reflection.MemberInfo,DotNetOpenAuth.Messaging.MessagePartAttribute)">
      <summary>
            Initializes a new instance of the <see cref="T:DotNetOpenAuth.Messaging.Reflection.MessagePart" /> class.
            </summary>
      <param name="member">
            A property or field of an <see cref="T:DotNetOpenAuth.Messaging.IMessage" /> implementing type
            that has a <see cref="T:DotNetOpenAuth.Messaging.MessagePartAttribute" /> attached to it.
            </param>
      <param name="attribute">
            The attribute discovered on <paramref name="member" /> that describes the
            serialization requirements of the message part.
            </param>
    </member>
    <member name="M:DotNetOpenAuth.Messaging.Reflection.MessagePart.SetValue(DotNetOpenAuth.Messaging.IMessage,System.String)">
      <summary>
            Sets the member of a given message to some given value.
            Used in deserialization.
            </summary>
      <param name="message">The message instance containing the member whose value should be set.</param>
      <param name="value">The string representation of the value to set.</param>
    </member>
    <member name="M:DotNetOpenAuth.Messaging.Reflection.MessagePart.GetValue(DotNetOpenAuth.Messaging.IMessage)">
      <summary>
            Gets the value of a member of a given message.
            Used in serialization.
            </summary>
      <param name="message">The message instance to read the value from.</param>
      <returns>The string representation of the member's value.</returns>
    </member>
    <member name="M:DotNetOpenAuth.Messaging.Reflection.MessagePart.IsNondefaultValueSet(DotNetOpenAuth.Messaging.IMessage)">
      <summary>
            Gets whether the value has been set to something other than its CLR type default value.
            </summary>
      <param name="message">The message instance to check the value on.</param>
      <returns>True if the value is not the CLR default value.</returns>
    </member>
    <member name="M:DotNetOpenAuth.Messaging.Reflection.MessagePart.DeriveDefaultValue(System.Type)">
      <summary>
            Figures out the CLR default value for a given type.
            </summary>
      <param name="type">The type whose default value is being sought.</param>
      <returns>Either null, or some default value like 0 or 0.0.</returns>
    </member>
    <member name="M:DotNetOpenAuth.Messaging.Reflection.MessagePart.Map``1(System.Func{``0,System.String},System.Func{System.String,``0})">
      <summary>
            Adds a pair of type conversion functions to the static converstion map.
            </summary>
      <typeparam name="T">The custom type to convert to and from strings.</typeparam>
      <param name="toString">The function to convert the custom type to a string.</param>
      <param name="toValue">The function to convert a string to the custom type.</param>
    </member>
    <member name="M:DotNetOpenAuth.Messaging.Reflection.MessagePart.IsNonNullableValueType(System.Type)">
      <summary>
            Checks whether a type is a nullable value type (i.e. int?)
            </summary>
      <param name="type">The type in question.</param>
      <returns>True if this is a nullable value type.</returns>
    </member>
    <member name="M:DotNetOpenAuth.Messaging.Reflection.MessagePart.GetEncoder(System.Type)">
      <summary>
            Retrieves a previously instantiated encoder of a given type, or creates a new one and stores it for later retrieval as well.
            </summary>
      <param name="messagePartEncoder">The message part encoder type.</param>
      <returns>An instance of the desired encoder.</returns>
    </member>
    <member name="M:DotNetOpenAuth.Messaging.Reflection.MessagePart.ToValue(System.String)">
      <summary>
            Converts a string representation of the member's value to the appropriate type.
            </summary>
      <param name="value">The string representation of the member's value.</param>
      <returns>
            An instance of the appropriate type for setting the member.
            </returns>
    </member>
    <member name="M:DotNetOpenAuth.Messaging.Reflection.MessagePart.ToString(System.Object)">
      <summary>
            Converts the member's value to its string representation.
            </summary>
      <param name="value">The value of the member.</param>
      <returns>
            The string representation of the member's value.
            </returns>
    </member>
    <member name="M:DotNetOpenAuth.Messaging.Reflection.MessagePart.GetValueAsObject(DotNetOpenAuth.Messaging.IMessage)">
      <summary>
            Gets the value of the message part, without converting it to/from a string.
            </summary>
      <param name="message">The message instance to read from.</param>
      <returns>The value of the member.</returns>
    </member>
    <member name="M:DotNetOpenAuth.Messaging.Reflection.MessagePart.ValidateSettings">
      <summary>
            Validates that the message part and its attribute have agreeable settings.
            </summary>
      <exception cref="T:System.ArgumentException">
            Thrown when a non-nullable value type is set as optional.
            </exception>
    </member>
    <member name="P:DotNetOpenAuth.Messaging.Reflection.MessagePart.Name">
      <summary>
            Gets or sets the name to use when serializing or deserializing this parameter in a message.
            </summary>
    </member>
    <member name="P:DotNetOpenAuth.Messaging.Reflection.MessagePart.RequiredProtection">
      <summary>
            Gets or sets whether this message part must be signed.
            </summary>
    </member>
    <member name="P:DotNetOpenAuth.Messaging.Reflection.MessagePart.IsRequired">
      <summary>
            Gets or sets a value indicating whether this message part is required for the
            containing message to be valid.
            </summary>
    </member>
    <member name="P:DotNetOpenAuth.Messaging.Reflection.MessagePart.AllowEmpty">
      <summary>
            Gets or sets a value indicating whether the string value is allowed to be empty in the serialized message.
            </summary>
    </member>
    <member name="P:DotNetOpenAuth.Messaging.Reflection.MessagePart.IsConstantValue">
      <summary>
            Gets or sets a value indicating whether the field or property must remain its default value.
            </summary>
    </member>
    <member name="T:DotNetOpenAuth.Messaging.UnprotectedMessageException">
      <summary>
            An exception thrown when messages cannot receive all the protections they require.
            </summary>
    </member>
    <member name="M:DotNetOpenAuth.Messaging.UnprotectedMessageException.#ctor(DotNetOpenAuth.Messaging.IProtocolMessage,DotNetOpenAuth.Messaging.MessageProtections)">
      <summary>
            Initializes a new instance of the <see cref="T:DotNetOpenAuth.Messaging.UnprotectedMessageException" /> class.
            </summary>
      <param name="faultedMessage">The message whose protection requirements could not be met.</param>
      <param name="appliedProtection">The protection requirements that were fulfilled.</param>
    </member>
    <member name="M:DotNetOpenAuth.Messaging.UnprotectedMessageException.#ctor(System.Runtime.Serialization.SerializationInfo,System.Runtime.Serialization.StreamingContext)">
      <summary>
            Initializes a new instance of the <see cref="T:DotNetOpenAuth.Messaging.UnprotectedMessageException" /> class.
            </summary>
      <param name="info">The <see cref="T:System.Runtime.Serialization.SerializationInfo" /> 
            that holds the serialized object data about the exception being thrown.</param>
      <param name="context">The System.Runtime.Serialization.StreamingContext 
            that contains contextual information about the source or destination.</param>
    </member>
    <member name="T:DotNetOpenAuth.OAuth.ChannelElements.OAuthChannel">
      <summary>
            An OAuth-specific implementation of the <see cref="T:DotNetOpenAuth.Messaging.Channel" /> class.
            </summary>
    </member>
    <member name="M:DotNetOpenAuth.OAuth.ChannelElements.OAuthChannel.#ctor(DotNetOpenAuth.Messaging.ITamperProtectionChannelBindingElement,DotNetOpenAuth.Messaging.Bindings.INonceStore,DotNetOpenAuth.OAuth.ChannelElements.IConsumerTokenManager)">
      <summary>
            Initializes a new instance of the <see cref="T:DotNetOpenAuth.OAuth.ChannelElements.OAuthChannel" /> class.
            </summary>
      <param name="signingBindingElement">The binding element to use for signing.</param>
      <param name="store">The web application store to use for nonces.</param>
      <param name="tokenManager">The token manager instance to use.</param>
    </member>
    <member name="M:DotNetOpenAuth.OAuth.ChannelElements.OAuthChannel.#ctor(DotNetOpenAuth.Messaging.ITamperProtectionChannelBindingElement,DotNetOpenAuth.Messaging.Bindings.INonceStore,DotNetOpenAuth.OAuth.ChannelElements.IServiceProviderTokenManager)">
      <summary>
            Initializes a new instance of the <see cref="T:DotNetOpenAuth.OAuth.ChannelElements.OAuthChannel" /> class.
            </summary>
      <param name="signingBindingElement">The binding element to use for signing.</param>
      <param name="store">The web application store to use for nonces.</param>
      <param name="tokenManager">The token manager instance to use.</param>
    </member>
    <member name="M:DotNetOpenAuth.OAuth.ChannelElements.OAuthChannel.#ctor(DotNetOpenAuth.Messaging.ITamperProtectionChannelBindingElement,DotNetOpenAuth.Messaging.Bindings.INonceStore,DotNetOpenAuth.OAuth.ChannelElements.ITokenManager,DotNetOpenAuth.Messaging.IMessageFactory)">
      <summary>
            Initializes a new instance of the <see cref="T:DotNetOpenAuth.OAuth.ChannelElements.OAuthChannel" /> class.
            </summary>
      <param name="signingBindingElement">The binding element to use for signing.</param>
      <param name="store">The web application store to use for nonces.</param>
      <param name="tokenManager">The ITokenManager instance to use.</param>
      <param name="messageTypeProvider">
            An injected message type provider instance.
            Except for mock testing, this should always be one of
            <see cref="T:DotNetOpenAuth.OAuth.ChannelElements.OAuthConsumerMessageFactory" /> or <see cref="T:DotNetOpenAuth.OAuth.ChannelElements.OAuthServiceProviderMessageFactory" />.
            </param>
    </member>
    <member name="M:DotNetOpenAuth.OAuth.ChannelElements.OAuthChannel.GetUriEscapedParameters(DotNetOpenAuth.Messaging.Reflection.MessageDictionary)">
      <summary>
            Uri-escapes the names and values in a dictionary per OAuth 1.0 section 5.1.
            </summary>
      <param name="message">The message with data to encode.</param>
      <returns>A dictionary of name-value pairs with their strings encoded.</returns>
    </member>
    <member name="M:DotNetOpenAuth.OAuth.ChannelElements.OAuthChannel.InitializeRequest(DotNetOpenAuth.Messaging.IDirectedProtocolMessage)">
      <summary>
            Initializes a web request for sending by attaching a message to it.
            Use this method to prepare a protected resource request that you do NOT
            expect an OAuth message response to.
            </summary>
      <param name="request">The message to attach.</param>
      <returns>The initialized web request.</returns>
    </member>
    <member name="M:DotNetOpenAuth.OAuth.ChannelElements.OAuthChannel.ReadFromRequestCore(DotNetOpenAuth.Messaging.HttpRequestInfo)">
      <summary>
            Searches an incoming HTTP request for data that could be used to assemble
            a protocol request message.
            </summary>
      <param name="request">The HTTP request to search.</param>
      <returns>The deserialized message, if one is found.  Null otherwise.</returns>
    </member>
    <member name="M:DotNetOpenAuth.OAuth.ChannelElements.OAuthChannel.ReadFromResponseCore(DotNetOpenAuth.Messaging.IncomingWebResponse)">
      <summary>
            Gets the protocol message that may be in the given HTTP response.
            </summary>
      <param name="response">The response that is anticipated to contain an protocol message.</param>
      <returns>
            The deserialized message parts, if found.  Null otherwise.
            </returns>
    </member>
    <member name="M:DotNetOpenAuth.OAuth.ChannelElements.OAuthChannel.CreateHttpRequest(DotNetOpenAuth.Messaging.IDirectedProtocolMessage)">
      <summary>
            Prepares an HTTP request that carries a given message.
            </summary>
      <param name="request">The message to send.</param>
      <returns>
            The <see cref="T:System.Web.HttpRequest" /> prepared to send the request.
            </returns>
    </member>
    <member name="M:DotNetOpenAuth.OAuth.ChannelElements.OAuthChannel.PrepareDirectResponse(DotNetOpenAuth.Messaging.IProtocolMessage)">
      <summary>
            Queues a message for sending in the response stream where the fields
            are sent in the response stream in querystring style.
            </summary>
      <param name="response">The message to send as a response.</param>
      <returns>The pending user agent redirect based message to be sent as an HttpResponse.</returns>
      <remarks>
            This method implements spec V1.0 section 5.3.
            </remarks>
    </member>
    <member name="M:DotNetOpenAuth.OAuth.ChannelElements.OAuthChannel.InitializeBindingElements(DotNetOpenAuth.Messaging.ITamperProtectionChannelBindingElement,DotNetOpenAuth.Messaging.Bindings.INonceStore,DotNetOpenAuth.OAuth.ChannelElements.ITokenManager)">
      <summary>
            Initializes the binding elements for the OAuth channel.
            </summary>
      <param name="signingBindingElement">The signing binding element.</param>
      <param name="store">The nonce store.</param>
      <param name="tokenManager">The token manager.</param>
      <returns>An array of binding elements used to initialize the channel.</returns>
    </member>
    <member name="M:DotNetOpenAuth.OAuth.ChannelElements.OAuthChannel.UriEscapeParameters(System.Collections.Generic.IDictionary{System.String,System.String},System.Collections.Generic.IDictionary{System.String,System.String})">
      <summary>
            Uri-escapes the names and values in a dictionary per OAuth 1.0 section 5.1.
            </summary>
      <param name="source">The dictionary with names and values to encode.</param>
      <param name="destination">The dictionary to add the encoded pairs to.</param>
    </member>
    <member name="M:DotNetOpenAuth.OAuth.ChannelElements.OAuthChannel.GetHttpMethod(DotNetOpenAuth.Messaging.IDirectedProtocolMessage)">
      <summary>
            Gets the HTTP method to use for a message.
            </summary>
      <param name="message">The message.</param>
      <returns>"POST", "GET" or some other similar http verb.</returns>
    </member>
    <member name="M:DotNetOpenAuth.OAuth.ChannelElements.OAuthChannel.InitializeRequestAsAuthHeader(DotNetOpenAuth.Messaging.IDirectedProtocolMessage)">
      <summary>
            Prepares to send a request to the Service Provider via the Authorization header.
            </summary>
      <param name="requestMessage">The message to be transmitted to the ServiceProvider.</param>
      <returns>The web request ready to send.</returns>
      <remarks>
        <para>If the message has non-empty ExtraData in it, the request stream is sent to
            the server automatically.  If it is empty, the request stream must be sent by the caller.</para>
        <para>This method implements OAuth 1.0 section 5.2, item #1 (described in section 5.4).</para>
      </remarks>
    </member>
    <member name="M:DotNetOpenAuth.OAuth.ChannelElements.OAuthChannel.SignatureCallback(DotNetOpenAuth.Messaging.ITamperResistantProtocolMessage)">
      <summary>
            Fills out the secrets in a message so that signing/verification can be performed.
            </summary>
      <param name="message">The message about to be signed or whose signature is about to be verified.</param>
    </member>
    <member name="M:DotNetOpenAuth.OAuth.ChannelElements.OAuthChannel.GetConsumerSecret(System.String)">
      <summary>
            Gets the consumer secret for a given consumer key.
            </summary>
      <param name="consumerKey">The consumer key.</param>
      <returns>The consumer secret.</returns>
    </member>
    <member name="P:DotNetOpenAuth.OAuth.ChannelElements.OAuthChannel.Realm">
      <summary>
            Gets or sets the Consumer web application path.
            </summary>
    </member>
    <member name="P:DotNetOpenAuth.OAuth.ChannelElements.OAuthChannel.TokenManager">
      <summary>
            Gets the token manager being used.
            </summary>
    </member>
    <member name="T:DotNetOpenAuth.Messaging.OutgoingWebResponse">
      <summary>
            A protocol message (request or response) that passes from this
            to a remote party via the user agent using a redirect or form 
            POST submission, OR a direct message response.
            </summary>
      <remarks>
        <para>An instance of this type describes the HTTP response that must be sent
            in response to the current HTTP request.</para>
        <para>It is important that this response make up the entire HTTP response.
            A hosting ASPX page should not be allowed to render its normal HTML output
            after this response is sent.  The normal rendered output of an ASPX page 
            can be canceled by calling <see cref="M:System.Web.HttpResponse.End" /> after this message
            is sent on the response stream.</para>
      </remarks>
    </member>
    <member name="F:DotNetOpenAuth.Messaging.OutgoingWebResponse.bodyStringEncoder">
      <summary>
            The encoder to use for serializing the response body.
            </summary>
    </member>
    <member name="M:DotNetOpenAuth.Messaging.OutgoingWebResponse.#ctor">
      <summary>
            Initializes a new instance of the <see cref="T:DotNetOpenAuth.Messaging.OutgoingWebResponse" /> class.
            </summary>
    </member>
    <member name="M:DotNetOpenAuth.Messaging.OutgoingWebResponse.#ctor(System.Net.HttpWebResponse,System.Int32)">
      <summary>
            Initializes a new instance of the <see cref="T:DotNetOpenAuth.Messaging.OutgoingWebResponse" /> class
            based on the contents of an <see cref="T:System.Net.HttpWebResponse" />.
            </summary>
      <param name="response">The <see cref="T:System.Net.HttpWebResponse" /> to clone.</param>
      <param name="maximumBytesToRead">The maximum bytes to read from the response stream.</param>
    </member>
    <member name="M:DotNetOpenAuth.Messaging.OutgoingWebResponse.GetResponseReader">
      <summary>
            Creates a text reader for the response stream.
            </summary>
      <returns>The text reader, initialized for the proper encoding.</returns>
    </member>
    <member name="M:DotNetOpenAuth.Messaging.OutgoingWebResponse.Send">
      <summary>
            Automatically sends the appropriate response to the user agent
            and ends execution on the current page or handler.
            </summary>
      <exception cref="T:System.Threading.ThreadAbortException">Thrown by ASP.NET in order to prevent additional data from the page being sent to the client and corrupting the response.</exception>
      <remarks>
            Requires a current HttpContext.
            </remarks>
    </member>
    <member name="M:DotNetOpenAuth.Messaging.OutgoingWebResponse.Send(System.Web.HttpContext)">
      <summary>
            Automatically sends the appropriate response to the user agent
            and ends execution on the current page or handler.
            </summary>
      <param name="context">The context of the HTTP request whose response should be set.
            Typically this is <see cref="P:System.Web.HttpContext.Current" />.</param>
      <exception cref="T:System.Threading.ThreadAbortException">Thrown by ASP.NET in order to prevent additional data from the page being sent to the client and corrupting the response.</exception>
    </member>
    <member name="M:DotNetOpenAuth.Messaging.OutgoingWebResponse.Send(System.Net.HttpListenerResponse)">
      <summary>
            Automatically sends the appropriate response to the user agent.
            </summary>
      <param name="response">The response to set to this message.</param>
    </member>
    <member name="M:DotNetOpenAuth.Messaging.OutgoingWebResponse.GetDirectUriRequest(DotNetOpenAuth.Messaging.Channel)">
      <summary>
            Gets the URI that, when requested with an HTTP GET request,
            would transmit the message that normally would be transmitted via a user agent redirect.
            </summary>
      <param name="channel">The channel to use for encoding.</param>
      <returns>The URL that would transmit the original message.</returns>
      <remarks>
            This is useful for desktop applications that will spawn a user agent to transmit the message
            rather than cause a redirect.
            </remarks>
    </member>
    <member name="M:DotNetOpenAuth.Messaging.OutgoingWebResponse.SetResponse(System.String)">
      <summary>
            Sets the response to some string, encoded as UTF-8.
            </summary>
      <param name="body">The string to set the response to.</param>
    </member>
    <member name="P:DotNetOpenAuth.Messaging.OutgoingWebResponse.Headers">
      <summary>
            Gets the headers that must be included in the response to the user agent.
            </summary>
      <remarks>
            The headers in this collection are not meant to be a comprehensive list
            of exactly what should be sent, but are meant to augment whatever headers
            are generally included in a typical response.
            </remarks>
    </member>
    <member name="P:DotNetOpenAuth.Messaging.OutgoingWebResponse.ResponseStream">
      <summary>
            Gets the body of the HTTP response.
            </summary>
    </member>
    <member name="P:DotNetOpenAuth.Messaging.OutgoingWebResponse.IsResponseTruncated">
      <summary>
            Gets a value indicating whether the response stream is incomplete due
            to a length limitation imposed by the HttpWebRequest or calling method.
            </summary>
    </member>
    <member name="P:DotNetOpenAuth.Messaging.OutgoingWebResponse.Body">
      <summary>
            Gets or sets the body of the response as a string.
            </summary>
    </member>
    <member name="P:DotNetOpenAuth.Messaging.OutgoingWebResponse.Status">
      <summary>
            Gets the HTTP status code to use in the HTTP response.
            </summary>
    </member>
    <member name="P:DotNetOpenAuth.Messaging.OutgoingWebResponse.OriginalMessage">
      <summary>
            Gets or sets a reference to the actual protocol message that
            is being sent via the user agent.
            </summary>
    </member>
    <member name="T:DotNetOpenAuth.Logger">
      <summary>
            A general logger for the entire DotNetOpenAuth library.
            </summary>
      <remarks>
            Because this logger is intended for use with non-localized strings, the
            overloads that take <see cref="T:System.Globalization.CultureInfo" /> have been removed, and 
            <see cref="P:System.Globalization.CultureInfo.InvariantCulture" /> is used implicitly.
            </remarks>
    </member>
    <member name="F:DotNetOpenAuth.Logger.library">
      <summary>
            The <see cref="T:DotNetOpenAuth.Loggers.ILog" /> instance that is to be used 
            by this static Logger for the duration of the appdomain.
            </summary>
    </member>
    <member name="F:DotNetOpenAuth.Logger.yadis">
      <summary>
            Backing field for the <see cref="P:DotNetOpenAuth.Logger.Yadis" /> property.
            </summary>
    </member>
    <member name="F:DotNetOpenAuth.Logger.messaging">
      <summary>
            Backing field for the <see cref="P:DotNetOpenAuth.Logger.Messaging" /> property.
            </summary>
    </member>
    <member name="F:DotNetOpenAuth.Logger.channel">
      <summary>
            Backing field for the <see cref="P:DotNetOpenAuth.Logger.Channel" /> property.
            </summary>
    </member>
    <member name="F:DotNetOpenAuth.Logger.bindings">
      <summary>
            Backing field for the <see cref="P:DotNetOpenAuth.Logger.Bindings" /> property.
            </summary>
    </member>
    <member name="F:DotNetOpenAuth.Logger.signatures">
      <summary>
            Backing field for the <see cref="P:DotNetOpenAuth.Logger.Signatures" /> property.
            </summary>
    </member>
    <member name="F:DotNetOpenAuth.Logger.http">
      <summary>
            Backing field for the <see cref="P:DotNetOpenAuth.Logger.Http" /> property.
            </summary>
    </member>
    <member name="F:DotNetOpenAuth.Logger.openId">
      <summary>
            Backing field for the <see cref="P:DotNetOpenAuth.Logger.OpenId" /> property.
            </summary>
    </member>
    <member name="F:DotNetOpenAuth.Logger.oauth">
      <summary>
            Backing field for the <see cref="P:DotNetOpenAuth.Logger.OAuth" /> property.
            </summary>
    </member>
    <member name="F:DotNetOpenAuth.Logger.infocard">
      <summary>
            Backing field for the <see cref="P:DotNetOpenAuth.Logger.InfoCard" /> property.
            </summary>
    </member>
    <member name="M:DotNetOpenAuth.Logger.Create(System.String)">
      <summary>
            Creates an additional logger on demand for a subsection of the application.
            </summary>
      <param name="name">A name that will be included in the log file.</param>
      <returns>The <see cref="T:DotNetOpenAuth.Loggers.ILog" /> instance created with the given name.</returns>
    </member>
    <member name="M:DotNetOpenAuth.Logger.CreateWithBanner(System.String)">
      <summary>
            Creates the main logger for the library, and emits an INFO message
            that is the name and version of the library.
            </summary>
      <param name="name">A name that will be included in the log file.</param>
      <returns>The <see cref="T:DotNetOpenAuth.Loggers.ILog" /> instance created with the given name.</returns>
    </member>
    <member name="M:DotNetOpenAuth.Logger.Create(System.Type)">
      <summary>
            Creates an additional logger on demand for a subsection of the application.
            </summary>
      <param name="type">A type whose full name that will be included in the log file.</param>
      <returns>The <see cref="T:DotNetOpenAuth.Loggers.ILog" /> instance created with the given type name.</returns>
    </member>
    <member name="M:DotNetOpenAuth.Logger.InitializeFacade(System.String)">
      <summary>
            Discovers the presence of Log4net.dll and other logging mechanisms
            and returns the best available logger.
            </summary>
      <param name="name">The name of the log to initialize.</param>
      <returns>The <see cref="T:DotNetOpenAuth.Loggers.ILog" /> instance of the logger to use.</returns>
    </member>
    <member name="P:DotNetOpenAuth.Logger.Library">
      <summary>
            Gets the logger for general library logging.
            </summary>
    </member>
    <member name="P:DotNetOpenAuth.Logger.Yadis">
      <summary>
            Gets the logger for service discovery and selection events.
            </summary>
    </member>
    <member name="P:DotNetOpenAuth.Logger.Messaging">
      <summary>
            Gets the logger for Messaging events.
            </summary>
    </member>
    <member name="P:DotNetOpenAuth.Logger.Channel">
      <summary>
            Gets the logger for Channel events.
            </summary>
    </member>
    <member name="P:DotNetOpenAuth.Logger.Bindings">
      <summary>
            Gets the logger for binding elements and binding-element related events on the channel.
            </summary>
    </member>
    <member name="P:DotNetOpenAuth.Logger.Signatures">
      <summary>
            Gets the logger specifically used for logging verbose text on everything about the signing process.
            </summary>
    </member>
    <member name="P:DotNetOpenAuth.Logger.Http">
      <summary>
            Gets the logger for HTTP-level events.
            </summary>
    </member>
    <member name="P:DotNetOpenAuth.Logger.OpenId">
      <summary>
            Gets the logger for high-level OpenID events.
            </summary>
    </member>
    <member name="P:DotNetOpenAuth.Logger.OAuth">
      <summary>
            Gets the logger for high-level OAuth events.
            </summary>
    </member>
    <member name="P:DotNetOpenAuth.Logger.InfoCard">
      <summary>
            Gets the logger for high-level InfoCard events.
            </summary>
    </member>
    <member name="T:DotNetOpenAuth.Loggers.ILog">
      <summary>
            The ILog interface is use by application to log messages into
            the log4net framework.
            </summary>
      <remarks>
        <para>
            Use the <see cref="T:log4net.LogManager" /> to obtain logger instances
            that implement this interface. The <see cref="M:log4net.LogManager.GetLogger(System.Reflection.Assembly,System.Type)" />
            static method is used to get logger instances.
            </para>
        <para>
            This class contains methods for logging at different levels and also
            has properties for determining if those logging levels are
            enabled in the current configuration.
            </para>
        <para>
            This interface can be implemented in different ways. This documentation
            specifies reasonable behavior that a caller can expect from the actual
            implementation, however different implementations reserve the right to
            do things differently.
            </para>
      </remarks>
      <example>Simple example of logging messages
            <code lang="C#">
            ILog log = LogManager.GetLogger("application-log");
            
            log.Info("Application Start");
            log.Debug("This is a debug message");
            
            if (log.IsDebugEnabled)
            {
            	log.Debug("This is another debug message");
            }
            </code></example>
      <seealso cref="T:log4net.LogManager" />
      <seealso cref="M:log4net.LogManager.GetLogger(System.Reflection.Assembly,System.Type)" />
      <author>Nicko Cadell</author>
      <author>Gert Driesen</author>
    </member>
    <member name="M:DotNetOpenAuth.Loggers.ILog.Debug(System.Object)">
      <overloads>Log a message object with the <see cref="F:log4net.Core.Level.Debug" /> level.</overloads>
      <summary>
            Log a message object with the <see cref="F:log4net.Core.Level.Debug" /> level.
            </summary>
      <param name="message">The message object to log.</param>
      <remarks>
        <para>
            This method first checks if this logger is <c>DEBUG</c>
            enabled by comparing the level of this logger with the 
            <see cref="F:log4net.Core.Level.Debug" /> level. If this logger is
            <c>DEBUG</c> enabled, then it converts the message object
            (passed as parameter) to a string by invoking the appropriate
            <see cref="T:log4net.ObjectRenderer.IObjectRenderer" />. It then 
            proceeds to call all the registered appenders in this logger 
            and also higher in the hierarchy depending on the value of 
            the additivity flag.
            </para>
        <para>
          <b>WARNING</b> Note that passing an <see cref="T:System.Exception" /> 
            to this method will print the name of the <see cref="T:System.Exception" /> 
            but no stack trace. To print a stack trace use the 
            <see cref="M:DotNetOpenAuth.Loggers.ILog.Debug(System.Object,System.Exception)" /> form instead.
            </para>
      </remarks>
      <seealso cref="M:DotNetOpenAuth.Loggers.ILog.Debug(System.Object,System.Exception)" />
      <seealso cref="P:DotNetOpenAuth.Loggers.ILog.IsDebugEnabled" />
    </member>
    <member name="M:DotNetOpenAuth.Loggers.ILog.Debug(System.Object,System.Exception)">
      <summary>
            Log a message object with the <see cref="F:log4net.Core.Level.Debug" /> level including
            the stack trace of the <see cref="T:System.Exception" /> passed
            as a parameter.
            </summary>
      <param name="message">The message object to log.</param>
      <param name="exception">The exception to log, including its stack trace.</param>
      <remarks>
        <para>
            See the <see cref="M:DotNetOpenAuth.Loggers.ILog.Debug(System.Object)" /> form for more detailed information.
            </para>
      </remarks>
      <seealso cref="M:DotNetOpenAuth.Loggers.ILog.Debug(System.Object)" />
      <seealso cref="P:DotNetOpenAuth.Loggers.ILog.IsDebugEnabled" />
    </member>
    <member name="M:DotNetOpenAuth.Loggers.ILog.DebugFormat(System.String,System.Object[])">
      <overloads>Log a formatted string with the <see cref="F:log4net.Core.Level.Debug" /> level.</overloads>
      <summary>
            Logs a formatted message string with the <see cref="F:log4net.Core.Level.Debug" /> level.
            </summary>
      <param name="format">A String containing zero or more format items</param>
      <param name="args">An Object array containing zero or more objects to format</param>
      <remarks>
        <para>
            The message is formatted using the <c>String.Format</c> method. See
            <see cref="M:System.String.Format(System.String,System.Object[])" /> for details of the syntax of the format string and the behavior
            of the formatting.
            </para>
        <para>
            This method does not take an <see cref="T:System.Exception" /> object to include in the
            log event. To pass an <see cref="T:System.Exception" /> use one of the <see cref="M:DotNetOpenAuth.Loggers.ILog.Debug(System.Object,System.Exception)" />
            methods instead.
            </para>
      </remarks>
      <seealso cref="M:DotNetOpenAuth.Loggers.ILog.Debug(System.Object)" />
      <seealso cref="P:DotNetOpenAuth.Loggers.ILog.IsDebugEnabled" />
    </member>
    <member name="M:DotNetOpenAuth.Loggers.ILog.DebugFormat(System.String,System.Object)">
      <summary>
            Logs a formatted message string with the <see cref="F:log4net.Core.Level.Debug" /> level.
            </summary>
      <param name="format">A String containing zero or more format items</param>
      <param name="arg0">An Object to format</param>
      <remarks>
        <para>
            The message is formatted using the <c>String.Format</c> method. See
            <see cref="M:System.String.Format(System.String,System.Object[])" /> for details of the syntax of the format string and the behavior
            of the formatting.
            </para>
        <para>
            This method does not take an <see cref="T:System.Exception" /> object to include in the
            log event. To pass an <see cref="T:System.Exception" /> use one of the <see cref="M:DotNetOpenAuth.Loggers.ILog.Debug(System.Object,System.Exception)" />
            methods instead.
            </para>
      </remarks>
      <seealso cref="M:DotNetOpenAuth.Loggers.ILog.Debug(System.Object)" />
      <seealso cref="P:DotNetOpenAuth.Loggers.ILog.IsDebugEnabled" />
    </member>
    <member name="M:DotNetOpenAuth.Loggers.ILog.DebugFormat(System.String,System.Object,System.Object)">
      <summary>
            Logs a formatted message string with the <see cref="F:log4net.Core.Level.Debug" /> level.
            </summary>
      <param name="format">A String containing zero or more format items</param>
      <param name="arg0">An Object to format</param>
      <param name="arg1">An Object to format</param>
      <remarks>
        <para>
            The message is formatted using the <c>String.Format</c> method. See
            <see cref="M:System.String.Format(System.String,System.Object[])" /> for details of the syntax of the format string and the behavior
            of the formatting.
            </para>
        <para>
            This method does not take an <see cref="T:System.Exception" /> object to include in the
            log event. To pass an <see cref="T:System.Exception" /> use one of the <see cref="M:DotNetOpenAuth.Loggers.ILog.Debug(System.Object,System.Exception)" />
            methods instead.
            </para>
      </remarks>
      <seealso cref="M:DotNetOpenAuth.Loggers.ILog.Debug(System.Object)" />
      <seealso cref="P:DotNetOpenAuth.Loggers.ILog.IsDebugEnabled" />
    </member>
    <member name="M:DotNetOpenAuth.Loggers.ILog.DebugFormat(System.String,System.Object,System.Object,System.Object)">
      <summary>
            Logs a formatted message string with the <see cref="F:log4net.Core.Level.Debug" /> level.
            </summary>
      <param name="format">A String containing zero or more format items</param>
      <param name="arg0">An Object to format</param>
      <param name="arg1">An Object to format</param>
      <param name="arg2">An Object to format</param>
      <remarks>
        <para>
            The message is formatted using the <c>String.Format</c> method. See
            <see cref="M:System.String.Format(System.String,System.Object[])" /> for details of the syntax of the format string and the behavior
            of the formatting.
            </para>
        <para>
            This method does not take an <see cref="T:System.Exception" /> object to include in the
            log event. To pass an <see cref="T:System.Exception" /> use one of the <see cref="M:DotNetOpenAuth.Loggers.ILog.Debug(System.Object,System.Exception)" />
            methods instead.
            </para>
      </remarks>
      <seealso cref="M:DotNetOpenAuth.Loggers.ILog.Debug(System.Object)" />
      <seealso cref="P:DotNetOpenAuth.Loggers.ILog.IsDebugEnabled" />
    </member>
    <member name="M:DotNetOpenAuth.Loggers.ILog.Info(System.Object)">
      <overloads>Log a message object with the <see cref="F:log4net.Core.Level.Info" /> level.</overloads>
      <summary>
            Logs a message object with the <see cref="F:log4net.Core.Level.Info" /> level.
            </summary>
      <remarks>
        <para>
            This method first checks if this logger is <c>INFO</c>
            enabled by comparing the level of this logger with the 
            <see cref="F:log4net.Core.Level.Info" /> level. If this logger is
            <c>INFO</c> enabled, then it converts the message object
            (passed as parameter) to a string by invoking the appropriate
            <see cref="T:log4net.ObjectRenderer.IObjectRenderer" />. It then 
            proceeds to call all the registered appenders in this logger 
            and also higher in the hierarchy depending on the value of the 
            additivity flag.
            </para>
        <para>
          <b>WARNING</b> Note that passing an <see cref="T:System.Exception" /> 
            to this method will print the name of the <see cref="T:System.Exception" /> 
            but no stack trace. To print a stack trace use the 
            <see cref="M:DotNetOpenAuth.Loggers.ILog.Info(System.Object,System.Exception)" /> form instead.
            </para>
      </remarks>
      <param name="message">The message object to log.</param>
      <seealso cref="M:DotNetOpenAuth.Loggers.ILog.Info(System.Object,System.Exception)" />
      <seealso cref="P:DotNetOpenAuth.Loggers.ILog.IsInfoEnabled" />
    </member>
    <member name="M:DotNetOpenAuth.Loggers.ILog.Info(System.Object,System.Exception)">
      <summary>
            Logs a message object with the <c>INFO</c> level including
            the stack trace of the <see cref="T:System.Exception" /> passed
            as a parameter.
            </summary>
      <param name="message">The message object to log.</param>
      <param name="exception">The exception to log, including its stack trace.</param>
      <remarks>
        <para>
            See the <see cref="M:DotNetOpenAuth.Loggers.ILog.Info(System.Object)" /> form for more detailed information.
            </para>
      </remarks>
      <seealso cref="M:DotNetOpenAuth.Loggers.ILog.Info(System.Object)" />
      <seealso cref="P:DotNetOpenAuth.Loggers.ILog.IsInfoEnabled" />
    </member>
    <member name="M:DotNetOpenAuth.Loggers.ILog.InfoFormat(System.String,System.Object[])">
      <overloads>Log a formatted message string with the <see cref="F:log4net.Core.Level.Info" /> level.</overloads>
      <summary>
            Logs a formatted message string with the <see cref="F:log4net.Core.Level.Info" /> level.
            </summary>
      <param name="format">A String containing zero or more format items</param>
      <param name="args">An Object array containing zero or more objects to format</param>
      <remarks>
        <para>
            The message is formatted using the <c>String.Format</c> method. See
            <see cref="M:System.String.Format(System.String,System.Object[])" /> for details of the syntax of the format string and the behavior
            of the formatting.
            </para>
        <para>
            This method does not take an <see cref="T:System.Exception" /> object to include in the
            log event. To pass an <see cref="T:System.Exception" /> use one of the <see cref="M:DotNetOpenAuth.Loggers.ILog.Info(System.Object)" />
            methods instead.
            </para>
      </remarks>
      <seealso cref="M:DotNetOpenAuth.Loggers.ILog.Info(System.Object,System.Exception)" />
      <seealso cref="P:DotNetOpenAuth.Loggers.ILog.IsInfoEnabled" />
    </member>
    <member name="M:DotNetOpenAuth.Loggers.ILog.InfoFormat(System.String,System.Object)">
      <summary>
            Logs a formatted message string with the <see cref="F:log4net.Core.Level.Info" /> level.
            </summary>
      <param name="format">A String containing zero or more format items</param>
      <param name="arg0">An Object to format</param>
      <remarks>
        <para>
            The message is formatted using the <c>String.Format</c> method. See
            <see cref="M:System.String.Format(System.String,System.Object[])" /> for details of the syntax of the format string and the behavior
            of the formatting.
            </para>
        <para>
            This method does not take an <see cref="T:System.Exception" /> object to include in the
            log event. To pass an <see cref="T:System.Exception" /> use one of the <see cref="M:DotNetOpenAuth.Loggers.ILog.Info(System.Object,System.Exception)" />
            methods instead.
            </para>
      </remarks>
      <seealso cref="M:DotNetOpenAuth.Loggers.ILog.Info(System.Object)" />
      <seealso cref="P:DotNetOpenAuth.Loggers.ILog.IsInfoEnabled" />
    </member>
    <member name="M:DotNetOpenAuth.Loggers.ILog.InfoFormat(System.String,System.Object,System.Object)">
      <summary>
            Logs a formatted message string with the <see cref="F:log4net.Core.Level.Info" /> level.
            </summary>
      <param name="format">A String containing zero or more format items</param>
      <param name="arg0">An Object to format</param>
      <param name="arg1">An Object to format</param>
      <remarks>
        <para>
            The message is formatted using the <c>String.Format</c> method. See
            <see cref="M:System.String.Format(System.String,System.Object[])" /> for details of the syntax of the format string and the behavior
            of the formatting.
            </para>
        <para>
            This method does not take an <see cref="T:System.Exception" /> object to include in the
            log event. To pass an <see cref="T:System.Exception" /> use one of the <see cref="M:DotNetOpenAuth.Loggers.ILog.Info(System.Object,System.Exception)" />
            methods instead.
            </para>
      </remarks>
      <seealso cref="M:DotNetOpenAuth.Loggers.ILog.Info(System.Object)" />
      <seealso cref="P:DotNetOpenAuth.Loggers.ILog.IsInfoEnabled" />
    </member>
    <member name="M:DotNetOpenAuth.Loggers.ILog.InfoFormat(System.String,System.Object,System.Object,System.Object)">
      <summary>
            Logs a formatted message string with the <see cref="F:log4net.Core.Level.Info" /> level.
            </summary>
      <param name="format">A String containing zero or more format items</param>
      <param name="arg0">An Object to format</param>
      <param name="arg1">An Object to format</param>
      <param name="arg2">An Object to format</param>
      <remarks>
        <para>
            The message is formatted using the <c>String.Format</c> method. See
            <see cref="M:System.String.Format(System.String,System.Object[])" /> for details of the syntax of the format string and the behavior
            of the formatting.
            </para>
        <para>
            This method does not take an <see cref="T:System.Exception" /> object to include in the
            log event. To pass an <see cref="T:System.Exception" /> use one of the <see cref="M:DotNetOpenAuth.Loggers.ILog.Info(System.Object,System.Exception)" />
            methods instead.
            </para>
      </remarks>
      <seealso cref="M:DotNetOpenAuth.Loggers.ILog.Info(System.Object)" />
      <seealso cref="P:DotNetOpenAuth.Loggers.ILog.IsInfoEnabled" />
    </member>
    <member name="M:DotNetOpenAuth.Loggers.ILog.Warn(System.Object)">
      <overloads>Log a message object with the <see cref="F:log4net.Core.Level.Warn" /> level.</overloads>
      <summary>
            Log a message object with the <see cref="F:log4net.Core.Level.Warn" /> level.
            </summary>
      <remarks>
        <para>
            This method first checks if this logger is <c>WARN</c>
            enabled by comparing the level of this logger with the 
            <see cref="F:log4net.Core.Level.Warn" /> level. If this logger is
            <c>WARN</c> enabled, then it converts the message object
            (passed as parameter) to a string by invoking the appropriate
            <see cref="T:log4net.ObjectRenderer.IObjectRenderer" />. It then 
            proceeds to call all the registered appenders in this logger 
            and also higher in the hierarchy depending on the value of the 
            additivity flag.
            </para>
        <para>
          <b>WARNING</b> Note that passing an <see cref="T:System.Exception" /> 
            to this method will print the name of the <see cref="T:System.Exception" /> 
            but no stack trace. To print a stack trace use the 
            <see cref="M:DotNetOpenAuth.Loggers.ILog.Warn(System.Object,System.Exception)" /> form instead.
            </para>
      </remarks>
      <param name="message">The message object to log.</param>
      <seealso cref="M:DotNetOpenAuth.Loggers.ILog.Warn(System.Object,System.Exception)" />
      <seealso cref="P:DotNetOpenAuth.Loggers.ILog.IsWarnEnabled" />
    </member>
    <member name="M:DotNetOpenAuth.Loggers.ILog.Warn(System.Object,System.Exception)">
      <summary>
            Log a message object with the <see cref="F:log4net.Core.Level.Warn" /> level including
            the stack trace of the <see cref="T:System.Exception" /> passed
            as a parameter.
            </summary>
      <param name="message">The message object to log.</param>
      <param name="exception">The exception to log, including its stack trace.</param>
      <remarks>
        <para>
            See the <see cref="M:DotNetOpenAuth.Loggers.ILog.Warn(System.Object)" /> form for more detailed information.
            </para>
      </remarks>
      <seealso cref="M:DotNetOpenAuth.Loggers.ILog.Warn(System.Object)" />
      <seealso cref="P:DotNetOpenAuth.Loggers.ILog.IsWarnEnabled" />
    </member>
    <member name="M:DotNetOpenAuth.Loggers.ILog.WarnFormat(System.String,System.Object[])">
      <overloads>Log a formatted message string with the <see cref="F:log4net.Core.Level.Warn" /> level.</overloads>
      <summary>
            Logs a formatted message string with the <see cref="F:log4net.Core.Level.Warn" /> level.
            </summary>
      <param name="format">A String containing zero or more format items</param>
      <param name="args">An Object array containing zero or more objects to format</param>
      <remarks>
        <para>
            The message is formatted using the <c>String.Format</c> method. See
            <see cref="M:System.String.Format(System.String,System.Object[])" /> for details of the syntax of the format string and the behavior
            of the formatting.
            </para>
        <para>
            This method does not take an <see cref="T:System.Exception" /> object to include in the
            log event. To pass an <see cref="T:System.Exception" /> use one of the <see cref="M:DotNetOpenAuth.Loggers.ILog.Warn(System.Object)" />
            methods instead.
            </para>
      </remarks>
      <seealso cref="M:DotNetOpenAuth.Loggers.ILog.Warn(System.Object,System.Exception)" />
      <seealso cref="P:DotNetOpenAuth.Loggers.ILog.IsWarnEnabled" />
    </member>
    <member name="M:DotNetOpenAuth.Loggers.ILog.WarnFormat(System.String,System.Object)">
      <summary>
            Logs a formatted message string with the <see cref="F:log4net.Core.Level.Warn" /> level.
            </summary>
      <param name="format">A String containing zero or more format items</param>
      <param name="arg0">An Object to format</param>
      <remarks>
        <para>
            The message is formatted using the <c>String.Format</c> method. See
            <see cref="M:System.String.Format(System.String,System.Object[])" /> for details of the syntax of the format string and the behavior
            of the formatting.
            </para>
        <para>
            This method does not take an <see cref="T:System.Exception" /> object to include in the
            log event. To pass an <see cref="T:System.Exception" /> use one of the <see cref="M:DotNetOpenAuth.Loggers.ILog.Warn(System.Object,System.Exception)" />
            methods instead.
            </para>
      </remarks>
      <seealso cref="M:DotNetOpenAuth.Loggers.ILog.Warn(System.Object)" />
      <seealso cref="P:DotNetOpenAuth.Loggers.ILog.IsWarnEnabled" />
    </member>
    <member name="M:DotNetOpenAuth.Loggers.ILog.WarnFormat(System.String,System.Object,System.Object)">
      <summary>
            Logs a formatted message string with the <see cref="F:log4net.Core.Level.Warn" /> level.
            </summary>
      <param name="format">A String containing zero or more format items</param>
      <param name="arg0">An Object to format</param>
      <param name="arg1">An Object to format</param>
      <remarks>
        <para>
            The message is formatted using the <c>String.Format</c> method. See
            <see cref="M:System.String.Format(System.String,System.Object[])" /> for details of the syntax of the format string and the behavior
            of the formatting.
            </para>
        <para>
            This method does not take an <see cref="T:System.Exception" /> object to include in the
            log event. To pass an <see cref="T:System.Exception" /> use one of the <see cref="M:DotNetOpenAuth.Loggers.ILog.Warn(System.Object,System.Exception)" />
            methods instead.
            </para>
      </remarks>
      <seealso cref="M:DotNetOpenAuth.Loggers.ILog.Warn(System.Object)" />
      <seealso cref="P:DotNetOpenAuth.Loggers.ILog.IsWarnEnabled" />
    </member>
    <member name="M:DotNetOpenAuth.Loggers.ILog.WarnFormat(System.String,System.Object,System.Object,System.Object)">
      <summary>
            Logs a formatted message string with the <see cref="F:log4net.Core.Level.Warn" /> level.
            </summary>
      <param name="format">A String containing zero or more format items</param>
      <param name="arg0">An Object to format</param>
      <param name="arg1">An Object to format</param>
      <param name="arg2">An Object to format</param>
      <remarks>
        <para>
            The message is formatted using the <c>String.Format</c> method. See
            <see cref="M:System.String.Format(System.String,System.Object[])" /> for details of the syntax of the format string and the behavior
            of the formatting.
            </para>
        <para>
            This method does not take an <see cref="T:System.Exception" /> object to include in the
            log event. To pass an <see cref="T:System.Exception" /> use one of the <see cref="M:DotNetOpenAuth.Loggers.ILog.Warn(System.Object,System.Exception)" />
            methods instead.
            </para>
      </remarks>
      <seealso cref="M:DotNetOpenAuth.Loggers.ILog.Warn(System.Object)" />
      <seealso cref="P:DotNetOpenAuth.Loggers.ILog.IsWarnEnabled" />
    </member>
    <member name="M:DotNetOpenAuth.Loggers.ILog.Error(System.Object)">
      <overloads>Log a message object with the <see cref="F:log4net.Core.Level.Error" /> level.</overloads>
      <summary>
            Logs a message object with the <see cref="F:log4net.Core.Level.Error" /> level.
            </summary>
      <param name="message">The message object to log.</param>
      <remarks>
        <para>
            This method first checks if this logger is <c>ERROR</c>
            enabled by comparing the level of this logger with the 
            <see cref="F:log4net.Core.Level.Error" /> level. If this logger is
            <c>ERROR</c> enabled, then it converts the message object
            (passed as parameter) to a string by invoking the appropriate
            <see cref="T:log4net.ObjectRenderer.IObjectRenderer" />. It then 
            proceeds to call all the registered appenders in this logger 
            and also higher in the hierarchy depending on the value of the 
            additivity flag.
            </para>
        <para>
          <b>WARNING</b> Note that passing an <see cref="T:System.Exception" /> 
            to this method will print the name of the <see cref="T:System.Exception" /> 
            but no stack trace. To print a stack trace use the 
            <see cref="M:DotNetOpenAuth.Loggers.ILog.Error(System.Object,System.Exception)" /> form instead.
            </para>
      </remarks>
      <seealso cref="M:DotNetOpenAuth.Loggers.ILog.Error(System.Object,System.Exception)" />
      <seealso cref="P:DotNetOpenAuth.Loggers.ILog.IsErrorEnabled" />
    </member>
    <member name="M:DotNetOpenAuth.Loggers.ILog.Error(System.Object,System.Exception)">
      <summary>
            Log a message object with the <see cref="F:log4net.Core.Level.Error" /> level including
            the stack trace of the <see cref="T:System.Exception" /> passed
            as a parameter.
            </summary>
      <param name="message">The message object to log.</param>
      <param name="exception">The exception to log, including its stack trace.</param>
      <remarks>
        <para>
            See the <see cref="M:DotNetOpenAuth.Loggers.ILog.Error(System.Object)" /> form for more detailed information.
            </para>
      </remarks>
      <seealso cref="M:DotNetOpenAuth.Loggers.ILog.Error(System.Object)" />
      <seealso cref="P:DotNetOpenAuth.Loggers.ILog.IsErrorEnabled" />
    </member>
    <member name="M:DotNetOpenAuth.Loggers.ILog.ErrorFormat(System.String,System.Object[])">
      <overloads>Log a formatted message string with the <see cref="F:log4net.Core.Level.Error" /> level.</overloads>
      <summary>
            Logs a formatted message string with the <see cref="F:log4net.Core.Level.Error" /> level.
            </summary>
      <param name="format">A String containing zero or more format items</param>
      <param name="args">An Object array containing zero or more objects to format</param>
      <remarks>
        <para>
            The message is formatted using the <c>String.Format</c> method. See
            <see cref="M:System.String.Format(System.String,System.Object[])" /> for details of the syntax of the format string and the behavior
            of the formatting.
            </para>
        <para>
            This method does not take an <see cref="T:System.Exception" /> object to include in the
            log event. To pass an <see cref="T:System.Exception" /> use one of the <see cref="M:DotNetOpenAuth.Loggers.ILog.Error(System.Object)" />
            methods instead.
            </para>
      </remarks>
      <seealso cref="M:DotNetOpenAuth.Loggers.ILog.Error(System.Object,System.Exception)" />
      <seealso cref="P:DotNetOpenAuth.Loggers.ILog.IsErrorEnabled" />
    </member>
    <member name="M:DotNetOpenAuth.Loggers.ILog.ErrorFormat(System.String,System.Object)">
      <summary>
            Logs a formatted message string with the <see cref="F:log4net.Core.Level.Error" /> level.
            </summary>
      <param name="format">A String containing zero or more format items</param>
      <param name="arg0">An Object to format</param>
      <remarks>
        <para>
            The message is formatted using the <c>String.Format</c> method. See
            <see cref="M:System.String.Format(System.String,System.Object[])" /> for details of the syntax of the format string and the behavior
            of the formatting.
            </para>
        <para>
            This method does not take an <see cref="T:System.Exception" /> object to include in the
            log event. To pass an <see cref="T:System.Exception" /> use one of the <see cref="M:DotNetOpenAuth.Loggers.ILog.Error(System.Object,System.Exception)" />
            methods instead.
            </para>
      </remarks>
      <seealso cref="M:DotNetOpenAuth.Loggers.ILog.Error(System.Object)" />
      <seealso cref="P:DotNetOpenAuth.Loggers.ILog.IsErrorEnabled" />
    </member>
    <member name="M:DotNetOpenAuth.Loggers.ILog.ErrorFormat(System.String,System.Object,System.Object)">
      <summary>
            Logs a formatted message string with the <see cref="F:log4net.Core.Level.Error" /> level.
            </summary>
      <param name="format">A String containing zero or more format items</param>
      <param name="arg0">An Object to format</param>
      <param name="arg1">An Object to format</param>
      <remarks>
        <para>
            The message is formatted using the <c>String.Format</c> method. See
            <see cref="M:System.String.Format(System.String,System.Object[])" /> for details of the syntax of the format string and the behavior
            of the formatting.
            </para>
        <para>
            This method does not take an <see cref="T:System.Exception" /> object to include in the
            log event. To pass an <see cref="T:System.Exception" /> use one of the <see cref="M:DotNetOpenAuth.Loggers.ILog.Error(System.Object,System.Exception)" />
            methods instead.
            </para>
      </remarks>
      <seealso cref="M:DotNetOpenAuth.Loggers.ILog.Error(System.Object)" />
      <seealso cref="P:DotNetOpenAuth.Loggers.ILog.IsErrorEnabled" />
    </member>
    <member name="M:DotNetOpenAuth.Loggers.ILog.ErrorFormat(System.String,System.Object,System.Object,System.Object)">
      <summary>
            Logs a formatted message string with the <see cref="F:log4net.Core.Level.Error" /> level.
            </summary>
      <param name="format">A String containing zero or more format items</param>
      <param name="arg0">An Object to format</param>
      <param name="arg1">An Object to format</param>
      <param name="arg2">An Object to format</param>
      <remarks>
        <para>
            The message is formatted using the <c>String.Format</c> method. See
            <see cref="M:System.String.Format(System.String,System.Object[])" /> for details of the syntax of the format string and the behavior
            of the formatting.
            </para>
        <para>
            This method does not take an <see cref="T:System.Exception" /> object to include in the
            log event. To pass an <see cref="T:System.Exception" /> use one of the <see cref="M:DotNetOpenAuth.Loggers.ILog.Error(System.Object,System.Exception)" />
            methods instead.
            </para>
      </remarks>
      <seealso cref="M:DotNetOpenAuth.Loggers.ILog.Error(System.Object)" />
      <seealso cref="P:DotNetOpenAuth.Loggers.ILog.IsErrorEnabled" />
    </member>
    <member name="M:DotNetOpenAuth.Loggers.ILog.Fatal(System.Object)">
      <overloads>Log a message object with the <see cref="F:log4net.Core.Level.Fatal" /> level.</overloads>
      <summary>
            Log a message object with the <see cref="F:log4net.Core.Level.Fatal" /> level.
            </summary>
      <remarks>
        <para>
            This method first checks if this logger is <c>FATAL</c>
            enabled by comparing the level of this logger with the 
            <see cref="F:log4net.Core.Level.Fatal" /> level. If this logger is
            <c>FATAL</c> enabled, then it converts the message object
            (passed as parameter) to a string by invoking the appropriate
            <see cref="T:log4net.ObjectRenderer.IObjectRenderer" />. It then 
            proceeds to call all the registered appenders in this logger 
            and also higher in the hierarchy depending on the value of the 
            additivity flag.
            </para>
        <para>
          <b>WARNING</b> Note that passing an <see cref="T:System.Exception" /> 
            to this method will print the name of the <see cref="T:System.Exception" /> 
            but no stack trace. To print a stack trace use the 
            <see cref="M:DotNetOpenAuth.Loggers.ILog.Fatal(System.Object,System.Exception)" /> form instead.
            </para>
      </remarks>
      <param name="message">The message object to log.</param>
      <seealso cref="M:DotNetOpenAuth.Loggers.ILog.Fatal(System.Object,System.Exception)" />
      <seealso cref="P:DotNetOpenAuth.Loggers.ILog.IsFatalEnabled" />
    </member>
    <member name="M:DotNetOpenAuth.Loggers.ILog.Fatal(System.Object,System.Exception)">
      <summary>
            Log a message object with the <see cref="F:log4net.Core.Level.Fatal" /> level including
            the stack trace of the <see cref="T:System.Exception" /> passed
            as a parameter.
            </summary>
      <param name="message">The message object to log.</param>
      <param name="exception">The exception to log, including its stack trace.</param>
      <remarks>
        <para>
            See the <see cref="M:DotNetOpenAuth.Loggers.ILog.Fatal(System.Object)" /> form for more detailed information.
            </para>
      </remarks>
      <seealso cref="M:DotNetOpenAuth.Loggers.ILog.Fatal(System.Object)" />
      <seealso cref="P:DotNetOpenAuth.Loggers.ILog.IsFatalEnabled" />
    </member>
    <member name="M:DotNetOpenAuth.Loggers.ILog.FatalFormat(System.String,System.Object[])">
      <overloads>Log a formatted message string with the <see cref="F:log4net.Core.Level.Fatal" /> level.</overloads>
      <summary>
            Logs a formatted message string with the <see cref="F:log4net.Core.Level.Fatal" /> level.
            </summary>
      <param name="format">A String containing zero or more format items</param>
      <param name="args">An Object array containing zero or more objects to format</param>
      <remarks>
        <para>
            The message is formatted using the <c>String.Format</c> method. See
            <see cref="M:System.String.Format(System.String,System.Object[])" /> for details of the syntax of the format string and the behavior
            of the formatting.
            </para>
        <para>
            This method does not take an <see cref="T:System.Exception" /> object to include in the
            log event. To pass an <see cref="T:System.Exception" /> use one of the <see cref="M:DotNetOpenAuth.Loggers.ILog.Fatal(System.Object)" />
            methods instead.
            </para>
      </remarks>
      <seealso cref="M:DotNetOpenAuth.Loggers.ILog.Fatal(System.Object,System.Exception)" />
      <seealso cref="P:DotNetOpenAuth.Loggers.ILog.IsFatalEnabled" />
    </member>
    <member name="M:DotNetOpenAuth.Loggers.ILog.FatalFormat(System.String,System.Object)">
      <summary>
            Logs a formatted message string with the <see cref="F:log4net.Core.Level.Fatal" /> level.
            </summary>
      <param name="format">A String containing zero or more format items</param>
      <param name="arg0">An Object to format</param>
      <remarks>
        <para>
            The message is formatted using the <c>String.Format</c> method. See
            <see cref="M:System.String.Format(System.String,System.Object[])" /> for details of the syntax of the format string and the behavior
            of the formatting.
            </para>
        <para>
            This method does not take an <see cref="T:System.Exception" /> object to include in the
            log event. To pass an <see cref="T:System.Exception" /> use one of the <see cref="M:DotNetOpenAuth.Loggers.ILog.Fatal(System.Object,System.Exception)" />
            methods instead.
            </para>
      </remarks>
      <seealso cref="M:DotNetOpenAuth.Loggers.ILog.Fatal(System.Object)" />
      <seealso cref="P:DotNetOpenAuth.Loggers.ILog.IsFatalEnabled" />
    </member>
    <member name="M:DotNetOpenAuth.Loggers.ILog.FatalFormat(System.String,System.Object,System.Object)">
      <summary>
            Logs a formatted message string with the <see cref="F:log4net.Core.Level.Fatal" /> level.
            </summary>
      <param name="format">A String containing zero or more format items</param>
      <param name="arg0">An Object to format</param>
      <param name="arg1">An Object to format</param>
      <remarks>
        <para>
            The message is formatted using the <c>String.Format</c> method. See
            <see cref="M:System.String.Format(System.String,System.Object[])" /> for details of the syntax of the format string and the behavior
            of the formatting.
            </para>
        <para>
            This method does not take an <see cref="T:System.Exception" /> object to include in the
            log event. To pass an <see cref="T:System.Exception" /> use one of the <see cref="M:DotNetOpenAuth.Loggers.ILog.Fatal(System.Object,System.Exception)" />
            methods instead.
            </para>
      </remarks>
      <seealso cref="M:DotNetOpenAuth.Loggers.ILog.Fatal(System.Object)" />
      <seealso cref="P:DotNetOpenAuth.Loggers.ILog.IsFatalEnabled" />
    </member>
    <member name="M:DotNetOpenAuth.Loggers.ILog.FatalFormat(System.String,System.Object,System.Object,System.Object)">
      <summary>
            Logs a formatted message string with the <see cref="F:log4net.Core.Level.Fatal" /> level.
            </summary>
      <param name="format">A String containing zero or more format items</param>
      <param name="arg0">An Object to format</param>
      <param name="arg1">An Object to format</param>
      <param name="arg2">An Object to format</param>
      <remarks>
        <para>
            The message is formatted using the <c>String.Format</c> method. See
            <see cref="M:System.String.Format(System.String,System.Object[])" /> for details of the syntax of the format string and the behavior
            of the formatting.
            </para>
        <para>
            This method does not take an <see cref="T:System.Exception" /> object to include in the
            log event. To pass an <see cref="T:System.Exception" /> use one of the <see cref="M:DotNetOpenAuth.Loggers.ILog.Fatal(System.Object,System.Exception)" />
            methods instead.
            </para>
      </remarks>
      <seealso cref="M:DotNetOpenAuth.Loggers.ILog.Fatal(System.Object)" />
      <seealso cref="P:DotNetOpenAuth.Loggers.ILog.IsFatalEnabled" />
    </member>
    <member name="P:DotNetOpenAuth.Loggers.ILog.IsDebugEnabled">
      <summary>
            Checks if this logger is enabled for the <see cref="F:log4net.Core.Level.Debug" /> level.
            </summary>
      <value>
        <c>true</c> if this logger is enabled for <see cref="F:log4net.Core.Level.Debug" /> events, <c>false</c> otherwise.
            </value>
      <remarks>
        <para>
            This function is intended to lessen the computational cost of
            disabled log debug statements.
            </para>
        <para> For some ILog interface <c>log</c>, when you write:</para>
        <code lang="C#">
            log.Debug("This is entry number: " + i );
            </code>
        <para>
            You incur the cost constructing the message, string construction and concatenation in
            this case, regardless of whether the message is logged or not.
            </para>
        <para>
            If you are worried about speed (who isn't), then you should write:
            </para>
        <code lang="C#">
            if (log.IsDebugEnabled)
            { 
                log.Debug("This is entry number: " + i );
            }
            </code>
        <para>
            This way you will not incur the cost of parameter
            construction if debugging is disabled for <c>log</c>. On
            the other hand, if the <c>log</c> is debug enabled, you
            will incur the cost of evaluating whether the logger is debug
            enabled twice. Once in <see cref="P:DotNetOpenAuth.Loggers.ILog.IsDebugEnabled" /> and once in
            the <see cref="M:DotNetOpenAuth.Loggers.ILog.Debug(System.Object)" />.  This is an insignificant overhead
            since evaluating a logger takes about 1% of the time it
            takes to actually log. This is the preferred style of logging.
            </para>
        <para>Alternatively if your logger is available statically then the is debug
            enabled state can be stored in a static variable like this:
            </para>
        <code lang="C#">
            private static readonly bool isDebugEnabled = log.IsDebugEnabled;
            </code>
        <para>
            Then when you come to log you can write:
            </para>
        <code lang="C#">
            if (isDebugEnabled)
            { 
                log.Debug("This is entry number: " + i );
            }
            </code>
        <para>
            This way the debug enabled state is only queried once
            when the class is loaded. Using a <c>private static readonly</c>
            variable is the most efficient because it is a run time constant
            and can be heavily optimized by the JIT compiler.
            </para>
        <para>
            Of course if you use a static readonly variable to
            hold the enabled state of the logger then you cannot
            change the enabled state at runtime to vary the logging
            that is produced. You have to decide if you need absolute
            speed or runtime flexibility.
            </para>
      </remarks>
      <seealso cref="M:DotNetOpenAuth.Loggers.ILog.Debug(System.Object)" />
    </member>
    <member name="P:DotNetOpenAuth.Loggers.ILog.IsInfoEnabled">
      <summary>
            Checks if this logger is enabled for the <see cref="F:log4net.Core.Level.Info" /> level.
            </summary>
      <value>
        <c>true</c> if this logger is enabled for <see cref="F:log4net.Core.Level.Info" /> events, <c>false</c> otherwise.
            </value>
      <remarks>
            For more information see <see cref="P:DotNetOpenAuth.Loggers.ILog.IsDebugEnabled" />.
            </remarks>
      <seealso cref="M:DotNetOpenAuth.Loggers.ILog.Info(System.Object)" />
      <seealso cref="P:DotNetOpenAuth.Loggers.ILog.IsDebugEnabled" />
    </member>
    <member name="P:DotNetOpenAuth.Loggers.ILog.IsWarnEnabled">
      <summary>
            Checks if this logger is enabled for the <see cref="F:log4net.Core.Level.Warn" /> level.
            </summary>
      <value>
        <c>true</c> if this logger is enabled for <see cref="F:log4net.Core.Level.Warn" /> events, <c>false</c> otherwise.
            </value>
      <remarks>
            For more information see <see cref="P:DotNetOpenAuth.Loggers.ILog.IsDebugEnabled" />.
            </remarks>
      <seealso cref="M:DotNetOpenAuth.Loggers.ILog.Warn(System.Object)" />
      <seealso cref="P:DotNetOpenAuth.Loggers.ILog.IsDebugEnabled" />
    </member>
    <member name="P:DotNetOpenAuth.Loggers.ILog.IsErrorEnabled">
      <summary>
            Checks if this logger is enabled for the <see cref="F:log4net.Core.Level.Error" /> level.
            </summary>
      <value>
        <c>true</c> if this logger is enabled for <see cref="F:log4net.Core.Level.Error" /> events, <c>false</c> otherwise.
            </value>
      <remarks>
            For more information see <see cref="P:DotNetOpenAuth.Loggers.ILog.IsDebugEnabled" />.
            </remarks>
      <seealso cref="M:DotNetOpenAuth.Loggers.ILog.Error(System.Object)" />
      <seealso cref="P:DotNetOpenAuth.Loggers.ILog.IsDebugEnabled" />
    </member>
    <member name="P:DotNetOpenAuth.Loggers.ILog.IsFatalEnabled">
      <summary>
            Checks if this logger is enabled for the <see cref="F:log4net.Core.Level.Fatal" /> level.
            </summary>
      <value>
        <c>true</c> if this logger is enabled for <see cref="F:log4net.Core.Level.Fatal" /> events, <c>false</c> otherwise.
            </value>
      <remarks>
            For more information see <see cref="P:DotNetOpenAuth.Loggers.ILog.IsDebugEnabled" />.
            </remarks>
      <seealso cref="M:DotNetOpenAuth.Loggers.ILog.Fatal(System.Object)" />
      <seealso cref="P:DotNetOpenAuth.Loggers.ILog.IsDebugEnabled" />
    </member>
    <member name="M:DotNetOpenAuth.Loggers.Log4NetLogger.Initialize(System.String)">
      <summary>
            Returns a new log4net logger if it exists, or returns null if the assembly cannot be found.
            </summary>
      <returns>The created <see cref="T:DotNetOpenAuth.Loggers.ILog" /> instance.</returns>
    </member>
    <member name="M:DotNetOpenAuth.Loggers.Log4NetLogger.CreateLogger(System.String)">
      <summary>
            Creates the log4net.LogManager.  Call ONLY after log4net.dll is known to be present.
            </summary>
      <returns>The created <see cref="T:DotNetOpenAuth.Loggers.ILog" /> instance.</returns>
    </member>
    <member name="M:DotNetOpenAuth.Loggers.NoOpLogger.Initialize">
      <summary>
            Returns a new logger that does nothing when invoked.
            </summary>
      <returns>The created <see cref="T:DotNetOpenAuth.Loggers.ILog" /> instance.</returns>
    </member>
    <member name="M:DotNetOpenAuth.Loggers.TraceLogger.Debug(System.Object)">
      <summary>
            See <see cref="T:DotNetOpenAuth.Loggers.ILog" />.
            </summary>
    </member>
    <member name="M:DotNetOpenAuth.Loggers.TraceLogger.Debug(System.Object,System.Exception)">
      <summary>
            See <see cref="T:DotNetOpenAuth.Loggers.ILog" />.
            </summary>
    </member>
    <member name="M:DotNetOpenAuth.Loggers.TraceLogger.DebugFormat(System.String,System.Object[])">
      <summary>
            See <see cref="T:DotNetOpenAuth.Loggers.ILog" />.
            </summary>
    </member>
    <member name="M:DotNetOpenAuth.Loggers.TraceLogger.DebugFormat(System.String,System.Object)">
      <summary>
            See <see cref="T:DotNetOpenAuth.Loggers.ILog" />.
            </summary>
    </member>
    <member name="M:DotNetOpenAuth.Loggers.TraceLogger.DebugFormat(System.String,System.Object,System.Object)">
      <summary>
            See <see cref="T:DotNetOpenAuth.Loggers.ILog" />.
            </summary>
    </member>
    <member name="M:DotNetOpenAuth.Loggers.TraceLogger.DebugFormat(System.String,System.Object,System.Object,System.Object)">
      <summary>
            See <see cref="T:DotNetOpenAuth.Loggers.ILog" />.
            </summary>
    </member>
    <member name="M:DotNetOpenAuth.Loggers.TraceLogger.Info(System.Object)">
      <summary>
            See <see cref="T:DotNetOpenAuth.Loggers.ILog" />.
            </summary>
    </member>
    <member name="M:DotNetOpenAuth.Loggers.TraceLogger.Info(System.Object,System.Exception)">
      <summary>
            See <see cref="T:DotNetOpenAuth.Loggers.ILog" />.
            </summary>
    </member>
    <member name="M:DotNetOpenAuth.Loggers.TraceLogger.InfoFormat(System.String,System.Object[])">
      <summary>
            See <see cref="T:DotNetOpenAuth.Loggers.ILog" />.
            </summary>
    </member>
    <member name="M:DotNetOpenAuth.Loggers.TraceLogger.InfoFormat(System.String,System.Object)">
      <summary>
            See <see cref="T:DotNetOpenAuth.Loggers.ILog" />.
            </summary>
    </member>
    <member name="M:DotNetOpenAuth.Loggers.TraceLogger.InfoFormat(System.String,System.Object,System.Object)">
      <summary>
            See <see cref="T:DotNetOpenAuth.Loggers.ILog" />.
            </summary>
    </member>
    <member name="M:DotNetOpenAuth.Loggers.TraceLogger.InfoFormat(System.String,System.Object,System.Object,System.Object)">
      <summary>
            See <see cref="T:DotNetOpenAuth.Loggers.ILog" />.
            </summary>
    </member>
    <member name="M:DotNetOpenAuth.Loggers.TraceLogger.Warn(System.Object)">
      <summary>
            See <see cref="T:DotNetOpenAuth.Loggers.ILog" />.
            </summary>
    </member>
    <member name="M:DotNetOpenAuth.Loggers.TraceLogger.Warn(System.Object,System.Exception)">
      <summary>
            See <see cref="T:DotNetOpenAuth.Loggers.ILog" />.
            </summary>
    </member>
    <member name="M:DotNetOpenAuth.Loggers.TraceLogger.WarnFormat(System.String,System.Object[])">
      <summary>
            See <see cref="T:DotNetOpenAuth.Loggers.ILog" />.
            </summary>
    </member>
    <member name="M:DotNetOpenAuth.Loggers.TraceLogger.WarnFormat(System.String,System.Object)">
      <summary>
            See <see cref="T:DotNetOpenAuth.Loggers.ILog" />.
            </summary>
    </member>
    <member name="M:DotNetOpenAuth.Loggers.TraceLogger.WarnFormat(System.String,System.Object,System.Object)">
      <summary>
            See <see cref="T:DotNetOpenAuth.Loggers.ILog" />.
            </summary>
    </member>
    <member name="M:DotNetOpenAuth.Loggers.TraceLogger.WarnFormat(System.String,System.Object,System.Object,System.Object)">
      <summary>
            See <see cref="T:DotNetOpenAuth.Loggers.ILog" />.
            </summary>
    </member>
    <member name="M:DotNetOpenAuth.Loggers.TraceLogger.Error(System.Object)">
      <summary>
            See <see cref="T:DotNetOpenAuth.Loggers.ILog" />.
            </summary>
    </member>
    <member name="M:DotNetOpenAuth.Loggers.TraceLogger.Error(System.Object,System.Exception)">
      <summary>
            See <see cref="T:DotNetOpenAuth.Loggers.ILog" />.
            </summary>
    </member>
    <member name="M:DotNetOpenAuth.Loggers.TraceLogger.ErrorFormat(System.String,System.Object[])">
      <summary>
            See <see cref="T:DotNetOpenAuth.Loggers.ILog" />.
            </summary>
    </member>
    <member name="M:DotNetOpenAuth.Loggers.TraceLogger.ErrorFormat(System.String,System.Object)">
      <summary>
            See <see cref="T:DotNetOpenAuth.Loggers.ILog" />.
            </summary>
    </member>
    <member name="M:DotNetOpenAuth.Loggers.TraceLogger.ErrorFormat(System.String,System.Object,System.Object)">
      <summary>
            See <see cref="T:DotNetOpenAuth.Loggers.ILog" />.
            </summary>
    </member>
    <member name="M:DotNetOpenAuth.Loggers.TraceLogger.ErrorFormat(System.String,System.Object,System.Object,System.Object)">
      <summary>
            See <see cref="T:DotNetOpenAuth.Loggers.ILog" />.
            </summary>
    </member>
    <member name="M:DotNetOpenAuth.Loggers.TraceLogger.Fatal(System.Object)">
      <summary>
            See <see cref="T:DotNetOpenAuth.Loggers.ILog" />.
            </summary>
    </member>
    <member name="M:DotNetOpenAuth.Loggers.TraceLogger.Fatal(System.Object,System.Exception)">
      <summary>
            See <see cref="T:DotNetOpenAuth.Loggers.ILog" />.
            </summary>
    </member>
    <member name="M:DotNetOpenAuth.Loggers.TraceLogger.FatalFormat(System.String,System.Object[])">
      <summary>
            See <see cref="T:DotNetOpenAuth.Loggers.ILog" />.
            </summary>
    </member>
    <member name="M:DotNetOpenAuth.Loggers.TraceLogger.FatalFormat(System.String,System.Object)">
      <summary>
            See <see cref="T:DotNetOpenAuth.Loggers.ILog" />.
            </summary>
    </member>
    <member name="M:DotNetOpenAuth.Loggers.TraceLogger.FatalFormat(System.String,System.Object,System.Object)">
      <summary>
            See <see cref="T:DotNetOpenAuth.Loggers.ILog" />.
            </summary>
    </member>
    <member name="M:DotNetOpenAuth.Loggers.TraceLogger.FatalFormat(System.String,System.Object,System.Object,System.Object)">
      <summary>
            See <see cref="T:DotNetOpenAuth.Loggers.ILog" />.
            </summary>
    </member>
    <member name="M:DotNetOpenAuth.Loggers.TraceLogger.Initialize(System.String)">
      <summary>
            Returns a new logger that uses the <see cref="T:System.Diagnostics.Trace" /> class 
            if sufficient CAS permissions are granted to use it, otherwise returns false.
            </summary>
      <returns>The created <see cref="T:DotNetOpenAuth.Loggers.ILog" /> instance.</returns>
    </member>
    <member name="P:DotNetOpenAuth.Loggers.TraceLogger.IsDebugEnabled">
      <summary>
            See <see cref="T:DotNetOpenAuth.Loggers.ILog" />.
            </summary>
    </member>
    <member name="P:DotNetOpenAuth.Loggers.TraceLogger.IsInfoEnabled">
      <summary>
            See <see cref="T:DotNetOpenAuth.Loggers.ILog" />.
            </summary>
    </member>
    <member name="P:DotNetOpenAuth.Loggers.TraceLogger.IsWarnEnabled">
      <summary>
            See <see cref="T:DotNetOpenAuth.Loggers.ILog" />.
            </summary>
    </member>
    <member name="P:DotNetOpenAuth.Loggers.TraceLogger.IsErrorEnabled">
      <summary>
            See <see cref="T:DotNetOpenAuth.Loggers.ILog" />.
            </summary>
    </member>
    <member name="P:DotNetOpenAuth.Loggers.TraceLogger.IsFatalEnabled">
      <summary>
            See <see cref="T:DotNetOpenAuth.Loggers.ILog" />.
            </summary>
    </member>
    <member name="T:DotNetOpenAuth.Messaging.HttpDeliveryMethods">
      <summary>
            The methods available for the local party to send messages to a remote party.
            </summary>
      <remarks>
            See OAuth 1.0 spec section 5.2.
            </remarks>
    </member>
    <member name="F:DotNetOpenAuth.Messaging.HttpDeliveryMethods.None">
      <summary>
            No HTTP methods are allowed.
            </summary>
    </member>
    <member name="F:DotNetOpenAuth.Messaging.HttpDeliveryMethods.AuthorizationHeaderRequest">
      <summary>
            In the HTTP Authorization header as defined in OAuth HTTP Authorization Scheme (OAuth HTTP Authorization Scheme).
            </summary>
    </member>
    <member name="F:DotNetOpenAuth.Messaging.HttpDeliveryMethods.PostRequest">
      <summary>
            As the HTTP POST request body with a content-type of application/x-www-form-urlencoded.
            </summary>
    </member>
    <member name="F:DotNetOpenAuth.Messaging.HttpDeliveryMethods.GetRequest">
      <summary>
            Added to the URLs in the query part (as defined by [RFC3986] (Berners-Lee, T., “Uniform Resource Identifiers (URI): Generic Syntax,” .) section 3).
            </summary>
    </member>
    <member name="F:DotNetOpenAuth.Messaging.HttpDeliveryMethods.PutRequest">
      <summary>
            Added to the URLs in the query part (as defined by [RFC3986] (Berners-Lee, T., “Uniform Resource Identifiers (URI): Generic Syntax,” .) section 3).
            </summary>
    </member>
    <member name="F:DotNetOpenAuth.Messaging.HttpDeliveryMethods.DeleteRequest">
      <summary>
            Added to the URLs in the query part (as defined by [RFC3986] (Berners-Lee, T., “Uniform Resource Identifiers (URI): Generic Syntax,” .) section 3).
            </summary>
    </member>
    <member name="F:DotNetOpenAuth.Messaging.HttpDeliveryMethods.HttpVerbMask">
      <summary>
            The flags that control HTTP verbs.
            </summary>
    </member>
    <member name="T:DotNetOpenAuth.Messaging.MessageTransport">
      <summary>
            The type of transport mechanism used for a message: either direct or indirect.
            </summary>
    </member>
    <member name="F:DotNetOpenAuth.Messaging.MessageTransport.Direct">
      <summary>
            A message that is sent directly from the Consumer to the Service Provider, or vice versa.
            </summary>
    </member>
    <member name="F:DotNetOpenAuth.Messaging.MessageTransport.Indirect">
      <summary>
            A message that is sent from one party to another via a redirect in the user agent.
            </summary>
    </member>
    <member name="T:DotNetOpenAuth.OAuth.ChannelElements.OAuthServiceProviderMessageFactory">
      <summary>
            An OAuth-protocol specific implementation of the <see cref="T:DotNetOpenAuth.Messaging.IMessageFactory" />
            interface.
            </summary>
    </member>
    <member name="F:DotNetOpenAuth.OAuth.ChannelElements.OAuthServiceProviderMessageFactory.tokenManager">
      <summary>
            The token manager to use for discerning between request and access tokens.
            </summary>
    </member>
    <member name="M:DotNetOpenAuth.OAuth.ChannelElements.OAuthServiceProviderMessageFactory.#ctor(DotNetOpenAuth.OAuth.ChannelElements.IServiceProviderTokenManager)">
      <summary>
            Initializes a new instance of the <see cref="T:DotNetOpenAuth.OAuth.ChannelElements.OAuthServiceProviderMessageFactory" /> class.
            </summary>
      <param name="tokenManager">The token manager instance to use.</param>
    </member>
    <member name="M:DotNetOpenAuth.OAuth.ChannelElements.OAuthServiceProviderMessageFactory.GetNewRequestMessage(DotNetOpenAuth.Messaging.MessageReceivingEndpoint,System.Collections.Generic.IDictionary{System.String,System.String})">
      <summary>
            Analyzes an incoming request message payload to discover what kind of
            message is embedded in it and returns the type, or null if no match is found.
            </summary>
      <param name="recipient">The intended or actual recipient of the request message.</param>
      <param name="fields">The name/value pairs that make up the message payload.</param>
      <returns>
            A newly instantiated <see cref="T:DotNetOpenAuth.Messaging.IProtocolMessage" />-derived object that this message can
            deserialize to.  Null if the request isn't recognized as a valid protocol message.
            </returns>
      <remarks>
            The request messages are:
            UnauthorizedTokenRequest
            AuthorizedTokenRequest
            UserAuthorizationRequest
            AccessProtectedResourceRequest
            </remarks>
    </member>
    <member name="M:DotNetOpenAuth.OAuth.ChannelElements.OAuthServiceProviderMessageFactory.GetNewResponseMessage(DotNetOpenAuth.Messaging.IDirectedProtocolMessage,System.Collections.Generic.IDictionary{System.String,System.String})">
      <summary>
            Analyzes an incoming request message payload to discover what kind of 
            message is embedded in it and returns the type, or null if no match is found.
            </summary>
      <param name="request">
            The message that was sent as a request that resulted in the response.
            Null on a Consumer site that is receiving an indirect message from the Service Provider.
            </param>
      <param name="fields">The name/value pairs that make up the message payload.</param>
      <returns>
            The <see cref="T:DotNetOpenAuth.Messaging.IProtocolMessage" />-derived concrete class that this message can
            deserialize to.  Null if the request isn't recognized as a valid protocol message.
            </returns>
      <remarks>
            The response messages are:
            None.
            </remarks>
    </member>
    <member name="T:DotNetOpenAuth.OpenId.Association">
      <summary>
            Stores a secret used in signing and verifying messages.
            </summary>
      <remarks>
            OpenID associations may be shared between Provider and Relying Party (smart
            associations), or be a way for a Provider to recall its own secret for later
            (dumb associations).
            </remarks>
    </member>
    <member name="M:DotNetOpenAuth.OpenId.Association.#ctor(System.String,System.Byte[],System.TimeSpan,System.DateTime)">
      <summary>
            Initializes a new instance of the <see cref="T:DotNetOpenAuth.OpenId.Association" /> class.
            </summary>
      <param name="handle">The handle.</param>
      <param name="secret">The secret.</param>
      <param name="totalLifeLength">How long the association will be useful.</param>
      <param name="issued">The UTC time of when this association was originally issued by the Provider.</param>
    </member>
    <member name="M:DotNetOpenAuth.OpenId.Association.Deserialize(System.String,System.DateTime,System.Byte[])">
      <summary>
            Re-instantiates an <see cref="T:DotNetOpenAuth.OpenId.Association" /> previously persisted in a database or some
            other shared store.
            </summary>
      <param name="handle">
            The <see cref="P:DotNetOpenAuth.OpenId.Association.Handle" /> property of the previous <see cref="T:DotNetOpenAuth.OpenId.Association" /> instance.
            </param>
      <param name="expiresUtc">
            The UTC value of the <see cref="P:DotNetOpenAuth.OpenId.Association.Expires" /> property of the previous <see cref="T:DotNetOpenAuth.OpenId.Association" /> instance.
            </param>
      <param name="privateData">
            The byte array returned by a call to <see cref="M:DotNetOpenAuth.OpenId.Association.SerializePrivateData" /> on the previous
            <see cref="T:DotNetOpenAuth.OpenId.Association" /> instance.
            </param>
      <returns>
            The newly dehydrated <see cref="T:DotNetOpenAuth.OpenId.Association" />, which can be returned
            from a custom association store's 
            <see cref="M:DotNetOpenAuth.OpenId.IAssociationStore`1.GetAssociation(`0,DotNetOpenAuth.OpenId.SecuritySettings)" /> method.
            </returns>
    </member>
    <member name="M:DotNetOpenAuth.OpenId.Association.SerializePrivateData">
      <summary>
            Returns private data required to persist this <see cref="T:DotNetOpenAuth.OpenId.Association" /> in
            permanent storage (a shared database for example) for deserialization later.
            </summary>
      <returns>
            An opaque byte array that must be stored and returned exactly as it is provided here.
            The byte array may vary in length depending on the specific type of <see cref="T:DotNetOpenAuth.OpenId.Association" />,
            but in current versions are no larger than 256 bytes.
            </returns>
      <remarks>
            Values of public properties on the base class <see cref="T:DotNetOpenAuth.OpenId.Association" /> are not included
            in this byte array, as they are useful for fast database lookup and are persisted separately.
            </remarks>
    </member>
    <member name="M:DotNetOpenAuth.OpenId.Association.Equals(System.Object)">
      <summary>
            Tests equality of two <see cref="T:DotNetOpenAuth.OpenId.Association" /> objects.
            </summary>
      <param name="obj">The <see cref="T:System.Object" /> to compare with the current <see cref="T:System.Object" />.</param>
      <returns>
            true if the specified <see cref="T:System.Object" /> is equal to the current <see cref="T:System.Object" />; otherwise, false.
            </returns>
    </member>
    <member name="M:DotNetOpenAuth.OpenId.Association.GetHashCode">
      <summary>
            Returns the hash code.
            </summary>
      <returns>
            A hash code for the current <see cref="T:System.Object" />.
            </returns>
    </member>
    <member name="M:DotNetOpenAuth.OpenId.Association.GetAssociationType(DotNetOpenAuth.OpenId.Protocol)">
      <summary>
            The string to pass as the assoc_type value in the OpenID protocol.
            </summary>
      <param name="protocol">The protocol version of the message that the assoc_type value will be included in.</param>
      <returns>The value that should be used for  the openid.assoc_type parameter.</returns>
    </member>
    <member name="M:DotNetOpenAuth.OpenId.Association.Sign(System.Byte[])">
      <summary>
            Generates a signature from a given blob of data.
            </summary>
      <param name="data">The data to sign.  This data will not be changed (the signature is the return value).</param>
      <returns>The calculated signature of the data.</returns>
    </member>
    <member name="M:DotNetOpenAuth.OpenId.Association.CreateHasher">
      <summary>
            Returns the specific hash algorithm used for message signing.
            </summary>
      <returns>The hash algorithm used for message signing.</returns>
    </member>
    <member name="M:DotNetOpenAuth.OpenId.Association.ObjectInvariant">
      <summary>
            Verifies conditions that should be true for any valid state of this object.
            </summary>
    </member>
    <member name="P:DotNetOpenAuth.OpenId.Association.Handle">
      <summary>
            Gets a unique handle by which this <see cref="T:DotNetOpenAuth.OpenId.Association" /> may be stored or retrieved.
            </summary>
    </member>
    <member name="P:DotNetOpenAuth.OpenId.Association.Expires">
      <summary>
            Gets the UTC time when this <see cref="T:DotNetOpenAuth.OpenId.Association" /> will expire.
            </summary>
    </member>
    <member name="P:DotNetOpenAuth.OpenId.Association.IsExpired">
      <summary>
            Gets a value indicating whether this <see cref="T:DotNetOpenAuth.OpenId.Association" /> has already expired.
            </summary>
    </member>
    <member name="P:DotNetOpenAuth.OpenId.Association.HashBitLength">
      <summary>
            Gets the length (in bits) of the hash this association creates when signing.
            </summary>
    </member>
    <member name="P:DotNetOpenAuth.OpenId.Association.HasUsefulLifeRemaining">
      <summary>
            Gets a value indicating whether this instance has useful life remaining.
            </summary>
      <value>
        <c>true</c> if this instance has useful life remaining; otherwise, <c>false</c>.
            </value>
    </member>
    <member name="P:DotNetOpenAuth.OpenId.Association.Issued">
      <summary>
            Gets or sets the UTC time that this <see cref="T:DotNetOpenAuth.OpenId.Association" /> was first created.
            </summary>
    </member>
    <member name="P:DotNetOpenAuth.OpenId.Association.SecondsTillExpiration">
      <summary>
            Gets the number of seconds until this <see cref="T:DotNetOpenAuth.OpenId.Association" /> expires.
            Never negative (counter runs to zero).
            </summary>
    </member>
    <member name="P:DotNetOpenAuth.OpenId.Association.SecretKey">
      <summary>
            Gets the shared secret key between the consumer and provider.
            </summary>
    </member>
    <member name="P:DotNetOpenAuth.OpenId.Association.DumbSecretLifetime">
      <summary>
            Gets the duration a secret key used for signing dumb client requests will be good for.
            </summary>
    </member>
    <member name="P:DotNetOpenAuth.OpenId.Association.TotalLifeLength">
      <summary>
            Gets the lifetime the OpenID provider permits this <see cref="T:DotNetOpenAuth.OpenId.Association" />.
            </summary>
    </member>
    <member name="P:DotNetOpenAuth.OpenId.Association.MinimumUsefulAssociationLifetime">
      <summary>
            Gets the minimum lifetime an association must still be good for in order for it to be used for a future authentication.
            </summary>
      <remarks>
            Associations that are not likely to last the duration of a user login are not worth using at all.
            </remarks>
    </member>
    <member name="P:DotNetOpenAuth.OpenId.Association.TimeTillExpiration">
      <summary>
            Gets the TimeSpan till this association expires.
            </summary>
    </member>
    <member name="T:DotNetOpenAuth.OpenId.AssociationMemoryStore`1">
      <summary>
            Manages a set of associations in memory only (no database).
            </summary>
      <typeparam name="TKey">The type of the key.</typeparam>
      <remarks>
            This class should be used for low-to-medium traffic relying party sites that can afford to lose associations
            if the app pool was ever restarted.  High traffic relying parties and providers should write their own
            implementation of <see cref="T:DotNetOpenAuth.OpenId.IAssociationStore`1" /> that works against their own database schema
            to allow for persistance and recall of associations across servers in a web farm and server restarts.
            </remarks>
    </member>
    <member name="T:DotNetOpenAuth.OpenId.IAssociationStore`1">
      <summary>
            Stores <see cref="T:DotNetOpenAuth.OpenId.Association" />s for lookup by their handle, keeping
            associations separated by a given distinguishing factor (like which server the
            association is with).
            </summary>
      <typeparam name="TKey">
        <see cref="T:System.Uri" /> for consumers (to distinguish associations across servers) or
            <see cref="T:DotNetOpenAuth.OpenId.AssociationRelyingPartyType" /> for providers (to distinguish dumb and smart client associations).
            </typeparam>
    </member>
    <member name="M:DotNetOpenAuth.OpenId.IAssociationStore`1.StoreAssociation(`0,DotNetOpenAuth.OpenId.Association)">
      <summary>
            Saves an <see cref="T:DotNetOpenAuth.OpenId.Association" /> for later recall.
            </summary>
      <param name="distinguishingFactor">The Uri (for relying parties) or Smart/Dumb (for providers).</param>
      <param name="association">The association to store.</param>
      <remarks>
            TODO: what should implementations do on association handle conflict?
            </remarks>
    </member>
    <member name="M:DotNetOpenAuth.OpenId.IAssociationStore`1.GetAssociation(`0,DotNetOpenAuth.OpenId.SecuritySettings)">
      <summary>
            Gets the best association (the one with the longest remaining life) for a given key.
            </summary>
      <param name="distinguishingFactor">The Uri (for relying parties) or Smart/Dumb (for Providers).</param>
      <param name="securityRequirements">The security requirements that the returned association must meet.</param>
      <returns>
            The requested association, or null if no unexpired <see cref="T:DotNetOpenAuth.OpenId.Association" />s exist for the given key.
            </returns>
      <remarks>
            In the event that multiple associations exist for the given 
            <paramref name="distinguishingFactor" />, it is important for the 
            implementation for this method to use the <paramref name="securityRequirements" />
            to pick the best (highest grade or longest living as the host's policy may dictate)
            association that fits the security requirements.
            Associations that are returned that do not meet the security requirements will be
            ignored and a new association created.
            </remarks>
    </member>
    <member name="M:DotNetOpenAuth.OpenId.IAssociationStore`1.GetAssociation(`0,System.String)">
      <summary>
            Gets the association for a given key and handle.
            </summary>
      <param name="distinguishingFactor">The Uri (for relying parties) or Smart/Dumb (for Providers).</param>
      <param name="handle">The handle of the specific association that must be recalled.</param>
      <returns>The requested association, or null if no unexpired <see cref="T:DotNetOpenAuth.OpenId.Association" />s exist for the given key and handle.</returns>
    </member>
    <member name="M:DotNetOpenAuth.OpenId.IAssociationStore`1.RemoveAssociation(`0,System.String)">
      <summary>Removes a specified handle that may exist in the store.</summary>
      <param name="distinguishingFactor">The Uri (for relying parties) or Smart/Dumb (for Providers).</param>
      <param name="handle">The handle of the specific association that must be deleted.</param>
      <returns>True if the association existed in this store previous to this call.</returns>
      <remarks>
            No exception should be thrown if the association does not exist in the store
            before this call.
            </remarks>
    </member>
    <member name="M:DotNetOpenAuth.OpenId.IAssociationStore`1.ClearExpiredAssociations">
      <summary>
            Clears all expired associations from the store.
            </summary>
      <remarks>
            If another algorithm is in place to periodically clear out expired associations,
            this method call may be ignored.
            This should be done frequently enough to avoid a memory leak, but sparingly enough
            to not be a performance drain.
            </remarks>
    </member>
    <member name="F:DotNetOpenAuth.OpenId.AssociationMemoryStore`1.serverAssocsTable">
      <summary>
            For Relying Parties, this maps OP Endpoints to a set of associations with that endpoint.
            For Providers, this keeps smart and dumb associations in two distinct pools.
            </summary>
    </member>
    <member name="M:DotNetOpenAuth.OpenId.AssociationMemoryStore`1.StoreAssociation(`0,DotNetOpenAuth.OpenId.Association)">
      <summary>
            Stores a given association for later recall.
            </summary>
      <param name="distinguishingFactor">The distinguishing factor, either an OP Endpoint or smart/dumb mode.</param>
      <param name="association">The association to store.</param>
    </member>
    <member name="M:DotNetOpenAuth.OpenId.AssociationMemoryStore`1.GetAssociation(`0,DotNetOpenAuth.OpenId.SecuritySettings)">
      <summary>
            Gets the best association (the one with the longest remaining life) for a given key.
            </summary>
      <param name="distinguishingFactor">The Uri (for relying parties) or Smart/Dumb (for Providers).</param>
      <param name="securitySettings">The security settings.</param>
      <returns>
            The requested association, or null if no unexpired <see cref="T:DotNetOpenAuth.OpenId.Association" />s exist for the given key.
            </returns>
    </member>
    <member name="M:DotNetOpenAuth.OpenId.AssociationMemoryStore`1.GetAssociation(`0,System.String)">
      <summary>
            Gets the association for a given key and handle.
            </summary>
      <param name="distinguishingFactor">The Uri (for relying parties) or Smart/Dumb (for Providers).</param>
      <param name="handle">The handle of the specific association that must be recalled.</param>
      <returns>
            The requested association, or null if no unexpired <see cref="T:DotNetOpenAuth.OpenId.Association" />s exist for the given key and handle.
            </returns>
    </member>
    <member name="M:DotNetOpenAuth.OpenId.AssociationMemoryStore`1.RemoveAssociation(`0,System.String)">
      <summary>
            Removes a specified handle that may exist in the store.
            </summary>
      <param name="distinguishingFactor">The Uri (for relying parties) or Smart/Dumb (for Providers).</param>
      <param name="handle">The handle of the specific association that must be deleted.</param>
      <returns>
            True if the association existed in this store previous to this call.
            </returns>
      <remarks>
            No exception should be thrown if the association does not exist in the store
            before this call.
            </remarks>
    </member>
    <member name="M:DotNetOpenAuth.OpenId.AssociationMemoryStore`1.ClearExpiredAssociations">
      <summary>
            Clears all expired associations from the store.
            </summary>
    </member>
    <member name="M:DotNetOpenAuth.OpenId.AssociationMemoryStore`1.GetServerAssociations(`0)">
      <summary>
            Gets the server associations for a given OP Endpoint or dumb/smart mode.
            </summary>
      <param name="distinguishingFactor">The distinguishing factor, either an OP Endpoint (for relying parties) or smart/dumb (for providers).</param>
      <returns>The collection of associations that fit the <paramref name="distinguishingFactor" />.</returns>
    </member>
    <member name="T:DotNetOpenAuth.OpenId.Associations">
      <summary>
            A dictionary of handle/Association pairs.
            </summary>
      <remarks>
            Each method is locked, even if it is only one line, so that they are thread safe
            against each other, particularly the ones that enumerate over the list, since they
            can break if the collection is changed by another thread during enumeration.
            </remarks>
    </member>
    <member name="F:DotNetOpenAuth.OpenId.Associations.associations">
      <summary>
            The lookup table where keys are the association handles and values are the associations themselves.
            </summary>
    </member>
    <member name="M:DotNetOpenAuth.OpenId.Associations.#ctor">
      <summary>
            Initializes a new instance of the <see cref="T:DotNetOpenAuth.OpenId.Associations" /> class.
            </summary>
    </member>
    <member name="M:DotNetOpenAuth.OpenId.Associations.Set(DotNetOpenAuth.OpenId.Association)">
      <summary>
            Stores an <see cref="T:DotNetOpenAuth.OpenId.Association" /> in the collection.
            </summary>
      <param name="association">The association to add to the collection.</param>
    </member>
    <member name="M:DotNetOpenAuth.OpenId.Associations.Get(System.String)">
      <summary>
            Returns the <see cref="T:DotNetOpenAuth.OpenId.Association" /> with the given handle.  Null if not found.
            </summary>
      <param name="handle">The handle to the required association.</param>
      <returns>The desired association, or null if none with the given handle could be found.</returns>
      <pure />
    </member>
    <member name="M:DotNetOpenAuth.OpenId.Associations.Remove(System.String)">
      <summary>
            Removes the <see cref="T:DotNetOpenAuth.OpenId.Association" /> with the given handle.
            </summary>
      <param name="handle">The handle to the required association.</param>
      <returns>Whether an <see cref="T:DotNetOpenAuth.OpenId.Association" /> with the given handle was in the collection for removal.</returns>
    </member>
    <member name="M:DotNetOpenAuth.OpenId.Associations.ClearExpired">
      <summary>
            Removes all expired associations from the collection.
            </summary>
    </member>
    <member name="M:DotNetOpenAuth.OpenId.Associations.ObjectInvariant">
      <summary>
            Verifies conditions that should be true for any valid state of this object.
            </summary>
    </member>
    <member name="P:DotNetOpenAuth.OpenId.Associations.Best">
      <summary>
            Gets the <see cref="T:DotNetOpenAuth.OpenId.Association" />s ordered in order of descending issue date
            (most recently issued comes first).  An empty sequence if no valid associations exist.
            </summary>
      <remarks>
            This property is used by relying parties that are initiating authentication requests.
            It does not apply to Providers, which always need a specific association by handle.
            </remarks>
    </member>
    <member name="T:DotNetOpenAuth.OpenId.Behaviors.AXFetchAsSregTransform">
      <summary>
            An Attribute Exchange and Simple Registration filter to make all incoming attribute 
            requests look like Simple Registration requests, and to convert the response
            to the originally requested extension and format.
            </summary>
    </member>
    <member name="T:DotNetOpenAuth.OpenId.RelyingParty.IRelyingPartyBehavior">
      <summary>
            Applies a custom security policy to certain OpenID security settings and behaviors.
            </summary>
    </member>
    <member name="M:DotNetOpenAuth.OpenId.RelyingParty.IRelyingPartyBehavior.ApplySecuritySettings(DotNetOpenAuth.OpenId.RelyingParty.RelyingPartySecuritySettings)">
      <summary>
            Applies a well known set of security requirements to a default set of security settings.
            </summary>
      <param name="securitySettings">The security settings to enhance with the requirements of this profile.</param>
      <remarks>
            Care should be taken to never decrease security when applying a profile.
            Profiles should only enhance security requirements to avoid being
            incompatible with each other.
            </remarks>
    </member>
    <member name="M:DotNetOpenAuth.OpenId.RelyingParty.IRelyingPartyBehavior.OnOutgoingAuthenticationRequest(DotNetOpenAuth.OpenId.RelyingParty.IAuthenticationRequest)">
      <summary>
            Called when an authentication request is about to be sent.
            </summary>
      <param name="request">The request.</param>
      <remarks>
            Implementations should be prepared to be called multiple times on the same outgoing message
            without malfunctioning.
            </remarks>
    </member>
    <member name="M:DotNetOpenAuth.OpenId.RelyingParty.IRelyingPartyBehavior.OnIncomingPositiveAssertion(DotNetOpenAuth.OpenId.RelyingParty.IAuthenticationResponse)">
      <summary>
            Called when an incoming positive assertion is received.
            </summary>
      <param name="assertion">The positive assertion.</param>
    </member>
    <member name="T:DotNetOpenAuth.OpenId.Provider.IProviderBehavior">
      <summary>
            Applies a custom security policy to certain OpenID security settings and behaviors.
            </summary>
    </member>
    <member name="M:DotNetOpenAuth.OpenId.Provider.IProviderBehavior.ApplySecuritySettings(DotNetOpenAuth.OpenId.Provider.ProviderSecuritySettings)">
      <summary>
            Applies a well known set of security requirements to a default set of security settings.
            </summary>
      <param name="securitySettings">The security settings to enhance with the requirements of this profile.</param>
      <remarks>
            Care should be taken to never decrease security when applying a profile.
            Profiles should only enhance security requirements to avoid being
            incompatible with each other.
            </remarks>
    </member>
    <member name="M:DotNetOpenAuth.OpenId.Provider.IProviderBehavior.OnIncomingRequest(DotNetOpenAuth.OpenId.Provider.IRequest)">
      <summary>
            Called when a request is received by the Provider.
            </summary>
      <param name="request">The incoming request.</param>
      <returns>
        <c>true</c> if this behavior owns this request and wants to stop other behaviors
            from handling it; <c>false</c> to allow other behaviors to process this request.
            </returns>
      <remarks>
            Implementations may set a new value to <see cref="P:DotNetOpenAuth.OpenId.Provider.IRequest.SecuritySettings" /> but
            should not change the properties on the instance of <see cref="T:DotNetOpenAuth.OpenId.Provider.ProviderSecuritySettings" />
            itself as that instance may be shared across many requests.
            </remarks>
    </member>
    <member name="M:DotNetOpenAuth.OpenId.Provider.IProviderBehavior.OnOutgoingResponse(DotNetOpenAuth.OpenId.Provider.IAuthenticationRequest)">
      <summary>
            Called when the Provider is preparing to send a response to an authentication request.
            </summary>
      <param name="request">The request that is configured to generate the outgoing response.</param>
      <returns>
        <c>true</c> if this behavior owns this request and wants to stop other behaviors
            from handling it; <c>false</c> to allow other behaviors to process this request.
            </returns>
    </member>
    <member name="M:DotNetOpenAuth.OpenId.Behaviors.AXFetchAsSregTransform.#cctor">
      <summary>
            Initializes static members of the <see cref="T:DotNetOpenAuth.OpenId.Behaviors.AXFetchAsSregTransform" /> class.
            </summary>
    </member>
    <member name="M:DotNetOpenAuth.OpenId.Behaviors.AXFetchAsSregTransform.#ctor">
      <summary>
            Initializes a new instance of the <see cref="T:DotNetOpenAuth.OpenId.Behaviors.AXFetchAsSregTransform" /> class.
            </summary>
    </member>
    <member name="M:DotNetOpenAuth.OpenId.Behaviors.AXFetchAsSregTransform.DotNetOpenAuth#OpenId#RelyingParty#IRelyingPartyBehavior#ApplySecuritySettings(DotNetOpenAuth.OpenId.RelyingParty.RelyingPartySecuritySettings)">
      <summary>
            Applies a well known set of security requirements to a default set of security settings.
            </summary>
      <param name="securitySettings">The security settings to enhance with the requirements of this profile.</param>
      <remarks>
            Care should be taken to never decrease security when applying a profile.
            Profiles should only enhance security requirements to avoid being
            incompatible with each other.
            </remarks>
    </member>
    <member name="M:DotNetOpenAuth.OpenId.Behaviors.AXFetchAsSregTransform.DotNetOpenAuth#OpenId#RelyingParty#IRelyingPartyBehavior#OnOutgoingAuthenticationRequest(DotNetOpenAuth.OpenId.RelyingParty.IAuthenticationRequest)">
      <summary>
            Called when an authentication request is about to be sent.
            </summary>
      <param name="request">The request.</param>
      <remarks>
            Implementations should be prepared to be called multiple times on the same outgoing message
            without malfunctioning.
            </remarks>
    </member>
    <member name="M:DotNetOpenAuth.OpenId.Behaviors.AXFetchAsSregTransform.DotNetOpenAuth#OpenId#RelyingParty#IRelyingPartyBehavior#OnIncomingPositiveAssertion(DotNetOpenAuth.OpenId.RelyingParty.IAuthenticationResponse)">
      <summary>
            Called when an incoming positive assertion is received.
            </summary>
      <param name="assertion">The positive assertion.</param>
    </member>
    <member name="M:DotNetOpenAuth.OpenId.Behaviors.AXFetchAsSregTransform.DotNetOpenAuth#OpenId#Provider#IProviderBehavior#ApplySecuritySettings(DotNetOpenAuth.OpenId.Provider.ProviderSecuritySettings)">
      <summary>
            Applies a well known set of security requirements to a default set of security settings.
            </summary>
      <param name="securitySettings">The security settings to enhance with the requirements of this profile.</param>
      <remarks>
            Care should be taken to never decrease security when applying a profile.
            Profiles should only enhance security requirements to avoid being
            incompatible with each other.
            </remarks>
    </member>
    <member name="M:DotNetOpenAuth.OpenId.Behaviors.AXFetchAsSregTransform.DotNetOpenAuth#OpenId#Provider#IProviderBehavior#OnIncomingRequest(DotNetOpenAuth.OpenId.Provider.IRequest)">
      <summary>
            Called when a request is received by the Provider.
            </summary>
      <param name="request">The incoming request.</param>
      <returns>
        <c>true</c> if this behavior owns this request and wants to stop other behaviors
            from handling it; <c>false</c> to allow other behaviors to process this request.
            </returns>
      <remarks>
            Implementations may set a new value to <see cref="P:DotNetOpenAuth.OpenId.Provider.IRequest.SecuritySettings" /> but
            should not change the properties on the instance of <see cref="T:DotNetOpenAuth.OpenId.Provider.ProviderSecuritySettings" />
            itself as that instance may be shared across many requests.
            </remarks>
    </member>
    <member name="M:DotNetOpenAuth.OpenId.Behaviors.AXFetchAsSregTransform.DotNetOpenAuth#OpenId#Provider#IProviderBehavior#OnOutgoingResponse(DotNetOpenAuth.OpenId.Provider.IAuthenticationRequest)">
      <summary>
            Called when the Provider is preparing to send a response to an authentication request.
            </summary>
      <param name="request">The request that is configured to generate the outgoing response.</param>
      <returns>
        <c>true</c> if this behavior owns this request and wants to stop other behaviors
            from handling it; <c>false</c> to allow other behaviors to process this request.
            </returns>
    </member>
    <member name="P:DotNetOpenAuth.OpenId.Behaviors.AXFetchAsSregTransform.AXFormats">
      <summary>
            Gets or sets the AX attribute type URI formats this transform is willing to work with.
            </summary>
    </member>
    <member name="T:DotNetOpenAuth.OpenId.Behaviors.BehaviorStrings">
      <summary>
              A strongly-typed resource class, for looking up localized strings, etc.
            </summary>
    </member>
    <member name="P:DotNetOpenAuth.OpenId.Behaviors.BehaviorStrings.ResourceManager">
      <summary>
              Returns the cached ResourceManager instance used by this class.
            </summary>
    </member>
    <member name="P:DotNetOpenAuth.OpenId.Behaviors.BehaviorStrings.Culture">
      <summary>
              Overrides the current thread's CurrentUICulture property for all
              resource lookups using this strongly typed resource class.
            </summary>
    </member>
    <member name="P:DotNetOpenAuth.OpenId.Behaviors.BehaviorStrings.PapeRequestMissingRequiredPolicies">
      <summary>
              Looks up a localized string similar to The PAPE request has an incomplete set of authentication policies..
            </summary>
    </member>
    <member name="P:DotNetOpenAuth.OpenId.Behaviors.BehaviorStrings.PapeResponseOrRequiredPoliciesMissing">
      <summary>
              Looks up a localized string similar to A PAPE response is missing or is missing required policies..
            </summary>
    </member>
    <member name="P:DotNetOpenAuth.OpenId.Behaviors.BehaviorStrings.PiiIncludedWithNoPiiPolicy">
      <summary>
              Looks up a localized string similar to No personally identifiable information should be included in authentication responses when the PAPE authentication policy http://www.idmanagement.gov/schema/2009/05/icam/no-pii.pdf is present..
            </summary>
    </member>
    <member name="P:DotNetOpenAuth.OpenId.Behaviors.BehaviorStrings.PiiRequestedWithNoPiiPolicy">
      <summary>
              Looks up a localized string similar to No personally identifiable information should be requested when the http://www.idmanagement.gov/schema/2009/05/icam/no-pii.pdf PAPE policy is present..
            </summary>
    </member>
    <member name="P:DotNetOpenAuth.OpenId.Behaviors.BehaviorStrings.PpidProviderNotGiven">
      <summary>
              Looks up a localized string similar to No PPID provider has been configured..
            </summary>
    </member>
    <member name="P:DotNetOpenAuth.OpenId.Behaviors.BehaviorStrings.RealmDiscoveryNotPerformed">
      <summary>
              Looks up a localized string similar to Discovery on the Realm URL MUST be performed before sending a positive assertion..
            </summary>
    </member>
    <member name="P:DotNetOpenAuth.OpenId.Behaviors.BehaviorStrings.RealmMustBeHttps">
      <summary>
              Looks up a localized string similar to The Realm in an authentication request must be an HTTPS URL..
            </summary>
    </member>
    <member name="T:DotNetOpenAuth.OpenId.Behaviors.PpidGeneration">
      <summary>
            Offers OpenID Providers automatic PPID Claimed Identifier generation when requested
            by a PAPE request.
            </summary>
      <remarks>
        <para>PPIDs are set on positive authentication responses when the PAPE request includes
            the <see cref="F:DotNetOpenAuth.OpenId.Extensions.ProviderAuthenticationPolicy.AuthenticationPolicies.PrivatePersonalIdentifier" /> authentication policy.</para>
        <para>The static member <see cref="P:DotNetOpenAuth.OpenId.Behaviors.PpidGeneration.PpidIdentifierProvider" /> MUST
            be set prior to any PPID requests come in.  Typically this should be set in the
            <c>Application_Start</c> method in the global.asax.cs file.</para>
      </remarks>
    </member>
    <member name="M:DotNetOpenAuth.OpenId.Behaviors.PpidGeneration.DotNetOpenAuth#OpenId#Provider#IProviderBehavior#ApplySecuritySettings(DotNetOpenAuth.OpenId.Provider.ProviderSecuritySettings)">
      <summary>
            Applies a well known set of security requirements to a default set of security settings.
            </summary>
      <param name="securitySettings">The security settings to enhance with the requirements of this profile.</param>
      <remarks>
            Care should be taken to never decrease security when applying a profile.
            Profiles should only enhance security requirements to avoid being
            incompatible with each other.
            </remarks>
    </member>
    <member name="M:DotNetOpenAuth.OpenId.Behaviors.PpidGeneration.DotNetOpenAuth#OpenId#Provider#IProviderBehavior#OnIncomingRequest(DotNetOpenAuth.OpenId.Provider.IRequest)">
      <summary>
            Called when a request is received by the Provider.
            </summary>
      <param name="request">The incoming request.</param>
      <returns>
        <c>true</c> if this behavior owns this request and wants to stop other behaviors
            from handling it; <c>false</c> to allow other behaviors to process this request.
            </returns>
      <remarks>
            Implementations may set a new value to <see cref="P:DotNetOpenAuth.OpenId.Provider.IRequest.SecuritySettings" /> but
            should not change the properties on the instance of <see cref="T:DotNetOpenAuth.OpenId.Provider.ProviderSecuritySettings" />
            itself as that instance may be shared across many requests.
            </remarks>
    </member>
    <member name="M:DotNetOpenAuth.OpenId.Behaviors.PpidGeneration.DotNetOpenAuth#OpenId#Provider#IProviderBehavior#OnOutgoingResponse(DotNetOpenAuth.OpenId.Provider.IAuthenticationRequest)">
      <summary>
            Called when the Provider is preparing to send a response to an authentication request.
            </summary>
      <param name="request">The request that is configured to generate the outgoing response.</param>
      <returns>
        <c>true</c> if this behavior owns this request and wants to stop other behaviors
            from handling it; <c>false</c> to allow other behaviors to process this request.
            </returns>
    </member>
    <member name="P:DotNetOpenAuth.OpenId.Behaviors.PpidGeneration.PpidIdentifierProvider">
      <summary>
            Gets or sets the provider for generating PPID identifiers.
            </summary>
    </member>
    <member name="T:DotNetOpenAuth.OpenId.ChannelElements.BackwardCompatibilityBindingElement">
      <summary>
            Provides a mechanism for Relying Parties to work with OpenID 1.0 Providers
            without losing claimed_id and op_endpoint data, which OpenID 2.0 Providers
            are required to send back with positive assertions.
            </summary>
    </member>
    <member name="F:DotNetOpenAuth.OpenId.ChannelElements.BackwardCompatibilityBindingElement.ProviderEndpointParameterName">
      <summary>
            The "dnoa.op_endpoint" callback parameter that stores the Provider Endpoint URL
            to tack onto the return_to URI.
            </summary>
    </member>
    <member name="F:DotNetOpenAuth.OpenId.ChannelElements.BackwardCompatibilityBindingElement.ClaimedIdentifierParameterName">
      <summary>
            The "dnoa.claimed_id" callback parameter that stores the Claimed Identifier
            to tack onto the return_to URI.
            </summary>
    </member>
    <member name="M:DotNetOpenAuth.OpenId.ChannelElements.BackwardCompatibilityBindingElement.ProcessOutgoingMessage(DotNetOpenAuth.Messaging.IProtocolMessage)">
      <summary>
            Prepares a message for sending based on the rules of this channel binding element.
            </summary>
      <param name="message">The message to prepare for sending.</param>
      <returns>
            The protections (if any) that this binding element applied to the message.
            Null if this binding element did not even apply to this binding element.
            </returns>
      <remarks>
            Implementations that provide message protection must honor the
            <see cref="P:DotNetOpenAuth.Messaging.MessagePartAttribute.RequiredProtection" /> properties where applicable.
            </remarks>
    </member>
    <member name="M:DotNetOpenAuth.OpenId.ChannelElements.BackwardCompatibilityBindingElement.ProcessIncomingMessage(DotNetOpenAuth.Messaging.IProtocolMessage)">
      <summary>
            Performs any transformation on an incoming message that may be necessary and/or
            validates an incoming message based on the rules of this channel binding element.
            </summary>
      <param name="message">The incoming message to process.</param>
      <returns>
            The protections (if any) that this binding element applied to the message.
            Null if this binding element did not even apply to this binding element.
            </returns>
      <exception cref="T:DotNetOpenAuth.Messaging.ProtocolException">
            Thrown when the binding element rules indicate that this message is invalid and should
            NOT be processed.
            </exception>
      <remarks>
            Implementations that provide message protection must honor the
            <see cref="P:DotNetOpenAuth.Messaging.MessagePartAttribute.RequiredProtection" /> properties where applicable.
            </remarks>
    </member>
    <member name="P:DotNetOpenAuth.OpenId.ChannelElements.BackwardCompatibilityBindingElement.Channel">
      <summary>
            Gets or sets the channel that this binding element belongs to.
            </summary>
      <value />
      <remarks>
            This property is set by the channel when it is first constructed.
            </remarks>
    </member>
    <member name="P:DotNetOpenAuth.OpenId.ChannelElements.BackwardCompatibilityBindingElement.Protection">
      <summary>
            Gets the protection offered (if any) by this binding element.
            </summary>
      <value>
        <see cref="F:DotNetOpenAuth.Messaging.MessageProtections.None" />
      </value>
    </member>
    <member name="T:DotNetOpenAuth.OpenId.ChannelElements.ExtensionsBindingElement">
      <summary>
            The binding element that serializes/deserializes OpenID extensions to/from
            their carrying OpenID messages.
            </summary>
    </member>
    <member name="F:DotNetOpenAuth.OpenId.ChannelElements.ExtensionsBindingElement.relyingPartySecuritySettings">
      <summary>
            The security settings that apply to this relying party, if it is a relying party.
            </summary>
    </member>
    <member name="M:DotNetOpenAuth.OpenId.ChannelElements.ExtensionsBindingElement.#ctor(DotNetOpenAuth.OpenId.ChannelElements.IOpenIdExtensionFactory,DotNetOpenAuth.OpenId.SecuritySettings)">
      <summary>
            Initializes a new instance of the <see cref="T:DotNetOpenAuth.OpenId.ChannelElements.ExtensionsBindingElement" /> class.
            </summary>
      <param name="extensionFactory">The extension factory.</param>
      <param name="securitySettings">The security settings.</param>
    </member>
    <member name="M:DotNetOpenAuth.OpenId.ChannelElements.ExtensionsBindingElement.ProcessOutgoingMessage(DotNetOpenAuth.Messaging.IProtocolMessage)">
      <summary>
            Prepares a message for sending based on the rules of this channel binding element.
            </summary>
      <param name="message">The message to prepare for sending.</param>
      <returns>
            The protections (if any) that this binding element applied to the message.
            Null if this binding element did not even apply to this binding element.
            </returns>
      <remarks>
            Implementations that provide message protection must honor the
            <see cref="P:DotNetOpenAuth.Messaging.MessagePartAttribute.RequiredProtection" /> properties where applicable.
            </remarks>
    </member>
    <member name="M:DotNetOpenAuth.OpenId.ChannelElements.ExtensionsBindingElement.ProcessIncomingMessage(DotNetOpenAuth.Messaging.IProtocolMessage)">
      <summary>
            Performs any transformation on an incoming message that may be necessary and/or
            validates an incoming message based on the rules of this channel binding element.
            </summary>
      <param name="message">The incoming message to process.</param>
      <returns>
            The protections (if any) that this binding element applied to the message.
            Null if this binding element did not even apply to this binding element.
            </returns>
      <exception cref="T:DotNetOpenAuth.Messaging.ProtocolException">
            Thrown when the binding element rules indicate that this message is invalid and should
            NOT be processed.
            </exception>
      <remarks>
            Implementations that provide message protection must honor the
            <see cref="P:DotNetOpenAuth.Messaging.MessagePartAttribute.RequiredProtection" /> properties where applicable.
            </remarks>
    </member>
    <member name="M:DotNetOpenAuth.OpenId.ChannelElements.ExtensionsBindingElement.GetExtensions(DotNetOpenAuth.Messaging.IProtocolMessageWithExtensions,System.Boolean,System.Func{System.String,System.Boolean})">
      <summary>
            Gets the extensions on a message.
            </summary>
      <param name="message">The carrier of the extensions.</param>
      <param name="ignoreUnsigned">If set to <c>true</c> only signed extensions will be available.</param>
      <param name="extensionFilter">A optional filter that takes an extension type URI and 
            returns a value indicating whether that extension should be deserialized and 
            returned in the sequence.  May be null.</param>
      <returns>A sequence of extensions in the message.</returns>
    </member>
    <member name="M:DotNetOpenAuth.OpenId.ChannelElements.ExtensionsBindingElement.GetExtensionsDictionary(DotNetOpenAuth.Messaging.IProtocolMessage,System.Boolean)">
      <summary>
            Gets the dictionary of message parts that should be deserialized into extensions.
            </summary>
      <param name="message">The message.</param>
      <param name="ignoreUnsigned">If set to <c>true</c> only signed extensions will be available.</param>
      <returns>
            A dictionary of message parts, including only signed parts when appropriate.
            </returns>
    </member>
    <member name="P:DotNetOpenAuth.OpenId.ChannelElements.ExtensionsBindingElement.Channel">
      <summary>
            Gets or sets the channel that this binding element belongs to.
            </summary>
      <value />
      <remarks>
            This property is set by the channel when it is first constructed.
            </remarks>
    </member>
    <member name="P:DotNetOpenAuth.OpenId.ChannelElements.ExtensionsBindingElement.ExtensionFactory">
      <summary>
            Gets the extension factory.
            </summary>
    </member>
    <member name="P:DotNetOpenAuth.OpenId.ChannelElements.ExtensionsBindingElement.Protection">
      <summary>
            Gets the protection offered (if any) by this binding element.
            </summary>
      <value>
        <see cref="F:DotNetOpenAuth.Messaging.MessageProtections.None" />
      </value>
    </member>
    <member name="T:DotNetOpenAuth.OpenId.ChannelElements.IOpenIdExtensionFactory">
      <summary>
            OpenID extension factory class for creating extensions based on received Type URIs.
            </summary>
      <remarks>
            OpenID extension factories must be registered with the library.  This can be
            done by adding a factory to <see cref="P:DotNetOpenAuth.OpenId.RelyingParty.OpenIdRelyingParty.ExtensionFactories" />
            or <see cref="P:DotNetOpenAuth.OpenId.Provider.OpenIdProvider.ExtensionFactories" />, or by adding a snippet
            such as the following to your web.config file:
            <example>
              &lt;dotNetOpenAuth&gt;
                &lt;openid&gt;
                  &lt;extensionFactories&gt;
                    &lt;add type="DotNetOpenAuth.ApplicationBlock.CustomExtensions.Acme, DotNetOpenAuth.ApplicationBlock" /&gt;
                  &lt;/extensionFactories&gt;
                &lt;/openid&gt;
              &lt;/dotNetOpenAuth&gt;
            </example></remarks>
    </member>
    <member name="M:DotNetOpenAuth.OpenId.ChannelElements.IOpenIdExtensionFactory.Create(System.String,System.Collections.Generic.IDictionary{System.String,System.String},DotNetOpenAuth.Messaging.IProtocolMessageWithExtensions,System.Boolean)">
      <summary>
            Creates a new instance of some extension based on the received extension parameters.
            </summary>
      <param name="typeUri">The type URI of the extension.</param>
      <param name="data">The parameters associated specifically with this extension.</param>
      <param name="baseMessage">The OpenID message carrying this extension.</param>
      <param name="isProviderRole">A value indicating whether this extension is being received at the OpenID Provider.</param>
      <returns>
            An instance of <see cref="T:DotNetOpenAuth.OpenId.Messages.IOpenIdMessageExtension" /> if the factory recognizes
            the extension described in the input parameters; <c>null</c> otherwise.
            </returns>
      <remarks>
            This factory method need only initialize properties in the instantiated extension object
            that are not bound using <see cref="T:DotNetOpenAuth.Messaging.MessagePartAttribute" />.
            </remarks>
    </member>
    <member name="T:DotNetOpenAuth.OpenId.ChannelElements.ITamperResistantOpenIdMessage">
      <summary>
            An interface that OAuth messages implement to support signing.
            </summary>
    </member>
    <member name="P:DotNetOpenAuth.OpenId.ChannelElements.ITamperResistantOpenIdMessage.AssociationHandle">
      <summary>
            Gets or sets the association handle used to sign the message.
            </summary>
      <value>The handle for the association that was used to sign this assertion. </value>
    </member>
    <member name="P:DotNetOpenAuth.OpenId.ChannelElements.ITamperResistantOpenIdMessage.InvalidateHandle">
      <summary>
            Gets or sets the association handle that the Provider wants the Relying Party to not use any more.
            </summary>
      <value>If the Relying Party sent an invalid association handle with the request, it SHOULD be included here.</value>
    </member>
    <member name="P:DotNetOpenAuth.OpenId.ChannelElements.ITamperResistantOpenIdMessage.SignedParameterOrder">
      <summary>
            Gets or sets the signed parameter order.
            </summary>
      <value>Comma-separated list of signed fields.</value>
      <example>"op_endpoint,identity,claimed_id,return_to,assoc_handle,response_nonce"</example>
      <remarks>
            This entry consists of the fields without the "openid." prefix that the signature covers. 
            This list MUST contain at least "op_endpoint", "return_to" "response_nonce" and "assoc_handle", 
            and if present in the response, "claimed_id" and "identity". 
            Additional keys MAY be signed as part of the message. See Generating Signatures.
            </remarks>
    </member>
    <member name="T:DotNetOpenAuth.OpenId.ChannelElements.OriginalStringUriEncoder">
      <summary>
            A Uri encoder that serializes using <see cref="P:System.Uri.OriginalString" />
            rather than the standard <see cref="P:System.Uri.AbsoluteUri" />.
            </summary>
    </member>
    <member name="M:DotNetOpenAuth.OpenId.ChannelElements.OriginalStringUriEncoder.Encode(System.Object)">
      <summary>
            Encodes the specified value.
            </summary>
      <param name="value">The value.  Guaranteed to never be null.</param>
      <returns>
            The <paramref name="value" /> in string form, ready for message transport.
            </returns>
    </member>
    <member name="M:DotNetOpenAuth.OpenId.ChannelElements.OriginalStringUriEncoder.Decode(System.String)">
      <summary>
            Decodes the specified value.
            </summary>
      <param name="value">The string value carried by the transport.  Guaranteed to never be null, although it may be empty.</param>
      <returns>
            The deserialized form of the given string.
            </returns>
      <exception cref="T:System.FormatException">Thrown when the string value given cannot be decoded into the required object type.</exception>
    </member>
    <member name="T:DotNetOpenAuth.OpenId.ChannelElements.RelyingPartySecurityOptions">
      <summary>
            Helps ensure compliance to some properties in the <see cref="T:DotNetOpenAuth.OpenId.RelyingParty.RelyingPartySecuritySettings" />.
            </summary>
    </member>
    <member name="F:DotNetOpenAuth.OpenId.ChannelElements.RelyingPartySecurityOptions.securitySettings">
      <summary>
            The security settings that are active on the relying party.
            </summary>
    </member>
    <member name="M:DotNetOpenAuth.OpenId.ChannelElements.RelyingPartySecurityOptions.#ctor(DotNetOpenAuth.OpenId.RelyingParty.RelyingPartySecuritySettings)">
      <summary>
            Initializes a new instance of the <see cref="T:DotNetOpenAuth.OpenId.ChannelElements.RelyingPartySecurityOptions" /> class.
            </summary>
      <param name="securitySettings">The security settings.</param>
    </member>
    <member name="M:DotNetOpenAuth.OpenId.ChannelElements.RelyingPartySecurityOptions.ProcessOutgoingMessage(DotNetOpenAuth.Messaging.IProtocolMessage)">
      <summary>
            Prepares a message for sending based on the rules of this channel binding element.
            </summary>
      <param name="message">The message to prepare for sending.</param>
      <returns>
            The protections (if any) that this binding element applied to the message.
            Null if this binding element did not even apply to this binding element.
            </returns>
      <remarks>
            Implementations that provide message protection must honor the
            <see cref="P:DotNetOpenAuth.Messaging.MessagePartAttribute.RequiredProtection" /> properties where applicable.
            </remarks>
    </member>
    <member name="M:DotNetOpenAuth.OpenId.ChannelElements.RelyingPartySecurityOptions.ProcessIncomingMessage(DotNetOpenAuth.Messaging.IProtocolMessage)">
      <summary>
            Performs any transformation on an incoming message that may be necessary and/or
            validates an incoming message based on the rules of this channel binding element.
            </summary>
      <param name="message">The incoming message to process.</param>
      <returns>
            The protections (if any) that this binding element applied to the message.
            Null if this binding element did not even apply to this binding element.
            </returns>
      <exception cref="T:DotNetOpenAuth.Messaging.ProtocolException">
            Thrown when the binding element rules indicate that this message is invalid and should
            NOT be processed.
            </exception>
      <remarks>
            Implementations that provide message protection must honor the
            <see cref="P:DotNetOpenAuth.Messaging.MessagePartAttribute.RequiredProtection" /> properties where applicable.
            </remarks>
    </member>
    <member name="P:DotNetOpenAuth.OpenId.ChannelElements.RelyingPartySecurityOptions.Channel">
      <summary>
            Gets or sets the channel that this binding element belongs to.
            </summary>
      <remarks>
            This property is set by the channel when it is first constructed.
            </remarks>
    </member>
    <member name="P:DotNetOpenAuth.OpenId.ChannelElements.RelyingPartySecurityOptions.Protection">
      <summary>
            Gets the protection commonly offered (if any) by this binding element.
            </summary>
      <remarks>
            This value is used to assist in sorting binding elements in the channel stack.
            </remarks>
    </member>
    <member name="T:DotNetOpenAuth.OpenId.ChannelElements.ReturnToNonceBindingElement">
      <summary>
            This binding element adds a nonce to a Relying Party's outgoing 
            authentication request when working against an OpenID 1.0 Provider
            in order to protect against replay attacks or on all authentication
            requests to distinguish solicited from unsolicited assertions.
            </summary>
      <remarks>
        <para>This nonce goes beyond the OpenID 1.x spec, but adds to security.
            Since this library's Provider implementation also provides special nonce
            protection for 1.0 messages, this security feature overlaps with that one.
            This means that if an RP from this library were talking to an OP from this
            library, but the Identifier being authenticated advertised the OP as a 1.x
            OP, then both RP and OP might try to use a nonce for protecting the assertion.
            There's no problem with that--it will still all work out.  And it would be a 
            very rare combination of elements anyway.
            </para>
        <para>
            This binding element deactivates itself for OpenID 2.0 (or later) messages 
            since they are automatically protected in the protocol by the Provider's
            openid.response_nonce parameter.  The exception to this is when
            <see cref="P:DotNetOpenAuth.OpenId.RelyingParty.RelyingPartySecuritySettings.RejectUnsolicitedAssertions" /> is
            set to <c>true</c>, which will not only add a request nonce to every outgoing
            authentication request but also require that it be present in positive
            assertions, effectively disabling unsolicited assertions.
            </para>
        <para>In the messaging stack, this binding element looks like an ordinary
            transform-type of binding element rather than a protection element,
            due to its required order in the channel stack and that it exists
            only on the RP side and only on some messages.</para>
      </remarks>
    </member>
    <member name="F:DotNetOpenAuth.OpenId.ChannelElements.ReturnToNonceBindingElement.NonceParameter">
      <summary>
            The parameter of the callback parameter we tack onto the return_to URL
            to store the replay-detection nonce.
            </summary>
    </member>
    <member name="F:DotNetOpenAuth.OpenId.ChannelElements.ReturnToNonceBindingElement.NonceByteLength">
      <summary>
            The length of the generated nonce's random part.
            </summary>
    </member>
    <member name="F:DotNetOpenAuth.OpenId.ChannelElements.ReturnToNonceBindingElement.nonceStore">
      <summary>
            The nonce store that will allow us to recall which nonces we've seen before.
            </summary>
    </member>
    <member name="F:DotNetOpenAuth.OpenId.ChannelElements.ReturnToNonceBindingElement.securitySettings">
      <summary>
            The security settings at the RP.
            </summary>
    </member>
    <member name="F:DotNetOpenAuth.OpenId.ChannelElements.ReturnToNonceBindingElement.channel">
      <summary>
            Backing field for the <see cref="P:DotNetOpenAuth.OpenId.ChannelElements.ReturnToNonceBindingElement.Channel" /> property.
            </summary>
    </member>
    <member name="M:DotNetOpenAuth.OpenId.ChannelElements.ReturnToNonceBindingElement.#ctor(DotNetOpenAuth.Messaging.Bindings.INonceStore,DotNetOpenAuth.OpenId.RelyingParty.RelyingPartySecuritySettings)">
      <summary>
            Initializes a new instance of the <see cref="T:DotNetOpenAuth.OpenId.ChannelElements.ReturnToNonceBindingElement" /> class.
            </summary>
      <param name="nonceStore">The nonce store to use.</param>
      <param name="securitySettings">The security settings of the RP.</param>
    </member>
    <member name="M:DotNetOpenAuth.OpenId.ChannelElements.ReturnToNonceBindingElement.ProcessOutgoingMessage(DotNetOpenAuth.Messaging.IProtocolMessage)">
      <summary>
            Prepares a message for sending based on the rules of this channel binding element.
            </summary>
      <param name="message">The message to prepare for sending.</param>
      <returns>
            The protections (if any) that this binding element applied to the message.
            Null if this binding element did not even apply to this binding element.
            </returns>
      <remarks>
            Implementations that provide message protection must honor the
            <see cref="P:DotNetOpenAuth.Messaging.MessagePartAttribute.RequiredProtection" /> properties where applicable.
            </remarks>
    </member>
    <member name="M:DotNetOpenAuth.OpenId.ChannelElements.ReturnToNonceBindingElement.ProcessIncomingMessage(DotNetOpenAuth.Messaging.IProtocolMessage)">
      <summary>
            Performs any transformation on an incoming message that may be necessary and/or
            validates an incoming message based on the rules of this channel binding element.
            </summary>
      <param name="message">The incoming message to process.</param>
      <returns>
            The protections (if any) that this binding element applied to the message.
            Null if this binding element did not even apply to this binding element.
            </returns>
      <exception cref="T:DotNetOpenAuth.Messaging.ProtocolException">
            Thrown when the binding element rules indicate that this message is invalid and should
            NOT be processed.
            </exception>
      <remarks>
            Implementations that provide message protection must honor the
            <see cref="P:DotNetOpenAuth.Messaging.MessagePartAttribute.RequiredProtection" /> properties where applicable.
            </remarks>
    </member>
    <member name="M:DotNetOpenAuth.OpenId.ChannelElements.ReturnToNonceBindingElement.UseRequestNonce(DotNetOpenAuth.Messaging.IMessage)">
      <summary>
            Determines whether a request nonce should be applied the request
            or should be expected in the response.
            </summary>
      <param name="message">The authentication request or the positive assertion response.</param>
      <returns>
        <c>true</c> if the message exchanged with an OpenID 1.x provider
            or if unsolicited assertions should be rejected at the RP; otherwise <c>false</c>.
            </returns>
    </member>
    <member name="P:DotNetOpenAuth.OpenId.ChannelElements.ReturnToNonceBindingElement.Channel">
      <summary>
            Gets or sets the channel that this binding element belongs to.
            </summary>
      <remarks>
            This property is set by the channel when it is first constructed.
            </remarks>
    </member>
    <member name="P:DotNetOpenAuth.OpenId.ChannelElements.ReturnToNonceBindingElement.Protection">
      <summary>
            Gets the protection offered (if any) by this binding element.
            </summary>
    </member>
    <member name="P:DotNetOpenAuth.OpenId.ChannelElements.ReturnToNonceBindingElement.MaximumMessageAge">
      <summary>
            Gets the maximum message age from the standard expiration binding element.
            </summary>
    </member>
    <member name="T:DotNetOpenAuth.OpenId.ChannelElements.ReturnToNonceBindingElement.CustomNonce">
      <summary>
            A special DotNetOpenId-only nonce used by the RP when talking to 1.0 OPs in order
            to protect against replay attacks.
            </summary>
    </member>
    <member name="F:DotNetOpenAuth.OpenId.ChannelElements.ReturnToNonceBindingElement.CustomNonce.randomPart">
      <summary>
            The random bits generated for the nonce.
            </summary>
    </member>
    <member name="M:DotNetOpenAuth.OpenId.ChannelElements.ReturnToNonceBindingElement.CustomNonce.#ctor(System.DateTime,System.Byte[])">
      <summary>
            Initializes a new instance of the <see cref="T:DotNetOpenAuth.OpenId.ChannelElements.ReturnToNonceBindingElement.CustomNonce" /> class.
            </summary>
      <param name="creationDate">The creation date of the nonce.</param>
      <param name="randomPart">The random bits that help make the nonce unique.</param>
    </member>
    <member name="M:DotNetOpenAuth.OpenId.ChannelElements.ReturnToNonceBindingElement.CustomNonce.NewNonce">
      <summary>
            Creates a new nonce.
            </summary>
      <returns>The newly instantiated instance.</returns>
    </member>
    <member name="M:DotNetOpenAuth.OpenId.ChannelElements.ReturnToNonceBindingElement.CustomNonce.Deserialize(System.String)">
      <summary>
            Deserializes a nonce from the return_to parameter.
            </summary>
      <param name="value">The base64-encoded value of the nonce.</param>
      <returns>The instantiated and initialized nonce.</returns>
    </member>
    <member name="M:DotNetOpenAuth.OpenId.ChannelElements.ReturnToNonceBindingElement.CustomNonce.Serialize">
      <summary>
            Serializes the entire nonce for adding to the return_to URL.
            </summary>
      <returns>The base64-encoded string representing the nonce.</returns>
    </member>
    <member name="P:DotNetOpenAuth.OpenId.ChannelElements.ReturnToNonceBindingElement.CustomNonce.CreationDateUtc">
      <summary>
            Gets the creation date.
            </summary>
    </member>
    <member name="P:DotNetOpenAuth.OpenId.ChannelElements.ReturnToNonceBindingElement.CustomNonce.RandomPartAsString">
      <summary>
            Gets the random part of the nonce as a base64 encoded string.
            </summary>
    </member>
    <member name="T:DotNetOpenAuth.OpenId.ChannelElements.SigningBindingElement">
      <summary>
            Signs and verifies authentication assertions.
            </summary>
    </member>
    <member name="F:DotNetOpenAuth.OpenId.ChannelElements.SigningBindingElement.rpAssociations">
      <summary>
            The association store used by Relying Parties to look up the secrets needed for signing.
            </summary>
    </member>
    <member name="F:DotNetOpenAuth.OpenId.ChannelElements.SigningBindingElement.opAssociations">
      <summary>
            The association store used by Providers to look up the secrets needed for signing.
            </summary>
    </member>
    <member name="F:DotNetOpenAuth.OpenId.ChannelElements.SigningBindingElement.opSecuritySettings">
      <summary>
            The security settings at the Provider.
            Only defined when this element is instantiated to service a Provider.
            </summary>
    </member>
    <member name="M:DotNetOpenAuth.OpenId.ChannelElements.SigningBindingElement.#ctor(DotNetOpenAuth.OpenId.IAssociationStore{System.Uri})">
      <summary>
            Initializes a new instance of the SigningBindingElement class for use by a Relying Party.
            </summary>
      <param name="associationStore">The association store used to look up the secrets needed for signing.  May be null for dumb Relying Parties.</param>
    </member>
    <member name="M:DotNetOpenAuth.OpenId.ChannelElements.SigningBindingElement.#ctor(DotNetOpenAuth.OpenId.IAssociationStore{DotNetOpenAuth.OpenId.AssociationRelyingPartyType},DotNetOpenAuth.OpenId.Provider.ProviderSecuritySettings)">
      <summary>
            Initializes a new instance of the SigningBindingElement class for use by a Provider.
            </summary>
      <param name="associationStore">The association store used to look up the secrets needed for signing.</param>
      <param name="securitySettings">The security settings.</param>
    </member>
    <member name="M:DotNetOpenAuth.OpenId.ChannelElements.SigningBindingElement.ProcessOutgoingMessage(DotNetOpenAuth.Messaging.IProtocolMessage)">
      <summary>
            Prepares a message for sending based on the rules of this channel binding element.
            </summary>
      <param name="message">The message to prepare for sending.</param>
      <returns>
            The protections (if any) that this binding element applied to the message.
            Null if this binding element did not even apply to this binding element.
            </returns>
    </member>
    <member name="M:DotNetOpenAuth.OpenId.ChannelElements.SigningBindingElement.ProcessIncomingMessage(DotNetOpenAuth.Messaging.IProtocolMessage)">
      <summary>
            Performs any transformation on an incoming message that may be necessary and/or
            validates an incoming message based on the rules of this channel binding element.
            </summary>
      <param name="message">The incoming message to process.</param>
      <returns>
            The protections (if any) that this binding element applied to the message.
            Null if this binding element did not even apply to this binding element.
            </returns>
      <exception cref="T:DotNetOpenAuth.Messaging.ProtocolException">
            Thrown when the binding element rules indicate that this message is invalid and should
            NOT be processed.
            </exception>
    </member>
    <member name="M:DotNetOpenAuth.OpenId.ChannelElements.SigningBindingElement.IsRelyingPartyVulnerableToReplays(DotNetOpenAuth.OpenId.Messages.SignedResponseRequest,DotNetOpenAuth.OpenId.Messages.IndirectSignedResponse)">
      <summary>
            Determines whether the relying party sending an authentication request is
            vulnerable to replay attacks.
            </summary>
      <param name="request">The request message from the Relying Party.  Useful, but may be null for conservative estimate results.</param>
      <param name="response">The response message to be signed.</param>
      <returns>
        <c>true</c> if the relying party is vulnerable; otherwise, <c>false</c>.
            </returns>
    </member>
    <member name="M:DotNetOpenAuth.OpenId.ChannelElements.SigningBindingElement.EnsureParametersRequiringSignatureAreSigned(DotNetOpenAuth.OpenId.ChannelElements.ITamperResistantOpenIdMessage)">
      <summary>
            Ensures that all message parameters that must be signed are in fact included
            in the signature.
            </summary>
      <param name="signedMessage">The signed message.</param>
    </member>
    <member name="M:DotNetOpenAuth.OpenId.ChannelElements.SigningBindingElement.GetSignature(DotNetOpenAuth.OpenId.ChannelElements.ITamperResistantOpenIdMessage,DotNetOpenAuth.OpenId.Association)">
      <summary>
            Calculates the signature for a given message.
            </summary>
      <param name="signedMessage">The message to sign or verify.</param>
      <param name="association">The association to use to sign the message.</param>
      <returns>The calculated signature of the method.</returns>
    </member>
    <member name="M:DotNetOpenAuth.OpenId.ChannelElements.SigningBindingElement.GetSignedParameterOrder(DotNetOpenAuth.OpenId.ChannelElements.ITamperResistantOpenIdMessage)">
      <summary>
            Gets the value to use for the openid.signed parameter.
            </summary>
      <param name="signedMessage">The signable message.</param>
      <returns>
            A comma-delimited list of parameter names, omitting the 'openid.' prefix, that determines
            the inclusion and order of message parts that will be signed.
            </returns>
    </member>
    <member name="M:DotNetOpenAuth.OpenId.ChannelElements.SigningBindingElement.GetAssociation(DotNetOpenAuth.OpenId.ChannelElements.ITamperResistantOpenIdMessage)">
      <summary>
            Gets the association to use to sign or verify a message.
            </summary>
      <param name="signedMessage">The message to sign or verify.</param>
      <returns>The association to use to sign or verify the message.</returns>
    </member>
    <member name="M:DotNetOpenAuth.OpenId.ChannelElements.SigningBindingElement.GetSpecificAssociation(DotNetOpenAuth.OpenId.ChannelElements.ITamperResistantOpenIdMessage)">
      <summary>
            Gets a specific association referenced in a given message's association handle.
            </summary>
      <param name="signedMessage">The signed message whose association handle should be used to lookup the association to return.</param>
      <returns>The referenced association; or <c>null</c> if such an association cannot be found.</returns>
      <remarks>
            If the association handle set in the message does not match any valid association,
            the association handle property is cleared, and the 
            <see cref="P:DotNetOpenAuth.OpenId.ChannelElements.ITamperResistantOpenIdMessage.InvalidateHandle" /> property is set to the
            handle that could not be found.
            </remarks>
    </member>
    <member name="M:DotNetOpenAuth.OpenId.ChannelElements.SigningBindingElement.GetDumbAssociationForSigning">
      <summary>
            Gets a private Provider association used for signing messages in "dumb" mode.
            </summary>
      <returns>An existing or newly created association.</returns>
    </member>
    <member name="P:DotNetOpenAuth.OpenId.ChannelElements.SigningBindingElement.Protection">
      <summary>
            Gets the protection offered (if any) by this binding element.
            </summary>
      <value>
        <see cref="F:DotNetOpenAuth.Messaging.MessageProtections.TamperProtection" />
      </value>
    </member>
    <member name="P:DotNetOpenAuth.OpenId.ChannelElements.SigningBindingElement.Channel">
      <summary>
            Gets or sets the channel that this binding element belongs to.
            </summary>
    </member>
    <member name="P:DotNetOpenAuth.OpenId.ChannelElements.SigningBindingElement.IsOnProvider">
      <summary>
            Gets a value indicating whether this binding element is on a Provider channel.
            </summary>
    </member>
    <member name="T:DotNetOpenAuth.OpenId.ChannelElements.KeyValueFormConformanceLevel">
      <summary>
            Indicates the level of strictness to require when decoding a
            Key-Value Form encoded dictionary.
            </summary>
    </member>
    <member name="F:DotNetOpenAuth.OpenId.ChannelElements.KeyValueFormConformanceLevel.Loose">
      <summary>
            Be as forgiving as possible to errors made while encoding.
            </summary>
    </member>
    <member name="F:DotNetOpenAuth.OpenId.ChannelElements.KeyValueFormConformanceLevel.OpenId11">
      <summary>
            Allow for certain errors in encoding attributable to ambiguities
            in the OpenID 1.1 spec's description of the encoding.
            </summary>
    </member>
    <member name="F:DotNetOpenAuth.OpenId.ChannelElements.KeyValueFormConformanceLevel.OpenId20">
      <summary>
            The strictest mode.  The decoder requires the encoded dictionary
            to be in strict compliance with OpenID 2.0's description of
            the encoding.
            </summary>
    </member>
    <member name="T:DotNetOpenAuth.OpenId.ChannelElements.KeyValueFormEncoding">
      <summary>
            Performs conversion to and from the Key-Value Form Encoding defined by
            OpenID Authentication 2.0 section 4.1.1.
            http://openid.net/specs/openid-authentication-2_0.html#anchor4
            </summary>
      <remarks>
            This class is thread safe and immutable.
            </remarks>
    </member>
    <member name="F:DotNetOpenAuth.OpenId.ChannelElements.KeyValueFormEncoding.NewLineCharacters">
      <summary>
            The newline character sequence to use.
            </summary>
    </member>
    <member name="F:DotNetOpenAuth.OpenId.ChannelElements.KeyValueFormEncoding.IllegalKeyCharacters">
      <summary>
            Characters that must not appear in parameter names.
            </summary>
    </member>
    <member name="F:DotNetOpenAuth.OpenId.ChannelElements.KeyValueFormEncoding.IllegalValueCharacters">
      <summary>
            Characters that must not appaer in parameter values.
            </summary>
    </member>
    <member name="F:DotNetOpenAuth.OpenId.ChannelElements.KeyValueFormEncoding.textEncoding">
      <summary>
            The character encoding to use.
            </summary>
    </member>
    <member name="M:DotNetOpenAuth.OpenId.ChannelElements.KeyValueFormEncoding.#ctor">
      <summary>
            Initializes a new instance of the <see cref="T:DotNetOpenAuth.OpenId.ChannelElements.KeyValueFormEncoding" /> class.
            </summary>
    </member>
    <member name="M:DotNetOpenAuth.OpenId.ChannelElements.KeyValueFormEncoding.#ctor(DotNetOpenAuth.OpenId.ChannelElements.KeyValueFormConformanceLevel)">
      <summary>
            Initializes a new instance of the <see cref="T:DotNetOpenAuth.OpenId.ChannelElements.KeyValueFormEncoding" /> class.
            </summary>
      <param name="conformanceLevel">How strictly an incoming Key-Value Form message will be held to the spec.</param>
    </member>
    <member name="M:DotNetOpenAuth.OpenId.ChannelElements.KeyValueFormEncoding.GetBytes(System.Collections.Generic.IEnumerable{System.Collections.Generic.KeyValuePair{System.String,System.String}})">
      <summary>
            Encodes key/value pairs to Key-Value Form.
            </summary>
      <param name="keysAndValues">
            The dictionary of key/value pairs to convert to a byte stream.
            </param>
      <returns>The UTF8 byte array.</returns>
      <remarks>
            Enumerating a Dictionary&lt;TKey, TValue&gt; has undeterministic ordering.
            If ordering of the key=value pairs is important, a deterministic enumerator must
            be used.
            </remarks>
    </member>
    <member name="M:DotNetOpenAuth.OpenId.ChannelElements.KeyValueFormEncoding.GetDictionary(System.IO.Stream)">
      <summary>
            Decodes bytes in Key-Value Form to key/value pairs.
            </summary>
      <param name="data">The stream of Key-Value Form encoded bytes.</param>
      <returns>The deserialized dictionary.</returns>
      <exception cref="T:System.FormatException">Thrown when the data is not in the expected format.</exception>
    </member>
    <member name="P:DotNetOpenAuth.OpenId.ChannelElements.KeyValueFormEncoding.ConformanceLevel">
      <summary>
            Gets a value controlling how strictly an incoming Key-Value Form message will be held to the spec.
            </summary>
    </member>
    <member name="T:DotNetOpenAuth.OpenId.ChannelElements.OpenIdChannel">
      <summary>
            A channel that knows how to send and receive OpenID messages.
            </summary>
    </member>
    <member name="F:DotNetOpenAuth.OpenId.ChannelElements.OpenIdChannel.KeyValueFormContentType">
      <summary>
            The HTTP Content-Type to use in Key-Value Form responses.
            </summary>
      <remarks>
            OpenID 2.0 section 5.1.2 says this SHOULD be text/plain.  But this value 
            does not prevent free hosters like GoDaddy from tacking on their ads
            to the end of the direct response, corrupting the data.  So we deviate
            from the spec a bit here to improve the story for free Providers.
            </remarks>
    </member>
    <member name="F:DotNetOpenAuth.OpenId.ChannelElements.OpenIdChannel.keyValueForm">
      <summary>
            The encoder that understands how to read and write Key-Value Form.
            </summary>
    </member>
    <member name="M:DotNetOpenAuth.OpenId.ChannelElements.OpenIdChannel.#ctor(DotNetOpenAuth.OpenId.IAssociationStore{System.Uri},DotNetOpenAuth.Messaging.Bindings.INonceStore,DotNetOpenAuth.OpenId.RelyingParty.RelyingPartySecuritySettings)">
      <summary>
            Initializes a new instance of the <see cref="T:DotNetOpenAuth.OpenId.ChannelElements.OpenIdChannel" /> class
            for use by a Relying Party.
            </summary>
      <param name="associationStore">The association store to use.</param>
      <param name="nonceStore">The nonce store to use.</param>
      <param name="securitySettings">The security settings to apply.</param>
    </member>
    <member name="M:DotNetOpenAuth.OpenId.ChannelElements.OpenIdChannel.#ctor(DotNetOpenAuth.OpenId.IAssociationStore{DotNetOpenAuth.OpenId.AssociationRelyingPartyType},DotNetOpenAuth.Messaging.Bindings.INonceStore,DotNetOpenAuth.OpenId.Provider.ProviderSecuritySettings)">
      <summary>
            Initializes a new instance of the <see cref="T:DotNetOpenAuth.OpenId.ChannelElements.OpenIdChannel" /> class
            for use by a Provider.
            </summary>
      <param name="associationStore">The association store to use.</param>
      <param name="nonceStore">The nonce store to use.</param>
      <param name="securitySettings">The security settings.</param>
    </member>
    <member name="M:DotNetOpenAuth.OpenId.ChannelElements.OpenIdChannel.#ctor(DotNetOpenAuth.OpenId.IAssociationStore{System.Uri},DotNetOpenAuth.Messaging.Bindings.INonceStore,DotNetOpenAuth.Messaging.IMessageFactory,DotNetOpenAuth.OpenId.RelyingParty.RelyingPartySecuritySettings,System.Boolean)">
      <summary>
            Initializes a new instance of the <see cref="T:DotNetOpenAuth.OpenId.ChannelElements.OpenIdChannel" /> class
            for use by a Relying Party.
            </summary>
      <param name="associationStore">The association store to use.</param>
      <param name="nonceStore">The nonce store to use.</param>
      <param name="messageTypeProvider">An object that knows how to distinguish the various OpenID message types for deserialization purposes.</param>
      <param name="securitySettings">The security settings to apply.</param>
      <param name="nonVerifying">A value indicating whether the channel is set up with no functional security binding elements.</param>
    </member>
    <member name="M:DotNetOpenAuth.OpenId.ChannelElements.OpenIdChannel.#ctor(DotNetOpenAuth.OpenId.IAssociationStore{DotNetOpenAuth.OpenId.AssociationRelyingPartyType},DotNetOpenAuth.Messaging.Bindings.INonceStore,DotNetOpenAuth.Messaging.IMessageFactory,DotNetOpenAuth.OpenId.Provider.ProviderSecuritySettings)">
      <summary>
            Initializes a new instance of the <see cref="T:DotNetOpenAuth.OpenId.ChannelElements.OpenIdChannel" /> class
            for use by a Provider.
            </summary>
      <param name="associationStore">The association store to use.</param>
      <param name="nonceStore">The nonce store to use.</param>
      <param name="messageTypeProvider">An object that knows how to distinguish the various OpenID message types for deserialization purposes.</param>
      <param name="securitySettings">The security settings.</param>
    </member>
    <member name="M:DotNetOpenAuth.OpenId.ChannelElements.OpenIdChannel.#ctor(DotNetOpenAuth.Messaging.IMessageFactory,DotNetOpenAuth.Messaging.IChannelBindingElement[])">
      <summary>
            Initializes a new instance of the <see cref="T:DotNetOpenAuth.OpenId.ChannelElements.OpenIdChannel" /> class.
            </summary>
      <param name="messageTypeProvider">A class prepared to analyze incoming messages and indicate what concrete
            message types can deserialize from it.</param>
      <param name="bindingElements">The binding elements to use in sending and receiving messages.</param>
    </member>
    <member name="M:DotNetOpenAuth.OpenId.ChannelElements.OpenIdChannel.CreateNonVerifyingChannel">
      <summary>
            A value indicating whether the channel is set up
            with no functional security binding elements.
            </summary>
      <returns>A new <see cref="T:DotNetOpenAuth.OpenId.ChannelElements.OpenIdChannel" /> instance that will not perform verification on incoming messages or apply any security to outgoing messages.</returns>
      <remarks>
        <para>A value of <c>true</c> allows the relying party to preview incoming
            messages without invalidating nonces or checking signatures.</para>
        <para>Setting this to <c>true</c> poses a great security risk and is only
            present to support the <see cref="T:DotNetOpenAuth.OpenId.RelyingParty.OpenIdAjaxTextBox" /> which needs to preview
            messages, and will validate them later.</para>
      </remarks>
    </member>
    <member name="M:DotNetOpenAuth.OpenId.ChannelElements.OpenIdChannel.ProcessIncomingMessage(DotNetOpenAuth.Messaging.IProtocolMessage)">
      <summary>
            Verifies the integrity and applicability of an incoming message.
            </summary>
      <param name="message">The message just received.</param>
      <exception cref="T:DotNetOpenAuth.Messaging.ProtocolException">
            Thrown when the message is somehow invalid, except for check_authentication messages.
            This can be due to tampering, replay attack or expiration, among other things.
            </exception>
    </member>
    <member name="M:DotNetOpenAuth.OpenId.ChannelElements.OpenIdChannel.CreateHttpRequest(DotNetOpenAuth.Messaging.IDirectedProtocolMessage)">
      <summary>
            Prepares an HTTP request that carries a given message.
            </summary>
      <param name="request">The message to send.</param>
      <returns>
            The <see cref="T:System.Net.HttpWebRequest" /> prepared to send the request.
            </returns>
    </member>
    <member name="M:DotNetOpenAuth.OpenId.ChannelElements.OpenIdChannel.ReadFromResponseCore(DotNetOpenAuth.Messaging.IncomingWebResponse)">
      <summary>
            Gets the protocol message that may be in the given HTTP response.
            </summary>
      <param name="response">The response that is anticipated to contain an protocol message.</param>
      <returns>
            The deserialized message parts, if found.  Null otherwise.
            </returns>
      <exception cref="T:DotNetOpenAuth.Messaging.ProtocolException">Thrown when the response is not valid.</exception>
    </member>
    <member name="M:DotNetOpenAuth.OpenId.ChannelElements.OpenIdChannel.OnReceivingDirectResponse(DotNetOpenAuth.Messaging.IncomingWebResponse,DotNetOpenAuth.Messaging.IDirectResponseProtocolMessage)">
      <summary>
            Called when receiving a direct response message, before deserialization begins.
            </summary>
      <param name="response">The HTTP direct response.</param>
      <param name="message">The newly instantiated message, prior to deserialization.</param>
    </member>
    <member name="M:DotNetOpenAuth.OpenId.ChannelElements.OpenIdChannel.PrepareDirectResponse(DotNetOpenAuth.Messaging.IProtocolMessage)">
      <summary>
            Queues a message for sending in the response stream where the fields
            are sent in the response stream in querystring style.
            </summary>
      <param name="response">The message to send as a response.</param>
      <returns>
            The pending user agent redirect based message to be sent as an HttpResponse.
            </returns>
      <remarks>
            This method implements spec V1.0 section 5.3.
            </remarks>
    </member>
    <member name="M:DotNetOpenAuth.OpenId.ChannelElements.OpenIdChannel.GetDirectResponse(System.Net.HttpWebRequest)">
      <summary>
            Gets the direct response of a direct HTTP request.
            </summary>
      <param name="webRequest">The web request.</param>
      <returns>The response to the web request.</returns>
      <exception cref="T:DotNetOpenAuth.Messaging.ProtocolException">Thrown on network or protocol errors.</exception>
    </member>
    <member name="M:DotNetOpenAuth.OpenId.ChannelElements.OpenIdChannel.InitializeBindingElements``1(DotNetOpenAuth.OpenId.IAssociationStore{``0},DotNetOpenAuth.Messaging.Bindings.INonceStore,DotNetOpenAuth.OpenId.SecuritySettings,System.Boolean)">
      <summary>
            Initializes the binding elements.
            </summary>
      <typeparam name="T">The distinguishing factor used by the association store.</typeparam>
      <param name="associationStore">The association store.</param>
      <param name="nonceStore">The nonce store to use.</param>
      <param name="securitySettings">The security settings to apply.  Must be an instance of either <see cref="T:DotNetOpenAuth.OpenId.RelyingParty.RelyingPartySecuritySettings" /> or <see cref="T:DotNetOpenAuth.OpenId.Provider.ProviderSecuritySettings" />.</param>
      <param name="nonVerifying">A value indicating whether the channel is set up with no functional security binding elements.</param>
      <returns>
            An array of binding elements which may be used to construct the channel.
            </returns>
    </member>
    <member name="T:DotNetOpenAuth.OpenId.ChannelElements.OpenIdMessageFactory">
      <summary>
            Distinguishes the various OpenID message types for deserialization purposes.
            </summary>
    </member>
    <member name="M:DotNetOpenAuth.OpenId.ChannelElements.OpenIdMessageFactory.GetNewRequestMessage(DotNetOpenAuth.Messaging.MessageReceivingEndpoint,System.Collections.Generic.IDictionary{System.String,System.String})">
      <summary>
            Analyzes an incoming request message payload to discover what kind of
            message is embedded in it and returns the type, or null if no match is found.
            </summary>
      <param name="recipient">The intended or actual recipient of the request message.</param>
      <param name="fields">The name/value pairs that make up the message payload.</param>
      <returns>
            A newly instantiated <see cref="T:DotNetOpenAuth.Messaging.IProtocolMessage" />-derived object that this message can
            deserialize to.  Null if the request isn't recognized as a valid protocol message.
            </returns>
    </member>
    <member name="M:DotNetOpenAuth.OpenId.ChannelElements.OpenIdMessageFactory.GetNewResponseMessage(DotNetOpenAuth.Messaging.IDirectedProtocolMessage,System.Collections.Generic.IDictionary{System.String,System.String})">
      <summary>
            Analyzes an incoming request message payload to discover what kind of
            message is embedded in it and returns the type, or null if no match is found.
            </summary>
      <param name="request">The message that was sent as a request that resulted in the response.</param>
      <param name="fields">The name/value pairs that make up the message payload.</param>
      <returns>
            A newly instantiated <see cref="T:DotNetOpenAuth.Messaging.IProtocolMessage" />-derived object that this message can
            deserialize to.  Null if the request isn't recognized as a valid protocol message.
            </returns>
    </member>
    <member name="T:DotNetOpenAuth.OpenId.ChannelElements.ReturnToSignatureBindingElement">
      <summary>
            This binding element signs a Relying Party's openid.return_to parameter
            so that upon return, it can verify that it hasn't been tampered with.
            </summary>
      <remarks>
        <para>Since Providers can send unsolicited assertions, not all openid.return_to
            values will be signed.  But those that are signed will be validated, and
            any invalid or missing signatures will cause this library to not trust
            the parameters in the return_to URL.</para>
        <para>In the messaging stack, this binding element looks like an ordinary
            transform-type of binding element rather than a protection element,
            due to its required order in the channel stack and that it doesn't sign
            anything except a particular message part.</para>
      </remarks>
    </member>
    <member name="F:DotNetOpenAuth.OpenId.ChannelElements.ReturnToSignatureBindingElement.ReturnToSignatureParameterName">
      <summary>
            The name of the callback parameter we'll tack onto the return_to value
            to store our signature on the return_to parameter.
            </summary>
    </member>
    <member name="F:DotNetOpenAuth.OpenId.ChannelElements.ReturnToSignatureBindingElement.ReturnToSignatureHandleParameterName">
      <summary>
            The name of the callback parameter we'll tack onto the return_to value
            to store the handle of the association we use to sign the return_to parameter.
            </summary>
    </member>
    <member name="F:DotNetOpenAuth.OpenId.ChannelElements.ReturnToSignatureBindingElement.secretManager">
      <summary>
            The hashing algorithm used to generate the private signature on the return_to parameter.
            </summary>
    </member>
    <member name="M:DotNetOpenAuth.OpenId.ChannelElements.ReturnToSignatureBindingElement.#ctor(DotNetOpenAuth.OpenId.IAssociationStore{System.Uri},DotNetOpenAuth.OpenId.RelyingParty.RelyingPartySecuritySettings)">
      <summary>
            Initializes a new instance of the <see cref="T:DotNetOpenAuth.OpenId.ChannelElements.ReturnToSignatureBindingElement" /> class.
            </summary>
      <param name="secretStore">The secret store from which to retrieve the secret used for signing.</param>
      <param name="securitySettings">The security settings.</param>
    </member>
    <member name="M:DotNetOpenAuth.OpenId.ChannelElements.ReturnToSignatureBindingElement.ProcessOutgoingMessage(DotNetOpenAuth.Messaging.IProtocolMessage)">
      <summary>
            Prepares a message for sending based on the rules of this channel binding element.
            </summary>
      <param name="message">The message to prepare for sending.</param>
      <returns>
            The protections (if any) that this binding element applied to the message.
            Null if this binding element did not even apply to this binding element.
            </returns>
      <remarks>
            Implementations that provide message protection must honor the
            <see cref="P:DotNetOpenAuth.Messaging.MessagePartAttribute.RequiredProtection" /> properties where applicable.
            </remarks>
    </member>
    <member name="M:DotNetOpenAuth.OpenId.ChannelElements.ReturnToSignatureBindingElement.ProcessIncomingMessage(DotNetOpenAuth.Messaging.IProtocolMessage)">
      <summary>
            Performs any transformation on an incoming message that may be necessary and/or
            validates an incoming message based on the rules of this channel binding element.
            </summary>
      <param name="message">The incoming message to process.</param>
      <returns>
            The protections (if any) that this binding element applied to the message.
            Null if this binding element did not even apply to this binding element.
            </returns>
      <exception cref="T:DotNetOpenAuth.Messaging.ProtocolException">
            Thrown when the binding element rules indicate that this message is invalid and should
            NOT be processed.
            </exception>
      <remarks>
            Implementations that provide message protection must honor the
            <see cref="P:DotNetOpenAuth.Messaging.MessagePartAttribute.RequiredProtection" /> properties where applicable.
            </remarks>
    </member>
    <member name="M:DotNetOpenAuth.OpenId.ChannelElements.ReturnToSignatureBindingElement.GetReturnToSignature(System.Uri)">
      <summary>
            Gets the return to signature.
            </summary>
      <param name="returnTo">The return to.</param>
      <returns>The generated signature.</returns>
      <remarks>
            Only the parameters in the return_to URI are signed, rather than the base URI
            itself, in order that OPs that might change the return_to's implicit port :80 part
            or other minor changes do not invalidate the signature.
            </remarks>
    </member>
    <member name="P:DotNetOpenAuth.OpenId.ChannelElements.ReturnToSignatureBindingElement.Channel">
      <summary>
            Gets or sets the channel that this binding element belongs to.
            </summary>
      <value />
      <remarks>
            This property is set by the channel when it is first constructed.
            </remarks>
    </member>
    <member name="P:DotNetOpenAuth.OpenId.ChannelElements.ReturnToSignatureBindingElement.Protection">
      <summary>
            Gets the protection offered (if any) by this binding element.
            </summary>
      <value>
        <see cref="F:DotNetOpenAuth.Messaging.MessageProtections.None" />
      </value>
      <remarks>
            No message protection is reported because this binding element
            does not protect the entire message -- only a part.
            </remarks>
    </member>
    <member name="T:DotNetOpenAuth.OpenId.ChannelElements.SkipSecurityBindingElement">
      <summary>
            Spoofs security checks on incoming OpenID messages.
            </summary>
    </member>
    <member name="M:DotNetOpenAuth.OpenId.ChannelElements.SkipSecurityBindingElement.ProcessOutgoingMessage(DotNetOpenAuth.Messaging.IProtocolMessage)">
      <summary>
            Prepares a message for sending based on the rules of this channel binding element.
            </summary>
      <param name="message">The message to prepare for sending.</param>
      <returns>
            The protections (if any) that this binding element applied to the message.
            Null if this binding element did not even apply to this binding element.
            </returns>
      <remarks>
            Implementations that provide message protection must honor the
            <see cref="P:DotNetOpenAuth.Messaging.MessagePartAttribute.RequiredProtection" /> properties where applicable.
            </remarks>
    </member>
    <member name="M:DotNetOpenAuth.OpenId.ChannelElements.SkipSecurityBindingElement.ProcessIncomingMessage(DotNetOpenAuth.Messaging.IProtocolMessage)">
      <summary>
            Performs any transformation on an incoming message that may be necessary and/or
            validates an incoming message based on the rules of this channel binding element.
            </summary>
      <param name="message">The incoming message to process.</param>
      <returns>
            The protections (if any) that this binding element applied to the message.
            Null if this binding element did not even apply to this binding element.
            </returns>
      <exception cref="T:DotNetOpenAuth.Messaging.ProtocolException">
            Thrown when the binding element rules indicate that this message is invalid and should
            NOT be processed.
            </exception>
      <remarks>
            Implementations that provide message protection must honor the
            <see cref="P:DotNetOpenAuth.Messaging.MessagePartAttribute.RequiredProtection" /> properties where applicable.
            </remarks>
    </member>
    <member name="P:DotNetOpenAuth.OpenId.ChannelElements.SkipSecurityBindingElement.Channel">
      <summary>
            Gets or sets the channel that this binding element belongs to.
            </summary>
      <value />
      <remarks>
            This property is set by the channel when it is first constructed.
            </remarks>
    </member>
    <member name="P:DotNetOpenAuth.OpenId.ChannelElements.SkipSecurityBindingElement.Protection">
      <summary>
            Gets the protection commonly offered (if any) by this binding element.
            </summary>
      <value>
        <see cref="F:DotNetOpenAuth.Messaging.MessageProtections.All" />
      </value>
      <remarks>
            This value is used to assist in sorting binding elements in the channel stack.
            </remarks>
    </member>
    <member name="T:DotNetOpenAuth.OpenId.AssociationContract">
      <summary>
            Code contract for the <see cref="T:DotNetOpenAuth.OpenId.Association" /> class.
            </summary>
    </member>
    <member name="M:DotNetOpenAuth.OpenId.AssociationContract.#ctor">
      <summary>
            Prevents a default instance of the <see cref="T:DotNetOpenAuth.OpenId.AssociationContract" /> class from being created.
            </summary>
    </member>
    <member name="M:DotNetOpenAuth.OpenId.AssociationContract.GetAssociationType(DotNetOpenAuth.OpenId.Protocol)">
      <summary>
            The string to pass as the assoc_type value in the OpenID protocol.
            </summary>
      <param name="protocol">The protocol version of the message that the assoc_type value will be included in.</param>
      <returns>
            The value that should be used for  the openid.assoc_type parameter.
            </returns>
    </member>
    <member name="M:DotNetOpenAuth.OpenId.AssociationContract.CreateHasher">
      <summary>
            Returns the specific hash algorithm used for message signing.
            </summary>
      <returns>
            The hash algorithm used for message signing.
            </returns>
    </member>
    <member name="P:DotNetOpenAuth.OpenId.AssociationContract.HashBitLength">
      <summary>
            Gets the length (in bits) of the hash this association creates when signing.
            </summary>
    </member>
    <member name="T:DotNetOpenAuth.OpenId.Extensions.AliasManager">
      <summary>
            Manages a fast, two-way mapping between type URIs and their aliases.
            </summary>
    </member>
    <member name="F:DotNetOpenAuth.OpenId.Extensions.AliasManager.AliasFormat">
      <summary>
            The format of auto-generated aliases.
            </summary>
    </member>
    <member name="F:DotNetOpenAuth.OpenId.Extensions.AliasManager.typeUriToAliasMap">
      <summary>
            Tracks extension Type URIs and aliases assigned to them.
            </summary>
    </member>
    <member name="F:DotNetOpenAuth.OpenId.Extensions.AliasManager.aliasToTypeUriMap">
      <summary>
            Tracks extension aliases and Type URIs assigned to them.
            </summary>
    </member>
    <member name="M:DotNetOpenAuth.OpenId.Extensions.AliasManager.GetAlias(System.String)">
      <summary>
            Gets an alias assigned for a given Type URI.  A new alias is assigned if necessary.
            </summary>
      <param name="typeUri">The type URI.</param>
      <returns>The alias assigned to this type URI.  Never null.</returns>
    </member>
    <member name="M:DotNetOpenAuth.OpenId.Extensions.AliasManager.SetAlias(System.String,System.String)">
      <summary>
            Sets an alias and the value that will be returned by <see cref="M:DotNetOpenAuth.OpenId.Extensions.AliasManager.ResolveAlias(System.String)" />.
            </summary>
      <param name="alias">The alias.</param>
      <param name="typeUri">The type URI.</param>
    </member>
    <member name="M:DotNetOpenAuth.OpenId.Extensions.AliasManager.AssignAliases(System.Collections.Generic.IEnumerable{System.String},System.Collections.Generic.IDictionary{System.String,System.String})">
      <summary>
            Takes a sequence of type URIs and assigns aliases for all of them.
            </summary>
      <param name="typeUris">The type URIs to create aliases for.</param>
      <param name="preferredTypeUriToAliases">An optional dictionary of URI/alias pairs that suggest preferred aliases to use if available for certain type URIs.</param>
    </member>
    <member name="M:DotNetOpenAuth.OpenId.Extensions.AliasManager.SetPreferredAliasesWhereNotSet(System.Collections.Generic.IDictionary{System.String,System.String})">
      <summary>
            Sets up aliases for any Type URIs in a dictionary that do not yet have aliases defined,
            and where the given preferred alias is still available.
            </summary>
      <param name="preferredTypeUriToAliases">A dictionary of type URI keys and alias values.</param>
    </member>
    <member name="M:DotNetOpenAuth.OpenId.Extensions.AliasManager.ResolveAlias(System.String)">
      <summary>
            Gets the Type Uri encoded by a given alias.
            </summary>
      <param name="alias">The alias.</param>
      <returns>The Type URI.</returns>
      <exception cref="T:System.ArgumentOutOfRangeException">Thrown if the given alias does not have a matching TypeURI.</exception>
    </member>
    <member name="M:DotNetOpenAuth.OpenId.Extensions.AliasManager.TryResolveAlias(System.String)">
      <summary>
            Gets the Type Uri encoded by a given alias.
            </summary>
      <param name="alias">The alias.</param>
      <returns>The Type URI for the given alias, or null if none for that alias exist.</returns>
    </member>
    <member name="M:DotNetOpenAuth.OpenId.Extensions.AliasManager.IsAliasUsed(System.String)">
      <summary>
            Returns a value indicating whether an alias has already been assigned to a type URI.
            </summary>
      <param name="alias">The alias in question.</param>
      <returns>True if the alias has already been assigned.  False otherwise.</returns>
    </member>
    <member name="M:DotNetOpenAuth.OpenId.Extensions.AliasManager.IsAliasAssignedTo(System.String)">
      <summary>
            Determines whether a given TypeURI has an associated alias assigned to it.
            </summary>
      <param name="typeUri">The type URI.</param>
      <returns>
        <c>true</c> if the given type URI already has an alias assigned; <c>false</c> otherwise.
            </returns>
    </member>
    <member name="M:DotNetOpenAuth.OpenId.Extensions.AliasManager.AssignNewAlias(System.String)">
      <summary>
            Assigns a new alias to a given Type URI.
            </summary>
      <param name="typeUri">The type URI to assign a new alias to.</param>
      <returns>The newly generated alias.</returns>
    </member>
    <member name="P:DotNetOpenAuth.OpenId.Extensions.AliasManager.Aliases">
      <summary>
            Gets the aliases that have been set.
            </summary>
    </member>
    <member name="T:DotNetOpenAuth.OpenId.Extensions.AttributeExchange.AttributeRequest">
      <summary>
            An individual attribute to be requested of the OpenID Provider using
            the Attribute Exchange extension.
            </summary>
    </member>
    <member name="F:DotNetOpenAuth.OpenId.Extensions.AttributeExchange.AttributeRequest.count">
      <summary>
            Backing field for the <see cref="P:DotNetOpenAuth.OpenId.Extensions.AttributeExchange.AttributeRequest.Count" /> property.
            </summary>
    </member>
    <member name="M:DotNetOpenAuth.OpenId.Extensions.AttributeExchange.AttributeRequest.#ctor">
      <summary>
            Initializes a new instance of the <see cref="T:DotNetOpenAuth.OpenId.Extensions.AttributeExchange.AttributeRequest" /> class
            with <see cref="P:DotNetOpenAuth.OpenId.Extensions.AttributeExchange.AttributeRequest.IsRequired" /> = false, <see cref="P:DotNetOpenAuth.OpenId.Extensions.AttributeExchange.AttributeRequest.Count" /> = 1.
            </summary>
    </member>
    <member name="M:DotNetOpenAuth.OpenId.Extensions.AttributeExchange.AttributeRequest.#ctor(System.String)">
      <summary>
            Initializes a new instance of the <see cref="T:DotNetOpenAuth.OpenId.Extensions.AttributeExchange.AttributeRequest" /> class
            with <see cref="P:DotNetOpenAuth.OpenId.Extensions.AttributeExchange.AttributeRequest.IsRequired" /> = false, <see cref="P:DotNetOpenAuth.OpenId.Extensions.AttributeExchange.AttributeRequest.Count" /> = 1.
            </summary>
      <param name="typeUri">The unique TypeURI for that describes the attribute being sought.</param>
    </member>
    <member name="M:DotNetOpenAuth.OpenId.Extensions.AttributeExchange.AttributeRequest.#ctor(System.String,System.Boolean)">
      <summary>
            Initializes a new instance of the <see cref="T:DotNetOpenAuth.OpenId.Extensions.AttributeExchange.AttributeRequest" /> class
            with <see cref="P:DotNetOpenAuth.OpenId.Extensions.AttributeExchange.AttributeRequest.Count" /> = 1.
            </summary>
      <param name="typeUri">The unique TypeURI for that describes the attribute being sought.</param>
      <param name="isRequired">A value indicating whether the Relying Party considers this attribute to be required for registration.</param>
    </member>
    <member name="M:DotNetOpenAuth.OpenId.Extensions.AttributeExchange.AttributeRequest.#ctor(System.String,System.Boolean,System.Int32)">
      <summary>
            Initializes a new instance of the <see cref="T:DotNetOpenAuth.OpenId.Extensions.AttributeExchange.AttributeRequest" /> class.
            </summary>
      <param name="typeUri">The unique TypeURI for that describes the attribute being sought.</param>
      <param name="isRequired">A value indicating whether the Relying Party considers this attribute to be required for registration.</param>
      <param name="count">The maximum number of values for this attribute the Relying Party is prepared to receive.</param>
    </member>
    <member name="M:DotNetOpenAuth.OpenId.Extensions.AttributeExchange.AttributeRequest.Respond(System.String[])">
      <summary>
            Used by a Provider to create a response to a request for an attribute's value(s)
            using a given array of strings.
            </summary>
      <param name="values">The values for the requested attribute.</param>
      <returns>
            The newly created <see cref="T:DotNetOpenAuth.OpenId.Extensions.AttributeExchange.AttributeValues" /> object that should be added to
            the <see cref="T:DotNetOpenAuth.OpenId.Extensions.AttributeExchange.FetchResponse" /> object.
            </returns>
    </member>
    <member name="M:DotNetOpenAuth.OpenId.Extensions.AttributeExchange.AttributeRequest.Equals(System.Object)">
      <summary>
            Determines whether the specified <see cref="T:System.Object" /> is equal to the current <see cref="T:System.Object" />.
            </summary>
      <param name="obj">The <see cref="T:System.Object" /> to compare with the current <see cref="T:System.Object" />.</param>
      <returns>
            true if the specified <see cref="T:System.Object" /> is equal to the current <see cref="T:System.Object" />; otherwise, false.
            </returns>
      <exception cref="T:System.NullReferenceException">
            The <paramref name="obj" /> parameter is null.
            </exception>
    </member>
    <member name="M:DotNetOpenAuth.OpenId.Extensions.AttributeExchange.AttributeRequest.GetHashCode">
      <summary>
            Serves as a hash function for a particular type.
            </summary>
      <returns>
            A hash code for the current <see cref="T:System.Object" />.
            </returns>
    </member>
    <member name="P:DotNetOpenAuth.OpenId.Extensions.AttributeExchange.AttributeRequest.TypeUri">
      <summary>
            Gets or sets the URI uniquely identifying the attribute being requested.
            </summary>
    </member>
    <member name="P:DotNetOpenAuth.OpenId.Extensions.AttributeExchange.AttributeRequest.IsRequired">
      <summary>
            Gets or sets a value indicating whether the relying party considers this a required field.
            Note that even if set to true, the Provider may not provide the value.
            </summary>
    </member>
    <member name="P:DotNetOpenAuth.OpenId.Extensions.AttributeExchange.AttributeRequest.Count">
      <summary>
            Gets or sets the maximum number of values for this attribute the 
            Relying Party wishes to receive from the OpenID Provider.
            A value of int.MaxValue is considered infinity.
            </summary>
    </member>
    <member name="T:DotNetOpenAuth.OpenId.Extensions.AttributeExchange.AttributeValues">
      <summary>
            An individual attribute's value(s) as supplied by an OpenID Provider
            in response to a prior request by an OpenID Relying Party as part of
            a fetch request, or by a relying party as part of a store request.
            </summary>
    </member>
    <member name="M:DotNetOpenAuth.OpenId.Extensions.AttributeExchange.AttributeValues.#ctor(System.String,System.String[])">
      <summary>
            Initializes a new instance of the <see cref="T:DotNetOpenAuth.OpenId.Extensions.AttributeExchange.AttributeValues" /> class.
            </summary>
      <param name="typeUri">The TypeURI that uniquely identifies the attribute.</param>
      <param name="values">The values for the attribute.</param>
    </member>
    <member name="M:DotNetOpenAuth.OpenId.Extensions.AttributeExchange.AttributeValues.#ctor">
      <summary>
            Initializes a new instance of the <see cref="T:DotNetOpenAuth.OpenId.Extensions.AttributeExchange.AttributeValues" /> class.
            </summary>
      <remarks>
            This is internal because web sites should be using the
            <see cref="M:DotNetOpenAuth.OpenId.Extensions.AttributeExchange.AttributeRequest.Respond(System.String[])" /> method to instantiate.
            </remarks>
    </member>
    <member name="M:DotNetOpenAuth.OpenId.Extensions.AttributeExchange.AttributeValues.#ctor(System.String)">
      <summary>
            Initializes a new instance of the <see cref="T:DotNetOpenAuth.OpenId.Extensions.AttributeExchange.AttributeValues" /> class.
            </summary>
      <param name="typeUri">The TypeURI of the attribute whose values are being provided.</param>
    </member>
    <member name="M:DotNetOpenAuth.OpenId.Extensions.AttributeExchange.AttributeValues.Equals(System.Object)">
      <summary>
            Determines whether the specified <see cref="T:System.Object" /> is equal to the current <see cref="T:System.Object" />.
            </summary>
      <param name="obj">The <see cref="T:System.Object" /> to compare with the current <see cref="T:System.Object" />.</param>
      <returns>
            true if the specified <see cref="T:System.Object" /> is equal to the current <see cref="T:System.Object" />; otherwise, false.
            </returns>
      <exception cref="T:System.NullReferenceException">
            The <paramref name="obj" /> parameter is null.
            </exception>
    </member>
    <member name="M:DotNetOpenAuth.OpenId.Extensions.AttributeExchange.AttributeValues.GetHashCode">
      <summary>
            Serves as a hash function for a particular type.
            </summary>
      <returns>
            A hash code for the current <see cref="T:System.Object" />.
            </returns>
    </member>
    <member name="P:DotNetOpenAuth.OpenId.Extensions.AttributeExchange.AttributeValues.TypeUri">
      <summary>
            Gets the URI uniquely identifying the attribute whose value is being supplied.
            </summary>
    </member>
    <member name="P:DotNetOpenAuth.OpenId.Extensions.AttributeExchange.AttributeValues.Values">
      <summary>
            Gets the values supplied by the Provider.
            </summary>
    </member>
    <member name="T:DotNetOpenAuth.OpenId.Extensions.AttributeExchange.AXAttributeFormats">
      <summary>
            The various Type URI formats an AX attribute may use by various remote parties.
            </summary>
    </member>
    <member name="F:DotNetOpenAuth.OpenId.Extensions.AttributeExchange.AXAttributeFormats.None">
      <summary>
            No attribute format.
            </summary>
    </member>
    <member name="F:DotNetOpenAuth.OpenId.Extensions.AttributeExchange.AXAttributeFormats.AXSchemaOrg">
      <summary>
            AX attributes should use the Type URI format starting with <c>http://axschema.org/</c>.
            </summary>
    </member>
    <member name="F:DotNetOpenAuth.OpenId.Extensions.AttributeExchange.AXAttributeFormats.SchemaOpenIdNet">
      <summary>
            AX attributes should use the Type URI format starting with <c>http://schema.openid.net/</c>.
            </summary>
    </member>
    <member name="F:DotNetOpenAuth.OpenId.Extensions.AttributeExchange.AXAttributeFormats.OpenIdNetSchema">
      <summary>
            AX attributes should use the Type URI format starting with <c>http://openid.net/schema/</c>.
            </summary>
    </member>
    <member name="F:DotNetOpenAuth.OpenId.Extensions.AttributeExchange.AXAttributeFormats.All">
      <summary>
            All known schemas.
            </summary>
    </member>
    <member name="F:DotNetOpenAuth.OpenId.Extensions.AttributeExchange.AXAttributeFormats.Common">
      <summary>
            The most common schemas.
            </summary>
    </member>
    <member name="T:DotNetOpenAuth.OpenId.Extensions.AttributeExchange.AXUtilities">
      <summary>
            Helper methods shared by multiple messages in the Attribute Exchange extension.
            </summary>
    </member>
    <member name="M:DotNetOpenAuth.OpenId.Extensions.AttributeExchange.AXUtilities.AddRequired(System.Collections.Generic.ICollection{DotNetOpenAuth.OpenId.Extensions.AttributeExchange.AttributeRequest},System.String)">
      <summary>
            Adds a request for an attribute considering it 'required'.
            </summary>
      <param name="collection">The attribute request collection.</param>
      <param name="typeUri">The type URI of the required attribute.</param>
    </member>
    <member name="M:DotNetOpenAuth.OpenId.Extensions.AttributeExchange.AXUtilities.AddOptional(System.Collections.Generic.ICollection{DotNetOpenAuth.OpenId.Extensions.AttributeExchange.AttributeRequest},System.String)">
      <summary>
            Adds a request for an attribute without considering it 'required'.
            </summary>
      <param name="collection">The attribute request collection.</param>
      <param name="typeUri">The type URI of the requested attribute.</param>
    </member>
    <member name="M:DotNetOpenAuth.OpenId.Extensions.AttributeExchange.AXUtilities.Add(System.Collections.Generic.ICollection{DotNetOpenAuth.OpenId.Extensions.AttributeExchange.AttributeValues},System.String,System.String[])">
      <summary>
            Adds a given attribute with one or more values to the request for storage.
            Applicable to Relying Parties only.
            </summary>
      <param name="collection">The collection of <see cref="T:DotNetOpenAuth.OpenId.Extensions.AttributeExchange.AttributeValues" /> to add to.</param>
      <param name="typeUri">The type URI of the attribute.</param>
      <param name="values">The attribute values.</param>
    </member>
    <member name="M:DotNetOpenAuth.OpenId.Extensions.AttributeExchange.AXUtilities.SerializeAttributes(System.Collections.Generic.IDictionary{System.String,System.String},System.Collections.Generic.IEnumerable{DotNetOpenAuth.OpenId.Extensions.AttributeExchange.AttributeValues})">
      <summary>
            Serializes a set of attribute values to a dictionary of fields to send in the message.
            </summary>
      <param name="fields">The dictionary to fill with serialized attributes.</param>
      <param name="attributes">The attributes.</param>
    </member>
    <member name="M:DotNetOpenAuth.OpenId.Extensions.AttributeExchange.AXUtilities.DeserializeAttributes(System.Collections.Generic.IDictionary{System.String,System.String})">
      <summary>
            Deserializes attribute values from an incoming set of message data.
            </summary>
      <param name="fields">The data coming in with the message.</param>
      <returns>The attribute values found in the message.</returns>
    </member>
    <member name="M:DotNetOpenAuth.OpenId.Extensions.AttributeExchange.AXUtilities.ParseAliases(System.Collections.Generic.IDictionary{System.String,System.String})">
      <summary>
            Reads through the attributes included in the response to discover
            the alias-TypeURI relationships.
            </summary>
      <param name="fields">The data included in the extension message.</param>
      <returns>The alias manager that provides lookup between aliases and type URIs.</returns>
    </member>
    <member name="T:DotNetOpenAuth.OpenId.Extensions.AttributeExchange.Constants">
      <summary>
            Attribute Exchange constants
            </summary>
    </member>
    <member name="F:DotNetOpenAuth.OpenId.Extensions.AttributeExchange.Constants.TypeUri">
      <summary>
            The TypeURI by which the AX extension is recognized in
            OpenID messages and in XRDS documents.
            </summary>
    </member>
    <member name="T:DotNetOpenAuth.OpenId.Extensions.AttributeExchange.FetchRequest">
      <summary>
            The Attribute Exchange Fetch message, request leg.
            </summary>
    </member>
    <member name="T:DotNetOpenAuth.OpenId.Extensions.ExtensionBase">
      <summary>
            A handy base class for built-in extensions.
            </summary>
    </member>
    <member name="T:DotNetOpenAuth.OpenId.Messages.IOpenIdMessageExtension">
      <summary>
            The contract any OpenID extension for DotNetOpenAuth must implement.
            </summary>
      <remarks>
            Classes that implement this interface should be marked as
            [<see cref="T:System.SerializableAttribute" />] to allow serializing state servers
            to cache messages, particularly responses.
            </remarks>
    </member>
    <member name="P:DotNetOpenAuth.OpenId.Messages.IOpenIdMessageExtension.TypeUri">
      <summary>
            Gets the TypeURI the extension uses in the OpenID protocol and in XRDS advertisements.
            </summary>
    </member>
    <member name="P:DotNetOpenAuth.OpenId.Messages.IOpenIdMessageExtension.AdditionalSupportedTypeUris">
      <summary>
            Gets the additional TypeURIs that are supported by this extension, in preferred order.
            May be empty if none other than <see cref="P:DotNetOpenAuth.OpenId.Messages.IOpenIdMessageExtension.TypeUri" /> is supported, but
            should not be null.
            </summary>
      <remarks>
            Useful for reading in messages with an older version of an extension.
            The value in the <see cref="P:DotNetOpenAuth.OpenId.Messages.IOpenIdMessageExtension.TypeUri" /> property is always checked before
            trying this list.
            If you do support multiple versions of an extension using this method,
            consider adding a CreateResponse method to your request extension class
            so that the response can have the context it needs to remain compatible
            given the version of the extension in the request message.
            The <see cref="M:DotNetOpenAuth.OpenId.Extensions.SimpleRegistration.ClaimsRequest.CreateResponse" /> for an example.
            </remarks>
    </member>
    <member name="P:DotNetOpenAuth.OpenId.Messages.IOpenIdMessageExtension.IsSignedByRemoteParty">
      <summary>
            Gets or sets a value indicating whether this extension was 
            signed by the sender.
            </summary>
      <value>
        <c>true</c> if this instance is signed by the sender; otherwise, <c>false</c>.
            </value>
    </member>
    <member name="F:DotNetOpenAuth.OpenId.Extensions.ExtensionBase.typeUri">
      <summary>
            Backing store for the <see cref="P:DotNetOpenAuth.OpenId.Messages.IOpenIdMessageExtension.TypeUri" /> property.
            </summary>
    </member>
    <member name="F:DotNetOpenAuth.OpenId.Extensions.ExtensionBase.additionalSupportedTypeUris">
      <summary>
            Backing store for the <see cref="P:DotNetOpenAuth.OpenId.Messages.IOpenIdMessageExtension.AdditionalSupportedTypeUris" /> property.
            </summary>
    </member>
    <member name="F:DotNetOpenAuth.OpenId.Extensions.ExtensionBase.extraData">
      <summary>
            Backing store for the <see cref="P:DotNetOpenAuth.Messaging.IMessage.ExtraData" /> property.
            </summary>
    </member>
    <member name="M:DotNetOpenAuth.OpenId.Extensions.ExtensionBase.#ctor(System.Version,System.String,System.Collections.Generic.IEnumerable{System.String})">
      <summary>
            Initializes a new instance of the <see cref="T:DotNetOpenAuth.OpenId.Extensions.ExtensionBase" /> class.
            </summary>
      <param name="version">The version of the extension.</param>
      <param name="typeUri">The type URI to use in the OpenID message.</param>
      <param name="additionalSupportedTypeUris">The additional supported type URIs by which this extension might be recognized.  May be null.</param>
    </member>
    <member name="M:DotNetOpenAuth.OpenId.Extensions.ExtensionBase.DotNetOpenAuth#Messaging#IMessage#EnsureValidMessage">
      <summary>
            Checks the message state for conformity to the protocol specification
            and throws an exception if the message is invalid.
            </summary>
      <remarks>
        <para>Some messages have required fields, or combinations of fields that must relate to each other
            in specialized ways.  After deserializing a message, this method checks the state of the
            message to see if it conforms to the protocol.</para>
        <para>Note that this property should <i>not</i> check signatures or perform any state checks
            outside this scope of this particular message.</para>
      </remarks>
      <exception cref="T:DotNetOpenAuth.Messaging.ProtocolException">Thrown if the message is invalid.</exception>
    </member>
    <member name="M:DotNetOpenAuth.OpenId.Extensions.ExtensionBase.EnsureValidMessage">
      <summary>
            Checks the message state for conformity to the protocol specification
            and throws an exception if the message is invalid.
            </summary>
      <remarks>
        <para>Some messages have required fields, or combinations of fields that must relate to each other
            in specialized ways.  After deserializing a message, this method checks the state of the
            message to see if it conforms to the protocol.</para>
        <para>Note that this property should <i>not</i> check signatures or perform any state checks
            outside this scope of this particular message.</para>
      </remarks>
      <exception cref="T:DotNetOpenAuth.Messaging.ProtocolException">Thrown if the message is invalid.</exception>
    </member>
    <member name="P:DotNetOpenAuth.OpenId.Extensions.ExtensionBase.DotNetOpenAuth#OpenId#Messages#IOpenIdMessageExtension#TypeUri">
      <summary>
            Gets the TypeURI the extension uses in the OpenID protocol and in XRDS advertisements.
            </summary>
    </member>
    <member name="P:DotNetOpenAuth.OpenId.Extensions.ExtensionBase.DotNetOpenAuth#OpenId#Messages#IOpenIdMessageExtension#AdditionalSupportedTypeUris">
      <summary>
            Gets the additional TypeURIs that are supported by this extension, in preferred order.
            May be empty if none other than <see cref="P:DotNetOpenAuth.OpenId.Messages.IOpenIdMessageExtension.TypeUri" /> is supported, but
            should not be null.
            </summary>
      <remarks>
            Useful for reading in messages with an older version of an extension.
            The value in the <see cref="P:DotNetOpenAuth.OpenId.Messages.IOpenIdMessageExtension.TypeUri" /> property is always checked before
            trying this list.
            If you do support multiple versions of an extension using this method,
            consider adding a CreateResponse method to your request extension class
            so that the response can have the context it needs to remain compatible
            given the version of the extension in the request message.
            The <see cref="M:DotNetOpenAuth.OpenId.Extensions.SimpleRegistration.ClaimsRequest.CreateResponse" /> for an example.
            </remarks>
    </member>
    <member name="P:DotNetOpenAuth.OpenId.Extensions.ExtensionBase.DotNetOpenAuth#OpenId#Messages#IOpenIdMessageExtension#IsSignedByRemoteParty">
      <summary>
            Gets or sets a value indicating whether this extension was
            signed by the OpenID Provider.
            </summary>
      <value>
        <c>true</c> if this instance is signed by the provider; otherwise, <c>false</c>.
            </value>
    </member>
    <member name="P:DotNetOpenAuth.OpenId.Extensions.ExtensionBase.Version">
      <summary>
            Gets the version of the protocol or extension this message is prepared to implement.
            </summary>
    </member>
    <member name="P:DotNetOpenAuth.OpenId.Extensions.ExtensionBase.DotNetOpenAuth#Messaging#IMessage#ExtraData">
      <summary>
            Gets the extra, non-standard Protocol parameters included in the message.
            </summary>
      <remarks>
            Implementations of this interface should ensure that this property never returns null.
            </remarks>
    </member>
    <member name="P:DotNetOpenAuth.OpenId.Extensions.ExtensionBase.TypeUri">
      <summary>
            Gets the TypeURI the extension uses in the OpenID protocol and in XRDS advertisements.
            </summary>
    </member>
    <member name="P:DotNetOpenAuth.OpenId.Extensions.ExtensionBase.IsSignedByRemoteParty">
      <summary>
            Gets or sets a value indicating whether this extension was
            signed by the OpenID Provider.
            </summary>
      <value>
        <c>true</c> if this instance is signed by the provider; otherwise, <c>false</c>.
            </value>
    </member>
    <member name="P:DotNetOpenAuth.OpenId.Extensions.ExtensionBase.AdditionalSupportedTypeUris">
      <summary>
            Gets the additional TypeURIs that are supported by this extension, in preferred order.
            May be empty if none other than <see cref="P:DotNetOpenAuth.OpenId.Messages.IOpenIdMessageExtension.TypeUri" /> is supported, but
            should not be null.
            </summary>
      <value />
      <remarks>
            Useful for reading in messages with an older version of an extension.
            The value in the <see cref="P:DotNetOpenAuth.OpenId.Messages.IOpenIdMessageExtension.TypeUri" /> property is always checked before
            trying this list.
            If you do support multiple versions of an extension using this method,
            consider adding a CreateResponse method to your request extension class
            so that the response can have the context it needs to remain compatible
            given the version of the extension in the request message.
            The <see cref="M:DotNetOpenAuth.OpenId.Extensions.SimpleRegistration.ClaimsRequest.CreateResponse" /> for an example.
            </remarks>
    </member>
    <member name="P:DotNetOpenAuth.OpenId.Extensions.ExtensionBase.ExtraData">
      <summary>
            Gets the extra, non-standard Protocol parameters included in the message.
            </summary>
      <value />
      <remarks>
            Implementations of this interface should ensure that this property never returns null.
            </remarks>
    </member>
    <member name="F:DotNetOpenAuth.OpenId.Extensions.AttributeExchange.FetchRequest.Mode">
      <summary>
            The value for the 'mode' parameter.
            </summary>
    </member>
    <member name="F:DotNetOpenAuth.OpenId.Extensions.AttributeExchange.FetchRequest.Factory">
      <summary>
            The factory method that may be used in deserialization of this message.
            </summary>
    </member>
    <member name="F:DotNetOpenAuth.OpenId.Extensions.AttributeExchange.FetchRequest.IllegalAliasListCharacters">
      <summary>
            Characters that may not appear in an attribute alias list.
            </summary>
    </member>
    <member name="F:DotNetOpenAuth.OpenId.Extensions.AttributeExchange.FetchRequest.IllegalAliasCharacters">
      <summary>
            Characters that may not appear in an attribute Type URI alias.
            </summary>
    </member>
    <member name="F:DotNetOpenAuth.OpenId.Extensions.AttributeExchange.FetchRequest.attributes">
      <summary>
            The collection of requested attributes.
            </summary>
    </member>
    <member name="M:DotNetOpenAuth.OpenId.Extensions.AttributeExchange.FetchRequest.#ctor">
      <summary>
            Initializes a new instance of the <see cref="T:DotNetOpenAuth.OpenId.Extensions.AttributeExchange.FetchRequest" /> class.
            </summary>
    </member>
    <member name="M:DotNetOpenAuth.OpenId.Extensions.AttributeExchange.FetchRequest.Equals(System.Object)">
      <summary>
            Determines whether the specified <see cref="T:System.Object" /> is equal to the current <see cref="T:System.Object" />.
            </summary>
      <param name="obj">The <see cref="T:System.Object" /> to compare with the current <see cref="T:System.Object" />.</param>
      <returns>
            true if the specified <see cref="T:System.Object" /> is equal to the current <see cref="T:System.Object" />; otherwise, false.
            </returns>
      <exception cref="T:System.NullReferenceException">
            The <paramref name="obj" /> parameter is null.
            </exception>
    </member>
    <member name="M:DotNetOpenAuth.OpenId.Extensions.AttributeExchange.FetchRequest.GetHashCode">
      <summary>
            Serves as a hash function for a particular type.
            </summary>
      <returns>
            A hash code for the current <see cref="T:System.Object" />.
            </returns>
    </member>
    <member name="M:DotNetOpenAuth.OpenId.Extensions.AttributeExchange.FetchRequest.DotNetOpenAuth#Messaging#IMessageWithEvents#OnSending">
      <summary>
            Called when the message is about to be transmitted,
            before it passes through the channel binding elements.
            </summary>
    </member>
    <member name="M:DotNetOpenAuth.OpenId.Extensions.AttributeExchange.FetchRequest.DotNetOpenAuth#Messaging#IMessageWithEvents#OnReceiving">
      <summary>
            Called when the message has been received,
            after it passes through the channel binding elements.
            </summary>
    </member>
    <member name="M:DotNetOpenAuth.OpenId.Extensions.AttributeExchange.FetchRequest.EnsureValidMessage">
      <summary>
            Checks the message state for conformity to the protocol specification
            and throws an exception if the message is invalid.
            </summary>
      <remarks>
        <para>Some messages have required fields, or combinations of fields that must relate to each other
            in specialized ways.  After deserializing a message, this method checks the state of the
            message to see if it conforms to the protocol.</para>
        <para>Note that this property should <i>not</i> check signatures or perform any state checks
            outside this scope of this particular message.</para>
      </remarks>
      <exception cref="T:DotNetOpenAuth.Messaging.ProtocolException">Thrown if the message is invalid.</exception>
    </member>
    <member name="M:DotNetOpenAuth.OpenId.Extensions.AttributeExchange.FetchRequest.ParseAliasList(System.String)">
      <summary>
            Splits a list of aliases by their commas.
            </summary>
      <param name="aliasList">The comma-delimited list of aliases.  May be null or empty.</param>
      <returns>The list of aliases.  Never null, but may be empty.</returns>
    </member>
    <member name="P:DotNetOpenAuth.OpenId.Extensions.AttributeExchange.FetchRequest.Attributes">
      <summary>
            Gets a collection of the attributes whose values are 
            requested by the Relying Party.
            </summary>
      <value>A collection where the keys are the attribute type URIs, and the value
            is all the attribute request details.</value>
    </member>
    <member name="P:DotNetOpenAuth.OpenId.Extensions.AttributeExchange.FetchRequest.UpdateUrl">
      <summary>
            Gets or sets the URL that the OpenID Provider may re-post the fetch response 
            message to at some time after the initial response has been sent, using an
            OpenID Authentication Positive Assertion to inform the relying party of updates
            to the requested fields.
            </summary>
    </member>
    <member name="P:DotNetOpenAuth.OpenId.Extensions.AttributeExchange.FetchRequest.OptionalAliases">
      <summary>
            Gets or sets a list of aliases for optional attributes.
            </summary>
      <value>A comma-delimited list of aliases.</value>
    </member>
    <member name="P:DotNetOpenAuth.OpenId.Extensions.AttributeExchange.FetchRequest.RequiredAliases">
      <summary>
            Gets or sets a list of aliases for required attributes.
            </summary>
      <value>A comma-delimited list of aliases.</value>
    </member>
    <member name="T:DotNetOpenAuth.OpenId.Extensions.AttributeExchange.FetchResponse">
      <summary>
            The Attribute Exchange Fetch message, response leg.
            </summary>
    </member>
    <member name="F:DotNetOpenAuth.OpenId.Extensions.AttributeExchange.FetchResponse.Mode">
      <summary>
            The value of the 'mode' parameter.
            </summary>
    </member>
    <member name="F:DotNetOpenAuth.OpenId.Extensions.AttributeExchange.FetchResponse.Factory">
      <summary>
            The factory method that may be used in deserialization of this message.
            </summary>
    </member>
    <member name="F:DotNetOpenAuth.OpenId.Extensions.AttributeExchange.FetchResponse.attributesProvided">
      <summary>
            The collection of provided attributes.  This field will never be null.
            </summary>
    </member>
    <member name="M:DotNetOpenAuth.OpenId.Extensions.AttributeExchange.FetchResponse.#ctor">
      <summary>
            Initializes a new instance of the <see cref="T:DotNetOpenAuth.OpenId.Extensions.AttributeExchange.FetchResponse" /> class.
            </summary>
    </member>
    <member name="M:DotNetOpenAuth.OpenId.Extensions.AttributeExchange.FetchResponse.GetAttributeValue(System.String)">
      <summary>
            Gets the first attribute value provided for a given attribute Type URI.
            </summary>
      <param name="typeUri">
            The type URI of the attribute.  
            Usually a constant from <see cref="T:DotNetOpenAuth.OpenId.Extensions.AttributeExchange.WellKnownAttributes" />.</param>
      <returns>
            The first value provided for the attribute, or <c>null</c> if the attribute is missing or no values were provided.
            </returns>
      <remarks>
            This is meant as a helper method for the common case of just wanting one attribute value.
            For greater flexibility or to retrieve more than just the first value for an attribute,
            use the <see cref="P:DotNetOpenAuth.OpenId.Extensions.AttributeExchange.FetchResponse.Attributes" /> collection directly.
            </remarks>
    </member>
    <member name="M:DotNetOpenAuth.OpenId.Extensions.AttributeExchange.FetchResponse.Equals(System.Object)">
      <summary>
            Determines whether the specified <see cref="T:System.Object" /> is equal to the current <see cref="T:System.Object" />.
            </summary>
      <param name="obj">The <see cref="T:System.Object" /> to compare with the current <see cref="T:System.Object" />.</param>
      <returns>
            true if the specified <see cref="T:System.Object" /> is equal to the current <see cref="T:System.Object" />; otherwise, false.
            </returns>
      <exception cref="T:System.NullReferenceException">
            The <paramref name="obj" /> parameter is null.
            </exception>
    </member>
    <member name="M:DotNetOpenAuth.OpenId.Extensions.AttributeExchange.FetchResponse.GetHashCode">
      <summary>
            Serves as a hash function for a particular type.
            </summary>
      <returns>
            A hash code for the current <see cref="T:System.Object" />.
            </returns>
    </member>
    <member name="M:DotNetOpenAuth.OpenId.Extensions.AttributeExchange.FetchResponse.DotNetOpenAuth#Messaging#IMessageWithEvents#OnSending">
      <summary>
            Called when the message is about to be transmitted,
            before it passes through the channel binding elements.
            </summary>
    </member>
    <member name="M:DotNetOpenAuth.OpenId.Extensions.AttributeExchange.FetchResponse.DotNetOpenAuth#Messaging#IMessageWithEvents#OnReceiving">
      <summary>
            Called when the message has been received,
            after it passes through the channel binding elements.
            </summary>
    </member>
    <member name="M:DotNetOpenAuth.OpenId.Extensions.AttributeExchange.FetchResponse.EnsureValidMessage">
      <summary>
            Checks the message state for conformity to the protocol specification
            and throws an exception if the message is invalid.
            </summary>
      <remarks>
        <para>Some messages have required fields, or combinations of fields that must relate to each other
            in specialized ways.  After deserializing a message, this method checks the state of the
            message to see if it conforms to the protocol.</para>
        <para>Note that this property should <i>not</i> check signatures or perform any state checks
            outside this scope of this particular message.</para>
      </remarks>
      <exception cref="T:DotNetOpenAuth.Messaging.ProtocolException">Thrown if the message is invalid.</exception>
    </member>
    <member name="P:DotNetOpenAuth.OpenId.Extensions.AttributeExchange.FetchResponse.Attributes">
      <summary>
            Gets a sequence of the attributes whose values are provided by the OpenID Provider.
            </summary>
    </member>
    <member name="P:DotNetOpenAuth.OpenId.Extensions.AttributeExchange.FetchResponse.UpdateUrlSupported">
      <summary>
            Gets a value indicating whether the OpenID Provider intends to
            honor the request for updates.
            </summary>
    </member>
    <member name="P:DotNetOpenAuth.OpenId.Extensions.AttributeExchange.FetchResponse.UpdateUrl">
      <summary>
            Gets or sets the URL the OpenID Provider will post updates to.  
            Must be set if the Provider supports and will use this feature.
            </summary>
    </member>
    <member name="P:DotNetOpenAuth.OpenId.Extensions.AttributeExchange.FetchResponse.IsSignedByProvider">
      <summary>
            Gets a value indicating whether this extension is signed by the Provider.
            </summary>
      <value>
        <c>true</c> if this instance is signed by the Provider; otherwise, <c>false</c>.
            </value>
    </member>
    <member name="T:DotNetOpenAuth.OpenId.Extensions.AttributeExchange.StoreRequest">
      <summary>
            The Attribute Exchange Store message, request leg.
            </summary>
    </member>
    <member name="F:DotNetOpenAuth.OpenId.Extensions.AttributeExchange.StoreRequest.Mode">
      <summary>
            The value of the 'mode' parameter.
            </summary>
    </member>
    <member name="F:DotNetOpenAuth.OpenId.Extensions.AttributeExchange.StoreRequest.Factory">
      <summary>
            The factory method that may be used in deserialization of this message.
            </summary>
    </member>
    <member name="F:DotNetOpenAuth.OpenId.Extensions.AttributeExchange.StoreRequest.attributesProvided">
      <summary>
            The collection of provided attribute values.  This field will never be null.
            </summary>
    </member>
    <member name="M:DotNetOpenAuth.OpenId.Extensions.AttributeExchange.StoreRequest.#ctor">
      <summary>
            Initializes a new instance of the <see cref="T:DotNetOpenAuth.OpenId.Extensions.AttributeExchange.StoreRequest" /> class.
            </summary>
    </member>
    <member name="M:DotNetOpenAuth.OpenId.Extensions.AttributeExchange.StoreRequest.DotNetOpenAuth#Messaging#IMessageWithEvents#OnSending">
      <summary>
            Called when the message is about to be transmitted,
            before it passes through the channel binding elements.
            </summary>
    </member>
    <member name="M:DotNetOpenAuth.OpenId.Extensions.AttributeExchange.StoreRequest.DotNetOpenAuth#Messaging#IMessageWithEvents#OnReceiving">
      <summary>
            Called when the message has been received,
            after it passes through the channel binding elements.
            </summary>
    </member>
    <member name="M:DotNetOpenAuth.OpenId.Extensions.AttributeExchange.StoreRequest.Equals(System.Object)">
      <summary>
            Determines whether the specified <see cref="T:System.Object" /> is equal to the current <see cref="T:System.Object" />.
            </summary>
      <param name="obj">The <see cref="T:System.Object" /> to compare with the current <see cref="T:System.Object" />.</param>
      <returns>
            true if the specified <see cref="T:System.Object" /> is equal to the current <see cref="T:System.Object" />; otherwise, false.
            </returns>
      <exception cref="T:System.NullReferenceException">
            The <paramref name="obj" /> parameter is null.
            </exception>
    </member>
    <member name="M:DotNetOpenAuth.OpenId.Extensions.AttributeExchange.StoreRequest.GetHashCode">
      <summary>
            Serves as a hash function for a particular type.
            </summary>
      <returns>
            A hash code for the current <see cref="T:System.Object" />.
            </returns>
    </member>
    <member name="P:DotNetOpenAuth.OpenId.Extensions.AttributeExchange.StoreRequest.Attributes">
      <summary>
            Gets the collection of all the attributes that are included in the store request.
            </summary>
    </member>
    <member name="T:DotNetOpenAuth.OpenId.Extensions.AttributeExchange.StoreResponse">
      <summary>
            The Attribute Exchange Store message, response leg.
            </summary>
    </member>
    <member name="F:DotNetOpenAuth.OpenId.Extensions.AttributeExchange.StoreResponse.SuccessMode">
      <summary>
            The value of the mode parameter used to express a successful store operation.
            </summary>
    </member>
    <member name="F:DotNetOpenAuth.OpenId.Extensions.AttributeExchange.StoreResponse.FailureMode">
      <summary>
            The value of the mode parameter used to express a store operation failure.
            </summary>
    </member>
    <member name="F:DotNetOpenAuth.OpenId.Extensions.AttributeExchange.StoreResponse.Factory">
      <summary>
            The factory method that may be used in deserialization of this message.
            </summary>
    </member>
    <member name="M:DotNetOpenAuth.OpenId.Extensions.AttributeExchange.StoreResponse.#ctor">
      <summary>
            Initializes a new instance of the <see cref="T:DotNetOpenAuth.OpenId.Extensions.AttributeExchange.StoreResponse" /> class
            to represent a successful store operation.
            </summary>
    </member>
    <member name="M:DotNetOpenAuth.OpenId.Extensions.AttributeExchange.StoreResponse.#ctor(System.String)">
      <summary>
            Initializes a new instance of the <see cref="T:DotNetOpenAuth.OpenId.Extensions.AttributeExchange.StoreResponse" /> class
            to represent a failed store operation.
            </summary>
      <param name="failureReason">The reason for failure.</param>
    </member>
    <member name="M:DotNetOpenAuth.OpenId.Extensions.AttributeExchange.StoreResponse.Equals(System.Object)">
      <summary>
            Determines whether the specified <see cref="T:System.Object" /> is equal to the current <see cref="T:System.Object" />.
            </summary>
      <param name="obj">The <see cref="T:System.Object" /> to compare with the current <see cref="T:System.Object" />.</param>
      <returns>
            true if the specified <see cref="T:System.Object" /> is equal to the current <see cref="T:System.Object" />; otherwise, false.
            </returns>
      <exception cref="T:System.NullReferenceException">
            The <paramref name="obj" /> parameter is null.
            </exception>
    </member>
    <member name="M:DotNetOpenAuth.OpenId.Extensions.AttributeExchange.StoreResponse.GetHashCode">
      <summary>
            Serves as a hash function for a particular type.
            </summary>
      <returns>
            A hash code for the current <see cref="T:System.Object" />.
            </returns>
    </member>
    <member name="M:DotNetOpenAuth.OpenId.Extensions.AttributeExchange.StoreResponse.EnsureValidMessage">
      <summary>
            Checks the message state for conformity to the protocol specification
            and throws an exception if the message is invalid.
            </summary>
      <remarks>
        <para>Some messages have required fields, or combinations of fields that must relate to each other
            in specialized ways.  After deserializing a message, this method checks the state of the
            message to see if it conforms to the protocol.</para>
        <para>Note that this property should <i>not</i> check signatures or perform any state checks
            outside this scope of this particular message.</para>
      </remarks>
      <exception cref="T:DotNetOpenAuth.Messaging.ProtocolException">Thrown if the message is invalid.</exception>
    </member>
    <member name="P:DotNetOpenAuth.OpenId.Extensions.AttributeExchange.StoreResponse.Succeeded">
      <summary>
            Gets or sets a value indicating whether the storage request succeeded.
            </summary>
      <value>Defaults to <c>true</c>.</value>
    </member>
    <member name="P:DotNetOpenAuth.OpenId.Extensions.AttributeExchange.StoreResponse.FailureReason">
      <summary>
            Gets or sets the reason for the failure, if applicable.
            </summary>
    </member>
    <member name="P:DotNetOpenAuth.OpenId.Extensions.AttributeExchange.StoreResponse.IsSignedByProvider">
      <summary>
            Gets a value indicating whether this extension is signed by the Provider.
            </summary>
      <value>
        <c>true</c> if this instance is signed by the Provider; otherwise, <c>false</c>.
            </value>
    </member>
    <member name="P:DotNetOpenAuth.OpenId.Extensions.AttributeExchange.StoreResponse.Mode">
      <summary>
            Gets or sets the mode argument.
            </summary>
      <value>One of 'store_response_success' or 'store_response_failure'.</value>
    </member>
    <member name="T:DotNetOpenAuth.OpenId.Extensions.AttributeExchange.WellKnownAttributes">
      <summary>
            Attribute types defined at http://www.axschema.org/types/.
            </summary>
      <remarks>
            If you don't see what you need here, check that URL to see if any have been added.
            You can use new ones directly without adding them to this class, and can even make
            up your own if you expect the other end to understand what you make up.
            </remarks>
    </member>
    <member name="T:DotNetOpenAuth.OpenId.Extensions.AttributeExchange.WellKnownAttributes.Person">
      <summary>
            Inherent attributes about a personality such as gender and bio.
            </summary>
    </member>
    <member name="F:DotNetOpenAuth.OpenId.Extensions.AttributeExchange.WellKnownAttributes.Person.Gender">
      <summary>Gender, either "M" or "F"</summary>
      <example>"M", "F"</example>
    </member>
    <member name="F:DotNetOpenAuth.OpenId.Extensions.AttributeExchange.WellKnownAttributes.Person.Biography">
      <summary>Biography (text)</summary>
      <example>"I am the very model of a modern Major General."</example>
    </member>
    <member name="T:DotNetOpenAuth.OpenId.Extensions.AttributeExchange.WellKnownAttributes.Preferences">
      <summary>
            Preferences such as language and timezone.
            </summary>
    </member>
    <member name="F:DotNetOpenAuth.OpenId.Extensions.AttributeExchange.WellKnownAttributes.Preferences.Language">
      <summary>Preferred language, as per RFC4646</summary>
      <example>"en-US"</example>
    </member>
    <member name="F:DotNetOpenAuth.OpenId.Extensions.AttributeExchange.WellKnownAttributes.Preferences.TimeZone">
      <summary>Home time zone information (as specified in <a href="http://en.wikipedia.org/wiki/List_of_tz_zones_by_name">zoneinfo</a>)</summary>
      <example>"America/Pacific"</example>
    </member>
    <member name="T:DotNetOpenAuth.OpenId.Extensions.AttributeExchange.WellKnownAttributes.Name">
      <summary>
            The names a person goes by.
            </summary>
    </member>
    <member name="F:DotNetOpenAuth.OpenId.Extensions.AttributeExchange.WellKnownAttributes.Name.Alias">
      <summary>Subject's alias or "screen" name</summary>
      <example>"Johnny5"</example>
    </member>
    <member name="F:DotNetOpenAuth.OpenId.Extensions.AttributeExchange.WellKnownAttributes.Name.FullName">
      <summary>Full name of subject</summary>
      <example>"John Doe"</example>
    </member>
    <member name="F:DotNetOpenAuth.OpenId.Extensions.AttributeExchange.WellKnownAttributes.Name.Prefix">
      <summary>Honorific prefix for the subject's name</summary>
      <example>"Mr.", "Mrs.", "Dr."</example>
    </member>
    <member name="F:DotNetOpenAuth.OpenId.Extensions.AttributeExchange.WellKnownAttributes.Name.First">
      <summary>First or given name of subject</summary>
      <example>"John"</example>
    </member>
    <member name="F:DotNetOpenAuth.OpenId.Extensions.AttributeExchange.WellKnownAttributes.Name.Last">
      <summary>Last name or surname of subject</summary>
      <example>"Smith"</example>
    </member>
    <member name="F:DotNetOpenAuth.OpenId.Extensions.AttributeExchange.WellKnownAttributes.Name.Middle">
      <summary>Middle name(s) of subject</summary>
      <example>"Robert"</example>
    </member>
    <member name="F:DotNetOpenAuth.OpenId.Extensions.AttributeExchange.WellKnownAttributes.Name.Suffix">
      <summary>Suffix of subject's name</summary>
      <example>"III", "Jr."</example>
    </member>
    <member name="T:DotNetOpenAuth.OpenId.Extensions.AttributeExchange.WellKnownAttributes.Company">
      <summary>
            Business affiliation.
            </summary>
    </member>
    <member name="F:DotNetOpenAuth.OpenId.Extensions.AttributeExchange.WellKnownAttributes.Company.CompanyName">
      <summary>Company name (employer)</summary>
      <example>"Springfield Power"</example>
    </member>
    <member name="F:DotNetOpenAuth.OpenId.Extensions.AttributeExchange.WellKnownAttributes.Company.JobTitle">
      <summary>Employee title</summary>
      <example>"Engineer"</example>
    </member>
    <member name="T:DotNetOpenAuth.OpenId.Extensions.AttributeExchange.WellKnownAttributes.BirthDate">
      <summary>
            Information about a person's birthdate.
            </summary>
    </member>
    <member name="F:DotNetOpenAuth.OpenId.Extensions.AttributeExchange.WellKnownAttributes.BirthDate.WholeBirthDate">
      <summary>Date of birth.</summary>
      <example>"1979-01-01"</example>
    </member>
    <member name="F:DotNetOpenAuth.OpenId.Extensions.AttributeExchange.WellKnownAttributes.BirthDate.Year">
      <summary>Year of birth (four digits)</summary>
      <example>"1979"</example>
    </member>
    <member name="F:DotNetOpenAuth.OpenId.Extensions.AttributeExchange.WellKnownAttributes.BirthDate.Month">
      <summary>Month of birth (1-12)</summary>
      <example>"05"</example>
    </member>
    <member name="F:DotNetOpenAuth.OpenId.Extensions.AttributeExchange.WellKnownAttributes.BirthDate.DayOfMonth">
      <summary>Day of birth</summary>
      <example>"31"</example>
    </member>
    <member name="T:DotNetOpenAuth.OpenId.Extensions.AttributeExchange.WellKnownAttributes.Contact">
      <summary>
            Various ways to contact a person.
            </summary>
    </member>
    <member name="F:DotNetOpenAuth.OpenId.Extensions.AttributeExchange.WellKnownAttributes.Contact.Email">
      <summary>Internet SMTP email address as per RFC2822</summary>
      <example>"jsmith@isp.example.com"</example>
    </member>
    <member name="T:DotNetOpenAuth.OpenId.Extensions.AttributeExchange.WellKnownAttributes.Contact.Phone">
      <summary>
            Various types of phone numbers.
            </summary>
    </member>
    <member name="F:DotNetOpenAuth.OpenId.Extensions.AttributeExchange.WellKnownAttributes.Contact.Phone.Preferred">
      <summary>Main phone number (preferred)</summary>
      <example>+1-800-555-1234</example>
    </member>
    <member name="F:DotNetOpenAuth.OpenId.Extensions.AttributeExchange.WellKnownAttributes.Contact.Phone.Home">
      <summary>Home phone number</summary>
      <example>+1-800-555-1234</example>
    </member>
    <member name="F:DotNetOpenAuth.OpenId.Extensions.AttributeExchange.WellKnownAttributes.Contact.Phone.Work">
      <summary>Business phone number</summary>
      <example>+1-800-555-1234</example>
    </member>
    <member name="F:DotNetOpenAuth.OpenId.Extensions.AttributeExchange.WellKnownAttributes.Contact.Phone.Mobile">
      <summary>Cellular (or mobile) phone number</summary>
      <example>+1-800-555-1234</example>
    </member>
    <member name="F:DotNetOpenAuth.OpenId.Extensions.AttributeExchange.WellKnownAttributes.Contact.Phone.Fax">
      <summary>Fax number</summary>
      <example>+1-800-555-1234</example>
    </member>
    <member name="T:DotNetOpenAuth.OpenId.Extensions.AttributeExchange.WellKnownAttributes.Contact.HomeAddress">
      <summary>
            The many fields that make up an address.
            </summary>
    </member>
    <member name="F:DotNetOpenAuth.OpenId.Extensions.AttributeExchange.WellKnownAttributes.Contact.HomeAddress.StreetAddressLine1">
      <summary>Home postal address: street number, name and apartment number</summary>
      <example>"#42 135 East 1st Street"</example>
    </member>
    <member name="F:DotNetOpenAuth.OpenId.Extensions.AttributeExchange.WellKnownAttributes.Contact.HomeAddress.StreetAddressLine2">
      <summary>"#42 135 East 1st Street"</summary>
      <example>"Box 67"</example>
    </member>
    <member name="F:DotNetOpenAuth.OpenId.Extensions.AttributeExchange.WellKnownAttributes.Contact.HomeAddress.City">
      <summary>Home city name</summary>
      <example>"Vancouver"</example>
    </member>
    <member name="F:DotNetOpenAuth.OpenId.Extensions.AttributeExchange.WellKnownAttributes.Contact.HomeAddress.State">
      <summary>Home state or province name</summary>
      <example>"BC"</example>
    </member>
    <member name="F:DotNetOpenAuth.OpenId.Extensions.AttributeExchange.WellKnownAttributes.Contact.HomeAddress.Country">
      <summary>Home country code in ISO.3166.1988 (alpha 2) format</summary>
      <example>"CA"</example>
    </member>
    <member name="F:DotNetOpenAuth.OpenId.Extensions.AttributeExchange.WellKnownAttributes.Contact.HomeAddress.PostalCode">
      <summary>Home postal code; region specific format</summary>
      <example>"V5A 4B2"</example>
    </member>
    <member name="T:DotNetOpenAuth.OpenId.Extensions.AttributeExchange.WellKnownAttributes.Contact.WorkAddress">
      <summary>
            The many fields that make up an address.
            </summary>
    </member>
    <member name="F:DotNetOpenAuth.OpenId.Extensions.AttributeExchange.WellKnownAttributes.Contact.WorkAddress.StreetAddressLine1">
      <summary>Business postal address: street number, name and apartment number</summary>
      <example>"#42 135 East 1st Street"</example>
    </member>
    <member name="F:DotNetOpenAuth.OpenId.Extensions.AttributeExchange.WellKnownAttributes.Contact.WorkAddress.StreetAddressLine2">
      <summary>"#42 135 East 1st Street"</summary>
      <example>"Box 67"</example>
    </member>
    <member name="F:DotNetOpenAuth.OpenId.Extensions.AttributeExchange.WellKnownAttributes.Contact.WorkAddress.City">
      <summary>Business city name</summary>
      <example>"Vancouver"</example>
    </member>
    <member name="F:DotNetOpenAuth.OpenId.Extensions.AttributeExchange.WellKnownAttributes.Contact.WorkAddress.State">
      <summary>Business state or province name</summary>
      <example>"BC"</example>
    </member>
    <member name="F:DotNetOpenAuth.OpenId.Extensions.AttributeExchange.WellKnownAttributes.Contact.WorkAddress.Country">
      <summary>Business country code in ISO.3166.1988 (alpha 2) format</summary>
      <example>"CA"</example>
    </member>
    <member name="F:DotNetOpenAuth.OpenId.Extensions.AttributeExchange.WellKnownAttributes.Contact.WorkAddress.PostalCode">
      <summary>Business postal code; region specific format</summary>
      <example>"V5A 4B2"</example>
    </member>
    <member name="T:DotNetOpenAuth.OpenId.Extensions.AttributeExchange.WellKnownAttributes.Contact.IM">
      <summary>
            Various handles for instant message clients.
            </summary>
    </member>
    <member name="F:DotNetOpenAuth.OpenId.Extensions.AttributeExchange.WellKnownAttributes.Contact.IM.AOL">
      <summary>AOL instant messaging service handle</summary>
      <example>"jsmith421234"</example>
    </member>
    <member name="F:DotNetOpenAuth.OpenId.Extensions.AttributeExchange.WellKnownAttributes.Contact.IM.ICQ">
      <summary>ICQ instant messaging service handle</summary>
      <example>"1234567"</example>
    </member>
    <member name="F:DotNetOpenAuth.OpenId.Extensions.AttributeExchange.WellKnownAttributes.Contact.IM.MSN">
      <summary>MSN instant messaging service handle</summary>
      <example>"jsmith42@hotmail.com"</example>
    </member>
    <member name="F:DotNetOpenAuth.OpenId.Extensions.AttributeExchange.WellKnownAttributes.Contact.IM.Yahoo">
      <summary>Yahoo! instant messaging service handle</summary>
      <example>"jsmith421234"</example>
    </member>
    <member name="F:DotNetOpenAuth.OpenId.Extensions.AttributeExchange.WellKnownAttributes.Contact.IM.Jabber">
      <summary>Jabber instant messaging service handle</summary>
      <example>"jsmith@jabber.example.com"</example>
    </member>
    <member name="F:DotNetOpenAuth.OpenId.Extensions.AttributeExchange.WellKnownAttributes.Contact.IM.Skype">
      <summary>Skype instant messaging service handle</summary>
      <example>"jsmith42"</example>
    </member>
    <member name="T:DotNetOpenAuth.OpenId.Extensions.AttributeExchange.WellKnownAttributes.Contact.Web">
      <summary>
            Various web addresses connected with this personality.
            </summary>
    </member>
    <member name="F:DotNetOpenAuth.OpenId.Extensions.AttributeExchange.WellKnownAttributes.Contact.Web.Homepage">
      <summary>Web site URL</summary>
      <example>"http://example.com/~jsmith/"</example>
    </member>
    <member name="F:DotNetOpenAuth.OpenId.Extensions.AttributeExchange.WellKnownAttributes.Contact.Web.Blog">
      <summary>Blog home page URL</summary>
      <example>"http://example.com/jsmith_blog/"</example>
    </member>
    <member name="F:DotNetOpenAuth.OpenId.Extensions.AttributeExchange.WellKnownAttributes.Contact.Web.LinkedIn">
      <summary>LinkedIn URL</summary>
      <example>"http://www.linkedin.com/pub/1/234/56"</example>
    </member>
    <member name="F:DotNetOpenAuth.OpenId.Extensions.AttributeExchange.WellKnownAttributes.Contact.Web.Amazon">
      <summary>Amazon URL</summary>
      <example>"http://www.amazon.com/gp/pdp/profile/A24DLKJ825"</example>
    </member>
    <member name="F:DotNetOpenAuth.OpenId.Extensions.AttributeExchange.WellKnownAttributes.Contact.Web.Flickr">
      <summary>Flickr URL</summary>
      <example>"http://flickr.com/photos/jsmith42/"</example>
    </member>
    <member name="F:DotNetOpenAuth.OpenId.Extensions.AttributeExchange.WellKnownAttributes.Contact.Web.Delicious">
      <summary>del.icio.us URL</summary>
      <example>"http://del.icio.us/jsmith42"</example>
    </member>
    <member name="T:DotNetOpenAuth.OpenId.Extensions.AttributeExchange.WellKnownAttributes.Media">
      <summary>
            Audio and images of this personality.
            </summary>
    </member>
    <member name="F:DotNetOpenAuth.OpenId.Extensions.AttributeExchange.WellKnownAttributes.Media.SpokenName">
      <summary>Spoken name (web URL)</summary>
      <example>"http://example.com/~jsmith/john_smith.wav"</example>
    </member>
    <member name="F:DotNetOpenAuth.OpenId.Extensions.AttributeExchange.WellKnownAttributes.Media.AudioGreeting">
      <summary>Audio greeting (web URL)</summary>
      <example>"http://example.com/~jsmith/i_greet_you.wav"</example>
    </member>
    <member name="F:DotNetOpenAuth.OpenId.Extensions.AttributeExchange.WellKnownAttributes.Media.VideoGreeting">
      <summary>Video greeting (web URL)</summary>
      <example>"http://example.com/~jsmith/i_greet_you.mov"</example>
    </member>
    <member name="T:DotNetOpenAuth.OpenId.Extensions.AttributeExchange.WellKnownAttributes.Media.Images">
      <summary>
            Images of this personality.
            </summary>
    </member>
    <member name="F:DotNetOpenAuth.OpenId.Extensions.AttributeExchange.WellKnownAttributes.Media.Images.Default">
      <summary>Image (web URL); unspecified dimension</summary>
      <example>"http://example.com/~jsmith/image.jpg"</example>
    </member>
    <member name="F:DotNetOpenAuth.OpenId.Extensions.AttributeExchange.WellKnownAttributes.Media.Images.Aspect11">
      <summary>Image (web URL) with equal width and height</summary>
      <example>"http://example.com/~jsmith/image.jpg"</example>
    </member>
    <member name="F:DotNetOpenAuth.OpenId.Extensions.AttributeExchange.WellKnownAttributes.Media.Images.Aspect43">
      <summary>Image (web URL) 4:3 aspect ratio - landscape</summary>
      <example>"http://example.com/~jsmith/image.jpg"</example>
    </member>
    <member name="F:DotNetOpenAuth.OpenId.Extensions.AttributeExchange.WellKnownAttributes.Media.Images.Aspect34">
      <summary>Image (web URL) 4:3 aspect ratio - landscape</summary>
      <example>"http://example.com/~jsmith/image.jpg"</example>
    </member>
    <member name="F:DotNetOpenAuth.OpenId.Extensions.AttributeExchange.WellKnownAttributes.Media.Images.FavIcon">
      <summary>Image (web URL); favicon format as per FAVICON-W3C. The format for the image must be 16x16 pixels or 32x32 pixels, using either 8-bit or 24-bit colors. The format of the image must be one of PNG (a W3C standard), GIF, or ICO.</summary>
      <example>"http://example.com/~jsmith/image.jpg"</example>
    </member>
    <member name="T:DotNetOpenAuth.OpenId.Extensions.ExtensionArgumentsManager">
      <summary>
            Manages the processing and construction of OpenID extensions parts.
            </summary>
    </member>
    <member name="F:DotNetOpenAuth.OpenId.Extensions.ExtensionArgumentsManager.typeUriToAliasAffinity">
      <summary>
            This contains a set of aliases that we must be willing to implicitly
            match to namespaces for backward compatibility with other OpenID libraries.
            </summary>
    </member>
    <member name="F:DotNetOpenAuth.OpenId.Extensions.ExtensionArgumentsManager.protocol">
      <summary>
            The version of OpenID that the message is using.
            </summary>
    </member>
    <member name="F:DotNetOpenAuth.OpenId.Extensions.ExtensionArgumentsManager.isReadMode">
      <summary>
            Whether extensions are being read or written.
            </summary>
    </member>
    <member name="F:DotNetOpenAuth.OpenId.Extensions.ExtensionArgumentsManager.aliasManager">
      <summary>
            The alias manager that will track Type URI to alias mappings.
            </summary>
    </member>
    <member name="F:DotNetOpenAuth.OpenId.Extensions.ExtensionArgumentsManager.extensions">
      <summary>
            A complex dictionary where the key is the Type URI of the extension,
            and the value is another dictionary of the name/value args of the extension.
            </summary>
    </member>
    <member name="M:DotNetOpenAuth.OpenId.Extensions.ExtensionArgumentsManager.#ctor">
      <summary>
            Prevents a default instance of the <see cref="T:DotNetOpenAuth.OpenId.Extensions.ExtensionArgumentsManager" /> class from being created.
            </summary>
    </member>
    <member name="M:DotNetOpenAuth.OpenId.Extensions.ExtensionArgumentsManager.CreateIncomingExtensions(System.Collections.Generic.IDictionary{System.String,System.String})">
      <summary>
            Creates a <see cref="T:DotNetOpenAuth.OpenId.Extensions.ExtensionArgumentsManager" /> instance to process incoming extensions.
            </summary>
      <param name="query">The parameters in the OpenID message.</param>
      <returns>The newly created instance of <see cref="T:DotNetOpenAuth.OpenId.Extensions.ExtensionArgumentsManager" />.</returns>
    </member>
    <member name="M:DotNetOpenAuth.OpenId.Extensions.ExtensionArgumentsManager.CreateOutgoingExtensions(DotNetOpenAuth.OpenId.Protocol)">
      <summary>
            Creates a <see cref="T:DotNetOpenAuth.OpenId.Extensions.ExtensionArgumentsManager" /> instance to prepare outgoing extensions.
            </summary>
      <param name="protocol">The protocol version used for the outgoing message.</param>
      <returns>
            The newly created instance of <see cref="T:DotNetOpenAuth.OpenId.Extensions.ExtensionArgumentsManager" />.
            </returns>
    </member>
    <member name="M:DotNetOpenAuth.OpenId.Extensions.ExtensionArgumentsManager.AddExtensionArguments(System.String,System.Collections.Generic.IDictionary{System.String,System.String})">
      <summary>
            Adds query parameters for OpenID extensions to the request directed
            at the OpenID provider.
            </summary>
      <param name="extensionTypeUri">The extension type URI.</param>
      <param name="arguments">The arguments for this extension to add to the message.</param>
    </member>
    <member name="M:DotNetOpenAuth.OpenId.Extensions.ExtensionArgumentsManager.GetArgumentsToSend(System.Boolean)">
      <summary>
            Gets the actual arguments to add to a querystring or other response,
            where type URI, alias, and actual key/values are all defined.
            </summary>
      <param name="includeOpenIdPrefix">
        <c>true</c> if the generated parameter names should include the 'openid.' prefix.
            This should be <c>true</c> for all but direct response messages.
            </param>
      <returns>A dictionary of key=value pairs to add to the message to carry the extension.</returns>
    </member>
    <member name="M:DotNetOpenAuth.OpenId.Extensions.ExtensionArgumentsManager.GetExtensionArguments(System.String)">
      <summary>
            Gets the fields carried by a given OpenId extension.
            </summary>
      <param name="extensionTypeUri">The type URI of the extension whose fields are being queried for.</param>
      <returns>
            The fields included in the given extension, or null if the extension is not present.
            </returns>
    </member>
    <member name="M:DotNetOpenAuth.OpenId.Extensions.ExtensionArgumentsManager.ContainsExtension(System.String)">
      <summary>
            Gets whether any arguments for a given extension are present.
            </summary>
      <param name="extensionTypeUri">The extension Type URI in question.</param>
      <returns>
        <c>true</c> if this extension is present; <c>false</c> otherwise.</returns>
    </member>
    <member name="M:DotNetOpenAuth.OpenId.Extensions.ExtensionArgumentsManager.GetExtensionTypeUris">
      <summary>
            Gets the type URIs of all discovered extensions in the message.
            </summary>
      <returns>A sequence of the type URIs.</returns>
    </member>
    <member name="P:DotNetOpenAuth.OpenId.Extensions.ExtensionArgumentsManager.ReadMode">
      <summary>
            Gets a value indicating whether the extensions are being read (as opposed to written).
            </summary>
    </member>
    <member name="T:DotNetOpenAuth.OpenId.Extensions.IClientScriptExtensionResponse">
      <summary>
            An interface that OpenID extensions can implement to allow authentication response
            messages with included extensions to be processed by Javascript on the user agent.
            </summary>
    </member>
    <member name="M:DotNetOpenAuth.OpenId.Extensions.IClientScriptExtensionResponse.InitializeJavaScriptData(DotNetOpenAuth.Messaging.IProtocolMessageWithExtensions)">
      <summary>
            Reads the extension information on an authentication response from the provider.
            </summary>
      <param name="response">The incoming OpenID response carrying the extension.</param>
      <returns>
            A Javascript snippet that when executed on the user agent returns an object with
            the information deserialized from the extension response.
            </returns>
      <remarks>
            This method is called <b>before</b> the signature on the assertion response has been
            verified.  Therefore all information in these fields should be assumed unreliable
            and potentially falsified.
            </remarks>
    </member>
    <member name="T:DotNetOpenAuth.OpenId.Extensions.OAuth.AuthorizationRequest">
      <summary>
            An extension to include with an authentication request in order to also 
            obtain authorization to access user data at the combined OpenID Provider
            and Service Provider.
            </summary>
      <remarks>
        <para>When requesting OpenID Authentication via the protocol mode "checkid_setup" 
            or "checkid_immediate", this extension can be used to request that the end 
            user authorize an OAuth access token at the same time as an OpenID 
            authentication. This is done by sending the following parameters as part 
            of the OpenID request. (Note that the use of "oauth" as part of the parameter 
            names here and in subsequent sections is just an example. See Section 5 for details.)</para>
        <para>See section 8.</para>
      </remarks>
    </member>
    <member name="F:DotNetOpenAuth.OpenId.Extensions.OAuth.AuthorizationRequest.Factory">
      <summary>
            The factory method that may be used in deserialization of this message.
            </summary>
    </member>
    <member name="M:DotNetOpenAuth.OpenId.Extensions.OAuth.AuthorizationRequest.#ctor">
      <summary>
            Initializes a new instance of the <see cref="T:DotNetOpenAuth.OpenId.Extensions.OAuth.AuthorizationRequest" /> class.
            </summary>
    </member>
    <member name="P:DotNetOpenAuth.OpenId.Extensions.OAuth.AuthorizationRequest.Consumer">
      <summary>
            Gets or sets the consumer key agreed upon between the Consumer and Service Provider.
            </summary>
    </member>
    <member name="P:DotNetOpenAuth.OpenId.Extensions.OAuth.AuthorizationRequest.Scope">
      <summary>
            Gets or sets a string that encodes, in a way possibly specific to the Combined Provider, one or more scopes for the OAuth token expected in the authentication response.
            </summary>
    </member>
    <member name="T:DotNetOpenAuth.OpenId.Extensions.OAuth.AuthorizationApprovedResponse">
      <summary>
            The OAuth response that a Provider may include with a positive 
            OpenID identity assertion with an approved request token.
            </summary>
    </member>
    <member name="F:DotNetOpenAuth.OpenId.Extensions.OAuth.AuthorizationApprovedResponse.Factory">
      <summary>
            The factory method that may be used in deserialization of this message.
            </summary>
    </member>
    <member name="M:DotNetOpenAuth.OpenId.Extensions.OAuth.AuthorizationApprovedResponse.#ctor">
      <summary>
            Initializes a new instance of the <see cref="T:DotNetOpenAuth.OpenId.Extensions.OAuth.AuthorizationApprovedResponse" /> class.
            </summary>
    </member>
    <member name="P:DotNetOpenAuth.OpenId.Extensions.OAuth.AuthorizationApprovedResponse.RequestToken">
      <summary>
            Gets or sets the user-approved request token.
            </summary>
      <value>The request token.</value>
    </member>
    <member name="P:DotNetOpenAuth.OpenId.Extensions.OAuth.AuthorizationApprovedResponse.Scope">
      <summary>
            Gets or sets a string that encodes, in a way possibly specific to the Combined Provider, one or more scopes that the returned request token is valid for. This will typically indicate a subset of the scopes requested in Section 8.
            </summary>
    </member>
    <member name="T:DotNetOpenAuth.OpenId.Extensions.OAuth.Constants">
      <summary>
            Constants used in the OpenID OAuth extension.
            </summary>
    </member>
    <member name="F:DotNetOpenAuth.OpenId.Extensions.OAuth.Constants.TypeUri">
      <summary>
            The TypeURI for the OpenID OAuth extension.
            </summary>
    </member>
    <member name="F:DotNetOpenAuth.OpenId.Extensions.OAuth.Constants.RequestTokenParameter">
      <summary>
            The name of the parameter that carries the request token in the response.
            </summary>
    </member>
    <member name="T:DotNetOpenAuth.OpenId.Extensions.OAuth.AuthorizationDeclinedResponse">
      <summary>
            The OAuth response that a Provider should include with a positive 
            OpenID identity assertion when OAuth authorization was declined.
            </summary>
    </member>
    <member name="F:DotNetOpenAuth.OpenId.Extensions.OAuth.AuthorizationDeclinedResponse.Factory">
      <summary>
            The factory method that may be used in deserialization of this message.
            </summary>
    </member>
    <member name="M:DotNetOpenAuth.OpenId.Extensions.OAuth.AuthorizationDeclinedResponse.#ctor">
      <summary>
            Initializes a new instance of the <see cref="T:DotNetOpenAuth.OpenId.Extensions.OAuth.AuthorizationDeclinedResponse" /> class.
            </summary>
    </member>
    <member name="T:DotNetOpenAuth.OpenId.Extensions.OpenIdExtensionFactoryAggregator">
      <summary>
            An OpenID extension factory that only delegates extension
            instantiation requests to other factories.
            </summary>
    </member>
    <member name="F:DotNetOpenAuth.OpenId.Extensions.OpenIdExtensionFactoryAggregator.factories">
      <summary>
            The list of factories this factory delegates to.
            </summary>
    </member>
    <member name="M:DotNetOpenAuth.OpenId.Extensions.OpenIdExtensionFactoryAggregator.#ctor">
      <summary>
            Initializes a new instance of the <see cref="T:DotNetOpenAuth.OpenId.Extensions.OpenIdExtensionFactoryAggregator" /> class.
            </summary>
    </member>
    <member name="M:DotNetOpenAuth.OpenId.Extensions.OpenIdExtensionFactoryAggregator.Create(System.String,System.Collections.Generic.IDictionary{System.String,System.String},DotNetOpenAuth.Messaging.IProtocolMessageWithExtensions,System.Boolean)">
      <summary>
            Creates a new instance of some extension based on the received extension parameters.
            </summary>
      <param name="typeUri">The type URI of the extension.</param>
      <param name="data">The parameters associated specifically with this extension.</param>
      <param name="baseMessage">The OpenID message carrying this extension.</param>
      <param name="isProviderRole">A value indicating whether this extension is being received at the OpenID Provider.</param>
      <returns>
            An instance of <see cref="T:DotNetOpenAuth.OpenId.Messages.IOpenIdMessageExtension" /> if the factory recognizes
            the extension described in the input parameters; <c>null</c> otherwise.
            </returns>
      <remarks>
            This factory method need only initialize properties in the instantiated extension object
            that are not bound using <see cref="T:DotNetOpenAuth.Messaging.MessagePartAttribute" />.
            </remarks>
    </member>
    <member name="M:DotNetOpenAuth.OpenId.Extensions.OpenIdExtensionFactoryAggregator.LoadFromConfiguration">
      <summary>
            Loads the default factory and additional ones given by the configuration.
            </summary>
      <returns>A new instance of <see cref="T:DotNetOpenAuth.OpenId.Extensions.OpenIdExtensionFactoryAggregator" />.</returns>
    </member>
    <member name="P:DotNetOpenAuth.OpenId.Extensions.OpenIdExtensionFactoryAggregator.Factories">
      <summary>
            Gets the extension factories that this aggregating factory delegates to.
            </summary>
      <value>A list of factories.  May be empty, but never null.</value>
    </member>
    <member name="T:DotNetOpenAuth.OpenId.Extensions.StandardOpenIdExtensionFactory">
      <summary>
            An OpenID extension factory that supports registration so that third-party
            extensions can add themselves to this library's supported extension list.
            </summary>
    </member>
    <member name="F:DotNetOpenAuth.OpenId.Extensions.StandardOpenIdExtensionFactory.registeredExtensions">
      <summary>
            A collection of the registered OpenID extensions.
            </summary>
    </member>
    <member name="M:DotNetOpenAuth.OpenId.Extensions.StandardOpenIdExtensionFactory.#ctor">
      <summary>
            Initializes a new instance of the <see cref="T:DotNetOpenAuth.OpenId.Extensions.StandardOpenIdExtensionFactory" /> class.
            </summary>
    </member>
    <member name="M:DotNetOpenAuth.OpenId.Extensions.StandardOpenIdExtensionFactory.Create(System.String,System.Collections.Generic.IDictionary{System.String,System.String},DotNetOpenAuth.Messaging.IProtocolMessageWithExtensions,System.Boolean)">
      <summary>
            Creates a new instance of some extension based on the received extension parameters.
            </summary>
      <param name="typeUri">The type URI of the extension.</param>
      <param name="data">The parameters associated specifically with this extension.</param>
      <param name="baseMessage">The OpenID message carrying this extension.</param>
      <param name="isProviderRole">A value indicating whether this extension is being received at the OpenID Provider.</param>
      <returns>
            An instance of <see cref="T:DotNetOpenAuth.OpenId.Messages.IOpenIdMessageExtension" /> if the factory recognizes
            the extension described in the input parameters; <c>null</c> otherwise.
            </returns>
      <remarks>
            This factory method need only initialize properties in the instantiated extension object
            that are not bound using <see cref="T:DotNetOpenAuth.Messaging.MessagePartAttribute" />.
            </remarks>
    </member>
    <member name="M:DotNetOpenAuth.OpenId.Extensions.StandardOpenIdExtensionFactory.RegisterExtension(DotNetOpenAuth.OpenId.Extensions.StandardOpenIdExtensionFactory.CreateDelegate)">
      <summary>
            Registers a new extension delegate.
            </summary>
      <param name="creator">The factory method that can create the extension.</param>
    </member>
    <member name="T:DotNetOpenAuth.OpenId.Extensions.StandardOpenIdExtensionFactory.CreateDelegate">
      <summary>
            A delegate that individual extensions may register with this factory.
            </summary>
      <param name="typeUri">The type URI of the extension.</param>
      <param name="data">The parameters associated specifically with this extension.</param>
      <param name="baseMessage">The OpenID message carrying this extension.</param>
      <param name="isProviderRole">A value indicating whether this extension is being received at the OpenID Provider.</param>
      <returns>
            An instance of <see cref="T:DotNetOpenAuth.OpenId.Messages.IOpenIdMessageExtension" /> if the factory recognizes
            the extension described in the input parameters; <c>null</c> otherwise.
            </returns>
    </member>
    <member name="T:DotNetOpenAuth.OpenId.Extensions.ProviderAuthenticationPolicy.AuthenticationPolicies">
      <summary>
            Well-known authentication policies defined in the PAPE extension spec or by a recognized
            standards body.
            </summary>
      <remarks>
            This is a class of constants rather than a flags enum because policies may be
            freely defined and used by anyone, just by using a new Uri.
            </remarks>
    </member>
    <member name="F:DotNetOpenAuth.OpenId.Extensions.ProviderAuthenticationPolicy.AuthenticationPolicies.PhishingResistant">
      <summary>
            An authentication mechanism where the End User does not provide a shared secret to a party potentially under the control of the Relying Party. (Note that the potentially malicious Relying Party controls where the User-Agent is redirected to and thus may not send it to the End User's actual OpenID Provider).
            </summary>
    </member>
    <member name="F:DotNetOpenAuth.OpenId.Extensions.ProviderAuthenticationPolicy.AuthenticationPolicies.MultiFactor">
      <summary>
            An authentication mechanism where the End User authenticates to the OpenID Provider by providing over one authentication factor. Common authentication factors are something you know, something you have, and something you are. An example would be authentication using a password and a software token or digital certificate.
            </summary>
    </member>
    <member name="F:DotNetOpenAuth.OpenId.Extensions.ProviderAuthenticationPolicy.AuthenticationPolicies.PhysicalMultiFactor">
      <summary>
            An authentication mechanism where the End User authenticates to the OpenID Provider by providing over one authentication factor where at least one of the factors is a physical factor such as a hardware device or biometric. Common authentication factors are something you know, something you have, and something you are. This policy also implies the Multi-Factor Authentication policy (http://schemas.openid.net/pape/policies/2007/06/multi-factor) and both policies MAY BE specified in conjunction without conflict. An example would be authentication using a password and a hardware token.
            </summary>
    </member>
    <member name="F:DotNetOpenAuth.OpenId.Extensions.ProviderAuthenticationPolicy.AuthenticationPolicies.PrivatePersonalIdentifier">
      <summary>
            Indicates that the Provider MUST use a pair-wise pseudonym for the user that is persistent 
            and unique across the requesting realm as the openid.claimed_id and openid.identity (see Section 4.2).
            </summary>
    </member>
    <member name="F:DotNetOpenAuth.OpenId.Extensions.ProviderAuthenticationPolicy.AuthenticationPolicies.USGovernmentTrustLevel1">
      <summary>
            Indicates that the OP MUST only respond with a positive assertion if the requirements demonstrated 
            by the OP to obtain certification by a Federally adopted Trust Framework Provider have been met.
            </summary>
      <remarks>
            Notwithstanding the RP may request this authentication policy, the RP MUST still
            verify that this policy appears in the positive assertion response rather than assume the OP
            recognized and complied with the request.
            </remarks>
    </member>
    <member name="F:DotNetOpenAuth.OpenId.Extensions.ProviderAuthenticationPolicy.AuthenticationPolicies.NoPersonallyIdentifiableInformation">
      <summary>
            Indicates that the OP MUST not include any OpenID Attribute Exchange or Simple Registration 
            information regarding the user in the assertion.
            </summary>
    </member>
    <member name="F:DotNetOpenAuth.OpenId.Extensions.ProviderAuthenticationPolicy.AuthenticationPolicies.None">
      <summary>
            Used in a PAPE response to indicate that no PAPE authentication policies could be satisfied.
            </summary>
      <remarks>
            Used internally by the PAPE extension, so that users don't have to know about it.
            </remarks>
    </member>
    <member name="T:DotNetOpenAuth.OpenId.Extensions.ProviderAuthenticationPolicy.Constants">
      <summary>
            OpenID Provider Authentication Policy extension constants.
            </summary>
    </member>
    <member name="F:DotNetOpenAuth.OpenId.Extensions.ProviderAuthenticationPolicy.Constants.TypeUri">
      <summary>
            The namespace used by this extension in messages.
            </summary>
    </member>
    <member name="F:DotNetOpenAuth.OpenId.Extensions.ProviderAuthenticationPolicy.Constants.CompatibilityAlias">
      <summary>
            The namespace alias to use for OpenID 1.x interop, where aliases are not defined in the message.
            </summary>
    </member>
    <member name="F:DotNetOpenAuth.OpenId.Extensions.ProviderAuthenticationPolicy.Constants.AuthLevelNamespaceDeclarationPrefix">
      <summary>
            The string to prepend on an Auth Level Type alias definition.
            </summary>
    </member>
    <member name="T:DotNetOpenAuth.OpenId.Extensions.ProviderAuthenticationPolicy.Constants.AssuranceLevels">
      <summary>
            Well-known assurance level Type URIs.
            </summary>
    </member>
    <member name="F:DotNetOpenAuth.OpenId.Extensions.ProviderAuthenticationPolicy.Constants.AssuranceLevels.NistTypeUri">
      <summary>
            The Type URI of the NIST assurance level.
            </summary>
    </member>
    <member name="F:DotNetOpenAuth.OpenId.Extensions.ProviderAuthenticationPolicy.Constants.AssuranceLevels.PreferredTypeUriToAliasMap">
      <summary>
            A mapping between the PAPE TypeURI and the alias to use if 
            possible for backward compatibility reasons.
            </summary>
    </member>
    <member name="T:DotNetOpenAuth.OpenId.Extensions.ProviderAuthenticationPolicy.Constants.RequestParameters">
      <summary>
            Parameters to be included with PAPE requests.
            </summary>
    </member>
    <member name="F:DotNetOpenAuth.OpenId.Extensions.ProviderAuthenticationPolicy.Constants.RequestParameters.MaxAuthAge">
      <summary>
            Optional. If the End User has not actively authenticated to the OP within the number of seconds specified in a manner fitting the requested policies, the OP SHOULD authenticate the End User for this request.
            </summary>
      <value>Integer value greater than or equal to zero in seconds.</value>
      <remarks>
            The OP should realize that not adhering to the request for re-authentication most likely means that the End User will not be allowed access to the services provided by the RP. If this parameter is absent in the request, the OP should authenticate the user at its own discretion.
            </remarks>
    </member>
    <member name="F:DotNetOpenAuth.OpenId.Extensions.ProviderAuthenticationPolicy.Constants.RequestParameters.PreferredAuthPolicies">
      <summary>
            Zero or more authentication policy URIs that the OP SHOULD conform to when authenticating the user. If multiple policies are requested, the OP SHOULD satisfy as many as it can.
            </summary>
      <value>Space separated list of authentication policy URIs.</value>
      <remarks>
            If no policies are requested, the RP may be interested in other information such as the authentication age.
            </remarks>
    </member>
    <member name="F:DotNetOpenAuth.OpenId.Extensions.ProviderAuthenticationPolicy.Constants.RequestParameters.PreferredAuthLevelTypes">
      <summary>
            The space separated list of the name spaces of the custom Assurance Level that RP requests, in the order of its preference.
            </summary>
    </member>
    <member name="T:DotNetOpenAuth.OpenId.Extensions.ProviderAuthenticationPolicy.DateTimeEncoder">
      <summary>
            An encoder/decoder design for DateTimes that must conform to the PAPE spec.
            </summary>
      <remarks>
            The timestamp MUST be formatted as specified in section 5.6 of [RFC3339] (Klyne, G. and C. Newman, “Date and Time on the Internet: Timestamps,” .), with the following restrictions:
             * All times must be in the UTC timezone, indicated with a "Z".
             * No fractional seconds are allowed
            For example: 2005-05-15T17:11:51Z
            </remarks>
    </member>
    <member name="F:DotNetOpenAuth.OpenId.Extensions.ProviderAuthenticationPolicy.DateTimeEncoder.PermissibleDateTimeFormats">
      <summary>
            An array of the date/time formats allowed by the PAPE extension.
            </summary>
      <remarks>
            TODO: This array of formats is not yet a complete list.
            </remarks>
    </member>
    <member name="M:DotNetOpenAuth.OpenId.Extensions.ProviderAuthenticationPolicy.DateTimeEncoder.Encode(System.Object)">
      <summary>
            Encodes the specified value.
            </summary>
      <param name="value">The value.  Guaranteed to never be null.</param>
      <returns>
            The <paramref name="value" /> in string form, ready for message transport.
            </returns>
    </member>
    <member name="M:DotNetOpenAuth.OpenId.Extensions.ProviderAuthenticationPolicy.DateTimeEncoder.Decode(System.String)">
      <summary>
            Decodes the specified value.
            </summary>
      <param name="value">The string value carried by the transport.  Guaranteed to never be null, although it may be empty.</param>
      <returns>
            The deserialized form of the given string.
            </returns>
      <exception cref="T:System.FormatException">Thrown when the string value given cannot be decoded into the required object type.</exception>
    </member>
    <member name="T:DotNetOpenAuth.OpenId.Extensions.ProviderAuthenticationPolicy.NistAssuranceLevel">
      <summary>
            Descriptions for NIST-defined levels of assurance that a credential
            has not been compromised and therefore the extent to which an
            authentication assertion can be trusted.
            </summary>
      <remarks>
        <para>One using this enum should review the following publication for details
            before asserting or interpreting what these levels signify, notwithstanding
            the brief summaries attached to each level in DotNetOpenId documentation.
            http://csrc.nist.gov/publications/nistpubs/800-63/SP800-63V1_0_2.pdf</para>
        <para>
            See PAPE spec Appendix A.1.2 (NIST Assurance Levels) for high-level example classifications of authentication methods within the defined levels.
            </para>
      </remarks>
    </member>
    <member name="F:DotNetOpenAuth.OpenId.Extensions.ProviderAuthenticationPolicy.NistAssuranceLevel.InsufficientForLevel1">
      <summary>
            Not an assurance level defined by NIST, but rather SHOULD be used to 
            signify that the OP recognizes the parameter and the End User 
            authentication did not meet the requirements of Level 1.
            </summary>
    </member>
    <member name="F:DotNetOpenAuth.OpenId.Extensions.ProviderAuthenticationPolicy.NistAssuranceLevel.Level1">
      <summary>
            See this document for a thorough description:
            http://csrc.nist.gov/publications/nistpubs/800-63/SP800-63V1_0_2.pdf
            </summary>
    </member>
    <member name="F:DotNetOpenAuth.OpenId.Extensions.ProviderAuthenticationPolicy.NistAssuranceLevel.Level2">
      <summary>
            See this document for a thorough description:
            http://csrc.nist.gov/publications/nistpubs/800-63/SP800-63V1_0_2.pdf
            </summary>
    </member>
    <member name="F:DotNetOpenAuth.OpenId.Extensions.ProviderAuthenticationPolicy.NistAssuranceLevel.Level3">
      <summary>
            See this document for a thorough description:
            http://csrc.nist.gov/publications/nistpubs/800-63/SP800-63V1_0_2.pdf
            </summary>
    </member>
    <member name="F:DotNetOpenAuth.OpenId.Extensions.ProviderAuthenticationPolicy.NistAssuranceLevel.Level4">
      <summary>
            See this document for a thorough description:
            http://csrc.nist.gov/publications/nistpubs/800-63/SP800-63V1_0_2.pdf
            </summary>
    </member>
    <member name="T:DotNetOpenAuth.OpenId.Extensions.ProviderAuthenticationPolicy.PapeUtilities">
      <summary>
            Utility methods for use by the PAPE extension.
            </summary>
    </member>
    <member name="M:DotNetOpenAuth.OpenId.Extensions.ProviderAuthenticationPolicy.PapeUtilities.FindIncomingAliases(System.Collections.Generic.IDictionary{System.String,System.String})">
      <summary>
            Looks at the incoming fields and figures out what the aliases and name spaces for auth level types are.
            </summary>
      <param name="fields">The incoming message data in which to discover TypeURIs and aliases.</param>
      <returns>The <see cref="T:DotNetOpenAuth.OpenId.Extensions.AliasManager" /> initialized with the given data.</returns>
    </member>
    <member name="M:DotNetOpenAuth.OpenId.Extensions.ProviderAuthenticationPolicy.PapeUtilities.ConcatenateListOfElements(System.Collections.Generic.IEnumerable{System.String})">
      <summary>
            Concatenates a sequence of strings using a space as a separator.
            </summary>
      <param name="values">The elements to concatenate together..</param>
      <returns>The concatenated string of elements.</returns>
      <exception cref="T:System.FormatException">Thrown if any element in the sequence includes a space.</exception>
    </member>
    <member name="T:DotNetOpenAuth.OpenId.Extensions.ProviderAuthenticationPolicy.PolicyRequest">
      <summary>
            The PAPE request part of an OpenID Authentication request message.
            </summary>
    </member>
    <member name="F:DotNetOpenAuth.OpenId.Extensions.ProviderAuthenticationPolicy.PolicyRequest.Factory">
      <summary>
            The factory method that may be used in deserialization of this message.
            </summary>
    </member>
    <member name="F:DotNetOpenAuth.OpenId.Extensions.ProviderAuthenticationPolicy.PolicyRequest.preferredPoliciesString">
      <summary>
            The transport field for the RP's preferred authentication policies.
            </summary>
      <remarks>
            This field is written to/read from during custom serialization.
            </remarks>
    </member>
    <member name="M:DotNetOpenAuth.OpenId.Extensions.ProviderAuthenticationPolicy.PolicyRequest.#ctor">
      <summary>
            Initializes a new instance of the <see cref="T:DotNetOpenAuth.OpenId.Extensions.ProviderAuthenticationPolicy.PolicyRequest" /> class.
            </summary>
    </member>
    <member name="M:DotNetOpenAuth.OpenId.Extensions.ProviderAuthenticationPolicy.PolicyRequest.DotNetOpenAuth#Messaging#IMessageWithEvents#OnSending">
      <summary>
            Called when the message is about to be transmitted,
            before it passes through the channel binding elements.
            </summary>
    </member>
    <member name="M:DotNetOpenAuth.OpenId.Extensions.ProviderAuthenticationPolicy.PolicyRequest.DotNetOpenAuth#Messaging#IMessageWithEvents#OnReceiving">
      <summary>
            Called when the message has been received,
            after it passes through the channel binding elements.
            </summary>
    </member>
    <member name="M:DotNetOpenAuth.OpenId.Extensions.ProviderAuthenticationPolicy.PolicyRequest.Equals(System.Object)">
      <summary>
            Determines whether the specified <see cref="T:System.Object" /> is equal to the current <see cref="T:System.Object" />.
            </summary>
      <param name="obj">The <see cref="T:System.Object" /> to compare with the current <see cref="T:System.Object" />.</param>
      <returns>
            true if the specified <see cref="T:System.Object" /> is equal to the current <see cref="T:System.Object" />; otherwise, false.
            </returns>
      <exception cref="T:System.NullReferenceException">
            The <paramref name="obj" /> parameter is null.
            </exception>
    </member>
    <member name="M:DotNetOpenAuth.OpenId.Extensions.ProviderAuthenticationPolicy.PolicyRequest.GetHashCode">
      <summary>
            Serves as a hash function for a particular type.
            </summary>
      <returns>
            A hash code for the current <see cref="T:System.Object" />.
            </returns>
    </member>
    <member name="M:DotNetOpenAuth.OpenId.Extensions.ProviderAuthenticationPolicy.PolicyRequest.SerializePolicies(System.Collections.Generic.IEnumerable{System.String})">
      <summary>
            Serializes the policies as a single string per the PAPE spec..
            </summary>
      <param name="policies">The policies to include in the list.</param>
      <returns>The concatenated string of the given policies.</returns>
    </member>
    <member name="M:DotNetOpenAuth.OpenId.Extensions.ProviderAuthenticationPolicy.PolicyRequest.SerializeAuthLevels(System.Collections.Generic.IList{System.String},DotNetOpenAuth.OpenId.Extensions.AliasManager)">
      <summary>
            Serializes the auth levels to a list of aliases.
            </summary>
      <param name="preferredAuthLevelTypes">The preferred auth level types.</param>
      <param name="aliases">The alias manager.</param>
      <returns>A space-delimited list of aliases.</returns>
    </member>
    <member name="P:DotNetOpenAuth.OpenId.Extensions.ProviderAuthenticationPolicy.PolicyRequest.MaximumAuthenticationAge">
      <summary>
            Gets or sets the maximum acceptable time since the End User has 
            actively authenticated to the OP in a manner fitting the requested
            policies, beyond which the Provider SHOULD authenticate the 
            End User for this request.
            </summary>
      <remarks>
            The OP should realize that not adhering to the request for re-authentication
            most likely means that the End User will not be allowed access to the 
            services provided by the RP. If this parameter is absent in the request, 
            the OP should authenticate the user at its own discretion.
            </remarks>
    </member>
    <member name="P:DotNetOpenAuth.OpenId.Extensions.ProviderAuthenticationPolicy.PolicyRequest.PreferredPolicies">
      <summary>
            Gets the list of authentication policy URIs that the OP SHOULD 
            conform to when authenticating the user. If multiple policies are 
            requested, the OP SHOULD satisfy as many as it can.
            </summary>
      <value>List of authentication policy URIs obtainable from 
            the <see cref="T:DotNetOpenAuth.OpenId.Extensions.ProviderAuthenticationPolicy.AuthenticationPolicies" /> class or from a custom 
            list.</value>
      <remarks>
            If no policies are requested, the RP may be interested in other 
            information such as the authentication age.
            </remarks>
    </member>
    <member name="P:DotNetOpenAuth.OpenId.Extensions.ProviderAuthenticationPolicy.PolicyRequest.PreferredAuthLevelTypes">
      <summary>
            Gets the namespaces of the custom Assurance Level the 
            Relying Party requests, in the order of its preference.
            </summary>
    </member>
    <member name="T:DotNetOpenAuth.OpenId.Extensions.ProviderAuthenticationPolicy.PolicyResponse">
      <summary>
            The PAPE response part of an OpenID Authentication response message.
            </summary>
    </member>
    <member name="F:DotNetOpenAuth.OpenId.Extensions.ProviderAuthenticationPolicy.PolicyResponse.AuthLevelAliasPrefix">
      <summary>
            The first part of a parameter name that gives the custom string value for
            the assurance level.  The second part of the parameter name is the alias for
            that assurance level.
            </summary>
    </member>
    <member name="F:DotNetOpenAuth.OpenId.Extensions.ProviderAuthenticationPolicy.PolicyResponse.Factory">
      <summary>
            The factory method that may be used in deserialization of this message.
            </summary>
    </member>
    <member name="F:DotNetOpenAuth.OpenId.Extensions.ProviderAuthenticationPolicy.PolicyResponse.actualPoliciesString">
      <summary>
            One or more authentication policy URIs that the OP conformed to when authenticating the End User.
            </summary>
      <value>Space separated list of authentication policy URIs.</value>
      <remarks>
            If no policies were met though the OP wishes to convey other information in the response, this parameter MUST be included with the value of "none".
            </remarks>
    </member>
    <member name="F:DotNetOpenAuth.OpenId.Extensions.ProviderAuthenticationPolicy.PolicyResponse.authenticationTimeUtc">
      <summary>
            Backing field for the <see cref="P:DotNetOpenAuth.OpenId.Extensions.ProviderAuthenticationPolicy.PolicyResponse.AuthenticationTimeUtc" /> property.
            </summary>
    </member>
    <member name="M:DotNetOpenAuth.OpenId.Extensions.ProviderAuthenticationPolicy.PolicyResponse.#ctor">
      <summary>
            Initializes a new instance of the <see cref="T:DotNetOpenAuth.OpenId.Extensions.ProviderAuthenticationPolicy.PolicyResponse" /> class.
            </summary>
    </member>
    <member name="M:DotNetOpenAuth.OpenId.Extensions.ProviderAuthenticationPolicy.PolicyResponse.DotNetOpenAuth#Messaging#IMessageWithEvents#OnSending">
      <summary>
            Called when the message is about to be transmitted,
            before it passes through the channel binding elements.
            </summary>
    </member>
    <member name="M:DotNetOpenAuth.OpenId.Extensions.ProviderAuthenticationPolicy.PolicyResponse.DotNetOpenAuth#Messaging#IMessageWithEvents#OnReceiving">
      <summary>
            Called when the message has been received,
            after it passes through the channel binding elements.
            </summary>
    </member>
    <member name="M:DotNetOpenAuth.OpenId.Extensions.ProviderAuthenticationPolicy.PolicyResponse.Equals(System.Object)">
      <summary>
            Determines whether the specified <see cref="T:System.Object" /> is equal to the current <see cref="T:System.Object" />.
            </summary>
      <param name="obj">The <see cref="T:System.Object" /> to compare with the current <see cref="T:System.Object" />.</param>
      <returns>
            true if the specified <see cref="T:System.Object" /> is equal to the current <see cref="T:System.Object" />; otherwise, false.
            </returns>
      <exception cref="T:System.NullReferenceException">
            The <paramref name="obj" /> parameter is null.
            </exception>
    </member>
    <member name="M:DotNetOpenAuth.OpenId.Extensions.ProviderAuthenticationPolicy.PolicyResponse.GetHashCode">
      <summary>
            Serves as a hash function for a particular type.
            </summary>
      <returns>
            A hash code for the current <see cref="T:System.Object" />.
            </returns>
    </member>
    <member name="M:DotNetOpenAuth.OpenId.Extensions.ProviderAuthenticationPolicy.PolicyResponse.SerializePolicies(System.Collections.Generic.IList{System.String})">
      <summary>
            Serializes the applied policies for transmission from the Provider
            to the Relying Party.
            </summary>
      <param name="policies">The applied policies.</param>
      <returns>A space-delimited list of applied policies.</returns>
    </member>
    <member name="P:DotNetOpenAuth.OpenId.Extensions.ProviderAuthenticationPolicy.PolicyResponse.ActualPolicies">
      <summary>
            Gets a list of authentication policy URIs that the 
            OP conformed to when authenticating the End User.
            </summary>
    </member>
    <member name="P:DotNetOpenAuth.OpenId.Extensions.ProviderAuthenticationPolicy.PolicyResponse.AuthenticationTimeUtc">
      <summary>
            Gets or sets the most recent timestamp when the End User has 
            actively authenticated to the OP in a manner fitting the asserted policies.
            </summary>
      <remarks>
            If the RP's request included the "openid.max_auth_age" parameter 
            then the OP MUST include "openid.auth_time" in its response. 
            If "openid.max_auth_age" was not requested, the OP MAY choose to include 
            "openid.auth_time" in its response.
            </remarks>
    </member>
    <member name="P:DotNetOpenAuth.OpenId.Extensions.ProviderAuthenticationPolicy.PolicyResponse.NistAssuranceLevel">
      <summary>
            Gets or sets the Assurance Level as defined by the National 
            Institute of Standards and Technology (NIST) in Special Publication 
            800-63 (Burr, W., Dodson, D., and W. Polk, Ed., “Electronic 
            Authentication Guideline,” April 2006.) [NIST_SP800‑63] corresponding 
            to the authentication method and policies employed by the OP when 
            authenticating the End User.
            </summary>
      <remarks>
            See PAPE spec Appendix A.1.2 (NIST Assurance Levels) for high-level 
            example classifications of authentication methods within the defined 
            levels.
            </remarks>
    </member>
    <member name="P:DotNetOpenAuth.OpenId.Extensions.ProviderAuthenticationPolicy.PolicyResponse.AssuranceLevels">
      <summary>
            Gets a dictionary where keys are the authentication level type URIs and
            the values are the per authentication level defined custom value.
            </summary>
      <remarks>
            A very common key is <see cref="F:DotNetOpenAuth.OpenId.Extensions.ProviderAuthenticationPolicy.Constants.AssuranceLevels.NistTypeUri" />
            and values for this key are available in <see cref="P:DotNetOpenAuth.OpenId.Extensions.ProviderAuthenticationPolicy.PolicyResponse.NistAssuranceLevel" />.
            </remarks>
    </member>
    <member name="P:DotNetOpenAuth.OpenId.Extensions.ProviderAuthenticationPolicy.PolicyResponse.IsSignedByProvider">
      <summary>
            Gets a value indicating whether this extension is signed by the Provider.
            </summary>
      <value>
        <c>true</c> if this instance is signed by the Provider; otherwise, <c>false</c>.
            </value>
    </member>
    <member name="T:DotNetOpenAuth.OpenId.Extensions.ProviderAuthenticationPolicy.TimespanSecondsEncoder">
      <summary>
            Encodes and decodes the <see cref="T:System.TimeSpan" /> as an integer of total seconds.
            </summary>
    </member>
    <member name="M:DotNetOpenAuth.OpenId.Extensions.ProviderAuthenticationPolicy.TimespanSecondsEncoder.Encode(System.Object)">
      <summary>
            Encodes the specified value.
            </summary>
      <param name="value">The value.  Guaranteed to never be null.</param>
      <returns>
            The <paramref name="value" /> in string form, ready for message transport.
            </returns>
    </member>
    <member name="M:DotNetOpenAuth.OpenId.Extensions.ProviderAuthenticationPolicy.TimespanSecondsEncoder.Decode(System.String)">
      <summary>
            Decodes the specified value.
            </summary>
      <param name="value">The string value carried by the transport.  Guaranteed to never be null, although it may be empty.</param>
      <returns>
            The deserialized form of the given string.
            </returns>
      <exception cref="T:System.FormatException">Thrown when the string value given cannot be decoded into the required object type.</exception>
    </member>
    <member name="T:DotNetOpenAuth.OpenId.Extensions.SimpleRegistration.ClaimsRequest">
      <summary>
            Carries the request/require/none demand state of the simple registration fields.
            </summary>
    </member>
    <member name="F:DotNetOpenAuth.OpenId.Extensions.SimpleRegistration.ClaimsRequest.Factory">
      <summary>
            The factory method that may be used in deserialization of this message.
            </summary>
    </member>
    <member name="F:DotNetOpenAuth.OpenId.Extensions.SimpleRegistration.ClaimsRequest.additionalTypeUris">
      <summary>
            Additional type URIs that this extension is sometimes known by remote parties.
            </summary>
    </member>
    <member name="F:DotNetOpenAuth.OpenId.Extensions.SimpleRegistration.ClaimsRequest.typeUriDeserializedFrom">
      <summary>
            The type URI that this particular (deserialized) extension was read in using,
            allowing a response to alter be crafted using the same type URI.
            </summary>
    </member>
    <member name="M:DotNetOpenAuth.OpenId.Extensions.SimpleRegistration.ClaimsRequest.#ctor">
      <summary>
            Initializes a new instance of the <see cref="T:DotNetOpenAuth.OpenId.Extensions.SimpleRegistration.ClaimsRequest" /> class.
            </summary>
    </member>
    <member name="M:DotNetOpenAuth.OpenId.Extensions.SimpleRegistration.ClaimsRequest.#ctor(System.String)">
      <summary>
            Initializes a new instance of the <see cref="T:DotNetOpenAuth.OpenId.Extensions.SimpleRegistration.ClaimsRequest" /> class
            by deserializing from a message.
            </summary>
      <param name="typeUri">The type URI this extension was recognized by in the OpenID message.</param>
    </member>
    <member name="M:DotNetOpenAuth.OpenId.Extensions.SimpleRegistration.ClaimsRequest.op_Equality(DotNetOpenAuth.OpenId.Extensions.SimpleRegistration.ClaimsRequest,DotNetOpenAuth.OpenId.Extensions.SimpleRegistration.ClaimsRequest)">
      <summary>
            Tests equality between two <see cref="T:DotNetOpenAuth.OpenId.Extensions.SimpleRegistration.ClaimsRequest" /> structs.
            </summary>
      <param name="one">One instance to compare.</param>
      <param name="other">Another instance to compare.</param>
      <returns>The result of the operator.</returns>
    </member>
    <member name="M:DotNetOpenAuth.OpenId.Extensions.SimpleRegistration.ClaimsRequest.op_Inequality(DotNetOpenAuth.OpenId.Extensions.SimpleRegistration.ClaimsRequest,DotNetOpenAuth.OpenId.Extensions.SimpleRegistration.ClaimsRequest)">
      <summary>
            Tests inequality between two <see cref="T:DotNetOpenAuth.OpenId.Extensions.SimpleRegistration.ClaimsRequest" /> structs.
            </summary>
      <param name="one">One instance to compare.</param>
      <param name="other">Another instance to compare.</param>
      <returns>The result of the operator.</returns>
    </member>
    <member name="M:DotNetOpenAuth.OpenId.Extensions.SimpleRegistration.ClaimsRequest.Equals(System.Object)">
      <summary>
            Tests equality between two <see cref="T:DotNetOpenAuth.OpenId.Extensions.SimpleRegistration.ClaimsRequest" /> structs.
            </summary>
      <param name="obj">The <see cref="T:System.Object" /> to compare with the current <see cref="T:System.Object" />.</param>
      <returns>
            true if the specified <see cref="T:System.Object" /> is equal to the current <see cref="T:System.Object" />; otherwise, false.
            </returns>
      <exception cref="T:System.NullReferenceException">
            The <paramref name="obj" /> parameter is null.
            </exception>
    </member>
    <member name="M:DotNetOpenAuth.OpenId.Extensions.SimpleRegistration.ClaimsRequest.GetHashCode">
      <summary>
            Serves as a hash function for a particular type.
            </summary>
      <returns>
            A hash code for the current <see cref="T:System.Object" />.
            </returns>
    </member>
    <member name="M:DotNetOpenAuth.OpenId.Extensions.SimpleRegistration.ClaimsRequest.ToString">
      <summary>
            Renders the requested information as a string.
            </summary>
      <returns>
            A <see cref="T:System.String" /> that represents the current <see cref="T:System.Object" />.
            </returns>
      <ensures inheritedFrom="M:System.Object.ToString" inheritedFromTypeName="Object">Contract.Result&lt;string&gt;() != null</ensures>
    </member>
    <member name="M:DotNetOpenAuth.OpenId.Extensions.SimpleRegistration.ClaimsRequest.CreateResponse">
      <summary>
            Prepares a Simple Registration response extension that is compatible with the
            version of Simple Registration used in the request message.
            </summary>
      <returns>The newly created <see cref="T:DotNetOpenAuth.OpenId.Extensions.SimpleRegistration.ClaimsResponse" /> instance.</returns>
    </member>
    <member name="M:DotNetOpenAuth.OpenId.Extensions.SimpleRegistration.ClaimsRequest.SetProfileRequestFromList(System.Collections.Generic.IEnumerable{System.String},DotNetOpenAuth.OpenId.Extensions.SimpleRegistration.DemandLevel)">
      <summary>
            Sets the profile request properties according to a list of
            field names that might have been passed in the OpenId query dictionary.
            </summary>
      <param name="fieldNames">
            The list of field names that should receive a given 
            <paramref name="requestLevel" />.  These field names should match 
            the OpenId specification for field names, omitting the 'openid.sreg' prefix.
            </param>
      <param name="requestLevel">The none/request/require state of the listed fields.</param>
    </member>
    <member name="M:DotNetOpenAuth.OpenId.Extensions.SimpleRegistration.ClaimsRequest.AssembleProfileFields(DotNetOpenAuth.OpenId.Extensions.SimpleRegistration.DemandLevel)">
      <summary>
            Assembles the profile parameter names that have a given <see cref="T:DotNetOpenAuth.OpenId.Extensions.SimpleRegistration.DemandLevel" />.
            </summary>
      <param name="level">The demand level (request, require, none).</param>
      <returns>An array of the profile parameter names that meet the criteria.</returns>
    </member>
    <member name="P:DotNetOpenAuth.OpenId.Extensions.SimpleRegistration.ClaimsRequest.PolicyUrl">
      <summary>
            Gets or sets the URL the consumer site provides for the authenticating user to review
            for how his claims will be used by the consumer web site.
            </summary>
    </member>
    <member name="P:DotNetOpenAuth.OpenId.Extensions.SimpleRegistration.ClaimsRequest.Nickname">
      <summary>
            Gets or sets the level of interest a relying party has in the nickname of the user.
            </summary>
    </member>
    <member name="P:DotNetOpenAuth.OpenId.Extensions.SimpleRegistration.ClaimsRequest.Email">
      <summary>
            Gets or sets the level of interest a relying party has in the email of the user.
            </summary>
    </member>
    <member name="P:DotNetOpenAuth.OpenId.Extensions.SimpleRegistration.ClaimsRequest.FullName">
      <summary>
            Gets or sets the level of interest a relying party has in the full name of the user.
            </summary>
    </member>
    <member name="P:DotNetOpenAuth.OpenId.Extensions.SimpleRegistration.ClaimsRequest.BirthDate">
      <summary>
            Gets or sets the level of interest a relying party has in the birthdate of the user.
            </summary>
    </member>
    <member name="P:DotNetOpenAuth.OpenId.Extensions.SimpleRegistration.ClaimsRequest.Gender">
      <summary>
            Gets or sets the level of interest a relying party has in the gender of the user.
            </summary>
    </member>
    <member name="P:DotNetOpenAuth.OpenId.Extensions.SimpleRegistration.ClaimsRequest.PostalCode">
      <summary>
            Gets or sets the level of interest a relying party has in the postal code of the user.
            </summary>
    </member>
    <member name="P:DotNetOpenAuth.OpenId.Extensions.SimpleRegistration.ClaimsRequest.Country">
      <summary>
            Gets or sets the level of interest a relying party has in the Country of the user.
            </summary>
    </member>
    <member name="P:DotNetOpenAuth.OpenId.Extensions.SimpleRegistration.ClaimsRequest.Language">
      <summary>
            Gets or sets the level of interest a relying party has in the language of the user.
            </summary>
    </member>
    <member name="P:DotNetOpenAuth.OpenId.Extensions.SimpleRegistration.ClaimsRequest.TimeZone">
      <summary>
            Gets or sets the level of interest a relying party has in the time zone of the user.
            </summary>
    </member>
    <member name="P:DotNetOpenAuth.OpenId.Extensions.SimpleRegistration.ClaimsRequest.Synthesized">
      <summary>
            Gets or sets a value indicating whether this <see cref="T:DotNetOpenAuth.OpenId.Extensions.SimpleRegistration.ClaimsRequest" /> instance
            is synthesized from an AX request at the Provider.
            </summary>
    </member>
    <member name="P:DotNetOpenAuth.OpenId.Extensions.SimpleRegistration.ClaimsRequest.RequiredList">
      <summary>
            Gets or sets the value of the sreg.required parameter.
            </summary>
      <value>A comma-delimited list of sreg fields.</value>
    </member>
    <member name="P:DotNetOpenAuth.OpenId.Extensions.SimpleRegistration.ClaimsRequest.OptionalList">
      <summary>
            Gets or sets the value of the sreg.optional parameter.
            </summary>
      <value>A comma-delimited list of sreg fields.</value>
    </member>
    <member name="T:DotNetOpenAuth.OpenId.Extensions.SimpleRegistration.ClaimsResponse">
      <summary>
            A struct storing Simple Registration field values describing an
            authenticating user.
            </summary>
    </member>
    <member name="F:DotNetOpenAuth.OpenId.Extensions.SimpleRegistration.ClaimsResponse.Factory">
      <summary>
            The factory method that may be used in deserialization of this message.
            </summary>
    </member>
    <member name="F:DotNetOpenAuth.OpenId.Extensions.SimpleRegistration.ClaimsResponse.birthDateValidator">
      <summary>
            The allowed format for birthdates.
            </summary>
    </member>
    <member name="F:DotNetOpenAuth.OpenId.Extensions.SimpleRegistration.ClaimsResponse.birthDateRaw">
      <summary>
            Storage for the raw string birthdate value.
            </summary>
    </member>
    <member name="F:DotNetOpenAuth.OpenId.Extensions.SimpleRegistration.ClaimsResponse.birthDate">
      <summary>
            Backing field for the <see cref="P:DotNetOpenAuth.OpenId.Extensions.SimpleRegistration.ClaimsResponse.BirthDate" /> property.
            </summary>
    </member>
    <member name="F:DotNetOpenAuth.OpenId.Extensions.SimpleRegistration.ClaimsResponse.culture">
      <summary>
            Backing field for the <see cref="P:DotNetOpenAuth.OpenId.Extensions.SimpleRegistration.ClaimsResponse.Culture" /> property.
            </summary>
    </member>
    <member name="M:DotNetOpenAuth.OpenId.Extensions.SimpleRegistration.ClaimsResponse.#ctor">
      <summary>
            Initializes a new instance of the <see cref="T:DotNetOpenAuth.OpenId.Extensions.SimpleRegistration.ClaimsResponse" /> class.
            </summary>
    </member>
    <member name="M:DotNetOpenAuth.OpenId.Extensions.SimpleRegistration.ClaimsResponse.#ctor(System.String)">
      <summary>
            Initializes a new instance of the <see cref="T:DotNetOpenAuth.OpenId.Extensions.SimpleRegistration.ClaimsResponse" /> class.
            </summary>
      <param name="typeUriToUse">
            The type URI that must be used to identify this extension in the response message.
            This value should be the same one the relying party used to send the extension request.
            </param>
    </member>
    <member name="M:DotNetOpenAuth.OpenId.Extensions.SimpleRegistration.ClaimsResponse.op_Equality(DotNetOpenAuth.OpenId.Extensions.SimpleRegistration.ClaimsResponse,DotNetOpenAuth.OpenId.Extensions.SimpleRegistration.ClaimsResponse)">
      <summary>
            Tests equality of two <see cref="T:DotNetOpenAuth.OpenId.Extensions.SimpleRegistration.ClaimsResponse" /> objects.
            </summary>
      <param name="one">One instance to compare.</param>
      <param name="other">Another instance to compare.</param>
      <returns>The result of the operator.</returns>
    </member>
    <member name="M:DotNetOpenAuth.OpenId.Extensions.SimpleRegistration.ClaimsResponse.op_Inequality(DotNetOpenAuth.OpenId.Extensions.SimpleRegistration.ClaimsResponse,DotNetOpenAuth.OpenId.Extensions.SimpleRegistration.ClaimsResponse)">
      <summary>
            Tests inequality of two <see cref="T:DotNetOpenAuth.OpenId.Extensions.SimpleRegistration.ClaimsResponse" /> objects.
            </summary>
      <param name="one">One instance to compare.</param>
      <param name="other">Another instance to compare.</param>
      <returns>The result of the operator.</returns>
    </member>
    <member name="M:DotNetOpenAuth.OpenId.Extensions.SimpleRegistration.ClaimsResponse.Equals(System.Object)">
      <summary>
            Tests equality of two <see cref="T:DotNetOpenAuth.OpenId.Extensions.SimpleRegistration.ClaimsResponse" /> objects.
            </summary>
      <param name="obj">The <see cref="T:System.Object" /> to compare with the current <see cref="T:System.Object" />.</param>
      <returns>
            true if the specified <see cref="T:System.Object" /> is equal to the current <see cref="T:System.Object" />; otherwise, false.
            </returns>
      <exception cref="T:System.NullReferenceException">
            The <paramref name="obj" /> parameter is null.
            </exception>
    </member>
    <member name="M:DotNetOpenAuth.OpenId.Extensions.SimpleRegistration.ClaimsResponse.GetHashCode">
      <summary>
            Serves as a hash function for a particular type.
            </summary>
      <returns>
            A hash code for the current <see cref="T:System.Object" />.
            </returns>
    </member>
    <member name="M:DotNetOpenAuth.OpenId.Extensions.SimpleRegistration.ClaimsResponse.DotNetOpenAuth#OpenId#Extensions#IClientScriptExtensionResponse#InitializeJavaScriptData(DotNetOpenAuth.Messaging.IProtocolMessageWithExtensions)">
      <summary>
            Reads the extension information on an authentication response from the provider.
            </summary>
      <param name="response">The incoming OpenID response carrying the extension.</param>
      <returns>
            A Javascript snippet that when executed on the user agent returns an object with
            the information deserialized from the extension response.
            </returns>
      <remarks>
            This method is called <b>before</b> the signature on the assertion response has been
            verified.  Therefore all information in these fields should be assumed unreliable
            and potentially falsified.
            </remarks>
    </member>
    <member name="M:DotNetOpenAuth.OpenId.Extensions.SimpleRegistration.ClaimsResponse.DotNetOpenAuth#Messaging#IMessageWithEvents#OnSending">
      <summary>
            Called when the message is about to be transmitted,
            before it passes through the channel binding elements.
            </summary>
    </member>
    <member name="M:DotNetOpenAuth.OpenId.Extensions.SimpleRegistration.ClaimsResponse.DotNetOpenAuth#Messaging#IMessageWithEvents#OnReceiving">
      <summary>
            Called when the message has been received,
            after it passes through the channel binding elements.
            </summary>
    </member>
    <member name="M:DotNetOpenAuth.OpenId.Extensions.SimpleRegistration.ClaimsResponse.EmptyToNull(System.String)">
      <summary>
            Translates an empty string value to null, or passes through non-empty values.
            </summary>
      <param name="value">The value to consider changing to null.</param>
      <returns>Either null or a non-empty string.</returns>
    </member>
    <member name="P:DotNetOpenAuth.OpenId.Extensions.SimpleRegistration.ClaimsResponse.Nickname">
      <summary>
            Gets or sets the nickname the user goes by.
            </summary>
    </member>
    <member name="P:DotNetOpenAuth.OpenId.Extensions.SimpleRegistration.ClaimsResponse.Email">
      <summary>
            Gets or sets the user's email address.
            </summary>
    </member>
    <member name="P:DotNetOpenAuth.OpenId.Extensions.SimpleRegistration.ClaimsResponse.FullName">
      <summary>
            Gets or sets the full name of a user as a single string.
            </summary>
    </member>
    <member name="P:DotNetOpenAuth.OpenId.Extensions.SimpleRegistration.ClaimsResponse.BirthDate">
      <summary>
            Gets or sets the user's birthdate.
            </summary>
    </member>
    <member name="P:DotNetOpenAuth.OpenId.Extensions.SimpleRegistration.ClaimsResponse.BirthDateRaw">
      <summary>
            Gets or sets the raw birth date string given by the extension.
            </summary>
      <value>A string in the format yyyy-MM-dd.</value>
    </member>
    <member name="P:DotNetOpenAuth.OpenId.Extensions.SimpleRegistration.ClaimsResponse.Gender">
      <summary>
            Gets or sets the gender of the user.
            </summary>
    </member>
    <member name="P:DotNetOpenAuth.OpenId.Extensions.SimpleRegistration.ClaimsResponse.PostalCode">
      <summary>
            Gets or sets the zip code / postal code of the user.
            </summary>
    </member>
    <member name="P:DotNetOpenAuth.OpenId.Extensions.SimpleRegistration.ClaimsResponse.Country">
      <summary>
            Gets or sets the country of the user.
            </summary>
    </member>
    <member name="P:DotNetOpenAuth.OpenId.Extensions.SimpleRegistration.ClaimsResponse.Language">
      <summary>
            Gets or sets the primary/preferred language of the user.
            </summary>
    </member>
    <member name="P:DotNetOpenAuth.OpenId.Extensions.SimpleRegistration.ClaimsResponse.TimeZone">
      <summary>
            Gets or sets the user's timezone.
            </summary>
    </member>
    <member name="P:DotNetOpenAuth.OpenId.Extensions.SimpleRegistration.ClaimsResponse.MailAddress">
      <summary>
            Gets a combination of the user's full name and email address.
            </summary>
    </member>
    <member name="P:DotNetOpenAuth.OpenId.Extensions.SimpleRegistration.ClaimsResponse.Culture">
      <summary>
            Gets or sets a combination o the language and country of the user.
            </summary>
    </member>
    <member name="P:DotNetOpenAuth.OpenId.Extensions.SimpleRegistration.ClaimsResponse.IsSignedByProvider">
      <summary>
            Gets a value indicating whether this extension is signed by the Provider.
            </summary>
      <value>
        <c>true</c> if this instance is signed by the Provider; otherwise, <c>false</c>.
            </value>
    </member>
    <member name="T:DotNetOpenAuth.OpenId.Extensions.SimpleRegistration.Constants">
      <summary>
            Simple Registration constants
            </summary>
    </member>
    <member name="T:DotNetOpenAuth.OpenId.Extensions.SimpleRegistration.DemandLevel">
      <summary>
            Specifies what level of interest a relying party has in obtaining the value
            of a given field offered by the Simple Registration extension.
            </summary>
    </member>
    <member name="F:DotNetOpenAuth.OpenId.Extensions.SimpleRegistration.DemandLevel.NoRequest">
      <summary>
            The relying party has no interest in obtaining this field.
            </summary>
    </member>
    <member name="F:DotNetOpenAuth.OpenId.Extensions.SimpleRegistration.DemandLevel.Request">
      <summary>
            The relying party would like the value of this field, but wants
            the Provider to display the field to the user as optionally provided.
            </summary>
    </member>
    <member name="F:DotNetOpenAuth.OpenId.Extensions.SimpleRegistration.DemandLevel.Require">
      <summary>
            The relying party considers this a required field as part of
            authentication.  The Provider and/or user agent MAY still choose to
            not provide the value of the field however, according to the
            Simple Registration extension specification.
            </summary>
    </member>
    <member name="T:DotNetOpenAuth.OpenId.Extensions.SimpleRegistration.Gender">
      <summary>
            Indicates the gender of a user.
            </summary>
    </member>
    <member name="F:DotNetOpenAuth.OpenId.Extensions.SimpleRegistration.Gender.Male">
      <summary>
            The user is male.
            </summary>
    </member>
    <member name="F:DotNetOpenAuth.OpenId.Extensions.SimpleRegistration.Gender.Female">
      <summary>
            The user is female.
            </summary>
    </member>
    <member name="T:DotNetOpenAuth.OpenId.Extensions.SimpleRegistration.GenderEncoder">
      <summary>
            Encodes/decodes the Simple Registration Gender type to its string representation.
            </summary>
    </member>
    <member name="M:DotNetOpenAuth.OpenId.Extensions.SimpleRegistration.GenderEncoder.Encode(System.Object)">
      <summary>
            Encodes the specified value.
            </summary>
      <param name="value">The value.  Guaranteed to never be null.</param>
      <returns>
            The <paramref name="value" /> in string form, ready for message transport.
            </returns>
    </member>
    <member name="M:DotNetOpenAuth.OpenId.Extensions.SimpleRegistration.GenderEncoder.Decode(System.String)">
      <summary>
            Decodes the specified value.
            </summary>
      <param name="value">The string value carried by the transport.  Guaranteed to never be null, although it may be empty.</param>
      <returns>
            The deserialized form of the given string.
            </returns>
      <exception cref="T:System.FormatException">Thrown when the string value given cannot be decoded into the required object type.</exception>
    </member>
    <member name="T:DotNetOpenAuth.OpenId.Extensions.UI.UIConstants">
      <summary>
            Constants used to support the UI extension.
            </summary>
    </member>
    <member name="F:DotNetOpenAuth.OpenId.Extensions.UI.UIConstants.UITypeUri">
      <summary>
            The type URI associated with this extension.
            </summary>
    </member>
    <member name="F:DotNetOpenAuth.OpenId.Extensions.UI.UIConstants.PopupSupported">
      <summary>
            The Type URI that appears in an XRDS document when the OP supports popups through the UI extension.
            </summary>
    </member>
    <member name="F:DotNetOpenAuth.OpenId.Extensions.UI.UIConstants.LangPrefSupported">
      <summary>
            The Type URI that appears in an XRDS document when the OP supports the RP
            specifying the user's preferred language through the UI extension.
            </summary>
    </member>
    <member name="F:DotNetOpenAuth.OpenId.Extensions.UI.UIConstants.IconSupported">
      <summary>
            The Type URI that appears in the XRDS document when the OP supports the RP
            specifying the icon for the OP to display during authentication through the UI extension.
            </summary>
    </member>
    <member name="T:DotNetOpenAuth.OpenId.Extensions.UI.UIUtilities">
      <summary>
            Constants used in implementing support for the UI extension.
            </summary>
    </member>
    <member name="F:DotNetOpenAuth.OpenId.Extensions.UI.UIUtilities.PopupWidth">
      <summary>
            The required width of the popup window the relying party creates for the provider.
            </summary>
    </member>
    <member name="F:DotNetOpenAuth.OpenId.Extensions.UI.UIUtilities.PopupHeight">
      <summary>
            The required height of the popup window the relying party creates for the provider.
            </summary>
    </member>
    <member name="M:DotNetOpenAuth.OpenId.Extensions.UI.UIUtilities.GetWindowPopupScript(DotNetOpenAuth.OpenId.RelyingParty.OpenIdRelyingParty,DotNetOpenAuth.OpenId.RelyingParty.IAuthenticationRequest,System.String)">
      <summary>
            Gets the <c>window.open</c> javascript snippet to use to open a popup window
            compliant with the UI extension.
            </summary>
      <param name="relyingParty">The relying party.</param>
      <param name="request">The authentication request to place in the window.</param>
      <param name="windowName">The name to assign to the popup window.</param>
      <returns>A string starting with 'window.open' and forming just that one method call.</returns>
    </member>
    <member name="T:DotNetOpenAuth.OpenId.Extensions.UI.UIModes">
      <summary>
            Valid values for the <c>mode</c> parameter of the OpenID User Interface extension.
            </summary>
    </member>
    <member name="F:DotNetOpenAuth.OpenId.Extensions.UI.UIModes.Popup">
      <summary>
            Indicates that the Provider's authentication page appears in a popup window.
            </summary>
      <value>The constant <c>"popup"</c>.</value>
      <remarks>
        <para>The RP SHOULD create the popup to be 450 pixels wide and 500 pixels tall. The popup MUST have the address bar displayed, and MUST be in a standalone browser window. The contents of the popup MUST NOT be framed by the RP. </para>
        <para>The RP SHOULD open the popup centered above the main browser window, and SHOULD dim the contents of the parent window while the popup is active. The RP SHOULD ensure that the user is not surprised by the appearance of the popup, and understands how to interact with it. </para>
        <para>To keep the user popup user experience consistent, it is RECOMMENDED that the OP does not resize the popup window unless the OP requires additional space to show special features that are not usually displayed as part of the default popup user experience. </para>
        <para>The OP MAY close the popup without returning a response to the RP. Closing the popup without sending a response should be interpreted as a negative assertion. </para>
        <para>The response to an authentication request in a popup is unchanged from [OpenID 2.0] (OpenID 2.0 Workgroup, “OpenID 2.0,” .). Relying Parties detecting that the popup was closed without receiving an authentication response SHOULD interpret the close event to be a negative assertion.  </para>
      </remarks>
    </member>
    <member name="T:DotNetOpenAuth.OpenId.Extensions.UI.UIRequest">
      <summary>
            OpenID User Interface extension 1.0 request message.
            </summary>
      <remarks>
        <para>Implements the extension described by: http://wiki.openid.net/f/openid_ui_extension_draft01.html </para>
        <para>This extension only applies to checkid_setup requests, since checkid_immediate requests display
            no UI to the user. </para>
        <para>For rules about how the popup window should be displayed, please see the documentation of
            <see cref="F:DotNetOpenAuth.OpenId.Extensions.UI.UIModes.Popup" />. </para>
        <para>An RP may determine whether an arbitrary OP supports this extension (and thereby determine
            whether to use a standard full window redirect or a popup) via the
            <see cref="M:DotNetOpenAuth.OpenId.RelyingParty.IProviderEndpoint.IsExtensionSupported(System.Type)" /> method on the <see cref="P:DotNetOpenAuth.OpenId.RelyingParty.IAuthenticationRequest.Provider" />
            object.</para>
      </remarks>
    </member>
    <member name="F:DotNetOpenAuth.OpenId.Extensions.UI.UIRequest