Move more metrics classes to metrics namespace.
BUG=374763
[email protected]
Review URL: https://codereview.chromium.org/502173002
Cr-Commit-Position: refs/heads/master@{#291994}
diff --git a/chrome/browser/browser_process.h b/chrome/browser/browser_process.h
index fefc63f..df2ad5ea9 100644
--- a/chrome/browser/browser_process.h
+++ b/chrome/browser/browser_process.h
@@ -28,7 +28,6 @@
class IntranetRedirectDetector;
class IOThread;
class MediaFileSystemRegistry;
-class MetricsService;
class MetricsServicesManager;
class NotificationUIManager;
class PrefRegistrySimple;
@@ -63,6 +62,10 @@
class MessageCenter;
}
+namespace metrics {
+class MetricsService;
+}
+
namespace net {
class URLRequestContextGetter;
}
@@ -115,7 +118,7 @@
virtual MetricsServicesManager* GetMetricsServicesManager() = 0;
// Services: any of these getters may return NULL
- virtual MetricsService* metrics_service() = 0;
+ virtual metrics::MetricsService* metrics_service() = 0;
virtual rappor::RapporService* rappor_service() = 0;
virtual ProfileManager* profile_manager() = 0;
virtual PrefService* local_state() = 0;
diff --git a/chrome/browser/browser_process_impl.cc b/chrome/browser/browser_process_impl.cc
index b178721..c1546cb 100644
--- a/chrome/browser/browser_process_impl.cc
+++ b/chrome/browser/browser_process_impl.cc
@@ -479,7 +479,7 @@
}
// Tell the metrics service it was cleanly shutdown.
- MetricsService* metrics = g_browser_process->metrics_service();
+ metrics::MetricsService* metrics = g_browser_process->metrics_service();
if (metrics && local_state()) {
metrics->RecordStartOfSessionEnd();
#if !defined(OS_CHROMEOS)
@@ -535,7 +535,7 @@
return metrics_services_manager_.get();
}
-MetricsService* BrowserProcessImpl::metrics_service() {
+metrics::MetricsService* BrowserProcessImpl::metrics_service() {
DCHECK(CalledOnValidThread());
return GetMetricsServicesManager()->GetMetricsService();
}
diff --git a/chrome/browser/browser_process_impl.h b/chrome/browser/browser_process_impl.h
index 6234faf..8fd4ce5 100644
--- a/chrome/browser/browser_process_impl.h
+++ b/chrome/browser/browser_process_impl.h
@@ -23,7 +23,6 @@
class ChromeNetLog;
class ChromeResourceDispatcherHostDelegate;
-class MetricsServicesManager;
class RemoteDebuggingServer;
class PrefRegistrySimple;
class PromoResourceService;
@@ -78,7 +77,7 @@
virtual void ResourceDispatcherHostCreated() OVERRIDE;
virtual void EndSession() OVERRIDE;
virtual MetricsServicesManager* GetMetricsServicesManager() OVERRIDE;
- virtual MetricsService* metrics_service() OVERRIDE;
+ virtual metrics::MetricsService* metrics_service() OVERRIDE;
virtual rappor::RapporService* rappor_service() OVERRIDE;
virtual IOThread* io_thread() OVERRIDE;
virtual WatchDogThread* watchdog_thread() OVERRIDE;
diff --git a/chrome/browser/browser_shutdown.cc b/chrome/browser/browser_shutdown.cc
index fa50225..a07f6910 100644
--- a/chrome/browser/browser_shutdown.cc
+++ b/chrome/browser/browser_shutdown.cc
@@ -149,7 +149,7 @@
// consider putting it in BrowserProcessImpl::EndSession.
PrefService* prefs = g_browser_process->local_state();
- MetricsService* metrics = g_browser_process->metrics_service();
+ metrics::MetricsService* metrics = g_browser_process->metrics_service();
if (metrics)
metrics->RecordCompletedSessionEnd();
diff --git a/chrome/browser/chrome_browser_main.cc b/chrome/browser/chrome_browser_main.cc
index a603ffd..1c2ca9a 100644
--- a/chrome/browser/chrome_browser_main.cc
+++ b/chrome/browser/chrome_browser_main.cc
@@ -574,7 +574,7 @@
// Initialize FieldTrialList to support FieldTrials that use one-time
// randomization.
- MetricsService* metrics = browser_process_->metrics_service();
+ metrics::MetricsService* metrics = browser_process_->metrics_service();
field_trial_list_.reset(
new base::FieldTrialList(metrics->CreateEntropyProvider().release()));
@@ -631,7 +631,7 @@
void ChromeBrowserMainParts::StartMetricsRecording() {
TRACE_EVENT0("startup", "ChromeBrowserMainParts::StartMetricsRecording");
- MetricsService* metrics = g_browser_process->metrics_service();
+ metrics::MetricsService* metrics = g_browser_process->metrics_service();
const bool only_do_metrics_recording =
parsed_command_line_.HasSwitch(switches::kMetricsRecordingOnly) ||
@@ -1236,8 +1236,9 @@
// Profile creation ----------------------------------------------------------
- MetricsService::SetExecutionPhase(MetricsService::CREATE_PROFILE,
- g_browser_process->local_state());
+ metrics::MetricsService::SetExecutionPhase(
+ metrics::MetricsService::CREATE_PROFILE,
+ g_browser_process->local_state());
profile_ = CreatePrimaryProfile(parameters(),
user_data_dir_,
parsed_command_line());
@@ -1408,8 +1409,9 @@
// Start watching for hangs during startup. We disarm this hang detector when
// ThreadWatcher takes over or when browser is shutdown or when
// startup_watcher_ is deleted.
- MetricsService::SetExecutionPhase(MetricsService::STARTUP_TIMEBOMB_ARM,
- g_browser_process->local_state());
+ metrics::MetricsService::SetExecutionPhase(
+ metrics::MetricsService::STARTUP_TIMEBOMB_ARM,
+ g_browser_process->local_state());
startup_watcher_->Arm(base::TimeDelta::FromSeconds(300));
// On mobile, need for clean shutdown arises only when the application comes
@@ -1417,7 +1419,8 @@
// http://crbug.com/179143
#if !defined(OS_ANDROID)
// Start watching for a hang.
- MetricsService::LogNeedForCleanShutdown(g_browser_process->local_state());
+ metrics::MetricsService::LogNeedForCleanShutdown(
+ g_browser_process->local_state());
#endif
#if defined(ENABLE_FULL_PRINTING)
@@ -1431,8 +1434,9 @@
#endif
// Start watching all browser threads for responsiveness.
- MetricsService::SetExecutionPhase(MetricsService::THREAD_WATCHER_START,
- g_browser_process->local_state());
+ metrics::MetricsService::SetExecutionPhase(
+ metrics::MetricsService::THREAD_WATCHER_START,
+ g_browser_process->local_state());
ThreadWatcherList::StartWatchingAll(parsed_command_line());
#if defined(OS_ANDROID)
@@ -1594,8 +1598,9 @@
performance_monitor::PerformanceMonitor::GetInstance()->StartGatherCycle();
- MetricsService::SetExecutionPhase(MetricsService::MAIN_MESSAGE_LOOP_RUN,
- g_browser_process->local_state());
+ metrics::MetricsService::SetExecutionPhase(
+ metrics::MetricsService::MAIN_MESSAGE_LOOP_RUN,
+ g_browser_process->local_state());
run_loop.Run();
return true;
@@ -1612,8 +1617,9 @@
// Start watching for jank during shutdown. It gets disarmed when
// |shutdown_watcher_| object is destructed.
- MetricsService::SetExecutionPhase(MetricsService::SHUTDOWN_TIMEBOMB_ARM,
- g_browser_process->local_state());
+ metrics::MetricsService::SetExecutionPhase(
+ metrics::MetricsService::SHUTDOWN_TIMEBOMB_ARM,
+ g_browser_process->local_state());
shutdown_watcher_->Arm(base::TimeDelta::FromSeconds(300));
// Disarm the startup hang detector time bomb if it is still Arm'ed.
@@ -1659,7 +1665,7 @@
// a higher level on the stack, so that it is impossible for an early return
// to bypass this code. Perhaps we need a *final* hook that is called on all
// paths from content/browser/browser_main.
- CHECK(MetricsService::UmaMetricsProperlyShutdown());
+ CHECK(metrics::MetricsService::UmaMetricsProperlyShutdown());
#if defined(OS_CHROMEOS)
chromeos::CrosSettings::Shutdown();
diff --git a/chrome/browser/chrome_browser_metrics_service_observer.h b/chrome/browser/chrome_browser_metrics_service_observer.h
index 111cca7..d8e20da0 100644
--- a/chrome/browser/chrome_browser_metrics_service_observer.h
+++ b/chrome/browser/chrome_browser_metrics_service_observer.h
@@ -9,7 +9,8 @@
// ChromeBrowserMetricsServiceObserver receives notifications when the metrics
// service creates a new metrics log.
-class ChromeBrowserMetricsServiceObserver : public MetricsServiceObserver {
+class ChromeBrowserMetricsServiceObserver
+ : public metrics::MetricsServiceObserver {
public:
ChromeBrowserMetricsServiceObserver();
virtual ~ChromeBrowserMetricsServiceObserver();
diff --git a/chrome/browser/metrics/chrome_metrics_service_client.cc b/chrome/browser/metrics/chrome_metrics_service_client.cc
index b8d0ac4..173f622 100644
--- a/chrome/browser/metrics/chrome_metrics_service_client.cc
+++ b/chrome/browser/metrics/chrome_metrics_service_client.cc
@@ -156,7 +156,7 @@
registry->RegisterInt64Pref(prefs::kUninstallLastLaunchTimeSec, 0);
registry->RegisterInt64Pref(prefs::kUninstallLastObservedRunTimeSec, 0);
- MetricsService::RegisterPrefs(registry);
+ metrics::MetricsService::RegisterPrefs(registry);
ChromeStabilityMetricsProvider::RegisterPrefs(registry);
#if defined(OS_ANDROID)
@@ -280,7 +280,7 @@
}
void ChromeMetricsServiceClient::Initialize() {
- metrics_service_.reset(new MetricsService(
+ metrics_service_.reset(new metrics::MetricsService(
metrics_state_manager_, this, g_browser_process->local_state()));
// Register metrics providers.
diff --git a/chrome/browser/metrics/chrome_metrics_service_client.h b/chrome/browser/metrics/chrome_metrics_service_client.h
index bc3c14a..e98b3133 100644
--- a/chrome/browser/metrics/chrome_metrics_service_client.h
+++ b/chrome/browser/metrics/chrome_metrics_service_client.h
@@ -21,7 +21,6 @@
class ChromeOSMetricsProvider;
class GoogleUpdateMetricsProviderWin;
-class MetricsService;
class PluginMetricsProvider;
class PrefRegistrySimple;
class ProfilerMetricsProvider;
@@ -35,6 +34,7 @@
}
namespace metrics {
+class MetricsService;
class MetricsStateManager;
}
@@ -72,7 +72,7 @@
const std::string& mime_type,
const base::Callback<void(int)>& on_upload_complete) OVERRIDE;
- MetricsService* metrics_service() { return metrics_service_.get(); }
+ metrics::MetricsService* metrics_service() { return metrics_service_.get(); }
void LogPluginLoadingError(const base::FilePath& plugin_path);
@@ -131,7 +131,7 @@
metrics::MetricsStateManager* metrics_state_manager_;
// The MetricsService that |this| is a client of.
- scoped_ptr<MetricsService> metrics_service_;
+ scoped_ptr<metrics::MetricsService> metrics_service_;
content::NotificationRegistrar registrar_;
diff --git a/chrome/browser/metrics/extensions_metrics_provider.cc b/chrome/browser/metrics/extensions_metrics_provider.cc
index 41f1359..62b4b9a3 100644
--- a/chrome/browser/metrics/extensions_metrics_provider.cc
+++ b/chrome/browser/metrics/extensions_metrics_provider.cc
@@ -4,7 +4,9 @@
#include "chrome/browser/metrics/extensions_metrics_provider.h"
+#include <algorithm>
#include <set>
+#include <vector>
#include "base/logging.h"
#include "base/memory/scoped_ptr.h"
@@ -167,7 +169,7 @@
// TODO(blundell): Create a MetricsLog::ClientIDAsInt() API and call it
// here as well as in MetricsLog's population of the client_id field of
// the uma_proto.
- return MetricsLog::Hash(metrics_state_manager_->client_id());
+ return metrics::MetricsLog::Hash(metrics_state_manager_->client_id());
}
void ExtensionsMetricsProvider::ProvideSystemProfileMetrics(
diff --git a/chrome/browser/metrics/extensions_metrics_provider_unittest.cc b/chrome/browser/metrics/extensions_metrics_provider_unittest.cc
index 451facd..d73fccfc 100644
--- a/chrome/browser/metrics/extensions_metrics_provider_unittest.cc
+++ b/chrome/browser/metrics/extensions_metrics_provider_unittest.cc
@@ -103,7 +103,7 @@
TEST(ExtensionsMetricsProvider, SystemProtoEncoding) {
metrics::SystemProfileProto system_profile;
TestingPrefServiceSimple local_state;
- MetricsService::RegisterPrefs(local_state.registry());
+ metrics::MetricsService::RegisterPrefs(local_state.registry());
scoped_ptr<metrics::MetricsStateManager> metrics_state_manager(
metrics::MetricsStateManager::Create(
&local_state,
diff --git a/chrome/browser/metrics/metrics_reporting_state.cc b/chrome/browser/metrics/metrics_reporting_state.cc
index a3a6bec..6c72ba6 100644
--- a/chrome/browser/metrics/metrics_reporting_state.cc
+++ b/chrome/browser/metrics/metrics_reporting_state.cc
@@ -24,7 +24,7 @@
// succeeds.
enabled = update_pref;
- MetricsService* metrics = g_browser_process->metrics_service();
+ metrics::MetricsService* metrics = g_browser_process->metrics_service();
if (metrics) {
if (enabled)
metrics->Start();
diff --git a/chrome/browser/metrics/metrics_service_accessor.cc b/chrome/browser/metrics/metrics_service_accessor.cc
index ec83ff3..94c0e88 100644
--- a/chrome/browser/metrics/metrics_service_accessor.cc
+++ b/chrome/browser/metrics/metrics_service_accessor.cc
@@ -8,6 +8,11 @@
#include "components/metrics/metrics_service.h"
#include "components/metrics/metrics_service_observer.h"
+// TODO(asvitkine): Remove when this class is moved to metrics namespace.
+using metrics::MetricsService;
+using metrics::MetricsServiceObserver;
+using metrics::SyntheticTrialGroup;
+
// static
void MetricsServiceAccessor::AddMetricsServiceObserver(
MetricsServiceObserver* observer) {
diff --git a/chrome/browser/metrics/metrics_service_accessor.h b/chrome/browser/metrics/metrics_service_accessor.h
index 7883f73..df2f3e0f 100644
--- a/chrome/browser/metrics/metrics_service_accessor.h
+++ b/chrome/browser/metrics/metrics_service_accessor.h
@@ -10,30 +10,35 @@
#include "base/macros.h"
+namespace metrics {
class MetricsService;
class MetricsServiceObserver;
+}
// This class limits and documents access to metrics service helper methods.
// These methods are protected so each user has to inherit own program-specific
// specialization and enable access there by declaring friends.
class MetricsServiceAccessor {
protected:
- // Constructor declared as protected to enable inheritance. Decendants should
+ // Constructor declared as protected to enable inheritance. Descendants should
// disallow instantiation.
MetricsServiceAccessor() {}
// Registers/unregisters |observer| to receive MetricsLog notifications
// from metrics service.
- static void AddMetricsServiceObserver(MetricsServiceObserver* observer);
- static void RemoveMetricsServiceObserver(MetricsServiceObserver* observer);
+ static void AddMetricsServiceObserver(
+ metrics::MetricsServiceObserver* observer);
+ static void RemoveMetricsServiceObserver(
+ metrics::MetricsServiceObserver* observer);
// Registers the specified synthetic field trial (identified by a hash of the
// trial name and group name) with |metrics_service|, if the service is not
// NULL, returning true on success.
// See the comment on MetricsService::RegisterSyntheticFieldTrial for details.
- static bool RegisterSyntheticFieldTrial(MetricsService* metrics_service,
- uint32_t trial_name_hash,
- uint32_t group_name_hash);
+ static bool RegisterSyntheticFieldTrial(
+ metrics::MetricsService* metrics_service,
+ uint32_t trial_name_hash,
+ uint32_t group_name_hash);
private:
DISALLOW_COPY_AND_ASSIGN(MetricsServiceAccessor);
diff --git a/chrome/browser/metrics/metrics_services_manager.cc b/chrome/browser/metrics/metrics_services_manager.cc
index 74d37107..186bfde7 100644
--- a/chrome/browser/metrics/metrics_services_manager.cc
+++ b/chrome/browser/metrics/metrics_services_manager.cc
@@ -30,7 +30,7 @@
MetricsServicesManager::~MetricsServicesManager() {
}
-MetricsService* MetricsServicesManager::GetMetricsService() {
+metrics::MetricsService* MetricsServicesManager::GetMetricsService() {
DCHECK(thread_checker_.CalledOnValidThread());
return GetChromeMetricsServiceClient()->metrics_service();
}
diff --git a/chrome/browser/metrics/metrics_services_manager.h b/chrome/browser/metrics/metrics_services_manager.h
index 24fc1d5..a2f38ba 100644
--- a/chrome/browser/metrics/metrics_services_manager.h
+++ b/chrome/browser/metrics/metrics_services_manager.h
@@ -10,7 +10,6 @@
#include "base/threading/thread_checker.h"
class ChromeMetricsServiceClient;
-class MetricsService;
class PrefService;
namespace base {
@@ -18,6 +17,7 @@
}
namespace metrics {
+class MetricsService;
class MetricsStateManager;
}
@@ -40,7 +40,7 @@
// Returns the MetricsService, creating it if it hasn't been created yet (and
// additionally creating the ChromeMetricsServiceClient in that case).
- MetricsService* GetMetricsService();
+ metrics::MetricsService* GetMetricsService();
// Returns the GetRapporService, creating it if it hasn't been created yet.
rappor::RapporService* GetRapporService();
diff --git a/chrome/browser/metrics/omnibox_metrics_provider.cc b/chrome/browser/metrics/omnibox_metrics_provider.cc
index 6b43ea7..b578e80 100644
--- a/chrome/browser/metrics/omnibox_metrics_provider.cc
+++ b/chrome/browser/metrics/omnibox_metrics_provider.cc
@@ -113,7 +113,7 @@
static_cast<int>(Tokenize(log.text, base::kWhitespaceUTF16, &terms));
OmniboxEventProto* omnibox_event = omnibox_events_cache.add_omnibox_event();
- omnibox_event->set_time(MetricsLog::GetCurrentTime());
+ omnibox_event->set_time(metrics::MetricsLog::GetCurrentTime());
if (log.tab_id != -1) {
// If we know what tab the autocomplete URL was opened in, log it.
omnibox_event->set_tab_id(log.tab_id);
diff --git a/chrome/browser/metrics/profiler_metrics_provider.cc b/chrome/browser/metrics/profiler_metrics_provider.cc
index a843a4d4..4ba80a0 100644
--- a/chrome/browser/metrics/profiler_metrics_provider.cc
+++ b/chrome/browser/metrics/profiler_metrics_provider.cc
@@ -86,13 +86,14 @@
ProfilerEventProto::TrackedObject* tracked_object =
performance_profile->add_tracked_object();
tracked_object->set_birth_thread_name_hash(
- MetricsLog::Hash(MapThreadName(it->birth.thread_name)));
+ metrics::MetricsLog::Hash(MapThreadName(it->birth.thread_name)));
tracked_object->set_exec_thread_name_hash(
- MetricsLog::Hash(MapThreadName(it->death_thread_name)));
+ metrics::MetricsLog::Hash(MapThreadName(it->death_thread_name)));
tracked_object->set_source_file_name_hash(
- MetricsLog::Hash(NormalizeFileName(it->birth.location.file_name)));
+ metrics::MetricsLog::Hash(NormalizeFileName(
+ it->birth.location.file_name)));
tracked_object->set_source_function_name_hash(
- MetricsLog::Hash(it->birth.location.function_name));
+ metrics::MetricsLog::Hash(it->birth.location.function_name));
tracked_object->set_source_line_number(it->birth.location.line_number);
tracked_object->set_exec_count(death_data.count);
tracked_object->set_exec_time_total(death_data.run_duration_sum);
diff --git a/chrome/browser/safe_browsing/ui_manager.cc b/chrome/browser/safe_browsing/ui_manager.cc
index 1f6a7cd..2c58e798 100644
--- a/chrome/browser/safe_browsing/ui_manager.cc
+++ b/chrome/browser/safe_browsing/ui_manager.cc
@@ -69,7 +69,7 @@
// Only report SafeBrowsing related stats when UMA is enabled. User must also
// ensure that safe browsing is enabled from the calling profile.
bool SafeBrowsingUIManager::CanReportStats() const {
- const MetricsService* metrics = g_browser_process->metrics_service();
+ const metrics::MetricsService* metrics = g_browser_process->metrics_service();
return metrics && metrics->reporting_active();
}