1 /** 2 * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. 3 * SPDX-License-Identifier: Apache-2.0. 4 */ 5 6 #pragma once 7 #include <aws/alexaforbusiness/AlexaForBusiness_EXPORTS.h> 8 #include <aws/alexaforbusiness/model/Feature.h> 9 #include <aws/alexaforbusiness/model/DeviceStatusDetailCode.h> 10 #include <utility> 11 12 namespace Aws 13 { 14 namespace Utils 15 { 16 namespace Json 17 { 18 class JsonValue; 19 class JsonView; 20 } // namespace Json 21 } // namespace Utils 22 namespace AlexaForBusiness 23 { 24 namespace Model 25 { 26 27 /** 28 * <p>Details of a device’s status.</p><p><h3>See Also:</h3> <a 29 * href="http://docs.aws.amazon.com/goto/WebAPI/alexaforbusiness-2017-11-09/DeviceStatusDetail">AWS 30 * API Reference</a></p> 31 */ 32 class AWS_ALEXAFORBUSINESS_API DeviceStatusDetail 33 { 34 public: 35 DeviceStatusDetail(); 36 DeviceStatusDetail(Aws::Utils::Json::JsonView jsonValue); 37 DeviceStatusDetail& operator=(Aws::Utils::Json::JsonView jsonValue); 38 Aws::Utils::Json::JsonValue Jsonize() const; 39 40 41 /** 42 * <p>The list of available features on the device.</p> 43 */ GetFeature()44 inline const Feature& GetFeature() const{ return m_feature; } 45 46 /** 47 * <p>The list of available features on the device.</p> 48 */ FeatureHasBeenSet()49 inline bool FeatureHasBeenSet() const { return m_featureHasBeenSet; } 50 51 /** 52 * <p>The list of available features on the device.</p> 53 */ SetFeature(const Feature & value)54 inline void SetFeature(const Feature& value) { m_featureHasBeenSet = true; m_feature = value; } 55 56 /** 57 * <p>The list of available features on the device.</p> 58 */ SetFeature(Feature && value)59 inline void SetFeature(Feature&& value) { m_featureHasBeenSet = true; m_feature = std::move(value); } 60 61 /** 62 * <p>The list of available features on the device.</p> 63 */ WithFeature(const Feature & value)64 inline DeviceStatusDetail& WithFeature(const Feature& value) { SetFeature(value); return *this;} 65 66 /** 67 * <p>The list of available features on the device.</p> 68 */ WithFeature(Feature && value)69 inline DeviceStatusDetail& WithFeature(Feature&& value) { SetFeature(std::move(value)); return *this;} 70 71 72 /** 73 * <p>The device status detail code.</p> 74 */ GetCode()75 inline const DeviceStatusDetailCode& GetCode() const{ return m_code; } 76 77 /** 78 * <p>The device status detail code.</p> 79 */ CodeHasBeenSet()80 inline bool CodeHasBeenSet() const { return m_codeHasBeenSet; } 81 82 /** 83 * <p>The device status detail code.</p> 84 */ SetCode(const DeviceStatusDetailCode & value)85 inline void SetCode(const DeviceStatusDetailCode& value) { m_codeHasBeenSet = true; m_code = value; } 86 87 /** 88 * <p>The device status detail code.</p> 89 */ SetCode(DeviceStatusDetailCode && value)90 inline void SetCode(DeviceStatusDetailCode&& value) { m_codeHasBeenSet = true; m_code = std::move(value); } 91 92 /** 93 * <p>The device status detail code.</p> 94 */ WithCode(const DeviceStatusDetailCode & value)95 inline DeviceStatusDetail& WithCode(const DeviceStatusDetailCode& value) { SetCode(value); return *this;} 96 97 /** 98 * <p>The device status detail code.</p> 99 */ WithCode(DeviceStatusDetailCode && value)100 inline DeviceStatusDetail& WithCode(DeviceStatusDetailCode&& value) { SetCode(std::move(value)); return *this;} 101 102 private: 103 104 Feature m_feature; 105 bool m_featureHasBeenSet; 106 107 DeviceStatusDetailCode m_code; 108 bool m_codeHasBeenSet; 109 }; 110 111 } // namespace Model 112 } // namespace AlexaForBusiness 113 } // namespace Aws 114