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/mq/MQClient.h>
21 #include <aws/mq/MQEndpoint.h>
22 #include <aws/mq/MQErrorMarshaller.h>
23 #include <aws/mq/model/CreateBrokerRequest.h>
24 #include <aws/mq/model/CreateConfigurationRequest.h>
25 #include <aws/mq/model/CreateTagsRequest.h>
26 #include <aws/mq/model/CreateUserRequest.h>
27 #include <aws/mq/model/DeleteBrokerRequest.h>
28 #include <aws/mq/model/DeleteTagsRequest.h>
29 #include <aws/mq/model/DeleteUserRequest.h>
30 #include <aws/mq/model/DescribeBrokerRequest.h>
31 #include <aws/mq/model/DescribeBrokerEngineTypesRequest.h>
32 #include <aws/mq/model/DescribeBrokerInstanceOptionsRequest.h>
33 #include <aws/mq/model/DescribeConfigurationRequest.h>
34 #include <aws/mq/model/DescribeConfigurationRevisionRequest.h>
35 #include <aws/mq/model/DescribeUserRequest.h>
36 #include <aws/mq/model/ListBrokersRequest.h>
37 #include <aws/mq/model/ListConfigurationRevisionsRequest.h>
38 #include <aws/mq/model/ListConfigurationsRequest.h>
39 #include <aws/mq/model/ListTagsRequest.h>
40 #include <aws/mq/model/ListUsersRequest.h>
41 #include <aws/mq/model/RebootBrokerRequest.h>
42 #include <aws/mq/model/UpdateBrokerRequest.h>
43 #include <aws/mq/model/UpdateConfigurationRequest.h>
44 #include <aws/mq/model/UpdateUserRequest.h>
45
46 using namespace Aws;
47 using namespace Aws::Auth;
48 using namespace Aws::Client;
49 using namespace Aws::MQ;
50 using namespace Aws::MQ::Model;
51 using namespace Aws::Http;
52 using namespace Aws::Utils::Json;
53
54 static const char* SERVICE_NAME = "mq";
55 static const char* ALLOCATION_TAG = "MQClient";
56
57
MQClient(const Client::ClientConfiguration & clientConfiguration)58 MQClient::MQClient(const Client::ClientConfiguration& clientConfiguration) :
59 BASECLASS(clientConfiguration,
60 Aws::MakeShared<AWSAuthV4Signer>(ALLOCATION_TAG, Aws::MakeShared<DefaultAWSCredentialsProviderChain>(ALLOCATION_TAG),
61 SERVICE_NAME, Aws::Region::ComputeSignerRegion(clientConfiguration.region)),
62 Aws::MakeShared<MQErrorMarshaller>(ALLOCATION_TAG)),
63 m_executor(clientConfiguration.executor)
64 {
65 init(clientConfiguration);
66 }
67
MQClient(const AWSCredentials & credentials,const Client::ClientConfiguration & clientConfiguration)68 MQClient::MQClient(const AWSCredentials& credentials, const Client::ClientConfiguration& clientConfiguration) :
69 BASECLASS(clientConfiguration,
70 Aws::MakeShared<AWSAuthV4Signer>(ALLOCATION_TAG, Aws::MakeShared<SimpleAWSCredentialsProvider>(ALLOCATION_TAG, credentials),
71 SERVICE_NAME, Aws::Region::ComputeSignerRegion(clientConfiguration.region)),
72 Aws::MakeShared<MQErrorMarshaller>(ALLOCATION_TAG)),
73 m_executor(clientConfiguration.executor)
74 {
75 init(clientConfiguration);
76 }
77
MQClient(const std::shared_ptr<AWSCredentialsProvider> & credentialsProvider,const Client::ClientConfiguration & clientConfiguration)78 MQClient::MQClient(const std::shared_ptr<AWSCredentialsProvider>& credentialsProvider,
79 const Client::ClientConfiguration& clientConfiguration) :
80 BASECLASS(clientConfiguration,
81 Aws::MakeShared<AWSAuthV4Signer>(ALLOCATION_TAG, credentialsProvider,
82 SERVICE_NAME, Aws::Region::ComputeSignerRegion(clientConfiguration.region)),
83 Aws::MakeShared<MQErrorMarshaller>(ALLOCATION_TAG)),
84 m_executor(clientConfiguration.executor)
85 {
86 init(clientConfiguration);
87 }
88
~MQClient()89 MQClient::~MQClient()
90 {
91 }
92
init(const Client::ClientConfiguration & config)93 void MQClient::init(const Client::ClientConfiguration& config)
94 {
95 SetServiceClientName("mq");
96 m_configScheme = SchemeMapper::ToString(config.scheme);
97 if (config.endpointOverride.empty())
98 {
99 m_uri = m_configScheme + "://" + MQEndpoint::ForRegion(config.region, config.useDualStack);
100 }
101 else
102 {
103 OverrideEndpoint(config.endpointOverride);
104 }
105 }
106
OverrideEndpoint(const Aws::String & endpoint)107 void MQClient::OverrideEndpoint(const Aws::String& endpoint)
108 {
109 if (endpoint.compare(0, 7, "http://") == 0 || endpoint.compare(0, 8, "https://") == 0)
110 {
111 m_uri = endpoint;
112 }
113 else
114 {
115 m_uri = m_configScheme + "://" + endpoint;
116 }
117 }
118
CreateBroker(const CreateBrokerRequest & request) const119 CreateBrokerOutcome MQClient::CreateBroker(const CreateBrokerRequest& request) const
120 {
121 Aws::Http::URI uri = m_uri;
122 uri.AddPathSegments("/v1/brokers");
123 return CreateBrokerOutcome(MakeRequest(uri, request, Aws::Http::HttpMethod::HTTP_POST, Aws::Auth::SIGV4_SIGNER));
124 }
125
CreateBrokerCallable(const CreateBrokerRequest & request) const126 CreateBrokerOutcomeCallable MQClient::CreateBrokerCallable(const CreateBrokerRequest& request) const
127 {
128 auto task = Aws::MakeShared< std::packaged_task< CreateBrokerOutcome() > >(ALLOCATION_TAG, [this, request](){ return this->CreateBroker(request); } );
129 auto packagedFunction = [task]() { (*task)(); };
130 m_executor->Submit(packagedFunction);
131 return task->get_future();
132 }
133
CreateBrokerAsync(const CreateBrokerRequest & request,const CreateBrokerResponseReceivedHandler & handler,const std::shared_ptr<const Aws::Client::AsyncCallerContext> & context) const134 void MQClient::CreateBrokerAsync(const CreateBrokerRequest& request, const CreateBrokerResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const
135 {
136 m_executor->Submit( [this, request, handler, context](){ this->CreateBrokerAsyncHelper( request, handler, context ); } );
137 }
138
CreateBrokerAsyncHelper(const CreateBrokerRequest & request,const CreateBrokerResponseReceivedHandler & handler,const std::shared_ptr<const Aws::Client::AsyncCallerContext> & context) const139 void MQClient::CreateBrokerAsyncHelper(const CreateBrokerRequest& request, const CreateBrokerResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const
140 {
141 handler(this, request, CreateBroker(request), context);
142 }
143
CreateConfiguration(const CreateConfigurationRequest & request) const144 CreateConfigurationOutcome MQClient::CreateConfiguration(const CreateConfigurationRequest& request) const
145 {
146 Aws::Http::URI uri = m_uri;
147 uri.AddPathSegments("/v1/configurations");
148 return CreateConfigurationOutcome(MakeRequest(uri, request, Aws::Http::HttpMethod::HTTP_POST, Aws::Auth::SIGV4_SIGNER));
149 }
150
CreateConfigurationCallable(const CreateConfigurationRequest & request) const151 CreateConfigurationOutcomeCallable MQClient::CreateConfigurationCallable(const CreateConfigurationRequest& request) const
152 {
153 auto task = Aws::MakeShared< std::packaged_task< CreateConfigurationOutcome() > >(ALLOCATION_TAG, [this, request](){ return this->CreateConfiguration(request); } );
154 auto packagedFunction = [task]() { (*task)(); };
155 m_executor->Submit(packagedFunction);
156 return task->get_future();
157 }
158
CreateConfigurationAsync(const CreateConfigurationRequest & request,const CreateConfigurationResponseReceivedHandler & handler,const std::shared_ptr<const Aws::Client::AsyncCallerContext> & context) const159 void MQClient::CreateConfigurationAsync(const CreateConfigurationRequest& request, const CreateConfigurationResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const
160 {
161 m_executor->Submit( [this, request, handler, context](){ this->CreateConfigurationAsyncHelper( request, handler, context ); } );
162 }
163
CreateConfigurationAsyncHelper(const CreateConfigurationRequest & request,const CreateConfigurationResponseReceivedHandler & handler,const std::shared_ptr<const Aws::Client::AsyncCallerContext> & context) const164 void MQClient::CreateConfigurationAsyncHelper(const CreateConfigurationRequest& request, const CreateConfigurationResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const
165 {
166 handler(this, request, CreateConfiguration(request), context);
167 }
168
CreateTags(const CreateTagsRequest & request) const169 CreateTagsOutcome MQClient::CreateTags(const CreateTagsRequest& request) const
170 {
171 if (!request.ResourceArnHasBeenSet())
172 {
173 AWS_LOGSTREAM_ERROR("CreateTags", "Required field: ResourceArn, is not set");
174 return CreateTagsOutcome(Aws::Client::AWSError<MQErrors>(MQErrors::MISSING_PARAMETER, "MISSING_PARAMETER", "Missing required field [ResourceArn]", false));
175 }
176 Aws::Http::URI uri = m_uri;
177 uri.AddPathSegments("/v1/tags/");
178 uri.AddPathSegment(request.GetResourceArn());
179 return CreateTagsOutcome(MakeRequest(uri, request, Aws::Http::HttpMethod::HTTP_POST, Aws::Auth::SIGV4_SIGNER));
180 }
181
CreateTagsCallable(const CreateTagsRequest & request) const182 CreateTagsOutcomeCallable MQClient::CreateTagsCallable(const CreateTagsRequest& request) const
183 {
184 auto task = Aws::MakeShared< std::packaged_task< CreateTagsOutcome() > >(ALLOCATION_TAG, [this, request](){ return this->CreateTags(request); } );
185 auto packagedFunction = [task]() { (*task)(); };
186 m_executor->Submit(packagedFunction);
187 return task->get_future();
188 }
189
CreateTagsAsync(const CreateTagsRequest & request,const CreateTagsResponseReceivedHandler & handler,const std::shared_ptr<const Aws::Client::AsyncCallerContext> & context) const190 void MQClient::CreateTagsAsync(const CreateTagsRequest& request, const CreateTagsResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const
191 {
192 m_executor->Submit( [this, request, handler, context](){ this->CreateTagsAsyncHelper( request, handler, context ); } );
193 }
194
CreateTagsAsyncHelper(const CreateTagsRequest & request,const CreateTagsResponseReceivedHandler & handler,const std::shared_ptr<const Aws::Client::AsyncCallerContext> & context) const195 void MQClient::CreateTagsAsyncHelper(const CreateTagsRequest& request, const CreateTagsResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const
196 {
197 handler(this, request, CreateTags(request), context);
198 }
199
CreateUser(const CreateUserRequest & request) const200 CreateUserOutcome MQClient::CreateUser(const CreateUserRequest& request) const
201 {
202 if (!request.BrokerIdHasBeenSet())
203 {
204 AWS_LOGSTREAM_ERROR("CreateUser", "Required field: BrokerId, is not set");
205 return CreateUserOutcome(Aws::Client::AWSError<MQErrors>(MQErrors::MISSING_PARAMETER, "MISSING_PARAMETER", "Missing required field [BrokerId]", false));
206 }
207 if (!request.UsernameHasBeenSet())
208 {
209 AWS_LOGSTREAM_ERROR("CreateUser", "Required field: Username, is not set");
210 return CreateUserOutcome(Aws::Client::AWSError<MQErrors>(MQErrors::MISSING_PARAMETER, "MISSING_PARAMETER", "Missing required field [Username]", false));
211 }
212 Aws::Http::URI uri = m_uri;
213 uri.AddPathSegments("/v1/brokers/");
214 uri.AddPathSegment(request.GetBrokerId());
215 uri.AddPathSegments("/users/");
216 uri.AddPathSegment(request.GetUsername());
217 return CreateUserOutcome(MakeRequest(uri, request, Aws::Http::HttpMethod::HTTP_POST, Aws::Auth::SIGV4_SIGNER));
218 }
219
CreateUserCallable(const CreateUserRequest & request) const220 CreateUserOutcomeCallable MQClient::CreateUserCallable(const CreateUserRequest& request) const
221 {
222 auto task = Aws::MakeShared< std::packaged_task< CreateUserOutcome() > >(ALLOCATION_TAG, [this, request](){ return this->CreateUser(request); } );
223 auto packagedFunction = [task]() { (*task)(); };
224 m_executor->Submit(packagedFunction);
225 return task->get_future();
226 }
227
CreateUserAsync(const CreateUserRequest & request,const CreateUserResponseReceivedHandler & handler,const std::shared_ptr<const Aws::Client::AsyncCallerContext> & context) const228 void MQClient::CreateUserAsync(const CreateUserRequest& request, const CreateUserResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const
229 {
230 m_executor->Submit( [this, request, handler, context](){ this->CreateUserAsyncHelper( request, handler, context ); } );
231 }
232
CreateUserAsyncHelper(const CreateUserRequest & request,const CreateUserResponseReceivedHandler & handler,const std::shared_ptr<const Aws::Client::AsyncCallerContext> & context) const233 void MQClient::CreateUserAsyncHelper(const CreateUserRequest& request, const CreateUserResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const
234 {
235 handler(this, request, CreateUser(request), context);
236 }
237
DeleteBroker(const DeleteBrokerRequest & request) const238 DeleteBrokerOutcome MQClient::DeleteBroker(const DeleteBrokerRequest& request) const
239 {
240 if (!request.BrokerIdHasBeenSet())
241 {
242 AWS_LOGSTREAM_ERROR("DeleteBroker", "Required field: BrokerId, is not set");
243 return DeleteBrokerOutcome(Aws::Client::AWSError<MQErrors>(MQErrors::MISSING_PARAMETER, "MISSING_PARAMETER", "Missing required field [BrokerId]", false));
244 }
245 Aws::Http::URI uri = m_uri;
246 uri.AddPathSegments("/v1/brokers/");
247 uri.AddPathSegment(request.GetBrokerId());
248 return DeleteBrokerOutcome(MakeRequest(uri, request, Aws::Http::HttpMethod::HTTP_DELETE, Aws::Auth::SIGV4_SIGNER));
249 }
250
DeleteBrokerCallable(const DeleteBrokerRequest & request) const251 DeleteBrokerOutcomeCallable MQClient::DeleteBrokerCallable(const DeleteBrokerRequest& request) const
252 {
253 auto task = Aws::MakeShared< std::packaged_task< DeleteBrokerOutcome() > >(ALLOCATION_TAG, [this, request](){ return this->DeleteBroker(request); } );
254 auto packagedFunction = [task]() { (*task)(); };
255 m_executor->Submit(packagedFunction);
256 return task->get_future();
257 }
258
DeleteBrokerAsync(const DeleteBrokerRequest & request,const DeleteBrokerResponseReceivedHandler & handler,const std::shared_ptr<const Aws::Client::AsyncCallerContext> & context) const259 void MQClient::DeleteBrokerAsync(const DeleteBrokerRequest& request, const DeleteBrokerResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const
260 {
261 m_executor->Submit( [this, request, handler, context](){ this->DeleteBrokerAsyncHelper( request, handler, context ); } );
262 }
263
DeleteBrokerAsyncHelper(const DeleteBrokerRequest & request,const DeleteBrokerResponseReceivedHandler & handler,const std::shared_ptr<const Aws::Client::AsyncCallerContext> & context) const264 void MQClient::DeleteBrokerAsyncHelper(const DeleteBrokerRequest& request, const DeleteBrokerResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const
265 {
266 handler(this, request, DeleteBroker(request), context);
267 }
268
DeleteTags(const DeleteTagsRequest & request) const269 DeleteTagsOutcome MQClient::DeleteTags(const DeleteTagsRequest& request) const
270 {
271 if (!request.ResourceArnHasBeenSet())
272 {
273 AWS_LOGSTREAM_ERROR("DeleteTags", "Required field: ResourceArn, is not set");
274 return DeleteTagsOutcome(Aws::Client::AWSError<MQErrors>(MQErrors::MISSING_PARAMETER, "MISSING_PARAMETER", "Missing required field [ResourceArn]", false));
275 }
276 if (!request.TagKeysHasBeenSet())
277 {
278 AWS_LOGSTREAM_ERROR("DeleteTags", "Required field: TagKeys, is not set");
279 return DeleteTagsOutcome(Aws::Client::AWSError<MQErrors>(MQErrors::MISSING_PARAMETER, "MISSING_PARAMETER", "Missing required field [TagKeys]", false));
280 }
281 Aws::Http::URI uri = m_uri;
282 uri.AddPathSegments("/v1/tags/");
283 uri.AddPathSegment(request.GetResourceArn());
284 return DeleteTagsOutcome(MakeRequest(uri, request, Aws::Http::HttpMethod::HTTP_DELETE, Aws::Auth::SIGV4_SIGNER));
285 }
286
DeleteTagsCallable(const DeleteTagsRequest & request) const287 DeleteTagsOutcomeCallable MQClient::DeleteTagsCallable(const DeleteTagsRequest& request) const
288 {
289 auto task = Aws::MakeShared< std::packaged_task< DeleteTagsOutcome() > >(ALLOCATION_TAG, [this, request](){ return this->DeleteTags(request); } );
290 auto packagedFunction = [task]() { (*task)(); };
291 m_executor->Submit(packagedFunction);
292 return task->get_future();
293 }
294
DeleteTagsAsync(const DeleteTagsRequest & request,const DeleteTagsResponseReceivedHandler & handler,const std::shared_ptr<const Aws::Client::AsyncCallerContext> & context) const295 void MQClient::DeleteTagsAsync(const DeleteTagsRequest& request, const DeleteTagsResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const
296 {
297 m_executor->Submit( [this, request, handler, context](){ this->DeleteTagsAsyncHelper( request, handler, context ); } );
298 }
299
DeleteTagsAsyncHelper(const DeleteTagsRequest & request,const DeleteTagsResponseReceivedHandler & handler,const std::shared_ptr<const Aws::Client::AsyncCallerContext> & context) const300 void MQClient::DeleteTagsAsyncHelper(const DeleteTagsRequest& request, const DeleteTagsResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const
301 {
302 handler(this, request, DeleteTags(request), context);
303 }
304
DeleteUser(const DeleteUserRequest & request) const305 DeleteUserOutcome MQClient::DeleteUser(const DeleteUserRequest& request) const
306 {
307 if (!request.BrokerIdHasBeenSet())
308 {
309 AWS_LOGSTREAM_ERROR("DeleteUser", "Required field: BrokerId, is not set");
310 return DeleteUserOutcome(Aws::Client::AWSError<MQErrors>(MQErrors::MISSING_PARAMETER, "MISSING_PARAMETER", "Missing required field [BrokerId]", false));
311 }
312 if (!request.UsernameHasBeenSet())
313 {
314 AWS_LOGSTREAM_ERROR("DeleteUser", "Required field: Username, is not set");
315 return DeleteUserOutcome(Aws::Client::AWSError<MQErrors>(MQErrors::MISSING_PARAMETER, "MISSING_PARAMETER", "Missing required field [Username]", false));
316 }
317 Aws::Http::URI uri = m_uri;
318 uri.AddPathSegments("/v1/brokers/");
319 uri.AddPathSegment(request.GetBrokerId());
320 uri.AddPathSegments("/users/");
321 uri.AddPathSegment(request.GetUsername());
322 return DeleteUserOutcome(MakeRequest(uri, request, Aws::Http::HttpMethod::HTTP_DELETE, Aws::Auth::SIGV4_SIGNER));
323 }
324
DeleteUserCallable(const DeleteUserRequest & request) const325 DeleteUserOutcomeCallable MQClient::DeleteUserCallable(const DeleteUserRequest& request) const
326 {
327 auto task = Aws::MakeShared< std::packaged_task< DeleteUserOutcome() > >(ALLOCATION_TAG, [this, request](){ return this->DeleteUser(request); } );
328 auto packagedFunction = [task]() { (*task)(); };
329 m_executor->Submit(packagedFunction);
330 return task->get_future();
331 }
332
DeleteUserAsync(const DeleteUserRequest & request,const DeleteUserResponseReceivedHandler & handler,const std::shared_ptr<const Aws::Client::AsyncCallerContext> & context) const333 void MQClient::DeleteUserAsync(const DeleteUserRequest& request, const DeleteUserResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const
334 {
335 m_executor->Submit( [this, request, handler, context](){ this->DeleteUserAsyncHelper( request, handler, context ); } );
336 }
337
DeleteUserAsyncHelper(const DeleteUserRequest & request,const DeleteUserResponseReceivedHandler & handler,const std::shared_ptr<const Aws::Client::AsyncCallerContext> & context) const338 void MQClient::DeleteUserAsyncHelper(const DeleteUserRequest& request, const DeleteUserResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const
339 {
340 handler(this, request, DeleteUser(request), context);
341 }
342
DescribeBroker(const DescribeBrokerRequest & request) const343 DescribeBrokerOutcome MQClient::DescribeBroker(const DescribeBrokerRequest& request) const
344 {
345 if (!request.BrokerIdHasBeenSet())
346 {
347 AWS_LOGSTREAM_ERROR("DescribeBroker", "Required field: BrokerId, is not set");
348 return DescribeBrokerOutcome(Aws::Client::AWSError<MQErrors>(MQErrors::MISSING_PARAMETER, "MISSING_PARAMETER", "Missing required field [BrokerId]", false));
349 }
350 Aws::Http::URI uri = m_uri;
351 uri.AddPathSegments("/v1/brokers/");
352 uri.AddPathSegment(request.GetBrokerId());
353 return DescribeBrokerOutcome(MakeRequest(uri, request, Aws::Http::HttpMethod::HTTP_GET, Aws::Auth::SIGV4_SIGNER));
354 }
355
DescribeBrokerCallable(const DescribeBrokerRequest & request) const356 DescribeBrokerOutcomeCallable MQClient::DescribeBrokerCallable(const DescribeBrokerRequest& request) const
357 {
358 auto task = Aws::MakeShared< std::packaged_task< DescribeBrokerOutcome() > >(ALLOCATION_TAG, [this, request](){ return this->DescribeBroker(request); } );
359 auto packagedFunction = [task]() { (*task)(); };
360 m_executor->Submit(packagedFunction);
361 return task->get_future();
362 }
363
DescribeBrokerAsync(const DescribeBrokerRequest & request,const DescribeBrokerResponseReceivedHandler & handler,const std::shared_ptr<const Aws::Client::AsyncCallerContext> & context) const364 void MQClient::DescribeBrokerAsync(const DescribeBrokerRequest& request, const DescribeBrokerResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const
365 {
366 m_executor->Submit( [this, request, handler, context](){ this->DescribeBrokerAsyncHelper( request, handler, context ); } );
367 }
368
DescribeBrokerAsyncHelper(const DescribeBrokerRequest & request,const DescribeBrokerResponseReceivedHandler & handler,const std::shared_ptr<const Aws::Client::AsyncCallerContext> & context) const369 void MQClient::DescribeBrokerAsyncHelper(const DescribeBrokerRequest& request, const DescribeBrokerResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const
370 {
371 handler(this, request, DescribeBroker(request), context);
372 }
373
DescribeBrokerEngineTypes(const DescribeBrokerEngineTypesRequest & request) const374 DescribeBrokerEngineTypesOutcome MQClient::DescribeBrokerEngineTypes(const DescribeBrokerEngineTypesRequest& request) const
375 {
376 Aws::Http::URI uri = m_uri;
377 uri.AddPathSegments("/v1/broker-engine-types");
378 return DescribeBrokerEngineTypesOutcome(MakeRequest(uri, request, Aws::Http::HttpMethod::HTTP_GET, Aws::Auth::SIGV4_SIGNER));
379 }
380
DescribeBrokerEngineTypesCallable(const DescribeBrokerEngineTypesRequest & request) const381 DescribeBrokerEngineTypesOutcomeCallable MQClient::DescribeBrokerEngineTypesCallable(const DescribeBrokerEngineTypesRequest& request) const
382 {
383 auto task = Aws::MakeShared< std::packaged_task< DescribeBrokerEngineTypesOutcome() > >(ALLOCATION_TAG, [this, request](){ return this->DescribeBrokerEngineTypes(request); } );
384 auto packagedFunction = [task]() { (*task)(); };
385 m_executor->Submit(packagedFunction);
386 return task->get_future();
387 }
388
DescribeBrokerEngineTypesAsync(const DescribeBrokerEngineTypesRequest & request,const DescribeBrokerEngineTypesResponseReceivedHandler & handler,const std::shared_ptr<const Aws::Client::AsyncCallerContext> & context) const389 void MQClient::DescribeBrokerEngineTypesAsync(const DescribeBrokerEngineTypesRequest& request, const DescribeBrokerEngineTypesResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const
390 {
391 m_executor->Submit( [this, request, handler, context](){ this->DescribeBrokerEngineTypesAsyncHelper( request, handler, context ); } );
392 }
393
DescribeBrokerEngineTypesAsyncHelper(const DescribeBrokerEngineTypesRequest & request,const DescribeBrokerEngineTypesResponseReceivedHandler & handler,const std::shared_ptr<const Aws::Client::AsyncCallerContext> & context) const394 void MQClient::DescribeBrokerEngineTypesAsyncHelper(const DescribeBrokerEngineTypesRequest& request, const DescribeBrokerEngineTypesResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const
395 {
396 handler(this, request, DescribeBrokerEngineTypes(request), context);
397 }
398
DescribeBrokerInstanceOptions(const DescribeBrokerInstanceOptionsRequest & request) const399 DescribeBrokerInstanceOptionsOutcome MQClient::DescribeBrokerInstanceOptions(const DescribeBrokerInstanceOptionsRequest& request) const
400 {
401 Aws::Http::URI uri = m_uri;
402 uri.AddPathSegments("/v1/broker-instance-options");
403 return DescribeBrokerInstanceOptionsOutcome(MakeRequest(uri, request, Aws::Http::HttpMethod::HTTP_GET, Aws::Auth::SIGV4_SIGNER));
404 }
405
DescribeBrokerInstanceOptionsCallable(const DescribeBrokerInstanceOptionsRequest & request) const406 DescribeBrokerInstanceOptionsOutcomeCallable MQClient::DescribeBrokerInstanceOptionsCallable(const DescribeBrokerInstanceOptionsRequest& request) const
407 {
408 auto task = Aws::MakeShared< std::packaged_task< DescribeBrokerInstanceOptionsOutcome() > >(ALLOCATION_TAG, [this, request](){ return this->DescribeBrokerInstanceOptions(request); } );
409 auto packagedFunction = [task]() { (*task)(); };
410 m_executor->Submit(packagedFunction);
411 return task->get_future();
412 }
413
DescribeBrokerInstanceOptionsAsync(const DescribeBrokerInstanceOptionsRequest & request,const DescribeBrokerInstanceOptionsResponseReceivedHandler & handler,const std::shared_ptr<const Aws::Client::AsyncCallerContext> & context) const414 void MQClient::DescribeBrokerInstanceOptionsAsync(const DescribeBrokerInstanceOptionsRequest& request, const DescribeBrokerInstanceOptionsResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const
415 {
416 m_executor->Submit( [this, request, handler, context](){ this->DescribeBrokerInstanceOptionsAsyncHelper( request, handler, context ); } );
417 }
418
DescribeBrokerInstanceOptionsAsyncHelper(const DescribeBrokerInstanceOptionsRequest & request,const DescribeBrokerInstanceOptionsResponseReceivedHandler & handler,const std::shared_ptr<const Aws::Client::AsyncCallerContext> & context) const419 void MQClient::DescribeBrokerInstanceOptionsAsyncHelper(const DescribeBrokerInstanceOptionsRequest& request, const DescribeBrokerInstanceOptionsResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const
420 {
421 handler(this, request, DescribeBrokerInstanceOptions(request), context);
422 }
423
DescribeConfiguration(const DescribeConfigurationRequest & request) const424 DescribeConfigurationOutcome MQClient::DescribeConfiguration(const DescribeConfigurationRequest& request) const
425 {
426 if (!request.ConfigurationIdHasBeenSet())
427 {
428 AWS_LOGSTREAM_ERROR("DescribeConfiguration", "Required field: ConfigurationId, is not set");
429 return DescribeConfigurationOutcome(Aws::Client::AWSError<MQErrors>(MQErrors::MISSING_PARAMETER, "MISSING_PARAMETER", "Missing required field [ConfigurationId]", false));
430 }
431 Aws::Http::URI uri = m_uri;
432 uri.AddPathSegments("/v1/configurations/");
433 uri.AddPathSegment(request.GetConfigurationId());
434 return DescribeConfigurationOutcome(MakeRequest(uri, request, Aws::Http::HttpMethod::HTTP_GET, Aws::Auth::SIGV4_SIGNER));
435 }
436
DescribeConfigurationCallable(const DescribeConfigurationRequest & request) const437 DescribeConfigurationOutcomeCallable MQClient::DescribeConfigurationCallable(const DescribeConfigurationRequest& request) const
438 {
439 auto task = Aws::MakeShared< std::packaged_task< DescribeConfigurationOutcome() > >(ALLOCATION_TAG, [this, request](){ return this->DescribeConfiguration(request); } );
440 auto packagedFunction = [task]() { (*task)(); };
441 m_executor->Submit(packagedFunction);
442 return task->get_future();
443 }
444
DescribeConfigurationAsync(const DescribeConfigurationRequest & request,const DescribeConfigurationResponseReceivedHandler & handler,const std::shared_ptr<const Aws::Client::AsyncCallerContext> & context) const445 void MQClient::DescribeConfigurationAsync(const DescribeConfigurationRequest& request, const DescribeConfigurationResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const
446 {
447 m_executor->Submit( [this, request, handler, context](){ this->DescribeConfigurationAsyncHelper( request, handler, context ); } );
448 }
449
DescribeConfigurationAsyncHelper(const DescribeConfigurationRequest & request,const DescribeConfigurationResponseReceivedHandler & handler,const std::shared_ptr<const Aws::Client::AsyncCallerContext> & context) const450 void MQClient::DescribeConfigurationAsyncHelper(const DescribeConfigurationRequest& request, const DescribeConfigurationResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const
451 {
452 handler(this, request, DescribeConfiguration(request), context);
453 }
454
DescribeConfigurationRevision(const DescribeConfigurationRevisionRequest & request) const455 DescribeConfigurationRevisionOutcome MQClient::DescribeConfigurationRevision(const DescribeConfigurationRevisionRequest& request) const
456 {
457 if (!request.ConfigurationIdHasBeenSet())
458 {
459 AWS_LOGSTREAM_ERROR("DescribeConfigurationRevision", "Required field: ConfigurationId, is not set");
460 return DescribeConfigurationRevisionOutcome(Aws::Client::AWSError<MQErrors>(MQErrors::MISSING_PARAMETER, "MISSING_PARAMETER", "Missing required field [ConfigurationId]", false));
461 }
462 if (!request.ConfigurationRevisionHasBeenSet())
463 {
464 AWS_LOGSTREAM_ERROR("DescribeConfigurationRevision", "Required field: ConfigurationRevision, is not set");
465 return DescribeConfigurationRevisionOutcome(Aws::Client::AWSError<MQErrors>(MQErrors::MISSING_PARAMETER, "MISSING_PARAMETER", "Missing required field [ConfigurationRevision]", false));
466 }
467 Aws::Http::URI uri = m_uri;
468 uri.AddPathSegments("/v1/configurations/");
469 uri.AddPathSegment(request.GetConfigurationId());
470 uri.AddPathSegments("/revisions/");
471 uri.AddPathSegment(request.GetConfigurationRevision());
472 return DescribeConfigurationRevisionOutcome(MakeRequest(uri, request, Aws::Http::HttpMethod::HTTP_GET, Aws::Auth::SIGV4_SIGNER));
473 }
474
DescribeConfigurationRevisionCallable(const DescribeConfigurationRevisionRequest & request) const475 DescribeConfigurationRevisionOutcomeCallable MQClient::DescribeConfigurationRevisionCallable(const DescribeConfigurationRevisionRequest& request) const
476 {
477 auto task = Aws::MakeShared< std::packaged_task< DescribeConfigurationRevisionOutcome() > >(ALLOCATION_TAG, [this, request](){ return this->DescribeConfigurationRevision(request); } );
478 auto packagedFunction = [task]() { (*task)(); };
479 m_executor->Submit(packagedFunction);
480 return task->get_future();
481 }
482
DescribeConfigurationRevisionAsync(const DescribeConfigurationRevisionRequest & request,const DescribeConfigurationRevisionResponseReceivedHandler & handler,const std::shared_ptr<const Aws::Client::AsyncCallerContext> & context) const483 void MQClient::DescribeConfigurationRevisionAsync(const DescribeConfigurationRevisionRequest& request, const DescribeConfigurationRevisionResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const
484 {
485 m_executor->Submit( [this, request, handler, context](){ this->DescribeConfigurationRevisionAsyncHelper( request, handler, context ); } );
486 }
487
DescribeConfigurationRevisionAsyncHelper(const DescribeConfigurationRevisionRequest & request,const DescribeConfigurationRevisionResponseReceivedHandler & handler,const std::shared_ptr<const Aws::Client::AsyncCallerContext> & context) const488 void MQClient::DescribeConfigurationRevisionAsyncHelper(const DescribeConfigurationRevisionRequest& request, const DescribeConfigurationRevisionResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const
489 {
490 handler(this, request, DescribeConfigurationRevision(request), context);
491 }
492
DescribeUser(const DescribeUserRequest & request) const493 DescribeUserOutcome MQClient::DescribeUser(const DescribeUserRequest& request) const
494 {
495 if (!request.BrokerIdHasBeenSet())
496 {
497 AWS_LOGSTREAM_ERROR("DescribeUser", "Required field: BrokerId, is not set");
498 return DescribeUserOutcome(Aws::Client::AWSError<MQErrors>(MQErrors::MISSING_PARAMETER, "MISSING_PARAMETER", "Missing required field [BrokerId]", false));
499 }
500 if (!request.UsernameHasBeenSet())
501 {
502 AWS_LOGSTREAM_ERROR("DescribeUser", "Required field: Username, is not set");
503 return DescribeUserOutcome(Aws::Client::AWSError<MQErrors>(MQErrors::MISSING_PARAMETER, "MISSING_PARAMETER", "Missing required field [Username]", false));
504 }
505 Aws::Http::URI uri = m_uri;
506 uri.AddPathSegments("/v1/brokers/");
507 uri.AddPathSegment(request.GetBrokerId());
508 uri.AddPathSegments("/users/");
509 uri.AddPathSegment(request.GetUsername());
510 return DescribeUserOutcome(MakeRequest(uri, request, Aws::Http::HttpMethod::HTTP_GET, Aws::Auth::SIGV4_SIGNER));
511 }
512
DescribeUserCallable(const DescribeUserRequest & request) const513 DescribeUserOutcomeCallable MQClient::DescribeUserCallable(const DescribeUserRequest& request) const
514 {
515 auto task = Aws::MakeShared< std::packaged_task< DescribeUserOutcome() > >(ALLOCATION_TAG, [this, request](){ return this->DescribeUser(request); } );
516 auto packagedFunction = [task]() { (*task)(); };
517 m_executor->Submit(packagedFunction);
518 return task->get_future();
519 }
520
DescribeUserAsync(const DescribeUserRequest & request,const DescribeUserResponseReceivedHandler & handler,const std::shared_ptr<const Aws::Client::AsyncCallerContext> & context) const521 void MQClient::DescribeUserAsync(const DescribeUserRequest& request, const DescribeUserResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const
522 {
523 m_executor->Submit( [this, request, handler, context](){ this->DescribeUserAsyncHelper( request, handler, context ); } );
524 }
525
DescribeUserAsyncHelper(const DescribeUserRequest & request,const DescribeUserResponseReceivedHandler & handler,const std::shared_ptr<const Aws::Client::AsyncCallerContext> & context) const526 void MQClient::DescribeUserAsyncHelper(const DescribeUserRequest& request, const DescribeUserResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const
527 {
528 handler(this, request, DescribeUser(request), context);
529 }
530
ListBrokers(const ListBrokersRequest & request) const531 ListBrokersOutcome MQClient::ListBrokers(const ListBrokersRequest& request) const
532 {
533 Aws::Http::URI uri = m_uri;
534 uri.AddPathSegments("/v1/brokers");
535 return ListBrokersOutcome(MakeRequest(uri, request, Aws::Http::HttpMethod::HTTP_GET, Aws::Auth::SIGV4_SIGNER));
536 }
537
ListBrokersCallable(const ListBrokersRequest & request) const538 ListBrokersOutcomeCallable MQClient::ListBrokersCallable(const ListBrokersRequest& request) const
539 {
540 auto task = Aws::MakeShared< std::packaged_task< ListBrokersOutcome() > >(ALLOCATION_TAG, [this, request](){ return this->ListBrokers(request); } );
541 auto packagedFunction = [task]() { (*task)(); };
542 m_executor->Submit(packagedFunction);
543 return task->get_future();
544 }
545
ListBrokersAsync(const ListBrokersRequest & request,const ListBrokersResponseReceivedHandler & handler,const std::shared_ptr<const Aws::Client::AsyncCallerContext> & context) const546 void MQClient::ListBrokersAsync(const ListBrokersRequest& request, const ListBrokersResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const
547 {
548 m_executor->Submit( [this, request, handler, context](){ this->ListBrokersAsyncHelper( request, handler, context ); } );
549 }
550
ListBrokersAsyncHelper(const ListBrokersRequest & request,const ListBrokersResponseReceivedHandler & handler,const std::shared_ptr<const Aws::Client::AsyncCallerContext> & context) const551 void MQClient::ListBrokersAsyncHelper(const ListBrokersRequest& request, const ListBrokersResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const
552 {
553 handler(this, request, ListBrokers(request), context);
554 }
555
ListConfigurationRevisions(const ListConfigurationRevisionsRequest & request) const556 ListConfigurationRevisionsOutcome MQClient::ListConfigurationRevisions(const ListConfigurationRevisionsRequest& request) const
557 {
558 if (!request.ConfigurationIdHasBeenSet())
559 {
560 AWS_LOGSTREAM_ERROR("ListConfigurationRevisions", "Required field: ConfigurationId, is not set");
561 return ListConfigurationRevisionsOutcome(Aws::Client::AWSError<MQErrors>(MQErrors::MISSING_PARAMETER, "MISSING_PARAMETER", "Missing required field [ConfigurationId]", false));
562 }
563 Aws::Http::URI uri = m_uri;
564 uri.AddPathSegments("/v1/configurations/");
565 uri.AddPathSegment(request.GetConfigurationId());
566 uri.AddPathSegments("/revisions");
567 return ListConfigurationRevisionsOutcome(MakeRequest(uri, request, Aws::Http::HttpMethod::HTTP_GET, Aws::Auth::SIGV4_SIGNER));
568 }
569
ListConfigurationRevisionsCallable(const ListConfigurationRevisionsRequest & request) const570 ListConfigurationRevisionsOutcomeCallable MQClient::ListConfigurationRevisionsCallable(const ListConfigurationRevisionsRequest& request) const
571 {
572 auto task = Aws::MakeShared< std::packaged_task< ListConfigurationRevisionsOutcome() > >(ALLOCATION_TAG, [this, request](){ return this->ListConfigurationRevisions(request); } );
573 auto packagedFunction = [task]() { (*task)(); };
574 m_executor->Submit(packagedFunction);
575 return task->get_future();
576 }
577
ListConfigurationRevisionsAsync(const ListConfigurationRevisionsRequest & request,const ListConfigurationRevisionsResponseReceivedHandler & handler,const std::shared_ptr<const Aws::Client::AsyncCallerContext> & context) const578 void MQClient::ListConfigurationRevisionsAsync(const ListConfigurationRevisionsRequest& request, const ListConfigurationRevisionsResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const
579 {
580 m_executor->Submit( [this, request, handler, context](){ this->ListConfigurationRevisionsAsyncHelper( request, handler, context ); } );
581 }
582
ListConfigurationRevisionsAsyncHelper(const ListConfigurationRevisionsRequest & request,const ListConfigurationRevisionsResponseReceivedHandler & handler,const std::shared_ptr<const Aws::Client::AsyncCallerContext> & context) const583 void MQClient::ListConfigurationRevisionsAsyncHelper(const ListConfigurationRevisionsRequest& request, const ListConfigurationRevisionsResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const
584 {
585 handler(this, request, ListConfigurationRevisions(request), context);
586 }
587
ListConfigurations(const ListConfigurationsRequest & request) const588 ListConfigurationsOutcome MQClient::ListConfigurations(const ListConfigurationsRequest& request) const
589 {
590 Aws::Http::URI uri = m_uri;
591 uri.AddPathSegments("/v1/configurations");
592 return ListConfigurationsOutcome(MakeRequest(uri, request, Aws::Http::HttpMethod::HTTP_GET, Aws::Auth::SIGV4_SIGNER));
593 }
594
ListConfigurationsCallable(const ListConfigurationsRequest & request) const595 ListConfigurationsOutcomeCallable MQClient::ListConfigurationsCallable(const ListConfigurationsRequest& request) const
596 {
597 auto task = Aws::MakeShared< std::packaged_task< ListConfigurationsOutcome() > >(ALLOCATION_TAG, [this, request](){ return this->ListConfigurations(request); } );
598 auto packagedFunction = [task]() { (*task)(); };
599 m_executor->Submit(packagedFunction);
600 return task->get_future();
601 }
602
ListConfigurationsAsync(const ListConfigurationsRequest & request,const ListConfigurationsResponseReceivedHandler & handler,const std::shared_ptr<const Aws::Client::AsyncCallerContext> & context) const603 void MQClient::ListConfigurationsAsync(const ListConfigurationsRequest& request, const ListConfigurationsResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const
604 {
605 m_executor->Submit( [this, request, handler, context](){ this->ListConfigurationsAsyncHelper( request, handler, context ); } );
606 }
607
ListConfigurationsAsyncHelper(const ListConfigurationsRequest & request,const ListConfigurationsResponseReceivedHandler & handler,const std::shared_ptr<const Aws::Client::AsyncCallerContext> & context) const608 void MQClient::ListConfigurationsAsyncHelper(const ListConfigurationsRequest& request, const ListConfigurationsResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const
609 {
610 handler(this, request, ListConfigurations(request), context);
611 }
612
ListTags(const ListTagsRequest & request) const613 ListTagsOutcome MQClient::ListTags(const ListTagsRequest& request) const
614 {
615 if (!request.ResourceArnHasBeenSet())
616 {
617 AWS_LOGSTREAM_ERROR("ListTags", "Required field: ResourceArn, is not set");
618 return ListTagsOutcome(Aws::Client::AWSError<MQErrors>(MQErrors::MISSING_PARAMETER, "MISSING_PARAMETER", "Missing required field [ResourceArn]", false));
619 }
620 Aws::Http::URI uri = m_uri;
621 uri.AddPathSegments("/v1/tags/");
622 uri.AddPathSegment(request.GetResourceArn());
623 return ListTagsOutcome(MakeRequest(uri, request, Aws::Http::HttpMethod::HTTP_GET, Aws::Auth::SIGV4_SIGNER));
624 }
625
ListTagsCallable(const ListTagsRequest & request) const626 ListTagsOutcomeCallable MQClient::ListTagsCallable(const ListTagsRequest& request) const
627 {
628 auto task = Aws::MakeShared< std::packaged_task< ListTagsOutcome() > >(ALLOCATION_TAG, [this, request](){ return this->ListTags(request); } );
629 auto packagedFunction = [task]() { (*task)(); };
630 m_executor->Submit(packagedFunction);
631 return task->get_future();
632 }
633
ListTagsAsync(const ListTagsRequest & request,const ListTagsResponseReceivedHandler & handler,const std::shared_ptr<const Aws::Client::AsyncCallerContext> & context) const634 void MQClient::ListTagsAsync(const ListTagsRequest& request, const ListTagsResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const
635 {
636 m_executor->Submit( [this, request, handler, context](){ this->ListTagsAsyncHelper( request, handler, context ); } );
637 }
638
ListTagsAsyncHelper(const ListTagsRequest & request,const ListTagsResponseReceivedHandler & handler,const std::shared_ptr<const Aws::Client::AsyncCallerContext> & context) const639 void MQClient::ListTagsAsyncHelper(const ListTagsRequest& request, const ListTagsResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const
640 {
641 handler(this, request, ListTags(request), context);
642 }
643
ListUsers(const ListUsersRequest & request) const644 ListUsersOutcome MQClient::ListUsers(const ListUsersRequest& request) const
645 {
646 if (!request.BrokerIdHasBeenSet())
647 {
648 AWS_LOGSTREAM_ERROR("ListUsers", "Required field: BrokerId, is not set");
649 return ListUsersOutcome(Aws::Client::AWSError<MQErrors>(MQErrors::MISSING_PARAMETER, "MISSING_PARAMETER", "Missing required field [BrokerId]", false));
650 }
651 Aws::Http::URI uri = m_uri;
652 uri.AddPathSegments("/v1/brokers/");
653 uri.AddPathSegment(request.GetBrokerId());
654 uri.AddPathSegments("/users");
655 return ListUsersOutcome(MakeRequest(uri, request, Aws::Http::HttpMethod::HTTP_GET, Aws::Auth::SIGV4_SIGNER));
656 }
657
ListUsersCallable(const ListUsersRequest & request) const658 ListUsersOutcomeCallable MQClient::ListUsersCallable(const ListUsersRequest& request) const
659 {
660 auto task = Aws::MakeShared< std::packaged_task< ListUsersOutcome() > >(ALLOCATION_TAG, [this, request](){ return this->ListUsers(request); } );
661 auto packagedFunction = [task]() { (*task)(); };
662 m_executor->Submit(packagedFunction);
663 return task->get_future();
664 }
665
ListUsersAsync(const ListUsersRequest & request,const ListUsersResponseReceivedHandler & handler,const std::shared_ptr<const Aws::Client::AsyncCallerContext> & context) const666 void MQClient::ListUsersAsync(const ListUsersRequest& request, const ListUsersResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const
667 {
668 m_executor->Submit( [this, request, handler, context](){ this->ListUsersAsyncHelper( request, handler, context ); } );
669 }
670
ListUsersAsyncHelper(const ListUsersRequest & request,const ListUsersResponseReceivedHandler & handler,const std::shared_ptr<const Aws::Client::AsyncCallerContext> & context) const671 void MQClient::ListUsersAsyncHelper(const ListUsersRequest& request, const ListUsersResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const
672 {
673 handler(this, request, ListUsers(request), context);
674 }
675
RebootBroker(const RebootBrokerRequest & request) const676 RebootBrokerOutcome MQClient::RebootBroker(const RebootBrokerRequest& request) const
677 {
678 if (!request.BrokerIdHasBeenSet())
679 {
680 AWS_LOGSTREAM_ERROR("RebootBroker", "Required field: BrokerId, is not set");
681 return RebootBrokerOutcome(Aws::Client::AWSError<MQErrors>(MQErrors::MISSING_PARAMETER, "MISSING_PARAMETER", "Missing required field [BrokerId]", false));
682 }
683 Aws::Http::URI uri = m_uri;
684 uri.AddPathSegments("/v1/brokers/");
685 uri.AddPathSegment(request.GetBrokerId());
686 uri.AddPathSegments("/reboot");
687 return RebootBrokerOutcome(MakeRequest(uri, request, Aws::Http::HttpMethod::HTTP_POST, Aws::Auth::SIGV4_SIGNER));
688 }
689
RebootBrokerCallable(const RebootBrokerRequest & request) const690 RebootBrokerOutcomeCallable MQClient::RebootBrokerCallable(const RebootBrokerRequest& request) const
691 {
692 auto task = Aws::MakeShared< std::packaged_task< RebootBrokerOutcome() > >(ALLOCATION_TAG, [this, request](){ return this->RebootBroker(request); } );
693 auto packagedFunction = [task]() { (*task)(); };
694 m_executor->Submit(packagedFunction);
695 return task->get_future();
696 }
697
RebootBrokerAsync(const RebootBrokerRequest & request,const RebootBrokerResponseReceivedHandler & handler,const std::shared_ptr<const Aws::Client::AsyncCallerContext> & context) const698 void MQClient::RebootBrokerAsync(const RebootBrokerRequest& request, const RebootBrokerResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const
699 {
700 m_executor->Submit( [this, request, handler, context](){ this->RebootBrokerAsyncHelper( request, handler, context ); } );
701 }
702
RebootBrokerAsyncHelper(const RebootBrokerRequest & request,const RebootBrokerResponseReceivedHandler & handler,const std::shared_ptr<const Aws::Client::AsyncCallerContext> & context) const703 void MQClient::RebootBrokerAsyncHelper(const RebootBrokerRequest& request, const RebootBrokerResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const
704 {
705 handler(this, request, RebootBroker(request), context);
706 }
707
UpdateBroker(const UpdateBrokerRequest & request) const708 UpdateBrokerOutcome MQClient::UpdateBroker(const UpdateBrokerRequest& request) const
709 {
710 if (!request.BrokerIdHasBeenSet())
711 {
712 AWS_LOGSTREAM_ERROR("UpdateBroker", "Required field: BrokerId, is not set");
713 return UpdateBrokerOutcome(Aws::Client::AWSError<MQErrors>(MQErrors::MISSING_PARAMETER, "MISSING_PARAMETER", "Missing required field [BrokerId]", false));
714 }
715 Aws::Http::URI uri = m_uri;
716 uri.AddPathSegments("/v1/brokers/");
717 uri.AddPathSegment(request.GetBrokerId());
718 return UpdateBrokerOutcome(MakeRequest(uri, request, Aws::Http::HttpMethod::HTTP_PUT, Aws::Auth::SIGV4_SIGNER));
719 }
720
UpdateBrokerCallable(const UpdateBrokerRequest & request) const721 UpdateBrokerOutcomeCallable MQClient::UpdateBrokerCallable(const UpdateBrokerRequest& request) const
722 {
723 auto task = Aws::MakeShared< std::packaged_task< UpdateBrokerOutcome() > >(ALLOCATION_TAG, [this, request](){ return this->UpdateBroker(request); } );
724 auto packagedFunction = [task]() { (*task)(); };
725 m_executor->Submit(packagedFunction);
726 return task->get_future();
727 }
728
UpdateBrokerAsync(const UpdateBrokerRequest & request,const UpdateBrokerResponseReceivedHandler & handler,const std::shared_ptr<const Aws::Client::AsyncCallerContext> & context) const729 void MQClient::UpdateBrokerAsync(const UpdateBrokerRequest& request, const UpdateBrokerResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const
730 {
731 m_executor->Submit( [this, request, handler, context](){ this->UpdateBrokerAsyncHelper( request, handler, context ); } );
732 }
733
UpdateBrokerAsyncHelper(const UpdateBrokerRequest & request,const UpdateBrokerResponseReceivedHandler & handler,const std::shared_ptr<const Aws::Client::AsyncCallerContext> & context) const734 void MQClient::UpdateBrokerAsyncHelper(const UpdateBrokerRequest& request, const UpdateBrokerResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const
735 {
736 handler(this, request, UpdateBroker(request), context);
737 }
738
UpdateConfiguration(const UpdateConfigurationRequest & request) const739 UpdateConfigurationOutcome MQClient::UpdateConfiguration(const UpdateConfigurationRequest& request) const
740 {
741 if (!request.ConfigurationIdHasBeenSet())
742 {
743 AWS_LOGSTREAM_ERROR("UpdateConfiguration", "Required field: ConfigurationId, is not set");
744 return UpdateConfigurationOutcome(Aws::Client::AWSError<MQErrors>(MQErrors::MISSING_PARAMETER, "MISSING_PARAMETER", "Missing required field [ConfigurationId]", false));
745 }
746 Aws::Http::URI uri = m_uri;
747 uri.AddPathSegments("/v1/configurations/");
748 uri.AddPathSegment(request.GetConfigurationId());
749 return UpdateConfigurationOutcome(MakeRequest(uri, request, Aws::Http::HttpMethod::HTTP_PUT, Aws::Auth::SIGV4_SIGNER));
750 }
751
UpdateConfigurationCallable(const UpdateConfigurationRequest & request) const752 UpdateConfigurationOutcomeCallable MQClient::UpdateConfigurationCallable(const UpdateConfigurationRequest& request) const
753 {
754 auto task = Aws::MakeShared< std::packaged_task< UpdateConfigurationOutcome() > >(ALLOCATION_TAG, [this, request](){ return this->UpdateConfiguration(request); } );
755 auto packagedFunction = [task]() { (*task)(); };
756 m_executor->Submit(packagedFunction);
757 return task->get_future();
758 }
759
UpdateConfigurationAsync(const UpdateConfigurationRequest & request,const UpdateConfigurationResponseReceivedHandler & handler,const std::shared_ptr<const Aws::Client::AsyncCallerContext> & context) const760 void MQClient::UpdateConfigurationAsync(const UpdateConfigurationRequest& request, const UpdateConfigurationResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const
761 {
762 m_executor->Submit( [this, request, handler, context](){ this->UpdateConfigurationAsyncHelper( request, handler, context ); } );
763 }
764
UpdateConfigurationAsyncHelper(const UpdateConfigurationRequest & request,const UpdateConfigurationResponseReceivedHandler & handler,const std::shared_ptr<const Aws::Client::AsyncCallerContext> & context) const765 void MQClient::UpdateConfigurationAsyncHelper(const UpdateConfigurationRequest& request, const UpdateConfigurationResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const
766 {
767 handler(this, request, UpdateConfiguration(request), context);
768 }
769
UpdateUser(const UpdateUserRequest & request) const770 UpdateUserOutcome MQClient::UpdateUser(const UpdateUserRequest& request) const
771 {
772 if (!request.BrokerIdHasBeenSet())
773 {
774 AWS_LOGSTREAM_ERROR("UpdateUser", "Required field: BrokerId, is not set");
775 return UpdateUserOutcome(Aws::Client::AWSError<MQErrors>(MQErrors::MISSING_PARAMETER, "MISSING_PARAMETER", "Missing required field [BrokerId]", false));
776 }
777 if (!request.UsernameHasBeenSet())
778 {
779 AWS_LOGSTREAM_ERROR("UpdateUser", "Required field: Username, is not set");
780 return UpdateUserOutcome(Aws::Client::AWSError<MQErrors>(MQErrors::MISSING_PARAMETER, "MISSING_PARAMETER", "Missing required field [Username]", false));
781 }
782 Aws::Http::URI uri = m_uri;
783 uri.AddPathSegments("/v1/brokers/");
784 uri.AddPathSegment(request.GetBrokerId());
785 uri.AddPathSegments("/users/");
786 uri.AddPathSegment(request.GetUsername());
787 return UpdateUserOutcome(MakeRequest(uri, request, Aws::Http::HttpMethod::HTTP_PUT, Aws::Auth::SIGV4_SIGNER));
788 }
789
UpdateUserCallable(const UpdateUserRequest & request) const790 UpdateUserOutcomeCallable MQClient::UpdateUserCallable(const UpdateUserRequest& request) const
791 {
792 auto task = Aws::MakeShared< std::packaged_task< UpdateUserOutcome() > >(ALLOCATION_TAG, [this, request](){ return this->UpdateUser(request); } );
793 auto packagedFunction = [task]() { (*task)(); };
794 m_executor->Submit(packagedFunction);
795 return task->get_future();
796 }
797
UpdateUserAsync(const UpdateUserRequest & request,const UpdateUserResponseReceivedHandler & handler,const std::shared_ptr<const Aws::Client::AsyncCallerContext> & context) const798 void MQClient::UpdateUserAsync(const UpdateUserRequest& request, const UpdateUserResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const
799 {
800 m_executor->Submit( [this, request, handler, context](){ this->UpdateUserAsyncHelper( request, handler, context ); } );
801 }
802
UpdateUserAsyncHelper(const UpdateUserRequest & request,const UpdateUserResponseReceivedHandler & handler,const std::shared_ptr<const Aws::Client::AsyncCallerContext> & context) const803 void MQClient::UpdateUserAsyncHelper(const UpdateUserRequest& request, const UpdateUserResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const
804 {
805 handler(this, request, UpdateUser(request), context);
806 }
807
808