| Index: chrome/browser/extensions/api/identity/identity_api.h
|
| diff --git a/chrome/browser/extensions/api/identity/identity_api.h b/chrome/browser/extensions/api/identity/identity_api.h
|
| index fc2378802875b7856fec4e6d34959f0cddad28c3..58adae66210b64cb572df25062a24562c94ab117 100644
|
| --- a/chrome/browser/extensions/api/identity/identity_api.h
|
| +++ b/chrome/browser/extensions/api/identity/identity_api.h
|
| @@ -14,6 +14,7 @@
|
| #include "base/memory/ref_counted.h"
|
| #include "base/memory/weak_ptr.h"
|
| #include "chrome/browser/extensions/api/identity/account_tracker.h"
|
| +#include "chrome/browser/extensions/api/identity/extension_token_key.h"
|
| #include "chrome/browser/extensions/api/identity/gaia_web_auth_flow.h"
|
| #include "chrome/browser/extensions/api/identity/identity_mint_queue.h"
|
| #include "chrome/browser/extensions/api/identity/identity_signin_flow.h"
|
| @@ -169,6 +170,7 @@ class IdentityGetAuthTokenFunction : public ChromeAsyncExtensionFunction,
|
| OAuth2MintTokenFlow::Mode gaia_mint_token_mode_;
|
| bool should_prompt_for_signin_;
|
|
|
| + scoped_ptr<ExtensionTokenKey> token_key_;
|
| std::string oauth2_client_id_;
|
| // When launched in interactive mode, and if there is no existing grant,
|
| // a permissions prompt will be popped up to the user.
|
| @@ -252,16 +254,7 @@ class IdentityTokenCacheValue {
|
| class IdentityAPI : public ProfileKeyedAPI,
|
| public AccountTracker::Observer {
|
| public:
|
| - struct TokenCacheKey {
|
| - TokenCacheKey(const std::string& extension_id,
|
| - const std::set<std::string> scopes);
|
| - ~TokenCacheKey();
|
| - bool operator<(const TokenCacheKey& rhs) const;
|
| - std::string extension_id;
|
| - std::set<std::string> scopes;
|
| - };
|
| -
|
| - typedef std::map<TokenCacheKey, IdentityTokenCacheValue> CachedTokens;
|
| + typedef std::map<ExtensionTokenKey, IdentityTokenCacheValue> CachedTokens;
|
|
|
| explicit IdentityAPI(Profile* profile);
|
| virtual ~IdentityAPI();
|
| @@ -270,14 +263,12 @@ class IdentityAPI : public ProfileKeyedAPI,
|
| IdentityMintRequestQueue* mint_queue();
|
|
|
| // Token cache
|
| - void SetCachedToken(const std::string& extension_id,
|
| - const std::vector<std::string> scopes,
|
| + void SetCachedToken(const ExtensionTokenKey& key,
|
| const IdentityTokenCacheValue& token_data);
|
| void EraseCachedToken(const std::string& extension_id,
|
| const std::string& token);
|
| void EraseAllCachedTokens();
|
| - const IdentityTokenCacheValue& GetCachedToken(
|
| - const std::string& extension_id, const std::vector<std::string> scopes);
|
| + const IdentityTokenCacheValue& GetCachedToken(const ExtensionTokenKey& key);
|
|
|
| const CachedTokens& GetAllCachedTokens();
|
|
|
|
|