AWS SDK for C++

AWS SDK for C++ Version 1.11.606

Loading...
Searching...
No Matches
DescribeSpotPriceHistoryRequest.h
1
6#pragma once
7#include <aws/ec2/EC2_EXPORTS.h>
8#include <aws/ec2/EC2Request.h>
9#include <aws/core/utils/DateTime.h>
10#include <aws/core/utils/memory/stl/AWSVector.h>
11#include <aws/core/utils/memory/stl/AWSString.h>
12#include <aws/ec2/model/InstanceType.h>
13#include <aws/ec2/model/Filter.h>
14#include <utility>
15
16namespace Aws
17{
18namespace EC2
19{
20namespace Model
21{
22
30 {
31 public:
32 AWS_EC2_API DescribeSpotPriceHistoryRequest() = default;
33
34 // Service request name is the Operation name which will send this request out,
35 // each operation should has unique request name, so that we can get operation's name from this request.
36 // Note: this is not true for response, multiple operations may have the same response name,
37 // so we can not get operation's name from response.
38 inline virtual const char* GetServiceRequestName() const override { return "DescribeSpotPriceHistory"; }
39
40 AWS_EC2_API Aws::String SerializePayload() const override;
41
42 protected:
43 AWS_EC2_API void DumpBodyToUrl(Aws::Http::URI& uri ) const override;
44
45 public:
46
48
54 inline bool GetDryRun() const { return m_dryRun; }
55 inline bool DryRunHasBeenSet() const { return m_dryRunHasBeenSet; }
56 inline void SetDryRun(bool value) { m_dryRunHasBeenSet = true; m_dryRun = value; }
57 inline DescribeSpotPriceHistoryRequest& WithDryRun(bool value) { SetDryRun(value); return *this;}
59
61
66 inline const Aws::Utils::DateTime& GetStartTime() const { return m_startTime; }
67 inline bool StartTimeHasBeenSet() const { return m_startTimeHasBeenSet; }
68 template<typename StartTimeT = Aws::Utils::DateTime>
69 void SetStartTime(StartTimeT&& value) { m_startTimeHasBeenSet = true; m_startTime = std::forward<StartTimeT>(value); }
70 template<typename StartTimeT = Aws::Utils::DateTime>
71 DescribeSpotPriceHistoryRequest& WithStartTime(StartTimeT&& value) { SetStartTime(std::forward<StartTimeT>(value)); return *this;}
73
75
80 inline const Aws::Utils::DateTime& GetEndTime() const { return m_endTime; }
81 inline bool EndTimeHasBeenSet() const { return m_endTimeHasBeenSet; }
82 template<typename EndTimeT = Aws::Utils::DateTime>
83 void SetEndTime(EndTimeT&& value) { m_endTimeHasBeenSet = true; m_endTime = std::forward<EndTimeT>(value); }
84 template<typename EndTimeT = Aws::Utils::DateTime>
85 DescribeSpotPriceHistoryRequest& WithEndTime(EndTimeT&& value) { SetEndTime(std::forward<EndTimeT>(value)); return *this;}
87
89
92 inline const Aws::Vector<InstanceType>& GetInstanceTypes() const { return m_instanceTypes; }
93 inline bool InstanceTypesHasBeenSet() const { return m_instanceTypesHasBeenSet; }
94 template<typename InstanceTypesT = Aws::Vector<InstanceType>>
95 void SetInstanceTypes(InstanceTypesT&& value) { m_instanceTypesHasBeenSet = true; m_instanceTypes = std::forward<InstanceTypesT>(value); }
96 template<typename InstanceTypesT = Aws::Vector<InstanceType>>
97 DescribeSpotPriceHistoryRequest& WithInstanceTypes(InstanceTypesT&& value) { SetInstanceTypes(std::forward<InstanceTypesT>(value)); return *this;}
98 inline DescribeSpotPriceHistoryRequest& AddInstanceTypes(InstanceType value) { m_instanceTypesHasBeenSet = true; m_instanceTypes.push_back(value); return *this; }
100
102
105 inline const Aws::Vector<Aws::String>& GetProductDescriptions() const { return m_productDescriptions; }
106 inline bool ProductDescriptionsHasBeenSet() const { return m_productDescriptionsHasBeenSet; }
107 template<typename ProductDescriptionsT = Aws::Vector<Aws::String>>
108 void SetProductDescriptions(ProductDescriptionsT&& value) { m_productDescriptionsHasBeenSet = true; m_productDescriptions = std::forward<ProductDescriptionsT>(value); }
109 template<typename ProductDescriptionsT = Aws::Vector<Aws::String>>
110 DescribeSpotPriceHistoryRequest& WithProductDescriptions(ProductDescriptionsT&& value) { SetProductDescriptions(std::forward<ProductDescriptionsT>(value)); return *this;}
111 template<typename ProductDescriptionsT = Aws::String>
112 DescribeSpotPriceHistoryRequest& AddProductDescriptions(ProductDescriptionsT&& value) { m_productDescriptionsHasBeenSet = true; m_productDescriptions.emplace_back(std::forward<ProductDescriptionsT>(value)); return *this; }
114
116
133 inline const Aws::Vector<Filter>& GetFilters() const { return m_filters; }
134 inline bool FiltersHasBeenSet() const { return m_filtersHasBeenSet; }
135 template<typename FiltersT = Aws::Vector<Filter>>
136 void SetFilters(FiltersT&& value) { m_filtersHasBeenSet = true; m_filters = std::forward<FiltersT>(value); }
137 template<typename FiltersT = Aws::Vector<Filter>>
138 DescribeSpotPriceHistoryRequest& WithFilters(FiltersT&& value) { SetFilters(std::forward<FiltersT>(value)); return *this;}
139 template<typename FiltersT = Filter>
140 DescribeSpotPriceHistoryRequest& AddFilters(FiltersT&& value) { m_filtersHasBeenSet = true; m_filters.emplace_back(std::forward<FiltersT>(value)); return *this; }
142
144
147 inline const Aws::String& GetAvailabilityZone() const { return m_availabilityZone; }
148 inline bool AvailabilityZoneHasBeenSet() const { return m_availabilityZoneHasBeenSet; }
149 template<typename AvailabilityZoneT = Aws::String>
150 void SetAvailabilityZone(AvailabilityZoneT&& value) { m_availabilityZoneHasBeenSet = true; m_availabilityZone = std::forward<AvailabilityZoneT>(value); }
151 template<typename AvailabilityZoneT = Aws::String>
152 DescribeSpotPriceHistoryRequest& WithAvailabilityZone(AvailabilityZoneT&& value) { SetAvailabilityZone(std::forward<AvailabilityZoneT>(value)); return *this;}
154
156
162 inline int GetMaxResults() const { return m_maxResults; }
163 inline bool MaxResultsHasBeenSet() const { return m_maxResultsHasBeenSet; }
164 inline void SetMaxResults(int value) { m_maxResultsHasBeenSet = true; m_maxResults = value; }
165 inline DescribeSpotPriceHistoryRequest& WithMaxResults(int value) { SetMaxResults(value); return *this;}
167
169
173 inline const Aws::String& GetNextToken() const { return m_nextToken; }
174 inline bool NextTokenHasBeenSet() const { return m_nextTokenHasBeenSet; }
175 template<typename NextTokenT = Aws::String>
176 void SetNextToken(NextTokenT&& value) { m_nextTokenHasBeenSet = true; m_nextToken = std::forward<NextTokenT>(value); }
177 template<typename NextTokenT = Aws::String>
178 DescribeSpotPriceHistoryRequest& WithNextToken(NextTokenT&& value) { SetNextToken(std::forward<NextTokenT>(value)); return *this;}
180 private:
181
182 bool m_dryRun{false};
183 bool m_dryRunHasBeenSet = false;
184
185 Aws::Utils::DateTime m_startTime{};
186 bool m_startTimeHasBeenSet = false;
187
188 Aws::Utils::DateTime m_endTime{};
189 bool m_endTimeHasBeenSet = false;
190
191 Aws::Vector<InstanceType> m_instanceTypes;
192 bool m_instanceTypesHasBeenSet = false;
193
194 Aws::Vector<Aws::String> m_productDescriptions;
195 bool m_productDescriptionsHasBeenSet = false;
196
197 Aws::Vector<Filter> m_filters;
198 bool m_filtersHasBeenSet = false;
199
200 Aws::String m_availabilityZone;
201 bool m_availabilityZoneHasBeenSet = false;
202
203 int m_maxResults{0};
204 bool m_maxResultsHasBeenSet = false;
205
206 Aws::String m_nextToken;
207 bool m_nextTokenHasBeenSet = false;
208 };
209
210} // namespace Model
211} // namespace EC2
212} // namespace Aws
AWS_EC2_API Aws::String SerializePayload() const override
const Aws::Vector< Aws::String > & GetProductDescriptions() const
DescribeSpotPriceHistoryRequest & WithAvailabilityZone(AvailabilityZoneT &&value)
DescribeSpotPriceHistoryRequest & WithInstanceTypes(InstanceTypesT &&value)
DescribeSpotPriceHistoryRequest & WithNextToken(NextTokenT &&value)
AWS_EC2_API void DumpBodyToUrl(Aws::Http::URI &uri) const override
DescribeSpotPriceHistoryRequest & WithProductDescriptions(ProductDescriptionsT &&value)
DescribeSpotPriceHistoryRequest & AddInstanceTypes(InstanceType value)
DescribeSpotPriceHistoryRequest & AddFilters(FiltersT &&value)
DescribeSpotPriceHistoryRequest & AddProductDescriptions(ProductDescriptionsT &&value)
DescribeSpotPriceHistoryRequest & WithStartTime(StartTimeT &&value)
DescribeSpotPriceHistoryRequest & WithEndTime(EndTimeT &&value)
DescribeSpotPriceHistoryRequest & WithFilters(FiltersT &&value)
const Aws::Vector< InstanceType > & GetInstanceTypes() const
DescribeSpotPriceHistoryRequest & WithDryRun(bool value)
DescribeSpotPriceHistoryRequest & WithMaxResults(int value)
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
std::vector< T, Aws::Allocator< T > > Vector