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/servicecatalog/ServiceCatalog_EXPORTS.h> 8 #include <aws/core/utils/memory/stl/AWSString.h> 9 #include <utility> 10 11 namespace Aws 12 { 13 namespace Utils 14 { 15 namespace Json 16 { 17 class JsonValue; 18 class JsonView; 19 } // namespace Json 20 } // namespace Utils 21 namespace ServiceCatalog 22 { 23 namespace Model 24 { 25 26 /** 27 * <p>Information about a TagOption.</p><p><h3>See Also:</h3> <a 28 * href="http://docs.aws.amazon.com/goto/WebAPI/servicecatalog-2015-12-10/TagOptionDetail">AWS 29 * API Reference</a></p> 30 */ 31 class AWS_SERVICECATALOG_API TagOptionDetail 32 { 33 public: 34 TagOptionDetail(); 35 TagOptionDetail(Aws::Utils::Json::JsonView jsonValue); 36 TagOptionDetail& operator=(Aws::Utils::Json::JsonView jsonValue); 37 Aws::Utils::Json::JsonValue Jsonize() const; 38 39 40 /** 41 * <p>The TagOption key.</p> 42 */ GetKey()43 inline const Aws::String& GetKey() const{ return m_key; } 44 45 /** 46 * <p>The TagOption key.</p> 47 */ KeyHasBeenSet()48 inline bool KeyHasBeenSet() const { return m_keyHasBeenSet; } 49 50 /** 51 * <p>The TagOption key.</p> 52 */ SetKey(const Aws::String & value)53 inline void SetKey(const Aws::String& value) { m_keyHasBeenSet = true; m_key = value; } 54 55 /** 56 * <p>The TagOption key.</p> 57 */ SetKey(Aws::String && value)58 inline void SetKey(Aws::String&& value) { m_keyHasBeenSet = true; m_key = std::move(value); } 59 60 /** 61 * <p>The TagOption key.</p> 62 */ SetKey(const char * value)63 inline void SetKey(const char* value) { m_keyHasBeenSet = true; m_key.assign(value); } 64 65 /** 66 * <p>The TagOption key.</p> 67 */ WithKey(const Aws::String & value)68 inline TagOptionDetail& WithKey(const Aws::String& value) { SetKey(value); return *this;} 69 70 /** 71 * <p>The TagOption key.</p> 72 */ WithKey(Aws::String && value)73 inline TagOptionDetail& WithKey(Aws::String&& value) { SetKey(std::move(value)); return *this;} 74 75 /** 76 * <p>The TagOption key.</p> 77 */ WithKey(const char * value)78 inline TagOptionDetail& WithKey(const char* value) { SetKey(value); return *this;} 79 80 81 /** 82 * <p>The TagOption value.</p> 83 */ GetValue()84 inline const Aws::String& GetValue() const{ return m_value; } 85 86 /** 87 * <p>The TagOption value.</p> 88 */ ValueHasBeenSet()89 inline bool ValueHasBeenSet() const { return m_valueHasBeenSet; } 90 91 /** 92 * <p>The TagOption value.</p> 93 */ SetValue(const Aws::String & value)94 inline void SetValue(const Aws::String& value) { m_valueHasBeenSet = true; m_value = value; } 95 96 /** 97 * <p>The TagOption value.</p> 98 */ SetValue(Aws::String && value)99 inline void SetValue(Aws::String&& value) { m_valueHasBeenSet = true; m_value = std::move(value); } 100 101 /** 102 * <p>The TagOption value.</p> 103 */ SetValue(const char * value)104 inline void SetValue(const char* value) { m_valueHasBeenSet = true; m_value.assign(value); } 105 106 /** 107 * <p>The TagOption value.</p> 108 */ WithValue(const Aws::String & value)109 inline TagOptionDetail& WithValue(const Aws::String& value) { SetValue(value); return *this;} 110 111 /** 112 * <p>The TagOption value.</p> 113 */ WithValue(Aws::String && value)114 inline TagOptionDetail& WithValue(Aws::String&& value) { SetValue(std::move(value)); return *this;} 115 116 /** 117 * <p>The TagOption value.</p> 118 */ WithValue(const char * value)119 inline TagOptionDetail& WithValue(const char* value) { SetValue(value); return *this;} 120 121 122 /** 123 * <p>The TagOption active state.</p> 124 */ GetActive()125 inline bool GetActive() const{ return m_active; } 126 127 /** 128 * <p>The TagOption active state.</p> 129 */ ActiveHasBeenSet()130 inline bool ActiveHasBeenSet() const { return m_activeHasBeenSet; } 131 132 /** 133 * <p>The TagOption active state.</p> 134 */ SetActive(bool value)135 inline void SetActive(bool value) { m_activeHasBeenSet = true; m_active = value; } 136 137 /** 138 * <p>The TagOption active state.</p> 139 */ WithActive(bool value)140 inline TagOptionDetail& WithActive(bool value) { SetActive(value); return *this;} 141 142 143 /** 144 * <p>The TagOption identifier.</p> 145 */ GetId()146 inline const Aws::String& GetId() const{ return m_id; } 147 148 /** 149 * <p>The TagOption identifier.</p> 150 */ IdHasBeenSet()151 inline bool IdHasBeenSet() const { return m_idHasBeenSet; } 152 153 /** 154 * <p>The TagOption identifier.</p> 155 */ SetId(const Aws::String & value)156 inline void SetId(const Aws::String& value) { m_idHasBeenSet = true; m_id = value; } 157 158 /** 159 * <p>The TagOption identifier.</p> 160 */ SetId(Aws::String && value)161 inline void SetId(Aws::String&& value) { m_idHasBeenSet = true; m_id = std::move(value); } 162 163 /** 164 * <p>The TagOption identifier.</p> 165 */ SetId(const char * value)166 inline void SetId(const char* value) { m_idHasBeenSet = true; m_id.assign(value); } 167 168 /** 169 * <p>The TagOption identifier.</p> 170 */ WithId(const Aws::String & value)171 inline TagOptionDetail& WithId(const Aws::String& value) { SetId(value); return *this;} 172 173 /** 174 * <p>The TagOption identifier.</p> 175 */ WithId(Aws::String && value)176 inline TagOptionDetail& WithId(Aws::String&& value) { SetId(std::move(value)); return *this;} 177 178 /** 179 * <p>The TagOption identifier.</p> 180 */ WithId(const char * value)181 inline TagOptionDetail& WithId(const char* value) { SetId(value); return *this;} 182 183 184 /** 185 * <p>The AWS account Id of the owner account that created the TagOption.</p> 186 */ GetOwner()187 inline const Aws::String& GetOwner() const{ return m_owner; } 188 189 /** 190 * <p>The AWS account Id of the owner account that created the TagOption.</p> 191 */ OwnerHasBeenSet()192 inline bool OwnerHasBeenSet() const { return m_ownerHasBeenSet; } 193 194 /** 195 * <p>The AWS account Id of the owner account that created the TagOption.</p> 196 */ SetOwner(const Aws::String & value)197 inline void SetOwner(const Aws::String& value) { m_ownerHasBeenSet = true; m_owner = value; } 198 199 /** 200 * <p>The AWS account Id of the owner account that created the TagOption.</p> 201 */ SetOwner(Aws::String && value)202 inline void SetOwner(Aws::String&& value) { m_ownerHasBeenSet = true; m_owner = std::move(value); } 203 204 /** 205 * <p>The AWS account Id of the owner account that created the TagOption.</p> 206 */ SetOwner(const char * value)207 inline void SetOwner(const char* value) { m_ownerHasBeenSet = true; m_owner.assign(value); } 208 209 /** 210 * <p>The AWS account Id of the owner account that created the TagOption.</p> 211 */ WithOwner(const Aws::String & value)212 inline TagOptionDetail& WithOwner(const Aws::String& value) { SetOwner(value); return *this;} 213 214 /** 215 * <p>The AWS account Id of the owner account that created the TagOption.</p> 216 */ WithOwner(Aws::String && value)217 inline TagOptionDetail& WithOwner(Aws::String&& value) { SetOwner(std::move(value)); return *this;} 218 219 /** 220 * <p>The AWS account Id of the owner account that created the TagOption.</p> 221 */ WithOwner(const char * value)222 inline TagOptionDetail& WithOwner(const char* value) { SetOwner(value); return *this;} 223 224 private: 225 226 Aws::String m_key; 227 bool m_keyHasBeenSet; 228 229 Aws::String m_value; 230 bool m_valueHasBeenSet; 231 232 bool m_active; 233 bool m_activeHasBeenSet; 234 235 Aws::String m_id; 236 bool m_idHasBeenSet; 237 238 Aws::String m_owner; 239 bool m_ownerHasBeenSet; 240 }; 241 242 } // namespace Model 243 } // namespace ServiceCatalog 244 } // namespace Aws 245