Index: chrome/browser/chromeos/policy/device_cloud_policy_manager_chromeos.h |
diff --git a/chrome/browser/chromeos/policy/device_cloud_policy_manager_chromeos.h b/chrome/browser/chromeos/policy/device_cloud_policy_manager_chromeos.h |
index 557e57aa8bc2a6c6fe4039338ef492bae4a130c6..775e6f2df20e13844ae1293c7b3bb2736b7b4f85 100644 |
--- a/chrome/browser/chromeos/policy/device_cloud_policy_manager_chromeos.h |
+++ b/chrome/browser/chromeos/policy/device_cloud_policy_manager_chromeos.h |
@@ -35,6 +35,7 @@ namespace policy { |
class DeviceCloudPolicyStoreChromeOS; |
class EnterpriseInstallAttributes; |
+class StatusUploader; |
// CloudPolicyManager specialization for device policy on Chrome OS. |
class DeviceCloudPolicyManagerChromeOS : public CloudPolicyManager { |
@@ -102,6 +103,8 @@ class DeviceCloudPolicyManagerChromeOS : public CloudPolicyManager { |
return device_store_.get(); |
} |
+ bool HasStatusUploaderForTest() { return status_uploader_; } |
+ |
private: |
// Saves the state keys received from |session_manager_client_|. |
void OnStateKeysUpdated(); |
@@ -112,11 +115,21 @@ class DeviceCloudPolicyManagerChromeOS : public CloudPolicyManager { |
void NotifyConnected(); |
void NotifyDisconnected(); |
+ // Factory function to create the StatusUploader. |
+ void CreateStatusUploader(); |
+ |
// Points to the same object as the base CloudPolicyManager::store(), but with |
// actual device policy specific type. |
scoped_ptr<DeviceCloudPolicyStoreChromeOS> device_store_; |
ServerBackedStateKeysBroker* state_keys_broker_; |
+ // Helper object that handles updating the server with our current device |
+ // state. |
+ scoped_ptr<StatusUploader> status_uploader_; |
+ |
+ // The TaskRunner used to do device status uploads. |
+ scoped_refptr<base::SequencedTaskRunner> task_runner_; |
+ |
ServerBackedStateKeysBroker::Subscription state_keys_update_subscription_; |
// PrefService instance to read the policy refresh rate from. |