Chromium Code Reviews| Index: chrome/browser/chromeos/boot_times_loader.h |
| diff --git a/chrome/browser/chromeos/boot_times_loader.h b/chrome/browser/chromeos/boot_times_loader.h |
| index 854dccdabee2898f80009517cdd8fca85ef657b2..81e4776e3d1e52b60d8e196132743a253be2ed2c 100644 |
| --- a/chrome/browser/chromeos/boot_times_loader.h |
| +++ b/chrome/browser/chromeos/boot_times_loader.h |
| @@ -17,6 +17,8 @@ |
| #include "content/public/browser/notification_registrar.h" |
| #include "content/public/browser/render_widget_host.h" |
| +class PrefService; |
| + |
| namespace chromeos { |
| // BootTimesLoader loads the bootimes of Chrome OS from the file system. |
| @@ -82,6 +84,12 @@ class BootTimesLoader : public content::NotificationObserver { |
| // Mark that WriteLogoutTimes should handle restart. |
| void set_restart_requested() { restart_requested_ = true; } |
| + // This is called on Chrome process startup to write saved logout stats. |
| + void OnBoot(); |
|
stevenjb
2014/05/30 16:20:23
"Boot" is rather unspecific, could you give this a
Alexander Alekseev
2014/05/30 21:12:45
There are many different OnProfileCreated events.
|
| + |
| + // This saves logout-started metric to Local State. |
| + void OnLogoutStarted(PrefService* state); |
| + |
| private: |
| // BootTimesLoader calls into the Backend on the file thread to load |
| // the boot times. |
| @@ -121,19 +129,30 @@ class BootTimesLoader : public content::NotificationObserver { |
| struct Stats { |
| public: |
| + std::string SerializeToString() const; |
| + static Stats DeserializeFromString(const std::string& value); |
| + |
| std::string uptime; |
| std::string disk; |
| }; |
| static void RecordStats( |
| const std::string& name, const Stats& stats); |
| + void RecordStatsWithCallback(const std::string& name, |
| + const Stats& stats, |
| + const base::Closure& callback); |
| static Stats GetCurrentStats(); |
| + static std::string GetUptimeSeconds(const Stats& stats); |
| static void WriteTimes(const std::string base_name, |
| const std::string uma_name, |
| const std::string uma_prefix, |
| std::vector<TimeMarker> login_times); |
| static void AddMarker(std::vector<TimeMarker>* vector, TimeMarker marker); |
| + // Clear saved logout-started metric in Local State. |
| + // This method is called when logout-state was writen to file. |
| + static void ClearLogoutStartedLastPreference(); |
| + |
| // Used to hold the stats at main(). |
| Stats chrome_main_stats_; |
| scoped_refptr<Backend> backend_; |