From b5c6b5a18863e2e9094b5bb3328edab690fa7111 Mon Sep 17 00:00:00 2001
From: blundell <blundell@chromium.org>
Date: Thu, 30 Jul 2015 13:18:30 -0700
Subject: Componentize DriveMetricsProvider*

This metrics provider is used on iOS, so to enable clean integration on iOS
this CL componentizes it and injects its //chrome-level dependencies from the
embedder.

BUG=512426

Review URL: https://codereview.chromium.org/1254983003

Cr-Commit-Position: refs/heads/master@{#341183}
---
 chrome/browser/metrics/chrome_metrics_service_client.cc | 8 ++++++--
 1 file changed, 6 insertions(+), 2 deletions(-)

(limited to 'chrome/browser/metrics/chrome_metrics_service_client.cc')

diff --git a/chrome/browser/metrics/chrome_metrics_service_client.cc b/chrome/browser/metrics/chrome_metrics_service_client.cc
index e77d03c..ae947c3 100644
--- a/chrome/browser/metrics/chrome_metrics_service_client.cc
+++ b/chrome/browser/metrics/chrome_metrics_service_client.cc
@@ -20,17 +20,18 @@
 #include "chrome/browser/chrome_notification_types.h"
 #include "chrome/browser/google/google_brand.h"
 #include "chrome/browser/metrics/chrome_stability_metrics_provider.h"
-#include "chrome/browser/metrics/drive_metrics_provider.h"
 #include "chrome/browser/metrics/omnibox_metrics_provider.h"
 #include "chrome/browser/metrics/time_ticks_experiment_win.h"
 #include "chrome/browser/process_resource_usage.h"
 #include "chrome/browser/ui/browser_otr_state.h"
 #include "chrome/common/chrome_constants.h"
+#include "chrome/common/chrome_paths.h"
 #include "chrome/common/chrome_switches.h"
 #include "chrome/common/crash_keys.h"
 #include "chrome/common/metrics/version_utils.h"
 #include "chrome/common/pref_names.h"
 #include "components/metrics/call_stack_profile_metrics_provider.h"
+#include "components/metrics/drive_metrics_provider.h"
 #include "components/metrics/gpu/gpu_metrics_provider.h"
 #include "components/metrics/metrics_service.h"
 #include "components/metrics/net/net_metrics_log_uploader.h"
@@ -350,7 +351,10 @@ void ChromeMetricsServiceClient::Initialize() {
   metrics_service_->RegisterMetricsProvider(
       scoped_ptr<metrics::MetricsProvider>(new metrics::GPUMetricsProvider));
 
-  drive_metrics_provider_ = new DriveMetricsProvider;
+  drive_metrics_provider_ = new metrics::DriveMetricsProvider(
+      content::BrowserThread::GetMessageLoopProxyForThread(
+          content::BrowserThread::FILE),
+      chrome::FILE_LOCAL_STATE);
   metrics_service_->RegisterMetricsProvider(
       scoped_ptr<metrics::MetricsProvider>(drive_metrics_provider_));
 
-- 
cgit v1.1