1 // Copyright 2015 The Chromium Authors. All rights reserved. 2 // Use of this source code is governed by a BSD-style license that can be 3 // found in the LICENSE file. 4 5 #ifndef CHROME_BROWSER_CHROMEOS_POLICY_REMOTE_COMMANDS_DEVICE_COMMAND_REBOOT_JOB_H_ 6 #define CHROME_BROWSER_CHROMEOS_POLICY_REMOTE_COMMANDS_DEVICE_COMMAND_REBOOT_JOB_H_ 7 8 #include "base/macros.h" 9 #include "components/policy/core/common/remote_commands/remote_command_job.h" 10 11 namespace chromeos { 12 13 class PowerManagerClient; 14 15 } // namespace chromeos 16 17 namespace policy { 18 19 class DeviceCommandRebootJob : public RemoteCommandJob { 20 public: 21 explicit DeviceCommandRebootJob( 22 chromeos::PowerManagerClient* power_manager_client); 23 ~DeviceCommandRebootJob() override; 24 25 // RemoteCommandJob: 26 enterprise_management::RemoteCommand_Type GetType() const override; 27 28 private: 29 // RemoteCommandJob: 30 void RunImpl(CallbackWithResult succeeded_callback, 31 CallbackWithResult failed_callback) override; 32 33 chromeos::PowerManagerClient* power_manager_client_; 34 35 DISALLOW_COPY_AND_ASSIGN(DeviceCommandRebootJob); 36 }; 37 38 } // namespace policy 39 40 #endif // CHROME_BROWSER_CHROMEOS_POLICY_REMOTE_COMMANDS_DEVICE_COMMAND_REBOOT_JOB_H_ 41