Upstream version 7.36.149.0
[platform/framework/web/crosswalk.git] / src / chrome / browser / chromeos / login / enrollment / auto_enrollment_controller.h
index 8a9361f..67f31d5 100644 (file)
@@ -5,6 +5,9 @@
 #ifndef CHROME_BROWSER_CHROMEOS_LOGIN_ENROLLMENT_AUTO_ENROLLMENT_CONTROLLER_H_
 #define CHROME_BROWSER_CHROMEOS_LOGIN_ENROLLMENT_AUTO_ENROLLMENT_CONTROLLER_H_
 
+#include <string>
+#include <vector>
+
 #include "base/callback_list.h"
 #include "base/macros.h"
 #include "base/memory/scoped_ptr.h"
 #include "chrome/browser/chromeos/policy/auto_enrollment_client.h"
 #include "chrome/browser/chromeos/settings/device_settings_service.h"
 
+namespace policy {
+class ServerBackedStateKeysBroker;
+}
+
 namespace chromeos {
 
 // Drives the auto-enrollment check, running an AutoEnrollmentClient if
@@ -67,13 +74,16 @@ class AutoEnrollmentController {
   void OnOwnershipStatusCheckDone(
       DeviceSettingsService::OwnershipStatus status);
 
+  // Starts the auto-enrollment client.
+  void StartClient(const std::vector<std::string>& state_keys);
+
   // Sets |state_| and notifies |progress_callbacks_|.
   void UpdateState(policy::AutoEnrollmentState state);
 
   policy::AutoEnrollmentState state_;
   ProgressCallbackList progress_callbacks_;
 
-  base::WeakPtrFactory<AutoEnrollmentController> weak_factory_;
+  base::WeakPtrFactory<AutoEnrollmentController> client_start_weak_factory_;
 
   scoped_ptr<policy::AutoEnrollmentClient> client_;