| Index: components/metrics/metrics_service.h
|
| diff --git a/components/metrics/metrics_service.h b/components/metrics/metrics_service.h
|
| index ce4102b8dfa36408fe037bd6772184d759a48a4e..72803adf186ada5fabef6278f22a2bb15eee9de8 100644
|
| --- a/components/metrics/metrics_service.h
|
| +++ b/components/metrics/metrics_service.h
|
| @@ -27,6 +27,7 @@
|
| #include "base/time/time.h"
|
| #include "build/build_config.h"
|
| #include "components/metrics/clean_exit_beacon.h"
|
| +#include "components/metrics/data_use_tracker.h"
|
| #include "components/metrics/metrics_log.h"
|
| #include "components/metrics/metrics_log_manager.h"
|
| #include "components/metrics/metrics_provider.h"
|
| @@ -80,6 +81,12 @@ class MetricsService : public base::HistogramFlattener {
|
| MetricsService(MetricsStateManager* state_manager,
|
| MetricsServiceClient* client,
|
| PrefService* local_state);
|
| +
|
| + // Creates the MetricsService as above with given |cellular_callback|
|
| + MetricsService(MetricsStateManager* state_manager,
|
| + MetricsServiceClient* client,
|
| + PrefService* local_state,
|
| + base::Callback<void(bool*)> cellular_callback);
|
| ~MetricsService() override;
|
|
|
| // Initializes metrics recording state. Updates various bookkeeping values in
|
| @@ -214,6 +221,8 @@ class MetricsService : public base::HistogramFlattener {
|
| // Pushes a log that has been generated by an external component.
|
| void PushExternalLog(const std::string& log);
|
|
|
| + base::WeakPtr<DataUseTracker> GetDataUseTracker();
|
| +
|
| protected:
|
| // Exposed for testing.
|
| MetricsLogManager* log_manager() { return &log_manager_; }
|
| @@ -468,7 +477,7 @@ class MetricsService : public base::HistogramFlattener {
|
| // Execution phase the browser is in.
|
| static ExecutionPhase execution_phase_;
|
|
|
| - // Reduntant marker to check that we completed our shutdown, and set the
|
| + // Redundant marker to check that we completed our shutdown, and set the
|
| // exited-cleanly bit in the prefs.
|
| static ShutdownCleanliness clean_shutdown_status_;
|
|
|
| @@ -477,6 +486,13 @@ class MetricsService : public base::HistogramFlattener {
|
| PermutedEntropyCacheClearedWhenLowEntropyReset);
|
| FRIEND_TEST_ALL_PREFIXES(MetricsServiceTest, RegisterSyntheticTrial);
|
|
|
| + // Assigns true to output param if current connection type is cellular and
|
| + // user is assigned to experimental group for enabled cellular uploads.
|
| + base::Callback<void(bool*)> cellular_callback_;
|
| +
|
| + // Pointer used for obtaining data use pref updater callback on above layers.
|
| + scoped_ptr<DataUseTracker> data_use_tracker_;
|
| +
|
| // Weak pointers factory used to post task on different threads. All weak
|
| // pointers managed by this factory have the same lifetime as MetricsService.
|
| base::WeakPtrFactory<MetricsService> self_ptr_factory_;
|
|
|