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/panorama/Panorama_EXPORTS.h> 8 #include <aws/core/utils/memory/stl/AWSString.h> 9 #include <aws/panorama/model/DeviceType.h> 10 #include <aws/panorama/model/DeviceConnectionStatus.h> 11 #include <aws/core/utils/DateTime.h> 12 #include <aws/panorama/model/DeviceStatus.h> 13 #include <aws/core/utils/memory/stl/AWSMap.h> 14 #include <aws/panorama/model/NetworkPayload.h> 15 #include <aws/panorama/model/NetworkStatus.h> 16 #include <utility> 17 18 namespace Aws 19 { 20 template<typename RESULT_TYPE> 21 class AmazonWebServiceResult; 22 23 namespace Utils 24 { 25 namespace Json 26 { 27 class JsonValue; 28 } // namespace Json 29 } // namespace Utils 30 namespace Panorama 31 { 32 namespace Model 33 { 34 class AWS_PANORAMA_API DescribeDeviceResult 35 { 36 public: 37 DescribeDeviceResult(); 38 DescribeDeviceResult(const Aws::AmazonWebServiceResult<Aws::Utils::Json::JsonValue>& result); 39 DescribeDeviceResult& operator=(const Aws::AmazonWebServiceResult<Aws::Utils::Json::JsonValue>& result); 40 41 42 /** 43 * <p>The device's ID.</p> 44 */ GetDeviceId()45 inline const Aws::String& GetDeviceId() const{ return m_deviceId; } 46 47 /** 48 * <p>The device's ID.</p> 49 */ SetDeviceId(const Aws::String & value)50 inline void SetDeviceId(const Aws::String& value) { m_deviceId = value; } 51 52 /** 53 * <p>The device's ID.</p> 54 */ SetDeviceId(Aws::String && value)55 inline void SetDeviceId(Aws::String&& value) { m_deviceId = std::move(value); } 56 57 /** 58 * <p>The device's ID.</p> 59 */ SetDeviceId(const char * value)60 inline void SetDeviceId(const char* value) { m_deviceId.assign(value); } 61 62 /** 63 * <p>The device's ID.</p> 64 */ WithDeviceId(const Aws::String & value)65 inline DescribeDeviceResult& WithDeviceId(const Aws::String& value) { SetDeviceId(value); return *this;} 66 67 /** 68 * <p>The device's ID.</p> 69 */ WithDeviceId(Aws::String && value)70 inline DescribeDeviceResult& WithDeviceId(Aws::String&& value) { SetDeviceId(std::move(value)); return *this;} 71 72 /** 73 * <p>The device's ID.</p> 74 */ WithDeviceId(const char * value)75 inline DescribeDeviceResult& WithDeviceId(const char* value) { SetDeviceId(value); return *this;} 76 77 78 /** 79 * <p>The device's name.</p> 80 */ GetName()81 inline const Aws::String& GetName() const{ return m_name; } 82 83 /** 84 * <p>The device's name.</p> 85 */ SetName(const Aws::String & value)86 inline void SetName(const Aws::String& value) { m_name = value; } 87 88 /** 89 * <p>The device's name.</p> 90 */ SetName(Aws::String && value)91 inline void SetName(Aws::String&& value) { m_name = std::move(value); } 92 93 /** 94 * <p>The device's name.</p> 95 */ SetName(const char * value)96 inline void SetName(const char* value) { m_name.assign(value); } 97 98 /** 99 * <p>The device's name.</p> 100 */ WithName(const Aws::String & value)101 inline DescribeDeviceResult& WithName(const Aws::String& value) { SetName(value); return *this;} 102 103 /** 104 * <p>The device's name.</p> 105 */ WithName(Aws::String && value)106 inline DescribeDeviceResult& WithName(Aws::String&& value) { SetName(std::move(value)); return *this;} 107 108 /** 109 * <p>The device's name.</p> 110 */ WithName(const char * value)111 inline DescribeDeviceResult& WithName(const char* value) { SetName(value); return *this;} 112 113 114 /** 115 * <p>The device's ARN.</p> 116 */ GetArn()117 inline const Aws::String& GetArn() const{ return m_arn; } 118 119 /** 120 * <p>The device's ARN.</p> 121 */ SetArn(const Aws::String & value)122 inline void SetArn(const Aws::String& value) { m_arn = value; } 123 124 /** 125 * <p>The device's ARN.</p> 126 */ SetArn(Aws::String && value)127 inline void SetArn(Aws::String&& value) { m_arn = std::move(value); } 128 129 /** 130 * <p>The device's ARN.</p> 131 */ SetArn(const char * value)132 inline void SetArn(const char* value) { m_arn.assign(value); } 133 134 /** 135 * <p>The device's ARN.</p> 136 */ WithArn(const Aws::String & value)137 inline DescribeDeviceResult& WithArn(const Aws::String& value) { SetArn(value); return *this;} 138 139 /** 140 * <p>The device's ARN.</p> 141 */ WithArn(Aws::String && value)142 inline DescribeDeviceResult& WithArn(Aws::String&& value) { SetArn(std::move(value)); return *this;} 143 144 /** 145 * <p>The device's ARN.</p> 146 */ WithArn(const char * value)147 inline DescribeDeviceResult& WithArn(const char* value) { SetArn(value); return *this;} 148 149 150 /** 151 * <p>The device's description.</p> 152 */ GetDescription()153 inline const Aws::String& GetDescription() const{ return m_description; } 154 155 /** 156 * <p>The device's description.</p> 157 */ SetDescription(const Aws::String & value)158 inline void SetDescription(const Aws::String& value) { m_description = value; } 159 160 /** 161 * <p>The device's description.</p> 162 */ SetDescription(Aws::String && value)163 inline void SetDescription(Aws::String&& value) { m_description = std::move(value); } 164 165 /** 166 * <p>The device's description.</p> 167 */ SetDescription(const char * value)168 inline void SetDescription(const char* value) { m_description.assign(value); } 169 170 /** 171 * <p>The device's description.</p> 172 */ WithDescription(const Aws::String & value)173 inline DescribeDeviceResult& WithDescription(const Aws::String& value) { SetDescription(value); return *this;} 174 175 /** 176 * <p>The device's description.</p> 177 */ WithDescription(Aws::String && value)178 inline DescribeDeviceResult& WithDescription(Aws::String&& value) { SetDescription(std::move(value)); return *this;} 179 180 /** 181 * <p>The device's description.</p> 182 */ WithDescription(const char * value)183 inline DescribeDeviceResult& WithDescription(const char* value) { SetDescription(value); return *this;} 184 185 186 /** 187 * <p>The device's type.</p> 188 */ GetType()189 inline const DeviceType& GetType() const{ return m_type; } 190 191 /** 192 * <p>The device's type.</p> 193 */ SetType(const DeviceType & value)194 inline void SetType(const DeviceType& value) { m_type = value; } 195 196 /** 197 * <p>The device's type.</p> 198 */ SetType(DeviceType && value)199 inline void SetType(DeviceType&& value) { m_type = std::move(value); } 200 201 /** 202 * <p>The device's type.</p> 203 */ WithType(const DeviceType & value)204 inline DescribeDeviceResult& WithType(const DeviceType& value) { SetType(value); return *this;} 205 206 /** 207 * <p>The device's type.</p> 208 */ WithType(DeviceType && value)209 inline DescribeDeviceResult& WithType(DeviceType&& value) { SetType(std::move(value)); return *this;} 210 211 212 /** 213 * <p>The device's connection status.</p> 214 */ GetDeviceConnectionStatus()215 inline const DeviceConnectionStatus& GetDeviceConnectionStatus() const{ return m_deviceConnectionStatus; } 216 217 /** 218 * <p>The device's connection status.</p> 219 */ SetDeviceConnectionStatus(const DeviceConnectionStatus & value)220 inline void SetDeviceConnectionStatus(const DeviceConnectionStatus& value) { m_deviceConnectionStatus = value; } 221 222 /** 223 * <p>The device's connection status.</p> 224 */ SetDeviceConnectionStatus(DeviceConnectionStatus && value)225 inline void SetDeviceConnectionStatus(DeviceConnectionStatus&& value) { m_deviceConnectionStatus = std::move(value); } 226 227 /** 228 * <p>The device's connection status.</p> 229 */ WithDeviceConnectionStatus(const DeviceConnectionStatus & value)230 inline DescribeDeviceResult& WithDeviceConnectionStatus(const DeviceConnectionStatus& value) { SetDeviceConnectionStatus(value); return *this;} 231 232 /** 233 * <p>The device's connection status.</p> 234 */ WithDeviceConnectionStatus(DeviceConnectionStatus && value)235 inline DescribeDeviceResult& WithDeviceConnectionStatus(DeviceConnectionStatus&& value) { SetDeviceConnectionStatus(std::move(value)); return *this;} 236 237 238 /** 239 * <p>When the device was created.</p> 240 */ GetCreatedTime()241 inline const Aws::Utils::DateTime& GetCreatedTime() const{ return m_createdTime; } 242 243 /** 244 * <p>When the device was created.</p> 245 */ SetCreatedTime(const Aws::Utils::DateTime & value)246 inline void SetCreatedTime(const Aws::Utils::DateTime& value) { m_createdTime = value; } 247 248 /** 249 * <p>When the device was created.</p> 250 */ SetCreatedTime(Aws::Utils::DateTime && value)251 inline void SetCreatedTime(Aws::Utils::DateTime&& value) { m_createdTime = std::move(value); } 252 253 /** 254 * <p>When the device was created.</p> 255 */ WithCreatedTime(const Aws::Utils::DateTime & value)256 inline DescribeDeviceResult& WithCreatedTime(const Aws::Utils::DateTime& value) { SetCreatedTime(value); return *this;} 257 258 /** 259 * <p>When the device was created.</p> 260 */ WithCreatedTime(Aws::Utils::DateTime && value)261 inline DescribeDeviceResult& WithCreatedTime(Aws::Utils::DateTime&& value) { SetCreatedTime(std::move(value)); return *this;} 262 263 264 /** 265 * <p>The device's provisioning status.</p> 266 */ GetProvisioningStatus()267 inline const DeviceStatus& GetProvisioningStatus() const{ return m_provisioningStatus; } 268 269 /** 270 * <p>The device's provisioning status.</p> 271 */ SetProvisioningStatus(const DeviceStatus & value)272 inline void SetProvisioningStatus(const DeviceStatus& value) { m_provisioningStatus = value; } 273 274 /** 275 * <p>The device's provisioning status.</p> 276 */ SetProvisioningStatus(DeviceStatus && value)277 inline void SetProvisioningStatus(DeviceStatus&& value) { m_provisioningStatus = std::move(value); } 278 279 /** 280 * <p>The device's provisioning status.</p> 281 */ WithProvisioningStatus(const DeviceStatus & value)282 inline DescribeDeviceResult& WithProvisioningStatus(const DeviceStatus& value) { SetProvisioningStatus(value); return *this;} 283 284 /** 285 * <p>The device's provisioning status.</p> 286 */ WithProvisioningStatus(DeviceStatus && value)287 inline DescribeDeviceResult& WithProvisioningStatus(DeviceStatus&& value) { SetProvisioningStatus(std::move(value)); return *this;} 288 289 290 /** 291 * <p>The latest software version available for the device.</p> 292 */ GetLatestSoftware()293 inline const Aws::String& GetLatestSoftware() const{ return m_latestSoftware; } 294 295 /** 296 * <p>The latest software version available for the device.</p> 297 */ SetLatestSoftware(const Aws::String & value)298 inline void SetLatestSoftware(const Aws::String& value) { m_latestSoftware = value; } 299 300 /** 301 * <p>The latest software version available for the device.</p> 302 */ SetLatestSoftware(Aws::String && value)303 inline void SetLatestSoftware(Aws::String&& value) { m_latestSoftware = std::move(value); } 304 305 /** 306 * <p>The latest software version available for the device.</p> 307 */ SetLatestSoftware(const char * value)308 inline void SetLatestSoftware(const char* value) { m_latestSoftware.assign(value); } 309 310 /** 311 * <p>The latest software version available for the device.</p> 312 */ WithLatestSoftware(const Aws::String & value)313 inline DescribeDeviceResult& WithLatestSoftware(const Aws::String& value) { SetLatestSoftware(value); return *this;} 314 315 /** 316 * <p>The latest software version available for the device.</p> 317 */ WithLatestSoftware(Aws::String && value)318 inline DescribeDeviceResult& WithLatestSoftware(Aws::String&& value) { SetLatestSoftware(std::move(value)); return *this;} 319 320 /** 321 * <p>The latest software version available for the device.</p> 322 */ WithLatestSoftware(const char * value)323 inline DescribeDeviceResult& WithLatestSoftware(const char* value) { SetLatestSoftware(value); return *this;} 324 325 326 /** 327 * <p>The device's current software version.</p> 328 */ GetCurrentSoftware()329 inline const Aws::String& GetCurrentSoftware() const{ return m_currentSoftware; } 330 331 /** 332 * <p>The device's current software version.</p> 333 */ SetCurrentSoftware(const Aws::String & value)334 inline void SetCurrentSoftware(const Aws::String& value) { m_currentSoftware = value; } 335 336 /** 337 * <p>The device's current software version.</p> 338 */ SetCurrentSoftware(Aws::String && value)339 inline void SetCurrentSoftware(Aws::String&& value) { m_currentSoftware = std::move(value); } 340 341 /** 342 * <p>The device's current software version.</p> 343 */ SetCurrentSoftware(const char * value)344 inline void SetCurrentSoftware(const char* value) { m_currentSoftware.assign(value); } 345 346 /** 347 * <p>The device's current software version.</p> 348 */ WithCurrentSoftware(const Aws::String & value)349 inline DescribeDeviceResult& WithCurrentSoftware(const Aws::String& value) { SetCurrentSoftware(value); return *this;} 350 351 /** 352 * <p>The device's current software version.</p> 353 */ WithCurrentSoftware(Aws::String && value)354 inline DescribeDeviceResult& WithCurrentSoftware(Aws::String&& value) { SetCurrentSoftware(std::move(value)); return *this;} 355 356 /** 357 * <p>The device's current software version.</p> 358 */ WithCurrentSoftware(const char * value)359 inline DescribeDeviceResult& WithCurrentSoftware(const char* value) { SetCurrentSoftware(value); return *this;} 360 361 362 /** 363 * <p>The device's serial number.</p> 364 */ GetSerialNumber()365 inline const Aws::String& GetSerialNumber() const{ return m_serialNumber; } 366 367 /** 368 * <p>The device's serial number.</p> 369 */ SetSerialNumber(const Aws::String & value)370 inline void SetSerialNumber(const Aws::String& value) { m_serialNumber = value; } 371 372 /** 373 * <p>The device's serial number.</p> 374 */ SetSerialNumber(Aws::String && value)375 inline void SetSerialNumber(Aws::String&& value) { m_serialNumber = std::move(value); } 376 377 /** 378 * <p>The device's serial number.</p> 379 */ SetSerialNumber(const char * value)380 inline void SetSerialNumber(const char* value) { m_serialNumber.assign(value); } 381 382 /** 383 * <p>The device's serial number.</p> 384 */ WithSerialNumber(const Aws::String & value)385 inline DescribeDeviceResult& WithSerialNumber(const Aws::String& value) { SetSerialNumber(value); return *this;} 386 387 /** 388 * <p>The device's serial number.</p> 389 */ WithSerialNumber(Aws::String && value)390 inline DescribeDeviceResult& WithSerialNumber(Aws::String&& value) { SetSerialNumber(std::move(value)); return *this;} 391 392 /** 393 * <p>The device's serial number.</p> 394 */ WithSerialNumber(const char * value)395 inline DescribeDeviceResult& WithSerialNumber(const char* value) { SetSerialNumber(value); return *this;} 396 397 398 /** 399 * <p>The device's tags.</p> 400 */ GetTags()401 inline const Aws::Map<Aws::String, Aws::String>& GetTags() const{ return m_tags; } 402 403 /** 404 * <p>The device's tags.</p> 405 */ SetTags(const Aws::Map<Aws::String,Aws::String> & value)406 inline void SetTags(const Aws::Map<Aws::String, Aws::String>& value) { m_tags = value; } 407 408 /** 409 * <p>The device's tags.</p> 410 */ SetTags(Aws::Map<Aws::String,Aws::String> && value)411 inline void SetTags(Aws::Map<Aws::String, Aws::String>&& value) { m_tags = std::move(value); } 412 413 /** 414 * <p>The device's tags.</p> 415 */ WithTags(const Aws::Map<Aws::String,Aws::String> & value)416 inline DescribeDeviceResult& WithTags(const Aws::Map<Aws::String, Aws::String>& value) { SetTags(value); return *this;} 417 418 /** 419 * <p>The device's tags.</p> 420 */ WithTags(Aws::Map<Aws::String,Aws::String> && value)421 inline DescribeDeviceResult& WithTags(Aws::Map<Aws::String, Aws::String>&& value) { SetTags(std::move(value)); return *this;} 422 423 /** 424 * <p>The device's tags.</p> 425 */ AddTags(const Aws::String & key,const Aws::String & value)426 inline DescribeDeviceResult& AddTags(const Aws::String& key, const Aws::String& value) { m_tags.emplace(key, value); return *this; } 427 428 /** 429 * <p>The device's tags.</p> 430 */ AddTags(Aws::String && key,const Aws::String & value)431 inline DescribeDeviceResult& AddTags(Aws::String&& key, const Aws::String& value) { m_tags.emplace(std::move(key), value); return *this; } 432 433 /** 434 * <p>The device's tags.</p> 435 */ AddTags(const Aws::String & key,Aws::String && value)436 inline DescribeDeviceResult& AddTags(const Aws::String& key, Aws::String&& value) { m_tags.emplace(key, std::move(value)); return *this; } 437 438 /** 439 * <p>The device's tags.</p> 440 */ AddTags(Aws::String && key,Aws::String && value)441 inline DescribeDeviceResult& AddTags(Aws::String&& key, Aws::String&& value) { m_tags.emplace(std::move(key), std::move(value)); return *this; } 442 443 /** 444 * <p>The device's tags.</p> 445 */ AddTags(const char * key,Aws::String && value)446 inline DescribeDeviceResult& AddTags(const char* key, Aws::String&& value) { m_tags.emplace(key, std::move(value)); return *this; } 447 448 /** 449 * <p>The device's tags.</p> 450 */ AddTags(Aws::String && key,const char * value)451 inline DescribeDeviceResult& AddTags(Aws::String&& key, const char* value) { m_tags.emplace(std::move(key), value); return *this; } 452 453 /** 454 * <p>The device's tags.</p> 455 */ AddTags(const char * key,const char * value)456 inline DescribeDeviceResult& AddTags(const char* key, const char* value) { m_tags.emplace(key, value); return *this; } 457 458 459 /** 460 * <p>The device's networking configuration.</p> 461 */ GetNetworkingConfiguration()462 inline const NetworkPayload& GetNetworkingConfiguration() const{ return m_networkingConfiguration; } 463 464 /** 465 * <p>The device's networking configuration.</p> 466 */ SetNetworkingConfiguration(const NetworkPayload & value)467 inline void SetNetworkingConfiguration(const NetworkPayload& value) { m_networkingConfiguration = value; } 468 469 /** 470 * <p>The device's networking configuration.</p> 471 */ SetNetworkingConfiguration(NetworkPayload && value)472 inline void SetNetworkingConfiguration(NetworkPayload&& value) { m_networkingConfiguration = std::move(value); } 473 474 /** 475 * <p>The device's networking configuration.</p> 476 */ WithNetworkingConfiguration(const NetworkPayload & value)477 inline DescribeDeviceResult& WithNetworkingConfiguration(const NetworkPayload& value) { SetNetworkingConfiguration(value); return *this;} 478 479 /** 480 * <p>The device's networking configuration.</p> 481 */ WithNetworkingConfiguration(NetworkPayload && value)482 inline DescribeDeviceResult& WithNetworkingConfiguration(NetworkPayload&& value) { SetNetworkingConfiguration(std::move(value)); return *this;} 483 484 485 /** 486 * <p>The device's networking status.</p> 487 */ GetCurrentNetworkingStatus()488 inline const NetworkStatus& GetCurrentNetworkingStatus() const{ return m_currentNetworkingStatus; } 489 490 /** 491 * <p>The device's networking status.</p> 492 */ SetCurrentNetworkingStatus(const NetworkStatus & value)493 inline void SetCurrentNetworkingStatus(const NetworkStatus& value) { m_currentNetworkingStatus = value; } 494 495 /** 496 * <p>The device's networking status.</p> 497 */ SetCurrentNetworkingStatus(NetworkStatus && value)498 inline void SetCurrentNetworkingStatus(NetworkStatus&& value) { m_currentNetworkingStatus = std::move(value); } 499 500 /** 501 * <p>The device's networking status.</p> 502 */ WithCurrentNetworkingStatus(const NetworkStatus & value)503 inline DescribeDeviceResult& WithCurrentNetworkingStatus(const NetworkStatus& value) { SetCurrentNetworkingStatus(value); return *this;} 504 505 /** 506 * <p>The device's networking status.</p> 507 */ WithCurrentNetworkingStatus(NetworkStatus && value)508 inline DescribeDeviceResult& WithCurrentNetworkingStatus(NetworkStatus&& value) { SetCurrentNetworkingStatus(std::move(value)); return *this;} 509 510 511 /** 512 * <p>The device's lease expiration time.</p> 513 */ GetLeaseExpirationTime()514 inline const Aws::Utils::DateTime& GetLeaseExpirationTime() const{ return m_leaseExpirationTime; } 515 516 /** 517 * <p>The device's lease expiration time.</p> 518 */ SetLeaseExpirationTime(const Aws::Utils::DateTime & value)519 inline void SetLeaseExpirationTime(const Aws::Utils::DateTime& value) { m_leaseExpirationTime = value; } 520 521 /** 522 * <p>The device's lease expiration time.</p> 523 */ SetLeaseExpirationTime(Aws::Utils::DateTime && value)524 inline void SetLeaseExpirationTime(Aws::Utils::DateTime&& value) { m_leaseExpirationTime = std::move(value); } 525 526 /** 527 * <p>The device's lease expiration time.</p> 528 */ WithLeaseExpirationTime(const Aws::Utils::DateTime & value)529 inline DescribeDeviceResult& WithLeaseExpirationTime(const Aws::Utils::DateTime& value) { SetLeaseExpirationTime(value); return *this;} 530 531 /** 532 * <p>The device's lease expiration time.</p> 533 */ WithLeaseExpirationTime(Aws::Utils::DateTime && value)534 inline DescribeDeviceResult& WithLeaseExpirationTime(Aws::Utils::DateTime&& value) { SetLeaseExpirationTime(std::move(value)); return *this;} 535 536 private: 537 538 Aws::String m_deviceId; 539 540 Aws::String m_name; 541 542 Aws::String m_arn; 543 544 Aws::String m_description; 545 546 DeviceType m_type; 547 548 DeviceConnectionStatus m_deviceConnectionStatus; 549 550 Aws::Utils::DateTime m_createdTime; 551 552 DeviceStatus m_provisioningStatus; 553 554 Aws::String m_latestSoftware; 555 556 Aws::String m_currentSoftware; 557 558 Aws::String m_serialNumber; 559 560 Aws::Map<Aws::String, Aws::String> m_tags; 561 562 NetworkPayload m_networkingConfiguration; 563 564 NetworkStatus m_currentNetworkingStatus; 565 566 Aws::Utils::DateTime m_leaseExpirationTime; 567 }; 568 569 } // namespace Model 570 } // namespace Panorama 571 } // namespace Aws 572