oauth2_access_token_consumer.h revision 5821806d5e7f356e8fa4b058a389a808ea183019
1// Copyright (c) 2012 The Chromium Authors. All rights reserved. 2// Use of this source code is governed by a BSD-style license that can be 3// found in the LICENSE file. 4 5#ifndef GOOGLE_APIS_GAIA_OAUTH2_ACCESS_TOKEN_CONSUMER_H_ 6#define GOOGLE_APIS_GAIA_OAUTH2_ACCESS_TOKEN_CONSUMER_H_ 7 8#include <string> 9 10class GoogleServiceAuthError; 11 12namespace base { 13class Time; 14} 15 16// An interface that defines the callbacks for consumers to which 17// OAuth2AccessTokenFetcher can return results. 18class OAuth2AccessTokenConsumer { 19 public: 20 // Success callback. |access_token| will contain a valid OAuth2 access token. 21 // |expiration_time| is the date until which the token can be used. This 22 // value has a built-in safety margin, so it can be used as-is. 23 virtual void OnGetTokenSuccess(const std::string& access_token, 24 const base::Time& expiration_time) {} 25 virtual void OnGetTokenFailure(const GoogleServiceAuthError& error) {} 26 27 protected: 28 virtual ~OAuth2AccessTokenConsumer() {} 29}; 30 31#endif // GOOGLE_APIS_GAIA_OAUTH2_ACCESS_TOKEN_CONSUMER_H_ 32