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 c8d5f489ab1eda2d1cf00bf9c6ae25a2f6a7b0d1..269673d1da3d8dac90be66bcedcf7615945673a7 100644 |
--- a/chrome/browser/chromeos/policy/device_cloud_policy_manager_chromeos.h |
+++ b/chrome/browser/chromeos/policy/device_cloud_policy_manager_chromeos.h |
@@ -7,6 +7,7 @@ |
#include <bitset> |
#include <string> |
+#include <vector> |
#include "base/basictypes.h" |
#include "base/callback.h" |
@@ -45,6 +46,17 @@ class DeviceCloudPolicyManagerChromeOS : public CloudPolicyManager { |
typedef std::bitset<32> AllowedDeviceModes; |
typedef base::Callback<void(EnrollmentStatus)> EnrollmentCallback; |
+ // The power of two determining the size of the time quanta for device state |
+ // keys, i.e. the quanta will be of size 2^kDeviceStateKeyTimeQuantumPower |
+ // seconds. 2^23 seconds corresponds to 97.09 days. |
+ static const int kDeviceStateKeyTimeQuantumPower = 23; |
+ |
+ // The number of future time quanta to generate device state identifiers for. |
+ // This determines the interval after which a device will no longer receive |
+ // server-backed state information and thus corresponds to the delay until a |
+ // device becomes anonymous to the server again. |
Joao da Silva
2014/03/27 15:45:40
If I understood the implementation correctly then
Mattias Nissler (ping if slow)
2014/03/27 16:12:41
5 * 97 is closer to 16 months :) The goal was one
|
+ static const int kDeviceStateKeyFutureQuanta = 5; |
+ |
// |task_runner| is the runner for policy refresh tasks. |
// |background_task_runner| is used to execute long-running background tasks |
// that may involve file I/O. |
@@ -101,8 +113,14 @@ class DeviceCloudPolicyManagerChromeOS : public CloudPolicyManager { |
// Returns the machine model, or an empty string if not available. |
static std::string GetMachineModel(); |
- // Returns the stable device state key. |
- static std::string GetDeviceStateKey(); |
+ // Gets the device state keys for |timestamp|. These will cover a time frame |
+ // including |timestamp| and extending into the future as configured by the |
+ // constants declared above. |
+ static bool GetDeviceStateKeys(const base::Time& timestamp, |
+ std::vector<std::string>* state_keys); |
+ |
+ // Returns the currently valid device state key. |
+ static std::string GetCurrentDeviceStateKey(); |
// Returns the robot 'email address' associated with the device robot |
// account (sometimes called a service account) associated with this device |