1 /** 2 * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. 3 * SPDX-License-Identifier: Apache-2.0. 4 */ 5 6 #pragma once 7 #include <aws/appintegrations/AppIntegrationsService_EXPORTS.h> 8 #include <aws/appintegrations/AppIntegrationsServiceErrors.h> 9 #include <aws/core/client/AWSError.h> 10 #include <aws/core/client/ClientConfiguration.h> 11 #include <aws/core/client/AWSClient.h> 12 #include <aws/core/utils/memory/stl/AWSString.h> 13 #include <aws/core/utils/json/JsonSerializer.h> 14 #include <aws/appintegrations/model/CreateDataIntegrationResult.h> 15 #include <aws/appintegrations/model/CreateEventIntegrationResult.h> 16 #include <aws/appintegrations/model/DeleteDataIntegrationResult.h> 17 #include <aws/appintegrations/model/DeleteEventIntegrationResult.h> 18 #include <aws/appintegrations/model/GetDataIntegrationResult.h> 19 #include <aws/appintegrations/model/GetEventIntegrationResult.h> 20 #include <aws/appintegrations/model/ListDataIntegrationAssociationsResult.h> 21 #include <aws/appintegrations/model/ListDataIntegrationsResult.h> 22 #include <aws/appintegrations/model/ListEventIntegrationAssociationsResult.h> 23 #include <aws/appintegrations/model/ListEventIntegrationsResult.h> 24 #include <aws/appintegrations/model/ListTagsForResourceResult.h> 25 #include <aws/appintegrations/model/TagResourceResult.h> 26 #include <aws/appintegrations/model/UntagResourceResult.h> 27 #include <aws/appintegrations/model/UpdateDataIntegrationResult.h> 28 #include <aws/appintegrations/model/UpdateEventIntegrationResult.h> 29 #include <aws/core/client/AsyncCallerContext.h> 30 #include <aws/core/http/HttpTypes.h> 31 #include <future> 32 #include <functional> 33 34 namespace Aws 35 { 36 37 namespace Http 38 { 39 class HttpClient; 40 class HttpClientFactory; 41 } // namespace Http 42 43 namespace Utils 44 { 45 template< typename R, typename E> class Outcome; 46 namespace Threading 47 { 48 class Executor; 49 } // namespace Threading 50 } // namespace Utils 51 52 namespace Auth 53 { 54 class AWSCredentials; 55 class AWSCredentialsProvider; 56 } // namespace Auth 57 58 namespace Client 59 { 60 class RetryStrategy; 61 } // namespace Client 62 63 namespace AppIntegrationsService 64 { 65 66 namespace Model 67 { 68 class CreateDataIntegrationRequest; 69 class CreateEventIntegrationRequest; 70 class DeleteDataIntegrationRequest; 71 class DeleteEventIntegrationRequest; 72 class GetDataIntegrationRequest; 73 class GetEventIntegrationRequest; 74 class ListDataIntegrationAssociationsRequest; 75 class ListDataIntegrationsRequest; 76 class ListEventIntegrationAssociationsRequest; 77 class ListEventIntegrationsRequest; 78 class ListTagsForResourceRequest; 79 class TagResourceRequest; 80 class UntagResourceRequest; 81 class UpdateDataIntegrationRequest; 82 class UpdateEventIntegrationRequest; 83 84 typedef Aws::Utils::Outcome<CreateDataIntegrationResult, AppIntegrationsServiceError> CreateDataIntegrationOutcome; 85 typedef Aws::Utils::Outcome<CreateEventIntegrationResult, AppIntegrationsServiceError> CreateEventIntegrationOutcome; 86 typedef Aws::Utils::Outcome<DeleteDataIntegrationResult, AppIntegrationsServiceError> DeleteDataIntegrationOutcome; 87 typedef Aws::Utils::Outcome<DeleteEventIntegrationResult, AppIntegrationsServiceError> DeleteEventIntegrationOutcome; 88 typedef Aws::Utils::Outcome<GetDataIntegrationResult, AppIntegrationsServiceError> GetDataIntegrationOutcome; 89 typedef Aws::Utils::Outcome<GetEventIntegrationResult, AppIntegrationsServiceError> GetEventIntegrationOutcome; 90 typedef Aws::Utils::Outcome<ListDataIntegrationAssociationsResult, AppIntegrationsServiceError> ListDataIntegrationAssociationsOutcome; 91 typedef Aws::Utils::Outcome<ListDataIntegrationsResult, AppIntegrationsServiceError> ListDataIntegrationsOutcome; 92 typedef Aws::Utils::Outcome<ListEventIntegrationAssociationsResult, AppIntegrationsServiceError> ListEventIntegrationAssociationsOutcome; 93 typedef Aws::Utils::Outcome<ListEventIntegrationsResult, AppIntegrationsServiceError> ListEventIntegrationsOutcome; 94 typedef Aws::Utils::Outcome<ListTagsForResourceResult, AppIntegrationsServiceError> ListTagsForResourceOutcome; 95 typedef Aws::Utils::Outcome<TagResourceResult, AppIntegrationsServiceError> TagResourceOutcome; 96 typedef Aws::Utils::Outcome<UntagResourceResult, AppIntegrationsServiceError> UntagResourceOutcome; 97 typedef Aws::Utils::Outcome<UpdateDataIntegrationResult, AppIntegrationsServiceError> UpdateDataIntegrationOutcome; 98 typedef Aws::Utils::Outcome<UpdateEventIntegrationResult, AppIntegrationsServiceError> UpdateEventIntegrationOutcome; 99 100 typedef std::future<CreateDataIntegrationOutcome> CreateDataIntegrationOutcomeCallable; 101 typedef std::future<CreateEventIntegrationOutcome> CreateEventIntegrationOutcomeCallable; 102 typedef std::future<DeleteDataIntegrationOutcome> DeleteDataIntegrationOutcomeCallable; 103 typedef std::future<DeleteEventIntegrationOutcome> DeleteEventIntegrationOutcomeCallable; 104 typedef std::future<GetDataIntegrationOutcome> GetDataIntegrationOutcomeCallable; 105 typedef std::future<GetEventIntegrationOutcome> GetEventIntegrationOutcomeCallable; 106 typedef std::future<ListDataIntegrationAssociationsOutcome> ListDataIntegrationAssociationsOutcomeCallable; 107 typedef std::future<ListDataIntegrationsOutcome> ListDataIntegrationsOutcomeCallable; 108 typedef std::future<ListEventIntegrationAssociationsOutcome> ListEventIntegrationAssociationsOutcomeCallable; 109 typedef std::future<ListEventIntegrationsOutcome> ListEventIntegrationsOutcomeCallable; 110 typedef std::future<ListTagsForResourceOutcome> ListTagsForResourceOutcomeCallable; 111 typedef std::future<TagResourceOutcome> TagResourceOutcomeCallable; 112 typedef std::future<UntagResourceOutcome> UntagResourceOutcomeCallable; 113 typedef std::future<UpdateDataIntegrationOutcome> UpdateDataIntegrationOutcomeCallable; 114 typedef std::future<UpdateEventIntegrationOutcome> UpdateEventIntegrationOutcomeCallable; 115 } // namespace Model 116 117 class AppIntegrationsServiceClient; 118 119 typedef std::function<void(const AppIntegrationsServiceClient*, const Model::CreateDataIntegrationRequest&, const Model::CreateDataIntegrationOutcome&, const std::shared_ptr<const Aws::Client::AsyncCallerContext>&) > CreateDataIntegrationResponseReceivedHandler; 120 typedef std::function<void(const AppIntegrationsServiceClient*, const Model::CreateEventIntegrationRequest&, const Model::CreateEventIntegrationOutcome&, const std::shared_ptr<const Aws::Client::AsyncCallerContext>&) > CreateEventIntegrationResponseReceivedHandler; 121 typedef std::function<void(const AppIntegrationsServiceClient*, const Model::DeleteDataIntegrationRequest&, const Model::DeleteDataIntegrationOutcome&, const std::shared_ptr<const Aws::Client::AsyncCallerContext>&) > DeleteDataIntegrationResponseReceivedHandler; 122 typedef std::function<void(const AppIntegrationsServiceClient*, const Model::DeleteEventIntegrationRequest&, const Model::DeleteEventIntegrationOutcome&, const std::shared_ptr<const Aws::Client::AsyncCallerContext>&) > DeleteEventIntegrationResponseReceivedHandler; 123 typedef std::function<void(const AppIntegrationsServiceClient*, const Model::GetDataIntegrationRequest&, const Model::GetDataIntegrationOutcome&, const std::shared_ptr<const Aws::Client::AsyncCallerContext>&) > GetDataIntegrationResponseReceivedHandler; 124 typedef std::function<void(const AppIntegrationsServiceClient*, const Model::GetEventIntegrationRequest&, const Model::GetEventIntegrationOutcome&, const std::shared_ptr<const Aws::Client::AsyncCallerContext>&) > GetEventIntegrationResponseReceivedHandler; 125 typedef std::function<void(const AppIntegrationsServiceClient*, const Model::ListDataIntegrationAssociationsRequest&, const Model::ListDataIntegrationAssociationsOutcome&, const std::shared_ptr<const Aws::Client::AsyncCallerContext>&) > ListDataIntegrationAssociationsResponseReceivedHandler; 126 typedef std::function<void(const AppIntegrationsServiceClient*, const Model::ListDataIntegrationsRequest&, const Model::ListDataIntegrationsOutcome&, const std::shared_ptr<const Aws::Client::AsyncCallerContext>&) > ListDataIntegrationsResponseReceivedHandler; 127 typedef std::function<void(const AppIntegrationsServiceClient*, const Model::ListEventIntegrationAssociationsRequest&, const Model::ListEventIntegrationAssociationsOutcome&, const std::shared_ptr<const Aws::Client::AsyncCallerContext>&) > ListEventIntegrationAssociationsResponseReceivedHandler; 128 typedef std::function<void(const AppIntegrationsServiceClient*, const Model::ListEventIntegrationsRequest&, const Model::ListEventIntegrationsOutcome&, const std::shared_ptr<const Aws::Client::AsyncCallerContext>&) > ListEventIntegrationsResponseReceivedHandler; 129 typedef std::function<void(const AppIntegrationsServiceClient*, const Model::ListTagsForResourceRequest&, const Model::ListTagsForResourceOutcome&, const std::shared_ptr<const Aws::Client::AsyncCallerContext>&) > ListTagsForResourceResponseReceivedHandler; 130 typedef std::function<void(const AppIntegrationsServiceClient*, const Model::TagResourceRequest&, const Model::TagResourceOutcome&, const std::shared_ptr<const Aws::Client::AsyncCallerContext>&) > TagResourceResponseReceivedHandler; 131 typedef std::function<void(const AppIntegrationsServiceClient*, const Model::UntagResourceRequest&, const Model::UntagResourceOutcome&, const std::shared_ptr<const Aws::Client::AsyncCallerContext>&) > UntagResourceResponseReceivedHandler; 132 typedef std::function<void(const AppIntegrationsServiceClient*, const Model::UpdateDataIntegrationRequest&, const Model::UpdateDataIntegrationOutcome&, const std::shared_ptr<const Aws::Client::AsyncCallerContext>&) > UpdateDataIntegrationResponseReceivedHandler; 133 typedef std::function<void(const AppIntegrationsServiceClient*, const Model::UpdateEventIntegrationRequest&, const Model::UpdateEventIntegrationOutcome&, const std::shared_ptr<const Aws::Client::AsyncCallerContext>&) > UpdateEventIntegrationResponseReceivedHandler; 134 135 /** 136 * <p>The Amazon AppIntegrations service enables you to configure and reuse 137 * connections to external applications.</p> <p>For information about how you can 138 * use external applications with Amazon Connect, see <a 139 * href="https://docs.aws.amazon.com/connect/latest/adminguide/crm.html">Set up 140 * pre-built integrations</a> and <a 141 * href="https://docs.aws.amazon.com/connect/latest/adminguide/amazon-connect-wisdom.html">Deliver 142 * information to agents using Amazon Connect Wisdom</a> in the <i>Amazon Connect 143 * Administrator Guide</i>.</p> 144 */ 145 class AWS_APPINTEGRATIONSSERVICE_API AppIntegrationsServiceClient : public Aws::Client::AWSJsonClient 146 { 147 public: 148 typedef Aws::Client::AWSJsonClient BASECLASS; 149 150 /** 151 * Initializes client to use DefaultCredentialProviderChain, with default http client factory, and optional client config. If client config 152 * is not specified, it will be initialized to default values. 153 */ 154 AppIntegrationsServiceClient(const Aws::Client::ClientConfiguration& clientConfiguration = Aws::Client::ClientConfiguration()); 155 156 /** 157 * Initializes client to use SimpleAWSCredentialsProvider, with default http client factory, and optional client config. If client config 158 * is not specified, it will be initialized to default values. 159 */ 160 AppIntegrationsServiceClient(const Aws::Auth::AWSCredentials& credentials, const Aws::Client::ClientConfiguration& clientConfiguration = Aws::Client::ClientConfiguration()); 161 162 /** 163 * Initializes client to use specified credentials provider with specified client config. If http client factory is not supplied, 164 * the default http client factory will be used 165 */ 166 AppIntegrationsServiceClient(const std::shared_ptr<Aws::Auth::AWSCredentialsProvider>& credentialsProvider, 167 const Aws::Client::ClientConfiguration& clientConfiguration = Aws::Client::ClientConfiguration()); 168 169 virtual ~AppIntegrationsServiceClient(); 170 171 172 /** 173 * <p>Creates and persists a DataIntegration resource.</p> <p>You cannot 174 * create a DataIntegration association for a DataIntegration that has been 175 * previously associated. Use a different DataIntegration, or recreate the 176 * DataIntegration using the <code>CreateDataIntegration</code> API.</p> 177 * <p><h3>See Also:</h3> <a 178 * href="http://docs.aws.amazon.com/goto/WebAPI/appintegrations-2020-07-29/CreateDataIntegration">AWS 179 * API Reference</a></p> 180 */ 181 virtual Model::CreateDataIntegrationOutcome CreateDataIntegration(const Model::CreateDataIntegrationRequest& request) const; 182 183 /** 184 * <p>Creates and persists a DataIntegration resource.</p> <p>You cannot 185 * create a DataIntegration association for a DataIntegration that has been 186 * previously associated. Use a different DataIntegration, or recreate the 187 * DataIntegration using the <code>CreateDataIntegration</code> API.</p> 188 * <p><h3>See Also:</h3> <a 189 * href="http://docs.aws.amazon.com/goto/WebAPI/appintegrations-2020-07-29/CreateDataIntegration">AWS 190 * API Reference</a></p> 191 * 192 * returns a future to the operation so that it can be executed in parallel to other requests. 193 */ 194 virtual Model::CreateDataIntegrationOutcomeCallable CreateDataIntegrationCallable(const Model::CreateDataIntegrationRequest& request) const; 195 196 /** 197 * <p>Creates and persists a DataIntegration resource.</p> <p>You cannot 198 * create a DataIntegration association for a DataIntegration that has been 199 * previously associated. Use a different DataIntegration, or recreate the 200 * DataIntegration using the <code>CreateDataIntegration</code> API.</p> 201 * <p><h3>See Also:</h3> <a 202 * href="http://docs.aws.amazon.com/goto/WebAPI/appintegrations-2020-07-29/CreateDataIntegration">AWS 203 * API Reference</a></p> 204 * 205 * Queues the request into a thread executor and triggers associated callback when operation has finished. 206 */ 207 virtual void CreateDataIntegrationAsync(const Model::CreateDataIntegrationRequest& request, const CreateDataIntegrationResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const; 208 209 /** 210 * <p>Creates an EventIntegration, given a specified name, description, and a 211 * reference to an Amazon EventBridge bus in your account and a partner event 212 * source that pushes events to that bus. No objects are created in the your 213 * account, only metadata that is persisted on the EventIntegration control 214 * plane.</p><p><h3>See Also:</h3> <a 215 * href="http://docs.aws.amazon.com/goto/WebAPI/appintegrations-2020-07-29/CreateEventIntegration">AWS 216 * API Reference</a></p> 217 */ 218 virtual Model::CreateEventIntegrationOutcome CreateEventIntegration(const Model::CreateEventIntegrationRequest& request) const; 219 220 /** 221 * <p>Creates an EventIntegration, given a specified name, description, and a 222 * reference to an Amazon EventBridge bus in your account and a partner event 223 * source that pushes events to that bus. No objects are created in the your 224 * account, only metadata that is persisted on the EventIntegration control 225 * plane.</p><p><h3>See Also:</h3> <a 226 * href="http://docs.aws.amazon.com/goto/WebAPI/appintegrations-2020-07-29/CreateEventIntegration">AWS 227 * API Reference</a></p> 228 * 229 * returns a future to the operation so that it can be executed in parallel to other requests. 230 */ 231 virtual Model::CreateEventIntegrationOutcomeCallable CreateEventIntegrationCallable(const Model::CreateEventIntegrationRequest& request) const; 232 233 /** 234 * <p>Creates an EventIntegration, given a specified name, description, and a 235 * reference to an Amazon EventBridge bus in your account and a partner event 236 * source that pushes events to that bus. No objects are created in the your 237 * account, only metadata that is persisted on the EventIntegration control 238 * plane.</p><p><h3>See Also:</h3> <a 239 * href="http://docs.aws.amazon.com/goto/WebAPI/appintegrations-2020-07-29/CreateEventIntegration">AWS 240 * API Reference</a></p> 241 * 242 * Queues the request into a thread executor and triggers associated callback when operation has finished. 243 */ 244 virtual void CreateEventIntegrationAsync(const Model::CreateEventIntegrationRequest& request, const CreateEventIntegrationResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const; 245 246 /** 247 * <p>Deletes the DataIntegration. Only DataIntegrations that don't have any 248 * DataIntegrationAssociations can be deleted. Deleting a DataIntegration also 249 * deletes the underlying Amazon AppFlow flow and service linked role. </p> 250 * <p>You cannot create a DataIntegration association for a DataIntegration that 251 * has been previously associated. Use a different DataIntegration, or recreate the 252 * DataIntegration using the <a 253 * href="https://docs.aws.amazon.com/appintegrations/latest/APIReference/API_CreateDataIntegration.html">CreateDataIntegration</a> 254 * API.</p> <p><h3>See Also:</h3> <a 255 * href="http://docs.aws.amazon.com/goto/WebAPI/appintegrations-2020-07-29/DeleteDataIntegration">AWS 256 * API Reference</a></p> 257 */ 258 virtual Model::DeleteDataIntegrationOutcome DeleteDataIntegration(const Model::DeleteDataIntegrationRequest& request) const; 259 260 /** 261 * <p>Deletes the DataIntegration. Only DataIntegrations that don't have any 262 * DataIntegrationAssociations can be deleted. Deleting a DataIntegration also 263 * deletes the underlying Amazon AppFlow flow and service linked role. </p> 264 * <p>You cannot create a DataIntegration association for a DataIntegration that 265 * has been previously associated. Use a different DataIntegration, or recreate the 266 * DataIntegration using the <a 267 * href="https://docs.aws.amazon.com/appintegrations/latest/APIReference/API_CreateDataIntegration.html">CreateDataIntegration</a> 268 * API.</p> <p><h3>See Also:</h3> <a 269 * href="http://docs.aws.amazon.com/goto/WebAPI/appintegrations-2020-07-29/DeleteDataIntegration">AWS 270 * API Reference</a></p> 271 * 272 * returns a future to the operation so that it can be executed in parallel to other requests. 273 */ 274 virtual Model::DeleteDataIntegrationOutcomeCallable DeleteDataIntegrationCallable(const Model::DeleteDataIntegrationRequest& request) const; 275 276 /** 277 * <p>Deletes the DataIntegration. Only DataIntegrations that don't have any 278 * DataIntegrationAssociations can be deleted. Deleting a DataIntegration also 279 * deletes the underlying Amazon AppFlow flow and service linked role. </p> 280 * <p>You cannot create a DataIntegration association for a DataIntegration that 281 * has been previously associated. Use a different DataIntegration, or recreate the 282 * DataIntegration using the <a 283 * href="https://docs.aws.amazon.com/appintegrations/latest/APIReference/API_CreateDataIntegration.html">CreateDataIntegration</a> 284 * API.</p> <p><h3>See Also:</h3> <a 285 * href="http://docs.aws.amazon.com/goto/WebAPI/appintegrations-2020-07-29/DeleteDataIntegration">AWS 286 * API Reference</a></p> 287 * 288 * Queues the request into a thread executor and triggers associated callback when operation has finished. 289 */ 290 virtual void DeleteDataIntegrationAsync(const Model::DeleteDataIntegrationRequest& request, const DeleteDataIntegrationResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const; 291 292 /** 293 * <p>Deletes the specified existing event integration. If the event integration is 294 * associated with clients, the request is rejected.</p><p><h3>See Also:</h3> <a 295 * href="http://docs.aws.amazon.com/goto/WebAPI/appintegrations-2020-07-29/DeleteEventIntegration">AWS 296 * API Reference</a></p> 297 */ 298 virtual Model::DeleteEventIntegrationOutcome DeleteEventIntegration(const Model::DeleteEventIntegrationRequest& request) const; 299 300 /** 301 * <p>Deletes the specified existing event integration. If the event integration is 302 * associated with clients, the request is rejected.</p><p><h3>See Also:</h3> <a 303 * href="http://docs.aws.amazon.com/goto/WebAPI/appintegrations-2020-07-29/DeleteEventIntegration">AWS 304 * API Reference</a></p> 305 * 306 * returns a future to the operation so that it can be executed in parallel to other requests. 307 */ 308 virtual Model::DeleteEventIntegrationOutcomeCallable DeleteEventIntegrationCallable(const Model::DeleteEventIntegrationRequest& request) const; 309 310 /** 311 * <p>Deletes the specified existing event integration. If the event integration is 312 * associated with clients, the request is rejected.</p><p><h3>See Also:</h3> <a 313 * href="http://docs.aws.amazon.com/goto/WebAPI/appintegrations-2020-07-29/DeleteEventIntegration">AWS 314 * API Reference</a></p> 315 * 316 * Queues the request into a thread executor and triggers associated callback when operation has finished. 317 */ 318 virtual void DeleteEventIntegrationAsync(const Model::DeleteEventIntegrationRequest& request, const DeleteEventIntegrationResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const; 319 320 /** 321 * <p>Returns information about the DataIntegration.</p> <p>You cannot 322 * create a DataIntegration association for a DataIntegration that has been 323 * previously associated. Use a different DataIntegration, or recreate the 324 * DataIntegration using the <a 325 * href="https://docs.aws.amazon.com/appintegrations/latest/APIReference/API_CreateDataIntegration.html">CreateDataIntegration</a> 326 * API.</p> <p><h3>See Also:</h3> <a 327 * href="http://docs.aws.amazon.com/goto/WebAPI/appintegrations-2020-07-29/GetDataIntegration">AWS 328 * API Reference</a></p> 329 */ 330 virtual Model::GetDataIntegrationOutcome GetDataIntegration(const Model::GetDataIntegrationRequest& request) const; 331 332 /** 333 * <p>Returns information about the DataIntegration.</p> <p>You cannot 334 * create a DataIntegration association for a DataIntegration that has been 335 * previously associated. Use a different DataIntegration, or recreate the 336 * DataIntegration using the <a 337 * href="https://docs.aws.amazon.com/appintegrations/latest/APIReference/API_CreateDataIntegration.html">CreateDataIntegration</a> 338 * API.</p> <p><h3>See Also:</h3> <a 339 * href="http://docs.aws.amazon.com/goto/WebAPI/appintegrations-2020-07-29/GetDataIntegration">AWS 340 * API Reference</a></p> 341 * 342 * returns a future to the operation so that it can be executed in parallel to other requests. 343 */ 344 virtual Model::GetDataIntegrationOutcomeCallable GetDataIntegrationCallable(const Model::GetDataIntegrationRequest& request) const; 345 346 /** 347 * <p>Returns information about the DataIntegration.</p> <p>You cannot 348 * create a DataIntegration association for a DataIntegration that has been 349 * previously associated. Use a different DataIntegration, or recreate the 350 * DataIntegration using the <a 351 * href="https://docs.aws.amazon.com/appintegrations/latest/APIReference/API_CreateDataIntegration.html">CreateDataIntegration</a> 352 * API.</p> <p><h3>See Also:</h3> <a 353 * href="http://docs.aws.amazon.com/goto/WebAPI/appintegrations-2020-07-29/GetDataIntegration">AWS 354 * API Reference</a></p> 355 * 356 * Queues the request into a thread executor and triggers associated callback when operation has finished. 357 */ 358 virtual void GetDataIntegrationAsync(const Model::GetDataIntegrationRequest& request, const GetDataIntegrationResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const; 359 360 /** 361 * <p>Returns information about the event integration.</p><p><h3>See Also:</h3> 362 * <a 363 * href="http://docs.aws.amazon.com/goto/WebAPI/appintegrations-2020-07-29/GetEventIntegration">AWS 364 * API Reference</a></p> 365 */ 366 virtual Model::GetEventIntegrationOutcome GetEventIntegration(const Model::GetEventIntegrationRequest& request) const; 367 368 /** 369 * <p>Returns information about the event integration.</p><p><h3>See Also:</h3> 370 * <a 371 * href="http://docs.aws.amazon.com/goto/WebAPI/appintegrations-2020-07-29/GetEventIntegration">AWS 372 * API Reference</a></p> 373 * 374 * returns a future to the operation so that it can be executed in parallel to other requests. 375 */ 376 virtual Model::GetEventIntegrationOutcomeCallable GetEventIntegrationCallable(const Model::GetEventIntegrationRequest& request) const; 377 378 /** 379 * <p>Returns information about the event integration.</p><p><h3>See Also:</h3> 380 * <a 381 * href="http://docs.aws.amazon.com/goto/WebAPI/appintegrations-2020-07-29/GetEventIntegration">AWS 382 * API Reference</a></p> 383 * 384 * Queues the request into a thread executor and triggers associated callback when operation has finished. 385 */ 386 virtual void GetEventIntegrationAsync(const Model::GetEventIntegrationRequest& request, const GetEventIntegrationResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const; 387 388 /** 389 * <p>Returns a paginated list of DataIntegration associations in the account.</p> 390 * <p>You cannot create a DataIntegration association for a DataIntegration 391 * that has been previously associated. Use a different DataIntegration, or 392 * recreate the DataIntegration using the <a 393 * href="https://docs.aws.amazon.com/appintegrations/latest/APIReference/API_CreateDataIntegration.html">CreateDataIntegration</a> 394 * API.</p> <p><h3>See Also:</h3> <a 395 * href="http://docs.aws.amazon.com/goto/WebAPI/appintegrations-2020-07-29/ListDataIntegrationAssociations">AWS 396 * API Reference</a></p> 397 */ 398 virtual Model::ListDataIntegrationAssociationsOutcome ListDataIntegrationAssociations(const Model::ListDataIntegrationAssociationsRequest& request) const; 399 400 /** 401 * <p>Returns a paginated list of DataIntegration associations in the account.</p> 402 * <p>You cannot create a DataIntegration association for a DataIntegration 403 * that has been previously associated. Use a different DataIntegration, or 404 * recreate the DataIntegration using the <a 405 * href="https://docs.aws.amazon.com/appintegrations/latest/APIReference/API_CreateDataIntegration.html">CreateDataIntegration</a> 406 * API.</p> <p><h3>See Also:</h3> <a 407 * href="http://docs.aws.amazon.com/goto/WebAPI/appintegrations-2020-07-29/ListDataIntegrationAssociations">AWS 408 * API Reference</a></p> 409 * 410 * returns a future to the operation so that it can be executed in parallel to other requests. 411 */ 412 virtual Model::ListDataIntegrationAssociationsOutcomeCallable ListDataIntegrationAssociationsCallable(const Model::ListDataIntegrationAssociationsRequest& request) const; 413 414 /** 415 * <p>Returns a paginated list of DataIntegration associations in the account.</p> 416 * <p>You cannot create a DataIntegration association for a DataIntegration 417 * that has been previously associated. Use a different DataIntegration, or 418 * recreate the DataIntegration using the <a 419 * href="https://docs.aws.amazon.com/appintegrations/latest/APIReference/API_CreateDataIntegration.html">CreateDataIntegration</a> 420 * API.</p> <p><h3>See Also:</h3> <a 421 * href="http://docs.aws.amazon.com/goto/WebAPI/appintegrations-2020-07-29/ListDataIntegrationAssociations">AWS 422 * API Reference</a></p> 423 * 424 * Queues the request into a thread executor and triggers associated callback when operation has finished. 425 */ 426 virtual void ListDataIntegrationAssociationsAsync(const Model::ListDataIntegrationAssociationsRequest& request, const ListDataIntegrationAssociationsResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const; 427 428 /** 429 * <p>Returns a paginated list of DataIntegrations in the account.</p> 430 * <p>You cannot create a DataIntegration association for a DataIntegration that 431 * has been previously associated. Use a different DataIntegration, or recreate the 432 * DataIntegration using the <a 433 * href="https://docs.aws.amazon.com/appintegrations/latest/APIReference/API_CreateDataIntegration.html">CreateDataIntegration</a> 434 * API.</p> <p><h3>See Also:</h3> <a 435 * href="http://docs.aws.amazon.com/goto/WebAPI/appintegrations-2020-07-29/ListDataIntegrations">AWS 436 * API Reference</a></p> 437 */ 438 virtual Model::ListDataIntegrationsOutcome ListDataIntegrations(const Model::ListDataIntegrationsRequest& request) const; 439 440 /** 441 * <p>Returns a paginated list of DataIntegrations in the account.</p> 442 * <p>You cannot create a DataIntegration association for a DataIntegration that 443 * has been previously associated. Use a different DataIntegration, or recreate the 444 * DataIntegration using the <a 445 * href="https://docs.aws.amazon.com/appintegrations/latest/APIReference/API_CreateDataIntegration.html">CreateDataIntegration</a> 446 * API.</p> <p><h3>See Also:</h3> <a 447 * href="http://docs.aws.amazon.com/goto/WebAPI/appintegrations-2020-07-29/ListDataIntegrations">AWS 448 * API Reference</a></p> 449 * 450 * returns a future to the operation so that it can be executed in parallel to other requests. 451 */ 452 virtual Model::ListDataIntegrationsOutcomeCallable ListDataIntegrationsCallable(const Model::ListDataIntegrationsRequest& request) const; 453 454 /** 455 * <p>Returns a paginated list of DataIntegrations in the account.</p> 456 * <p>You cannot create a DataIntegration association for a DataIntegration that 457 * has been previously associated. Use a different DataIntegration, or recreate the 458 * DataIntegration using the <a 459 * href="https://docs.aws.amazon.com/appintegrations/latest/APIReference/API_CreateDataIntegration.html">CreateDataIntegration</a> 460 * API.</p> <p><h3>See Also:</h3> <a 461 * href="http://docs.aws.amazon.com/goto/WebAPI/appintegrations-2020-07-29/ListDataIntegrations">AWS 462 * API Reference</a></p> 463 * 464 * Queues the request into a thread executor and triggers associated callback when operation has finished. 465 */ 466 virtual void ListDataIntegrationsAsync(const Model::ListDataIntegrationsRequest& request, const ListDataIntegrationsResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const; 467 468 /** 469 * <p>Returns a paginated list of event integration associations in the account. 470 * </p><p><h3>See Also:</h3> <a 471 * href="http://docs.aws.amazon.com/goto/WebAPI/appintegrations-2020-07-29/ListEventIntegrationAssociations">AWS 472 * API Reference</a></p> 473 */ 474 virtual Model::ListEventIntegrationAssociationsOutcome ListEventIntegrationAssociations(const Model::ListEventIntegrationAssociationsRequest& request) const; 475 476 /** 477 * <p>Returns a paginated list of event integration associations in the account. 478 * </p><p><h3>See Also:</h3> <a 479 * href="http://docs.aws.amazon.com/goto/WebAPI/appintegrations-2020-07-29/ListEventIntegrationAssociations">AWS 480 * API Reference</a></p> 481 * 482 * returns a future to the operation so that it can be executed in parallel to other requests. 483 */ 484 virtual Model::ListEventIntegrationAssociationsOutcomeCallable ListEventIntegrationAssociationsCallable(const Model::ListEventIntegrationAssociationsRequest& request) const; 485 486 /** 487 * <p>Returns a paginated list of event integration associations in the account. 488 * </p><p><h3>See Also:</h3> <a 489 * href="http://docs.aws.amazon.com/goto/WebAPI/appintegrations-2020-07-29/ListEventIntegrationAssociations">AWS 490 * API Reference</a></p> 491 * 492 * Queues the request into a thread executor and triggers associated callback when operation has finished. 493 */ 494 virtual void ListEventIntegrationAssociationsAsync(const Model::ListEventIntegrationAssociationsRequest& request, const ListEventIntegrationAssociationsResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const; 495 496 /** 497 * <p>Returns a paginated list of event integrations in the account.</p><p><h3>See 498 * Also:</h3> <a 499 * href="http://docs.aws.amazon.com/goto/WebAPI/appintegrations-2020-07-29/ListEventIntegrations">AWS 500 * API Reference</a></p> 501 */ 502 virtual Model::ListEventIntegrationsOutcome ListEventIntegrations(const Model::ListEventIntegrationsRequest& request) const; 503 504 /** 505 * <p>Returns a paginated list of event integrations in the account.</p><p><h3>See 506 * Also:</h3> <a 507 * href="http://docs.aws.amazon.com/goto/WebAPI/appintegrations-2020-07-29/ListEventIntegrations">AWS 508 * API Reference</a></p> 509 * 510 * returns a future to the operation so that it can be executed in parallel to other requests. 511 */ 512 virtual Model::ListEventIntegrationsOutcomeCallable ListEventIntegrationsCallable(const Model::ListEventIntegrationsRequest& request) const; 513 514 /** 515 * <p>Returns a paginated list of event integrations in the account.</p><p><h3>See 516 * Also:</h3> <a 517 * href="http://docs.aws.amazon.com/goto/WebAPI/appintegrations-2020-07-29/ListEventIntegrations">AWS 518 * API Reference</a></p> 519 * 520 * Queues the request into a thread executor and triggers associated callback when operation has finished. 521 */ 522 virtual void ListEventIntegrationsAsync(const Model::ListEventIntegrationsRequest& request, const ListEventIntegrationsResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const; 523 524 /** 525 * <p>Lists the tags for the specified resource.</p><p><h3>See Also:</h3> <a 526 * href="http://docs.aws.amazon.com/goto/WebAPI/appintegrations-2020-07-29/ListTagsForResource">AWS 527 * API Reference</a></p> 528 */ 529 virtual Model::ListTagsForResourceOutcome ListTagsForResource(const Model::ListTagsForResourceRequest& request) const; 530 531 /** 532 * <p>Lists the tags for the specified resource.</p><p><h3>See Also:</h3> <a 533 * href="http://docs.aws.amazon.com/goto/WebAPI/appintegrations-2020-07-29/ListTagsForResource">AWS 534 * API Reference</a></p> 535 * 536 * returns a future to the operation so that it can be executed in parallel to other requests. 537 */ 538 virtual Model::ListTagsForResourceOutcomeCallable ListTagsForResourceCallable(const Model::ListTagsForResourceRequest& request) const; 539 540 /** 541 * <p>Lists the tags for the specified resource.</p><p><h3>See Also:</h3> <a 542 * href="http://docs.aws.amazon.com/goto/WebAPI/appintegrations-2020-07-29/ListTagsForResource">AWS 543 * API Reference</a></p> 544 * 545 * Queues the request into a thread executor and triggers associated callback when operation has finished. 546 */ 547 virtual void ListTagsForResourceAsync(const Model::ListTagsForResourceRequest& request, const ListTagsForResourceResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const; 548 549 /** 550 * <p>Adds the specified tags to the specified resource.</p><p><h3>See Also:</h3> 551 * <a 552 * href="http://docs.aws.amazon.com/goto/WebAPI/appintegrations-2020-07-29/TagResource">AWS 553 * API Reference</a></p> 554 */ 555 virtual Model::TagResourceOutcome TagResource(const Model::TagResourceRequest& request) const; 556 557 /** 558 * <p>Adds the specified tags to the specified resource.</p><p><h3>See Also:</h3> 559 * <a 560 * href="http://docs.aws.amazon.com/goto/WebAPI/appintegrations-2020-07-29/TagResource">AWS 561 * API Reference</a></p> 562 * 563 * returns a future to the operation so that it can be executed in parallel to other requests. 564 */ 565 virtual Model::TagResourceOutcomeCallable TagResourceCallable(const Model::TagResourceRequest& request) const; 566 567 /** 568 * <p>Adds the specified tags to the specified resource.</p><p><h3>See Also:</h3> 569 * <a 570 * href="http://docs.aws.amazon.com/goto/WebAPI/appintegrations-2020-07-29/TagResource">AWS 571 * API Reference</a></p> 572 * 573 * Queues the request into a thread executor and triggers associated callback when operation has finished. 574 */ 575 virtual void TagResourceAsync(const Model::TagResourceRequest& request, const TagResourceResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const; 576 577 /** 578 * <p>Removes the specified tags from the specified resource.</p><p><h3>See 579 * Also:</h3> <a 580 * href="http://docs.aws.amazon.com/goto/WebAPI/appintegrations-2020-07-29/UntagResource">AWS 581 * API Reference</a></p> 582 */ 583 virtual Model::UntagResourceOutcome UntagResource(const Model::UntagResourceRequest& request) const; 584 585 /** 586 * <p>Removes the specified tags from the specified resource.</p><p><h3>See 587 * Also:</h3> <a 588 * href="http://docs.aws.amazon.com/goto/WebAPI/appintegrations-2020-07-29/UntagResource">AWS 589 * API Reference</a></p> 590 * 591 * returns a future to the operation so that it can be executed in parallel to other requests. 592 */ 593 virtual Model::UntagResourceOutcomeCallable UntagResourceCallable(const Model::UntagResourceRequest& request) const; 594 595 /** 596 * <p>Removes the specified tags from the specified resource.</p><p><h3>See 597 * Also:</h3> <a 598 * href="http://docs.aws.amazon.com/goto/WebAPI/appintegrations-2020-07-29/UntagResource">AWS 599 * API Reference</a></p> 600 * 601 * Queues the request into a thread executor and triggers associated callback when operation has finished. 602 */ 603 virtual void UntagResourceAsync(const Model::UntagResourceRequest& request, const UntagResourceResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const; 604 605 /** 606 * <p>Updates the description of a DataIntegration.</p> <p>You cannot create 607 * a DataIntegration association for a DataIntegration that has been previously 608 * associated. Use a different DataIntegration, or recreate the DataIntegration 609 * using the <a 610 * href="https://docs.aws.amazon.com/appintegrations/latest/APIReference/API_CreateDataIntegration.html">CreateDataIntegration</a> 611 * API.</p> <p><h3>See Also:</h3> <a 612 * href="http://docs.aws.amazon.com/goto/WebAPI/appintegrations-2020-07-29/UpdateDataIntegration">AWS 613 * API Reference</a></p> 614 */ 615 virtual Model::UpdateDataIntegrationOutcome UpdateDataIntegration(const Model::UpdateDataIntegrationRequest& request) const; 616 617 /** 618 * <p>Updates the description of a DataIntegration.</p> <p>You cannot create 619 * a DataIntegration association for a DataIntegration that has been previously 620 * associated. Use a different DataIntegration, or recreate the DataIntegration 621 * using the <a 622 * href="https://docs.aws.amazon.com/appintegrations/latest/APIReference/API_CreateDataIntegration.html">CreateDataIntegration</a> 623 * API.</p> <p><h3>See Also:</h3> <a 624 * href="http://docs.aws.amazon.com/goto/WebAPI/appintegrations-2020-07-29/UpdateDataIntegration">AWS 625 * API Reference</a></p> 626 * 627 * returns a future to the operation so that it can be executed in parallel to other requests. 628 */ 629 virtual Model::UpdateDataIntegrationOutcomeCallable UpdateDataIntegrationCallable(const Model::UpdateDataIntegrationRequest& request) const; 630 631 /** 632 * <p>Updates the description of a DataIntegration.</p> <p>You cannot create 633 * a DataIntegration association for a DataIntegration that has been previously 634 * associated. Use a different DataIntegration, or recreate the DataIntegration 635 * using the <a 636 * href="https://docs.aws.amazon.com/appintegrations/latest/APIReference/API_CreateDataIntegration.html">CreateDataIntegration</a> 637 * API.</p> <p><h3>See Also:</h3> <a 638 * href="http://docs.aws.amazon.com/goto/WebAPI/appintegrations-2020-07-29/UpdateDataIntegration">AWS 639 * API Reference</a></p> 640 * 641 * Queues the request into a thread executor and triggers associated callback when operation has finished. 642 */ 643 virtual void UpdateDataIntegrationAsync(const Model::UpdateDataIntegrationRequest& request, const UpdateDataIntegrationResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const; 644 645 /** 646 * <p>Updates the description of an event integration.</p><p><h3>See Also:</h3> 647 * <a 648 * href="http://docs.aws.amazon.com/goto/WebAPI/appintegrations-2020-07-29/UpdateEventIntegration">AWS 649 * API Reference</a></p> 650 */ 651 virtual Model::UpdateEventIntegrationOutcome UpdateEventIntegration(const Model::UpdateEventIntegrationRequest& request) const; 652 653 /** 654 * <p>Updates the description of an event integration.</p><p><h3>See Also:</h3> 655 * <a 656 * href="http://docs.aws.amazon.com/goto/WebAPI/appintegrations-2020-07-29/UpdateEventIntegration">AWS 657 * API Reference</a></p> 658 * 659 * returns a future to the operation so that it can be executed in parallel to other requests. 660 */ 661 virtual Model::UpdateEventIntegrationOutcomeCallable UpdateEventIntegrationCallable(const Model::UpdateEventIntegrationRequest& request) const; 662 663 /** 664 * <p>Updates the description of an event integration.</p><p><h3>See Also:</h3> 665 * <a 666 * href="http://docs.aws.amazon.com/goto/WebAPI/appintegrations-2020-07-29/UpdateEventIntegration">AWS 667 * API Reference</a></p> 668 * 669 * Queues the request into a thread executor and triggers associated callback when operation has finished. 670 */ 671 virtual void UpdateEventIntegrationAsync(const Model::UpdateEventIntegrationRequest& request, const UpdateEventIntegrationResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const; 672 673 674 void OverrideEndpoint(const Aws::String& endpoint); 675 private: 676 void init(const Aws::Client::ClientConfiguration& clientConfiguration); 677 void CreateDataIntegrationAsyncHelper(const Model::CreateDataIntegrationRequest& request, const CreateDataIntegrationResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const; 678 void CreateEventIntegrationAsyncHelper(const Model::CreateEventIntegrationRequest& request, const CreateEventIntegrationResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const; 679 void DeleteDataIntegrationAsyncHelper(const Model::DeleteDataIntegrationRequest& request, const DeleteDataIntegrationResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const; 680 void DeleteEventIntegrationAsyncHelper(const Model::DeleteEventIntegrationRequest& request, const DeleteEventIntegrationResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const; 681 void GetDataIntegrationAsyncHelper(const Model::GetDataIntegrationRequest& request, const GetDataIntegrationResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const; 682 void GetEventIntegrationAsyncHelper(const Model::GetEventIntegrationRequest& request, const GetEventIntegrationResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const; 683 void ListDataIntegrationAssociationsAsyncHelper(const Model::ListDataIntegrationAssociationsRequest& request, const ListDataIntegrationAssociationsResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const; 684 void ListDataIntegrationsAsyncHelper(const Model::ListDataIntegrationsRequest& request, const ListDataIntegrationsResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const; 685 void ListEventIntegrationAssociationsAsyncHelper(const Model::ListEventIntegrationAssociationsRequest& request, const ListEventIntegrationAssociationsResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const; 686 void ListEventIntegrationsAsyncHelper(const Model::ListEventIntegrationsRequest& request, const ListEventIntegrationsResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const; 687 void ListTagsForResourceAsyncHelper(const Model::ListTagsForResourceRequest& request, const ListTagsForResourceResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const; 688 void TagResourceAsyncHelper(const Model::TagResourceRequest& request, const TagResourceResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const; 689 void UntagResourceAsyncHelper(const Model::UntagResourceRequest& request, const UntagResourceResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const; 690 void UpdateDataIntegrationAsyncHelper(const Model::UpdateDataIntegrationRequest& request, const UpdateDataIntegrationResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const; 691 void UpdateEventIntegrationAsyncHelper(const Model::UpdateEventIntegrationRequest& request, const UpdateEventIntegrationResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const; 692 693 Aws::String m_uri; 694 Aws::String m_configScheme; 695 std::shared_ptr<Aws::Utils::Threading::Executor> m_executor; 696 }; 697 698 } // namespace AppIntegrationsService 699 } // namespace Aws 700