//-----------------------------------------------------------------------
//
// Copyright (c) Outercurve Foundation. All rights reserved.
//
//-----------------------------------------------------------------------
namespace DotNetOpenAuth.OpenId.RelyingParty {
using System;
using System.Collections.ObjectModel;
using DotNetOpenAuth.Messaging;
using DotNetOpenAuth.OpenId.Messages;
///
/// A very simple IXrdsProviderEndpoint implementation for verifying that all positive
/// assertions (particularly unsolicited ones) are received from OP endpoints that
/// are deemed permissible by the host RP.
///
internal class SimpleXrdsProviderEndpoint : IProviderEndpoint {
///
/// Initializes a new instance of the class.
///
/// The positive assertion.
internal SimpleXrdsProviderEndpoint(PositiveAssertionResponse positiveAssertion) {
this.Uri = positiveAssertion.ProviderEndpoint;
this.Version = positiveAssertion.Version;
}
#region IProviderEndpoint Members
///
/// Gets the detected version of OpenID implemented by the Provider.
///
public Version Version { get; private set; }
///
/// Gets the URL that the OpenID Provider receives authentication requests at.
///
public Uri Uri { get; private set; }
///
/// Checks whether the OpenId Identifier claims support for a given extension.
///
/// The extension whose support is being queried.
///
/// True if support for the extension is advertised. False otherwise.
///
///
/// Note that a true or false return value is no guarantee of a Provider's
/// support for or lack of support for an extension. The return value is
/// determined by how the authenticating user filled out his/her XRDS document only.
/// The only way to be sure of support for a given extension is to include
/// the extension in the request and see if a response comes back for that extension.
///
bool IProviderEndpoint.IsExtensionSupported() {
throw new NotImplementedException();
}
///
/// Checks whether the OpenId Identifier claims support for a given extension.
///
/// The extension whose support is being queried.
///
/// True if support for the extension is advertised. False otherwise.
///
///
/// Note that a true or false return value is no guarantee of a Provider's
/// support for or lack of support for an extension. The return value is
/// determined by how the authenticating user filled out his/her XRDS document only.
/// The only way to be sure of support for a given extension is to include
/// the extension in the request and see if a response comes back for that extension.
///
bool IProviderEndpoint.IsExtensionSupported(Type extensionType) {
throw new NotImplementedException();
}
#endregion
}
}