| Index: trunk/src/chrome/browser/extensions/install_signer.cc
|
| ===================================================================
|
| --- trunk/src/chrome/browser/extensions/install_signer.cc (revision 247796)
|
| +++ trunk/src/chrome/browser/extensions/install_signer.cc (working copy)
|
| @@ -9,16 +9,13 @@
|
| #include "base/command_line.h"
|
| #include "base/json/json_reader.h"
|
| #include "base/json/json_writer.h"
|
| -#include "base/lazy_instance.h"
|
| #include "base/message_loop/message_loop.h"
|
| #include "base/metrics/histogram.h"
|
| -#include "base/process/process_info.h"
|
| #include "base/stl_util.h"
|
| #include "base/strings/string_number_conversions.h"
|
| #include "base/strings/string_split.h"
|
| #include "base/strings/string_util.h"
|
| #include "base/strings/stringprintf.h"
|
| -#include "base/time/time.h"
|
| #include "base/values.h"
|
| #include "chrome/common/chrome_switches.h"
|
| #include "chrome/common/extensions/extension_constants.h"
|
| @@ -246,41 +243,6 @@
|
| return ExtensionIdSet(ids.begin(), ids.end());
|
| }
|
|
|
| -namespace {
|
| -
|
| -static int g_request_count = 0;
|
| -
|
| -base::LazyInstance<base::TimeTicks> g_last_request_time =
|
| - LAZY_INSTANCE_INITIALIZER;
|
| -
|
| -base::LazyInstance<base::ThreadChecker> g_single_thread_checker =
|
| - LAZY_INSTANCE_INITIALIZER;
|
| -
|
| -void LogRequestStartHistograms() {
|
| - // Make sure we only ever call this from one thread, so that we don't have to
|
| - // worry about race conditions setting g_last_request_time.
|
| - DCHECK(g_single_thread_checker.Get().CalledOnValidThread());
|
| -
|
| - const base::Time process_creation_time =
|
| - base::CurrentProcessInfo::CreationTime();
|
| - UMA_HISTOGRAM_COUNTS("ExtensionInstallSigner.UptimeAtTimeOfRequest",
|
| - (base::Time::Now() - process_creation_time).InSeconds());
|
| -
|
| - base::TimeDelta delta;
|
| - base::TimeTicks now = base::TimeTicks::Now();
|
| - if (!g_last_request_time.Get().is_null())
|
| - delta = now - g_last_request_time.Get();
|
| - g_last_request_time.Get() = now;
|
| - UMA_HISTOGRAM_COUNTS("ExtensionInstallSigner.SecondsSinceLastRequest",
|
| - delta.InSeconds());
|
| -
|
| - g_request_count += 1;
|
| - UMA_HISTOGRAM_COUNTS_100("ExtensionInstallSigner.RequestCount",
|
| - g_request_count);
|
| -}
|
| -
|
| -} // namespace
|
| -
|
| void InstallSigner::GetSignature(const SignatureCallback& callback) {
|
| CHECK(!url_fetcher_.get());
|
| CHECK(callback_.is_null());
|
| @@ -339,7 +301,6 @@
|
| return;
|
| }
|
| url_fetcher_->SetUploadData("application/json", json);
|
| - LogRequestStartHistograms();
|
| url_fetcher_->Start();
|
| }
|
|
|
| @@ -350,17 +311,10 @@
|
| }
|
|
|
| void InstallSigner::ParseFetchResponse() {
|
| - bool fetch_success = url_fetcher_->GetStatus().is_success();
|
| - UMA_HISTOGRAM_BOOLEAN("ExtensionInstallSigner.FetchSuccess", fetch_success);
|
| -
|
| std::string response;
|
| - if (fetch_success) {
|
| - if (!url_fetcher_->GetResponseAsString(&response))
|
| - response.clear();
|
| - }
|
| - UMA_HISTOGRAM_BOOLEAN("ExtensionInstallSigner.GetResponseSuccess",
|
| - !response.empty());
|
| - if (!fetch_success || response.empty()) {
|
| + if (!url_fetcher_->GetStatus().is_success() ||
|
| + !url_fetcher_->GetResponseAsString(&response) ||
|
| + response.empty()) {
|
| ReportErrorViaCallback();
|
| return;
|
| }
|
| @@ -377,10 +331,7 @@
|
|
|
| base::DictionaryValue* dictionary = NULL;
|
| scoped_ptr<base::Value> parsed(base::JSONReader::Read(response));
|
| - bool json_success = parsed.get() && parsed->GetAsDictionary(&dictionary);
|
| - UMA_HISTOGRAM_BOOLEAN("ExtensionInstallSigner.ParseJsonSuccess",
|
| - json_success);
|
| - if (!json_success) {
|
| + if (!parsed.get() || !parsed->GetAsDictionary(&dictionary)) {
|
| ReportErrorViaCallback();
|
| return;
|
| }
|
| @@ -394,13 +345,9 @@
|
| dictionary->GetString(kSignatureKey, &signature_base64);
|
| dictionary->GetString(kExpiryKey, &expire_date);
|
|
|
| - bool fields_success =
|
| - protocol_version == 1 && !signature_base64.empty() &&
|
| - ValidateExpireDateFormat(expire_date) &&
|
| - base::Base64Decode(signature_base64, &signature);
|
| - UMA_HISTOGRAM_BOOLEAN("ExtensionInstallSigner.ParseFieldsSuccess",
|
| - fields_success);
|
| - if (!fields_success) {
|
| + if (protocol_version != 1 || signature_base64.empty() ||
|
| + !ValidateExpireDateFormat(expire_date) ||
|
| + !base::Base64Decode(signature_base64, &signature)) {
|
| ReportErrorViaCallback();
|
| return;
|
| }
|
|
|