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

Side by Side Diff: components/metrics_services_manager/metrics_services_manager.cc

Issue 1412113002: Componentize MetricsServicesManager (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@refactor_metrics_services_manager
Patch Set: Rebase Created 5 years, 2 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
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 "components/metrics_services_manager/metrics_services_manager.h"
6 6
7 #include "base/logging.h" 7 #include "base/logging.h"
8 #include "chrome/browser/metrics/metrics_services_manager_client.h"
9 #include "components/metrics/metrics_service.h" 8 #include "components/metrics/metrics_service.h"
10 #include "components/metrics/metrics_service_client.h" 9 #include "components/metrics/metrics_service_client.h"
11 #include "components/metrics/metrics_state_manager.h" 10 #include "components/metrics/metrics_state_manager.h"
11 #include "components/metrics_services_manager/metrics_services_manager_client.h"
12 #include "components/rappor/rappor_service.h" 12 #include "components/rappor/rappor_service.h"
13 #include "components/variations/service/variations_service.h" 13 #include "components/variations/service/variations_service.h"
14 14
15 namespace metrics_services_manager {
16
15 MetricsServicesManager::MetricsServicesManager( 17 MetricsServicesManager::MetricsServicesManager(
16 scoped_ptr<MetricsServicesManagerClient> client) 18 scoped_ptr<MetricsServicesManagerClient> client)
17 : client_(client.Pass()), may_upload_(false), may_record_(false) { 19 : client_(client.Pass()), may_upload_(false), may_record_(false) {
18 DCHECK(client_); 20 DCHECK(client_);
19 } 21 }
20 22
21 MetricsServicesManager::~MetricsServicesManager() { 23 MetricsServicesManager::~MetricsServicesManager() {}
22 }
23 24
24 metrics::MetricsService* MetricsServicesManager::GetMetricsService() { 25 metrics::MetricsService* MetricsServicesManager::GetMetricsService() {
25 DCHECK(thread_checker_.CalledOnValidThread()); 26 DCHECK(thread_checker_.CalledOnValidThread());
26 return GetMetricsServiceClient()->GetMetricsService(); 27 return GetMetricsServiceClient()->GetMetricsService();
27 } 28 }
28 29
29 rappor::RapporService* MetricsServicesManager::GetRapporService() { 30 rappor::RapporService* MetricsServicesManager::GetRapporService() {
30 DCHECK(thread_checker_.CalledOnValidThread()); 31 DCHECK(thread_checker_.CalledOnValidThread());
31 if (!rappor_service_) { 32 if (!rappor_service_) {
32 rappor_service_ = client_->CreateRapporService(); 33 rappor_service_ = client_->CreateRapporService();
(...skipping 34 matching lines...) Expand 10 before | Expand all | Expand 10 after
67 UpdateRunningServices(); 68 UpdateRunningServices();
68 } 69 }
69 70
70 void MetricsServicesManager::UpdateRunningServices() { 71 void MetricsServicesManager::UpdateRunningServices() {
71 DCHECK(thread_checker_.CalledOnValidThread()); 72 DCHECK(thread_checker_.CalledOnValidThread());
72 metrics::MetricsService* metrics = GetMetricsService(); 73 metrics::MetricsService* metrics = GetMetricsService();
73 74
74 if (client_->OnlyDoMetricsRecording()) { 75 if (client_->OnlyDoMetricsRecording()) {
75 metrics->StartRecordingForTests(); 76 metrics->StartRecordingForTests();
76 GetRapporService()->Update( 77 GetRapporService()->Update(
77 rappor::UMA_RAPPOR_GROUP | rappor::SAFEBROWSING_RAPPOR_GROUP, 78 rappor::UMA_RAPPOR_GROUP | rappor::SAFEBROWSING_RAPPOR_GROUP, false);
78 false);
79 return; 79 return;
80 } 80 }
81 81
82 if (may_record_) { 82 if (may_record_) {
83 if (!metrics->recording_active()) 83 if (!metrics->recording_active())
84 metrics->Start(); 84 metrics->Start();
85 85
86 if (may_upload_) 86 if (may_upload_)
87 metrics->EnableReporting(); 87 metrics->EnableReporting();
88 else 88 else
(...skipping 16 matching lines...) Expand all
105 &MetricsServicesManager::UpdateRunningServices, base::Unretained(this)); 105 &MetricsServicesManager::UpdateRunningServices, base::Unretained(this));
106 if (client_->IsSafeBrowsingEnabled(on_safe_browsing_update_callback)) 106 if (client_->IsSafeBrowsingEnabled(on_safe_browsing_update_callback))
107 recording_groups |= rappor::SAFEBROWSING_RAPPOR_GROUP; 107 recording_groups |= rappor::SAFEBROWSING_RAPPOR_GROUP;
108 #endif // defined(GOOGLE_CHROME_BUILD) 108 #endif // defined(GOOGLE_CHROME_BUILD)
109 GetRapporService()->Update(recording_groups, may_upload_); 109 GetRapporService()->Update(recording_groups, may_upload_);
110 } 110 }
111 111
112 void MetricsServicesManager::UpdateUploadPermissions(bool may_upload) { 112 void MetricsServicesManager::UpdateUploadPermissions(bool may_upload) {
113 return UpdatePermissions(client_->IsMetricsReportingEnabled(), may_upload); 113 return UpdatePermissions(client_->IsMetricsReportingEnabled(), may_upload);
114 } 114 }
115
116 } // namespace metrics_services_manager
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698