| Index: chrome/browser/signin/android_profile_oauth2_token_service.cc
|
| diff --git a/chrome/browser/signin/android_profile_oauth2_token_service.cc b/chrome/browser/signin/android_profile_oauth2_token_service.cc
|
| index 42a6516214644c8ef7ad350e8ea526da60a7d465..cb96cbd6348ae308b9f488c2ac55e7f46a9fae1f 100644
|
| --- a/chrome/browser/signin/android_profile_oauth2_token_service.cc
|
| +++ b/chrome/browser/signin/android_profile_oauth2_token_service.cc
|
| @@ -15,7 +15,6 @@
|
| #include "jni/AndroidProfileOAuth2TokenServiceHelper_jni.h"
|
|
|
| using base::android::AttachCurrentThread;
|
| -using base::android::CheckException;
|
| using base::android::ConvertJavaStringToUTF8;
|
| using base::android::ConvertUTF8ToJavaString;
|
| using base::android::ScopedJavaLocalRef;
|
| @@ -54,22 +53,14 @@ AndroidProfileOAuth2TokenService::AndroidProfileOAuth2TokenService() {
|
| AndroidProfileOAuth2TokenService::~AndroidProfileOAuth2TokenService() {
|
| }
|
|
|
| -scoped_ptr<OAuth2TokenService::Request>
|
| - AndroidProfileOAuth2TokenService::StartRequestForUsername(
|
| - const std::string& username,
|
| - const OAuth2TokenService::ScopeSet& scopes,
|
| - OAuth2TokenService::Consumer* consumer) {
|
| - DCHECK(content::BrowserThread::CurrentlyOn(content::BrowserThread::UI));
|
| -
|
| - scoped_ptr<RequestImpl> request(new RequestImpl(consumer));
|
| - FetchOAuth2TokenWithUsername(request.get(), username, scopes);
|
| - return request.PassAs<Request>();
|
| -}
|
| -
|
| -bool AndroidProfileOAuth2TokenService::RefreshTokenIsAvailable() {
|
| +bool AndroidProfileOAuth2TokenService::RefreshTokenIsAvailable(
|
| + const std::string& account_id) {
|
| SigninManagerBase* signin_manager =
|
| SigninManagerFactory::GetForProfile(profile());
|
| - return !signin_manager->GetAuthenticatedUsername().empty();
|
| + const std::string& authenticated_username =
|
| + signin_manager->GetAuthenticatedUsername();
|
| + return !authenticated_username.empty()
|
| + && authenticated_username == account_id;
|
| }
|
|
|
| void AndroidProfileOAuth2TokenService::InvalidateToken(
|
| @@ -87,26 +78,18 @@ void AndroidProfileOAuth2TokenService::InvalidateToken(
|
|
|
| void AndroidProfileOAuth2TokenService::FetchOAuth2Token(
|
| RequestImpl* request,
|
| + const std::string& account_id,
|
| net::URLRequestContextGetter* getter,
|
| const std::string& client_id,
|
| const std::string& client_secret,
|
| const OAuth2TokenService::ScopeSet& scopes) {
|
| DCHECK(content::BrowserThread::CurrentlyOn(content::BrowserThread::UI));
|
| - std::string username = SigninManagerFactory::GetForProfile(profile())->
|
| - GetAuthenticatedUsername();
|
| - DCHECK(!username.empty());
|
| - // Just ignore client_id, getter, etc since we don't use them on Android.
|
| - FetchOAuth2TokenWithUsername(request, username, scopes);
|
| -}
|
| + DCHECK(!account_id.empty());
|
|
|
| -void AndroidProfileOAuth2TokenService::FetchOAuth2TokenWithUsername(
|
| - RequestImpl* request,
|
| - const std::string& username,
|
| - const OAuth2TokenService::ScopeSet& scopes) {
|
| JNIEnv* env = AttachCurrentThread();
|
| std::string scope = CombineScopes(scopes);
|
| ScopedJavaLocalRef<jstring> j_username =
|
| - ConvertUTF8ToJavaString(env, username);
|
| + ConvertUTF8ToJavaString(env, account_id);
|
| ScopedJavaLocalRef<jstring> j_scope =
|
| ConvertUTF8ToJavaString(env, scope);
|
|
|
|
|