/** * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. * SPDX-License-Identifier: Apache-2.0. */ #pragma once #include #include #include #include namespace Aws { namespace Utils { namespace Json { class JsonValue; class JsonView; } // namespace Json } // namespace Utils namespace SnowDeviceManagement { namespace Model { /** *

The command given to the device to execute.

See Also:

AWS * API Reference

*/ class Command { public: AWS_SNOWDEVICEMANAGEMENT_API Command(); AWS_SNOWDEVICEMANAGEMENT_API Command(Aws::Utils::Json::JsonView jsonValue); AWS_SNOWDEVICEMANAGEMENT_API Command& operator=(Aws::Utils::Json::JsonView jsonValue); AWS_SNOWDEVICEMANAGEMENT_API Aws::Utils::Json::JsonValue Jsonize() const; /** *

Reboots the device.

*/ inline const Reboot& GetReboot() const{ return m_reboot; } /** *

Reboots the device.

*/ inline bool RebootHasBeenSet() const { return m_rebootHasBeenSet; } /** *

Reboots the device.

*/ inline void SetReboot(const Reboot& value) { m_rebootHasBeenSet = true; m_reboot = value; } /** *

Reboots the device.

*/ inline void SetReboot(Reboot&& value) { m_rebootHasBeenSet = true; m_reboot = std::move(value); } /** *

Reboots the device.

*/ inline Command& WithReboot(const Reboot& value) { SetReboot(value); return *this;} /** *

Reboots the device.

*/ inline Command& WithReboot(Reboot&& value) { SetReboot(std::move(value)); return *this;} /** *

Unlocks the device.

*/ inline const Unlock& GetUnlock() const{ return m_unlock; } /** *

Unlocks the device.

*/ inline bool UnlockHasBeenSet() const { return m_unlockHasBeenSet; } /** *

Unlocks the device.

*/ inline void SetUnlock(const Unlock& value) { m_unlockHasBeenSet = true; m_unlock = value; } /** *

Unlocks the device.

*/ inline void SetUnlock(Unlock&& value) { m_unlockHasBeenSet = true; m_unlock = std::move(value); } /** *

Unlocks the device.

*/ inline Command& WithUnlock(const Unlock& value) { SetUnlock(value); return *this;} /** *

Unlocks the device.

*/ inline Command& WithUnlock(Unlock&& value) { SetUnlock(std::move(value)); return *this;} private: Reboot m_reboot; bool m_rebootHasBeenSet = false; Unlock m_unlock; bool m_unlockHasBeenSet = false; }; } // namespace Model } // namespace SnowDeviceManagement } // namespace Aws