OLD | NEW |
1 // Copyright 2015 The Chromium Authors. All rights reserved. | 1 // Copyright 2015 The Chromium Authors. All rights reserved. |
2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
4 | 4 |
5 #include "ios/chrome/browser/metrics/ios_chrome_metrics_service_client.h" | 5 #include "ios/chrome/browser/metrics/ios_chrome_metrics_service_client.h" |
6 | 6 |
7 #include <stdint.h> | 7 #include <stdint.h> |
8 | 8 |
| 9 #include <utility> |
9 #include <vector> | 10 #include <vector> |
10 | 11 |
11 #include "base/bind.h" | 12 #include "base/bind.h" |
12 #include "base/callback.h" | 13 #include "base/callback.h" |
13 #include "base/command_line.h" | 14 #include "base/command_line.h" |
14 #include "base/files/file_path.h" | 15 #include "base/files/file_path.h" |
15 #include "base/logging.h" | 16 #include "base/logging.h" |
16 #include "base/metrics/histogram.h" | 17 #include "base/metrics/histogram.h" |
17 #include "base/prefs/pref_registry_simple.h" | 18 #include "base/prefs/pref_registry_simple.h" |
18 #include "base/prefs/pref_service.h" | 19 #include "base/prefs/pref_service.h" |
(...skipping 71 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
90 // static | 91 // static |
91 scoped_ptr<IOSChromeMetricsServiceClient> IOSChromeMetricsServiceClient::Create( | 92 scoped_ptr<IOSChromeMetricsServiceClient> IOSChromeMetricsServiceClient::Create( |
92 metrics::MetricsStateManager* state_manager, | 93 metrics::MetricsStateManager* state_manager, |
93 PrefService* local_state) { | 94 PrefService* local_state) { |
94 // Perform two-phase initialization so that |client->metrics_service_| only | 95 // Perform two-phase initialization so that |client->metrics_service_| only |
95 // receives pointers to fully constructed objects. | 96 // receives pointers to fully constructed objects. |
96 scoped_ptr<IOSChromeMetricsServiceClient> client( | 97 scoped_ptr<IOSChromeMetricsServiceClient> client( |
97 new IOSChromeMetricsServiceClient(state_manager)); | 98 new IOSChromeMetricsServiceClient(state_manager)); |
98 client->Initialize(); | 99 client->Initialize(); |
99 | 100 |
100 return client.Pass(); | 101 return client; |
101 } | 102 } |
102 | 103 |
103 // static | 104 // static |
104 void IOSChromeMetricsServiceClient::RegisterPrefs( | 105 void IOSChromeMetricsServiceClient::RegisterPrefs( |
105 PrefRegistrySimple* registry) { | 106 PrefRegistrySimple* registry) { |
106 metrics::MetricsService::RegisterPrefs(registry); | 107 metrics::MetricsService::RegisterPrefs(registry); |
107 metrics::StabilityMetricsHelper::RegisterPrefs(registry); | 108 metrics::StabilityMetricsHelper::RegisterPrefs(registry); |
108 } | 109 } |
109 | 110 |
110 metrics::MetricsService* IOSChromeMetricsServiceClient::GetMetricsService() { | 111 metrics::MetricsService* IOSChromeMetricsServiceClient::GetMetricsService() { |
(...skipping 136 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
247 | 248 |
248 metrics_service_->RegisterMetricsProvider( | 249 metrics_service_->RegisterMetricsProvider( |
249 scoped_ptr<metrics::MetricsProvider>( | 250 scoped_ptr<metrics::MetricsProvider>( |
250 SigninStatusMetricsProvider::CreateInstance(make_scoped_ptr( | 251 SigninStatusMetricsProvider::CreateInstance(make_scoped_ptr( |
251 new IOSChromeSigninStatusMetricsProviderDelegate)))); | 252 new IOSChromeSigninStatusMetricsProviderDelegate)))); |
252 | 253 |
253 scoped_ptr<metrics::MetricsProvider> ios_stability_metrics_provider( | 254 scoped_ptr<metrics::MetricsProvider> ios_stability_metrics_provider( |
254 new IOSStabilityMetricsProvider(metrics_service_.get())); | 255 new IOSStabilityMetricsProvider(metrics_service_.get())); |
255 if (ios_stability_metrics_provider) { | 256 if (ios_stability_metrics_provider) { |
256 metrics_service_->RegisterMetricsProvider( | 257 metrics_service_->RegisterMetricsProvider( |
257 ios_stability_metrics_provider.Pass()); | 258 std::move(ios_stability_metrics_provider)); |
258 } else { | 259 } else { |
259 NOTREACHED() << "No IOSStabilityMetricsProvider registered."; | 260 NOTREACHED() << "No IOSStabilityMetricsProvider registered."; |
260 } | 261 } |
261 } | 262 } |
262 | 263 |
263 void IOSChromeMetricsServiceClient::OnInitTaskGotDriveMetrics() { | 264 void IOSChromeMetricsServiceClient::OnInitTaskGotDriveMetrics() { |
264 finished_init_task_callback_.Run(); | 265 finished_init_task_callback_.Run(); |
265 } | 266 } |
266 | 267 |
267 bool IOSChromeMetricsServiceClient::ShouldIncludeProfilerDataInLog() { | 268 bool IOSChromeMetricsServiceClient::ShouldIncludeProfilerDataInLog() { |
(...skipping 56 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
324 base::Unretained(this))); | 325 base::Unretained(this))); |
325 } | 326 } |
326 | 327 |
327 void IOSChromeMetricsServiceClient::OnTabParented(web::WebState* web_state) { | 328 void IOSChromeMetricsServiceClient::OnTabParented(web::WebState* web_state) { |
328 metrics_service_->OnApplicationNotIdle(); | 329 metrics_service_->OnApplicationNotIdle(); |
329 } | 330 } |
330 | 331 |
331 void IOSChromeMetricsServiceClient::OnURLOpenedFromOmnibox(OmniboxLog* log) { | 332 void IOSChromeMetricsServiceClient::OnURLOpenedFromOmnibox(OmniboxLog* log) { |
332 metrics_service_->OnApplicationNotIdle(); | 333 metrics_service_->OnApplicationNotIdle(); |
333 } | 334 } |
OLD | NEW |