/** * 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 Route53Domains { namespace Model { /** */ class ListPricesRequest : public Route53DomainsRequest { public: AWS_ROUTE53DOMAINS_API ListPricesRequest(); // Service request name is the Operation name which will send this request out, // each operation should has unique request name, so that we can get operation's name from this request. // Note: this is not true for response, multiple operations may have the same response name, // so we can not get operation's name from response. inline virtual const char* GetServiceRequestName() const override { return "ListPrices"; } AWS_ROUTE53DOMAINS_API Aws::String SerializePayload() const override; AWS_ROUTE53DOMAINS_API Aws::Http::HeaderValueCollection GetRequestSpecificHeaders() const override; /** *

The TLD for which you want to receive the pricing information. For example. * .net.

If a Tld value is not provided, a list of * prices for all TLDs supported by Route 53 is returned.

*/ inline const Aws::String& GetTld() const{ return m_tld; } /** *

The TLD for which you want to receive the pricing information. For example. * .net.

If a Tld value is not provided, a list of * prices for all TLDs supported by Route 53 is returned.

*/ inline bool TldHasBeenSet() const { return m_tldHasBeenSet; } /** *

The TLD for which you want to receive the pricing information. For example. * .net.

If a Tld value is not provided, a list of * prices for all TLDs supported by Route 53 is returned.

*/ inline void SetTld(const Aws::String& value) { m_tldHasBeenSet = true; m_tld = value; } /** *

The TLD for which you want to receive the pricing information. For example. * .net.

If a Tld value is not provided, a list of * prices for all TLDs supported by Route 53 is returned.

*/ inline void SetTld(Aws::String&& value) { m_tldHasBeenSet = true; m_tld = std::move(value); } /** *

The TLD for which you want to receive the pricing information. For example. * .net.

If a Tld value is not provided, a list of * prices for all TLDs supported by Route 53 is returned.

*/ inline void SetTld(const char* value) { m_tldHasBeenSet = true; m_tld.assign(value); } /** *

The TLD for which you want to receive the pricing information. For example. * .net.

If a Tld value is not provided, a list of * prices for all TLDs supported by Route 53 is returned.

*/ inline ListPricesRequest& WithTld(const Aws::String& value) { SetTld(value); return *this;} /** *

The TLD for which you want to receive the pricing information. For example. * .net.

If a Tld value is not provided, a list of * prices for all TLDs supported by Route 53 is returned.

*/ inline ListPricesRequest& WithTld(Aws::String&& value) { SetTld(std::move(value)); return *this;} /** *

The TLD for which you want to receive the pricing information. For example. * .net.

If a Tld value is not provided, a list of * prices for all TLDs supported by Route 53 is returned.

*/ inline ListPricesRequest& WithTld(const char* value) { SetTld(value); return *this;} /** *

For an initial request for a list of prices, omit this element. If the number * of prices that are not yet complete is greater than the value that you specified * for MaxItems, you can use Marker to return additional * prices. Get the value of NextPageMarker from the previous response, * and submit another request that includes the value of * NextPageMarker in the Marker element.

Used * only for all TLDs. If you specify a TLD, don't specify a * Marker.

*/ inline const Aws::String& GetMarker() const{ return m_marker; } /** *

For an initial request for a list of prices, omit this element. If the number * of prices that are not yet complete is greater than the value that you specified * for MaxItems, you can use Marker to return additional * prices. Get the value of NextPageMarker from the previous response, * and submit another request that includes the value of * NextPageMarker in the Marker element.

Used * only for all TLDs. If you specify a TLD, don't specify a * Marker.

*/ inline bool MarkerHasBeenSet() const { return m_markerHasBeenSet; } /** *

For an initial request for a list of prices, omit this element. If the number * of prices that are not yet complete is greater than the value that you specified * for MaxItems, you can use Marker to return additional * prices. Get the value of NextPageMarker from the previous response, * and submit another request that includes the value of * NextPageMarker in the Marker element.

Used * only for all TLDs. If you specify a TLD, don't specify a * Marker.

*/ inline void SetMarker(const Aws::String& value) { m_markerHasBeenSet = true; m_marker = value; } /** *

For an initial request for a list of prices, omit this element. If the number * of prices that are not yet complete is greater than the value that you specified * for MaxItems, you can use Marker to return additional * prices. Get the value of NextPageMarker from the previous response, * and submit another request that includes the value of * NextPageMarker in the Marker element.

Used * only for all TLDs. If you specify a TLD, don't specify a * Marker.

*/ inline void SetMarker(Aws::String&& value) { m_markerHasBeenSet = true; m_marker = std::move(value); } /** *

For an initial request for a list of prices, omit this element. If the number * of prices that are not yet complete is greater than the value that you specified * for MaxItems, you can use Marker to return additional * prices. Get the value of NextPageMarker from the previous response, * and submit another request that includes the value of * NextPageMarker in the Marker element.

Used * only for all TLDs. If you specify a TLD, don't specify a * Marker.

*/ inline void SetMarker(const char* value) { m_markerHasBeenSet = true; m_marker.assign(value); } /** *

For an initial request for a list of prices, omit this element. If the number * of prices that are not yet complete is greater than the value that you specified * for MaxItems, you can use Marker to return additional * prices. Get the value of NextPageMarker from the previous response, * and submit another request that includes the value of * NextPageMarker in the Marker element.

Used * only for all TLDs. If you specify a TLD, don't specify a * Marker.

*/ inline ListPricesRequest& WithMarker(const Aws::String& value) { SetMarker(value); return *this;} /** *

For an initial request for a list of prices, omit this element. If the number * of prices that are not yet complete is greater than the value that you specified * for MaxItems, you can use Marker to return additional * prices. Get the value of NextPageMarker from the previous response, * and submit another request that includes the value of * NextPageMarker in the Marker element.

Used * only for all TLDs. If you specify a TLD, don't specify a * Marker.

*/ inline ListPricesRequest& WithMarker(Aws::String&& value) { SetMarker(std::move(value)); return *this;} /** *

For an initial request for a list of prices, omit this element. If the number * of prices that are not yet complete is greater than the value that you specified * for MaxItems, you can use Marker to return additional * prices. Get the value of NextPageMarker from the previous response, * and submit another request that includes the value of * NextPageMarker in the Marker element.

Used * only for all TLDs. If you specify a TLD, don't specify a * Marker.

*/ inline ListPricesRequest& WithMarker(const char* value) { SetMarker(value); return *this;} /** *

Number of Prices to be returned.

Used only for all TLDs. * If you specify a TLD, don't specify a MaxItems.

*/ inline int GetMaxItems() const{ return m_maxItems; } /** *

Number of Prices to be returned.

Used only for all TLDs. * If you specify a TLD, don't specify a MaxItems.

*/ inline bool MaxItemsHasBeenSet() const { return m_maxItemsHasBeenSet; } /** *

Number of Prices to be returned.

Used only for all TLDs. * If you specify a TLD, don't specify a MaxItems.

*/ inline void SetMaxItems(int value) { m_maxItemsHasBeenSet = true; m_maxItems = value; } /** *

Number of Prices to be returned.

Used only for all TLDs. * If you specify a TLD, don't specify a MaxItems.

*/ inline ListPricesRequest& WithMaxItems(int value) { SetMaxItems(value); return *this;} private: Aws::String m_tld; bool m_tldHasBeenSet = false; Aws::String m_marker; bool m_markerHasBeenSet = false; int m_maxItems; bool m_maxItemsHasBeenSet = false; }; } // namespace Model } // namespace Route53Domains } // namespace Aws