7#include <aws/ec2/EC2_EXPORTS.h>
8#include <aws/ec2/EC2Request.h>
9#include <aws/ec2/model/RequestSpotLaunchSpecification.h>
10#include <aws/core/utils/memory/stl/AWSVector.h>
11#include <aws/ec2/model/InstanceInterruptionBehavior.h>
12#include <aws/core/utils/memory/stl/AWSString.h>
13#include <aws/ec2/model/SpotInstanceType.h>
14#include <aws/core/utils/DateTime.h>
15#include <aws/ec2/model/TagSpecification.h>
102 inline void SetDryRun(
bool value) { m_dryRunHasBeenSet =
true; m_dryRun = value; }
119 inline void SetSpotPrice(
const char* value) { m_spotPriceHasBeenSet =
true; m_spotPrice.assign(value); }
137 inline void SetClientToken(
const char* value) { m_clientTokenHasBeenSet =
true; m_clientToken.assign(value); }
149 inline void SetInstanceCount(
int value) { m_instanceCountHasBeenSet =
true; m_instanceCount = value; }
212 inline void SetLaunchGroup(
const char* value) { m_launchGroupHasBeenSet =
true; m_launchGroup.assign(value); }
241 inline void SetAvailabilityZoneGroup(
const char* value) { m_availabilityZoneGroupHasBeenSet =
true; m_availabilityZoneGroup.assign(value); }
259 bool m_launchSpecificationHasBeenSet =
false;
262 bool m_tagSpecificationsHasBeenSet =
false;
265 bool m_instanceInterruptionBehaviorHasBeenSet =
false;
268 bool m_dryRunHasBeenSet =
false;
271 bool m_spotPriceHasBeenSet =
false;
274 bool m_clientTokenHasBeenSet =
false;
277 bool m_instanceCountHasBeenSet =
false;
280 bool m_typeHasBeenSet =
false;
283 bool m_validFromHasBeenSet =
false;
286 bool m_validUntilHasBeenSet =
false;
289 bool m_launchGroupHasBeenSet =
false;
292 bool m_availabilityZoneGroupHasBeenSet =
false;
294 int m_blockDurationMinutes;
295 bool m_blockDurationMinutesHasBeenSet =
false;
const InstanceInterruptionBehavior & GetInstanceInterruptionBehavior() const
RequestSpotInstancesRequest & WithValidFrom(Aws::Utils::DateTime &&value)
bool LaunchGroupHasBeenSet() const
void SetLaunchGroup(Aws::String &&value)
void SetAvailabilityZoneGroup(const char *value)
void SetValidFrom(Aws::Utils::DateTime &&value)
bool ValidFromHasBeenSet() const
void SetValidUntil(Aws::Utils::DateTime &&value)
bool DryRunHasBeenSet() const
const Aws::String & GetClientToken() const
RequestSpotInstancesRequest & WithValidFrom(const Aws::Utils::DateTime &value)
RequestSpotInstancesRequest & WithAvailabilityZoneGroup(Aws::String &&value)
virtual const char * GetServiceRequestName() const override
bool LaunchSpecificationHasBeenSet() const
const Aws::String & GetAvailabilityZoneGroup() const
bool ValidUntilHasBeenSet() const
const SpotInstanceType & GetType() const
const Aws::Utils::DateTime & GetValidFrom() const
void SetInstanceCount(int value)
RequestSpotInstancesRequest & WithInstanceInterruptionBehavior(InstanceInterruptionBehavior &&value)
void SetTagSpecifications(Aws::Vector< TagSpecification > &&value)
void SetType(const SpotInstanceType &value)
RequestSpotInstancesRequest & WithSpotPrice(Aws::String &&value)
void SetValidUntil(const Aws::Utils::DateTime &value)
void SetType(SpotInstanceType &&value)
void SetLaunchGroup(const char *value)
bool SpotPriceHasBeenSet() const
RequestSpotInstancesRequest & WithClientToken(const char *value)
RequestSpotInstancesRequest & WithLaunchSpecification(RequestSpotLaunchSpecification &&value)
RequestSpotInstancesRequest & WithValidUntil(const Aws::Utils::DateTime &value)
RequestSpotInstancesRequest & AddTagSpecifications(TagSpecification &&value)
bool ClientTokenHasBeenSet() const
RequestSpotInstancesRequest & WithClientToken(const Aws::String &value)
bool TagSpecificationsHasBeenSet() const
int GetInstanceCount() const
bool AvailabilityZoneGroupHasBeenSet() const
RequestSpotInstancesRequest & WithType(const SpotInstanceType &value)
RequestSpotInstancesRequest & WithLaunchGroup(const Aws::String &value)
RequestSpotInstancesRequest & WithLaunchGroup(Aws::String &&value)
void SetInstanceInterruptionBehavior(const InstanceInterruptionBehavior &value)
AWS_EC2_API Aws::String SerializePayload() const override
RequestSpotInstancesRequest & WithAvailabilityZoneGroup(const char *value)
RequestSpotInstancesRequest & WithSpotPrice(const char *value)
RequestSpotInstancesRequest & WithInstanceCount(int value)
void SetSpotPrice(const Aws::String &value)
RequestSpotInstancesRequest & WithLaunchSpecification(const RequestSpotLaunchSpecification &value)
bool BlockDurationMinutesHasBeenSet() const
const RequestSpotLaunchSpecification & GetLaunchSpecification() const
void SetLaunchSpecification(const RequestSpotLaunchSpecification &value)
void SetDryRun(bool value)
void SetSpotPrice(const char *value)
RequestSpotInstancesRequest & WithTagSpecifications(Aws::Vector< TagSpecification > &&value)
RequestSpotInstancesRequest & WithInstanceInterruptionBehavior(const InstanceInterruptionBehavior &value)
RequestSpotInstancesRequest & WithAvailabilityZoneGroup(const Aws::String &value)
RequestSpotInstancesRequest & WithDryRun(bool value)
bool InstanceInterruptionBehaviorHasBeenSet() const
void SetAvailabilityZoneGroup(Aws::String &&value)
void SetClientToken(const Aws::String &value)
RequestSpotInstancesRequest & WithBlockDurationMinutes(int value)
RequestSpotInstancesRequest & WithLaunchGroup(const char *value)
RequestSpotInstancesRequest & WithTagSpecifications(const Aws::Vector< TagSpecification > &value)
const Aws::Vector< TagSpecification > & GetTagSpecifications() const
const Aws::Utils::DateTime & GetValidUntil() const
void SetAvailabilityZoneGroup(const Aws::String &value)
int GetBlockDurationMinutes() const
void SetTagSpecifications(const Aws::Vector< TagSpecification > &value)
void SetSpotPrice(Aws::String &&value)
RequestSpotInstancesRequest & WithClientToken(Aws::String &&value)
RequestSpotInstancesRequest & AddTagSpecifications(const TagSpecification &value)
void SetLaunchSpecification(RequestSpotLaunchSpecification &&value)
void SetClientToken(const char *value)
void SetClientToken(Aws::String &&value)
void SetLaunchGroup(const Aws::String &value)
void SetBlockDurationMinutes(int value)
void SetValidFrom(const Aws::Utils::DateTime &value)
const Aws::String & GetLaunchGroup() const
bool TypeHasBeenSet() const
RequestSpotInstancesRequest & WithType(SpotInstanceType &&value)
AWS_EC2_API RequestSpotInstancesRequest()
const Aws::String & GetSpotPrice() const
void SetInstanceInterruptionBehavior(InstanceInterruptionBehavior &&value)
RequestSpotInstancesRequest & WithSpotPrice(const Aws::String &value)
bool InstanceCountHasBeenSet() const
RequestSpotInstancesRequest & WithValidUntil(Aws::Utils::DateTime &&value)
AWS_EC2_API void DumpBodyToUrl(Aws::Http::URI &uri) const override
InstanceInterruptionBehavior
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
std::vector< T, Aws::Allocator< T > > Vector