diff --git a/policy_manager/state.h b/policy_manager/state.h
index 09f1b3d..b81a88e 100644
--- a/policy_manager/state.h
+++ b/policy_manager/state.h
@@ -5,6 +5,7 @@
 #ifndef CHROMEOS_PLATFORM_UPDATE_ENGINE_POLICY_MANAGER_STATE_H_
 #define CHROMEOS_PLATFORM_UPDATE_ENGINE_POLICY_MANAGER_STATE_H_
 
+#include "update_engine/policy_manager/device_policy_provider.h"
 #include "update_engine/policy_manager/random_provider.h"
 #include "update_engine/policy_manager/shill_provider.h"
 #include "update_engine/policy_manager/system_provider.h"
@@ -18,9 +19,11 @@
 class State {
  public:
   virtual ~State() {}
-  State(RandomProvider* random_provider, ShillProvider* shill_provider,
+  State(DevicePolicyProvider* device_policy_provider,
+        RandomProvider* random_provider, ShillProvider* shill_provider,
         SystemProvider* system_provider, TimeProvider* time_provider,
         UpdaterProvider* updater_provider) :
+      device_policy_provider_(device_policy_provider),
       random_provider_(random_provider),
       shill_provider_(shill_provider),
       system_provider_(system_provider),
@@ -28,6 +31,9 @@
       updater_provider_(updater_provider) {}
 
   // These methods return the given provider.
+  virtual DevicePolicyProvider* device_policy_provider() {
+    return device_policy_provider_.get();
+  }
   virtual RandomProvider* random_provider() { return random_provider_.get(); }
   virtual ShillProvider* shill_provider() { return shill_provider_.get(); }
   virtual SystemProvider* system_provider() { return system_provider_.get(); }
@@ -38,6 +44,7 @@
 
  private:
   // Instances of the providers.
+  scoped_ptr<DevicePolicyProvider> device_policy_provider_;
   scoped_ptr<RandomProvider> random_provider_;
   scoped_ptr<ShillProvider> shill_provider_;
   scoped_ptr<SystemProvider> system_provider_;
