//-----------------------------------------------------------------------
//
// Copyright (c) Microsoft. All rights reserved.
//
//-----------------------------------------------------------------------
namespace DotNetOpenAuth.AspNet {
using System;
using System.Web;
///
/// Represents a client which can authenticate users via an external website/provider.
///
public interface IAuthenticationClient {
///
/// Gets the name of the provider which provides authentication service.
///
string ProviderName { get; }
///
/// Attempts to authenticate users by forwarding them to an external website, and upon succcess or failure, redirect users back to the specified url.
///
///
/// The context of the current request.
///
///
/// The return url after users have completed authenticating against external website.
///
void RequestAuthentication(HttpContextBase context, Uri returnUrl);
///
/// Check if authentication succeeded after user is redirected back from the service provider.
///
///
/// The context of the current request.
///
///
/// An instance of containing authentication result.
///
AuthenticationResult VerifyAuthentication(HttpContextBase context);
}
}