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/lakeformation/LakeFormationClient.h>
21 #include <aws/lakeformation/LakeFormationEndpoint.h>
22 #include <aws/lakeformation/LakeFormationErrorMarshaller.h>
23 #include <aws/lakeformation/model/AddLFTagsToResourceRequest.h>
24 #include <aws/lakeformation/model/BatchGrantPermissionsRequest.h>
25 #include <aws/lakeformation/model/BatchRevokePermissionsRequest.h>
26 #include <aws/lakeformation/model/CreateLFTagRequest.h>
27 #include <aws/lakeformation/model/DeleteLFTagRequest.h>
28 #include <aws/lakeformation/model/DeregisterResourceRequest.h>
29 #include <aws/lakeformation/model/DescribeResourceRequest.h>
30 #include <aws/lakeformation/model/GetDataLakeSettingsRequest.h>
31 #include <aws/lakeformation/model/GetEffectivePermissionsForPathRequest.h>
32 #include <aws/lakeformation/model/GetLFTagRequest.h>
33 #include <aws/lakeformation/model/GetResourceLFTagsRequest.h>
34 #include <aws/lakeformation/model/GrantPermissionsRequest.h>
35 #include <aws/lakeformation/model/ListLFTagsRequest.h>
36 #include <aws/lakeformation/model/ListPermissionsRequest.h>
37 #include <aws/lakeformation/model/ListResourcesRequest.h>
38 #include <aws/lakeformation/model/PutDataLakeSettingsRequest.h>
39 #include <aws/lakeformation/model/RegisterResourceRequest.h>
40 #include <aws/lakeformation/model/RemoveLFTagsFromResourceRequest.h>
41 #include <aws/lakeformation/model/RevokePermissionsRequest.h>
42 #include <aws/lakeformation/model/SearchDatabasesByLFTagsRequest.h>
43 #include <aws/lakeformation/model/SearchTablesByLFTagsRequest.h>
44 #include <aws/lakeformation/model/UpdateLFTagRequest.h>
45 #include <aws/lakeformation/model/UpdateResourceRequest.h>
46
47 using namespace Aws;
48 using namespace Aws::Auth;
49 using namespace Aws::Client;
50 using namespace Aws::LakeFormation;
51 using namespace Aws::LakeFormation::Model;
52 using namespace Aws::Http;
53 using namespace Aws::Utils::Json;
54
55 static const char* SERVICE_NAME = "lakeformation";
56 static const char* ALLOCATION_TAG = "LakeFormationClient";
57
58
LakeFormationClient(const Client::ClientConfiguration & clientConfiguration)59 LakeFormationClient::LakeFormationClient(const Client::ClientConfiguration& clientConfiguration) :
60 BASECLASS(clientConfiguration,
61 Aws::MakeShared<AWSAuthV4Signer>(ALLOCATION_TAG, Aws::MakeShared<DefaultAWSCredentialsProviderChain>(ALLOCATION_TAG),
62 SERVICE_NAME, Aws::Region::ComputeSignerRegion(clientConfiguration.region)),
63 Aws::MakeShared<LakeFormationErrorMarshaller>(ALLOCATION_TAG)),
64 m_executor(clientConfiguration.executor)
65 {
66 init(clientConfiguration);
67 }
68
LakeFormationClient(const AWSCredentials & credentials,const Client::ClientConfiguration & clientConfiguration)69 LakeFormationClient::LakeFormationClient(const AWSCredentials& credentials, const Client::ClientConfiguration& clientConfiguration) :
70 BASECLASS(clientConfiguration,
71 Aws::MakeShared<AWSAuthV4Signer>(ALLOCATION_TAG, Aws::MakeShared<SimpleAWSCredentialsProvider>(ALLOCATION_TAG, credentials),
72 SERVICE_NAME, Aws::Region::ComputeSignerRegion(clientConfiguration.region)),
73 Aws::MakeShared<LakeFormationErrorMarshaller>(ALLOCATION_TAG)),
74 m_executor(clientConfiguration.executor)
75 {
76 init(clientConfiguration);
77 }
78
LakeFormationClient(const std::shared_ptr<AWSCredentialsProvider> & credentialsProvider,const Client::ClientConfiguration & clientConfiguration)79 LakeFormationClient::LakeFormationClient(const std::shared_ptr<AWSCredentialsProvider>& credentialsProvider,
80 const Client::ClientConfiguration& clientConfiguration) :
81 BASECLASS(clientConfiguration,
82 Aws::MakeShared<AWSAuthV4Signer>(ALLOCATION_TAG, credentialsProvider,
83 SERVICE_NAME, Aws::Region::ComputeSignerRegion(clientConfiguration.region)),
84 Aws::MakeShared<LakeFormationErrorMarshaller>(ALLOCATION_TAG)),
85 m_executor(clientConfiguration.executor)
86 {
87 init(clientConfiguration);
88 }
89
~LakeFormationClient()90 LakeFormationClient::~LakeFormationClient()
91 {
92 }
93
init(const Client::ClientConfiguration & config)94 void LakeFormationClient::init(const Client::ClientConfiguration& config)
95 {
96 SetServiceClientName("LakeFormation");
97 m_configScheme = SchemeMapper::ToString(config.scheme);
98 if (config.endpointOverride.empty())
99 {
100 m_uri = m_configScheme + "://" + LakeFormationEndpoint::ForRegion(config.region, config.useDualStack);
101 }
102 else
103 {
104 OverrideEndpoint(config.endpointOverride);
105 }
106 }
107
OverrideEndpoint(const Aws::String & endpoint)108 void LakeFormationClient::OverrideEndpoint(const Aws::String& endpoint)
109 {
110 if (endpoint.compare(0, 7, "http://") == 0 || endpoint.compare(0, 8, "https://") == 0)
111 {
112 m_uri = endpoint;
113 }
114 else
115 {
116 m_uri = m_configScheme + "://" + endpoint;
117 }
118 }
119
AddLFTagsToResource(const AddLFTagsToResourceRequest & request) const120 AddLFTagsToResourceOutcome LakeFormationClient::AddLFTagsToResource(const AddLFTagsToResourceRequest& request) const
121 {
122 Aws::Http::URI uri = m_uri;
123 return AddLFTagsToResourceOutcome(MakeRequest(uri, request, Aws::Http::HttpMethod::HTTP_POST, Aws::Auth::SIGV4_SIGNER));
124 }
125
AddLFTagsToResourceCallable(const AddLFTagsToResourceRequest & request) const126 AddLFTagsToResourceOutcomeCallable LakeFormationClient::AddLFTagsToResourceCallable(const AddLFTagsToResourceRequest& request) const
127 {
128 auto task = Aws::MakeShared< std::packaged_task< AddLFTagsToResourceOutcome() > >(ALLOCATION_TAG, [this, request](){ return this->AddLFTagsToResource(request); } );
129 auto packagedFunction = [task]() { (*task)(); };
130 m_executor->Submit(packagedFunction);
131 return task->get_future();
132 }
133
AddLFTagsToResourceAsync(const AddLFTagsToResourceRequest & request,const AddLFTagsToResourceResponseReceivedHandler & handler,const std::shared_ptr<const Aws::Client::AsyncCallerContext> & context) const134 void LakeFormationClient::AddLFTagsToResourceAsync(const AddLFTagsToResourceRequest& request, const AddLFTagsToResourceResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const
135 {
136 m_executor->Submit( [this, request, handler, context](){ this->AddLFTagsToResourceAsyncHelper( request, handler, context ); } );
137 }
138
AddLFTagsToResourceAsyncHelper(const AddLFTagsToResourceRequest & request,const AddLFTagsToResourceResponseReceivedHandler & handler,const std::shared_ptr<const Aws::Client::AsyncCallerContext> & context) const139 void LakeFormationClient::AddLFTagsToResourceAsyncHelper(const AddLFTagsToResourceRequest& request, const AddLFTagsToResourceResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const
140 {
141 handler(this, request, AddLFTagsToResource(request), context);
142 }
143
BatchGrantPermissions(const BatchGrantPermissionsRequest & request) const144 BatchGrantPermissionsOutcome LakeFormationClient::BatchGrantPermissions(const BatchGrantPermissionsRequest& request) const
145 {
146 Aws::Http::URI uri = m_uri;
147 return BatchGrantPermissionsOutcome(MakeRequest(uri, request, Aws::Http::HttpMethod::HTTP_POST, Aws::Auth::SIGV4_SIGNER));
148 }
149
BatchGrantPermissionsCallable(const BatchGrantPermissionsRequest & request) const150 BatchGrantPermissionsOutcomeCallable LakeFormationClient::BatchGrantPermissionsCallable(const BatchGrantPermissionsRequest& request) const
151 {
152 auto task = Aws::MakeShared< std::packaged_task< BatchGrantPermissionsOutcome() > >(ALLOCATION_TAG, [this, request](){ return this->BatchGrantPermissions(request); } );
153 auto packagedFunction = [task]() { (*task)(); };
154 m_executor->Submit(packagedFunction);
155 return task->get_future();
156 }
157
BatchGrantPermissionsAsync(const BatchGrantPermissionsRequest & request,const BatchGrantPermissionsResponseReceivedHandler & handler,const std::shared_ptr<const Aws::Client::AsyncCallerContext> & context) const158 void LakeFormationClient::BatchGrantPermissionsAsync(const BatchGrantPermissionsRequest& request, const BatchGrantPermissionsResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const
159 {
160 m_executor->Submit( [this, request, handler, context](){ this->BatchGrantPermissionsAsyncHelper( request, handler, context ); } );
161 }
162
BatchGrantPermissionsAsyncHelper(const BatchGrantPermissionsRequest & request,const BatchGrantPermissionsResponseReceivedHandler & handler,const std::shared_ptr<const Aws::Client::AsyncCallerContext> & context) const163 void LakeFormationClient::BatchGrantPermissionsAsyncHelper(const BatchGrantPermissionsRequest& request, const BatchGrantPermissionsResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const
164 {
165 handler(this, request, BatchGrantPermissions(request), context);
166 }
167
BatchRevokePermissions(const BatchRevokePermissionsRequest & request) const168 BatchRevokePermissionsOutcome LakeFormationClient::BatchRevokePermissions(const BatchRevokePermissionsRequest& request) const
169 {
170 Aws::Http::URI uri = m_uri;
171 return BatchRevokePermissionsOutcome(MakeRequest(uri, request, Aws::Http::HttpMethod::HTTP_POST, Aws::Auth::SIGV4_SIGNER));
172 }
173
BatchRevokePermissionsCallable(const BatchRevokePermissionsRequest & request) const174 BatchRevokePermissionsOutcomeCallable LakeFormationClient::BatchRevokePermissionsCallable(const BatchRevokePermissionsRequest& request) const
175 {
176 auto task = Aws::MakeShared< std::packaged_task< BatchRevokePermissionsOutcome() > >(ALLOCATION_TAG, [this, request](){ return this->BatchRevokePermissions(request); } );
177 auto packagedFunction = [task]() { (*task)(); };
178 m_executor->Submit(packagedFunction);
179 return task->get_future();
180 }
181
BatchRevokePermissionsAsync(const BatchRevokePermissionsRequest & request,const BatchRevokePermissionsResponseReceivedHandler & handler,const std::shared_ptr<const Aws::Client::AsyncCallerContext> & context) const182 void LakeFormationClient::BatchRevokePermissionsAsync(const BatchRevokePermissionsRequest& request, const BatchRevokePermissionsResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const
183 {
184 m_executor->Submit( [this, request, handler, context](){ this->BatchRevokePermissionsAsyncHelper( request, handler, context ); } );
185 }
186
BatchRevokePermissionsAsyncHelper(const BatchRevokePermissionsRequest & request,const BatchRevokePermissionsResponseReceivedHandler & handler,const std::shared_ptr<const Aws::Client::AsyncCallerContext> & context) const187 void LakeFormationClient::BatchRevokePermissionsAsyncHelper(const BatchRevokePermissionsRequest& request, const BatchRevokePermissionsResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const
188 {
189 handler(this, request, BatchRevokePermissions(request), context);
190 }
191
CreateLFTag(const CreateLFTagRequest & request) const192 CreateLFTagOutcome LakeFormationClient::CreateLFTag(const CreateLFTagRequest& request) const
193 {
194 Aws::Http::URI uri = m_uri;
195 return CreateLFTagOutcome(MakeRequest(uri, request, Aws::Http::HttpMethod::HTTP_POST, Aws::Auth::SIGV4_SIGNER));
196 }
197
CreateLFTagCallable(const CreateLFTagRequest & request) const198 CreateLFTagOutcomeCallable LakeFormationClient::CreateLFTagCallable(const CreateLFTagRequest& request) const
199 {
200 auto task = Aws::MakeShared< std::packaged_task< CreateLFTagOutcome() > >(ALLOCATION_TAG, [this, request](){ return this->CreateLFTag(request); } );
201 auto packagedFunction = [task]() { (*task)(); };
202 m_executor->Submit(packagedFunction);
203 return task->get_future();
204 }
205
CreateLFTagAsync(const CreateLFTagRequest & request,const CreateLFTagResponseReceivedHandler & handler,const std::shared_ptr<const Aws::Client::AsyncCallerContext> & context) const206 void LakeFormationClient::CreateLFTagAsync(const CreateLFTagRequest& request, const CreateLFTagResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const
207 {
208 m_executor->Submit( [this, request, handler, context](){ this->CreateLFTagAsyncHelper( request, handler, context ); } );
209 }
210
CreateLFTagAsyncHelper(const CreateLFTagRequest & request,const CreateLFTagResponseReceivedHandler & handler,const std::shared_ptr<const Aws::Client::AsyncCallerContext> & context) const211 void LakeFormationClient::CreateLFTagAsyncHelper(const CreateLFTagRequest& request, const CreateLFTagResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const
212 {
213 handler(this, request, CreateLFTag(request), context);
214 }
215
DeleteLFTag(const DeleteLFTagRequest & request) const216 DeleteLFTagOutcome LakeFormationClient::DeleteLFTag(const DeleteLFTagRequest& request) const
217 {
218 Aws::Http::URI uri = m_uri;
219 return DeleteLFTagOutcome(MakeRequest(uri, request, Aws::Http::HttpMethod::HTTP_POST, Aws::Auth::SIGV4_SIGNER));
220 }
221
DeleteLFTagCallable(const DeleteLFTagRequest & request) const222 DeleteLFTagOutcomeCallable LakeFormationClient::DeleteLFTagCallable(const DeleteLFTagRequest& request) const
223 {
224 auto task = Aws::MakeShared< std::packaged_task< DeleteLFTagOutcome() > >(ALLOCATION_TAG, [this, request](){ return this->DeleteLFTag(request); } );
225 auto packagedFunction = [task]() { (*task)(); };
226 m_executor->Submit(packagedFunction);
227 return task->get_future();
228 }
229
DeleteLFTagAsync(const DeleteLFTagRequest & request,const DeleteLFTagResponseReceivedHandler & handler,const std::shared_ptr<const Aws::Client::AsyncCallerContext> & context) const230 void LakeFormationClient::DeleteLFTagAsync(const DeleteLFTagRequest& request, const DeleteLFTagResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const
231 {
232 m_executor->Submit( [this, request, handler, context](){ this->DeleteLFTagAsyncHelper( request, handler, context ); } );
233 }
234
DeleteLFTagAsyncHelper(const DeleteLFTagRequest & request,const DeleteLFTagResponseReceivedHandler & handler,const std::shared_ptr<const Aws::Client::AsyncCallerContext> & context) const235 void LakeFormationClient::DeleteLFTagAsyncHelper(const DeleteLFTagRequest& request, const DeleteLFTagResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const
236 {
237 handler(this, request, DeleteLFTag(request), context);
238 }
239
DeregisterResource(const DeregisterResourceRequest & request) const240 DeregisterResourceOutcome LakeFormationClient::DeregisterResource(const DeregisterResourceRequest& request) const
241 {
242 Aws::Http::URI uri = m_uri;
243 return DeregisterResourceOutcome(MakeRequest(uri, request, Aws::Http::HttpMethod::HTTP_POST, Aws::Auth::SIGV4_SIGNER));
244 }
245
DeregisterResourceCallable(const DeregisterResourceRequest & request) const246 DeregisterResourceOutcomeCallable LakeFormationClient::DeregisterResourceCallable(const DeregisterResourceRequest& request) const
247 {
248 auto task = Aws::MakeShared< std::packaged_task< DeregisterResourceOutcome() > >(ALLOCATION_TAG, [this, request](){ return this->DeregisterResource(request); } );
249 auto packagedFunction = [task]() { (*task)(); };
250 m_executor->Submit(packagedFunction);
251 return task->get_future();
252 }
253
DeregisterResourceAsync(const DeregisterResourceRequest & request,const DeregisterResourceResponseReceivedHandler & handler,const std::shared_ptr<const Aws::Client::AsyncCallerContext> & context) const254 void LakeFormationClient::DeregisterResourceAsync(const DeregisterResourceRequest& request, const DeregisterResourceResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const
255 {
256 m_executor->Submit( [this, request, handler, context](){ this->DeregisterResourceAsyncHelper( request, handler, context ); } );
257 }
258
DeregisterResourceAsyncHelper(const DeregisterResourceRequest & request,const DeregisterResourceResponseReceivedHandler & handler,const std::shared_ptr<const Aws::Client::AsyncCallerContext> & context) const259 void LakeFormationClient::DeregisterResourceAsyncHelper(const DeregisterResourceRequest& request, const DeregisterResourceResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const
260 {
261 handler(this, request, DeregisterResource(request), context);
262 }
263
DescribeResource(const DescribeResourceRequest & request) const264 DescribeResourceOutcome LakeFormationClient::DescribeResource(const DescribeResourceRequest& request) const
265 {
266 Aws::Http::URI uri = m_uri;
267 return DescribeResourceOutcome(MakeRequest(uri, request, Aws::Http::HttpMethod::HTTP_POST, Aws::Auth::SIGV4_SIGNER));
268 }
269
DescribeResourceCallable(const DescribeResourceRequest & request) const270 DescribeResourceOutcomeCallable LakeFormationClient::DescribeResourceCallable(const DescribeResourceRequest& request) const
271 {
272 auto task = Aws::MakeShared< std::packaged_task< DescribeResourceOutcome() > >(ALLOCATION_TAG, [this, request](){ return this->DescribeResource(request); } );
273 auto packagedFunction = [task]() { (*task)(); };
274 m_executor->Submit(packagedFunction);
275 return task->get_future();
276 }
277
DescribeResourceAsync(const DescribeResourceRequest & request,const DescribeResourceResponseReceivedHandler & handler,const std::shared_ptr<const Aws::Client::AsyncCallerContext> & context) const278 void LakeFormationClient::DescribeResourceAsync(const DescribeResourceRequest& request, const DescribeResourceResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const
279 {
280 m_executor->Submit( [this, request, handler, context](){ this->DescribeResourceAsyncHelper( request, handler, context ); } );
281 }
282
DescribeResourceAsyncHelper(const DescribeResourceRequest & request,const DescribeResourceResponseReceivedHandler & handler,const std::shared_ptr<const Aws::Client::AsyncCallerContext> & context) const283 void LakeFormationClient::DescribeResourceAsyncHelper(const DescribeResourceRequest& request, const DescribeResourceResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const
284 {
285 handler(this, request, DescribeResource(request), context);
286 }
287
GetDataLakeSettings(const GetDataLakeSettingsRequest & request) const288 GetDataLakeSettingsOutcome LakeFormationClient::GetDataLakeSettings(const GetDataLakeSettingsRequest& request) const
289 {
290 Aws::Http::URI uri = m_uri;
291 return GetDataLakeSettingsOutcome(MakeRequest(uri, request, Aws::Http::HttpMethod::HTTP_POST, Aws::Auth::SIGV4_SIGNER));
292 }
293
GetDataLakeSettingsCallable(const GetDataLakeSettingsRequest & request) const294 GetDataLakeSettingsOutcomeCallable LakeFormationClient::GetDataLakeSettingsCallable(const GetDataLakeSettingsRequest& request) const
295 {
296 auto task = Aws::MakeShared< std::packaged_task< GetDataLakeSettingsOutcome() > >(ALLOCATION_TAG, [this, request](){ return this->GetDataLakeSettings(request); } );
297 auto packagedFunction = [task]() { (*task)(); };
298 m_executor->Submit(packagedFunction);
299 return task->get_future();
300 }
301
GetDataLakeSettingsAsync(const GetDataLakeSettingsRequest & request,const GetDataLakeSettingsResponseReceivedHandler & handler,const std::shared_ptr<const Aws::Client::AsyncCallerContext> & context) const302 void LakeFormationClient::GetDataLakeSettingsAsync(const GetDataLakeSettingsRequest& request, const GetDataLakeSettingsResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const
303 {
304 m_executor->Submit( [this, request, handler, context](){ this->GetDataLakeSettingsAsyncHelper( request, handler, context ); } );
305 }
306
GetDataLakeSettingsAsyncHelper(const GetDataLakeSettingsRequest & request,const GetDataLakeSettingsResponseReceivedHandler & handler,const std::shared_ptr<const Aws::Client::AsyncCallerContext> & context) const307 void LakeFormationClient::GetDataLakeSettingsAsyncHelper(const GetDataLakeSettingsRequest& request, const GetDataLakeSettingsResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const
308 {
309 handler(this, request, GetDataLakeSettings(request), context);
310 }
311
GetEffectivePermissionsForPath(const GetEffectivePermissionsForPathRequest & request) const312 GetEffectivePermissionsForPathOutcome LakeFormationClient::GetEffectivePermissionsForPath(const GetEffectivePermissionsForPathRequest& request) const
313 {
314 Aws::Http::URI uri = m_uri;
315 return GetEffectivePermissionsForPathOutcome(MakeRequest(uri, request, Aws::Http::HttpMethod::HTTP_POST, Aws::Auth::SIGV4_SIGNER));
316 }
317
GetEffectivePermissionsForPathCallable(const GetEffectivePermissionsForPathRequest & request) const318 GetEffectivePermissionsForPathOutcomeCallable LakeFormationClient::GetEffectivePermissionsForPathCallable(const GetEffectivePermissionsForPathRequest& request) const
319 {
320 auto task = Aws::MakeShared< std::packaged_task< GetEffectivePermissionsForPathOutcome() > >(ALLOCATION_TAG, [this, request](){ return this->GetEffectivePermissionsForPath(request); } );
321 auto packagedFunction = [task]() { (*task)(); };
322 m_executor->Submit(packagedFunction);
323 return task->get_future();
324 }
325
GetEffectivePermissionsForPathAsync(const GetEffectivePermissionsForPathRequest & request,const GetEffectivePermissionsForPathResponseReceivedHandler & handler,const std::shared_ptr<const Aws::Client::AsyncCallerContext> & context) const326 void LakeFormationClient::GetEffectivePermissionsForPathAsync(const GetEffectivePermissionsForPathRequest& request, const GetEffectivePermissionsForPathResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const
327 {
328 m_executor->Submit( [this, request, handler, context](){ this->GetEffectivePermissionsForPathAsyncHelper( request, handler, context ); } );
329 }
330
GetEffectivePermissionsForPathAsyncHelper(const GetEffectivePermissionsForPathRequest & request,const GetEffectivePermissionsForPathResponseReceivedHandler & handler,const std::shared_ptr<const Aws::Client::AsyncCallerContext> & context) const331 void LakeFormationClient::GetEffectivePermissionsForPathAsyncHelper(const GetEffectivePermissionsForPathRequest& request, const GetEffectivePermissionsForPathResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const
332 {
333 handler(this, request, GetEffectivePermissionsForPath(request), context);
334 }
335
GetLFTag(const GetLFTagRequest & request) const336 GetLFTagOutcome LakeFormationClient::GetLFTag(const GetLFTagRequest& request) const
337 {
338 Aws::Http::URI uri = m_uri;
339 return GetLFTagOutcome(MakeRequest(uri, request, Aws::Http::HttpMethod::HTTP_POST, Aws::Auth::SIGV4_SIGNER));
340 }
341
GetLFTagCallable(const GetLFTagRequest & request) const342 GetLFTagOutcomeCallable LakeFormationClient::GetLFTagCallable(const GetLFTagRequest& request) const
343 {
344 auto task = Aws::MakeShared< std::packaged_task< GetLFTagOutcome() > >(ALLOCATION_TAG, [this, request](){ return this->GetLFTag(request); } );
345 auto packagedFunction = [task]() { (*task)(); };
346 m_executor->Submit(packagedFunction);
347 return task->get_future();
348 }
349
GetLFTagAsync(const GetLFTagRequest & request,const GetLFTagResponseReceivedHandler & handler,const std::shared_ptr<const Aws::Client::AsyncCallerContext> & context) const350 void LakeFormationClient::GetLFTagAsync(const GetLFTagRequest& request, const GetLFTagResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const
351 {
352 m_executor->Submit( [this, request, handler, context](){ this->GetLFTagAsyncHelper( request, handler, context ); } );
353 }
354
GetLFTagAsyncHelper(const GetLFTagRequest & request,const GetLFTagResponseReceivedHandler & handler,const std::shared_ptr<const Aws::Client::AsyncCallerContext> & context) const355 void LakeFormationClient::GetLFTagAsyncHelper(const GetLFTagRequest& request, const GetLFTagResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const
356 {
357 handler(this, request, GetLFTag(request), context);
358 }
359
GetResourceLFTags(const GetResourceLFTagsRequest & request) const360 GetResourceLFTagsOutcome LakeFormationClient::GetResourceLFTags(const GetResourceLFTagsRequest& request) const
361 {
362 Aws::Http::URI uri = m_uri;
363 return GetResourceLFTagsOutcome(MakeRequest(uri, request, Aws::Http::HttpMethod::HTTP_POST, Aws::Auth::SIGV4_SIGNER));
364 }
365
GetResourceLFTagsCallable(const GetResourceLFTagsRequest & request) const366 GetResourceLFTagsOutcomeCallable LakeFormationClient::GetResourceLFTagsCallable(const GetResourceLFTagsRequest& request) const
367 {
368 auto task = Aws::MakeShared< std::packaged_task< GetResourceLFTagsOutcome() > >(ALLOCATION_TAG, [this, request](){ return this->GetResourceLFTags(request); } );
369 auto packagedFunction = [task]() { (*task)(); };
370 m_executor->Submit(packagedFunction);
371 return task->get_future();
372 }
373
GetResourceLFTagsAsync(const GetResourceLFTagsRequest & request,const GetResourceLFTagsResponseReceivedHandler & handler,const std::shared_ptr<const Aws::Client::AsyncCallerContext> & context) const374 void LakeFormationClient::GetResourceLFTagsAsync(const GetResourceLFTagsRequest& request, const GetResourceLFTagsResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const
375 {
376 m_executor->Submit( [this, request, handler, context](){ this->GetResourceLFTagsAsyncHelper( request, handler, context ); } );
377 }
378
GetResourceLFTagsAsyncHelper(const GetResourceLFTagsRequest & request,const GetResourceLFTagsResponseReceivedHandler & handler,const std::shared_ptr<const Aws::Client::AsyncCallerContext> & context) const379 void LakeFormationClient::GetResourceLFTagsAsyncHelper(const GetResourceLFTagsRequest& request, const GetResourceLFTagsResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const
380 {
381 handler(this, request, GetResourceLFTags(request), context);
382 }
383
GrantPermissions(const GrantPermissionsRequest & request) const384 GrantPermissionsOutcome LakeFormationClient::GrantPermissions(const GrantPermissionsRequest& request) const
385 {
386 Aws::Http::URI uri = m_uri;
387 return GrantPermissionsOutcome(MakeRequest(uri, request, Aws::Http::HttpMethod::HTTP_POST, Aws::Auth::SIGV4_SIGNER));
388 }
389
GrantPermissionsCallable(const GrantPermissionsRequest & request) const390 GrantPermissionsOutcomeCallable LakeFormationClient::GrantPermissionsCallable(const GrantPermissionsRequest& request) const
391 {
392 auto task = Aws::MakeShared< std::packaged_task< GrantPermissionsOutcome() > >(ALLOCATION_TAG, [this, request](){ return this->GrantPermissions(request); } );
393 auto packagedFunction = [task]() { (*task)(); };
394 m_executor->Submit(packagedFunction);
395 return task->get_future();
396 }
397
GrantPermissionsAsync(const GrantPermissionsRequest & request,const GrantPermissionsResponseReceivedHandler & handler,const std::shared_ptr<const Aws::Client::AsyncCallerContext> & context) const398 void LakeFormationClient::GrantPermissionsAsync(const GrantPermissionsRequest& request, const GrantPermissionsResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const
399 {
400 m_executor->Submit( [this, request, handler, context](){ this->GrantPermissionsAsyncHelper( request, handler, context ); } );
401 }
402
GrantPermissionsAsyncHelper(const GrantPermissionsRequest & request,const GrantPermissionsResponseReceivedHandler & handler,const std::shared_ptr<const Aws::Client::AsyncCallerContext> & context) const403 void LakeFormationClient::GrantPermissionsAsyncHelper(const GrantPermissionsRequest& request, const GrantPermissionsResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const
404 {
405 handler(this, request, GrantPermissions(request), context);
406 }
407
ListLFTags(const ListLFTagsRequest & request) const408 ListLFTagsOutcome LakeFormationClient::ListLFTags(const ListLFTagsRequest& request) const
409 {
410 Aws::Http::URI uri = m_uri;
411 return ListLFTagsOutcome(MakeRequest(uri, request, Aws::Http::HttpMethod::HTTP_POST, Aws::Auth::SIGV4_SIGNER));
412 }
413
ListLFTagsCallable(const ListLFTagsRequest & request) const414 ListLFTagsOutcomeCallable LakeFormationClient::ListLFTagsCallable(const ListLFTagsRequest& request) const
415 {
416 auto task = Aws::MakeShared< std::packaged_task< ListLFTagsOutcome() > >(ALLOCATION_TAG, [this, request](){ return this->ListLFTags(request); } );
417 auto packagedFunction = [task]() { (*task)(); };
418 m_executor->Submit(packagedFunction);
419 return task->get_future();
420 }
421
ListLFTagsAsync(const ListLFTagsRequest & request,const ListLFTagsResponseReceivedHandler & handler,const std::shared_ptr<const Aws::Client::AsyncCallerContext> & context) const422 void LakeFormationClient::ListLFTagsAsync(const ListLFTagsRequest& request, const ListLFTagsResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const
423 {
424 m_executor->Submit( [this, request, handler, context](){ this->ListLFTagsAsyncHelper( request, handler, context ); } );
425 }
426
ListLFTagsAsyncHelper(const ListLFTagsRequest & request,const ListLFTagsResponseReceivedHandler & handler,const std::shared_ptr<const Aws::Client::AsyncCallerContext> & context) const427 void LakeFormationClient::ListLFTagsAsyncHelper(const ListLFTagsRequest& request, const ListLFTagsResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const
428 {
429 handler(this, request, ListLFTags(request), context);
430 }
431
ListPermissions(const ListPermissionsRequest & request) const432 ListPermissionsOutcome LakeFormationClient::ListPermissions(const ListPermissionsRequest& request) const
433 {
434 Aws::Http::URI uri = m_uri;
435 return ListPermissionsOutcome(MakeRequest(uri, request, Aws::Http::HttpMethod::HTTP_POST, Aws::Auth::SIGV4_SIGNER));
436 }
437
ListPermissionsCallable(const ListPermissionsRequest & request) const438 ListPermissionsOutcomeCallable LakeFormationClient::ListPermissionsCallable(const ListPermissionsRequest& request) const
439 {
440 auto task = Aws::MakeShared< std::packaged_task< ListPermissionsOutcome() > >(ALLOCATION_TAG, [this, request](){ return this->ListPermissions(request); } );
441 auto packagedFunction = [task]() { (*task)(); };
442 m_executor->Submit(packagedFunction);
443 return task->get_future();
444 }
445
ListPermissionsAsync(const ListPermissionsRequest & request,const ListPermissionsResponseReceivedHandler & handler,const std::shared_ptr<const Aws::Client::AsyncCallerContext> & context) const446 void LakeFormationClient::ListPermissionsAsync(const ListPermissionsRequest& request, const ListPermissionsResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const
447 {
448 m_executor->Submit( [this, request, handler, context](){ this->ListPermissionsAsyncHelper( request, handler, context ); } );
449 }
450
ListPermissionsAsyncHelper(const ListPermissionsRequest & request,const ListPermissionsResponseReceivedHandler & handler,const std::shared_ptr<const Aws::Client::AsyncCallerContext> & context) const451 void LakeFormationClient::ListPermissionsAsyncHelper(const ListPermissionsRequest& request, const ListPermissionsResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const
452 {
453 handler(this, request, ListPermissions(request), context);
454 }
455
ListResources(const ListResourcesRequest & request) const456 ListResourcesOutcome LakeFormationClient::ListResources(const ListResourcesRequest& request) const
457 {
458 Aws::Http::URI uri = m_uri;
459 return ListResourcesOutcome(MakeRequest(uri, request, Aws::Http::HttpMethod::HTTP_POST, Aws::Auth::SIGV4_SIGNER));
460 }
461
ListResourcesCallable(const ListResourcesRequest & request) const462 ListResourcesOutcomeCallable LakeFormationClient::ListResourcesCallable(const ListResourcesRequest& request) const
463 {
464 auto task = Aws::MakeShared< std::packaged_task< ListResourcesOutcome() > >(ALLOCATION_TAG, [this, request](){ return this->ListResources(request); } );
465 auto packagedFunction = [task]() { (*task)(); };
466 m_executor->Submit(packagedFunction);
467 return task->get_future();
468 }
469
ListResourcesAsync(const ListResourcesRequest & request,const ListResourcesResponseReceivedHandler & handler,const std::shared_ptr<const Aws::Client::AsyncCallerContext> & context) const470 void LakeFormationClient::ListResourcesAsync(const ListResourcesRequest& request, const ListResourcesResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const
471 {
472 m_executor->Submit( [this, request, handler, context](){ this->ListResourcesAsyncHelper( request, handler, context ); } );
473 }
474
ListResourcesAsyncHelper(const ListResourcesRequest & request,const ListResourcesResponseReceivedHandler & handler,const std::shared_ptr<const Aws::Client::AsyncCallerContext> & context) const475 void LakeFormationClient::ListResourcesAsyncHelper(const ListResourcesRequest& request, const ListResourcesResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const
476 {
477 handler(this, request, ListResources(request), context);
478 }
479
PutDataLakeSettings(const PutDataLakeSettingsRequest & request) const480 PutDataLakeSettingsOutcome LakeFormationClient::PutDataLakeSettings(const PutDataLakeSettingsRequest& request) const
481 {
482 Aws::Http::URI uri = m_uri;
483 return PutDataLakeSettingsOutcome(MakeRequest(uri, request, Aws::Http::HttpMethod::HTTP_POST, Aws::Auth::SIGV4_SIGNER));
484 }
485
PutDataLakeSettingsCallable(const PutDataLakeSettingsRequest & request) const486 PutDataLakeSettingsOutcomeCallable LakeFormationClient::PutDataLakeSettingsCallable(const PutDataLakeSettingsRequest& request) const
487 {
488 auto task = Aws::MakeShared< std::packaged_task< PutDataLakeSettingsOutcome() > >(ALLOCATION_TAG, [this, request](){ return this->PutDataLakeSettings(request); } );
489 auto packagedFunction = [task]() { (*task)(); };
490 m_executor->Submit(packagedFunction);
491 return task->get_future();
492 }
493
PutDataLakeSettingsAsync(const PutDataLakeSettingsRequest & request,const PutDataLakeSettingsResponseReceivedHandler & handler,const std::shared_ptr<const Aws::Client::AsyncCallerContext> & context) const494 void LakeFormationClient::PutDataLakeSettingsAsync(const PutDataLakeSettingsRequest& request, const PutDataLakeSettingsResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const
495 {
496 m_executor->Submit( [this, request, handler, context](){ this->PutDataLakeSettingsAsyncHelper( request, handler, context ); } );
497 }
498
PutDataLakeSettingsAsyncHelper(const PutDataLakeSettingsRequest & request,const PutDataLakeSettingsResponseReceivedHandler & handler,const std::shared_ptr<const Aws::Client::AsyncCallerContext> & context) const499 void LakeFormationClient::PutDataLakeSettingsAsyncHelper(const PutDataLakeSettingsRequest& request, const PutDataLakeSettingsResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const
500 {
501 handler(this, request, PutDataLakeSettings(request), context);
502 }
503
RegisterResource(const RegisterResourceRequest & request) const504 RegisterResourceOutcome LakeFormationClient::RegisterResource(const RegisterResourceRequest& request) const
505 {
506 Aws::Http::URI uri = m_uri;
507 return RegisterResourceOutcome(MakeRequest(uri, request, Aws::Http::HttpMethod::HTTP_POST, Aws::Auth::SIGV4_SIGNER));
508 }
509
RegisterResourceCallable(const RegisterResourceRequest & request) const510 RegisterResourceOutcomeCallable LakeFormationClient::RegisterResourceCallable(const RegisterResourceRequest& request) const
511 {
512 auto task = Aws::MakeShared< std::packaged_task< RegisterResourceOutcome() > >(ALLOCATION_TAG, [this, request](){ return this->RegisterResource(request); } );
513 auto packagedFunction = [task]() { (*task)(); };
514 m_executor->Submit(packagedFunction);
515 return task->get_future();
516 }
517
RegisterResourceAsync(const RegisterResourceRequest & request,const RegisterResourceResponseReceivedHandler & handler,const std::shared_ptr<const Aws::Client::AsyncCallerContext> & context) const518 void LakeFormationClient::RegisterResourceAsync(const RegisterResourceRequest& request, const RegisterResourceResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const
519 {
520 m_executor->Submit( [this, request, handler, context](){ this->RegisterResourceAsyncHelper( request, handler, context ); } );
521 }
522
RegisterResourceAsyncHelper(const RegisterResourceRequest & request,const RegisterResourceResponseReceivedHandler & handler,const std::shared_ptr<const Aws::Client::AsyncCallerContext> & context) const523 void LakeFormationClient::RegisterResourceAsyncHelper(const RegisterResourceRequest& request, const RegisterResourceResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const
524 {
525 handler(this, request, RegisterResource(request), context);
526 }
527
RemoveLFTagsFromResource(const RemoveLFTagsFromResourceRequest & request) const528 RemoveLFTagsFromResourceOutcome LakeFormationClient::RemoveLFTagsFromResource(const RemoveLFTagsFromResourceRequest& request) const
529 {
530 Aws::Http::URI uri = m_uri;
531 return RemoveLFTagsFromResourceOutcome(MakeRequest(uri, request, Aws::Http::HttpMethod::HTTP_POST, Aws::Auth::SIGV4_SIGNER));
532 }
533
RemoveLFTagsFromResourceCallable(const RemoveLFTagsFromResourceRequest & request) const534 RemoveLFTagsFromResourceOutcomeCallable LakeFormationClient::RemoveLFTagsFromResourceCallable(const RemoveLFTagsFromResourceRequest& request) const
535 {
536 auto task = Aws::MakeShared< std::packaged_task< RemoveLFTagsFromResourceOutcome() > >(ALLOCATION_TAG, [this, request](){ return this->RemoveLFTagsFromResource(request); } );
537 auto packagedFunction = [task]() { (*task)(); };
538 m_executor->Submit(packagedFunction);
539 return task->get_future();
540 }
541
RemoveLFTagsFromResourceAsync(const RemoveLFTagsFromResourceRequest & request,const RemoveLFTagsFromResourceResponseReceivedHandler & handler,const std::shared_ptr<const Aws::Client::AsyncCallerContext> & context) const542 void LakeFormationClient::RemoveLFTagsFromResourceAsync(const RemoveLFTagsFromResourceRequest& request, const RemoveLFTagsFromResourceResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const
543 {
544 m_executor->Submit( [this, request, handler, context](){ this->RemoveLFTagsFromResourceAsyncHelper( request, handler, context ); } );
545 }
546
RemoveLFTagsFromResourceAsyncHelper(const RemoveLFTagsFromResourceRequest & request,const RemoveLFTagsFromResourceResponseReceivedHandler & handler,const std::shared_ptr<const Aws::Client::AsyncCallerContext> & context) const547 void LakeFormationClient::RemoveLFTagsFromResourceAsyncHelper(const RemoveLFTagsFromResourceRequest& request, const RemoveLFTagsFromResourceResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const
548 {
549 handler(this, request, RemoveLFTagsFromResource(request), context);
550 }
551
RevokePermissions(const RevokePermissionsRequest & request) const552 RevokePermissionsOutcome LakeFormationClient::RevokePermissions(const RevokePermissionsRequest& request) const
553 {
554 Aws::Http::URI uri = m_uri;
555 return RevokePermissionsOutcome(MakeRequest(uri, request, Aws::Http::HttpMethod::HTTP_POST, Aws::Auth::SIGV4_SIGNER));
556 }
557
RevokePermissionsCallable(const RevokePermissionsRequest & request) const558 RevokePermissionsOutcomeCallable LakeFormationClient::RevokePermissionsCallable(const RevokePermissionsRequest& request) const
559 {
560 auto task = Aws::MakeShared< std::packaged_task< RevokePermissionsOutcome() > >(ALLOCATION_TAG, [this, request](){ return this->RevokePermissions(request); } );
561 auto packagedFunction = [task]() { (*task)(); };
562 m_executor->Submit(packagedFunction);
563 return task->get_future();
564 }
565
RevokePermissionsAsync(const RevokePermissionsRequest & request,const RevokePermissionsResponseReceivedHandler & handler,const std::shared_ptr<const Aws::Client::AsyncCallerContext> & context) const566 void LakeFormationClient::RevokePermissionsAsync(const RevokePermissionsRequest& request, const RevokePermissionsResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const
567 {
568 m_executor->Submit( [this, request, handler, context](){ this->RevokePermissionsAsyncHelper( request, handler, context ); } );
569 }
570
RevokePermissionsAsyncHelper(const RevokePermissionsRequest & request,const RevokePermissionsResponseReceivedHandler & handler,const std::shared_ptr<const Aws::Client::AsyncCallerContext> & context) const571 void LakeFormationClient::RevokePermissionsAsyncHelper(const RevokePermissionsRequest& request, const RevokePermissionsResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const
572 {
573 handler(this, request, RevokePermissions(request), context);
574 }
575
SearchDatabasesByLFTags(const SearchDatabasesByLFTagsRequest & request) const576 SearchDatabasesByLFTagsOutcome LakeFormationClient::SearchDatabasesByLFTags(const SearchDatabasesByLFTagsRequest& request) const
577 {
578 Aws::Http::URI uri = m_uri;
579 return SearchDatabasesByLFTagsOutcome(MakeRequest(uri, request, Aws::Http::HttpMethod::HTTP_POST, Aws::Auth::SIGV4_SIGNER));
580 }
581
SearchDatabasesByLFTagsCallable(const SearchDatabasesByLFTagsRequest & request) const582 SearchDatabasesByLFTagsOutcomeCallable LakeFormationClient::SearchDatabasesByLFTagsCallable(const SearchDatabasesByLFTagsRequest& request) const
583 {
584 auto task = Aws::MakeShared< std::packaged_task< SearchDatabasesByLFTagsOutcome() > >(ALLOCATION_TAG, [this, request](){ return this->SearchDatabasesByLFTags(request); } );
585 auto packagedFunction = [task]() { (*task)(); };
586 m_executor->Submit(packagedFunction);
587 return task->get_future();
588 }
589
SearchDatabasesByLFTagsAsync(const SearchDatabasesByLFTagsRequest & request,const SearchDatabasesByLFTagsResponseReceivedHandler & handler,const std::shared_ptr<const Aws::Client::AsyncCallerContext> & context) const590 void LakeFormationClient::SearchDatabasesByLFTagsAsync(const SearchDatabasesByLFTagsRequest& request, const SearchDatabasesByLFTagsResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const
591 {
592 m_executor->Submit( [this, request, handler, context](){ this->SearchDatabasesByLFTagsAsyncHelper( request, handler, context ); } );
593 }
594
SearchDatabasesByLFTagsAsyncHelper(const SearchDatabasesByLFTagsRequest & request,const SearchDatabasesByLFTagsResponseReceivedHandler & handler,const std::shared_ptr<const Aws::Client::AsyncCallerContext> & context) const595 void LakeFormationClient::SearchDatabasesByLFTagsAsyncHelper(const SearchDatabasesByLFTagsRequest& request, const SearchDatabasesByLFTagsResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const
596 {
597 handler(this, request, SearchDatabasesByLFTags(request), context);
598 }
599
SearchTablesByLFTags(const SearchTablesByLFTagsRequest & request) const600 SearchTablesByLFTagsOutcome LakeFormationClient::SearchTablesByLFTags(const SearchTablesByLFTagsRequest& request) const
601 {
602 Aws::Http::URI uri = m_uri;
603 return SearchTablesByLFTagsOutcome(MakeRequest(uri, request, Aws::Http::HttpMethod::HTTP_POST, Aws::Auth::SIGV4_SIGNER));
604 }
605
SearchTablesByLFTagsCallable(const SearchTablesByLFTagsRequest & request) const606 SearchTablesByLFTagsOutcomeCallable LakeFormationClient::SearchTablesByLFTagsCallable(const SearchTablesByLFTagsRequest& request) const
607 {
608 auto task = Aws::MakeShared< std::packaged_task< SearchTablesByLFTagsOutcome() > >(ALLOCATION_TAG, [this, request](){ return this->SearchTablesByLFTags(request); } );
609 auto packagedFunction = [task]() { (*task)(); };
610 m_executor->Submit(packagedFunction);
611 return task->get_future();
612 }
613
SearchTablesByLFTagsAsync(const SearchTablesByLFTagsRequest & request,const SearchTablesByLFTagsResponseReceivedHandler & handler,const std::shared_ptr<const Aws::Client::AsyncCallerContext> & context) const614 void LakeFormationClient::SearchTablesByLFTagsAsync(const SearchTablesByLFTagsRequest& request, const SearchTablesByLFTagsResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const
615 {
616 m_executor->Submit( [this, request, handler, context](){ this->SearchTablesByLFTagsAsyncHelper( request, handler, context ); } );
617 }
618
SearchTablesByLFTagsAsyncHelper(const SearchTablesByLFTagsRequest & request,const SearchTablesByLFTagsResponseReceivedHandler & handler,const std::shared_ptr<const Aws::Client::AsyncCallerContext> & context) const619 void LakeFormationClient::SearchTablesByLFTagsAsyncHelper(const SearchTablesByLFTagsRequest& request, const SearchTablesByLFTagsResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const
620 {
621 handler(this, request, SearchTablesByLFTags(request), context);
622 }
623
UpdateLFTag(const UpdateLFTagRequest & request) const624 UpdateLFTagOutcome LakeFormationClient::UpdateLFTag(const UpdateLFTagRequest& request) const
625 {
626 Aws::Http::URI uri = m_uri;
627 return UpdateLFTagOutcome(MakeRequest(uri, request, Aws::Http::HttpMethod::HTTP_POST, Aws::Auth::SIGV4_SIGNER));
628 }
629
UpdateLFTagCallable(const UpdateLFTagRequest & request) const630 UpdateLFTagOutcomeCallable LakeFormationClient::UpdateLFTagCallable(const UpdateLFTagRequest& request) const
631 {
632 auto task = Aws::MakeShared< std::packaged_task< UpdateLFTagOutcome() > >(ALLOCATION_TAG, [this, request](){ return this->UpdateLFTag(request); } );
633 auto packagedFunction = [task]() { (*task)(); };
634 m_executor->Submit(packagedFunction);
635 return task->get_future();
636 }
637
UpdateLFTagAsync(const UpdateLFTagRequest & request,const UpdateLFTagResponseReceivedHandler & handler,const std::shared_ptr<const Aws::Client::AsyncCallerContext> & context) const638 void LakeFormationClient::UpdateLFTagAsync(const UpdateLFTagRequest& request, const UpdateLFTagResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const
639 {
640 m_executor->Submit( [this, request, handler, context](){ this->UpdateLFTagAsyncHelper( request, handler, context ); } );
641 }
642
UpdateLFTagAsyncHelper(const UpdateLFTagRequest & request,const UpdateLFTagResponseReceivedHandler & handler,const std::shared_ptr<const Aws::Client::AsyncCallerContext> & context) const643 void LakeFormationClient::UpdateLFTagAsyncHelper(const UpdateLFTagRequest& request, const UpdateLFTagResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const
644 {
645 handler(this, request, UpdateLFTag(request), context);
646 }
647
UpdateResource(const UpdateResourceRequest & request) const648 UpdateResourceOutcome LakeFormationClient::UpdateResource(const UpdateResourceRequest& request) const
649 {
650 Aws::Http::URI uri = m_uri;
651 return UpdateResourceOutcome(MakeRequest(uri, request, Aws::Http::HttpMethod::HTTP_POST, Aws::Auth::SIGV4_SIGNER));
652 }
653
UpdateResourceCallable(const UpdateResourceRequest & request) const654 UpdateResourceOutcomeCallable LakeFormationClient::UpdateResourceCallable(const UpdateResourceRequest& request) const
655 {
656 auto task = Aws::MakeShared< std::packaged_task< UpdateResourceOutcome() > >(ALLOCATION_TAG, [this, request](){ return this->UpdateResource(request); } );
657 auto packagedFunction = [task]() { (*task)(); };
658 m_executor->Submit(packagedFunction);
659 return task->get_future();
660 }
661
UpdateResourceAsync(const UpdateResourceRequest & request,const UpdateResourceResponseReceivedHandler & handler,const std::shared_ptr<const Aws::Client::AsyncCallerContext> & context) const662 void LakeFormationClient::UpdateResourceAsync(const UpdateResourceRequest& request, const UpdateResourceResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const
663 {
664 m_executor->Submit( [this, request, handler, context](){ this->UpdateResourceAsyncHelper( request, handler, context ); } );
665 }
666
UpdateResourceAsyncHelper(const UpdateResourceRequest & request,const UpdateResourceResponseReceivedHandler & handler,const std::shared_ptr<const Aws::Client::AsyncCallerContext> & context) const667 void LakeFormationClient::UpdateResourceAsyncHelper(const UpdateResourceRequest& request, const UpdateResourceResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const
668 {
669 handler(this, request, UpdateResource(request), context);
670 }
671
672