//-----------------------------------------------------------------------
//
// Copyright (c) Outercurve Foundation. All rights reserved.
//
//-----------------------------------------------------------------------
namespace DotNetOpenAuth.OAuth.ChannelElements {
using System;
using DotNetOpenAuth.OAuth.Messages;
///
/// A description of a request token and its metadata as required by a Service Provider
///
public interface IServiceProviderRequestToken {
///
/// Gets the token itself.
///
string Token { get; }
///
/// Gets the consumer key that requested this token.
///
string ConsumerKey { get; }
///
/// Gets the (local) date that this request token was first created on.
///
DateTime CreatedOn { get; }
///
/// Gets or sets the callback associated specifically with this token, if any.
///
/// The callback URI; or null if no callback was specifically assigned to this token.
Uri Callback { get; set; }
///
/// Gets or sets the verifier that the consumer must include in the
/// message to exchange this request token for an access token.
///
/// The verifier code, or null if none has been assigned (yet).
string VerificationCode { get; set; }
///
/// Gets or sets the version of the Consumer that requested this token.
///
///
/// This property is used to determine whether a must be
/// generated when the user authorizes the Consumer or not.
///
Version ConsumerVersion { get; set; }
}
}