| Index: chrome/browser/policy/device_status_collector.h
|
| diff --git a/chrome/browser/policy/device_status_collector.h b/chrome/browser/policy/device_status_collector.h
|
| index 4afffcb09a12ae3b33f9fd7ac157e2aa46c3ca29..7bc0d5831e624956fa204b18fda49e2e2ef09a29 100644
|
| --- a/chrome/browser/policy/device_status_collector.h
|
| +++ b/chrome/browser/policy/device_status_collector.h
|
| @@ -6,6 +6,7 @@
|
| #define CHROME_BROWSER_POLICY_DEVICE_STATUS_COLLECTOR_H_
|
| #pragma once
|
|
|
| +#include "base/compiler_specific.h"
|
| #include "base/time.h"
|
| #include "base/timer.h"
|
| #include "chrome/browser/chromeos/version_loader.h"
|
| @@ -23,10 +24,13 @@ namespace enterprise_management {
|
| class DeviceStatusReportRequest;
|
| }
|
|
|
| +class GeolocationProvider;
|
| class PrefService;
|
|
|
| namespace policy {
|
|
|
| +class DeviceStatusLocationHelper;
|
| +
|
| // Collects and summarizes the status of an enterprised-managed ChromeOS device.
|
| class DeviceStatusCollector : public content::NotificationObserver {
|
| public:
|
| @@ -51,6 +55,8 @@ class DeviceStatusCollector : public content::NotificationObserver {
|
| // Callback which receives the results of the idle state check.
|
| void IdleStateCallback(IdleState state);
|
|
|
| + void SetGeolocationProviderForTest(GeolocationProvider* provider);
|
| +
|
| // The number of days in the past to store device activity.
|
| // This is kept in case device status uploads fail for a number of days.
|
| unsigned int max_stored_past_activity_days_;
|
| @@ -80,6 +86,8 @@ class DeviceStatusCollector : public content::NotificationObserver {
|
| enterprise_management::DeviceStatusReportRequest* request);
|
| void GetBootMode(
|
| enterprise_management::DeviceStatusReportRequest* request);
|
| + void GetLocation(
|
| + enterprise_management::DeviceStatusReportRequest* request);
|
|
|
| // Update the cached values of the reporting settings.
|
| void UpdateReportingSettings();
|
| @@ -108,12 +116,16 @@ class DeviceStatusCollector : public content::NotificationObserver {
|
|
|
| chromeos::system::StatisticsProvider* statistics_provider_;
|
|
|
| + GeolocationProvider* geolocation_provider_for_test_;
|
| + DeviceStatusLocationHelper* location_helper_;
|
| +
|
| chromeos::CrosSettings* cros_settings_;
|
|
|
| // Cached values of the reporting settings from the device policy.
|
| bool report_version_info_;
|
| bool report_activity_times_;
|
| bool report_boot_mode_;
|
| + bool report_location_;
|
|
|
| DISALLOW_COPY_AND_ASSIGN(DeviceStatusCollector);
|
| };
|
|
|