Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(18)

Side by Side Diff: chrome/browser/metrics/metrics_services_manager.cc

Issue 297483008: Refactor HashedExtensionMetrics into ExtensionsMetricsProvider. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Rebase Created 6 years, 7 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch | Annotate | Revision Log
OLDNEW
1 // Copyright 2014 The Chromium Authors. All rights reserved. 1 // Copyright 2014 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 "chrome/browser/metrics/metrics_services_manager.h" 5 #include "chrome/browser/metrics/metrics_services_manager.h"
6 6
7 #include "chrome/browser/metrics/extensions_metrics_provider.h"
7 #include "chrome/browser/metrics/metrics_service.h" 8 #include "chrome/browser/metrics/metrics_service.h"
8 #include "chrome/browser/metrics/metrics_state_manager.h" 9 #include "chrome/browser/metrics/metrics_state_manager.h"
9 #include "chrome/browser/metrics/variations/variations_service.h" 10 #include "chrome/browser/metrics/variations/variations_service.h"
10 #include "components/rappor/rappor_service.h" 11 #include "components/rappor/rappor_service.h"
11 12
12 MetricsServicesManager::MetricsServicesManager(PrefService* local_state) 13 MetricsServicesManager::MetricsServicesManager(PrefService* local_state)
13 : local_state_(local_state) { 14 : local_state_(local_state) {
14 DCHECK(local_state); 15 DCHECK(local_state);
15 } 16 }
16 17
17 MetricsServicesManager::~MetricsServicesManager() { 18 MetricsServicesManager::~MetricsServicesManager() {
18 } 19 }
19 20
20 MetricsService* MetricsServicesManager::GetMetricsService() { 21 MetricsService* MetricsServicesManager::GetMetricsService() {
21 DCHECK(thread_checker_.CalledOnValidThread()); 22 DCHECK(thread_checker_.CalledOnValidThread());
22 if (!metrics_service_) { 23 if (!metrics_service_) {
23 metrics_service_.reset( 24 metrics_service_.reset(
24 new MetricsService(GetMetricsStateManager(), &metrics_service_client_)); 25 new MetricsService(GetMetricsStateManager(), &metrics_service_client_));
26 metrics_service_->RegisterMetricsProvider(
27 scoped_ptr<metrics::MetricsProvider>(
28 new ExtensionsMetricsProvider(GetMetricsStateManager())));
25 } 29 }
26 return metrics_service_.get(); 30 return metrics_service_.get();
27 } 31 }
28 32
29 rappor::RapporService* MetricsServicesManager::GetRapporService() { 33 rappor::RapporService* MetricsServicesManager::GetRapporService() {
30 DCHECK(thread_checker_.CalledOnValidThread()); 34 DCHECK(thread_checker_.CalledOnValidThread());
31 if (!rappor_service_) 35 if (!rappor_service_)
32 rappor_service_.reset(new rappor::RapporService); 36 rappor_service_.reset(new rappor::RapporService);
33 return rappor_service_.get(); 37 return rappor_service_.get();
34 } 38 }
35 39
36 chrome_variations::VariationsService* 40 chrome_variations::VariationsService*
37 MetricsServicesManager::GetVariationsService() { 41 MetricsServicesManager::GetVariationsService() {
38 DCHECK(thread_checker_.CalledOnValidThread()); 42 DCHECK(thread_checker_.CalledOnValidThread());
39 if (!variations_service_) { 43 if (!variations_service_) {
40 variations_service_ = 44 variations_service_ =
41 chrome_variations::VariationsService::Create(local_state_, 45 chrome_variations::VariationsService::Create(local_state_,
42 GetMetricsStateManager()); 46 GetMetricsStateManager());
43 } 47 }
44 return variations_service_.get(); 48 return variations_service_.get();
45 } 49 }
46 50
47 metrics::MetricsStateManager* MetricsServicesManager::GetMetricsStateManager() { 51 metrics::MetricsStateManager* MetricsServicesManager::GetMetricsStateManager() {
48 DCHECK(thread_checker_.CalledOnValidThread()); 52 DCHECK(thread_checker_.CalledOnValidThread());
49 if (!metrics_state_manager_) 53 if (!metrics_state_manager_)
50 metrics_state_manager_ = metrics::MetricsStateManager::Create(local_state_); 54 metrics_state_manager_ = metrics::MetricsStateManager::Create(local_state_);
51 return metrics_state_manager_.get(); 55 return metrics_state_manager_.get();
52 } 56 }
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698