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 #ifndef CHROME_BROWSER_METRICS_CHROME_METRICS_SERVICES_MANAGER_CLIENT_H_ | 5 #ifndef CHROME_BROWSER_METRICS_CHROME_METRICS_SERVICES_MANAGER_CLIENT_H_ |
6 #define CHROME_BROWSER_METRICS_CHROME_METRICS_SERVICES_MANAGER_CLIENT_H_ | 6 #define CHROME_BROWSER_METRICS_CHROME_METRICS_SERVICES_MANAGER_CLIENT_H_ |
7 | 7 |
8 #include <memory> | 8 #include <memory> |
9 | 9 |
10 #include "base/feature_list.h" | 10 #include "base/feature_list.h" |
(...skipping 61 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
72 CreateEntropyProvider() override; | 72 CreateEntropyProvider() override; |
73 net::URLRequestContextGetter* GetURLRequestContext() override; | 73 net::URLRequestContextGetter* GetURLRequestContext() override; |
74 bool IsMetricsReportingEnabled() override; | 74 bool IsMetricsReportingEnabled() override; |
75 bool OnlyDoMetricsRecording() override; | 75 bool OnlyDoMetricsRecording() override; |
76 | 76 |
77 #if defined(OS_WIN) | 77 #if defined(OS_WIN) |
78 // On Windows, the client controls whether Crashpad can upload crash reports. | 78 // On Windows, the client controls whether Crashpad can upload crash reports. |
79 void UpdateRunningServices(bool may_record, bool may_upload) override; | 79 void UpdateRunningServices(bool may_record, bool may_upload) override; |
80 #endif // defined(OS_WIN) | 80 #endif // defined(OS_WIN) |
81 | 81 |
| 82 bool IsMetricsReportingForceEnabled() override; |
| 83 |
82 // Gets the MetricsStateManager, creating it if it has not already been | 84 // Gets the MetricsStateManager, creating it if it has not already been |
83 // created. | 85 // created. |
84 metrics::MetricsStateManager* GetMetricsStateManager(); | 86 metrics::MetricsStateManager* GetMetricsStateManager(); |
85 | 87 |
86 // MetricsStateManager which is passed as a parameter to service constructors. | 88 // MetricsStateManager which is passed as a parameter to service constructors. |
87 std::unique_ptr<metrics::MetricsStateManager> metrics_state_manager_; | 89 std::unique_ptr<metrics::MetricsStateManager> metrics_state_manager_; |
88 | 90 |
89 // EnabledStateProvider to communicate if the client has consented to metrics | 91 // EnabledStateProvider to communicate if the client has consented to metrics |
90 // reporting, and if it's enabled. | 92 // reporting, and if it's enabled. |
91 std::unique_ptr<metrics::EnabledStateProvider> enabled_state_provider_; | 93 std::unique_ptr<metrics::EnabledStateProvider> enabled_state_provider_; |
92 | 94 |
93 // Ensures that all functions are called from the same thread. | 95 // Ensures that all functions are called from the same thread. |
94 base::ThreadChecker thread_checker_; | 96 base::ThreadChecker thread_checker_; |
95 | 97 |
96 // Weak pointer to the local state prefs store. | 98 // Weak pointer to the local state prefs store. |
97 PrefService* local_state_; | 99 PrefService* local_state_; |
98 | 100 |
99 #if defined(OS_CHROMEOS) | 101 #if defined(OS_CHROMEOS) |
100 std::unique_ptr<chromeos::CrosSettings::ObserverSubscription> | 102 std::unique_ptr<chromeos::CrosSettings::ObserverSubscription> |
101 cros_settings_observer_; | 103 cros_settings_observer_; |
102 #endif | 104 #endif |
103 | 105 |
104 DISALLOW_COPY_AND_ASSIGN(ChromeMetricsServicesManagerClient); | 106 DISALLOW_COPY_AND_ASSIGN(ChromeMetricsServicesManagerClient); |
105 }; | 107 }; |
106 | 108 |
107 #endif // CHROME_BROWSER_METRICS_CHROME_METRICS_SERVICES_MANAGER_CLIENT_H_ | 109 #endif // CHROME_BROWSER_METRICS_CHROME_METRICS_SERVICES_MANAGER_CLIENT_H_ |
OLD | NEW |