Index: components/autofill/content/browser/wallet/wallet_signin_helper.cc |
diff --git a/components/autofill/content/browser/wallet/wallet_signin_helper.cc b/components/autofill/content/browser/wallet/wallet_signin_helper.cc |
deleted file mode 100644 |
index fb84fba53b79d80729879f1c0d06d397d85ebfaf..0000000000000000000000000000000000000000 |
--- a/components/autofill/content/browser/wallet/wallet_signin_helper.cc |
+++ /dev/null |
@@ -1,174 +0,0 @@ |
-// Copyright 2013 The Chromium Authors. All rights reserved. |
-// Use of this source code is governed by a BSD-style license that can be |
-// found in the LICENSE file. |
- |
-#include "components/autofill/content/browser/wallet/wallet_signin_helper.h" |
- |
-#include "base/callback_helpers.h" |
-#include "base/json/json_reader.h" |
-#include "base/logging.h" |
-#include "base/rand_util.h" |
-#include "base/strings/string_util.h" |
-#include "base/strings/stringprintf.h" |
-#include "base/time/time.h" |
-#include "base/values.h" |
-#include "components/autofill/content/browser/wallet/wallet_service_url.h" |
-#include "components/autofill/content/browser/wallet/wallet_signin_helper_delegate.h" |
-#include "content/public/browser/browser_thread.h" |
-#include "google_apis/gaia/google_service_auth_error.h" |
-#include "net/base/escape.h" |
-#include "net/cookies/canonical_cookie.h" |
-#include "net/cookies/cookie_monster.h" |
-#include "net/cookies/cookie_options.h" |
-#include "net/cookies/cookie_store.h" |
-#include "net/url_request/url_fetcher.h" |
-#include "net/url_request/url_request_context.h" |
-#include "net/url_request/url_request_context_getter.h" |
- |
-namespace autofill { |
-namespace wallet { |
- |
-namespace { |
- |
-const char kWalletCookieName[] = "gdtoken"; |
- |
-// Callback for retrieving Google Wallet cookies. |callback| is passed the |
-// retrieved cookies and posted back to the UI thread. |cookies| is any Google |
-// Wallet cookies. |
-void GetGoogleCookiesCallback( |
- const base::Callback<void(const std::string&)>& callback, |
- const net::CookieList& cookies) { |
- DCHECK_CURRENTLY_ON(content::BrowserThread::IO); |
- |
- // Cookies for parent domains will also be returned; we only want cookies with |
- // exact host matches. TODO(estade): really? |
- std::string host = wallet::GetPassiveAuthUrl(0).host(); |
- std::string wallet_cookie; |
- for (size_t i = 0; i < cookies.size(); ++i) { |
- if (base::LowerCaseEqualsASCII(cookies[i].Name(), kWalletCookieName) && |
- base::LowerCaseEqualsASCII(cookies[i].Domain(), host.c_str())) { |
- wallet_cookie = cookies[i].Value(); |
- break; |
- } |
- } |
- content::BrowserThread::PostTask(content::BrowserThread::UI, |
- FROM_HERE, |
- base::Bind(callback, wallet_cookie)); |
-} |
- |
-// Gets Google Wallet cookies. Must be called on the IO thread. |
-// |request_context_getter| is a getter for the current request context. |
-// |callback| is called when retrieving cookies is completed. |
-void GetGoogleCookies( |
- scoped_refptr<net::URLRequestContextGetter> request_context_getter, |
- const base::Callback<void(const std::string&)>& callback) { |
- DCHECK_CURRENTLY_ON(content::BrowserThread::IO); |
- |
- net::URLRequestContext* url_request_context = |
- request_context_getter->GetURLRequestContext(); |
- net::CookieStore* cookie_store = url_request_context ? |
- url_request_context->cookie_store() : NULL; |
- net::CookieMonster* cookie_monster = cookie_store ? |
- cookie_store->GetCookieMonster() : NULL; |
- if (!cookie_monster) { |
- content::BrowserThread::PostTask(content::BrowserThread::UI, |
- FROM_HERE, |
- base::Bind(callback, std::string())); |
- return; |
- } |
- |
- net::CookieOptions cookie_options; |
- cookie_options.set_include_httponly(); |
- cookie_monster->GetAllCookiesForURLWithOptionsAsync( |
- wallet::GetPassiveAuthUrl(0).GetWithEmptyPath(), |
- cookie_options, |
- base::Bind(&GetGoogleCookiesCallback, callback)); |
-} |
- |
-} // namespace |
- |
-WalletSigninHelper::WalletSigninHelper( |
- WalletSigninHelperDelegate* delegate, |
- net::URLRequestContextGetter* getter) |
- : delegate_(delegate), |
- getter_(getter), |
- weak_ptr_factory_(this) { |
- DCHECK(delegate_); |
-} |
- |
-WalletSigninHelper::~WalletSigninHelper() { |
-} |
- |
-void WalletSigninHelper::StartPassiveSignin(size_t user_index) { |
- DCHECK(!url_fetcher_); |
- |
- const GURL& url = wallet::GetPassiveAuthUrl(user_index); |
- url_fetcher_ = net::URLFetcher::Create(0, url, net::URLFetcher::GET, this); |
- url_fetcher_->SetRequestContext(getter_); |
- url_fetcher_->Start(); |
-} |
- |
-void WalletSigninHelper::StartWalletCookieValueFetch() { |
- scoped_refptr<net::URLRequestContextGetter> request_context(getter_); |
- if (!request_context.get()) { |
- ReturnWalletCookieValue(std::string()); |
- return; |
- } |
- |
- base::Callback<void(const std::string&)> callback = base::Bind( |
- &WalletSigninHelper::ReturnWalletCookieValue, |
- weak_ptr_factory_.GetWeakPtr()); |
- |
- base::Closure task = base::Bind(&GetGoogleCookies, request_context, callback); |
- content::BrowserThread::PostTask(content::BrowserThread::IO, FROM_HERE, task); |
-} |
- |
-void WalletSigninHelper::OnServiceError(const GoogleServiceAuthError& error) { |
- delegate_->OnPassiveSigninFailure(error); |
-} |
- |
-void WalletSigninHelper::OnOtherError() { |
- OnServiceError(GoogleServiceAuthError::AuthErrorNone()); |
-} |
- |
-void WalletSigninHelper::OnURLFetchComplete( |
- const net::URLFetcher* fetcher) { |
- DCHECK_EQ(url_fetcher_.get(), fetcher); |
- scoped_ptr<net::URLFetcher> url_fetcher(url_fetcher_.release()); |
- |
- if (!fetcher->GetStatus().is_success() || |
- fetcher->GetResponseCode() < 200 || |
- fetcher->GetResponseCode() >= 300) { |
- DVLOG(1) << "URLFetchFailure:" |
- << " r=" << fetcher->GetResponseCode() |
- << " s=" << fetcher->GetStatus().status() |
- << " e=" << fetcher->GetStatus().error(); |
- OnOtherError(); |
- return; |
- } |
- |
- std::string data; |
- if (!fetcher->GetResponseAsString(&data)) { |
- DVLOG(1) << "failed to GetResponseAsString"; |
- OnOtherError(); |
- return; |
- } |
- |
- if (!base::LowerCaseEqualsASCII(data, "yes")) { |
- OnServiceError( |
- GoogleServiceAuthError(GoogleServiceAuthError::USER_NOT_SIGNED_UP)); |
- return; |
- } |
- |
- delegate_->OnPassiveSigninSuccess(); |
-} |
- |
-void WalletSigninHelper::ReturnWalletCookieValue( |
- const std::string& cookie_value) { |
- DCHECK_CURRENTLY_ON(content::BrowserThread::UI); |
- |
- delegate_->OnDidFetchWalletCookieValue(cookie_value); |
-} |
- |
-} // namespace wallet |
-} // namespace autofill |