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

Side by Side Diff: chromecast/browser/metrics/cast_metrics_service_client.cc

Issue 1142513004: Chromecast: MessageLoopProxy cleanup --> SingleThreadTaskRunner. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: rebase Created 5 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
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 "chromecast/browser/metrics/cast_metrics_service_client.h" 5 #include "chromecast/browser/metrics/cast_metrics_service_client.h"
6 6
7 #include "base/command_line.h" 7 #include "base/command_line.h"
8 #include "base/guid.h" 8 #include "base/guid.h"
9 #include "base/i18n/rtl.h" 9 #include "base/i18n/rtl.h"
10 #include "base/prefs/pref_service.h" 10 #include "base/prefs/pref_service.h"
11 #include "base/thread_task_runner_handle.h"
11 #include "chromecast/browser/metrics/cast_stability_metrics_provider.h" 12 #include "chromecast/browser/metrics/cast_stability_metrics_provider.h"
12 #include "chromecast/browser/metrics/platform_metrics_providers.h" 13 #include "chromecast/browser/metrics/platform_metrics_providers.h"
13 #include "chromecast/common/chromecast_switches.h" 14 #include "chromecast/common/chromecast_switches.h"
14 #include "chromecast/common/pref_names.h" 15 #include "chromecast/common/pref_names.h"
15 #include "components/metrics/client_info.h" 16 #include "components/metrics/client_info.h"
16 #include "components/metrics/gpu/gpu_metrics_provider.h" 17 #include "components/metrics/gpu/gpu_metrics_provider.h"
17 #include "components/metrics/metrics_pref_names.h" 18 #include "components/metrics/metrics_pref_names.h"
18 #include "components/metrics/metrics_provider.h" 19 #include "components/metrics/metrics_provider.h"
19 #include "components/metrics/metrics_service.h" 20 #include "components/metrics/metrics_service.h"
20 #include "components/metrics/metrics_state_manager.h" 21 #include "components/metrics/metrics_state_manager.h"
(...skipping 134 matching lines...) Expand 10 before | Expand all | Expand 10 after
155 uma_server_url, 156 uma_server_url,
156 ::metrics::kDefaultMetricsMimeType, 157 ::metrics::kDefaultMetricsMimeType,
157 on_upload_complete)); 158 on_upload_complete));
158 } 159 }
159 160
160 base::TimeDelta CastMetricsServiceClient::GetStandardUploadInterval() { 161 base::TimeDelta CastMetricsServiceClient::GetStandardUploadInterval() {
161 return base::TimeDelta::FromMinutes(kStandardUploadIntervalMinutes); 162 return base::TimeDelta::FromMinutes(kStandardUploadIntervalMinutes);
162 } 163 }
163 164
164 void CastMetricsServiceClient::EnableMetricsService(bool enabled) { 165 void CastMetricsServiceClient::EnableMetricsService(bool enabled) {
165 if (!metrics_service_loop_->BelongsToCurrentThread()) { 166 if (!task_runner_->BelongsToCurrentThread()) {
166 metrics_service_loop_->PostTask( 167 task_runner_->PostTask(
167 FROM_HERE, 168 FROM_HERE, base::Bind(&CastMetricsServiceClient::EnableMetricsService,
168 base::Bind(&CastMetricsServiceClient::EnableMetricsService, 169 base::Unretained(this), enabled));
169 base::Unretained(this),
170 enabled));
171 return; 170 return;
172 } 171 }
173 172
174 if (enabled) { 173 if (enabled) {
175 metrics_service_->Start(); 174 metrics_service_->Start();
176 } else { 175 } else {
177 metrics_service_->Stop(); 176 metrics_service_->Stop();
178 } 177 }
179 } 178 }
180 179
181 CastMetricsServiceClient::CastMetricsServiceClient( 180 CastMetricsServiceClient::CastMetricsServiceClient(
182 base::TaskRunner* io_task_runner, 181 base::TaskRunner* io_task_runner,
183 PrefService* pref_service, 182 PrefService* pref_service,
184 net::URLRequestContextGetter* request_context) 183 net::URLRequestContextGetter* request_context)
185 : io_task_runner_(io_task_runner), 184 : io_task_runner_(io_task_runner),
186 pref_service_(pref_service), 185 pref_service_(pref_service),
187 cast_service_(NULL), 186 cast_service_(NULL),
188 #if !defined(OS_ANDROID) 187 #if !defined(OS_ANDROID)
189 external_metrics_(NULL), 188 external_metrics_(NULL),
190 #endif // !defined(OS_ANDROID) 189 #endif // !defined(OS_ANDROID)
191 metrics_service_loop_(base::MessageLoopProxy::current()), 190 task_runner_(base::ThreadTaskRunnerHandle::Get()),
192 request_context_(request_context) { 191 request_context_(request_context) {
193 } 192 }
194 193
195 CastMetricsServiceClient::~CastMetricsServiceClient() { 194 CastMetricsServiceClient::~CastMetricsServiceClient() {
196 #if !defined(OS_ANDROID) 195 #if !defined(OS_ANDROID)
197 DCHECK(!external_metrics_); 196 DCHECK(!external_metrics_);
198 #endif // !defined(OS_ANDROID) 197 #endif // !defined(OS_ANDROID)
199 } 198 }
200 199
201 void CastMetricsServiceClient::Initialize(CastService* cast_service) { 200 void CastMetricsServiceClient::Initialize(CastService* cast_service) {
(...skipping 72 matching lines...) Expand 10 before | Expand all | Expand 10 after
274 #endif // defined(OS_LINUX) 273 #endif // defined(OS_LINUX)
275 metrics_service_->Stop(); 274 metrics_service_->Stop();
276 } 275 }
277 276
278 bool CastMetricsServiceClient::IsReportingEnabled() { 277 bool CastMetricsServiceClient::IsReportingEnabled() {
279 return PlatformIsReportingEnabled(cast_service_); 278 return PlatformIsReportingEnabled(cast_service_);
280 } 279 }
281 280
282 } // namespace metrics 281 } // namespace metrics
283 } // namespace chromecast 282 } // namespace chromecast
OLDNEW
« no previous file with comments | « chromecast/browser/metrics/cast_metrics_service_client.h ('k') | chromecast/media/cdm/browser_cdm_cast.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698