AWS SDK for C++

AWS SDK for C++ Version 1.11.716

Loading...
Searching...
No Matches
PurchaseHostReservationRequest.h
1
6#pragma once
7#include <aws/core/utils/memory/stl/AWSString.h>
8#include <aws/core/utils/memory/stl/AWSVector.h>
9#include <aws/ec2/EC2Request.h>
10#include <aws/ec2/EC2_EXPORTS.h>
11#include <aws/ec2/model/CurrencyCodeValues.h>
12#include <aws/ec2/model/TagSpecification.h>
13
14#include <utility>
15
16namespace Aws {
17namespace EC2 {
18namespace Model {
19
23 public:
24 AWS_EC2_API PurchaseHostReservationRequest() = default;
25
26 // Service request name is the Operation name which will send this request out,
27 // each operation should has unique request name, so that we can get operation's name from this request.
28 // Note: this is not true for response, multiple operations may have the same response name,
29 // so we can not get operation's name from response.
30 inline virtual const char* GetServiceRequestName() const override { return "PurchaseHostReservation"; }
31
32 AWS_EC2_API Aws::String SerializePayload() const override;
33
34 protected:
35 AWS_EC2_API void DumpBodyToUrl(Aws::Http::URI& uri) const override;
36
37 public:
39
45 inline const Aws::String& GetClientToken() const { return m_clientToken; }
46 inline bool ClientTokenHasBeenSet() const { return m_clientTokenHasBeenSet; }
47 template <typename ClientTokenT = Aws::String>
48 void SetClientToken(ClientTokenT&& value) {
49 m_clientTokenHasBeenSet = true;
50 m_clientToken = std::forward<ClientTokenT>(value);
51 }
52 template <typename ClientTokenT = Aws::String>
54 SetClientToken(std::forward<ClientTokenT>(value));
55 return *this;
56 }
58
60
65 inline CurrencyCodeValues GetCurrencyCode() const { return m_currencyCode; }
66 inline bool CurrencyCodeHasBeenSet() const { return m_currencyCodeHasBeenSet; }
68 m_currencyCodeHasBeenSet = true;
69 m_currencyCode = value;
70 }
72 SetCurrencyCode(value);
73 return *this;
74 }
76
78
82 inline const Aws::Vector<Aws::String>& GetHostIdSet() const { return m_hostIdSet; }
83 inline bool HostIdSetHasBeenSet() const { return m_hostIdSetHasBeenSet; }
84 template <typename HostIdSetT = Aws::Vector<Aws::String>>
85 void SetHostIdSet(HostIdSetT&& value) {
86 m_hostIdSetHasBeenSet = true;
87 m_hostIdSet = std::forward<HostIdSetT>(value);
88 }
89 template <typename HostIdSetT = Aws::Vector<Aws::String>>
91 SetHostIdSet(std::forward<HostIdSetT>(value));
92 return *this;
93 }
94 template <typename HostIdSetT = Aws::String>
96 m_hostIdSetHasBeenSet = true;
97 m_hostIdSet.emplace_back(std::forward<HostIdSetT>(value));
98 return *this;
99 }
101
103
112 inline const Aws::String& GetLimitPrice() const { return m_limitPrice; }
113 inline bool LimitPriceHasBeenSet() const { return m_limitPriceHasBeenSet; }
114 template <typename LimitPriceT = Aws::String>
115 void SetLimitPrice(LimitPriceT&& value) {
116 m_limitPriceHasBeenSet = true;
117 m_limitPrice = std::forward<LimitPriceT>(value);
118 }
119 template <typename LimitPriceT = Aws::String>
121 SetLimitPrice(std::forward<LimitPriceT>(value));
122 return *this;
123 }
125
127
130 inline const Aws::String& GetOfferingId() const { return m_offeringId; }
131 inline bool OfferingIdHasBeenSet() const { return m_offeringIdHasBeenSet; }
132 template <typename OfferingIdT = Aws::String>
133 void SetOfferingId(OfferingIdT&& value) {
134 m_offeringIdHasBeenSet = true;
135 m_offeringId = std::forward<OfferingIdT>(value);
136 }
137 template <typename OfferingIdT = Aws::String>
139 SetOfferingId(std::forward<OfferingIdT>(value));
140 return *this;
141 }
143
145
148 inline const Aws::Vector<TagSpecification>& GetTagSpecifications() const { return m_tagSpecifications; }
149 inline bool TagSpecificationsHasBeenSet() const { return m_tagSpecificationsHasBeenSet; }
150 template <typename TagSpecificationsT = Aws::Vector<TagSpecification>>
151 void SetTagSpecifications(TagSpecificationsT&& value) {
152 m_tagSpecificationsHasBeenSet = true;
153 m_tagSpecifications = std::forward<TagSpecificationsT>(value);
154 }
155 template <typename TagSpecificationsT = Aws::Vector<TagSpecification>>
157 SetTagSpecifications(std::forward<TagSpecificationsT>(value));
158 return *this;
159 }
160 template <typename TagSpecificationsT = TagSpecification>
162 m_tagSpecificationsHasBeenSet = true;
163 m_tagSpecifications.emplace_back(std::forward<TagSpecificationsT>(value));
164 return *this;
165 }
167 private:
168 Aws::String m_clientToken;
169
171
172 Aws::Vector<Aws::String> m_hostIdSet;
173
174 Aws::String m_limitPrice;
175
176 Aws::String m_offeringId;
177
178 Aws::Vector<TagSpecification> m_tagSpecifications;
179 bool m_clientTokenHasBeenSet = false;
180 bool m_currencyCodeHasBeenSet = false;
181 bool m_hostIdSetHasBeenSet = false;
182 bool m_limitPriceHasBeenSet = false;
183 bool m_offeringIdHasBeenSet = false;
184 bool m_tagSpecificationsHasBeenSet = false;
185};
186
187} // namespace Model
188} // namespace EC2
189} // namespace Aws
PurchaseHostReservationRequest & WithCurrencyCode(CurrencyCodeValues value)
PurchaseHostReservationRequest & WithLimitPrice(LimitPriceT &&value)
const Aws::Vector< Aws::String > & GetHostIdSet() const
AWS_EC2_API void DumpBodyToUrl(Aws::Http::URI &uri) const override
virtual const char * GetServiceRequestName() const override
PurchaseHostReservationRequest & AddHostIdSet(HostIdSetT &&value)
const Aws::Vector< TagSpecification > & GetTagSpecifications() const
PurchaseHostReservationRequest & WithTagSpecifications(TagSpecificationsT &&value)
AWS_EC2_API Aws::String SerializePayload() const override
PurchaseHostReservationRequest & WithHostIdSet(HostIdSetT &&value)
PurchaseHostReservationRequest & WithClientToken(ClientTokenT &&value)
PurchaseHostReservationRequest & AddTagSpecifications(TagSpecificationsT &&value)
PurchaseHostReservationRequest & WithOfferingId(OfferingIdT &&value)
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
std::vector< T, Aws::Allocator< T > > Vector