AWS SDK for C++

AWS SDK for C++ Version 1.11.634

Loading...
Searching...
No Matches
SpotPrice.h
1
6#pragma once
7#include <aws/ec2/EC2_EXPORTS.h>
8#include <aws/core/utils/memory/stl/AWSStreamFwd.h>
9#include <aws/core/utils/memory/stl/AWSString.h>
10#include <aws/ec2/model/InstanceType.h>
11#include <aws/ec2/model/RIProductDescription.h>
12#include <aws/core/utils/DateTime.h>
13#include <utility>
14
15namespace Aws
16{
17namespace Utils
18{
19namespace Xml
20{
21 class XmlNode;
22} // namespace Xml
23} // namespace Utils
24namespace EC2
25{
26namespace Model
27{
28
40 {
41 public:
42 AWS_EC2_API SpotPrice() = default;
43 AWS_EC2_API SpotPrice(const Aws::Utils::Xml::XmlNode& xmlNode);
44 AWS_EC2_API SpotPrice& operator=(const Aws::Utils::Xml::XmlNode& xmlNode);
45
46 AWS_EC2_API void OutputToStream(Aws::OStream& ostream, const char* location, unsigned index, const char* locationValue) const;
47 AWS_EC2_API void OutputToStream(Aws::OStream& oStream, const char* location) const;
48
49
51
54 inline const Aws::String& GetAvailabilityZone() const { return m_availabilityZone; }
55 inline bool AvailabilityZoneHasBeenSet() const { return m_availabilityZoneHasBeenSet; }
56 template<typename AvailabilityZoneT = Aws::String>
57 void SetAvailabilityZone(AvailabilityZoneT&& value) { m_availabilityZoneHasBeenSet = true; m_availabilityZone = std::forward<AvailabilityZoneT>(value); }
58 template<typename AvailabilityZoneT = Aws::String>
59 SpotPrice& WithAvailabilityZone(AvailabilityZoneT&& value) { SetAvailabilityZone(std::forward<AvailabilityZoneT>(value)); return *this;}
61
63
66 inline const Aws::String& GetAvailabilityZoneId() const { return m_availabilityZoneId; }
67 inline bool AvailabilityZoneIdHasBeenSet() const { return m_availabilityZoneIdHasBeenSet; }
68 template<typename AvailabilityZoneIdT = Aws::String>
69 void SetAvailabilityZoneId(AvailabilityZoneIdT&& value) { m_availabilityZoneIdHasBeenSet = true; m_availabilityZoneId = std::forward<AvailabilityZoneIdT>(value); }
70 template<typename AvailabilityZoneIdT = Aws::String>
71 SpotPrice& WithAvailabilityZoneId(AvailabilityZoneIdT&& value) { SetAvailabilityZoneId(std::forward<AvailabilityZoneIdT>(value)); return *this;}
73
75
78 inline InstanceType GetInstanceType() const { return m_instanceType; }
79 inline bool InstanceTypeHasBeenSet() const { return m_instanceTypeHasBeenSet; }
80 inline void SetInstanceType(InstanceType value) { m_instanceTypeHasBeenSet = true; m_instanceType = value; }
81 inline SpotPrice& WithInstanceType(InstanceType value) { SetInstanceType(value); return *this;}
83
85
88 inline RIProductDescription GetProductDescription() const { return m_productDescription; }
89 inline bool ProductDescriptionHasBeenSet() const { return m_productDescriptionHasBeenSet; }
90 inline void SetProductDescription(RIProductDescription value) { m_productDescriptionHasBeenSet = true; m_productDescription = value; }
93
95
103 inline const Aws::String& GetSpotPrice() const { return m_spotPrice; }
104 inline bool SpotPriceHasBeenSet() const { return m_spotPriceHasBeenSet; }
105 template<typename SpotPriceT = Aws::String>
106 void SetSpotPrice(SpotPriceT&& value) { m_spotPriceHasBeenSet = true; m_spotPrice = std::forward<SpotPriceT>(value); }
107 template<typename SpotPriceT = Aws::String>
108 SpotPrice& WithSpotPrice(SpotPriceT&& value) { SetSpotPrice(std::forward<SpotPriceT>(value)); return *this;}
110
112
116 inline const Aws::Utils::DateTime& GetTimestamp() const { return m_timestamp; }
117 inline bool TimestampHasBeenSet() const { return m_timestampHasBeenSet; }
118 template<typename TimestampT = Aws::Utils::DateTime>
119 void SetTimestamp(TimestampT&& value) { m_timestampHasBeenSet = true; m_timestamp = std::forward<TimestampT>(value); }
120 template<typename TimestampT = Aws::Utils::DateTime>
121 SpotPrice& WithTimestamp(TimestampT&& value) { SetTimestamp(std::forward<TimestampT>(value)); return *this;}
123 private:
124
125 Aws::String m_availabilityZone;
126 bool m_availabilityZoneHasBeenSet = false;
127
128 Aws::String m_availabilityZoneId;
129 bool m_availabilityZoneIdHasBeenSet = false;
130
131 InstanceType m_instanceType{InstanceType::NOT_SET};
132 bool m_instanceTypeHasBeenSet = false;
133
135 bool m_productDescriptionHasBeenSet = false;
136
137 Aws::String m_spotPrice;
138 bool m_spotPriceHasBeenSet = false;
139
140 Aws::Utils::DateTime m_timestamp{};
141 bool m_timestampHasBeenSet = false;
142 };
143
144} // namespace Model
145} // namespace EC2
146} // namespace Aws
void SetInstanceType(InstanceType value)
Definition SpotPrice.h:80
const Aws::String & GetAvailabilityZone() const
Definition SpotPrice.h:54
bool ProductDescriptionHasBeenSet() const
Definition SpotPrice.h:89
void SetAvailabilityZone(AvailabilityZoneT &&value)
Definition SpotPrice.h:57
AWS_EC2_API SpotPrice(const Aws::Utils::Xml::XmlNode &xmlNode)
bool AvailabilityZoneHasBeenSet() const
Definition SpotPrice.h:55
AWS_EC2_API SpotPrice & operator=(const Aws::Utils::Xml::XmlNode &xmlNode)
bool SpotPriceHasBeenSet() const
Definition SpotPrice.h:104
InstanceType GetInstanceType() const
Definition SpotPrice.h:78
bool InstanceTypeHasBeenSet() const
Definition SpotPrice.h:79
void SetSpotPrice(SpotPriceT &&value)
Definition SpotPrice.h:106
SpotPrice & WithTimestamp(TimestampT &&value)
Definition SpotPrice.h:121
const Aws::String & GetAvailabilityZoneId() const
Definition SpotPrice.h:66
SpotPrice & WithSpotPrice(SpotPriceT &&value)
Definition SpotPrice.h:108
AWS_EC2_API void OutputToStream(Aws::OStream &ostream, const char *location, unsigned index, const char *locationValue) const
SpotPrice & WithAvailabilityZoneId(AvailabilityZoneIdT &&value)
Definition SpotPrice.h:71
void SetProductDescription(RIProductDescription value)
Definition SpotPrice.h:90
void SetAvailabilityZoneId(AvailabilityZoneIdT &&value)
Definition SpotPrice.h:69
const Aws::String & GetSpotPrice() const
Definition SpotPrice.h:103
bool TimestampHasBeenSet() const
Definition SpotPrice.h:117
SpotPrice & WithInstanceType(InstanceType value)
Definition SpotPrice.h:81
SpotPrice & WithProductDescription(RIProductDescription value)
Definition SpotPrice.h:91
RIProductDescription GetProductDescription() const
Definition SpotPrice.h:88
void SetTimestamp(TimestampT &&value)
Definition SpotPrice.h:119
SpotPrice & WithAvailabilityZone(AvailabilityZoneT &&value)
Definition SpotPrice.h:59
AWS_EC2_API void OutputToStream(Aws::OStream &oStream, const char *location) const
AWS_EC2_API SpotPrice()=default
bool AvailabilityZoneIdHasBeenSet() const
Definition SpotPrice.h:67
const Aws::Utils::DateTime & GetTimestamp() const
Definition SpotPrice.h:116
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
std::basic_ostream< char, std::char_traits< char > > OStream