/** * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. * SPDX-License-Identifier: Apache-2.0. */ #pragma once #include #include #include namespace Aws { namespace Utils { namespace Json { class JsonValue; class JsonView; } // namespace Json } // namespace Utils namespace ServiceDiscovery { namespace Model { /** *

Updated DNS properties for the public DNS namespace.

See Also:

* AWS * API Reference

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

Updated fields for the Start of Authority (SOA) record for the hosted zone * for the public DNS namespace.

*/ inline const SOAChange& GetSOA() const{ return m_sOA; } /** *

Updated fields for the Start of Authority (SOA) record for the hosted zone * for the public DNS namespace.

*/ inline bool SOAHasBeenSet() const { return m_sOAHasBeenSet; } /** *

Updated fields for the Start of Authority (SOA) record for the hosted zone * for the public DNS namespace.

*/ inline void SetSOA(const SOAChange& value) { m_sOAHasBeenSet = true; m_sOA = value; } /** *

Updated fields for the Start of Authority (SOA) record for the hosted zone * for the public DNS namespace.

*/ inline void SetSOA(SOAChange&& value) { m_sOAHasBeenSet = true; m_sOA = std::move(value); } /** *

Updated fields for the Start of Authority (SOA) record for the hosted zone * for the public DNS namespace.

*/ inline PublicDnsPropertiesMutableChange& WithSOA(const SOAChange& value) { SetSOA(value); return *this;} /** *

Updated fields for the Start of Authority (SOA) record for the hosted zone * for the public DNS namespace.

*/ inline PublicDnsPropertiesMutableChange& WithSOA(SOAChange&& value) { SetSOA(std::move(value)); return *this;} private: SOAChange m_sOA; bool m_sOAHasBeenSet = false; }; } // namespace Model } // namespace ServiceDiscovery } // namespace Aws