/** * 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 AlexaForBusiness { namespace Model { /** *

Details of a device’s status.

See Also:

AWS * API Reference

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

The list of available features on the device.

*/ inline const Feature& GetFeature() const{ return m_feature; } /** *

The list of available features on the device.

*/ inline bool FeatureHasBeenSet() const { return m_featureHasBeenSet; } /** *

The list of available features on the device.

*/ inline void SetFeature(const Feature& value) { m_featureHasBeenSet = true; m_feature = value; } /** *

The list of available features on the device.

*/ inline void SetFeature(Feature&& value) { m_featureHasBeenSet = true; m_feature = std::move(value); } /** *

The list of available features on the device.

*/ inline DeviceStatusDetail& WithFeature(const Feature& value) { SetFeature(value); return *this;} /** *

The list of available features on the device.

*/ inline DeviceStatusDetail& WithFeature(Feature&& value) { SetFeature(std::move(value)); return *this;} /** *

The device status detail code.

*/ inline const DeviceStatusDetailCode& GetCode() const{ return m_code; } /** *

The device status detail code.

*/ inline bool CodeHasBeenSet() const { return m_codeHasBeenSet; } /** *

The device status detail code.

*/ inline void SetCode(const DeviceStatusDetailCode& value) { m_codeHasBeenSet = true; m_code = value; } /** *

The device status detail code.

*/ inline void SetCode(DeviceStatusDetailCode&& value) { m_codeHasBeenSet = true; m_code = std::move(value); } /** *

The device status detail code.

*/ inline DeviceStatusDetail& WithCode(const DeviceStatusDetailCode& value) { SetCode(value); return *this;} /** *

The device status detail code.

*/ inline DeviceStatusDetail& WithCode(DeviceStatusDetailCode&& value) { SetCode(std::move(value)); return *this;} private: Feature m_feature; bool m_featureHasBeenSet = false; DeviceStatusDetailCode m_code; bool m_codeHasBeenSet = false; }; } // namespace Model } // namespace AlexaForBusiness } // namespace Aws