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

The information for each resource record set that you want to * change.

See Also:

AWS API * Reference

*/ class Change { public: AWS_ROUTE53_API Change(); AWS_ROUTE53_API Change(const Aws::Utils::Xml::XmlNode& xmlNode); AWS_ROUTE53_API Change& operator=(const Aws::Utils::Xml::XmlNode& xmlNode); AWS_ROUTE53_API void AddToNode(Aws::Utils::Xml::XmlNode& parentNode) const; /** *

The action to perform:

  • CREATE: Creates a * resource record set that has the specified values.

  • * DELETE: Deletes a existing resource record set.

    *

    To delete the resource record set that is associated with a traffic policy * instance, use DeleteTrafficPolicyInstance. * Amazon Route 53 will delete the resource record set automatically. If you delete * the resource record set by using ChangeResourceRecordSets, Route 53 * doesn't automatically delete the traffic policy instance, and you'll continue to * be charged for it even though it's no longer in use.

  • *
  • UPSERT: If a resource record set doesn't already exist, * Route 53 creates it. If a resource record set does exist, Route 53 updates it * with the values in the request.

*/ inline const ChangeAction& GetAction() const{ return m_action; } /** *

The action to perform:

  • CREATE: Creates a * resource record set that has the specified values.

  • * DELETE: Deletes a existing resource record set.

    *

    To delete the resource record set that is associated with a traffic policy * instance, use DeleteTrafficPolicyInstance. * Amazon Route 53 will delete the resource record set automatically. If you delete * the resource record set by using ChangeResourceRecordSets, Route 53 * doesn't automatically delete the traffic policy instance, and you'll continue to * be charged for it even though it's no longer in use.

  • *
  • UPSERT: If a resource record set doesn't already exist, * Route 53 creates it. If a resource record set does exist, Route 53 updates it * with the values in the request.

*/ inline bool ActionHasBeenSet() const { return m_actionHasBeenSet; } /** *

The action to perform:

  • CREATE: Creates a * resource record set that has the specified values.

  • * DELETE: Deletes a existing resource record set.

    *

    To delete the resource record set that is associated with a traffic policy * instance, use DeleteTrafficPolicyInstance. * Amazon Route 53 will delete the resource record set automatically. If you delete * the resource record set by using ChangeResourceRecordSets, Route 53 * doesn't automatically delete the traffic policy instance, and you'll continue to * be charged for it even though it's no longer in use.

  • *
  • UPSERT: If a resource record set doesn't already exist, * Route 53 creates it. If a resource record set does exist, Route 53 updates it * with the values in the request.

*/ inline void SetAction(const ChangeAction& value) { m_actionHasBeenSet = true; m_action = value; } /** *

The action to perform:

  • CREATE: Creates a * resource record set that has the specified values.

  • * DELETE: Deletes a existing resource record set.

    *

    To delete the resource record set that is associated with a traffic policy * instance, use DeleteTrafficPolicyInstance. * Amazon Route 53 will delete the resource record set automatically. If you delete * the resource record set by using ChangeResourceRecordSets, Route 53 * doesn't automatically delete the traffic policy instance, and you'll continue to * be charged for it even though it's no longer in use.

  • *
  • UPSERT: If a resource record set doesn't already exist, * Route 53 creates it. If a resource record set does exist, Route 53 updates it * with the values in the request.

*/ inline void SetAction(ChangeAction&& value) { m_actionHasBeenSet = true; m_action = std::move(value); } /** *

The action to perform:

  • CREATE: Creates a * resource record set that has the specified values.

  • * DELETE: Deletes a existing resource record set.

    *

    To delete the resource record set that is associated with a traffic policy * instance, use DeleteTrafficPolicyInstance. * Amazon Route 53 will delete the resource record set automatically. If you delete * the resource record set by using ChangeResourceRecordSets, Route 53 * doesn't automatically delete the traffic policy instance, and you'll continue to * be charged for it even though it's no longer in use.

  • *
  • UPSERT: If a resource record set doesn't already exist, * Route 53 creates it. If a resource record set does exist, Route 53 updates it * with the values in the request.

*/ inline Change& WithAction(const ChangeAction& value) { SetAction(value); return *this;} /** *

The action to perform:

  • CREATE: Creates a * resource record set that has the specified values.

  • * DELETE: Deletes a existing resource record set.

    *

    To delete the resource record set that is associated with a traffic policy * instance, use DeleteTrafficPolicyInstance. * Amazon Route 53 will delete the resource record set automatically. If you delete * the resource record set by using ChangeResourceRecordSets, Route 53 * doesn't automatically delete the traffic policy instance, and you'll continue to * be charged for it even though it's no longer in use.

  • *
  • UPSERT: If a resource record set doesn't already exist, * Route 53 creates it. If a resource record set does exist, Route 53 updates it * with the values in the request.

*/ inline Change& WithAction(ChangeAction&& value) { SetAction(std::move(value)); return *this;} /** *

Information about the resource record set to create, delete, or update.

*/ inline const ResourceRecordSet& GetResourceRecordSet() const{ return m_resourceRecordSet; } /** *

Information about the resource record set to create, delete, or update.

*/ inline bool ResourceRecordSetHasBeenSet() const { return m_resourceRecordSetHasBeenSet; } /** *

Information about the resource record set to create, delete, or update.

*/ inline void SetResourceRecordSet(const ResourceRecordSet& value) { m_resourceRecordSetHasBeenSet = true; m_resourceRecordSet = value; } /** *

Information about the resource record set to create, delete, or update.

*/ inline void SetResourceRecordSet(ResourceRecordSet&& value) { m_resourceRecordSetHasBeenSet = true; m_resourceRecordSet = std::move(value); } /** *

Information about the resource record set to create, delete, or update.

*/ inline Change& WithResourceRecordSet(const ResourceRecordSet& value) { SetResourceRecordSet(value); return *this;} /** *

Information about the resource record set to create, delete, or update.

*/ inline Change& WithResourceRecordSet(ResourceRecordSet&& value) { SetResourceRecordSet(std::move(value)); return *this;} private: ChangeAction m_action; bool m_actionHasBeenSet = false; ResourceRecordSet m_resourceRecordSet; bool m_resourceRecordSetHasBeenSet = false; }; } // namespace Model } // namespace Route53 } // namespace Aws