summaryrefslogtreecommitdiffstats
path: root/samples/ServiceProvider/App_Code/InMemoryTokenManager.cs
diff options
context:
space:
mode:
Diffstat (limited to 'samples/ServiceProvider/App_Code/InMemoryTokenManager.cs')
-rw-r--r--samples/ServiceProvider/App_Code/InMemoryTokenManager.cs91
1 files changed, 0 insertions, 91 deletions
diff --git a/samples/ServiceProvider/App_Code/InMemoryTokenManager.cs b/samples/ServiceProvider/App_Code/InMemoryTokenManager.cs
deleted file mode 100644
index 540fd81..0000000
--- a/samples/ServiceProvider/App_Code/InMemoryTokenManager.cs
+++ /dev/null
@@ -1,91 +0,0 @@
-//-----------------------------------------------------------------------
-// <copyright file="InMemoryTokenManager.cs" company="Andrew Arnott">
-// Copyright (c) Andrew Arnott. All rights reserved.
-// </copyright>
-//-----------------------------------------------------------------------
-
-using System;
-using System.Collections.Generic;
-using System.Diagnostics;
-using DotNetOAuth.ChannelElements;
-
-public class InMemoryTokenManager : ITokenManager {
- private Dictionary<string, string> consumersAndSecrets = new Dictionary<string, string>();
- private Dictionary<string, string> tokensAndSecrets = new Dictionary<string, string>();
-
- /// <summary>
- /// Request tokens that have been issued, and whether they have been authorized yet.
- /// </summary>
- private Dictionary<string, bool> requestTokens = new Dictionary<string, bool>();
-
- /// <summary>
- /// Access tokens that have been issued and have not yet expired.
- /// </summary>
- private List<string> accessTokens = new List<string>();
-
- #region ITokenManager Members
-
- public string GetConsumerSecret(string consumerKey) {
- return this.consumersAndSecrets[consumerKey];
- }
-
- public string GetTokenSecret(string token) {
- return this.tokensAndSecrets[token];
- }
-
- public void StoreNewRequestToken(string consumerKey, string requestToken, string requestTokenSecret, IDictionary<string, string> parameters) {
- this.tokensAndSecrets[requestToken] = requestTokenSecret;
- this.requestTokens.Add(requestToken, false);
- }
-
- /// <summary>
- /// Checks whether a given request token has already been authorized
- /// by some user for use by the Consumer that requested it.
- /// </summary>
- /// <param name="requestToken">The Consumer's request token.</param>
- /// <returns>
- /// True if the request token has already been fully authorized by the user
- /// who owns the relevant protected resources. False if the token has not yet
- /// been authorized, has expired or does not exist.
- /// </returns>
- public bool IsRequestTokenAuthorized(string requestToken) {
- return this.requestTokens[requestToken];
- }
-
- public void ExpireRequestTokenAndStoreNewAccessToken(string consumerKey, string requestToken, string accessToken, string accessTokenSecret) {
- Debug.Assert(this.requestTokens[requestToken], "Unauthorized token should not be exchanged for access token.");
- this.requestTokens.Remove(requestToken);
- this.accessTokens.Add(accessToken);
- this.tokensAndSecrets.Remove(requestToken);
- this.tokensAndSecrets[accessToken] = accessTokenSecret;
- }
-
- /// <summary>
- /// Classifies a token as a request token or an access token.
- /// </summary>
- /// <param name="token">The token to classify.</param>
- /// <returns>Request or Access token, or invalid if the token is not recognized.</returns>
- public TokenType GetTokenType(string token) {
- if (this.requestTokens.ContainsKey(token)) {
- return TokenType.RequestToken;
- } else if (this.accessTokens.Contains(token)) {
- return TokenType.AccessToken;
- } else {
- return TokenType.InvalidToken;
- }
- }
-
- #endregion
-
- public void AddConsumer(string key, string secret) {
- this.consumersAndSecrets.Add(key, secret);
- }
-
- public void AuthorizeRequestToken(string requestToken) {
- if (requestToken == null) {
- throw new ArgumentNullException("requestToken");
- }
-
- this.requestTokens[requestToken] = true;
- }
-}