diff options
author | ahutter@chromium.org <ahutter@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2013-03-29 21:16:29 +0000 |
---|---|---|
committer | ahutter@chromium.org <ahutter@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2013-03-29 21:16:29 +0000 |
commit | 6f99d22158a48c7ab442b1f8a53cad83c5f6757e (patch) | |
tree | 23c3edc58e957070a27840564bb9b7ae96313593 /components/autofill/browser/autocheckout_request_manager.cc | |
parent | 62d4d61ec933f2290e2b54f674afed88555ecfa5 (diff) | |
download | chromium_src-6f99d22158a48c7ab442b1f8a53cad83c5f6757e.zip chromium_src-6f99d22158a48c7ab442b1f8a53cad83c5f6757e.tar.gz chromium_src-6f99d22158a48c7ab442b1f8a53cad83c5f6757e.tar.bz2 |
Implements SendAutocheckoutStatus API calls for stats tracking.
BUG=224159
Review URL: https://chromiumcodereview.appspot.com/12457033
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@191445 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'components/autofill/browser/autocheckout_request_manager.cc')
-rw-r--r-- | components/autofill/browser/autocheckout_request_manager.cc | 129 |
1 files changed, 129 insertions, 0 deletions
diff --git a/components/autofill/browser/autocheckout_request_manager.cc b/components/autofill/browser/autocheckout_request_manager.cc new file mode 100644 index 0000000..fcf9a33 --- /dev/null +++ b/components/autofill/browser/autocheckout_request_manager.cc @@ -0,0 +1,129 @@ +// 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/browser/autocheckout_request_manager.h" + +#include "components/autofill/browser/autofill_manager_delegate.h" +#include "content/public/browser/browser_context.h" + +namespace { + +const char kAutocheckoutRequestManagerKey[] = + "browser_context_autocheckout_request_manager"; + +} // namespace + +namespace autofill { + +AutocheckoutRequestManager::~AutocheckoutRequestManager() {} + +// static +void AutocheckoutRequestManager::CreateForBrowserContext( + content::BrowserContext* browser_context) { + if (FromBrowserContext(browser_context)) + return; + + browser_context->SetUserData( + kAutocheckoutRequestManagerKey, + new AutocheckoutRequestManager(browser_context->GetRequestContext())); +} + +// static +AutocheckoutRequestManager* AutocheckoutRequestManager::FromBrowserContext( + content::BrowserContext* browser_context) { + return static_cast<AutocheckoutRequestManager*>( + browser_context->GetUserData(kAutocheckoutRequestManagerKey)); +} + +void AutocheckoutRequestManager::SendAutocheckoutStatus( + AutocheckoutStatus status, + const GURL& source_url, + const std::string& google_transaction_id) { + wallet_client_.SendAutocheckoutStatus(status, + source_url, + google_transaction_id); +} + + +const AutofillMetrics& AutocheckoutRequestManager::GetMetricLogger() const { + return metric_logger_; +} + +DialogType AutocheckoutRequestManager::GetDialogType() const { + return DIALOG_TYPE_AUTOCHECKOUT; +} + +std::string AutocheckoutRequestManager::GetRiskData() const { + NOTREACHED(); + return std::string(); +} + +void AutocheckoutRequestManager::OnDidAcceptLegalDocuments() { + NOTREACHED(); +} + +void AutocheckoutRequestManager::OnDidAuthenticateInstrument(bool success) { + NOTREACHED(); +} + +void AutocheckoutRequestManager::OnDidGetFullWallet( + scoped_ptr<wallet::FullWallet> full_wallet) { + NOTREACHED(); +} + +void AutocheckoutRequestManager::OnDidGetWalletItems( + scoped_ptr<wallet::WalletItems> wallet_items) { + NOTREACHED(); +} + +void AutocheckoutRequestManager::OnDidSaveAddress( + const std::string& address_id, + const std::vector<wallet::RequiredAction>& required_actions) { + NOTREACHED(); +} + +void AutocheckoutRequestManager::OnDidSaveInstrument( + const std::string& instrument_id, + const std::vector<wallet::RequiredAction>& required_actions) { + NOTREACHED(); +} + +void AutocheckoutRequestManager::OnDidSaveInstrumentAndAddress( + const std::string& instrument_id, + const std::string& address_id, + const std::vector<wallet::RequiredAction>& required_actions) { + NOTREACHED(); +} + +void AutocheckoutRequestManager::OnDidUpdateAddress( + const std::string& address_id, + const std::vector<wallet::RequiredAction>& required_actions) { + NOTREACHED(); +} + +void AutocheckoutRequestManager::OnDidUpdateInstrument( + const std::string& instrument_id, + const std::vector<wallet::RequiredAction>& required_actions) { + NOTREACHED(); +} + +void AutocheckoutRequestManager::OnWalletError( + wallet::WalletClient::ErrorType error_type) { + // Nothing to be done. |error_type| is logged by |metric_logger_|. +} + +void AutocheckoutRequestManager::OnMalformedResponse() { + // Nothing to be done. +} + +void AutocheckoutRequestManager::OnNetworkError(int response_code) { + // Nothin to be done. |response_code| is logged by |metric_logger_|. +} + +AutocheckoutRequestManager::AutocheckoutRequestManager( + net::URLRequestContextGetter* request_context_getter) + : wallet_client_(request_context_getter, this) { +} + +} // namespace autofill |