AWS SDK for C++  0.12.9
AWS SDK for C++
DescribeReservedInstancesOfferingsRequest.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/Tenancy.h>
24 #include <aws/ec2/model/Filter.h>
25 
26 namespace Aws
27 {
28 namespace EC2
29 {
30 namespace Model
31 {
32 
37  {
38  public:
40  Aws::String SerializePayload() const override;
41 
48  inline bool GetDryRun() const{ return m_dryRun; }
49 
56  inline void SetDryRun(bool value) { m_dryRunHasBeenSet = true; m_dryRun = value; }
57 
64  inline DescribeReservedInstancesOfferingsRequest& WithDryRun(bool value) { SetDryRun(value); return *this;}
65 
69  inline const Aws::Vector<Aws::String>& GetReservedInstancesOfferingIds() const{ return m_reservedInstancesOfferingIds; }
70 
74  inline void SetReservedInstancesOfferingIds(const Aws::Vector<Aws::String>& value) { m_reservedInstancesOfferingIdsHasBeenSet = true; m_reservedInstancesOfferingIds = value; }
75 
79  inline void SetReservedInstancesOfferingIds(Aws::Vector<Aws::String>&& value) { m_reservedInstancesOfferingIdsHasBeenSet = true; m_reservedInstancesOfferingIds = value; }
80 
84  inline DescribeReservedInstancesOfferingsRequest& WithReservedInstancesOfferingIds(const Aws::Vector<Aws::String>& value) { SetReservedInstancesOfferingIds(value); return *this;}
85 
89  inline DescribeReservedInstancesOfferingsRequest& WithReservedInstancesOfferingIds(Aws::Vector<Aws::String>&& value) { SetReservedInstancesOfferingIds(value); return *this;}
90 
94  inline DescribeReservedInstancesOfferingsRequest& AddReservedInstancesOfferingIds(const Aws::String& value) { m_reservedInstancesOfferingIdsHasBeenSet = true; m_reservedInstancesOfferingIds.push_back(value); return *this; }
95 
99  inline DescribeReservedInstancesOfferingsRequest& AddReservedInstancesOfferingIds(Aws::String&& value) { m_reservedInstancesOfferingIdsHasBeenSet = true; m_reservedInstancesOfferingIds.push_back(value); return *this; }
100 
104  inline DescribeReservedInstancesOfferingsRequest& AddReservedInstancesOfferingIds(const char* value) { m_reservedInstancesOfferingIdsHasBeenSet = true; m_reservedInstancesOfferingIds.push_back(value); return *this; }
105 
112  inline const InstanceType& GetInstanceType() const{ return m_instanceType; }
113 
120  inline void SetInstanceType(const InstanceType& value) { m_instanceTypeHasBeenSet = true; m_instanceType = value; }
121 
128  inline void SetInstanceType(InstanceType&& value) { m_instanceTypeHasBeenSet = true; m_instanceType = value; }
129 
136  inline DescribeReservedInstancesOfferingsRequest& WithInstanceType(const InstanceType& value) { SetInstanceType(value); return *this;}
137 
144  inline DescribeReservedInstancesOfferingsRequest& WithInstanceType(InstanceType&& value) { SetInstanceType(value); return *this;}
145 
149  inline const Aws::String& GetAvailabilityZone() const{ return m_availabilityZone; }
150 
154  inline void SetAvailabilityZone(const Aws::String& value) { m_availabilityZoneHasBeenSet = true; m_availabilityZone = value; }
155 
159  inline void SetAvailabilityZone(Aws::String&& value) { m_availabilityZoneHasBeenSet = true; m_availabilityZone = value; }
160 
164  inline void SetAvailabilityZone(const char* value) { m_availabilityZoneHasBeenSet = true; m_availabilityZone.assign(value); }
165 
169  inline DescribeReservedInstancesOfferingsRequest& WithAvailabilityZone(const Aws::String& value) { SetAvailabilityZone(value); return *this;}
170 
174  inline DescribeReservedInstancesOfferingsRequest& WithAvailabilityZone(Aws::String&& value) { SetAvailabilityZone(value); return *this;}
175 
179  inline DescribeReservedInstancesOfferingsRequest& WithAvailabilityZone(const char* value) { SetAvailabilityZone(value); return *this;}
180 
185  inline const RIProductDescription& GetProductDescription() const{ return m_productDescription; }
186 
191  inline void SetProductDescription(const RIProductDescription& value) { m_productDescriptionHasBeenSet = true; m_productDescription = value; }
192 
197  inline void SetProductDescription(RIProductDescription&& value) { m_productDescriptionHasBeenSet = true; m_productDescription = value; }
198 
203  inline DescribeReservedInstancesOfferingsRequest& WithProductDescription(const RIProductDescription& value) { SetProductDescription(value); return *this;}
204 
209  inline DescribeReservedInstancesOfferingsRequest& WithProductDescription(RIProductDescription&& value) { SetProductDescription(value); return *this;}
210 
239  inline const Aws::Vector<Filter>& GetFilters() const{ return m_filters; }
240 
269  inline void SetFilters(const Aws::Vector<Filter>& value) { m_filtersHasBeenSet = true; m_filters = value; }
270 
299  inline void SetFilters(Aws::Vector<Filter>&& value) { m_filtersHasBeenSet = true; m_filters = value; }
300 
329  inline DescribeReservedInstancesOfferingsRequest& WithFilters(const Aws::Vector<Filter>& value) { SetFilters(value); return *this;}
330 
359  inline DescribeReservedInstancesOfferingsRequest& WithFilters(Aws::Vector<Filter>&& value) { SetFilters(value); return *this;}
360 
389  inline DescribeReservedInstancesOfferingsRequest& AddFilters(const Filter& value) { m_filtersHasBeenSet = true; m_filters.push_back(value); return *this; }
390 
419  inline DescribeReservedInstancesOfferingsRequest& AddFilters(Filter&& value) { m_filtersHasBeenSet = true; m_filters.push_back(value); return *this; }
420 
427  inline const Tenancy& GetInstanceTenancy() const{ return m_instanceTenancy; }
428 
435  inline void SetInstanceTenancy(const Tenancy& value) { m_instanceTenancyHasBeenSet = true; m_instanceTenancy = value; }
436 
443  inline void SetInstanceTenancy(Tenancy&& value) { m_instanceTenancyHasBeenSet = true; m_instanceTenancy = value; }
444 
451  inline DescribeReservedInstancesOfferingsRequest& WithInstanceTenancy(const Tenancy& value) { SetInstanceTenancy(value); return *this;}
452 
459  inline DescribeReservedInstancesOfferingsRequest& WithInstanceTenancy(Tenancy&& value) { SetInstanceTenancy(value); return *this;}
460 
466  inline const OfferingTypeValues& GetOfferingType() const{ return m_offeringType; }
467 
473  inline void SetOfferingType(const OfferingTypeValues& value) { m_offeringTypeHasBeenSet = true; m_offeringType = value; }
474 
480  inline void SetOfferingType(OfferingTypeValues&& value) { m_offeringTypeHasBeenSet = true; m_offeringType = value; }
481 
487  inline DescribeReservedInstancesOfferingsRequest& WithOfferingType(const OfferingTypeValues& value) { SetOfferingType(value); return *this;}
488 
494  inline DescribeReservedInstancesOfferingsRequest& WithOfferingType(OfferingTypeValues&& value) { SetOfferingType(value); return *this;}
495 
499  inline const Aws::String& GetNextToken() const{ return m_nextToken; }
500 
504  inline void SetNextToken(const Aws::String& value) { m_nextTokenHasBeenSet = true; m_nextToken = value; }
505 
509  inline void SetNextToken(Aws::String&& value) { m_nextTokenHasBeenSet = true; m_nextToken = value; }
510 
514  inline void SetNextToken(const char* value) { m_nextTokenHasBeenSet = true; m_nextToken.assign(value); }
515 
519  inline DescribeReservedInstancesOfferingsRequest& WithNextToken(const Aws::String& value) { SetNextToken(value); return *this;}
520 
524  inline DescribeReservedInstancesOfferingsRequest& WithNextToken(Aws::String&& value) { SetNextToken(value); return *this;}
525 
529  inline DescribeReservedInstancesOfferingsRequest& WithNextToken(const char* value) { SetNextToken(value); return *this;}
530 
537  inline long GetMaxResults() const{ return m_maxResults; }
538 
545  inline void SetMaxResults(long value) { m_maxResultsHasBeenSet = true; m_maxResults = value; }
546 
553  inline DescribeReservedInstancesOfferingsRequest& WithMaxResults(long value) { SetMaxResults(value); return *this;}
554 
558  inline bool GetIncludeMarketplace() const{ return m_includeMarketplace; }
559 
563  inline void SetIncludeMarketplace(bool value) { m_includeMarketplaceHasBeenSet = true; m_includeMarketplace = value; }
564 
568  inline DescribeReservedInstancesOfferingsRequest& WithIncludeMarketplace(bool value) { SetIncludeMarketplace(value); return *this;}
569 
574  inline long long GetMinDuration() const{ return m_minDuration; }
575 
580  inline void SetMinDuration(long long value) { m_minDurationHasBeenSet = true; m_minDuration = value; }
581 
586  inline DescribeReservedInstancesOfferingsRequest& WithMinDuration(long long value) { SetMinDuration(value); return *this;}
587 
592  inline long long GetMaxDuration() const{ return m_maxDuration; }
593 
598  inline void SetMaxDuration(long long value) { m_maxDurationHasBeenSet = true; m_maxDuration = value; }
599 
604  inline DescribeReservedInstancesOfferingsRequest& WithMaxDuration(long long value) { SetMaxDuration(value); return *this;}
605 
610  inline long GetMaxInstanceCount() const{ return m_maxInstanceCount; }
611 
616  inline void SetMaxInstanceCount(long value) { m_maxInstanceCountHasBeenSet = true; m_maxInstanceCount = value; }
617 
622  inline DescribeReservedInstancesOfferingsRequest& WithMaxInstanceCount(long value) { SetMaxInstanceCount(value); return *this;}
623 
624  private:
625  bool m_dryRun;
626  bool m_dryRunHasBeenSet;
627  Aws::Vector<Aws::String> m_reservedInstancesOfferingIds;
628  bool m_reservedInstancesOfferingIdsHasBeenSet;
629  InstanceType m_instanceType;
630  bool m_instanceTypeHasBeenSet;
631  Aws::String m_availabilityZone;
632  bool m_availabilityZoneHasBeenSet;
633  RIProductDescription m_productDescription;
634  bool m_productDescriptionHasBeenSet;
635  Aws::Vector<Filter> m_filters;
636  bool m_filtersHasBeenSet;
637  Tenancy m_instanceTenancy;
638  bool m_instanceTenancyHasBeenSet;
639  OfferingTypeValues m_offeringType;
640  bool m_offeringTypeHasBeenSet;
641  Aws::String m_nextToken;
642  bool m_nextTokenHasBeenSet;
643  long m_maxResults;
644  bool m_maxResultsHasBeenSet;
645  bool m_includeMarketplace;
646  bool m_includeMarketplaceHasBeenSet;
647  long long m_minDuration;
648  bool m_minDurationHasBeenSet;
649  long long m_maxDuration;
650  bool m_maxDurationHasBeenSet;
651  long m_maxInstanceCount;
652  bool m_maxInstanceCountHasBeenSet;
653  };
654 
655 } // namespace Model
656 } // namespace EC2
657 } // namespace Aws
DescribeReservedInstancesOfferingsRequest & WithDryRun(bool value)
DescribeReservedInstancesOfferingsRequest & WithNextToken(const char *value)
DescribeReservedInstancesOfferingsRequest & AddReservedInstancesOfferingIds(const Aws::String &value)
DescribeReservedInstancesOfferingsRequest & WithFilters(const Aws::Vector< Filter > &value)
DescribeReservedInstancesOfferingsRequest & WithReservedInstancesOfferingIds(const Aws::Vector< Aws::String > &value)
DescribeReservedInstancesOfferingsRequest & WithMaxDuration(long long value)
DescribeReservedInstancesOfferingsRequest & WithAvailabilityZone(Aws::String &&value)
std::vector< T, Aws::Allocator< T > > Vector
Definition: AWSVector.h:27
DescribeReservedInstancesOfferingsRequest & WithAvailabilityZone(const Aws::String &value)
DescribeReservedInstancesOfferingsRequest & WithInstanceTenancy(const Tenancy &value)
DescribeReservedInstancesOfferingsRequest & WithProductDescription(const RIProductDescription &value)
DescribeReservedInstancesOfferingsRequest & WithNextToken(Aws::String &&value)
DescribeReservedInstancesOfferingsRequest & WithNextToken(const Aws::String &value)
DescribeReservedInstancesOfferingsRequest & WithOfferingType(OfferingTypeValues &&value)
DescribeReservedInstancesOfferingsRequest & WithOfferingType(const OfferingTypeValues &value)
DescribeReservedInstancesOfferingsRequest & WithMaxResults(long value)
DescribeReservedInstancesOfferingsRequest & WithMaxInstanceCount(long value)
DescribeReservedInstancesOfferingsRequest & WithInstanceType(InstanceType &&value)
DescribeReservedInstancesOfferingsRequest & WithIncludeMarketplace(bool value)
DescribeReservedInstancesOfferingsRequest & WithMinDuration(long long value)
DescribeReservedInstancesOfferingsRequest & WithProductDescription(RIProductDescription &&value)
DescribeReservedInstancesOfferingsRequest & AddReservedInstancesOfferingIds(Aws::String &&value)
DescribeReservedInstancesOfferingsRequest & WithInstanceType(const InstanceType &value)
DescribeReservedInstancesOfferingsRequest & AddFilters(Filter &&value)
DescribeReservedInstancesOfferingsRequest & WithAvailabilityZone(const char *value)
DescribeReservedInstancesOfferingsRequest & AddFilters(const Filter &value)
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
Definition: AWSString.h:97
DescribeReservedInstancesOfferingsRequest & WithInstanceTenancy(Tenancy &&value)
DescribeReservedInstancesOfferingsRequest & AddReservedInstancesOfferingIds(const char *value)
#define AWS_EC2_API
Definition: EC2_EXPORTS.h:34
DescribeReservedInstancesOfferingsRequest & WithFilters(Aws::Vector< Filter > &&value)
JSON (JavaScript Object Notation).
DescribeReservedInstancesOfferingsRequest & WithReservedInstancesOfferingIds(Aws::Vector< Aws::String > &&value)