AWS SDK for C++

AWS SDK for C++ Version 1.11.606

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 InstanceType GetInstanceType() const { return m_instanceType; }
67 inline bool InstanceTypeHasBeenSet() const { return m_instanceTypeHasBeenSet; }
68 inline void SetInstanceType(InstanceType value) { m_instanceTypeHasBeenSet = true; m_instanceType = value; }
69 inline SpotPrice& WithInstanceType(InstanceType value) { SetInstanceType(value); return *this;}
71
73
76 inline RIProductDescription GetProductDescription() const { return m_productDescription; }
77 inline bool ProductDescriptionHasBeenSet() const { return m_productDescriptionHasBeenSet; }
78 inline void SetProductDescription(RIProductDescription value) { m_productDescriptionHasBeenSet = true; m_productDescription = value; }
81
83
91 inline const Aws::String& GetSpotPrice() const { return m_spotPrice; }
92 inline bool SpotPriceHasBeenSet() const { return m_spotPriceHasBeenSet; }
93 template<typename SpotPriceT = Aws::String>
94 void SetSpotPrice(SpotPriceT&& value) { m_spotPriceHasBeenSet = true; m_spotPrice = std::forward<SpotPriceT>(value); }
95 template<typename SpotPriceT = Aws::String>
96 SpotPrice& WithSpotPrice(SpotPriceT&& value) { SetSpotPrice(std::forward<SpotPriceT>(value)); return *this;}
98
100
104 inline const Aws::Utils::DateTime& GetTimestamp() const { return m_timestamp; }
105 inline bool TimestampHasBeenSet() const { return m_timestampHasBeenSet; }
106 template<typename TimestampT = Aws::Utils::DateTime>
107 void SetTimestamp(TimestampT&& value) { m_timestampHasBeenSet = true; m_timestamp = std::forward<TimestampT>(value); }
108 template<typename TimestampT = Aws::Utils::DateTime>
109 SpotPrice& WithTimestamp(TimestampT&& value) { SetTimestamp(std::forward<TimestampT>(value)); return *this;}
111 private:
112
113 Aws::String m_availabilityZone;
114 bool m_availabilityZoneHasBeenSet = false;
115
116 InstanceType m_instanceType{InstanceType::NOT_SET};
117 bool m_instanceTypeHasBeenSet = false;
118
120 bool m_productDescriptionHasBeenSet = false;
121
122 Aws::String m_spotPrice;
123 bool m_spotPriceHasBeenSet = false;
124
125 Aws::Utils::DateTime m_timestamp{};
126 bool m_timestampHasBeenSet = false;
127 };
128
129} // namespace Model
130} // namespace EC2
131} // namespace Aws
void SetInstanceType(InstanceType value)
Definition SpotPrice.h:68
const Aws::String & GetAvailabilityZone() const
Definition SpotPrice.h:54
bool ProductDescriptionHasBeenSet() const
Definition SpotPrice.h:77
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:92
InstanceType GetInstanceType() const
Definition SpotPrice.h:66
bool InstanceTypeHasBeenSet() const
Definition SpotPrice.h:67
void SetSpotPrice(SpotPriceT &&value)
Definition SpotPrice.h:94
SpotPrice & WithTimestamp(TimestampT &&value)
Definition SpotPrice.h:109
SpotPrice & WithSpotPrice(SpotPriceT &&value)
Definition SpotPrice.h:96
AWS_EC2_API void OutputToStream(Aws::OStream &ostream, const char *location, unsigned index, const char *locationValue) const
void SetProductDescription(RIProductDescription value)
Definition SpotPrice.h:78
const Aws::String & GetSpotPrice() const
Definition SpotPrice.h:91
bool TimestampHasBeenSet() const
Definition SpotPrice.h:105
SpotPrice & WithInstanceType(InstanceType value)
Definition SpotPrice.h:69
SpotPrice & WithProductDescription(RIProductDescription value)
Definition SpotPrice.h:79
RIProductDescription GetProductDescription() const
Definition SpotPrice.h:76
void SetTimestamp(TimestampT &&value)
Definition SpotPrice.h:107
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
const Aws::Utils::DateTime & GetTimestamp() const
Definition SpotPrice.h:104
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
std::basic_ostream< char, std::char_traits< char > > OStream