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

Unified Diff: chromecast/browser/metrics/cast_metrics_service_client.h

Issue 1958003003: Splitting the concept of UMA consent, and should UMA report. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Created 4 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 side-by-side diff with in-line comments
Download patch
Index: chromecast/browser/metrics/cast_metrics_service_client.h
diff --git a/chromecast/browser/metrics/cast_metrics_service_client.h b/chromecast/browser/metrics/cast_metrics_service_client.h
index af88142c7f8be187ec02187a54f7417dbb705afa..a0178d19fbc8ca94fecd312005b0698479bc1abd 100644
--- a/chromecast/browser/metrics/cast_metrics_service_client.h
+++ b/chromecast/browser/metrics/cast_metrics_service_client.h
@@ -13,6 +13,7 @@
#include "base/macros.h"
#include "base/memory/ref_counted.h"
#include "build/build_config.h"
+#include "components/metrics/enabled_state_provider.h"
#include "components/metrics/metrics_service_client.h"
class PrefRegistrySimple;
@@ -41,7 +42,8 @@ namespace metrics {
class ExternalMetrics;
-class CastMetricsServiceClient : public ::metrics::MetricsServiceClient {
+class CastMetricsServiceClient : public ::metrics::MetricsServiceClient,
+ public ::metrics::EnabledStateProvider {
public:
~CastMetricsServiceClient() override;
@@ -64,7 +66,7 @@ class CastMetricsServiceClient : public ::metrics::MetricsServiceClient {
void Initialize(CastService* cast_service);
void Finalize();
- // metrics::MetricsServiceClient implementation:
+ // ::metrics::MetricsServiceClient:
::metrics::MetricsService* GetMetricsService() override;
void SetMetricsClientId(const std::string& client_id) override;
void OnRecordingDisabled() override;
@@ -82,6 +84,9 @@ class CastMetricsServiceClient : public ::metrics::MetricsServiceClient {
const base::Callback<void(int)>& on_upload_complete) override;
base::TimeDelta GetStandardUploadInterval() override;
+ // ::metrics::EnabledStateProvider:
+ bool IsConsentGiven() override;
+
// Starts/stops the metrics service.
void EnableMetricsService(bool enabled);
@@ -92,9 +97,6 @@ class CastMetricsServiceClient : public ::metrics::MetricsServiceClient {
PrefService* pref_service,
net::URLRequestContextGetter* request_context);
- // Returns whether or not metrics reporting is enabled.
- bool IsReportingEnabled();
-
std::unique_ptr<::metrics::ClientInfo> LoadClientInfo();
void StoreClientInfo(const ::metrics::ClientInfo& client_info);
@@ -112,6 +114,7 @@ class CastMetricsServiceClient : public ::metrics::MetricsServiceClient {
const scoped_refptr<base::SingleThreadTaskRunner> task_runner_;
std::unique_ptr<::metrics::MetricsStateManager> metrics_state_manager_;
std::unique_ptr<::metrics::MetricsService> metrics_service_;
+ std::unique_ptr<::metrics::EnabledStateProvider> enabled_state_provider_;
net::URLRequestContextGetter* const request_context_;
DISALLOW_COPY_AND_ASSIGN(CastMetricsServiceClient);

Powered by Google App Engine
This is Rietveld 408576698