Skip to content

Commit 030a0ea

Browse files
committed
Merge branch 'main' of github.com:aws/aws-sdk-cpp into schema-serde
2 parents 6145212 + 58442a4 commit 030a0ea

471 files changed

Lines changed: 50447 additions & 4421 deletions

File tree

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

VERSION

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1 +1 @@
1-
1.11.818
1+
1.11.820

generated/src/aws-cpp-sdk-ec2/include/aws/ec2/EC2Client.h

Lines changed: 75 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1740,10 +1740,14 @@ class AWS_EC2_API EC2Client : public Aws::Client::AWSXMLClient,
17401740
* <p>Cancels the specified Capacity Reservation, releases the reserved capacity,
17411741
* and changes the Capacity Reservation's state to <code>cancelled</code>.</p>
17421742
* <p>You can cancel a Capacity Reservation that is in the following states:</p>
1743-
* <ul> <li> <p> <code>assessing</code> </p> </li> <li> <p> <code>active</code> and
1744-
* there is no commitment duration or the commitment duration has elapsed. You
1745-
* can't cancel a future-dated Capacity Reservation during the commitment
1746-
* duration.</p> </li> </ul> <p>You can't modify or cancel a Capacity Block.
1743+
* <ul> <li> <p> <code>assessing</code> </p> </li> <li> <p> <code>scheduled</code>
1744+
* </p> </li> <li> <p> <code>active</code> and there is no commitment duration or
1745+
* the commitment duration has elapsed.</p> </li> <li> <p> <code>active</code>
1746+
* during the commitment duration, if you provide a cancellation quote ID and
1747+
* accept the cancellation charges. Use
1748+
* <code>CreateCapacityReservationCancellationQuote</code> to generate a quote. The
1749+
* Capacity Reservation transitions to <code>cancelling</code> while charges are
1750+
* applied.</p> </li> </ul> <p>You can't modify or cancel a Capacity Block.
17471751
* For more information, see <a
17481752
* href="https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ec2-capacity-blocks.html">Capacity
17491753
* Blocks for ML</a>.</p> <p>If a future-dated Capacity Reservation enters
@@ -2385,6 +2389,40 @@ class AWS_EC2_API EC2Client : public Aws::Client::AWSXMLClient,
23852389
return SubmitAsync(&EC2Client::CreateCapacityReservationBySplitting, request, handler, context);
23862390
}
23872391

2392+
/**
2393+
* <p>Generates a cancellation quote for a future-dated Capacity Reservation that
2394+
* is within its commitment duration. The quote includes the cancellation terms and
2395+
* a quote ID that you can pass to the <code>CancelCapacityReservation</code>
2396+
* action. Cancellation quotes are valid for 24 hours.</p><p><h3>See Also:</h3>
2397+
* <a
2398+
* href="http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/CreateCapacityReservationCancellationQuote">AWS
2399+
* API Reference</a></p>
2400+
*/
2401+
virtual Model::CreateCapacityReservationCancellationQuoteOutcome CreateCapacityReservationCancellationQuote(
2402+
const Model::CreateCapacityReservationCancellationQuoteRequest& request) const;
2403+
2404+
/**
2405+
* A Callable wrapper for CreateCapacityReservationCancellationQuote that returns a future to the operation so that it can be executed in
2406+
* parallel to other requests.
2407+
*/
2408+
template <typename CreateCapacityReservationCancellationQuoteRequestT = Model::CreateCapacityReservationCancellationQuoteRequest>
2409+
Model::CreateCapacityReservationCancellationQuoteOutcomeCallable CreateCapacityReservationCancellationQuoteCallable(
2410+
const CreateCapacityReservationCancellationQuoteRequestT& request) const {
2411+
return SubmitCallable(&EC2Client::CreateCapacityReservationCancellationQuote, request);
2412+
}
2413+
2414+
/**
2415+
* An Async wrapper for CreateCapacityReservationCancellationQuote that queues the request into a thread executor and triggers associated
2416+
* callback when operation has finished.
2417+
*/
2418+
template <typename CreateCapacityReservationCancellationQuoteRequestT = Model::CreateCapacityReservationCancellationQuoteRequest>
2419+
void CreateCapacityReservationCancellationQuoteAsync(
2420+
const CreateCapacityReservationCancellationQuoteRequestT& request,
2421+
const CreateCapacityReservationCancellationQuoteResponseReceivedHandler& handler,
2422+
const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const {
2423+
return SubmitAsync(&EC2Client::CreateCapacityReservationCancellationQuote, request, handler, context);
2424+
}
2425+
23882426
/**
23892427
* <p>Creates a Capacity Reservation Fleet. For more information, see <a
23902428
* href="https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/work-with-cr-fleets.html#create-crfleet">Create
@@ -9553,6 +9591,39 @@ class AWS_EC2_API EC2Client : public Aws::Client::AWSXMLClient,
95539591
return SubmitAsync(&EC2Client::DescribeCapacityReservationBillingRequests, request, handler, context);
95549592
}
95559593

9594+
/**
9595+
* <p>Describes one or more Capacity Reservation cancellation quotes. The results
9596+
* describe only the quotes that you have previously generated by using the
9597+
* <code>CreateCapacityReservationCancellationQuote</code> action.</p><p><h3>See
9598+
* Also:</h3> <a
9599+
* href="http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DescribeCapacityReservationCancellationQuotes">AWS
9600+
* API Reference</a></p>
9601+
*/
9602+
virtual Model::DescribeCapacityReservationCancellationQuotesOutcome DescribeCapacityReservationCancellationQuotes(
9603+
const Model::DescribeCapacityReservationCancellationQuotesRequest& request = {}) const;
9604+
9605+
/**
9606+
* A Callable wrapper for DescribeCapacityReservationCancellationQuotes that returns a future to the operation so that it can be executed
9607+
* in parallel to other requests.
9608+
*/
9609+
template <typename DescribeCapacityReservationCancellationQuotesRequestT = Model::DescribeCapacityReservationCancellationQuotesRequest>
9610+
Model::DescribeCapacityReservationCancellationQuotesOutcomeCallable DescribeCapacityReservationCancellationQuotesCallable(
9611+
const DescribeCapacityReservationCancellationQuotesRequestT& request = {}) const {
9612+
return SubmitCallable(&EC2Client::DescribeCapacityReservationCancellationQuotes, request);
9613+
}
9614+
9615+
/**
9616+
* An Async wrapper for DescribeCapacityReservationCancellationQuotes that queues the request into a thread executor and triggers
9617+
* associated callback when operation has finished.
9618+
*/
9619+
template <typename DescribeCapacityReservationCancellationQuotesRequestT = Model::DescribeCapacityReservationCancellationQuotesRequest>
9620+
void DescribeCapacityReservationCancellationQuotesAsync(
9621+
const DescribeCapacityReservationCancellationQuotesResponseReceivedHandler& handler,
9622+
const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr,
9623+
const DescribeCapacityReservationCancellationQuotesRequestT& request = {}) const {
9624+
return SubmitAsync(&EC2Client::DescribeCapacityReservationCancellationQuotes, request, handler, context);
9625+
}
9626+
95569627
/**
95579628
* <p>Describes one or more Capacity Reservation Fleets.</p><p><h3>See Also:</h3>
95589629
* <a

generated/src/aws-cpp-sdk-ec2/include/aws/ec2/EC2ServiceClientModel.h

Lines changed: 18 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -86,6 +86,7 @@
8686
#include <aws/ec2/model/CopyVolumesResponse.h>
8787
#include <aws/ec2/model/CreateCapacityManagerDataExportResponse.h>
8888
#include <aws/ec2/model/CreateCapacityReservationBySplittingResponse.h>
89+
#include <aws/ec2/model/CreateCapacityReservationCancellationQuoteResponse.h>
8990
#include <aws/ec2/model/CreateCapacityReservationFleetResponse.h>
9091
#include <aws/ec2/model/CreateCapacityReservationResponse.h>
9192
#include <aws/ec2/model/CreateCarrierGatewayResponse.h>
@@ -318,6 +319,8 @@
318319
#include <aws/ec2/model/DescribeCapacityManagerDataExportsRequest.h>
319320
#include <aws/ec2/model/DescribeCapacityManagerDataExportsResponse.h>
320321
#include <aws/ec2/model/DescribeCapacityReservationBillingRequestsResponse.h>
322+
#include <aws/ec2/model/DescribeCapacityReservationCancellationQuotesRequest.h>
323+
#include <aws/ec2/model/DescribeCapacityReservationCancellationQuotesResponse.h>
321324
#include <aws/ec2/model/DescribeCapacityReservationFleetsRequest.h>
322325
#include <aws/ec2/model/DescribeCapacityReservationFleetsResponse.h>
323326
#include <aws/ec2/model/DescribeCapacityReservationTopologyRequest.h>
@@ -1063,6 +1066,7 @@ class CopyVolumesRequest;
10631066
class CreateCapacityManagerDataExportRequest;
10641067
class CreateCapacityReservationRequest;
10651068
class CreateCapacityReservationBySplittingRequest;
1069+
class CreateCapacityReservationCancellationQuoteRequest;
10661070
class CreateCapacityReservationFleetRequest;
10671071
class CreateCarrierGatewayRequest;
10681072
class CreateClientVpnEndpointRequest;
@@ -1281,6 +1285,7 @@ class DescribeCapacityBlockStatusRequest;
12811285
class DescribeCapacityBlocksRequest;
12821286
class DescribeCapacityManagerDataExportsRequest;
12831287
class DescribeCapacityReservationBillingRequestsRequest;
1288+
class DescribeCapacityReservationCancellationQuotesRequest;
12841289
class DescribeCapacityReservationFleetsRequest;
12851290
class DescribeCapacityReservationTopologyRequest;
12861291
class DescribeCapacityReservationsRequest;
@@ -1833,6 +1838,7 @@ typedef Aws::Utils::Outcome<CopyVolumesResponse, EC2Error> CopyVolumesOutcome;
18331838
typedef Aws::Utils::Outcome<CreateCapacityManagerDataExportResponse, EC2Error> CreateCapacityManagerDataExportOutcome;
18341839
typedef Aws::Utils::Outcome<CreateCapacityReservationResponse, EC2Error> CreateCapacityReservationOutcome;
18351840
typedef Aws::Utils::Outcome<CreateCapacityReservationBySplittingResponse, EC2Error> CreateCapacityReservationBySplittingOutcome;
1841+
typedef Aws::Utils::Outcome<CreateCapacityReservationCancellationQuoteResponse, EC2Error> CreateCapacityReservationCancellationQuoteOutcome;
18361842
typedef Aws::Utils::Outcome<CreateCapacityReservationFleetResponse, EC2Error> CreateCapacityReservationFleetOutcome;
18371843
typedef Aws::Utils::Outcome<CreateCarrierGatewayResponse, EC2Error> CreateCarrierGatewayOutcome;
18381844
typedef Aws::Utils::Outcome<CreateClientVpnEndpointResponse, EC2Error> CreateClientVpnEndpointOutcome;
@@ -2061,6 +2067,8 @@ typedef Aws::Utils::Outcome<DescribeCapacityBlockStatusResponse, EC2Error> Descr
20612067
typedef Aws::Utils::Outcome<DescribeCapacityBlocksResponse, EC2Error> DescribeCapacityBlocksOutcome;
20622068
typedef Aws::Utils::Outcome<DescribeCapacityManagerDataExportsResponse, EC2Error> DescribeCapacityManagerDataExportsOutcome;
20632069
typedef Aws::Utils::Outcome<DescribeCapacityReservationBillingRequestsResponse, EC2Error> DescribeCapacityReservationBillingRequestsOutcome;
2070+
typedef Aws::Utils::Outcome<DescribeCapacityReservationCancellationQuotesResponse, EC2Error>
2071+
DescribeCapacityReservationCancellationQuotesOutcome;
20642072
typedef Aws::Utils::Outcome<DescribeCapacityReservationFleetsResponse, EC2Error> DescribeCapacityReservationFleetsOutcome;
20652073
typedef Aws::Utils::Outcome<DescribeCapacityReservationTopologyResponse, EC2Error> DescribeCapacityReservationTopologyOutcome;
20662074
typedef Aws::Utils::Outcome<DescribeCapacityReservationsResponse, EC2Error> DescribeCapacityReservationsOutcome;
@@ -2637,6 +2645,7 @@ typedef std::future<CopyVolumesOutcome> CopyVolumesOutcomeCallable;
26372645
typedef std::future<CreateCapacityManagerDataExportOutcome> CreateCapacityManagerDataExportOutcomeCallable;
26382646
typedef std::future<CreateCapacityReservationOutcome> CreateCapacityReservationOutcomeCallable;
26392647
typedef std::future<CreateCapacityReservationBySplittingOutcome> CreateCapacityReservationBySplittingOutcomeCallable;
2648+
typedef std::future<CreateCapacityReservationCancellationQuoteOutcome> CreateCapacityReservationCancellationQuoteOutcomeCallable;
26402649
typedef std::future<CreateCapacityReservationFleetOutcome> CreateCapacityReservationFleetOutcomeCallable;
26412650
typedef std::future<CreateCarrierGatewayOutcome> CreateCarrierGatewayOutcomeCallable;
26422651
typedef std::future<CreateClientVpnEndpointOutcome> CreateClientVpnEndpointOutcomeCallable;
@@ -2860,6 +2869,7 @@ typedef std::future<DescribeCapacityBlockStatusOutcome> DescribeCapacityBlockSta
28602869
typedef std::future<DescribeCapacityBlocksOutcome> DescribeCapacityBlocksOutcomeCallable;
28612870
typedef std::future<DescribeCapacityManagerDataExportsOutcome> DescribeCapacityManagerDataExportsOutcomeCallable;
28622871
typedef std::future<DescribeCapacityReservationBillingRequestsOutcome> DescribeCapacityReservationBillingRequestsOutcomeCallable;
2872+
typedef std::future<DescribeCapacityReservationCancellationQuotesOutcome> DescribeCapacityReservationCancellationQuotesOutcomeCallable;
28632873
typedef std::future<DescribeCapacityReservationFleetsOutcome> DescribeCapacityReservationFleetsOutcomeCallable;
28642874
typedef std::future<DescribeCapacityReservationTopologyOutcome> DescribeCapacityReservationTopologyOutcomeCallable;
28652875
typedef std::future<DescribeCapacityReservationsOutcome> DescribeCapacityReservationsOutcomeCallable;
@@ -3572,6 +3582,10 @@ typedef std::function<void(const EC2Client*, const Model::CreateCapacityReservat
35723582
const Model::CreateCapacityReservationBySplittingOutcome&,
35733583
const std::shared_ptr<const Aws::Client::AsyncCallerContext>&)>
35743584
CreateCapacityReservationBySplittingResponseReceivedHandler;
3585+
typedef std::function<void(const EC2Client*, const Model::CreateCapacityReservationCancellationQuoteRequest&,
3586+
const Model::CreateCapacityReservationCancellationQuoteOutcome&,
3587+
const std::shared_ptr<const Aws::Client::AsyncCallerContext>&)>
3588+
CreateCapacityReservationCancellationQuoteResponseReceivedHandler;
35753589
typedef std::function<void(const EC2Client*, const Model::CreateCapacityReservationFleetRequest&,
35763590
const Model::CreateCapacityReservationFleetOutcome&,
35773591
const std::shared_ptr<const Aws::Client::AsyncCallerContext>&)>
@@ -4307,6 +4321,10 @@ typedef std::function<void(const EC2Client*, const Model::DescribeCapacityReserv
43074321
const Model::DescribeCapacityReservationBillingRequestsOutcome&,
43084322
const std::shared_ptr<const Aws::Client::AsyncCallerContext>&)>
43094323
DescribeCapacityReservationBillingRequestsResponseReceivedHandler;
4324+
typedef std::function<void(const EC2Client*, const Model::DescribeCapacityReservationCancellationQuotesRequest&,
4325+
const Model::DescribeCapacityReservationCancellationQuotesOutcome&,
4326+
const std::shared_ptr<const Aws::Client::AsyncCallerContext>&)>
4327+
DescribeCapacityReservationCancellationQuotesResponseReceivedHandler;
43104328
typedef std::function<void(const EC2Client*, const Model::DescribeCapacityReservationFleetsRequest&,
43114329
const Model::DescribeCapacityReservationFleetsOutcome&,
43124330
const std::shared_ptr<const Aws::Client::AsyncCallerContext>&)>

generated/src/aws-cpp-sdk-ec2/include/aws/ec2/model/AllocationType.h

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,7 @@
1010
namespace Aws {
1111
namespace EC2 {
1212
namespace Model {
13-
enum class AllocationType { NOT_SET, used, future };
13+
enum class AllocationType { NOT_SET, used, future, cancelling };
1414

1515
namespace AllocationTypeMapper {
1616
AWS_EC2_API AllocationType GetAllocationTypeForName(const Aws::String& name);
Lines changed: 22 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,22 @@
1+
/**
2+
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
3+
* SPDX-License-Identifier: Apache-2.0.
4+
*/
5+
6+
#pragma once
7+
#include <aws/core/utils/memory/stl/AWSString.h>
8+
#include <aws/ec2/EC2_EXPORTS.h>
9+
10+
namespace Aws {
11+
namespace EC2 {
12+
namespace Model {
13+
enum class ApplyCancellationCharges { NOT_SET, commitment_wind_down };
14+
15+
namespace ApplyCancellationChargesMapper {
16+
AWS_EC2_API ApplyCancellationCharges GetApplyCancellationChargesForName(const Aws::String& name);
17+
18+
AWS_EC2_API Aws::String GetNameForApplyCancellationCharges(ApplyCancellationCharges value);
19+
} // namespace ApplyCancellationChargesMapper
20+
} // namespace Model
21+
} // namespace EC2
22+
} // namespace Aws

generated/src/aws-cpp-sdk-ec2/include/aws/ec2/model/CancelCapacityReservationRequest.h

Lines changed: 47 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -7,6 +7,7 @@
77
#include <aws/core/utils/memory/stl/AWSString.h>
88
#include <aws/ec2/EC2Request.h>
99
#include <aws/ec2/EC2_EXPORTS.h>
10+
#include <aws/ec2/model/ApplyCancellationCharges.h>
1011

1112
#include <utility>
1213

@@ -68,12 +69,58 @@ class CancelCapacityReservationRequest : public EC2Request {
6869
return *this;
6970
}
7071
///@}
72+
73+
///@{
74+
/**
75+
* <p>Specifies the cancellation charge type to apply when cancelling a
76+
* future-dated Capacity Reservation during its commitment duration. Possible
77+
* values include <code>commitment-wind-down</code>, which continues billing for
78+
* the remaining commitment duration without delivering capacity.</p>
79+
*/
80+
inline ApplyCancellationCharges GetApplyCancellationCharges() const { return m_applyCancellationCharges; }
81+
inline bool ApplyCancellationChargesHasBeenSet() const { return m_applyCancellationChargesHasBeenSet; }
82+
inline void SetApplyCancellationCharges(ApplyCancellationCharges value) {
83+
m_applyCancellationChargesHasBeenSet = true;
84+
m_applyCancellationCharges = value;
85+
}
86+
inline CancelCapacityReservationRequest& WithApplyCancellationCharges(ApplyCancellationCharges value) {
87+
SetApplyCancellationCharges(value);
88+
return *this;
89+
}
90+
///@}
91+
92+
///@{
93+
/**
94+
* <p>The ID of the cancellation quote to use for the cancellation. You can
95+
* generate a cancellation quote by using the
96+
* <code>CreateCapacityReservationCancellationQuote</code> action. The cancellation
97+
* quote must be in an <code>active</code> state.</p>
98+
*/
99+
inline const Aws::String& GetQuoteId() const { return m_quoteId; }
100+
inline bool QuoteIdHasBeenSet() const { return m_quoteIdHasBeenSet; }
101+
template <typename QuoteIdT = Aws::String>
102+
void SetQuoteId(QuoteIdT&& value) {
103+
m_quoteIdHasBeenSet = true;
104+
m_quoteId = std::forward<QuoteIdT>(value);
105+
}
106+
template <typename QuoteIdT = Aws::String>
107+
CancelCapacityReservationRequest& WithQuoteId(QuoteIdT&& value) {
108+
SetQuoteId(std::forward<QuoteIdT>(value));
109+
return *this;
110+
}
111+
///@}
71112
private:
72113
Aws::String m_capacityReservationId;
73114

74115
bool m_dryRun{false};
116+
117+
ApplyCancellationCharges m_applyCancellationCharges{ApplyCancellationCharges::NOT_SET};
118+
119+
Aws::String m_quoteId;
75120
bool m_capacityReservationIdHasBeenSet = false;
76121
bool m_dryRunHasBeenSet = false;
122+
bool m_applyCancellationChargesHasBeenSet = false;
123+
bool m_quoteIdHasBeenSet = false;
77124
};
78125

79126
} // namespace Model

0 commit comments

Comments
 (0)