summaryrefslogtreecommitdiffstats
path: root/src/DotNetOpenAuth.OAuth2/OAuth2/Messages
diff options
context:
space:
mode:
authorAndrew Arnott <andrewarnott@gmail.com>2012-02-23 07:47:08 -0800
committerAndrew Arnott <andrewarnott@gmail.com>2012-02-23 07:47:08 -0800
commit8679fd44bbe14b590353c128d47e9a73cf180160 (patch)
tree7b69e3a3170c6c825cb958863a924146c3e427ba /src/DotNetOpenAuth.OAuth2/OAuth2/Messages
parentd1ef15d419f5235cc7266c9128790e20b92c5e58 (diff)
downloadDotNetOpenAuth-8679fd44bbe14b590353c128d47e9a73cf180160.zip
DotNetOpenAuth-8679fd44bbe14b590353c128d47e9a73cf180160.tar.gz
DotNetOpenAuth-8679fd44bbe14b590353c128d47e9a73cf180160.tar.bz2
Split out the authorization carrying messages into distinct interfaces.
This is to support additional grant types such as resource owner password credential and client credentials.
Diffstat (limited to 'src/DotNetOpenAuth.OAuth2/OAuth2/Messages')
-rw-r--r--src/DotNetOpenAuth.OAuth2/OAuth2/Messages/AccessProtectedResourceRequest.cs26
-rw-r--r--src/DotNetOpenAuth.OAuth2/OAuth2/Messages/AccessTokenAuthorizationCodeRequest.cs23
-rw-r--r--src/DotNetOpenAuth.OAuth2/OAuth2/Messages/AccessTokenRefreshRequest.cs23
-rw-r--r--src/DotNetOpenAuth.OAuth2/OAuth2/Messages/EndUserAuthorizationSuccessAccessTokenResponse.cs26
-rw-r--r--src/DotNetOpenAuth.OAuth2/OAuth2/Messages/EndUserAuthorizationSuccessAuthCodeResponse.cs22
5 files changed, 58 insertions, 62 deletions
diff --git a/src/DotNetOpenAuth.OAuth2/OAuth2/Messages/AccessProtectedResourceRequest.cs b/src/DotNetOpenAuth.OAuth2/OAuth2/Messages/AccessProtectedResourceRequest.cs
index c069d08..246a4ef 100644
--- a/src/DotNetOpenAuth.OAuth2/OAuth2/Messages/AccessProtectedResourceRequest.cs
+++ b/src/DotNetOpenAuth.OAuth2/OAuth2/Messages/AccessProtectedResourceRequest.cs
@@ -20,7 +20,7 @@ namespace DotNetOpenAuth.OAuth2.Messages {
/// When support for additional access token types is added, this class should probably be refactored
/// into derived types, where each derived type supports a particular access token type.
/// </remarks>
- internal class AccessProtectedResourceRequest : MessageBase, IAuthorizationCarryingRequest {
+ internal class AccessProtectedResourceRequest : MessageBase, IAccessTokenCarryingRequest {
/// <summary>
/// Initializes a new instance of the <see cref="AccessProtectedResourceRequest"/> class.
/// </summary>
@@ -30,19 +30,12 @@ namespace DotNetOpenAuth.OAuth2.Messages {
: base(version, MessageTransport.Direct, recipient) {
}
- /// <summary>
- /// Gets the type of the code or token.
- /// </summary>
- /// <value>The type of the code or token.</value>
- CodeOrTokenType IAuthorizationCarryingRequest.CodeOrTokenType {
- get { return CodeOrTokenType.AccessToken; }
- }
+ #region IAccessTokenCarryingRequest Members
/// <summary>
- /// Gets or sets the verification code or refresh/access token.
+ /// Gets or sets the access token.
/// </summary>
- /// <value>The code or token.</value>
- string IAuthorizationCarryingRequest.CodeOrToken {
+ string IAccessTokenCarryingRequest.AccessToken {
get { return this.AccessToken; }
set { this.AccessToken = value; }
}
@@ -50,7 +43,16 @@ namespace DotNetOpenAuth.OAuth2.Messages {
/// <summary>
/// Gets or sets the authorization that the token describes.
/// </summary>
- IAuthorizationDescription IAuthorizationCarryingRequest.AuthorizationDescription { get; set; }
+ AccessToken IAccessTokenCarryingRequest.AuthorizationDescription { get; set; }
+
+ /// <summary>
+ /// Gets the authorization that the token describes.
+ /// </summary>
+ IAuthorizationDescription IAuthorizationCarryingRequest.AuthorizationDescription {
+ get { return ((IAccessTokenCarryingRequest)this).AuthorizationDescription; }
+ }
+
+ #endregion
/// <summary>
/// Gets the type of the access token.
diff --git a/src/DotNetOpenAuth.OAuth2/OAuth2/Messages/AccessTokenAuthorizationCodeRequest.cs b/src/DotNetOpenAuth.OAuth2/OAuth2/Messages/AccessTokenAuthorizationCodeRequest.cs
index 4931040..1f244f9 100644
--- a/src/DotNetOpenAuth.OAuth2/OAuth2/Messages/AccessTokenAuthorizationCodeRequest.cs
+++ b/src/DotNetOpenAuth.OAuth2/OAuth2/Messages/AccessTokenAuthorizationCodeRequest.cs
@@ -18,7 +18,7 @@ namespace DotNetOpenAuth.OAuth2.Messages {
/// A request from a Client to an Authorization Server to exchange an authorization code for an access token,
/// and (at the authorization server's option) a refresh token.
/// </summary>
- internal class AccessTokenAuthorizationCodeRequest : AccessTokenRequestBase, IAuthorizationCarryingRequest {
+ internal class AccessTokenAuthorizationCodeRequest : AccessTokenRequestBase, IAuthorizationCodeCarryingRequest {
/// <summary>
/// Initializes a new instance of the <see cref="AccessTokenAuthorizationCodeRequest"/> class.
/// </summary>
@@ -37,19 +37,13 @@ namespace DotNetOpenAuth.OAuth2.Messages {
Requires.NotNull(authorizationServer, "authorizationServer");
}
- /// <summary>
- /// Gets the type of the code or token.
- /// </summary>
- /// <value>The type of the code or token.</value>
- CodeOrTokenType IAuthorizationCarryingRequest.CodeOrTokenType {
- get { return CodeOrTokenType.AuthorizationCode; }
- }
+ #region IAuthorizationCodeCarryingRequest Members
/// <summary>
/// Gets or sets the verification code or refresh/access token.
/// </summary>
/// <value>The code or token.</value>
- string IAuthorizationCarryingRequest.CodeOrToken {
+ string IAuthorizationCodeCarryingRequest.Code {
get { return this.AuthorizationCode; }
set { this.AuthorizationCode = value; }
}
@@ -57,7 +51,16 @@ namespace DotNetOpenAuth.OAuth2.Messages {
/// <summary>
/// Gets or sets the authorization that the token describes.
/// </summary>
- IAuthorizationDescription IAuthorizationCarryingRequest.AuthorizationDescription { get; set; }
+ AuthorizationCode IAuthorizationCodeCarryingRequest.AuthorizationDescription { get; set; }
+
+ /// <summary>
+ /// Gets the authorization that the code describes.
+ /// </summary>
+ IAuthorizationDescription IAuthorizationCarryingRequest.AuthorizationDescription {
+ get { return ((IAuthorizationCodeCarryingRequest)this).AuthorizationDescription; }
+ }
+
+ #endregion
/// <summary>
/// Gets the type of the grant.
diff --git a/src/DotNetOpenAuth.OAuth2/OAuth2/Messages/AccessTokenRefreshRequest.cs b/src/DotNetOpenAuth.OAuth2/OAuth2/Messages/AccessTokenRefreshRequest.cs
index ca7abf0..2c3ab25 100644
--- a/src/DotNetOpenAuth.OAuth2/OAuth2/Messages/AccessTokenRefreshRequest.cs
+++ b/src/DotNetOpenAuth.OAuth2/OAuth2/Messages/AccessTokenRefreshRequest.cs
@@ -14,7 +14,7 @@ namespace DotNetOpenAuth.OAuth2.Messages {
/// A request from the client to the token endpoint for a new access token
/// in exchange for a refresh token that the client has previously obtained.
/// </summary>
- internal class AccessTokenRefreshRequest : ScopedAccessTokenRequest, IAuthorizationCarryingRequest {
+ internal class AccessTokenRefreshRequest : ScopedAccessTokenRequest, IRefreshTokenCarryingRequest {
/// <summary>
/// Initializes a new instance of the <see cref="AccessTokenRefreshRequest"/> class.
/// </summary>
@@ -32,19 +32,13 @@ namespace DotNetOpenAuth.OAuth2.Messages {
: this(authorizationServer.TokenEndpoint, authorizationServer.Version) {
}
- /// <summary>
- /// Gets the type of the code or token.
- /// </summary>
- /// <value>The type of the code or token.</value>
- CodeOrTokenType IAuthorizationCarryingRequest.CodeOrTokenType {
- get { return CodeOrTokenType.RefreshToken; }
- }
+ #region IRefreshTokenCarryingRequest members
/// <summary>
/// Gets or sets the verification code or refresh/access token.
/// </summary>
/// <value>The code or token.</value>
- string IAuthorizationCarryingRequest.CodeOrToken {
+ string IRefreshTokenCarryingRequest.RefreshToken {
get { return this.RefreshToken; }
set { this.RefreshToken = value; }
}
@@ -52,7 +46,16 @@ namespace DotNetOpenAuth.OAuth2.Messages {
/// <summary>
/// Gets or sets the authorization that the token describes.
/// </summary>
- IAuthorizationDescription IAuthorizationCarryingRequest.AuthorizationDescription { get; set; }
+ RefreshToken IRefreshTokenCarryingRequest.AuthorizationDescription { get; set; }
+
+ /// <summary>
+ /// Gets the authorization that the token describes.
+ /// </summary>
+ IAuthorizationDescription IAuthorizationCarryingRequest.AuthorizationDescription {
+ get { return ((IRefreshTokenCarryingRequest)this).AuthorizationDescription; }
+ }
+
+ #endregion
/// <summary>
/// Gets or sets the refresh token.
diff --git a/src/DotNetOpenAuth.OAuth2/OAuth2/Messages/EndUserAuthorizationSuccessAccessTokenResponse.cs b/src/DotNetOpenAuth.OAuth2/OAuth2/Messages/EndUserAuthorizationSuccessAccessTokenResponse.cs
index 5456c97..5c03e7a 100644
--- a/src/DotNetOpenAuth.OAuth2/OAuth2/Messages/EndUserAuthorizationSuccessAccessTokenResponse.cs
+++ b/src/DotNetOpenAuth.OAuth2/OAuth2/Messages/EndUserAuthorizationSuccessAccessTokenResponse.cs
@@ -19,7 +19,7 @@ namespace DotNetOpenAuth.OAuth2.Messages {
/// to indicate that user authorization was granted, carrying only an access token,
/// and to return the user to the Client where they started their experience.
/// </summary>
- internal class EndUserAuthorizationSuccessAccessTokenResponse : EndUserAuthorizationSuccessResponseBase, IAuthorizationCarryingRequest, IHttpIndirectResponse {
+ internal class EndUserAuthorizationSuccessAccessTokenResponse : EndUserAuthorizationSuccessResponseBase, IAccessTokenCarryingRequest, IHttpIndirectResponse {
/// <summary>
/// Initializes a new instance of the <see cref="EndUserAuthorizationSuccessAccessTokenResponse"/> class.
/// </summary>
@@ -45,31 +45,21 @@ namespace DotNetOpenAuth.OAuth2.Messages {
this.TokenType = Protocol.AccessTokenTypes.Bearer;
}
- #region IAuthorizationCarryingRequest Members
+ #region IAccessTokenCarryingRequest Members
/// <summary>
- /// Gets or sets the verification code or refresh/access token.
+ /// Gets or sets the authorization that the token describes.
/// </summary>
- /// <value>The code or token.</value>
- string IAuthorizationCarryingRequest.CodeOrToken {
- get { return this.AccessToken; }
- set { this.AccessToken = value; }
- }
+ /// <value></value>
+ AccessToken IAccessTokenCarryingRequest.AuthorizationDescription { get; set; }
/// <summary>
- /// Gets the type of the code or token.
+ /// Gets the authorization that the token describes.
/// </summary>
- /// <value>The type of the code or token.</value>
- CodeOrTokenType IAuthorizationCarryingRequest.CodeOrTokenType {
- get { return CodeOrTokenType.AccessToken; }
+ IAuthorizationDescription IAuthorizationCarryingRequest.AuthorizationDescription {
+ get { return ((IAccessTokenCarryingRequest)this).AuthorizationDescription; }
}
- /// <summary>
- /// Gets or sets the authorization that the token describes.
- /// </summary>
- /// <value></value>
- IAuthorizationDescription IAuthorizationCarryingRequest.AuthorizationDescription { get; set; }
-
#endregion
#region IHttpIndirectResponse Members
diff --git a/src/DotNetOpenAuth.OAuth2/OAuth2/Messages/EndUserAuthorizationSuccessAuthCodeResponse.cs b/src/DotNetOpenAuth.OAuth2/OAuth2/Messages/EndUserAuthorizationSuccessAuthCodeResponse.cs
index 179c342..dcacc14 100644
--- a/src/DotNetOpenAuth.OAuth2/OAuth2/Messages/EndUserAuthorizationSuccessAuthCodeResponse.cs
+++ b/src/DotNetOpenAuth.OAuth2/OAuth2/Messages/EndUserAuthorizationSuccessAuthCodeResponse.cs
@@ -16,7 +16,7 @@ namespace DotNetOpenAuth.OAuth2.Messages {
/// to indicate that user authorization was granted, carrying an authorization code and possibly an access token,
/// and to return the user to the Client where they started their experience.
/// </summary>
- internal class EndUserAuthorizationSuccessAuthCodeResponse : EndUserAuthorizationSuccessResponseBase, IAuthorizationCarryingRequest {
+ internal class EndUserAuthorizationSuccessAuthCodeResponse : EndUserAuthorizationSuccessResponseBase, IAuthorizationCodeCarryingRequest {
/// <summary>
/// Initializes a new instance of the <see cref="EndUserAuthorizationSuccessAuthCodeResponse"/> class.
/// </summary>
@@ -40,29 +40,27 @@ namespace DotNetOpenAuth.OAuth2.Messages {
((IMessageWithClientState)this).ClientState = request.ClientState;
}
- #region IAuthorizationCarryingRequest Members
+ #region IAuthorizationCodeCarryingRequest Members
/// <summary>
- /// Gets or sets the verification code or refresh/access token.
+ /// Gets or sets the authorization code.
/// </summary>
- /// <value>The code or token.</value>
- string IAuthorizationCarryingRequest.CodeOrToken {
+ string IAuthorizationCodeCarryingRequest.Code {
get { return this.AuthorizationCode; }
set { this.AuthorizationCode = value; }
}
/// <summary>
- /// Gets the type of the code or token.
+ /// Gets or sets the authorization that the token describes.
/// </summary>
- /// <value>The type of the code or token.</value>
- CodeOrTokenType IAuthorizationCarryingRequest.CodeOrTokenType {
- get { return CodeOrTokenType.AuthorizationCode; }
- }
+ AuthorizationCode IAuthorizationCodeCarryingRequest.AuthorizationDescription { get; set; }
/// <summary>
- /// Gets or sets the authorization that the token describes.
+ /// Gets the authorization that the code describes.
/// </summary>
- IAuthorizationDescription IAuthorizationCarryingRequest.AuthorizationDescription { get; set; }
+ IAuthorizationDescription IAuthorizationCarryingRequest.AuthorizationDescription {
+ get { return ((IAuthorizationCodeCarryingRequest)this).AuthorizationDescription; }
+ }
#endregion