/** * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. * SPDX-License-Identifier: Apache-2.0. */ #pragma once #include #include #include #include #include namespace Aws { namespace Lightsail { namespace Model { /** */ class GetCostEstimateRequest : public LightsailRequest { public: AWS_LIGHTSAIL_API GetCostEstimateRequest(); // 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 "GetCostEstimate"; } AWS_LIGHTSAIL_API Aws::String SerializePayload() const override; AWS_LIGHTSAIL_API Aws::Http::HeaderValueCollection GetRequestSpecificHeaders() const override; /** *

The resource name.

*/ inline const Aws::String& GetResourceName() const{ return m_resourceName; } /** *

The resource name.

*/ inline bool ResourceNameHasBeenSet() const { return m_resourceNameHasBeenSet; } /** *

The resource name.

*/ inline void SetResourceName(const Aws::String& value) { m_resourceNameHasBeenSet = true; m_resourceName = value; } /** *

The resource name.

*/ inline void SetResourceName(Aws::String&& value) { m_resourceNameHasBeenSet = true; m_resourceName = std::move(value); } /** *

The resource name.

*/ inline void SetResourceName(const char* value) { m_resourceNameHasBeenSet = true; m_resourceName.assign(value); } /** *

The resource name.

*/ inline GetCostEstimateRequest& WithResourceName(const Aws::String& value) { SetResourceName(value); return *this;} /** *

The resource name.

*/ inline GetCostEstimateRequest& WithResourceName(Aws::String&& value) { SetResourceName(std::move(value)); return *this;} /** *

The resource name.

*/ inline GetCostEstimateRequest& WithResourceName(const char* value) { SetResourceName(value); return *this;} /** *

The cost estimate start time.

Constraints:

  • Specified * in Coordinated Universal Time (UTC).

  • Specified in the Unix * time format.

    For example, if you want to use a start time of October 1, * 2018, at 8 PM UTC, specify 1538424000 as the start time.

  • *

You can convert a human-friendly time to Unix time format using a * converter like Epoch * converter.

*/ inline const Aws::Utils::DateTime& GetStartTime() const{ return m_startTime; } /** *

The cost estimate start time.

Constraints:

  • Specified * in Coordinated Universal Time (UTC).

  • Specified in the Unix * time format.

    For example, if you want to use a start time of October 1, * 2018, at 8 PM UTC, specify 1538424000 as the start time.

  • *

You can convert a human-friendly time to Unix time format using a * converter like Epoch * converter.

*/ inline bool StartTimeHasBeenSet() const { return m_startTimeHasBeenSet; } /** *

The cost estimate start time.

Constraints:

  • Specified * in Coordinated Universal Time (UTC).

  • Specified in the Unix * time format.

    For example, if you want to use a start time of October 1, * 2018, at 8 PM UTC, specify 1538424000 as the start time.

  • *

You can convert a human-friendly time to Unix time format using a * converter like Epoch * converter.

*/ inline void SetStartTime(const Aws::Utils::DateTime& value) { m_startTimeHasBeenSet = true; m_startTime = value; } /** *

The cost estimate start time.

Constraints:

  • Specified * in Coordinated Universal Time (UTC).

  • Specified in the Unix * time format.

    For example, if you want to use a start time of October 1, * 2018, at 8 PM UTC, specify 1538424000 as the start time.

  • *

You can convert a human-friendly time to Unix time format using a * converter like Epoch * converter.

*/ inline void SetStartTime(Aws::Utils::DateTime&& value) { m_startTimeHasBeenSet = true; m_startTime = std::move(value); } /** *

The cost estimate start time.

Constraints:

  • Specified * in Coordinated Universal Time (UTC).

  • Specified in the Unix * time format.

    For example, if you want to use a start time of October 1, * 2018, at 8 PM UTC, specify 1538424000 as the start time.

  • *

You can convert a human-friendly time to Unix time format using a * converter like Epoch * converter.

*/ inline GetCostEstimateRequest& WithStartTime(const Aws::Utils::DateTime& value) { SetStartTime(value); return *this;} /** *

The cost estimate start time.

Constraints:

  • Specified * in Coordinated Universal Time (UTC).

  • Specified in the Unix * time format.

    For example, if you want to use a start time of October 1, * 2018, at 8 PM UTC, specify 1538424000 as the start time.

  • *

You can convert a human-friendly time to Unix time format using a * converter like Epoch * converter.

*/ inline GetCostEstimateRequest& WithStartTime(Aws::Utils::DateTime&& value) { SetStartTime(std::move(value)); return *this;} /** *

The cost estimate end time.

Constraints:

  • Specified in * Coordinated Universal Time (UTC).

  • Specified in the Unix time * format.

    For example, if you want to use an end time of October 1, 2018, * at 9 PM UTC, specify 1538427600 as the end time.

*

You can convert a human-friendly time to Unix time format using a converter * like Epoch converter.

*/ inline const Aws::Utils::DateTime& GetEndTime() const{ return m_endTime; } /** *

The cost estimate end time.

Constraints:

  • Specified in * Coordinated Universal Time (UTC).

  • Specified in the Unix time * format.

    For example, if you want to use an end time of October 1, 2018, * at 9 PM UTC, specify 1538427600 as the end time.

*

You can convert a human-friendly time to Unix time format using a converter * like Epoch converter.

*/ inline bool EndTimeHasBeenSet() const { return m_endTimeHasBeenSet; } /** *

The cost estimate end time.

Constraints:

  • Specified in * Coordinated Universal Time (UTC).

  • Specified in the Unix time * format.

    For example, if you want to use an end time of October 1, 2018, * at 9 PM UTC, specify 1538427600 as the end time.

*

You can convert a human-friendly time to Unix time format using a converter * like Epoch converter.

*/ inline void SetEndTime(const Aws::Utils::DateTime& value) { m_endTimeHasBeenSet = true; m_endTime = value; } /** *

The cost estimate end time.

Constraints:

  • Specified in * Coordinated Universal Time (UTC).

  • Specified in the Unix time * format.

    For example, if you want to use an end time of October 1, 2018, * at 9 PM UTC, specify 1538427600 as the end time.

*

You can convert a human-friendly time to Unix time format using a converter * like Epoch converter.

*/ inline void SetEndTime(Aws::Utils::DateTime&& value) { m_endTimeHasBeenSet = true; m_endTime = std::move(value); } /** *

The cost estimate end time.

Constraints:

  • Specified in * Coordinated Universal Time (UTC).

  • Specified in the Unix time * format.

    For example, if you want to use an end time of October 1, 2018, * at 9 PM UTC, specify 1538427600 as the end time.

*

You can convert a human-friendly time to Unix time format using a converter * like Epoch converter.

*/ inline GetCostEstimateRequest& WithEndTime(const Aws::Utils::DateTime& value) { SetEndTime(value); return *this;} /** *

The cost estimate end time.

Constraints:

  • Specified in * Coordinated Universal Time (UTC).

  • Specified in the Unix time * format.

    For example, if you want to use an end time of October 1, 2018, * at 9 PM UTC, specify 1538427600 as the end time.

*

You can convert a human-friendly time to Unix time format using a converter * like Epoch converter.

*/ inline GetCostEstimateRequest& WithEndTime(Aws::Utils::DateTime&& value) { SetEndTime(std::move(value)); return *this;} private: Aws::String m_resourceName; bool m_resourceNameHasBeenSet = false; Aws::Utils::DateTime m_startTime; bool m_startTimeHasBeenSet = false; Aws::Utils::DateTime m_endTime; bool m_endTimeHasBeenSet = false; }; } // namespace Model } // namespace Lightsail } // namespace Aws