1 /**
2  * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
3  * SPDX-License-Identifier: Apache-2.0.
4  */
5 
6 #include <aws/core/utils/Outcome.h>
7 #include <aws/core/auth/AWSAuthSigner.h>
8 #include <aws/core/client/CoreErrors.h>
9 #include <aws/core/client/RetryStrategy.h>
10 #include <aws/core/http/HttpClient.h>
11 #include <aws/core/http/HttpResponse.h>
12 #include <aws/core/http/HttpClientFactory.h>
13 #include <aws/core/auth/AWSCredentialsProviderChain.h>
14 #include <aws/core/utils/json/JsonSerializer.h>
15 #include <aws/core/utils/memory/stl/AWSStringStream.h>
16 #include <aws/core/utils/threading/Executor.h>
17 #include <aws/core/utils/DNS.h>
18 #include <aws/core/utils/logging/LogMacros.h>
19 
20 #include <aws/organizations/OrganizationsClient.h>
21 #include <aws/organizations/OrganizationsEndpoint.h>
22 #include <aws/organizations/OrganizationsErrorMarshaller.h>
23 #include <aws/organizations/model/AcceptHandshakeRequest.h>
24 #include <aws/organizations/model/AttachPolicyRequest.h>
25 #include <aws/organizations/model/CancelHandshakeRequest.h>
26 #include <aws/organizations/model/CreateAccountRequest.h>
27 #include <aws/organizations/model/CreateGovCloudAccountRequest.h>
28 #include <aws/organizations/model/CreateOrganizationRequest.h>
29 #include <aws/organizations/model/CreateOrganizationalUnitRequest.h>
30 #include <aws/organizations/model/CreatePolicyRequest.h>
31 #include <aws/organizations/model/DeclineHandshakeRequest.h>
32 #include <aws/organizations/model/DeleteOrganizationalUnitRequest.h>
33 #include <aws/organizations/model/DeletePolicyRequest.h>
34 #include <aws/organizations/model/DeregisterDelegatedAdministratorRequest.h>
35 #include <aws/organizations/model/DescribeAccountRequest.h>
36 #include <aws/organizations/model/DescribeCreateAccountStatusRequest.h>
37 #include <aws/organizations/model/DescribeEffectivePolicyRequest.h>
38 #include <aws/organizations/model/DescribeHandshakeRequest.h>
39 #include <aws/organizations/model/DescribeOrganizationalUnitRequest.h>
40 #include <aws/organizations/model/DescribePolicyRequest.h>
41 #include <aws/organizations/model/DetachPolicyRequest.h>
42 #include <aws/organizations/model/DisableAWSServiceAccessRequest.h>
43 #include <aws/organizations/model/DisablePolicyTypeRequest.h>
44 #include <aws/organizations/model/EnableAWSServiceAccessRequest.h>
45 #include <aws/organizations/model/EnableAllFeaturesRequest.h>
46 #include <aws/organizations/model/EnablePolicyTypeRequest.h>
47 #include <aws/organizations/model/InviteAccountToOrganizationRequest.h>
48 #include <aws/organizations/model/ListAWSServiceAccessForOrganizationRequest.h>
49 #include <aws/organizations/model/ListAccountsRequest.h>
50 #include <aws/organizations/model/ListAccountsForParentRequest.h>
51 #include <aws/organizations/model/ListChildrenRequest.h>
52 #include <aws/organizations/model/ListCreateAccountStatusRequest.h>
53 #include <aws/organizations/model/ListDelegatedAdministratorsRequest.h>
54 #include <aws/organizations/model/ListDelegatedServicesForAccountRequest.h>
55 #include <aws/organizations/model/ListHandshakesForAccountRequest.h>
56 #include <aws/organizations/model/ListHandshakesForOrganizationRequest.h>
57 #include <aws/organizations/model/ListOrganizationalUnitsForParentRequest.h>
58 #include <aws/organizations/model/ListParentsRequest.h>
59 #include <aws/organizations/model/ListPoliciesRequest.h>
60 #include <aws/organizations/model/ListPoliciesForTargetRequest.h>
61 #include <aws/organizations/model/ListRootsRequest.h>
62 #include <aws/organizations/model/ListTagsForResourceRequest.h>
63 #include <aws/organizations/model/ListTargetsForPolicyRequest.h>
64 #include <aws/organizations/model/MoveAccountRequest.h>
65 #include <aws/organizations/model/RegisterDelegatedAdministratorRequest.h>
66 #include <aws/organizations/model/RemoveAccountFromOrganizationRequest.h>
67 #include <aws/organizations/model/TagResourceRequest.h>
68 #include <aws/organizations/model/UntagResourceRequest.h>
69 #include <aws/organizations/model/UpdateOrganizationalUnitRequest.h>
70 #include <aws/organizations/model/UpdatePolicyRequest.h>
71 
72 using namespace Aws;
73 using namespace Aws::Auth;
74 using namespace Aws::Client;
75 using namespace Aws::Organizations;
76 using namespace Aws::Organizations::Model;
77 using namespace Aws::Http;
78 using namespace Aws::Utils::Json;
79 
80 static const char* SERVICE_NAME = "organizations";
81 static const char* ALLOCATION_TAG = "OrganizationsClient";
82 
83 
OrganizationsClient(const Client::ClientConfiguration & clientConfiguration)84 OrganizationsClient::OrganizationsClient(const Client::ClientConfiguration& clientConfiguration) :
85   BASECLASS(clientConfiguration,
86     Aws::MakeShared<AWSAuthV4Signer>(ALLOCATION_TAG, Aws::MakeShared<DefaultAWSCredentialsProviderChain>(ALLOCATION_TAG),
87         SERVICE_NAME, Aws::Region::ComputeSignerRegion(clientConfiguration.region)),
88     Aws::MakeShared<OrganizationsErrorMarshaller>(ALLOCATION_TAG)),
89     m_executor(clientConfiguration.executor)
90 {
91   init(clientConfiguration);
92 }
93 
OrganizationsClient(const AWSCredentials & credentials,const Client::ClientConfiguration & clientConfiguration)94 OrganizationsClient::OrganizationsClient(const AWSCredentials& credentials, const Client::ClientConfiguration& clientConfiguration) :
95   BASECLASS(clientConfiguration,
96     Aws::MakeShared<AWSAuthV4Signer>(ALLOCATION_TAG, Aws::MakeShared<SimpleAWSCredentialsProvider>(ALLOCATION_TAG, credentials),
97          SERVICE_NAME, Aws::Region::ComputeSignerRegion(clientConfiguration.region)),
98     Aws::MakeShared<OrganizationsErrorMarshaller>(ALLOCATION_TAG)),
99     m_executor(clientConfiguration.executor)
100 {
101   init(clientConfiguration);
102 }
103 
OrganizationsClient(const std::shared_ptr<AWSCredentialsProvider> & credentialsProvider,const Client::ClientConfiguration & clientConfiguration)104 OrganizationsClient::OrganizationsClient(const std::shared_ptr<AWSCredentialsProvider>& credentialsProvider,
105   const Client::ClientConfiguration& clientConfiguration) :
106   BASECLASS(clientConfiguration,
107     Aws::MakeShared<AWSAuthV4Signer>(ALLOCATION_TAG, credentialsProvider,
108          SERVICE_NAME, Aws::Region::ComputeSignerRegion(clientConfiguration.region)),
109     Aws::MakeShared<OrganizationsErrorMarshaller>(ALLOCATION_TAG)),
110     m_executor(clientConfiguration.executor)
111 {
112   init(clientConfiguration);
113 }
114 
~OrganizationsClient()115 OrganizationsClient::~OrganizationsClient()
116 {
117 }
118 
init(const Client::ClientConfiguration & config)119 void OrganizationsClient::init(const Client::ClientConfiguration& config)
120 {
121   SetServiceClientName("Organizations");
122   m_configScheme = SchemeMapper::ToString(config.scheme);
123   if (config.endpointOverride.empty())
124   {
125       m_uri = m_configScheme + "://" + OrganizationsEndpoint::ForRegion(config.region, config.useDualStack);
126   }
127   else
128   {
129       OverrideEndpoint(config.endpointOverride);
130   }
131 }
132 
OverrideEndpoint(const Aws::String & endpoint)133 void OrganizationsClient::OverrideEndpoint(const Aws::String& endpoint)
134 {
135   if (endpoint.compare(0, 7, "http://") == 0 || endpoint.compare(0, 8, "https://") == 0)
136   {
137       m_uri = endpoint;
138   }
139   else
140   {
141       m_uri = m_configScheme + "://" + endpoint;
142   }
143 }
144 
AcceptHandshake(const AcceptHandshakeRequest & request) const145 AcceptHandshakeOutcome OrganizationsClient::AcceptHandshake(const AcceptHandshakeRequest& request) const
146 {
147   Aws::Http::URI uri = m_uri;
148   return AcceptHandshakeOutcome(MakeRequest(uri, request, Aws::Http::HttpMethod::HTTP_POST, Aws::Auth::SIGV4_SIGNER));
149 }
150 
AcceptHandshakeCallable(const AcceptHandshakeRequest & request) const151 AcceptHandshakeOutcomeCallable OrganizationsClient::AcceptHandshakeCallable(const AcceptHandshakeRequest& request) const
152 {
153   auto task = Aws::MakeShared< std::packaged_task< AcceptHandshakeOutcome() > >(ALLOCATION_TAG, [this, request](){ return this->AcceptHandshake(request); } );
154   auto packagedFunction = [task]() { (*task)(); };
155   m_executor->Submit(packagedFunction);
156   return task->get_future();
157 }
158 
AcceptHandshakeAsync(const AcceptHandshakeRequest & request,const AcceptHandshakeResponseReceivedHandler & handler,const std::shared_ptr<const Aws::Client::AsyncCallerContext> & context) const159 void OrganizationsClient::AcceptHandshakeAsync(const AcceptHandshakeRequest& request, const AcceptHandshakeResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const
160 {
161   m_executor->Submit( [this, request, handler, context](){ this->AcceptHandshakeAsyncHelper( request, handler, context ); } );
162 }
163 
AcceptHandshakeAsyncHelper(const AcceptHandshakeRequest & request,const AcceptHandshakeResponseReceivedHandler & handler,const std::shared_ptr<const Aws::Client::AsyncCallerContext> & context) const164 void OrganizationsClient::AcceptHandshakeAsyncHelper(const AcceptHandshakeRequest& request, const AcceptHandshakeResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const
165 {
166   handler(this, request, AcceptHandshake(request), context);
167 }
168 
AttachPolicy(const AttachPolicyRequest & request) const169 AttachPolicyOutcome OrganizationsClient::AttachPolicy(const AttachPolicyRequest& request) const
170 {
171   Aws::Http::URI uri = m_uri;
172   return AttachPolicyOutcome(MakeRequest(uri, request, Aws::Http::HttpMethod::HTTP_POST, Aws::Auth::SIGV4_SIGNER));
173 }
174 
AttachPolicyCallable(const AttachPolicyRequest & request) const175 AttachPolicyOutcomeCallable OrganizationsClient::AttachPolicyCallable(const AttachPolicyRequest& request) const
176 {
177   auto task = Aws::MakeShared< std::packaged_task< AttachPolicyOutcome() > >(ALLOCATION_TAG, [this, request](){ return this->AttachPolicy(request); } );
178   auto packagedFunction = [task]() { (*task)(); };
179   m_executor->Submit(packagedFunction);
180   return task->get_future();
181 }
182 
AttachPolicyAsync(const AttachPolicyRequest & request,const AttachPolicyResponseReceivedHandler & handler,const std::shared_ptr<const Aws::Client::AsyncCallerContext> & context) const183 void OrganizationsClient::AttachPolicyAsync(const AttachPolicyRequest& request, const AttachPolicyResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const
184 {
185   m_executor->Submit( [this, request, handler, context](){ this->AttachPolicyAsyncHelper( request, handler, context ); } );
186 }
187 
AttachPolicyAsyncHelper(const AttachPolicyRequest & request,const AttachPolicyResponseReceivedHandler & handler,const std::shared_ptr<const Aws::Client::AsyncCallerContext> & context) const188 void OrganizationsClient::AttachPolicyAsyncHelper(const AttachPolicyRequest& request, const AttachPolicyResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const
189 {
190   handler(this, request, AttachPolicy(request), context);
191 }
192 
CancelHandshake(const CancelHandshakeRequest & request) const193 CancelHandshakeOutcome OrganizationsClient::CancelHandshake(const CancelHandshakeRequest& request) const
194 {
195   Aws::Http::URI uri = m_uri;
196   return CancelHandshakeOutcome(MakeRequest(uri, request, Aws::Http::HttpMethod::HTTP_POST, Aws::Auth::SIGV4_SIGNER));
197 }
198 
CancelHandshakeCallable(const CancelHandshakeRequest & request) const199 CancelHandshakeOutcomeCallable OrganizationsClient::CancelHandshakeCallable(const CancelHandshakeRequest& request) const
200 {
201   auto task = Aws::MakeShared< std::packaged_task< CancelHandshakeOutcome() > >(ALLOCATION_TAG, [this, request](){ return this->CancelHandshake(request); } );
202   auto packagedFunction = [task]() { (*task)(); };
203   m_executor->Submit(packagedFunction);
204   return task->get_future();
205 }
206 
CancelHandshakeAsync(const CancelHandshakeRequest & request,const CancelHandshakeResponseReceivedHandler & handler,const std::shared_ptr<const Aws::Client::AsyncCallerContext> & context) const207 void OrganizationsClient::CancelHandshakeAsync(const CancelHandshakeRequest& request, const CancelHandshakeResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const
208 {
209   m_executor->Submit( [this, request, handler, context](){ this->CancelHandshakeAsyncHelper( request, handler, context ); } );
210 }
211 
CancelHandshakeAsyncHelper(const CancelHandshakeRequest & request,const CancelHandshakeResponseReceivedHandler & handler,const std::shared_ptr<const Aws::Client::AsyncCallerContext> & context) const212 void OrganizationsClient::CancelHandshakeAsyncHelper(const CancelHandshakeRequest& request, const CancelHandshakeResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const
213 {
214   handler(this, request, CancelHandshake(request), context);
215 }
216 
CreateAccount(const CreateAccountRequest & request) const217 CreateAccountOutcome OrganizationsClient::CreateAccount(const CreateAccountRequest& request) const
218 {
219   Aws::Http::URI uri = m_uri;
220   return CreateAccountOutcome(MakeRequest(uri, request, Aws::Http::HttpMethod::HTTP_POST, Aws::Auth::SIGV4_SIGNER));
221 }
222 
CreateAccountCallable(const CreateAccountRequest & request) const223 CreateAccountOutcomeCallable OrganizationsClient::CreateAccountCallable(const CreateAccountRequest& request) const
224 {
225   auto task = Aws::MakeShared< std::packaged_task< CreateAccountOutcome() > >(ALLOCATION_TAG, [this, request](){ return this->CreateAccount(request); } );
226   auto packagedFunction = [task]() { (*task)(); };
227   m_executor->Submit(packagedFunction);
228   return task->get_future();
229 }
230 
CreateAccountAsync(const CreateAccountRequest & request,const CreateAccountResponseReceivedHandler & handler,const std::shared_ptr<const Aws::Client::AsyncCallerContext> & context) const231 void OrganizationsClient::CreateAccountAsync(const CreateAccountRequest& request, const CreateAccountResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const
232 {
233   m_executor->Submit( [this, request, handler, context](){ this->CreateAccountAsyncHelper( request, handler, context ); } );
234 }
235 
CreateAccountAsyncHelper(const CreateAccountRequest & request,const CreateAccountResponseReceivedHandler & handler,const std::shared_ptr<const Aws::Client::AsyncCallerContext> & context) const236 void OrganizationsClient::CreateAccountAsyncHelper(const CreateAccountRequest& request, const CreateAccountResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const
237 {
238   handler(this, request, CreateAccount(request), context);
239 }
240 
CreateGovCloudAccount(const CreateGovCloudAccountRequest & request) const241 CreateGovCloudAccountOutcome OrganizationsClient::CreateGovCloudAccount(const CreateGovCloudAccountRequest& request) const
242 {
243   Aws::Http::URI uri = m_uri;
244   return CreateGovCloudAccountOutcome(MakeRequest(uri, request, Aws::Http::HttpMethod::HTTP_POST, Aws::Auth::SIGV4_SIGNER));
245 }
246 
CreateGovCloudAccountCallable(const CreateGovCloudAccountRequest & request) const247 CreateGovCloudAccountOutcomeCallable OrganizationsClient::CreateGovCloudAccountCallable(const CreateGovCloudAccountRequest& request) const
248 {
249   auto task = Aws::MakeShared< std::packaged_task< CreateGovCloudAccountOutcome() > >(ALLOCATION_TAG, [this, request](){ return this->CreateGovCloudAccount(request); } );
250   auto packagedFunction = [task]() { (*task)(); };
251   m_executor->Submit(packagedFunction);
252   return task->get_future();
253 }
254 
CreateGovCloudAccountAsync(const CreateGovCloudAccountRequest & request,const CreateGovCloudAccountResponseReceivedHandler & handler,const std::shared_ptr<const Aws::Client::AsyncCallerContext> & context) const255 void OrganizationsClient::CreateGovCloudAccountAsync(const CreateGovCloudAccountRequest& request, const CreateGovCloudAccountResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const
256 {
257   m_executor->Submit( [this, request, handler, context](){ this->CreateGovCloudAccountAsyncHelper( request, handler, context ); } );
258 }
259 
CreateGovCloudAccountAsyncHelper(const CreateGovCloudAccountRequest & request,const CreateGovCloudAccountResponseReceivedHandler & handler,const std::shared_ptr<const Aws::Client::AsyncCallerContext> & context) const260 void OrganizationsClient::CreateGovCloudAccountAsyncHelper(const CreateGovCloudAccountRequest& request, const CreateGovCloudAccountResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const
261 {
262   handler(this, request, CreateGovCloudAccount(request), context);
263 }
264 
CreateOrganization(const CreateOrganizationRequest & request) const265 CreateOrganizationOutcome OrganizationsClient::CreateOrganization(const CreateOrganizationRequest& request) const
266 {
267   Aws::Http::URI uri = m_uri;
268   return CreateOrganizationOutcome(MakeRequest(uri, request, Aws::Http::HttpMethod::HTTP_POST, Aws::Auth::SIGV4_SIGNER));
269 }
270 
CreateOrganizationCallable(const CreateOrganizationRequest & request) const271 CreateOrganizationOutcomeCallable OrganizationsClient::CreateOrganizationCallable(const CreateOrganizationRequest& request) const
272 {
273   auto task = Aws::MakeShared< std::packaged_task< CreateOrganizationOutcome() > >(ALLOCATION_TAG, [this, request](){ return this->CreateOrganization(request); } );
274   auto packagedFunction = [task]() { (*task)(); };
275   m_executor->Submit(packagedFunction);
276   return task->get_future();
277 }
278 
CreateOrganizationAsync(const CreateOrganizationRequest & request,const CreateOrganizationResponseReceivedHandler & handler,const std::shared_ptr<const Aws::Client::AsyncCallerContext> & context) const279 void OrganizationsClient::CreateOrganizationAsync(const CreateOrganizationRequest& request, const CreateOrganizationResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const
280 {
281   m_executor->Submit( [this, request, handler, context](){ this->CreateOrganizationAsyncHelper( request, handler, context ); } );
282 }
283 
CreateOrganizationAsyncHelper(const CreateOrganizationRequest & request,const CreateOrganizationResponseReceivedHandler & handler,const std::shared_ptr<const Aws::Client::AsyncCallerContext> & context) const284 void OrganizationsClient::CreateOrganizationAsyncHelper(const CreateOrganizationRequest& request, const CreateOrganizationResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const
285 {
286   handler(this, request, CreateOrganization(request), context);
287 }
288 
CreateOrganizationalUnit(const CreateOrganizationalUnitRequest & request) const289 CreateOrganizationalUnitOutcome OrganizationsClient::CreateOrganizationalUnit(const CreateOrganizationalUnitRequest& request) const
290 {
291   Aws::Http::URI uri = m_uri;
292   return CreateOrganizationalUnitOutcome(MakeRequest(uri, request, Aws::Http::HttpMethod::HTTP_POST, Aws::Auth::SIGV4_SIGNER));
293 }
294 
CreateOrganizationalUnitCallable(const CreateOrganizationalUnitRequest & request) const295 CreateOrganizationalUnitOutcomeCallable OrganizationsClient::CreateOrganizationalUnitCallable(const CreateOrganizationalUnitRequest& request) const
296 {
297   auto task = Aws::MakeShared< std::packaged_task< CreateOrganizationalUnitOutcome() > >(ALLOCATION_TAG, [this, request](){ return this->CreateOrganizationalUnit(request); } );
298   auto packagedFunction = [task]() { (*task)(); };
299   m_executor->Submit(packagedFunction);
300   return task->get_future();
301 }
302 
CreateOrganizationalUnitAsync(const CreateOrganizationalUnitRequest & request,const CreateOrganizationalUnitResponseReceivedHandler & handler,const std::shared_ptr<const Aws::Client::AsyncCallerContext> & context) const303 void OrganizationsClient::CreateOrganizationalUnitAsync(const CreateOrganizationalUnitRequest& request, const CreateOrganizationalUnitResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const
304 {
305   m_executor->Submit( [this, request, handler, context](){ this->CreateOrganizationalUnitAsyncHelper( request, handler, context ); } );
306 }
307 
CreateOrganizationalUnitAsyncHelper(const CreateOrganizationalUnitRequest & request,const CreateOrganizationalUnitResponseReceivedHandler & handler,const std::shared_ptr<const Aws::Client::AsyncCallerContext> & context) const308 void OrganizationsClient::CreateOrganizationalUnitAsyncHelper(const CreateOrganizationalUnitRequest& request, const CreateOrganizationalUnitResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const
309 {
310   handler(this, request, CreateOrganizationalUnit(request), context);
311 }
312 
CreatePolicy(const CreatePolicyRequest & request) const313 CreatePolicyOutcome OrganizationsClient::CreatePolicy(const CreatePolicyRequest& request) const
314 {
315   Aws::Http::URI uri = m_uri;
316   return CreatePolicyOutcome(MakeRequest(uri, request, Aws::Http::HttpMethod::HTTP_POST, Aws::Auth::SIGV4_SIGNER));
317 }
318 
CreatePolicyCallable(const CreatePolicyRequest & request) const319 CreatePolicyOutcomeCallable OrganizationsClient::CreatePolicyCallable(const CreatePolicyRequest& request) const
320 {
321   auto task = Aws::MakeShared< std::packaged_task< CreatePolicyOutcome() > >(ALLOCATION_TAG, [this, request](){ return this->CreatePolicy(request); } );
322   auto packagedFunction = [task]() { (*task)(); };
323   m_executor->Submit(packagedFunction);
324   return task->get_future();
325 }
326 
CreatePolicyAsync(const CreatePolicyRequest & request,const CreatePolicyResponseReceivedHandler & handler,const std::shared_ptr<const Aws::Client::AsyncCallerContext> & context) const327 void OrganizationsClient::CreatePolicyAsync(const CreatePolicyRequest& request, const CreatePolicyResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const
328 {
329   m_executor->Submit( [this, request, handler, context](){ this->CreatePolicyAsyncHelper( request, handler, context ); } );
330 }
331 
CreatePolicyAsyncHelper(const CreatePolicyRequest & request,const CreatePolicyResponseReceivedHandler & handler,const std::shared_ptr<const Aws::Client::AsyncCallerContext> & context) const332 void OrganizationsClient::CreatePolicyAsyncHelper(const CreatePolicyRequest& request, const CreatePolicyResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const
333 {
334   handler(this, request, CreatePolicy(request), context);
335 }
336 
DeclineHandshake(const DeclineHandshakeRequest & request) const337 DeclineHandshakeOutcome OrganizationsClient::DeclineHandshake(const DeclineHandshakeRequest& request) const
338 {
339   Aws::Http::URI uri = m_uri;
340   return DeclineHandshakeOutcome(MakeRequest(uri, request, Aws::Http::HttpMethod::HTTP_POST, Aws::Auth::SIGV4_SIGNER));
341 }
342 
DeclineHandshakeCallable(const DeclineHandshakeRequest & request) const343 DeclineHandshakeOutcomeCallable OrganizationsClient::DeclineHandshakeCallable(const DeclineHandshakeRequest& request) const
344 {
345   auto task = Aws::MakeShared< std::packaged_task< DeclineHandshakeOutcome() > >(ALLOCATION_TAG, [this, request](){ return this->DeclineHandshake(request); } );
346   auto packagedFunction = [task]() { (*task)(); };
347   m_executor->Submit(packagedFunction);
348   return task->get_future();
349 }
350 
DeclineHandshakeAsync(const DeclineHandshakeRequest & request,const DeclineHandshakeResponseReceivedHandler & handler,const std::shared_ptr<const Aws::Client::AsyncCallerContext> & context) const351 void OrganizationsClient::DeclineHandshakeAsync(const DeclineHandshakeRequest& request, const DeclineHandshakeResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const
352 {
353   m_executor->Submit( [this, request, handler, context](){ this->DeclineHandshakeAsyncHelper( request, handler, context ); } );
354 }
355 
DeclineHandshakeAsyncHelper(const DeclineHandshakeRequest & request,const DeclineHandshakeResponseReceivedHandler & handler,const std::shared_ptr<const Aws::Client::AsyncCallerContext> & context) const356 void OrganizationsClient::DeclineHandshakeAsyncHelper(const DeclineHandshakeRequest& request, const DeclineHandshakeResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const
357 {
358   handler(this, request, DeclineHandshake(request), context);
359 }
360 
DeleteOrganization() const361 DeleteOrganizationOutcome OrganizationsClient::DeleteOrganization() const
362 {
363   Aws::StringStream ss;
364   ss << m_uri << "/";
365   return DeleteOrganizationOutcome(MakeRequest(ss.str(), Aws::Http::HttpMethod::HTTP_POST, Aws::Auth::SIGV4_SIGNER, "DeleteOrganization"));
366 }
367 
DeleteOrganizationCallable() const368 DeleteOrganizationOutcomeCallable OrganizationsClient::DeleteOrganizationCallable() const
369 {
370   auto task = Aws::MakeShared< std::packaged_task< DeleteOrganizationOutcome() > >(ALLOCATION_TAG, [this](){ return this->DeleteOrganization(); } );
371   auto packagedFunction = [task]() { (*task)(); };
372   m_executor->Submit(packagedFunction);
373   return task->get_future();
374 }
375 
DeleteOrganizationAsync(const DeleteOrganizationResponseReceivedHandler & handler,const std::shared_ptr<const Aws::Client::AsyncCallerContext> & context) const376 void OrganizationsClient::DeleteOrganizationAsync(const DeleteOrganizationResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const
377 {
378   m_executor->Submit( [this, handler, context](){ this->DeleteOrganizationAsyncHelper( handler, context ); } );
379 }
380 
DeleteOrganizationAsyncHelper(const DeleteOrganizationResponseReceivedHandler & handler,const std::shared_ptr<const Aws::Client::AsyncCallerContext> & context) const381 void OrganizationsClient::DeleteOrganizationAsyncHelper(const DeleteOrganizationResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const
382 {
383   handler(this, DeleteOrganization(), context);
384 }
385 
DeleteOrganizationalUnit(const DeleteOrganizationalUnitRequest & request) const386 DeleteOrganizationalUnitOutcome OrganizationsClient::DeleteOrganizationalUnit(const DeleteOrganizationalUnitRequest& request) const
387 {
388   Aws::Http::URI uri = m_uri;
389   return DeleteOrganizationalUnitOutcome(MakeRequest(uri, request, Aws::Http::HttpMethod::HTTP_POST, Aws::Auth::SIGV4_SIGNER));
390 }
391 
DeleteOrganizationalUnitCallable(const DeleteOrganizationalUnitRequest & request) const392 DeleteOrganizationalUnitOutcomeCallable OrganizationsClient::DeleteOrganizationalUnitCallable(const DeleteOrganizationalUnitRequest& request) const
393 {
394   auto task = Aws::MakeShared< std::packaged_task< DeleteOrganizationalUnitOutcome() > >(ALLOCATION_TAG, [this, request](){ return this->DeleteOrganizationalUnit(request); } );
395   auto packagedFunction = [task]() { (*task)(); };
396   m_executor->Submit(packagedFunction);
397   return task->get_future();
398 }
399 
DeleteOrganizationalUnitAsync(const DeleteOrganizationalUnitRequest & request,const DeleteOrganizationalUnitResponseReceivedHandler & handler,const std::shared_ptr<const Aws::Client::AsyncCallerContext> & context) const400 void OrganizationsClient::DeleteOrganizationalUnitAsync(const DeleteOrganizationalUnitRequest& request, const DeleteOrganizationalUnitResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const
401 {
402   m_executor->Submit( [this, request, handler, context](){ this->DeleteOrganizationalUnitAsyncHelper( request, handler, context ); } );
403 }
404 
DeleteOrganizationalUnitAsyncHelper(const DeleteOrganizationalUnitRequest & request,const DeleteOrganizationalUnitResponseReceivedHandler & handler,const std::shared_ptr<const Aws::Client::AsyncCallerContext> & context) const405 void OrganizationsClient::DeleteOrganizationalUnitAsyncHelper(const DeleteOrganizationalUnitRequest& request, const DeleteOrganizationalUnitResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const
406 {
407   handler(this, request, DeleteOrganizationalUnit(request), context);
408 }
409 
DeletePolicy(const DeletePolicyRequest & request) const410 DeletePolicyOutcome OrganizationsClient::DeletePolicy(const DeletePolicyRequest& request) const
411 {
412   Aws::Http::URI uri = m_uri;
413   return DeletePolicyOutcome(MakeRequest(uri, request, Aws::Http::HttpMethod::HTTP_POST, Aws::Auth::SIGV4_SIGNER));
414 }
415 
DeletePolicyCallable(const DeletePolicyRequest & request) const416 DeletePolicyOutcomeCallable OrganizationsClient::DeletePolicyCallable(const DeletePolicyRequest& request) const
417 {
418   auto task = Aws::MakeShared< std::packaged_task< DeletePolicyOutcome() > >(ALLOCATION_TAG, [this, request](){ return this->DeletePolicy(request); } );
419   auto packagedFunction = [task]() { (*task)(); };
420   m_executor->Submit(packagedFunction);
421   return task->get_future();
422 }
423 
DeletePolicyAsync(const DeletePolicyRequest & request,const DeletePolicyResponseReceivedHandler & handler,const std::shared_ptr<const Aws::Client::AsyncCallerContext> & context) const424 void OrganizationsClient::DeletePolicyAsync(const DeletePolicyRequest& request, const DeletePolicyResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const
425 {
426   m_executor->Submit( [this, request, handler, context](){ this->DeletePolicyAsyncHelper( request, handler, context ); } );
427 }
428 
DeletePolicyAsyncHelper(const DeletePolicyRequest & request,const DeletePolicyResponseReceivedHandler & handler,const std::shared_ptr<const Aws::Client::AsyncCallerContext> & context) const429 void OrganizationsClient::DeletePolicyAsyncHelper(const DeletePolicyRequest& request, const DeletePolicyResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const
430 {
431   handler(this, request, DeletePolicy(request), context);
432 }
433 
DeregisterDelegatedAdministrator(const DeregisterDelegatedAdministratorRequest & request) const434 DeregisterDelegatedAdministratorOutcome OrganizationsClient::DeregisterDelegatedAdministrator(const DeregisterDelegatedAdministratorRequest& request) const
435 {
436   Aws::Http::URI uri = m_uri;
437   return DeregisterDelegatedAdministratorOutcome(MakeRequest(uri, request, Aws::Http::HttpMethod::HTTP_POST, Aws::Auth::SIGV4_SIGNER));
438 }
439 
DeregisterDelegatedAdministratorCallable(const DeregisterDelegatedAdministratorRequest & request) const440 DeregisterDelegatedAdministratorOutcomeCallable OrganizationsClient::DeregisterDelegatedAdministratorCallable(const DeregisterDelegatedAdministratorRequest& request) const
441 {
442   auto task = Aws::MakeShared< std::packaged_task< DeregisterDelegatedAdministratorOutcome() > >(ALLOCATION_TAG, [this, request](){ return this->DeregisterDelegatedAdministrator(request); } );
443   auto packagedFunction = [task]() { (*task)(); };
444   m_executor->Submit(packagedFunction);
445   return task->get_future();
446 }
447 
DeregisterDelegatedAdministratorAsync(const DeregisterDelegatedAdministratorRequest & request,const DeregisterDelegatedAdministratorResponseReceivedHandler & handler,const std::shared_ptr<const Aws::Client::AsyncCallerContext> & context) const448 void OrganizationsClient::DeregisterDelegatedAdministratorAsync(const DeregisterDelegatedAdministratorRequest& request, const DeregisterDelegatedAdministratorResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const
449 {
450   m_executor->Submit( [this, request, handler, context](){ this->DeregisterDelegatedAdministratorAsyncHelper( request, handler, context ); } );
451 }
452 
DeregisterDelegatedAdministratorAsyncHelper(const DeregisterDelegatedAdministratorRequest & request,const DeregisterDelegatedAdministratorResponseReceivedHandler & handler,const std::shared_ptr<const Aws::Client::AsyncCallerContext> & context) const453 void OrganizationsClient::DeregisterDelegatedAdministratorAsyncHelper(const DeregisterDelegatedAdministratorRequest& request, const DeregisterDelegatedAdministratorResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const
454 {
455   handler(this, request, DeregisterDelegatedAdministrator(request), context);
456 }
457 
DescribeAccount(const DescribeAccountRequest & request) const458 DescribeAccountOutcome OrganizationsClient::DescribeAccount(const DescribeAccountRequest& request) const
459 {
460   Aws::Http::URI uri = m_uri;
461   return DescribeAccountOutcome(MakeRequest(uri, request, Aws::Http::HttpMethod::HTTP_POST, Aws::Auth::SIGV4_SIGNER));
462 }
463 
DescribeAccountCallable(const DescribeAccountRequest & request) const464 DescribeAccountOutcomeCallable OrganizationsClient::DescribeAccountCallable(const DescribeAccountRequest& request) const
465 {
466   auto task = Aws::MakeShared< std::packaged_task< DescribeAccountOutcome() > >(ALLOCATION_TAG, [this, request](){ return this->DescribeAccount(request); } );
467   auto packagedFunction = [task]() { (*task)(); };
468   m_executor->Submit(packagedFunction);
469   return task->get_future();
470 }
471 
DescribeAccountAsync(const DescribeAccountRequest & request,const DescribeAccountResponseReceivedHandler & handler,const std::shared_ptr<const Aws::Client::AsyncCallerContext> & context) const472 void OrganizationsClient::DescribeAccountAsync(const DescribeAccountRequest& request, const DescribeAccountResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const
473 {
474   m_executor->Submit( [this, request, handler, context](){ this->DescribeAccountAsyncHelper( request, handler, context ); } );
475 }
476 
DescribeAccountAsyncHelper(const DescribeAccountRequest & request,const DescribeAccountResponseReceivedHandler & handler,const std::shared_ptr<const Aws::Client::AsyncCallerContext> & context) const477 void OrganizationsClient::DescribeAccountAsyncHelper(const DescribeAccountRequest& request, const DescribeAccountResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const
478 {
479   handler(this, request, DescribeAccount(request), context);
480 }
481 
DescribeCreateAccountStatus(const DescribeCreateAccountStatusRequest & request) const482 DescribeCreateAccountStatusOutcome OrganizationsClient::DescribeCreateAccountStatus(const DescribeCreateAccountStatusRequest& request) const
483 {
484   Aws::Http::URI uri = m_uri;
485   return DescribeCreateAccountStatusOutcome(MakeRequest(uri, request, Aws::Http::HttpMethod::HTTP_POST, Aws::Auth::SIGV4_SIGNER));
486 }
487 
DescribeCreateAccountStatusCallable(const DescribeCreateAccountStatusRequest & request) const488 DescribeCreateAccountStatusOutcomeCallable OrganizationsClient::DescribeCreateAccountStatusCallable(const DescribeCreateAccountStatusRequest& request) const
489 {
490   auto task = Aws::MakeShared< std::packaged_task< DescribeCreateAccountStatusOutcome() > >(ALLOCATION_TAG, [this, request](){ return this->DescribeCreateAccountStatus(request); } );
491   auto packagedFunction = [task]() { (*task)(); };
492   m_executor->Submit(packagedFunction);
493   return task->get_future();
494 }
495 
DescribeCreateAccountStatusAsync(const DescribeCreateAccountStatusRequest & request,const DescribeCreateAccountStatusResponseReceivedHandler & handler,const std::shared_ptr<const Aws::Client::AsyncCallerContext> & context) const496 void OrganizationsClient::DescribeCreateAccountStatusAsync(const DescribeCreateAccountStatusRequest& request, const DescribeCreateAccountStatusResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const
497 {
498   m_executor->Submit( [this, request, handler, context](){ this->DescribeCreateAccountStatusAsyncHelper( request, handler, context ); } );
499 }
500 
DescribeCreateAccountStatusAsyncHelper(const DescribeCreateAccountStatusRequest & request,const DescribeCreateAccountStatusResponseReceivedHandler & handler,const std::shared_ptr<const Aws::Client::AsyncCallerContext> & context) const501 void OrganizationsClient::DescribeCreateAccountStatusAsyncHelper(const DescribeCreateAccountStatusRequest& request, const DescribeCreateAccountStatusResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const
502 {
503   handler(this, request, DescribeCreateAccountStatus(request), context);
504 }
505 
DescribeEffectivePolicy(const DescribeEffectivePolicyRequest & request) const506 DescribeEffectivePolicyOutcome OrganizationsClient::DescribeEffectivePolicy(const DescribeEffectivePolicyRequest& request) const
507 {
508   Aws::Http::URI uri = m_uri;
509   return DescribeEffectivePolicyOutcome(MakeRequest(uri, request, Aws::Http::HttpMethod::HTTP_POST, Aws::Auth::SIGV4_SIGNER));
510 }
511 
DescribeEffectivePolicyCallable(const DescribeEffectivePolicyRequest & request) const512 DescribeEffectivePolicyOutcomeCallable OrganizationsClient::DescribeEffectivePolicyCallable(const DescribeEffectivePolicyRequest& request) const
513 {
514   auto task = Aws::MakeShared< std::packaged_task< DescribeEffectivePolicyOutcome() > >(ALLOCATION_TAG, [this, request](){ return this->DescribeEffectivePolicy(request); } );
515   auto packagedFunction = [task]() { (*task)(); };
516   m_executor->Submit(packagedFunction);
517   return task->get_future();
518 }
519 
DescribeEffectivePolicyAsync(const DescribeEffectivePolicyRequest & request,const DescribeEffectivePolicyResponseReceivedHandler & handler,const std::shared_ptr<const Aws::Client::AsyncCallerContext> & context) const520 void OrganizationsClient::DescribeEffectivePolicyAsync(const DescribeEffectivePolicyRequest& request, const DescribeEffectivePolicyResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const
521 {
522   m_executor->Submit( [this, request, handler, context](){ this->DescribeEffectivePolicyAsyncHelper( request, handler, context ); } );
523 }
524 
DescribeEffectivePolicyAsyncHelper(const DescribeEffectivePolicyRequest & request,const DescribeEffectivePolicyResponseReceivedHandler & handler,const std::shared_ptr<const Aws::Client::AsyncCallerContext> & context) const525 void OrganizationsClient::DescribeEffectivePolicyAsyncHelper(const DescribeEffectivePolicyRequest& request, const DescribeEffectivePolicyResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const
526 {
527   handler(this, request, DescribeEffectivePolicy(request), context);
528 }
529 
DescribeHandshake(const DescribeHandshakeRequest & request) const530 DescribeHandshakeOutcome OrganizationsClient::DescribeHandshake(const DescribeHandshakeRequest& request) const
531 {
532   Aws::Http::URI uri = m_uri;
533   return DescribeHandshakeOutcome(MakeRequest(uri, request, Aws::Http::HttpMethod::HTTP_POST, Aws::Auth::SIGV4_SIGNER));
534 }
535 
DescribeHandshakeCallable(const DescribeHandshakeRequest & request) const536 DescribeHandshakeOutcomeCallable OrganizationsClient::DescribeHandshakeCallable(const DescribeHandshakeRequest& request) const
537 {
538   auto task = Aws::MakeShared< std::packaged_task< DescribeHandshakeOutcome() > >(ALLOCATION_TAG, [this, request](){ return this->DescribeHandshake(request); } );
539   auto packagedFunction = [task]() { (*task)(); };
540   m_executor->Submit(packagedFunction);
541   return task->get_future();
542 }
543 
DescribeHandshakeAsync(const DescribeHandshakeRequest & request,const DescribeHandshakeResponseReceivedHandler & handler,const std::shared_ptr<const Aws::Client::AsyncCallerContext> & context) const544 void OrganizationsClient::DescribeHandshakeAsync(const DescribeHandshakeRequest& request, const DescribeHandshakeResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const
545 {
546   m_executor->Submit( [this, request, handler, context](){ this->DescribeHandshakeAsyncHelper( request, handler, context ); } );
547 }
548 
DescribeHandshakeAsyncHelper(const DescribeHandshakeRequest & request,const DescribeHandshakeResponseReceivedHandler & handler,const std::shared_ptr<const Aws::Client::AsyncCallerContext> & context) const549 void OrganizationsClient::DescribeHandshakeAsyncHelper(const DescribeHandshakeRequest& request, const DescribeHandshakeResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const
550 {
551   handler(this, request, DescribeHandshake(request), context);
552 }
553 
DescribeOrganization() const554 DescribeOrganizationOutcome OrganizationsClient::DescribeOrganization() const
555 {
556   Aws::StringStream ss;
557   ss << m_uri << "/";
558   return DescribeOrganizationOutcome(MakeRequest(ss.str(), Aws::Http::HttpMethod::HTTP_POST, Aws::Auth::SIGV4_SIGNER, "DescribeOrganization"));
559 }
560 
DescribeOrganizationCallable() const561 DescribeOrganizationOutcomeCallable OrganizationsClient::DescribeOrganizationCallable() const
562 {
563   auto task = Aws::MakeShared< std::packaged_task< DescribeOrganizationOutcome() > >(ALLOCATION_TAG, [this](){ return this->DescribeOrganization(); } );
564   auto packagedFunction = [task]() { (*task)(); };
565   m_executor->Submit(packagedFunction);
566   return task->get_future();
567 }
568 
DescribeOrganizationAsync(const DescribeOrganizationResponseReceivedHandler & handler,const std::shared_ptr<const Aws::Client::AsyncCallerContext> & context) const569 void OrganizationsClient::DescribeOrganizationAsync(const DescribeOrganizationResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const
570 {
571   m_executor->Submit( [this, handler, context](){ this->DescribeOrganizationAsyncHelper( handler, context ); } );
572 }
573 
DescribeOrganizationAsyncHelper(const DescribeOrganizationResponseReceivedHandler & handler,const std::shared_ptr<const Aws::Client::AsyncCallerContext> & context) const574 void OrganizationsClient::DescribeOrganizationAsyncHelper(const DescribeOrganizationResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const
575 {
576   handler(this, DescribeOrganization(), context);
577 }
578 
DescribeOrganizationalUnit(const DescribeOrganizationalUnitRequest & request) const579 DescribeOrganizationalUnitOutcome OrganizationsClient::DescribeOrganizationalUnit(const DescribeOrganizationalUnitRequest& request) const
580 {
581   Aws::Http::URI uri = m_uri;
582   return DescribeOrganizationalUnitOutcome(MakeRequest(uri, request, Aws::Http::HttpMethod::HTTP_POST, Aws::Auth::SIGV4_SIGNER));
583 }
584 
DescribeOrganizationalUnitCallable(const DescribeOrganizationalUnitRequest & request) const585 DescribeOrganizationalUnitOutcomeCallable OrganizationsClient::DescribeOrganizationalUnitCallable(const DescribeOrganizationalUnitRequest& request) const
586 {
587   auto task = Aws::MakeShared< std::packaged_task< DescribeOrganizationalUnitOutcome() > >(ALLOCATION_TAG, [this, request](){ return this->DescribeOrganizationalUnit(request); } );
588   auto packagedFunction = [task]() { (*task)(); };
589   m_executor->Submit(packagedFunction);
590   return task->get_future();
591 }
592 
DescribeOrganizationalUnitAsync(const DescribeOrganizationalUnitRequest & request,const DescribeOrganizationalUnitResponseReceivedHandler & handler,const std::shared_ptr<const Aws::Client::AsyncCallerContext> & context) const593 void OrganizationsClient::DescribeOrganizationalUnitAsync(const DescribeOrganizationalUnitRequest& request, const DescribeOrganizationalUnitResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const
594 {
595   m_executor->Submit( [this, request, handler, context](){ this->DescribeOrganizationalUnitAsyncHelper( request, handler, context ); } );
596 }
597 
DescribeOrganizationalUnitAsyncHelper(const DescribeOrganizationalUnitRequest & request,const DescribeOrganizationalUnitResponseReceivedHandler & handler,const std::shared_ptr<const Aws::Client::AsyncCallerContext> & context) const598 void OrganizationsClient::DescribeOrganizationalUnitAsyncHelper(const DescribeOrganizationalUnitRequest& request, const DescribeOrganizationalUnitResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const
599 {
600   handler(this, request, DescribeOrganizationalUnit(request), context);
601 }
602 
DescribePolicy(const DescribePolicyRequest & request) const603 DescribePolicyOutcome OrganizationsClient::DescribePolicy(const DescribePolicyRequest& request) const
604 {
605   Aws::Http::URI uri = m_uri;
606   return DescribePolicyOutcome(MakeRequest(uri, request, Aws::Http::HttpMethod::HTTP_POST, Aws::Auth::SIGV4_SIGNER));
607 }
608 
DescribePolicyCallable(const DescribePolicyRequest & request) const609 DescribePolicyOutcomeCallable OrganizationsClient::DescribePolicyCallable(const DescribePolicyRequest& request) const
610 {
611   auto task = Aws::MakeShared< std::packaged_task< DescribePolicyOutcome() > >(ALLOCATION_TAG, [this, request](){ return this->DescribePolicy(request); } );
612   auto packagedFunction = [task]() { (*task)(); };
613   m_executor->Submit(packagedFunction);
614   return task->get_future();
615 }
616 
DescribePolicyAsync(const DescribePolicyRequest & request,const DescribePolicyResponseReceivedHandler & handler,const std::shared_ptr<const Aws::Client::AsyncCallerContext> & context) const617 void OrganizationsClient::DescribePolicyAsync(const DescribePolicyRequest& request, const DescribePolicyResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const
618 {
619   m_executor->Submit( [this, request, handler, context](){ this->DescribePolicyAsyncHelper( request, handler, context ); } );
620 }
621 
DescribePolicyAsyncHelper(const DescribePolicyRequest & request,const DescribePolicyResponseReceivedHandler & handler,const std::shared_ptr<const Aws::Client::AsyncCallerContext> & context) const622 void OrganizationsClient::DescribePolicyAsyncHelper(const DescribePolicyRequest& request, const DescribePolicyResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const
623 {
624   handler(this, request, DescribePolicy(request), context);
625 }
626 
DetachPolicy(const DetachPolicyRequest & request) const627 DetachPolicyOutcome OrganizationsClient::DetachPolicy(const DetachPolicyRequest& request) const
628 {
629   Aws::Http::URI uri = m_uri;
630   return DetachPolicyOutcome(MakeRequest(uri, request, Aws::Http::HttpMethod::HTTP_POST, Aws::Auth::SIGV4_SIGNER));
631 }
632 
DetachPolicyCallable(const DetachPolicyRequest & request) const633 DetachPolicyOutcomeCallable OrganizationsClient::DetachPolicyCallable(const DetachPolicyRequest& request) const
634 {
635   auto task = Aws::MakeShared< std::packaged_task< DetachPolicyOutcome() > >(ALLOCATION_TAG, [this, request](){ return this->DetachPolicy(request); } );
636   auto packagedFunction = [task]() { (*task)(); };
637   m_executor->Submit(packagedFunction);
638   return task->get_future();
639 }
640 
DetachPolicyAsync(const DetachPolicyRequest & request,const DetachPolicyResponseReceivedHandler & handler,const std::shared_ptr<const Aws::Client::AsyncCallerContext> & context) const641 void OrganizationsClient::DetachPolicyAsync(const DetachPolicyRequest& request, const DetachPolicyResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const
642 {
643   m_executor->Submit( [this, request, handler, context](){ this->DetachPolicyAsyncHelper( request, handler, context ); } );
644 }
645 
DetachPolicyAsyncHelper(const DetachPolicyRequest & request,const DetachPolicyResponseReceivedHandler & handler,const std::shared_ptr<const Aws::Client::AsyncCallerContext> & context) const646 void OrganizationsClient::DetachPolicyAsyncHelper(const DetachPolicyRequest& request, const DetachPolicyResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const
647 {
648   handler(this, request, DetachPolicy(request), context);
649 }
650 
DisableAWSServiceAccess(const DisableAWSServiceAccessRequest & request) const651 DisableAWSServiceAccessOutcome OrganizationsClient::DisableAWSServiceAccess(const DisableAWSServiceAccessRequest& request) const
652 {
653   Aws::Http::URI uri = m_uri;
654   return DisableAWSServiceAccessOutcome(MakeRequest(uri, request, Aws::Http::HttpMethod::HTTP_POST, Aws::Auth::SIGV4_SIGNER));
655 }
656 
DisableAWSServiceAccessCallable(const DisableAWSServiceAccessRequest & request) const657 DisableAWSServiceAccessOutcomeCallable OrganizationsClient::DisableAWSServiceAccessCallable(const DisableAWSServiceAccessRequest& request) const
658 {
659   auto task = Aws::MakeShared< std::packaged_task< DisableAWSServiceAccessOutcome() > >(ALLOCATION_TAG, [this, request](){ return this->DisableAWSServiceAccess(request); } );
660   auto packagedFunction = [task]() { (*task)(); };
661   m_executor->Submit(packagedFunction);
662   return task->get_future();
663 }
664 
DisableAWSServiceAccessAsync(const DisableAWSServiceAccessRequest & request,const DisableAWSServiceAccessResponseReceivedHandler & handler,const std::shared_ptr<const Aws::Client::AsyncCallerContext> & context) const665 void OrganizationsClient::DisableAWSServiceAccessAsync(const DisableAWSServiceAccessRequest& request, const DisableAWSServiceAccessResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const
666 {
667   m_executor->Submit( [this, request, handler, context](){ this->DisableAWSServiceAccessAsyncHelper( request, handler, context ); } );
668 }
669 
DisableAWSServiceAccessAsyncHelper(const DisableAWSServiceAccessRequest & request,const DisableAWSServiceAccessResponseReceivedHandler & handler,const std::shared_ptr<const Aws::Client::AsyncCallerContext> & context) const670 void OrganizationsClient::DisableAWSServiceAccessAsyncHelper(const DisableAWSServiceAccessRequest& request, const DisableAWSServiceAccessResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const
671 {
672   handler(this, request, DisableAWSServiceAccess(request), context);
673 }
674 
DisablePolicyType(const DisablePolicyTypeRequest & request) const675 DisablePolicyTypeOutcome OrganizationsClient::DisablePolicyType(const DisablePolicyTypeRequest& request) const
676 {
677   Aws::Http::URI uri = m_uri;
678   return DisablePolicyTypeOutcome(MakeRequest(uri, request, Aws::Http::HttpMethod::HTTP_POST, Aws::Auth::SIGV4_SIGNER));
679 }
680 
DisablePolicyTypeCallable(const DisablePolicyTypeRequest & request) const681 DisablePolicyTypeOutcomeCallable OrganizationsClient::DisablePolicyTypeCallable(const DisablePolicyTypeRequest& request) const
682 {
683   auto task = Aws::MakeShared< std::packaged_task< DisablePolicyTypeOutcome() > >(ALLOCATION_TAG, [this, request](){ return this->DisablePolicyType(request); } );
684   auto packagedFunction = [task]() { (*task)(); };
685   m_executor->Submit(packagedFunction);
686   return task->get_future();
687 }
688 
DisablePolicyTypeAsync(const DisablePolicyTypeRequest & request,const DisablePolicyTypeResponseReceivedHandler & handler,const std::shared_ptr<const Aws::Client::AsyncCallerContext> & context) const689 void OrganizationsClient::DisablePolicyTypeAsync(const DisablePolicyTypeRequest& request, const DisablePolicyTypeResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const
690 {
691   m_executor->Submit( [this, request, handler, context](){ this->DisablePolicyTypeAsyncHelper( request, handler, context ); } );
692 }
693 
DisablePolicyTypeAsyncHelper(const DisablePolicyTypeRequest & request,const DisablePolicyTypeResponseReceivedHandler & handler,const std::shared_ptr<const Aws::Client::AsyncCallerContext> & context) const694 void OrganizationsClient::DisablePolicyTypeAsyncHelper(const DisablePolicyTypeRequest& request, const DisablePolicyTypeResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const
695 {
696   handler(this, request, DisablePolicyType(request), context);
697 }
698 
EnableAWSServiceAccess(const EnableAWSServiceAccessRequest & request) const699 EnableAWSServiceAccessOutcome OrganizationsClient::EnableAWSServiceAccess(const EnableAWSServiceAccessRequest& request) const
700 {
701   Aws::Http::URI uri = m_uri;
702   return EnableAWSServiceAccessOutcome(MakeRequest(uri, request, Aws::Http::HttpMethod::HTTP_POST, Aws::Auth::SIGV4_SIGNER));
703 }
704 
EnableAWSServiceAccessCallable(const EnableAWSServiceAccessRequest & request) const705 EnableAWSServiceAccessOutcomeCallable OrganizationsClient::EnableAWSServiceAccessCallable(const EnableAWSServiceAccessRequest& request) const
706 {
707   auto task = Aws::MakeShared< std::packaged_task< EnableAWSServiceAccessOutcome() > >(ALLOCATION_TAG, [this, request](){ return this->EnableAWSServiceAccess(request); } );
708   auto packagedFunction = [task]() { (*task)(); };
709   m_executor->Submit(packagedFunction);
710   return task->get_future();
711 }
712 
EnableAWSServiceAccessAsync(const EnableAWSServiceAccessRequest & request,const EnableAWSServiceAccessResponseReceivedHandler & handler,const std::shared_ptr<const Aws::Client::AsyncCallerContext> & context) const713 void OrganizationsClient::EnableAWSServiceAccessAsync(const EnableAWSServiceAccessRequest& request, const EnableAWSServiceAccessResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const
714 {
715   m_executor->Submit( [this, request, handler, context](){ this->EnableAWSServiceAccessAsyncHelper( request, handler, context ); } );
716 }
717 
EnableAWSServiceAccessAsyncHelper(const EnableAWSServiceAccessRequest & request,const EnableAWSServiceAccessResponseReceivedHandler & handler,const std::shared_ptr<const Aws::Client::AsyncCallerContext> & context) const718 void OrganizationsClient::EnableAWSServiceAccessAsyncHelper(const EnableAWSServiceAccessRequest& request, const EnableAWSServiceAccessResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const
719 {
720   handler(this, request, EnableAWSServiceAccess(request), context);
721 }
722 
EnableAllFeatures(const EnableAllFeaturesRequest & request) const723 EnableAllFeaturesOutcome OrganizationsClient::EnableAllFeatures(const EnableAllFeaturesRequest& request) const
724 {
725   Aws::Http::URI uri = m_uri;
726   return EnableAllFeaturesOutcome(MakeRequest(uri, request, Aws::Http::HttpMethod::HTTP_POST, Aws::Auth::SIGV4_SIGNER));
727 }
728 
EnableAllFeaturesCallable(const EnableAllFeaturesRequest & request) const729 EnableAllFeaturesOutcomeCallable OrganizationsClient::EnableAllFeaturesCallable(const EnableAllFeaturesRequest& request) const
730 {
731   auto task = Aws::MakeShared< std::packaged_task< EnableAllFeaturesOutcome() > >(ALLOCATION_TAG, [this, request](){ return this->EnableAllFeatures(request); } );
732   auto packagedFunction = [task]() { (*task)(); };
733   m_executor->Submit(packagedFunction);
734   return task->get_future();
735 }
736 
EnableAllFeaturesAsync(const EnableAllFeaturesRequest & request,const EnableAllFeaturesResponseReceivedHandler & handler,const std::shared_ptr<const Aws::Client::AsyncCallerContext> & context) const737 void OrganizationsClient::EnableAllFeaturesAsync(const EnableAllFeaturesRequest& request, const EnableAllFeaturesResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const
738 {
739   m_executor->Submit( [this, request, handler, context](){ this->EnableAllFeaturesAsyncHelper( request, handler, context ); } );
740 }
741 
EnableAllFeaturesAsyncHelper(const EnableAllFeaturesRequest & request,const EnableAllFeaturesResponseReceivedHandler & handler,const std::shared_ptr<const Aws::Client::AsyncCallerContext> & context) const742 void OrganizationsClient::EnableAllFeaturesAsyncHelper(const EnableAllFeaturesRequest& request, const EnableAllFeaturesResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const
743 {
744   handler(this, request, EnableAllFeatures(request), context);
745 }
746 
EnablePolicyType(const EnablePolicyTypeRequest & request) const747 EnablePolicyTypeOutcome OrganizationsClient::EnablePolicyType(const EnablePolicyTypeRequest& request) const
748 {
749   Aws::Http::URI uri = m_uri;
750   return EnablePolicyTypeOutcome(MakeRequest(uri, request, Aws::Http::HttpMethod::HTTP_POST, Aws::Auth::SIGV4_SIGNER));
751 }
752 
EnablePolicyTypeCallable(const EnablePolicyTypeRequest & request) const753 EnablePolicyTypeOutcomeCallable OrganizationsClient::EnablePolicyTypeCallable(const EnablePolicyTypeRequest& request) const
754 {
755   auto task = Aws::MakeShared< std::packaged_task< EnablePolicyTypeOutcome() > >(ALLOCATION_TAG, [this, request](){ return this->EnablePolicyType(request); } );
756   auto packagedFunction = [task]() { (*task)(); };
757   m_executor->Submit(packagedFunction);
758   return task->get_future();
759 }
760 
EnablePolicyTypeAsync(const EnablePolicyTypeRequest & request,const EnablePolicyTypeResponseReceivedHandler & handler,const std::shared_ptr<const Aws::Client::AsyncCallerContext> & context) const761 void OrganizationsClient::EnablePolicyTypeAsync(const EnablePolicyTypeRequest& request, const EnablePolicyTypeResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const
762 {
763   m_executor->Submit( [this, request, handler, context](){ this->EnablePolicyTypeAsyncHelper( request, handler, context ); } );
764 }
765 
EnablePolicyTypeAsyncHelper(const EnablePolicyTypeRequest & request,const EnablePolicyTypeResponseReceivedHandler & handler,const std::shared_ptr<const Aws::Client::AsyncCallerContext> & context) const766 void OrganizationsClient::EnablePolicyTypeAsyncHelper(const EnablePolicyTypeRequest& request, const EnablePolicyTypeResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const
767 {
768   handler(this, request, EnablePolicyType(request), context);
769 }
770 
InviteAccountToOrganization(const InviteAccountToOrganizationRequest & request) const771 InviteAccountToOrganizationOutcome OrganizationsClient::InviteAccountToOrganization(const InviteAccountToOrganizationRequest& request) const
772 {
773   Aws::Http::URI uri = m_uri;
774   return InviteAccountToOrganizationOutcome(MakeRequest(uri, request, Aws::Http::HttpMethod::HTTP_POST, Aws::Auth::SIGV4_SIGNER));
775 }
776 
InviteAccountToOrganizationCallable(const InviteAccountToOrganizationRequest & request) const777 InviteAccountToOrganizationOutcomeCallable OrganizationsClient::InviteAccountToOrganizationCallable(const InviteAccountToOrganizationRequest& request) const
778 {
779   auto task = Aws::MakeShared< std::packaged_task< InviteAccountToOrganizationOutcome() > >(ALLOCATION_TAG, [this, request](){ return this->InviteAccountToOrganization(request); } );
780   auto packagedFunction = [task]() { (*task)(); };
781   m_executor->Submit(packagedFunction);
782   return task->get_future();
783 }
784 
InviteAccountToOrganizationAsync(const InviteAccountToOrganizationRequest & request,const InviteAccountToOrganizationResponseReceivedHandler & handler,const std::shared_ptr<const Aws::Client::AsyncCallerContext> & context) const785 void OrganizationsClient::InviteAccountToOrganizationAsync(const InviteAccountToOrganizationRequest& request, const InviteAccountToOrganizationResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const
786 {
787   m_executor->Submit( [this, request, handler, context](){ this->InviteAccountToOrganizationAsyncHelper( request, handler, context ); } );
788 }
789 
InviteAccountToOrganizationAsyncHelper(const InviteAccountToOrganizationRequest & request,const InviteAccountToOrganizationResponseReceivedHandler & handler,const std::shared_ptr<const Aws::Client::AsyncCallerContext> & context) const790 void OrganizationsClient::InviteAccountToOrganizationAsyncHelper(const InviteAccountToOrganizationRequest& request, const InviteAccountToOrganizationResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const
791 {
792   handler(this, request, InviteAccountToOrganization(request), context);
793 }
794 
LeaveOrganization() const795 LeaveOrganizationOutcome OrganizationsClient::LeaveOrganization() const
796 {
797   Aws::StringStream ss;
798   ss << m_uri << "/";
799   return LeaveOrganizationOutcome(MakeRequest(ss.str(), Aws::Http::HttpMethod::HTTP_POST, Aws::Auth::SIGV4_SIGNER, "LeaveOrganization"));
800 }
801 
LeaveOrganizationCallable() const802 LeaveOrganizationOutcomeCallable OrganizationsClient::LeaveOrganizationCallable() const
803 {
804   auto task = Aws::MakeShared< std::packaged_task< LeaveOrganizationOutcome() > >(ALLOCATION_TAG, [this](){ return this->LeaveOrganization(); } );
805   auto packagedFunction = [task]() { (*task)(); };
806   m_executor->Submit(packagedFunction);
807   return task->get_future();
808 }
809 
LeaveOrganizationAsync(const LeaveOrganizationResponseReceivedHandler & handler,const std::shared_ptr<const Aws::Client::AsyncCallerContext> & context) const810 void OrganizationsClient::LeaveOrganizationAsync(const LeaveOrganizationResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const
811 {
812   m_executor->Submit( [this, handler, context](){ this->LeaveOrganizationAsyncHelper( handler, context ); } );
813 }
814 
LeaveOrganizationAsyncHelper(const LeaveOrganizationResponseReceivedHandler & handler,const std::shared_ptr<const Aws::Client::AsyncCallerContext> & context) const815 void OrganizationsClient::LeaveOrganizationAsyncHelper(const LeaveOrganizationResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const
816 {
817   handler(this, LeaveOrganization(), context);
818 }
819 
ListAWSServiceAccessForOrganization(const ListAWSServiceAccessForOrganizationRequest & request) const820 ListAWSServiceAccessForOrganizationOutcome OrganizationsClient::ListAWSServiceAccessForOrganization(const ListAWSServiceAccessForOrganizationRequest& request) const
821 {
822   Aws::Http::URI uri = m_uri;
823   return ListAWSServiceAccessForOrganizationOutcome(MakeRequest(uri, request, Aws::Http::HttpMethod::HTTP_POST, Aws::Auth::SIGV4_SIGNER));
824 }
825 
ListAWSServiceAccessForOrganizationCallable(const ListAWSServiceAccessForOrganizationRequest & request) const826 ListAWSServiceAccessForOrganizationOutcomeCallable OrganizationsClient::ListAWSServiceAccessForOrganizationCallable(const ListAWSServiceAccessForOrganizationRequest& request) const
827 {
828   auto task = Aws::MakeShared< std::packaged_task< ListAWSServiceAccessForOrganizationOutcome() > >(ALLOCATION_TAG, [this, request](){ return this->ListAWSServiceAccessForOrganization(request); } );
829   auto packagedFunction = [task]() { (*task)(); };
830   m_executor->Submit(packagedFunction);
831   return task->get_future();
832 }
833 
ListAWSServiceAccessForOrganizationAsync(const ListAWSServiceAccessForOrganizationRequest & request,const ListAWSServiceAccessForOrganizationResponseReceivedHandler & handler,const std::shared_ptr<const Aws::Client::AsyncCallerContext> & context) const834 void OrganizationsClient::ListAWSServiceAccessForOrganizationAsync(const ListAWSServiceAccessForOrganizationRequest& request, const ListAWSServiceAccessForOrganizationResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const
835 {
836   m_executor->Submit( [this, request, handler, context](){ this->ListAWSServiceAccessForOrganizationAsyncHelper( request, handler, context ); } );
837 }
838 
ListAWSServiceAccessForOrganizationAsyncHelper(const ListAWSServiceAccessForOrganizationRequest & request,const ListAWSServiceAccessForOrganizationResponseReceivedHandler & handler,const std::shared_ptr<const Aws::Client::AsyncCallerContext> & context) const839 void OrganizationsClient::ListAWSServiceAccessForOrganizationAsyncHelper(const ListAWSServiceAccessForOrganizationRequest& request, const ListAWSServiceAccessForOrganizationResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const
840 {
841   handler(this, request, ListAWSServiceAccessForOrganization(request), context);
842 }
843 
ListAccounts(const ListAccountsRequest & request) const844 ListAccountsOutcome OrganizationsClient::ListAccounts(const ListAccountsRequest& request) const
845 {
846   Aws::Http::URI uri = m_uri;
847   return ListAccountsOutcome(MakeRequest(uri, request, Aws::Http::HttpMethod::HTTP_POST, Aws::Auth::SIGV4_SIGNER));
848 }
849 
ListAccountsCallable(const ListAccountsRequest & request) const850 ListAccountsOutcomeCallable OrganizationsClient::ListAccountsCallable(const ListAccountsRequest& request) const
851 {
852   auto task = Aws::MakeShared< std::packaged_task< ListAccountsOutcome() > >(ALLOCATION_TAG, [this, request](){ return this->ListAccounts(request); } );
853   auto packagedFunction = [task]() { (*task)(); };
854   m_executor->Submit(packagedFunction);
855   return task->get_future();
856 }
857 
ListAccountsAsync(const ListAccountsRequest & request,const ListAccountsResponseReceivedHandler & handler,const std::shared_ptr<const Aws::Client::AsyncCallerContext> & context) const858 void OrganizationsClient::ListAccountsAsync(const ListAccountsRequest& request, const ListAccountsResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const
859 {
860   m_executor->Submit( [this, request, handler, context](){ this->ListAccountsAsyncHelper( request, handler, context ); } );
861 }
862 
ListAccountsAsyncHelper(const ListAccountsRequest & request,const ListAccountsResponseReceivedHandler & handler,const std::shared_ptr<const Aws::Client::AsyncCallerContext> & context) const863 void OrganizationsClient::ListAccountsAsyncHelper(const ListAccountsRequest& request, const ListAccountsResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const
864 {
865   handler(this, request, ListAccounts(request), context);
866 }
867 
ListAccountsForParent(const ListAccountsForParentRequest & request) const868 ListAccountsForParentOutcome OrganizationsClient::ListAccountsForParent(const ListAccountsForParentRequest& request) const
869 {
870   Aws::Http::URI uri = m_uri;
871   return ListAccountsForParentOutcome(MakeRequest(uri, request, Aws::Http::HttpMethod::HTTP_POST, Aws::Auth::SIGV4_SIGNER));
872 }
873 
ListAccountsForParentCallable(const ListAccountsForParentRequest & request) const874 ListAccountsForParentOutcomeCallable OrganizationsClient::ListAccountsForParentCallable(const ListAccountsForParentRequest& request) const
875 {
876   auto task = Aws::MakeShared< std::packaged_task< ListAccountsForParentOutcome() > >(ALLOCATION_TAG, [this, request](){ return this->ListAccountsForParent(request); } );
877   auto packagedFunction = [task]() { (*task)(); };
878   m_executor->Submit(packagedFunction);
879   return task->get_future();
880 }
881 
ListAccountsForParentAsync(const ListAccountsForParentRequest & request,const ListAccountsForParentResponseReceivedHandler & handler,const std::shared_ptr<const Aws::Client::AsyncCallerContext> & context) const882 void OrganizationsClient::ListAccountsForParentAsync(const ListAccountsForParentRequest& request, const ListAccountsForParentResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const
883 {
884   m_executor->Submit( [this, request, handler, context](){ this->ListAccountsForParentAsyncHelper( request, handler, context ); } );
885 }
886 
ListAccountsForParentAsyncHelper(const ListAccountsForParentRequest & request,const ListAccountsForParentResponseReceivedHandler & handler,const std::shared_ptr<const Aws::Client::AsyncCallerContext> & context) const887 void OrganizationsClient::ListAccountsForParentAsyncHelper(const ListAccountsForParentRequest& request, const ListAccountsForParentResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const
888 {
889   handler(this, request, ListAccountsForParent(request), context);
890 }
891 
ListChildren(const ListChildrenRequest & request) const892 ListChildrenOutcome OrganizationsClient::ListChildren(const ListChildrenRequest& request) const
893 {
894   Aws::Http::URI uri = m_uri;
895   return ListChildrenOutcome(MakeRequest(uri, request, Aws::Http::HttpMethod::HTTP_POST, Aws::Auth::SIGV4_SIGNER));
896 }
897 
ListChildrenCallable(const ListChildrenRequest & request) const898 ListChildrenOutcomeCallable OrganizationsClient::ListChildrenCallable(const ListChildrenRequest& request) const
899 {
900   auto task = Aws::MakeShared< std::packaged_task< ListChildrenOutcome() > >(ALLOCATION_TAG, [this, request](){ return this->ListChildren(request); } );
901   auto packagedFunction = [task]() { (*task)(); };
902   m_executor->Submit(packagedFunction);
903   return task->get_future();
904 }
905 
ListChildrenAsync(const ListChildrenRequest & request,const ListChildrenResponseReceivedHandler & handler,const std::shared_ptr<const Aws::Client::AsyncCallerContext> & context) const906 void OrganizationsClient::ListChildrenAsync(const ListChildrenRequest& request, const ListChildrenResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const
907 {
908   m_executor->Submit( [this, request, handler, context](){ this->ListChildrenAsyncHelper( request, handler, context ); } );
909 }
910 
ListChildrenAsyncHelper(const ListChildrenRequest & request,const ListChildrenResponseReceivedHandler & handler,const std::shared_ptr<const Aws::Client::AsyncCallerContext> & context) const911 void OrganizationsClient::ListChildrenAsyncHelper(const ListChildrenRequest& request, const ListChildrenResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const
912 {
913   handler(this, request, ListChildren(request), context);
914 }
915 
ListCreateAccountStatus(const ListCreateAccountStatusRequest & request) const916 ListCreateAccountStatusOutcome OrganizationsClient::ListCreateAccountStatus(const ListCreateAccountStatusRequest& request) const
917 {
918   Aws::Http::URI uri = m_uri;
919   return ListCreateAccountStatusOutcome(MakeRequest(uri, request, Aws::Http::HttpMethod::HTTP_POST, Aws::Auth::SIGV4_SIGNER));
920 }
921 
ListCreateAccountStatusCallable(const ListCreateAccountStatusRequest & request) const922 ListCreateAccountStatusOutcomeCallable OrganizationsClient::ListCreateAccountStatusCallable(const ListCreateAccountStatusRequest& request) const
923 {
924   auto task = Aws::MakeShared< std::packaged_task< ListCreateAccountStatusOutcome() > >(ALLOCATION_TAG, [this, request](){ return this->ListCreateAccountStatus(request); } );
925   auto packagedFunction = [task]() { (*task)(); };
926   m_executor->Submit(packagedFunction);
927   return task->get_future();
928 }
929 
ListCreateAccountStatusAsync(const ListCreateAccountStatusRequest & request,const ListCreateAccountStatusResponseReceivedHandler & handler,const std::shared_ptr<const Aws::Client::AsyncCallerContext> & context) const930 void OrganizationsClient::ListCreateAccountStatusAsync(const ListCreateAccountStatusRequest& request, const ListCreateAccountStatusResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const
931 {
932   m_executor->Submit( [this, request, handler, context](){ this->ListCreateAccountStatusAsyncHelper( request, handler, context ); } );
933 }
934 
ListCreateAccountStatusAsyncHelper(const ListCreateAccountStatusRequest & request,const ListCreateAccountStatusResponseReceivedHandler & handler,const std::shared_ptr<const Aws::Client::AsyncCallerContext> & context) const935 void OrganizationsClient::ListCreateAccountStatusAsyncHelper(const ListCreateAccountStatusRequest& request, const ListCreateAccountStatusResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const
936 {
937   handler(this, request, ListCreateAccountStatus(request), context);
938 }
939 
ListDelegatedAdministrators(const ListDelegatedAdministratorsRequest & request) const940 ListDelegatedAdministratorsOutcome OrganizationsClient::ListDelegatedAdministrators(const ListDelegatedAdministratorsRequest& request) const
941 {
942   Aws::Http::URI uri = m_uri;
943   return ListDelegatedAdministratorsOutcome(MakeRequest(uri, request, Aws::Http::HttpMethod::HTTP_POST, Aws::Auth::SIGV4_SIGNER));
944 }
945 
ListDelegatedAdministratorsCallable(const ListDelegatedAdministratorsRequest & request) const946 ListDelegatedAdministratorsOutcomeCallable OrganizationsClient::ListDelegatedAdministratorsCallable(const ListDelegatedAdministratorsRequest& request) const
947 {
948   auto task = Aws::MakeShared< std::packaged_task< ListDelegatedAdministratorsOutcome() > >(ALLOCATION_TAG, [this, request](){ return this->ListDelegatedAdministrators(request); } );
949   auto packagedFunction = [task]() { (*task)(); };
950   m_executor->Submit(packagedFunction);
951   return task->get_future();
952 }
953 
ListDelegatedAdministratorsAsync(const ListDelegatedAdministratorsRequest & request,const ListDelegatedAdministratorsResponseReceivedHandler & handler,const std::shared_ptr<const Aws::Client::AsyncCallerContext> & context) const954 void OrganizationsClient::ListDelegatedAdministratorsAsync(const ListDelegatedAdministratorsRequest& request, const ListDelegatedAdministratorsResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const
955 {
956   m_executor->Submit( [this, request, handler, context](){ this->ListDelegatedAdministratorsAsyncHelper( request, handler, context ); } );
957 }
958 
ListDelegatedAdministratorsAsyncHelper(const ListDelegatedAdministratorsRequest & request,const ListDelegatedAdministratorsResponseReceivedHandler & handler,const std::shared_ptr<const Aws::Client::AsyncCallerContext> & context) const959 void OrganizationsClient::ListDelegatedAdministratorsAsyncHelper(const ListDelegatedAdministratorsRequest& request, const ListDelegatedAdministratorsResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const
960 {
961   handler(this, request, ListDelegatedAdministrators(request), context);
962 }
963 
ListDelegatedServicesForAccount(const ListDelegatedServicesForAccountRequest & request) const964 ListDelegatedServicesForAccountOutcome OrganizationsClient::ListDelegatedServicesForAccount(const ListDelegatedServicesForAccountRequest& request) const
965 {
966   Aws::Http::URI uri = m_uri;
967   return ListDelegatedServicesForAccountOutcome(MakeRequest(uri, request, Aws::Http::HttpMethod::HTTP_POST, Aws::Auth::SIGV4_SIGNER));
968 }
969 
ListDelegatedServicesForAccountCallable(const ListDelegatedServicesForAccountRequest & request) const970 ListDelegatedServicesForAccountOutcomeCallable OrganizationsClient::ListDelegatedServicesForAccountCallable(const ListDelegatedServicesForAccountRequest& request) const
971 {
972   auto task = Aws::MakeShared< std::packaged_task< ListDelegatedServicesForAccountOutcome() > >(ALLOCATION_TAG, [this, request](){ return this->ListDelegatedServicesForAccount(request); } );
973   auto packagedFunction = [task]() { (*task)(); };
974   m_executor->Submit(packagedFunction);
975   return task->get_future();
976 }
977 
ListDelegatedServicesForAccountAsync(const ListDelegatedServicesForAccountRequest & request,const ListDelegatedServicesForAccountResponseReceivedHandler & handler,const std::shared_ptr<const Aws::Client::AsyncCallerContext> & context) const978 void OrganizationsClient::ListDelegatedServicesForAccountAsync(const ListDelegatedServicesForAccountRequest& request, const ListDelegatedServicesForAccountResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const
979 {
980   m_executor->Submit( [this, request, handler, context](){ this->ListDelegatedServicesForAccountAsyncHelper( request, handler, context ); } );
981 }
982 
ListDelegatedServicesForAccountAsyncHelper(const ListDelegatedServicesForAccountRequest & request,const ListDelegatedServicesForAccountResponseReceivedHandler & handler,const std::shared_ptr<const Aws::Client::AsyncCallerContext> & context) const983 void OrganizationsClient::ListDelegatedServicesForAccountAsyncHelper(const ListDelegatedServicesForAccountRequest& request, const ListDelegatedServicesForAccountResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const
984 {
985   handler(this, request, ListDelegatedServicesForAccount(request), context);
986 }
987 
ListHandshakesForAccount(const ListHandshakesForAccountRequest & request) const988 ListHandshakesForAccountOutcome OrganizationsClient::ListHandshakesForAccount(const ListHandshakesForAccountRequest& request) const
989 {
990   Aws::Http::URI uri = m_uri;
991   return ListHandshakesForAccountOutcome(MakeRequest(uri, request, Aws::Http::HttpMethod::HTTP_POST, Aws::Auth::SIGV4_SIGNER));
992 }
993 
ListHandshakesForAccountCallable(const ListHandshakesForAccountRequest & request) const994 ListHandshakesForAccountOutcomeCallable OrganizationsClient::ListHandshakesForAccountCallable(const ListHandshakesForAccountRequest& request) const
995 {
996   auto task = Aws::MakeShared< std::packaged_task< ListHandshakesForAccountOutcome() > >(ALLOCATION_TAG, [this, request](){ return this->ListHandshakesForAccount(request); } );
997   auto packagedFunction = [task]() { (*task)(); };
998   m_executor->Submit(packagedFunction);
999   return task->get_future();
1000 }
1001 
ListHandshakesForAccountAsync(const ListHandshakesForAccountRequest & request,const ListHandshakesForAccountResponseReceivedHandler & handler,const std::shared_ptr<const Aws::Client::AsyncCallerContext> & context) const1002 void OrganizationsClient::ListHandshakesForAccountAsync(const ListHandshakesForAccountRequest& request, const ListHandshakesForAccountResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const
1003 {
1004   m_executor->Submit( [this, request, handler, context](){ this->ListHandshakesForAccountAsyncHelper( request, handler, context ); } );
1005 }
1006 
ListHandshakesForAccountAsyncHelper(const ListHandshakesForAccountRequest & request,const ListHandshakesForAccountResponseReceivedHandler & handler,const std::shared_ptr<const Aws::Client::AsyncCallerContext> & context) const1007 void OrganizationsClient::ListHandshakesForAccountAsyncHelper(const ListHandshakesForAccountRequest& request, const ListHandshakesForAccountResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const
1008 {
1009   handler(this, request, ListHandshakesForAccount(request), context);
1010 }
1011 
ListHandshakesForOrganization(const ListHandshakesForOrganizationRequest & request) const1012 ListHandshakesForOrganizationOutcome OrganizationsClient::ListHandshakesForOrganization(const ListHandshakesForOrganizationRequest& request) const
1013 {
1014   Aws::Http::URI uri = m_uri;
1015   return ListHandshakesForOrganizationOutcome(MakeRequest(uri, request, Aws::Http::HttpMethod::HTTP_POST, Aws::Auth::SIGV4_SIGNER));
1016 }
1017 
ListHandshakesForOrganizationCallable(const ListHandshakesForOrganizationRequest & request) const1018 ListHandshakesForOrganizationOutcomeCallable OrganizationsClient::ListHandshakesForOrganizationCallable(const ListHandshakesForOrganizationRequest& request) const
1019 {
1020   auto task = Aws::MakeShared< std::packaged_task< ListHandshakesForOrganizationOutcome() > >(ALLOCATION_TAG, [this, request](){ return this->ListHandshakesForOrganization(request); } );
1021   auto packagedFunction = [task]() { (*task)(); };
1022   m_executor->Submit(packagedFunction);
1023   return task->get_future();
1024 }
1025 
ListHandshakesForOrganizationAsync(const ListHandshakesForOrganizationRequest & request,const ListHandshakesForOrganizationResponseReceivedHandler & handler,const std::shared_ptr<const Aws::Client::AsyncCallerContext> & context) const1026 void OrganizationsClient::ListHandshakesForOrganizationAsync(const ListHandshakesForOrganizationRequest& request, const ListHandshakesForOrganizationResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const
1027 {
1028   m_executor->Submit( [this, request, handler, context](){ this->ListHandshakesForOrganizationAsyncHelper( request, handler, context ); } );
1029 }
1030 
ListHandshakesForOrganizationAsyncHelper(const ListHandshakesForOrganizationRequest & request,const ListHandshakesForOrganizationResponseReceivedHandler & handler,const std::shared_ptr<const Aws::Client::AsyncCallerContext> & context) const1031 void OrganizationsClient::ListHandshakesForOrganizationAsyncHelper(const ListHandshakesForOrganizationRequest& request, const ListHandshakesForOrganizationResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const
1032 {
1033   handler(this, request, ListHandshakesForOrganization(request), context);
1034 }
1035 
ListOrganizationalUnitsForParent(const ListOrganizationalUnitsForParentRequest & request) const1036 ListOrganizationalUnitsForParentOutcome OrganizationsClient::ListOrganizationalUnitsForParent(const ListOrganizationalUnitsForParentRequest& request) const
1037 {
1038   Aws::Http::URI uri = m_uri;
1039   return ListOrganizationalUnitsForParentOutcome(MakeRequest(uri, request, Aws::Http::HttpMethod::HTTP_POST, Aws::Auth::SIGV4_SIGNER));
1040 }
1041 
ListOrganizationalUnitsForParentCallable(const ListOrganizationalUnitsForParentRequest & request) const1042 ListOrganizationalUnitsForParentOutcomeCallable OrganizationsClient::ListOrganizationalUnitsForParentCallable(const ListOrganizationalUnitsForParentRequest& request) const
1043 {
1044   auto task = Aws::MakeShared< std::packaged_task< ListOrganizationalUnitsForParentOutcome() > >(ALLOCATION_TAG, [this, request](){ return this->ListOrganizationalUnitsForParent(request); } );
1045   auto packagedFunction = [task]() { (*task)(); };
1046   m_executor->Submit(packagedFunction);
1047   return task->get_future();
1048 }
1049 
ListOrganizationalUnitsForParentAsync(const ListOrganizationalUnitsForParentRequest & request,const ListOrganizationalUnitsForParentResponseReceivedHandler & handler,const std::shared_ptr<const Aws::Client::AsyncCallerContext> & context) const1050 void OrganizationsClient::ListOrganizationalUnitsForParentAsync(const ListOrganizationalUnitsForParentRequest& request, const ListOrganizationalUnitsForParentResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const
1051 {
1052   m_executor->Submit( [this, request, handler, context](){ this->ListOrganizationalUnitsForParentAsyncHelper( request, handler, context ); } );
1053 }
1054 
ListOrganizationalUnitsForParentAsyncHelper(const ListOrganizationalUnitsForParentRequest & request,const ListOrganizationalUnitsForParentResponseReceivedHandler & handler,const std::shared_ptr<const Aws::Client::AsyncCallerContext> & context) const1055 void OrganizationsClient::ListOrganizationalUnitsForParentAsyncHelper(const ListOrganizationalUnitsForParentRequest& request, const ListOrganizationalUnitsForParentResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const
1056 {
1057   handler(this, request, ListOrganizationalUnitsForParent(request), context);
1058 }
1059 
ListParents(const ListParentsRequest & request) const1060 ListParentsOutcome OrganizationsClient::ListParents(const ListParentsRequest& request) const
1061 {
1062   Aws::Http::URI uri = m_uri;
1063   return ListParentsOutcome(MakeRequest(uri, request, Aws::Http::HttpMethod::HTTP_POST, Aws::Auth::SIGV4_SIGNER));
1064 }
1065 
ListParentsCallable(const ListParentsRequest & request) const1066 ListParentsOutcomeCallable OrganizationsClient::ListParentsCallable(const ListParentsRequest& request) const
1067 {
1068   auto task = Aws::MakeShared< std::packaged_task< ListParentsOutcome() > >(ALLOCATION_TAG, [this, request](){ return this->ListParents(request); } );
1069   auto packagedFunction = [task]() { (*task)(); };
1070   m_executor->Submit(packagedFunction);
1071   return task->get_future();
1072 }
1073 
ListParentsAsync(const ListParentsRequest & request,const ListParentsResponseReceivedHandler & handler,const std::shared_ptr<const Aws::Client::AsyncCallerContext> & context) const1074 void OrganizationsClient::ListParentsAsync(const ListParentsRequest& request, const ListParentsResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const
1075 {
1076   m_executor->Submit( [this, request, handler, context](){ this->ListParentsAsyncHelper( request, handler, context ); } );
1077 }
1078 
ListParentsAsyncHelper(const ListParentsRequest & request,const ListParentsResponseReceivedHandler & handler,const std::shared_ptr<const Aws::Client::AsyncCallerContext> & context) const1079 void OrganizationsClient::ListParentsAsyncHelper(const ListParentsRequest& request, const ListParentsResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const
1080 {
1081   handler(this, request, ListParents(request), context);
1082 }
1083 
ListPolicies(const ListPoliciesRequest & request) const1084 ListPoliciesOutcome OrganizationsClient::ListPolicies(const ListPoliciesRequest& request) const
1085 {
1086   Aws::Http::URI uri = m_uri;
1087   return ListPoliciesOutcome(MakeRequest(uri, request, Aws::Http::HttpMethod::HTTP_POST, Aws::Auth::SIGV4_SIGNER));
1088 }
1089 
ListPoliciesCallable(const ListPoliciesRequest & request) const1090 ListPoliciesOutcomeCallable OrganizationsClient::ListPoliciesCallable(const ListPoliciesRequest& request) const
1091 {
1092   auto task = Aws::MakeShared< std::packaged_task< ListPoliciesOutcome() > >(ALLOCATION_TAG, [this, request](){ return this->ListPolicies(request); } );
1093   auto packagedFunction = [task]() { (*task)(); };
1094   m_executor->Submit(packagedFunction);
1095   return task->get_future();
1096 }
1097 
ListPoliciesAsync(const ListPoliciesRequest & request,const ListPoliciesResponseReceivedHandler & handler,const std::shared_ptr<const Aws::Client::AsyncCallerContext> & context) const1098 void OrganizationsClient::ListPoliciesAsync(const ListPoliciesRequest& request, const ListPoliciesResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const
1099 {
1100   m_executor->Submit( [this, request, handler, context](){ this->ListPoliciesAsyncHelper( request, handler, context ); } );
1101 }
1102 
ListPoliciesAsyncHelper(const ListPoliciesRequest & request,const ListPoliciesResponseReceivedHandler & handler,const std::shared_ptr<const Aws::Client::AsyncCallerContext> & context) const1103 void OrganizationsClient::ListPoliciesAsyncHelper(const ListPoliciesRequest& request, const ListPoliciesResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const
1104 {
1105   handler(this, request, ListPolicies(request), context);
1106 }
1107 
ListPoliciesForTarget(const ListPoliciesForTargetRequest & request) const1108 ListPoliciesForTargetOutcome OrganizationsClient::ListPoliciesForTarget(const ListPoliciesForTargetRequest& request) const
1109 {
1110   Aws::Http::URI uri = m_uri;
1111   return ListPoliciesForTargetOutcome(MakeRequest(uri, request, Aws::Http::HttpMethod::HTTP_POST, Aws::Auth::SIGV4_SIGNER));
1112 }
1113 
ListPoliciesForTargetCallable(const ListPoliciesForTargetRequest & request) const1114 ListPoliciesForTargetOutcomeCallable OrganizationsClient::ListPoliciesForTargetCallable(const ListPoliciesForTargetRequest& request) const
1115 {
1116   auto task = Aws::MakeShared< std::packaged_task< ListPoliciesForTargetOutcome() > >(ALLOCATION_TAG, [this, request](){ return this->ListPoliciesForTarget(request); } );
1117   auto packagedFunction = [task]() { (*task)(); };
1118   m_executor->Submit(packagedFunction);
1119   return task->get_future();
1120 }
1121 
ListPoliciesForTargetAsync(const ListPoliciesForTargetRequest & request,const ListPoliciesForTargetResponseReceivedHandler & handler,const std::shared_ptr<const Aws::Client::AsyncCallerContext> & context) const1122 void OrganizationsClient::ListPoliciesForTargetAsync(const ListPoliciesForTargetRequest& request, const ListPoliciesForTargetResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const
1123 {
1124   m_executor->Submit( [this, request, handler, context](){ this->ListPoliciesForTargetAsyncHelper( request, handler, context ); } );
1125 }
1126 
ListPoliciesForTargetAsyncHelper(const ListPoliciesForTargetRequest & request,const ListPoliciesForTargetResponseReceivedHandler & handler,const std::shared_ptr<const Aws::Client::AsyncCallerContext> & context) const1127 void OrganizationsClient::ListPoliciesForTargetAsyncHelper(const ListPoliciesForTargetRequest& request, const ListPoliciesForTargetResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const
1128 {
1129   handler(this, request, ListPoliciesForTarget(request), context);
1130 }
1131 
ListRoots(const ListRootsRequest & request) const1132 ListRootsOutcome OrganizationsClient::ListRoots(const ListRootsRequest& request) const
1133 {
1134   Aws::Http::URI uri = m_uri;
1135   return ListRootsOutcome(MakeRequest(uri, request, Aws::Http::HttpMethod::HTTP_POST, Aws::Auth::SIGV4_SIGNER));
1136 }
1137 
ListRootsCallable(const ListRootsRequest & request) const1138 ListRootsOutcomeCallable OrganizationsClient::ListRootsCallable(const ListRootsRequest& request) const
1139 {
1140   auto task = Aws::MakeShared< std::packaged_task< ListRootsOutcome() > >(ALLOCATION_TAG, [this, request](){ return this->ListRoots(request); } );
1141   auto packagedFunction = [task]() { (*task)(); };
1142   m_executor->Submit(packagedFunction);
1143   return task->get_future();
1144 }
1145 
ListRootsAsync(const ListRootsRequest & request,const ListRootsResponseReceivedHandler & handler,const std::shared_ptr<const Aws::Client::AsyncCallerContext> & context) const1146 void OrganizationsClient::ListRootsAsync(const ListRootsRequest& request, const ListRootsResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const
1147 {
1148   m_executor->Submit( [this, request, handler, context](){ this->ListRootsAsyncHelper( request, handler, context ); } );
1149 }
1150 
ListRootsAsyncHelper(const ListRootsRequest & request,const ListRootsResponseReceivedHandler & handler,const std::shared_ptr<const Aws::Client::AsyncCallerContext> & context) const1151 void OrganizationsClient::ListRootsAsyncHelper(const ListRootsRequest& request, const ListRootsResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const
1152 {
1153   handler(this, request, ListRoots(request), context);
1154 }
1155 
ListTagsForResource(const ListTagsForResourceRequest & request) const1156 ListTagsForResourceOutcome OrganizationsClient::ListTagsForResource(const ListTagsForResourceRequest& request) const
1157 {
1158   Aws::Http::URI uri = m_uri;
1159   return ListTagsForResourceOutcome(MakeRequest(uri, request, Aws::Http::HttpMethod::HTTP_POST, Aws::Auth::SIGV4_SIGNER));
1160 }
1161 
ListTagsForResourceCallable(const ListTagsForResourceRequest & request) const1162 ListTagsForResourceOutcomeCallable OrganizationsClient::ListTagsForResourceCallable(const ListTagsForResourceRequest& request) const
1163 {
1164   auto task = Aws::MakeShared< std::packaged_task< ListTagsForResourceOutcome() > >(ALLOCATION_TAG, [this, request](){ return this->ListTagsForResource(request); } );
1165   auto packagedFunction = [task]() { (*task)(); };
1166   m_executor->Submit(packagedFunction);
1167   return task->get_future();
1168 }
1169 
ListTagsForResourceAsync(const ListTagsForResourceRequest & request,const ListTagsForResourceResponseReceivedHandler & handler,const std::shared_ptr<const Aws::Client::AsyncCallerContext> & context) const1170 void OrganizationsClient::ListTagsForResourceAsync(const ListTagsForResourceRequest& request, const ListTagsForResourceResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const
1171 {
1172   m_executor->Submit( [this, request, handler, context](){ this->ListTagsForResourceAsyncHelper( request, handler, context ); } );
1173 }
1174 
ListTagsForResourceAsyncHelper(const ListTagsForResourceRequest & request,const ListTagsForResourceResponseReceivedHandler & handler,const std::shared_ptr<const Aws::Client::AsyncCallerContext> & context) const1175 void OrganizationsClient::ListTagsForResourceAsyncHelper(const ListTagsForResourceRequest& request, const ListTagsForResourceResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const
1176 {
1177   handler(this, request, ListTagsForResource(request), context);
1178 }
1179 
ListTargetsForPolicy(const ListTargetsForPolicyRequest & request) const1180 ListTargetsForPolicyOutcome OrganizationsClient::ListTargetsForPolicy(const ListTargetsForPolicyRequest& request) const
1181 {
1182   Aws::Http::URI uri = m_uri;
1183   return ListTargetsForPolicyOutcome(MakeRequest(uri, request, Aws::Http::HttpMethod::HTTP_POST, Aws::Auth::SIGV4_SIGNER));
1184 }
1185 
ListTargetsForPolicyCallable(const ListTargetsForPolicyRequest & request) const1186 ListTargetsForPolicyOutcomeCallable OrganizationsClient::ListTargetsForPolicyCallable(const ListTargetsForPolicyRequest& request) const
1187 {
1188   auto task = Aws::MakeShared< std::packaged_task< ListTargetsForPolicyOutcome() > >(ALLOCATION_TAG, [this, request](){ return this->ListTargetsForPolicy(request); } );
1189   auto packagedFunction = [task]() { (*task)(); };
1190   m_executor->Submit(packagedFunction);
1191   return task->get_future();
1192 }
1193 
ListTargetsForPolicyAsync(const ListTargetsForPolicyRequest & request,const ListTargetsForPolicyResponseReceivedHandler & handler,const std::shared_ptr<const Aws::Client::AsyncCallerContext> & context) const1194 void OrganizationsClient::ListTargetsForPolicyAsync(const ListTargetsForPolicyRequest& request, const ListTargetsForPolicyResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const
1195 {
1196   m_executor->Submit( [this, request, handler, context](){ this->ListTargetsForPolicyAsyncHelper( request, handler, context ); } );
1197 }
1198 
ListTargetsForPolicyAsyncHelper(const ListTargetsForPolicyRequest & request,const ListTargetsForPolicyResponseReceivedHandler & handler,const std::shared_ptr<const Aws::Client::AsyncCallerContext> & context) const1199 void OrganizationsClient::ListTargetsForPolicyAsyncHelper(const ListTargetsForPolicyRequest& request, const ListTargetsForPolicyResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const
1200 {
1201   handler(this, request, ListTargetsForPolicy(request), context);
1202 }
1203 
MoveAccount(const MoveAccountRequest & request) const1204 MoveAccountOutcome OrganizationsClient::MoveAccount(const MoveAccountRequest& request) const
1205 {
1206   Aws::Http::URI uri = m_uri;
1207   return MoveAccountOutcome(MakeRequest(uri, request, Aws::Http::HttpMethod::HTTP_POST, Aws::Auth::SIGV4_SIGNER));
1208 }
1209 
MoveAccountCallable(const MoveAccountRequest & request) const1210 MoveAccountOutcomeCallable OrganizationsClient::MoveAccountCallable(const MoveAccountRequest& request) const
1211 {
1212   auto task = Aws::MakeShared< std::packaged_task< MoveAccountOutcome() > >(ALLOCATION_TAG, [this, request](){ return this->MoveAccount(request); } );
1213   auto packagedFunction = [task]() { (*task)(); };
1214   m_executor->Submit(packagedFunction);
1215   return task->get_future();
1216 }
1217 
MoveAccountAsync(const MoveAccountRequest & request,const MoveAccountResponseReceivedHandler & handler,const std::shared_ptr<const Aws::Client::AsyncCallerContext> & context) const1218 void OrganizationsClient::MoveAccountAsync(const MoveAccountRequest& request, const MoveAccountResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const
1219 {
1220   m_executor->Submit( [this, request, handler, context](){ this->MoveAccountAsyncHelper( request, handler, context ); } );
1221 }
1222 
MoveAccountAsyncHelper(const MoveAccountRequest & request,const MoveAccountResponseReceivedHandler & handler,const std::shared_ptr<const Aws::Client::AsyncCallerContext> & context) const1223 void OrganizationsClient::MoveAccountAsyncHelper(const MoveAccountRequest& request, const MoveAccountResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const
1224 {
1225   handler(this, request, MoveAccount(request), context);
1226 }
1227 
RegisterDelegatedAdministrator(const RegisterDelegatedAdministratorRequest & request) const1228 RegisterDelegatedAdministratorOutcome OrganizationsClient::RegisterDelegatedAdministrator(const RegisterDelegatedAdministratorRequest& request) const
1229 {
1230   Aws::Http::URI uri = m_uri;
1231   return RegisterDelegatedAdministratorOutcome(MakeRequest(uri, request, Aws::Http::HttpMethod::HTTP_POST, Aws::Auth::SIGV4_SIGNER));
1232 }
1233 
RegisterDelegatedAdministratorCallable(const RegisterDelegatedAdministratorRequest & request) const1234 RegisterDelegatedAdministratorOutcomeCallable OrganizationsClient::RegisterDelegatedAdministratorCallable(const RegisterDelegatedAdministratorRequest& request) const
1235 {
1236   auto task = Aws::MakeShared< std::packaged_task< RegisterDelegatedAdministratorOutcome() > >(ALLOCATION_TAG, [this, request](){ return this->RegisterDelegatedAdministrator(request); } );
1237   auto packagedFunction = [task]() { (*task)(); };
1238   m_executor->Submit(packagedFunction);
1239   return task->get_future();
1240 }
1241 
RegisterDelegatedAdministratorAsync(const RegisterDelegatedAdministratorRequest & request,const RegisterDelegatedAdministratorResponseReceivedHandler & handler,const std::shared_ptr<const Aws::Client::AsyncCallerContext> & context) const1242 void OrganizationsClient::RegisterDelegatedAdministratorAsync(const RegisterDelegatedAdministratorRequest& request, const RegisterDelegatedAdministratorResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const
1243 {
1244   m_executor->Submit( [this, request, handler, context](){ this->RegisterDelegatedAdministratorAsyncHelper( request, handler, context ); } );
1245 }
1246 
RegisterDelegatedAdministratorAsyncHelper(const RegisterDelegatedAdministratorRequest & request,const RegisterDelegatedAdministratorResponseReceivedHandler & handler,const std::shared_ptr<const Aws::Client::AsyncCallerContext> & context) const1247 void OrganizationsClient::RegisterDelegatedAdministratorAsyncHelper(const RegisterDelegatedAdministratorRequest& request, const RegisterDelegatedAdministratorResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const
1248 {
1249   handler(this, request, RegisterDelegatedAdministrator(request), context);
1250 }
1251 
RemoveAccountFromOrganization(const RemoveAccountFromOrganizationRequest & request) const1252 RemoveAccountFromOrganizationOutcome OrganizationsClient::RemoveAccountFromOrganization(const RemoveAccountFromOrganizationRequest& request) const
1253 {
1254   Aws::Http::URI uri = m_uri;
1255   return RemoveAccountFromOrganizationOutcome(MakeRequest(uri, request, Aws::Http::HttpMethod::HTTP_POST, Aws::Auth::SIGV4_SIGNER));
1256 }
1257 
RemoveAccountFromOrganizationCallable(const RemoveAccountFromOrganizationRequest & request) const1258 RemoveAccountFromOrganizationOutcomeCallable OrganizationsClient::RemoveAccountFromOrganizationCallable(const RemoveAccountFromOrganizationRequest& request) const
1259 {
1260   auto task = Aws::MakeShared< std::packaged_task< RemoveAccountFromOrganizationOutcome() > >(ALLOCATION_TAG, [this, request](){ return this->RemoveAccountFromOrganization(request); } );
1261   auto packagedFunction = [task]() { (*task)(); };
1262   m_executor->Submit(packagedFunction);
1263   return task->get_future();
1264 }
1265 
RemoveAccountFromOrganizationAsync(const RemoveAccountFromOrganizationRequest & request,const RemoveAccountFromOrganizationResponseReceivedHandler & handler,const std::shared_ptr<const Aws::Client::AsyncCallerContext> & context) const1266 void OrganizationsClient::RemoveAccountFromOrganizationAsync(const RemoveAccountFromOrganizationRequest& request, const RemoveAccountFromOrganizationResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const
1267 {
1268   m_executor->Submit( [this, request, handler, context](){ this->RemoveAccountFromOrganizationAsyncHelper( request, handler, context ); } );
1269 }
1270 
RemoveAccountFromOrganizationAsyncHelper(const RemoveAccountFromOrganizationRequest & request,const RemoveAccountFromOrganizationResponseReceivedHandler & handler,const std::shared_ptr<const Aws::Client::AsyncCallerContext> & context) const1271 void OrganizationsClient::RemoveAccountFromOrganizationAsyncHelper(const RemoveAccountFromOrganizationRequest& request, const RemoveAccountFromOrganizationResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const
1272 {
1273   handler(this, request, RemoveAccountFromOrganization(request), context);
1274 }
1275 
TagResource(const TagResourceRequest & request) const1276 TagResourceOutcome OrganizationsClient::TagResource(const TagResourceRequest& request) const
1277 {
1278   Aws::Http::URI uri = m_uri;
1279   return TagResourceOutcome(MakeRequest(uri, request, Aws::Http::HttpMethod::HTTP_POST, Aws::Auth::SIGV4_SIGNER));
1280 }
1281 
TagResourceCallable(const TagResourceRequest & request) const1282 TagResourceOutcomeCallable OrganizationsClient::TagResourceCallable(const TagResourceRequest& request) const
1283 {
1284   auto task = Aws::MakeShared< std::packaged_task< TagResourceOutcome() > >(ALLOCATION_TAG, [this, request](){ return this->TagResource(request); } );
1285   auto packagedFunction = [task]() { (*task)(); };
1286   m_executor->Submit(packagedFunction);
1287   return task->get_future();
1288 }
1289 
TagResourceAsync(const TagResourceRequest & request,const TagResourceResponseReceivedHandler & handler,const std::shared_ptr<const Aws::Client::AsyncCallerContext> & context) const1290 void OrganizationsClient::TagResourceAsync(const TagResourceRequest& request, const TagResourceResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const
1291 {
1292   m_executor->Submit( [this, request, handler, context](){ this->TagResourceAsyncHelper( request, handler, context ); } );
1293 }
1294 
TagResourceAsyncHelper(const TagResourceRequest & request,const TagResourceResponseReceivedHandler & handler,const std::shared_ptr<const Aws::Client::AsyncCallerContext> & context) const1295 void OrganizationsClient::TagResourceAsyncHelper(const TagResourceRequest& request, const TagResourceResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const
1296 {
1297   handler(this, request, TagResource(request), context);
1298 }
1299 
UntagResource(const UntagResourceRequest & request) const1300 UntagResourceOutcome OrganizationsClient::UntagResource(const UntagResourceRequest& request) const
1301 {
1302   Aws::Http::URI uri = m_uri;
1303   return UntagResourceOutcome(MakeRequest(uri, request, Aws::Http::HttpMethod::HTTP_POST, Aws::Auth::SIGV4_SIGNER));
1304 }
1305 
UntagResourceCallable(const UntagResourceRequest & request) const1306 UntagResourceOutcomeCallable OrganizationsClient::UntagResourceCallable(const UntagResourceRequest& request) const
1307 {
1308   auto task = Aws::MakeShared< std::packaged_task< UntagResourceOutcome() > >(ALLOCATION_TAG, [this, request](){ return this->UntagResource(request); } );
1309   auto packagedFunction = [task]() { (*task)(); };
1310   m_executor->Submit(packagedFunction);
1311   return task->get_future();
1312 }
1313 
UntagResourceAsync(const UntagResourceRequest & request,const UntagResourceResponseReceivedHandler & handler,const std::shared_ptr<const Aws::Client::AsyncCallerContext> & context) const1314 void OrganizationsClient::UntagResourceAsync(const UntagResourceRequest& request, const UntagResourceResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const
1315 {
1316   m_executor->Submit( [this, request, handler, context](){ this->UntagResourceAsyncHelper( request, handler, context ); } );
1317 }
1318 
UntagResourceAsyncHelper(const UntagResourceRequest & request,const UntagResourceResponseReceivedHandler & handler,const std::shared_ptr<const Aws::Client::AsyncCallerContext> & context) const1319 void OrganizationsClient::UntagResourceAsyncHelper(const UntagResourceRequest& request, const UntagResourceResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const
1320 {
1321   handler(this, request, UntagResource(request), context);
1322 }
1323 
UpdateOrganizationalUnit(const UpdateOrganizationalUnitRequest & request) const1324 UpdateOrganizationalUnitOutcome OrganizationsClient::UpdateOrganizationalUnit(const UpdateOrganizationalUnitRequest& request) const
1325 {
1326   Aws::Http::URI uri = m_uri;
1327   return UpdateOrganizationalUnitOutcome(MakeRequest(uri, request, Aws::Http::HttpMethod::HTTP_POST, Aws::Auth::SIGV4_SIGNER));
1328 }
1329 
UpdateOrganizationalUnitCallable(const UpdateOrganizationalUnitRequest & request) const1330 UpdateOrganizationalUnitOutcomeCallable OrganizationsClient::UpdateOrganizationalUnitCallable(const UpdateOrganizationalUnitRequest& request) const
1331 {
1332   auto task = Aws::MakeShared< std::packaged_task< UpdateOrganizationalUnitOutcome() > >(ALLOCATION_TAG, [this, request](){ return this->UpdateOrganizationalUnit(request); } );
1333   auto packagedFunction = [task]() { (*task)(); };
1334   m_executor->Submit(packagedFunction);
1335   return task->get_future();
1336 }
1337 
UpdateOrganizationalUnitAsync(const UpdateOrganizationalUnitRequest & request,const UpdateOrganizationalUnitResponseReceivedHandler & handler,const std::shared_ptr<const Aws::Client::AsyncCallerContext> & context) const1338 void OrganizationsClient::UpdateOrganizationalUnitAsync(const UpdateOrganizationalUnitRequest& request, const UpdateOrganizationalUnitResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const
1339 {
1340   m_executor->Submit( [this, request, handler, context](){ this->UpdateOrganizationalUnitAsyncHelper( request, handler, context ); } );
1341 }
1342 
UpdateOrganizationalUnitAsyncHelper(const UpdateOrganizationalUnitRequest & request,const UpdateOrganizationalUnitResponseReceivedHandler & handler,const std::shared_ptr<const Aws::Client::AsyncCallerContext> & context) const1343 void OrganizationsClient::UpdateOrganizationalUnitAsyncHelper(const UpdateOrganizationalUnitRequest& request, const UpdateOrganizationalUnitResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const
1344 {
1345   handler(this, request, UpdateOrganizationalUnit(request), context);
1346 }
1347 
UpdatePolicy(const UpdatePolicyRequest & request) const1348 UpdatePolicyOutcome OrganizationsClient::UpdatePolicy(const UpdatePolicyRequest& request) const
1349 {
1350   Aws::Http::URI uri = m_uri;
1351   return UpdatePolicyOutcome(MakeRequest(uri, request, Aws::Http::HttpMethod::HTTP_POST, Aws::Auth::SIGV4_SIGNER));
1352 }
1353 
UpdatePolicyCallable(const UpdatePolicyRequest & request) const1354 UpdatePolicyOutcomeCallable OrganizationsClient::UpdatePolicyCallable(const UpdatePolicyRequest& request) const
1355 {
1356   auto task = Aws::MakeShared< std::packaged_task< UpdatePolicyOutcome() > >(ALLOCATION_TAG, [this, request](){ return this->UpdatePolicy(request); } );
1357   auto packagedFunction = [task]() { (*task)(); };
1358   m_executor->Submit(packagedFunction);
1359   return task->get_future();
1360 }
1361 
UpdatePolicyAsync(const UpdatePolicyRequest & request,const UpdatePolicyResponseReceivedHandler & handler,const std::shared_ptr<const Aws::Client::AsyncCallerContext> & context) const1362 void OrganizationsClient::UpdatePolicyAsync(const UpdatePolicyRequest& request, const UpdatePolicyResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const
1363 {
1364   m_executor->Submit( [this, request, handler, context](){ this->UpdatePolicyAsyncHelper( request, handler, context ); } );
1365 }
1366 
UpdatePolicyAsyncHelper(const UpdatePolicyRequest & request,const UpdatePolicyResponseReceivedHandler & handler,const std::shared_ptr<const Aws::Client::AsyncCallerContext> & context) const1367 void OrganizationsClient::UpdatePolicyAsyncHelper(const UpdatePolicyRequest& request, const UpdatePolicyResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const
1368 {
1369   handler(this, request, UpdatePolicy(request), context);
1370 }
1371 
1372