Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(65)

Unified Diff: google_apis/gaia/gaia_oauth_client.cc

Issue 474473002: Expose full userinfo to callers of GaiaOAuthFetcher. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: fix line ends Created 6 years, 4 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
« no previous file with comments | « google_apis/gaia/gaia_oauth_client.h ('k') | google_apis/gaia/gaia_oauth_client_unittest.cc » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: google_apis/gaia/gaia_oauth_client.cc
diff --git a/google_apis/gaia/gaia_oauth_client.cc b/google_apis/gaia/gaia_oauth_client.cc
index 1113ff6730921c86dd0a4255c9112b37d2837423..8e2d29bb12f78dbc70a6c96c40501c555eaf2d66 100644
--- a/google_apis/gaia/gaia_oauth_client.cc
+++ b/google_apis/gaia/gaia_oauth_client.cc
@@ -56,6 +56,9 @@ class GaiaOAuthClient::Core
void GetUserId(const std::string& oauth_access_token,
int max_retries,
Delegate* delegate);
+ void GetUserInfo(const std::string& oauth_access_token,
+ int max_retries,
+ Delegate* delegate);
void GetTokenInfo(const std::string& oauth_access_token,
int max_retries,
Delegate* delegate);
@@ -73,13 +76,15 @@ class GaiaOAuthClient::Core
TOKEN_INFO,
USER_EMAIL,
USER_ID,
+ USER_INFO,
};
virtual ~Core() {}
- void GetUserInfo(const std::string& oauth_access_token,
- int max_retries,
- Delegate* delegate);
+ void GetUserInfoImpl(RequestType type,
+ const std::string& oauth_access_token,
+ int max_retries,
+ Delegate* delegate);
void MakeGaiaRequest(const GURL& url,
const std::string& post_body,
int max_retries,
@@ -142,24 +147,29 @@ void GaiaOAuthClient::Core::RefreshToken(
void GaiaOAuthClient::Core::GetUserEmail(const std::string& oauth_access_token,
int max_retries,
Delegate* delegate) {
- DCHECK_EQ(request_type_, NO_PENDING_REQUEST);
- DCHECK(!request_.get());
- request_type_ = USER_EMAIL;
- GetUserInfo(oauth_access_token, max_retries, delegate);
+ GetUserInfoImpl(USER_EMAIL, oauth_access_token, max_retries, delegate);
}
void GaiaOAuthClient::Core::GetUserId(const std::string& oauth_access_token,
int max_retries,
Delegate* delegate) {
- DCHECK_EQ(request_type_, NO_PENDING_REQUEST);
- DCHECK(!request_.get());
- request_type_ = USER_ID;
- GetUserInfo(oauth_access_token, max_retries, delegate);
+ GetUserInfoImpl(USER_ID, oauth_access_token, max_retries, delegate);
}
void GaiaOAuthClient::Core::GetUserInfo(const std::string& oauth_access_token,
- int max_retries,
- Delegate* delegate) {
+ int max_retries,
+ Delegate* delegate) {
+ GetUserInfoImpl(USER_INFO, oauth_access_token, max_retries, delegate);
+}
+
+void GaiaOAuthClient::Core::GetUserInfoImpl(
+ RequestType type,
+ const std::string& oauth_access_token,
+ int max_retries,
+ Delegate* delegate) {
+ DCHECK_EQ(request_type_, NO_PENDING_REQUEST);
+ DCHECK(!request_.get());
+ request_type_ = type;
delegate_ = delegate;
num_retries_ = 0;
request_.reset(net::URLFetcher::Create(
@@ -295,6 +305,11 @@ void GaiaOAuthClient::Core::HandleResponse(
break;
}
+ case USER_INFO: {
+ delegate_->OnGetUserInfoResponse(response_dict.Pass());
+ break;
+ }
+
case TOKEN_INFO: {
delegate_->OnGetTokenInfoResponse(response_dict.Pass());
break;
@@ -372,6 +387,12 @@ void GaiaOAuthClient::GetUserId(const std::string& access_token,
return core_->GetUserId(access_token, max_retries, delegate);
}
+void GaiaOAuthClient::GetUserInfo(const std::string& access_token,
+ int max_retries,
+ Delegate* delegate) {
+ return core_->GetUserInfo(access_token, max_retries, delegate);
+}
+
void GaiaOAuthClient::GetTokenInfo(const std::string& access_token,
int max_retries,
Delegate* delegate) {
« no previous file with comments | « google_apis/gaia/gaia_oauth_client.h ('k') | google_apis/gaia/gaia_oauth_client_unittest.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698