diff options
author | paul@chromium.org <paul@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2009-02-13 01:25:50 +0000 |
---|---|---|
committer | paul@chromium.org <paul@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2009-02-13 01:25:50 +0000 |
commit | dc6f4969d7dec0ea0e11f2f11987b6380e3b3e8e (patch) | |
tree | ee6bd37c4acd908d6dd5bf02e365381a6a8e65ac /chrome/browser | |
parent | 0fec82d31ca706484262f82834af8597513fc20f (diff) | |
download | chromium_src-dc6f4969d7dec0ea0e11f2f11987b6380e3b3e8e.zip chromium_src-dc6f4969d7dec0ea0e11f2f11987b6380e3b3e8e.tar.gz chromium_src-dc6f4969d7dec0ea0e11f2f11987b6380e3b3e8e.tar.bz2 |
Port most of MetricsService to Mac and linux.
Review URL: http://codereview.chromium.org/20338
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@9720 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'chrome/browser')
-rw-r--r-- | chrome/browser/browser.scons | 1 | ||||
-rw-r--r-- | chrome/browser/browser_main.cc | 2 | ||||
-rw-r--r-- | chrome/browser/browser_process_impl.cc | 2 | ||||
-rw-r--r-- | chrome/browser/load_notification_details.h | 8 | ||||
-rw-r--r-- | chrome/browser/metrics/metrics_service.cc | 35 | ||||
-rw-r--r-- | chrome/browser/tab_contents/web_contents.cc | 2 |
6 files changed, 32 insertions, 18 deletions
diff --git a/chrome/browser/browser.scons b/chrome/browser/browser.scons index ccfc72d..6e9e54d 100644 --- a/chrome/browser/browser.scons +++ b/chrome/browser/browser.scons @@ -719,7 +719,6 @@ if not env.Bit('windows'): 'jankometer.cc', 'login_prompt.cc', 'memory_details.cc', - 'metrics/metrics_service.cc', 'modal_html_dialog_delegate.cc', 'net/dns_global.cc', 'net/dns_master.cc', diff --git a/chrome/browser/browser_main.cc b/chrome/browser/browser_main.cc index 654da338..89ce130 100644 --- a/chrome/browser/browser_main.cc +++ b/chrome/browser/browser_main.cc @@ -28,6 +28,7 @@ #include "chrome/browser/browser_process_impl.h" #include "chrome/browser/browser_shutdown.h" #include "chrome/browser/first_run.h" +#include "chrome/browser/metrics/metrics_service.h" #include "chrome/browser/profile_manager.h" #include "chrome/browser/shell_integration.h" #include "chrome/common/chrome_constants.h" @@ -68,7 +69,6 @@ #include "chrome/browser/extensions/extension_protocols.h" #include "chrome/browser/jankometer.h" #include "chrome/browser/message_window.h" -#include "chrome/browser/metrics/metrics_service.h" #include "chrome/browser/metrics/user_metrics.h" #include "chrome/browser/net/dns_global.h" #include "chrome/browser/net/sdch_dictionary_fetcher.h" diff --git a/chrome/browser/browser_process_impl.cc b/chrome/browser/browser_process_impl.cc index 7cb57b2..8989550 100644 --- a/chrome/browser/browser_process_impl.cc +++ b/chrome/browser/browser_process_impl.cc @@ -12,6 +12,7 @@ #include "chrome/browser/chrome_thread.h" #include "chrome/browser/debugger/debugger_wrapper.h" #include "chrome/browser/google_url_tracker.h" +#include "chrome/browser/metrics/metrics_service.h" #include "chrome/browser/profile_manager.h" #include "chrome/browser/renderer_host/render_process_host.h" #include "chrome/browser/renderer_host/resource_dispatcher_host.h" @@ -27,7 +28,6 @@ #include "chrome/browser/download/download_file.h" #include "chrome/browser/download/save_file_manager.h" #include "chrome/browser/icon_manager.h" -#include "chrome/browser/metrics/metrics_service.h" #include "chrome/browser/plugin_service.h" #include "chrome/browser/printing/print_job_manager.h" #include "chrome/common/clipboard_service.h" diff --git a/chrome/browser/load_notification_details.h b/chrome/browser/load_notification_details.h index 7c46e87..6d49177 100644 --- a/chrome/browser/load_notification_details.h +++ b/chrome/browser/load_notification_details.h @@ -23,10 +23,10 @@ class LoadNotificationDetails { NavigationController* controller, int session_index) : url_(url), - origin_(origin), load_time_(load_time), - controller_(controller), - session_index_(session_index) {} + session_index_(session_index), + origin_(origin), + controller_(controller) {} ~LoadNotificationDetails() {} @@ -45,7 +45,7 @@ class LoadNotificationDetails { LoadNotificationDetails() {} - DISALLOW_EVIL_CONSTRUCTORS(LoadNotificationDetails); + DISALLOW_COPY_AND_ASSIGN(LoadNotificationDetails); }; #endif // CHROME_BROWSER_LOAD_NOTIFICATION_DETAILS_H__ diff --git a/chrome/browser/metrics/metrics_service.cc b/chrome/browser/metrics/metrics_service.cc index 55aca76..afe6c48 100644 --- a/chrome/browser/metrics/metrics_service.cc +++ b/chrome/browser/metrics/metrics_service.cc @@ -155,13 +155,16 @@ // //------------------------------------------------------------------------------ +#if defined(OS_WIN) #include <windows.h> +#endif #include "chrome/browser/metrics/metrics_service.h" #include "base/file_path.h" #include "base/histogram.h" #include "base/path_service.h" +#include "base/platform_thread.h" #include "base/string_util.h" #include "base/task.h" #include "chrome/browser/bookmarks/bookmark_model.h" @@ -170,7 +173,6 @@ #include "chrome/browser/browser_process.h" #include "chrome/browser/load_notification_details.h" #include "chrome/browser/memory_details.h" -#include "chrome/browser/plugin_service.h" #include "chrome/browser/profile.h" #include "chrome/browser/renderer_host/render_process_host.h" #include "chrome/browser/search_engines/template_url.h" @@ -182,11 +184,18 @@ #include "chrome/common/pref_names.h" #include "chrome/common/pref_service.h" #include "chrome/common/render_messages.h" -#include "chrome/installer/util/google_update_settings.h" #include "googleurl/src/gurl.h" #include "net/base/load_flags.h" #include "third_party/bzip2/bzlib.h" +#if defined(OS_POSIX) +// TODO(port): Move these headers above as they are ported. +#include "chrome/common/temp_scaffolding_stubs.h" +#else +#include "chrome/browser/plugin_service.h" +#include "chrome/installer/util/google_update_settings.h" +#endif + using base::Time; using base::TimeDelta; @@ -615,6 +624,7 @@ void MetricsService::OnGetPluginListTaskComplete() { } std::string MetricsService::GenerateClientID() { +#if defined(OS_WIN) const int kGUIDSize = 39; GUID guid; @@ -627,6 +637,11 @@ std::string MetricsService::GenerateClientID() { DCHECK(result == kGUIDSize); return WideToUTF8(guid_string.substr(1, guid_string.length() - 2)); +#else + // TODO(port): Implement for Mac and linux. + NOTIMPLEMENTED(); + return std::string(); +#endif } @@ -780,7 +795,8 @@ void MetricsService::PushPendingLogTextToUnsentOngoingLogs() { if (!server_permits_upload_) return; - if (pending_log_text_.length() > kUploadLogAvoidRetransmitSize) { + if (pending_log_text_.length() > + static_cast<size_t>(kUploadLogAvoidRetransmitSize)) { UMA_HISTOGRAM_COUNTS(L"UMA.Large Accumulated Log Not Persisted", static_cast<int>(pending_log_text_.length())); return; @@ -1169,10 +1185,11 @@ void MetricsService::OnURLFetchComplete(const URLFetcher* source, StatusToString(status); // Provide boolean for error recovery (allow us to ignore response_code). - boolean discard_log = false; + bool discard_log = false; if (response_code != 200 && - pending_log_text_.length() > kUploadLogAvoidRetransmitSize) { + pending_log_text_.length() > + static_cast<size_t>(kUploadLogAvoidRetransmitSize)) { UMA_HISTOGRAM_COUNTS(L"UMA.Large Rejected Log was Discarded", static_cast<int>(pending_log_text_.length())); discard_log = true; @@ -1413,8 +1430,6 @@ bool MetricsService::ProbabilityTest(double probability, // client_id_ we need in order to make a nice pseudorandomish // number in the range [0,denominator). Too many digits is // fine. - int relevant_digits = - static_cast<int>(log10(static_cast<double>(denominator)) + 1.0); // n is the length of the client_id_ string size_t n = client_id_.size(); @@ -1775,8 +1790,8 @@ void MetricsService::AddProfileMetric(Profile* profile, } static bool IsSingleThreaded() { - static int thread_id = 0; + static PlatformThreadId thread_id = 0; if (!thread_id) - thread_id = GetCurrentThreadId(); - return GetCurrentThreadId() == thread_id; + thread_id = PlatformThread::CurrentId(); + return PlatformThread::CurrentId() == thread_id; } diff --git a/chrome/browser/tab_contents/web_contents.cc b/chrome/browser/tab_contents/web_contents.cc index e3de324..5920056 100644 --- a/chrome/browser/tab_contents/web_contents.cc +++ b/chrome/browser/tab_contents/web_contents.cc @@ -18,6 +18,7 @@ #include "chrome/browser/js_before_unload_handler.h" #include "chrome/browser/jsmessage_box_handler.h" #include "chrome/browser/load_from_memory_cache_details.h" +#include "chrome/browser/load_notification_details.h" #include "chrome/browser/profile.h" #include "chrome/browser/renderer_host/render_process_host.h" #include "chrome/browser/renderer_host/render_view_host.h" @@ -43,7 +44,6 @@ #include "chrome/browser/download/download_manager.h" #include "chrome/browser/download/download_request_manager.h" #include "chrome/browser/gears_integration.h" -#include "chrome/browser/load_notification_details.h" #include "chrome/browser/modal_html_dialog_delegate.h" #include "chrome/browser/password_manager/password_manager.h" #include "chrome/browser/plugin_installer.h" |