OLD | NEW |
1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2012 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 // This file defines a service that collects information about the user | 5 // This file defines a service that collects information about the user |
6 // experience in order to help improve future versions of the app. | 6 // experience in order to help improve future versions of the app. |
7 | 7 |
8 #ifndef CHROME_BROWSER_METRICS_METRICS_SERVICE_H_ | 8 #ifndef CHROME_BROWSER_METRICS_METRICS_SERVICE_H_ |
9 #define CHROME_BROWSER_METRICS_METRICS_SERVICE_H_ | 9 #define CHROME_BROWSER_METRICS_METRICS_SERVICE_H_ |
10 | 10 |
(...skipping 267 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
278 // were created after the trial is registered. Only one group name may be | 278 // were created after the trial is registered. Only one group name may be |
279 // registered at a time for a given trial_name. Only the last group name that | 279 // registered at a time for a given trial_name. Only the last group name that |
280 // is registered for a given trial name will be recorded. The values passed | 280 // is registered for a given trial name will be recorded. The values passed |
281 // in must not correspond to any real field trial in the code. | 281 // in must not correspond to any real field trial in the code. |
282 // To use this method, SyntheticTrialGroup should friend your class. | 282 // To use this method, SyntheticTrialGroup should friend your class. |
283 void RegisterSyntheticFieldTrial(const SyntheticTrialGroup& trial_group); | 283 void RegisterSyntheticFieldTrial(const SyntheticTrialGroup& trial_group); |
284 | 284 |
285 // Check if this install was cloned or imaged from another machine. If a | 285 // Check if this install was cloned or imaged from another machine. If a |
286 // clone is detected, reset the client id and low entropy source. This | 286 // clone is detected, reset the client id and low entropy source. This |
287 // should not be called more than once. | 287 // should not be called more than once. |
288 void CheckForClonedInstall(); | 288 void CheckForClonedInstall( |
| 289 scoped_refptr<base::SingleThreadTaskRunner> task_runner); |
289 | 290 |
290 private: | 291 private: |
291 // The MetricsService has a lifecycle that is stored as a state. | 292 // The MetricsService has a lifecycle that is stored as a state. |
292 // See metrics_service.cc for description of this lifecycle. | 293 // See metrics_service.cc for description of this lifecycle. |
293 enum State { | 294 enum State { |
294 INITIALIZED, // Constructor was called. | 295 INITIALIZED, // Constructor was called. |
295 INIT_TASK_SCHEDULED, // Waiting for deferred init tasks to | 296 INIT_TASK_SCHEDULED, // Waiting for deferred init tasks to |
296 // complete. | 297 // complete. |
297 INIT_TASK_DONE, // Waiting for timer to send initial log. | 298 INIT_TASK_DONE, // Waiting for timer to send initial log. |
298 SENDING_INITIAL_STABILITY_LOG, // Initial stability log being sent. | 299 SENDING_INITIAL_STABILITY_LOG, // Initial stability log being sent. |
(...skipping 341 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
640 | 641 |
641 // Registers/unregisters |observer| to receive MetricsLog notifications | 642 // Registers/unregisters |observer| to receive MetricsLog notifications |
642 // from metrics service. | 643 // from metrics service. |
643 static void AddMetricsServiceObserver(MetricsServiceObserver* observer); | 644 static void AddMetricsServiceObserver(MetricsServiceObserver* observer); |
644 static void RemoveMetricsServiceObserver(MetricsServiceObserver* observer); | 645 static void RemoveMetricsServiceObserver(MetricsServiceObserver* observer); |
645 | 646 |
646 DISALLOW_IMPLICIT_CONSTRUCTORS(MetricsServiceHelper); | 647 DISALLOW_IMPLICIT_CONSTRUCTORS(MetricsServiceHelper); |
647 }; | 648 }; |
648 | 649 |
649 #endif // CHROME_BROWSER_METRICS_METRICS_SERVICE_H_ | 650 #endif // CHROME_BROWSER_METRICS_METRICS_SERVICE_H_ |
OLD | NEW |