//-----------------------------------------------------------------------
//
// Copyright (c) Andrew Arnott. All rights reserved.
//
//-----------------------------------------------------------------------
namespace DotNetOpenAuth.OAuth.ChannelElements {
///
/// An interface allowing OAuth hosts to inject their own algorithm for generating tokens and secrets.
///
public interface ITokenGenerator {
///
/// Generates a new token to represent a not-yet-authorized request to access protected resources.
///
/// The consumer that requested this token.
/// The newly generated token.
///
/// This method should not store the newly generated token in any persistent store.
/// This will be done in .
///
string GenerateRequestToken(string consumerKey);
///
/// Generates a new token to represent an authorized request to access protected resources.
///
/// The consumer that requested this token.
/// The newly generated token.
///
/// This method should not store the newly generated token in any persistent store.
/// This will be done in .
///
string GenerateAccessToken(string consumerKey);
///
/// Returns a cryptographically strong random string for use as a token secret.
///
/// The generated string.
string GenerateSecret();
}
}