Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(4647)

Unified Diff: chrome/browser/chromeos/policy/device_cloud_policy_manager_chromeos.h

Issue 845313008: Refactored device status uploading out of policy fetch infrastructure. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Review feedback. Created 5 years, 11 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
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.

Powered by Google App Engine
This is Rietveld 408576698