| Index: components/metrics/metrics_service.cc
|
| diff --git a/components/metrics/metrics_service.cc b/components/metrics/metrics_service.cc
|
| index 3537e68a31b8ef3ee92f2ff06da982f4fa557416..20d9b44c943bd6a69dd21cef525aec5747ea62c6 100644
|
| --- a/components/metrics/metrics_service.cc
|
| +++ b/components/metrics/metrics_service.cc
|
| @@ -335,6 +335,10 @@ void MetricsService::Start() {
|
| HandleIdleSinceLastTransmission(false);
|
| EnableRecording();
|
| EnableReporting();
|
| +
|
| + FOR_EACH_OBSERVER(MetricsServiceObserver,
|
| + metrics_service_observer_list_,
|
| + OnMetricsServiceStart());
|
| }
|
|
|
| void MetricsService::StartRecordingForTests() {
|
| @@ -344,6 +348,10 @@ void MetricsService::StartRecordingForTests() {
|
| }
|
|
|
| void MetricsService::Stop() {
|
| + FOR_EACH_OBSERVER(MetricsServiceObserver,
|
| + metrics_service_observer_list_,
|
| + OnMetricsServiceStop());
|
| +
|
| HandleIdleSinceLastTransmission(false);
|
| DisableReporting();
|
| DisableRecording();
|
| @@ -1036,6 +1044,14 @@ void MetricsService::RemoveSyntheticTrialObserver(
|
| synthetic_trial_observer_list_.RemoveObserver(observer);
|
| }
|
|
|
| +void MetricsService::AddObserver(MetricsServiceObserver* observer) {
|
| + metrics_service_observer_list_.AddObserver(observer);
|
| +}
|
| +
|
| +void MetricsService::RemoveObserver(MetricsServiceObserver* observer) {
|
| + metrics_service_observer_list_.RemoveObserver(observer);
|
| +}
|
| +
|
| void MetricsService::RegisterSyntheticFieldTrial(
|
| const SyntheticTrialGroup& trial) {
|
| for (size_t i = 0; i < synthetic_trial_groups_.size(); ++i) {
|
|
|