/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include The options for Spot Instances.See Also:
AWS
* API Reference
The maximum hourly price you're willing to pay for the Spot Instances. We do * not recommend using this parameter because it can lead to increased * interruptions. If you do not specify this parameter, you will pay the current * Spot price.
If you specify a maximum price, your Spot * Instances will be interrupted more frequently than if you do not specify this * parameter.
*/ inline const Aws::String& GetMaxPrice() const{ return m_maxPrice; } /** *The maximum hourly price you're willing to pay for the Spot Instances. We do * not recommend using this parameter because it can lead to increased * interruptions. If you do not specify this parameter, you will pay the current * Spot price.
If you specify a maximum price, your Spot * Instances will be interrupted more frequently than if you do not specify this * parameter.
*/ inline bool MaxPriceHasBeenSet() const { return m_maxPriceHasBeenSet; } /** *The maximum hourly price you're willing to pay for the Spot Instances. We do * not recommend using this parameter because it can lead to increased * interruptions. If you do not specify this parameter, you will pay the current * Spot price.
If you specify a maximum price, your Spot * Instances will be interrupted more frequently than if you do not specify this * parameter.
*/ inline void SetMaxPrice(const Aws::String& value) { m_maxPriceHasBeenSet = true; m_maxPrice = value; } /** *The maximum hourly price you're willing to pay for the Spot Instances. We do * not recommend using this parameter because it can lead to increased * interruptions. If you do not specify this parameter, you will pay the current * Spot price.
If you specify a maximum price, your Spot * Instances will be interrupted more frequently than if you do not specify this * parameter.
*/ inline void SetMaxPrice(Aws::String&& value) { m_maxPriceHasBeenSet = true; m_maxPrice = std::move(value); } /** *The maximum hourly price you're willing to pay for the Spot Instances. We do * not recommend using this parameter because it can lead to increased * interruptions. If you do not specify this parameter, you will pay the current * Spot price.
If you specify a maximum price, your Spot * Instances will be interrupted more frequently than if you do not specify this * parameter.
*/ inline void SetMaxPrice(const char* value) { m_maxPriceHasBeenSet = true; m_maxPrice.assign(value); } /** *The maximum hourly price you're willing to pay for the Spot Instances. We do * not recommend using this parameter because it can lead to increased * interruptions. If you do not specify this parameter, you will pay the current * Spot price.
If you specify a maximum price, your Spot * Instances will be interrupted more frequently than if you do not specify this * parameter.
*/ inline LaunchTemplateSpotMarketOptionsRequest& WithMaxPrice(const Aws::String& value) { SetMaxPrice(value); return *this;} /** *The maximum hourly price you're willing to pay for the Spot Instances. We do * not recommend using this parameter because it can lead to increased * interruptions. If you do not specify this parameter, you will pay the current * Spot price.
If you specify a maximum price, your Spot * Instances will be interrupted more frequently than if you do not specify this * parameter.
*/ inline LaunchTemplateSpotMarketOptionsRequest& WithMaxPrice(Aws::String&& value) { SetMaxPrice(std::move(value)); return *this;} /** *The maximum hourly price you're willing to pay for the Spot Instances. We do * not recommend using this parameter because it can lead to increased * interruptions. If you do not specify this parameter, you will pay the current * Spot price.
If you specify a maximum price, your Spot * Instances will be interrupted more frequently than if you do not specify this * parameter.
*/ inline LaunchTemplateSpotMarketOptionsRequest& WithMaxPrice(const char* value) { SetMaxPrice(value); return *this;} /** *The Spot Instance request type.
*/ inline const SpotInstanceType& GetSpotInstanceType() const{ return m_spotInstanceType; } /** *The Spot Instance request type.
*/ inline bool SpotInstanceTypeHasBeenSet() const { return m_spotInstanceTypeHasBeenSet; } /** *The Spot Instance request type.
*/ inline void SetSpotInstanceType(const SpotInstanceType& value) { m_spotInstanceTypeHasBeenSet = true; m_spotInstanceType = value; } /** *The Spot Instance request type.
*/ inline void SetSpotInstanceType(SpotInstanceType&& value) { m_spotInstanceTypeHasBeenSet = true; m_spotInstanceType = std::move(value); } /** *The Spot Instance request type.
*/ inline LaunchTemplateSpotMarketOptionsRequest& WithSpotInstanceType(const SpotInstanceType& value) { SetSpotInstanceType(value); return *this;} /** *The Spot Instance request type.
*/ inline LaunchTemplateSpotMarketOptionsRequest& WithSpotInstanceType(SpotInstanceType&& value) { SetSpotInstanceType(std::move(value)); return *this;} /** *Deprecated.
*/ inline int GetBlockDurationMinutes() const{ return m_blockDurationMinutes; } /** *Deprecated.
*/ inline bool BlockDurationMinutesHasBeenSet() const { return m_blockDurationMinutesHasBeenSet; } /** *Deprecated.
*/ inline void SetBlockDurationMinutes(int value) { m_blockDurationMinutesHasBeenSet = true; m_blockDurationMinutes = value; } /** *Deprecated.
*/ inline LaunchTemplateSpotMarketOptionsRequest& WithBlockDurationMinutes(int value) { SetBlockDurationMinutes(value); return *this;} /** *The end date of the request, in UTC format * (YYYY-MM-DDTHH:MM:SSZ). Supported only for persistent * requests.
For a persistent request, the request remains active
* until the ValidUntil
date and time is reached. Otherwise, the
* request remains active until you cancel it.
For a one-time
* request, ValidUntil
is not supported. The request remains active
* until all instances launch or you cancel the request.
Default: 7 days from the current date
*/ inline const Aws::Utils::DateTime& GetValidUntil() const{ return m_validUntil; } /** *The end date of the request, in UTC format * (YYYY-MM-DDTHH:MM:SSZ). Supported only for persistent * requests.
For a persistent request, the request remains active
* until the ValidUntil
date and time is reached. Otherwise, the
* request remains active until you cancel it.
For a one-time
* request, ValidUntil
is not supported. The request remains active
* until all instances launch or you cancel the request.
Default: 7 days from the current date
*/ inline bool ValidUntilHasBeenSet() const { return m_validUntilHasBeenSet; } /** *The end date of the request, in UTC format * (YYYY-MM-DDTHH:MM:SSZ). Supported only for persistent * requests.
For a persistent request, the request remains active
* until the ValidUntil
date and time is reached. Otherwise, the
* request remains active until you cancel it.
For a one-time
* request, ValidUntil
is not supported. The request remains active
* until all instances launch or you cancel the request.
Default: 7 days from the current date
*/ inline void SetValidUntil(const Aws::Utils::DateTime& value) { m_validUntilHasBeenSet = true; m_validUntil = value; } /** *The end date of the request, in UTC format * (YYYY-MM-DDTHH:MM:SSZ). Supported only for persistent * requests.
For a persistent request, the request remains active
* until the ValidUntil
date and time is reached. Otherwise, the
* request remains active until you cancel it.
For a one-time
* request, ValidUntil
is not supported. The request remains active
* until all instances launch or you cancel the request.
Default: 7 days from the current date
*/ inline void SetValidUntil(Aws::Utils::DateTime&& value) { m_validUntilHasBeenSet = true; m_validUntil = std::move(value); } /** *The end date of the request, in UTC format * (YYYY-MM-DDTHH:MM:SSZ). Supported only for persistent * requests.
For a persistent request, the request remains active
* until the ValidUntil
date and time is reached. Otherwise, the
* request remains active until you cancel it.
For a one-time
* request, ValidUntil
is not supported. The request remains active
* until all instances launch or you cancel the request.
Default: 7 days from the current date
*/ inline LaunchTemplateSpotMarketOptionsRequest& WithValidUntil(const Aws::Utils::DateTime& value) { SetValidUntil(value); return *this;} /** *The end date of the request, in UTC format * (YYYY-MM-DDTHH:MM:SSZ). Supported only for persistent * requests.
For a persistent request, the request remains active
* until the ValidUntil
date and time is reached. Otherwise, the
* request remains active until you cancel it.
For a one-time
* request, ValidUntil
is not supported. The request remains active
* until all instances launch or you cancel the request.
Default: 7 days from the current date
*/ inline LaunchTemplateSpotMarketOptionsRequest& WithValidUntil(Aws::Utils::DateTime&& value) { SetValidUntil(std::move(value)); return *this;} /** *The behavior when a Spot Instance is interrupted. The default is
* terminate
.
The behavior when a Spot Instance is interrupted. The default is
* terminate
.
The behavior when a Spot Instance is interrupted. The default is
* terminate
.
The behavior when a Spot Instance is interrupted. The default is
* terminate
.
The behavior when a Spot Instance is interrupted. The default is
* terminate
.
The behavior when a Spot Instance is interrupted. The default is
* terminate
.