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/servicediscovery/ServiceDiscovery_EXPORTS.h> 8 #include <aws/core/utils/memory/stl/AWSString.h> 9 #include <aws/servicediscovery/model/PublicDnsNamespacePropertiesChange.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 ServiceDiscovery 23 { 24 namespace Model 25 { 26 27 /** 28 * <p>Updated properties for the public DNS namespace.</p><p><h3>See Also:</h3> 29 * <a 30 * href="http://docs.aws.amazon.com/goto/WebAPI/servicediscovery-2017-03-14/PublicDnsNamespaceChange">AWS 31 * API Reference</a></p> 32 */ 33 class AWS_SERVICEDISCOVERY_API PublicDnsNamespaceChange 34 { 35 public: 36 PublicDnsNamespaceChange(); 37 PublicDnsNamespaceChange(Aws::Utils::Json::JsonView jsonValue); 38 PublicDnsNamespaceChange& operator=(Aws::Utils::Json::JsonView jsonValue); 39 Aws::Utils::Json::JsonValue Jsonize() const; 40 41 42 /** 43 * <p>An updated description for the public DNS namespace.</p> 44 */ GetDescription()45 inline const Aws::String& GetDescription() const{ return m_description; } 46 47 /** 48 * <p>An updated description for the public DNS namespace.</p> 49 */ DescriptionHasBeenSet()50 inline bool DescriptionHasBeenSet() const { return m_descriptionHasBeenSet; } 51 52 /** 53 * <p>An updated description for the public DNS namespace.</p> 54 */ SetDescription(const Aws::String & value)55 inline void SetDescription(const Aws::String& value) { m_descriptionHasBeenSet = true; m_description = value; } 56 57 /** 58 * <p>An updated description for the public DNS namespace.</p> 59 */ SetDescription(Aws::String && value)60 inline void SetDescription(Aws::String&& value) { m_descriptionHasBeenSet = true; m_description = std::move(value); } 61 62 /** 63 * <p>An updated description for the public DNS namespace.</p> 64 */ SetDescription(const char * value)65 inline void SetDescription(const char* value) { m_descriptionHasBeenSet = true; m_description.assign(value); } 66 67 /** 68 * <p>An updated description for the public DNS namespace.</p> 69 */ WithDescription(const Aws::String & value)70 inline PublicDnsNamespaceChange& WithDescription(const Aws::String& value) { SetDescription(value); return *this;} 71 72 /** 73 * <p>An updated description for the public DNS namespace.</p> 74 */ WithDescription(Aws::String && value)75 inline PublicDnsNamespaceChange& WithDescription(Aws::String&& value) { SetDescription(std::move(value)); return *this;} 76 77 /** 78 * <p>An updated description for the public DNS namespace.</p> 79 */ WithDescription(const char * value)80 inline PublicDnsNamespaceChange& WithDescription(const char* value) { SetDescription(value); return *this;} 81 82 83 /** 84 * <p>Properties to be updated in the public DNS namespace.</p> 85 */ GetProperties()86 inline const PublicDnsNamespacePropertiesChange& GetProperties() const{ return m_properties; } 87 88 /** 89 * <p>Properties to be updated in the public DNS namespace.</p> 90 */ PropertiesHasBeenSet()91 inline bool PropertiesHasBeenSet() const { return m_propertiesHasBeenSet; } 92 93 /** 94 * <p>Properties to be updated in the public DNS namespace.</p> 95 */ SetProperties(const PublicDnsNamespacePropertiesChange & value)96 inline void SetProperties(const PublicDnsNamespacePropertiesChange& value) { m_propertiesHasBeenSet = true; m_properties = value; } 97 98 /** 99 * <p>Properties to be updated in the public DNS namespace.</p> 100 */ SetProperties(PublicDnsNamespacePropertiesChange && value)101 inline void SetProperties(PublicDnsNamespacePropertiesChange&& value) { m_propertiesHasBeenSet = true; m_properties = std::move(value); } 102 103 /** 104 * <p>Properties to be updated in the public DNS namespace.</p> 105 */ WithProperties(const PublicDnsNamespacePropertiesChange & value)106 inline PublicDnsNamespaceChange& WithProperties(const PublicDnsNamespacePropertiesChange& value) { SetProperties(value); return *this;} 107 108 /** 109 * <p>Properties to be updated in the public DNS namespace.</p> 110 */ WithProperties(PublicDnsNamespacePropertiesChange && value)111 inline PublicDnsNamespaceChange& WithProperties(PublicDnsNamespacePropertiesChange&& value) { SetProperties(std::move(value)); return *this;} 112 113 private: 114 115 Aws::String m_description; 116 bool m_descriptionHasBeenSet; 117 118 PublicDnsNamespacePropertiesChange m_properties; 119 bool m_propertiesHasBeenSet; 120 }; 121 122 } // namespace Model 123 } // namespace ServiceDiscovery 124 } // namespace Aws 125