AWS SDK for C++  0.14.3
AWS SDK for C++
DescribeScheduledInstanceAvailabilityRequest.h
Go to the documentation of this file.
1 /*
2 * Copyright 2010-2016 Amazon.com, Inc. or its affiliates. All Rights Reserved.
3 *
4 * Licensed under the Apache License, Version 2.0 (the "License").
5 * You may not use this file except in compliance with the License.
6 * A copy of the License is located at
7 *
8 * http://aws.amazon.com/apache2.0
9 *
10 * or in the "license" file accompanying this file. This file is distributed
11 * on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either
12 * express or implied. See the License for the specific language governing
13 * permissions and limitations under the License.
14 */
15 #pragma once
16 #include <aws/ec2/EC2_EXPORTS.h>
17 #include <aws/ec2/EC2Request.h>
22 #include <aws/ec2/model/Filter.h>
23 
24 namespace Aws
25 {
26 namespace EC2
27 {
28 namespace Model
29 {
30 
35  {
36  public:
38  Aws::String SerializePayload() const override;
39 
46  inline bool GetDryRun() const{ return m_dryRun; }
47 
54  inline void SetDryRun(bool value) { m_dryRunHasBeenSet = true; m_dryRun = value; }
55 
62  inline DescribeScheduledInstanceAvailabilityRequest& WithDryRun(bool value) { SetDryRun(value); return *this;}
63 
67  inline const ScheduledInstanceRecurrenceRequest& GetRecurrence() const{ return m_recurrence; }
68 
72  inline void SetRecurrence(const ScheduledInstanceRecurrenceRequest& value) { m_recurrenceHasBeenSet = true; m_recurrence = value; }
73 
77  inline void SetRecurrence(ScheduledInstanceRecurrenceRequest&& value) { m_recurrenceHasBeenSet = true; m_recurrence = value; }
78 
82  inline DescribeScheduledInstanceAvailabilityRequest& WithRecurrence(const ScheduledInstanceRecurrenceRequest& value) { SetRecurrence(value); return *this;}
83 
88 
92  inline const SlotDateTimeRangeRequest& GetFirstSlotStartTimeRange() const{ return m_firstSlotStartTimeRange; }
93 
97  inline void SetFirstSlotStartTimeRange(const SlotDateTimeRangeRequest& value) { m_firstSlotStartTimeRangeHasBeenSet = true; m_firstSlotStartTimeRange = value; }
98 
102  inline void SetFirstSlotStartTimeRange(SlotDateTimeRangeRequest&& value) { m_firstSlotStartTimeRangeHasBeenSet = true; m_firstSlotStartTimeRange = value; }
103 
107  inline DescribeScheduledInstanceAvailabilityRequest& WithFirstSlotStartTimeRange(const SlotDateTimeRangeRequest& value) { SetFirstSlotStartTimeRange(value); return *this;}
108 
112  inline DescribeScheduledInstanceAvailabilityRequest& WithFirstSlotStartTimeRange(SlotDateTimeRangeRequest&& value) { SetFirstSlotStartTimeRange(value); return *this;}
113 
120  inline int GetMinSlotDurationInHours() const{ return m_minSlotDurationInHours; }
121 
128  inline void SetMinSlotDurationInHours(int value) { m_minSlotDurationInHoursHasBeenSet = true; m_minSlotDurationInHours = value; }
129 
136  inline DescribeScheduledInstanceAvailabilityRequest& WithMinSlotDurationInHours(int value) { SetMinSlotDurationInHours(value); return *this;}
137 
142  inline int GetMaxSlotDurationInHours() const{ return m_maxSlotDurationInHours; }
143 
148  inline void SetMaxSlotDurationInHours(int value) { m_maxSlotDurationInHoursHasBeenSet = true; m_maxSlotDurationInHours = value; }
149 
154  inline DescribeScheduledInstanceAvailabilityRequest& WithMaxSlotDurationInHours(int value) { SetMaxSlotDurationInHours(value); return *this;}
155 
159  inline const Aws::String& GetNextToken() const{ return m_nextToken; }
160 
164  inline void SetNextToken(const Aws::String& value) { m_nextTokenHasBeenSet = true; m_nextToken = value; }
165 
169  inline void SetNextToken(Aws::String&& value) { m_nextTokenHasBeenSet = true; m_nextToken = value; }
170 
174  inline void SetNextToken(const char* value) { m_nextTokenHasBeenSet = true; m_nextToken.assign(value); }
175 
179  inline DescribeScheduledInstanceAvailabilityRequest& WithNextToken(const Aws::String& value) { SetNextToken(value); return *this;}
180 
184  inline DescribeScheduledInstanceAvailabilityRequest& WithNextToken(Aws::String&& value) { SetNextToken(value); return *this;}
185 
189  inline DescribeScheduledInstanceAvailabilityRequest& WithNextToken(const char* value) { SetNextToken(value); return *this;}
190 
196  inline int GetMaxResults() const{ return m_maxResults; }
197 
203  inline void SetMaxResults(int value) { m_maxResultsHasBeenSet = true; m_maxResults = value; }
204 
210  inline DescribeScheduledInstanceAvailabilityRequest& WithMaxResults(int value) { SetMaxResults(value); return *this;}
211 
221  inline const Aws::Vector<Filter>& GetFilters() const{ return m_filters; }
222 
232  inline void SetFilters(const Aws::Vector<Filter>& value) { m_filtersHasBeenSet = true; m_filters = value; }
233 
243  inline void SetFilters(Aws::Vector<Filter>&& value) { m_filtersHasBeenSet = true; m_filters = value; }
244 
254  inline DescribeScheduledInstanceAvailabilityRequest& WithFilters(const Aws::Vector<Filter>& value) { SetFilters(value); return *this;}
255 
265  inline DescribeScheduledInstanceAvailabilityRequest& WithFilters(Aws::Vector<Filter>&& value) { SetFilters(value); return *this;}
266 
276  inline DescribeScheduledInstanceAvailabilityRequest& AddFilters(const Filter& value) { m_filtersHasBeenSet = true; m_filters.push_back(value); return *this; }
277 
287  inline DescribeScheduledInstanceAvailabilityRequest& AddFilters(Filter&& value) { m_filtersHasBeenSet = true; m_filters.push_back(value); return *this; }
288 
289  private:
290  bool m_dryRun;
291  bool m_dryRunHasBeenSet;
293  bool m_recurrenceHasBeenSet;
294  SlotDateTimeRangeRequest m_firstSlotStartTimeRange;
295  bool m_firstSlotStartTimeRangeHasBeenSet;
296  int m_minSlotDurationInHours;
297  bool m_minSlotDurationInHoursHasBeenSet;
298  int m_maxSlotDurationInHours;
299  bool m_maxSlotDurationInHoursHasBeenSet;
300  Aws::String m_nextToken;
301  bool m_nextTokenHasBeenSet;
302  int m_maxResults;
303  bool m_maxResultsHasBeenSet;
304  Aws::Vector<Filter> m_filters;
305  bool m_filtersHasBeenSet;
306  };
307 
308 } // namespace Model
309 } // namespace EC2
310 } // namespace Aws
DescribeScheduledInstanceAvailabilityRequest & WithRecurrence(const ScheduledInstanceRecurrenceRequest &value)
DescribeScheduledInstanceAvailabilityRequest & WithMinSlotDurationInHours(int value)
DescribeScheduledInstanceAvailabilityRequest & WithFirstSlotStartTimeRange(SlotDateTimeRangeRequest &&value)
std::vector< T, Aws::Allocator< T > > Vector
Definition: AWSVector.h:27
DescribeScheduledInstanceAvailabilityRequest & WithFilters(const Aws::Vector< Filter > &value)
DescribeScheduledInstanceAvailabilityRequest & WithNextToken(Aws::String &&value)
DescribeScheduledInstanceAvailabilityRequest & WithFilters(Aws::Vector< Filter > &&value)
DescribeScheduledInstanceAvailabilityRequest & AddFilters(Filter &&value)
DescribeScheduledInstanceAvailabilityRequest & AddFilters(const Filter &value)
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
Definition: AWSString.h:97
DescribeScheduledInstanceAvailabilityRequest & WithRecurrence(ScheduledInstanceRecurrenceRequest &&value)
DescribeScheduledInstanceAvailabilityRequest & WithNextToken(const Aws::String &value)
#define AWS_EC2_API
Definition: EC2_EXPORTS.h:37
DescribeScheduledInstanceAvailabilityRequest & WithMaxSlotDurationInHours(int value)
DescribeScheduledInstanceAvailabilityRequest & WithNextToken(const char *value)
DescribeScheduledInstanceAvailabilityRequest & WithFirstSlotStartTimeRange(const SlotDateTimeRangeRequest &value)
JSON (JavaScript Object Notation).