AWS SDK for C++

AWS SDK for C++ Version 1.11.716

Loading...
Searching...
No Matches
DescribeScheduledInstanceAvailabilityRequest.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/Filter.h>
12#include <aws/ec2/model/ScheduledInstanceRecurrenceRequest.h>
13#include <aws/ec2/model/SlotDateTimeRangeRequest.h>
14
15#include <utility>
16
17namespace Aws {
18namespace EC2 {
19namespace Model {
20
28 public:
30
31 // Service request name is the Operation name which will send this request out,
32 // each operation should has unique request name, so that we can get operation's name from this request.
33 // Note: this is not true for response, multiple operations may have the same response name,
34 // so we can not get operation's name from response.
35 inline virtual const char* GetServiceRequestName() const override { return "DescribeScheduledInstanceAvailability"; }
36
37 AWS_EC2_API Aws::String SerializePayload() const override;
38
39 protected:
40 AWS_EC2_API void DumpBodyToUrl(Aws::Http::URI& uri) const override;
41
42 public:
44
50 inline bool GetDryRun() const { return m_dryRun; }
51 inline bool DryRunHasBeenSet() const { return m_dryRunHasBeenSet; }
52 inline void SetDryRun(bool value) {
53 m_dryRunHasBeenSet = true;
54 m_dryRun = value;
55 }
57 SetDryRun(value);
58 return *this;
59 }
61
63
70 inline const Aws::Vector<Filter>& GetFilters() const { return m_filters; }
71 inline bool FiltersHasBeenSet() const { return m_filtersHasBeenSet; }
72 template <typename FiltersT = Aws::Vector<Filter>>
73 void SetFilters(FiltersT&& value) {
74 m_filtersHasBeenSet = true;
75 m_filters = std::forward<FiltersT>(value);
76 }
77 template <typename FiltersT = Aws::Vector<Filter>>
79 SetFilters(std::forward<FiltersT>(value));
80 return *this;
81 }
82 template <typename FiltersT = Filter>
84 m_filtersHasBeenSet = true;
85 m_filters.emplace_back(std::forward<FiltersT>(value));
86 return *this;
87 }
89
91
94 inline const SlotDateTimeRangeRequest& GetFirstSlotStartTimeRange() const { return m_firstSlotStartTimeRange; }
95 inline bool FirstSlotStartTimeRangeHasBeenSet() const { return m_firstSlotStartTimeRangeHasBeenSet; }
96 template <typename FirstSlotStartTimeRangeT = SlotDateTimeRangeRequest>
97 void SetFirstSlotStartTimeRange(FirstSlotStartTimeRangeT&& value) {
98 m_firstSlotStartTimeRangeHasBeenSet = true;
99 m_firstSlotStartTimeRange = std::forward<FirstSlotStartTimeRangeT>(value);
100 }
101 template <typename FirstSlotStartTimeRangeT = SlotDateTimeRangeRequest>
103 SetFirstSlotStartTimeRange(std::forward<FirstSlotStartTimeRangeT>(value));
104 return *this;
105 }
107
109
114 inline int GetMaxResults() const { return m_maxResults; }
115 inline bool MaxResultsHasBeenSet() const { return m_maxResultsHasBeenSet; }
116 inline void SetMaxResults(int value) {
117 m_maxResultsHasBeenSet = true;
118 m_maxResults = value;
119 }
121 SetMaxResults(value);
122 return *this;
123 }
125
127
131 inline int GetMaxSlotDurationInHours() const { return m_maxSlotDurationInHours; }
132 inline bool MaxSlotDurationInHoursHasBeenSet() const { return m_maxSlotDurationInHoursHasBeenSet; }
133 inline void SetMaxSlotDurationInHours(int value) {
134 m_maxSlotDurationInHoursHasBeenSet = true;
135 m_maxSlotDurationInHours = value;
136 }
139 return *this;
140 }
142
144
150 inline int GetMinSlotDurationInHours() const { return m_minSlotDurationInHours; }
151 inline bool MinSlotDurationInHoursHasBeenSet() const { return m_minSlotDurationInHoursHasBeenSet; }
152 inline void SetMinSlotDurationInHours(int value) {
153 m_minSlotDurationInHoursHasBeenSet = true;
154 m_minSlotDurationInHours = value;
155 }
158 return *this;
159 }
161
163
166 inline const Aws::String& GetNextToken() const { return m_nextToken; }
167 inline bool NextTokenHasBeenSet() const { return m_nextTokenHasBeenSet; }
168 template <typename NextTokenT = Aws::String>
169 void SetNextToken(NextTokenT&& value) {
170 m_nextTokenHasBeenSet = true;
171 m_nextToken = std::forward<NextTokenT>(value);
172 }
173 template <typename NextTokenT = Aws::String>
175 SetNextToken(std::forward<NextTokenT>(value));
176 return *this;
177 }
179
181
184 inline const ScheduledInstanceRecurrenceRequest& GetRecurrence() const { return m_recurrence; }
185 inline bool RecurrenceHasBeenSet() const { return m_recurrenceHasBeenSet; }
186 template <typename RecurrenceT = ScheduledInstanceRecurrenceRequest>
187 void SetRecurrence(RecurrenceT&& value) {
188 m_recurrenceHasBeenSet = true;
189 m_recurrence = std::forward<RecurrenceT>(value);
190 }
191 template <typename RecurrenceT = ScheduledInstanceRecurrenceRequest>
193 SetRecurrence(std::forward<RecurrenceT>(value));
194 return *this;
195 }
197 private:
198 bool m_dryRun{false};
199
200 Aws::Vector<Filter> m_filters;
201
202 SlotDateTimeRangeRequest m_firstSlotStartTimeRange;
203
204 int m_maxResults{0};
205
206 int m_maxSlotDurationInHours{0};
207
208 int m_minSlotDurationInHours{0};
209
210 Aws::String m_nextToken;
211
212 ScheduledInstanceRecurrenceRequest m_recurrence;
213 bool m_dryRunHasBeenSet = false;
214 bool m_filtersHasBeenSet = false;
215 bool m_firstSlotStartTimeRangeHasBeenSet = false;
216 bool m_maxResultsHasBeenSet = false;
217 bool m_maxSlotDurationInHoursHasBeenSet = false;
218 bool m_minSlotDurationInHoursHasBeenSet = false;
219 bool m_nextTokenHasBeenSet = false;
220 bool m_recurrenceHasBeenSet = false;
221};
222
223} // namespace Model
224} // namespace EC2
225} // namespace Aws
DescribeScheduledInstanceAvailabilityRequest & AddFilters(FiltersT &&value)
DescribeScheduledInstanceAvailabilityRequest & WithFirstSlotStartTimeRange(FirstSlotStartTimeRangeT &&value)
AWS_EC2_API Aws::String SerializePayload() const override
DescribeScheduledInstanceAvailabilityRequest & WithNextToken(NextTokenT &&value)
DescribeScheduledInstanceAvailabilityRequest & WithMinSlotDurationInHours(int value)
DescribeScheduledInstanceAvailabilityRequest & WithRecurrence(RecurrenceT &&value)
AWS_EC2_API void DumpBodyToUrl(Aws::Http::URI &uri) const override
DescribeScheduledInstanceAvailabilityRequest & WithFilters(FiltersT &&value)
DescribeScheduledInstanceAvailabilityRequest & WithMaxSlotDurationInHours(int value)
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
std::vector< T, Aws::Allocator< T > > Vector