/** * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. * SPDX-License-Identifier: Apache-2.0. */ #pragma once #include #include #include #include #include #include namespace Aws { namespace AppSync { /** *

AppSync provides API actions for creating and interacting with data sources * using GraphQL from your application.

*/ class AWS_APPSYNC_API AppSyncClient : public Aws::Client::AWSJsonClient, public Aws::Client::ClientWithAsyncTemplateMethods { public: typedef Aws::Client::AWSJsonClient BASECLASS; static const char* SERVICE_NAME; static const char* ALLOCATION_TAG; typedef AppSyncClientConfiguration ClientConfigurationType; typedef AppSyncEndpointProvider EndpointProviderType; /** * Initializes client to use DefaultCredentialProviderChain, with default http client factory, and optional client config. If client config * is not specified, it will be initialized to default values. */ AppSyncClient(const Aws::AppSync::AppSyncClientConfiguration& clientConfiguration = Aws::AppSync::AppSyncClientConfiguration(), std::shared_ptr endpointProvider = Aws::MakeShared(ALLOCATION_TAG)); /** * Initializes client to use SimpleAWSCredentialsProvider, with default http client factory, and optional client config. If client config * is not specified, it will be initialized to default values. */ AppSyncClient(const Aws::Auth::AWSCredentials& credentials, std::shared_ptr endpointProvider = Aws::MakeShared(ALLOCATION_TAG), const Aws::AppSync::AppSyncClientConfiguration& clientConfiguration = Aws::AppSync::AppSyncClientConfiguration()); /** * Initializes client to use specified credentials provider with specified client config. If http client factory is not supplied, * the default http client factory will be used */ AppSyncClient(const std::shared_ptr& credentialsProvider, std::shared_ptr endpointProvider = Aws::MakeShared(ALLOCATION_TAG), const Aws::AppSync::AppSyncClientConfiguration& clientConfiguration = Aws::AppSync::AppSyncClientConfiguration()); /* Legacy constructors due deprecation */ /** * Initializes client to use DefaultCredentialProviderChain, with default http client factory, and optional client config. If client config * is not specified, it will be initialized to default values. */ AppSyncClient(const Aws::Client::ClientConfiguration& clientConfiguration); /** * Initializes client to use SimpleAWSCredentialsProvider, with default http client factory, and optional client config. If client config * is not specified, it will be initialized to default values. */ AppSyncClient(const Aws::Auth::AWSCredentials& credentials, const Aws::Client::ClientConfiguration& clientConfiguration); /** * Initializes client to use specified credentials provider with specified client config. If http client factory is not supplied, * the default http client factory will be used */ AppSyncClient(const std::shared_ptr& credentialsProvider, const Aws::Client::ClientConfiguration& clientConfiguration); /* End of legacy constructors due deprecation */ virtual ~AppSyncClient(); /** *

Maps an endpoint to your custom domain.

See Also:

AWS * API Reference

*/ virtual Model::AssociateApiOutcome AssociateApi(const Model::AssociateApiRequest& request) const; /** * A Callable wrapper for AssociateApi that returns a future to the operation so that it can be executed in parallel to other requests. */ template Model::AssociateApiOutcomeCallable AssociateApiCallable(const AssociateApiRequestT& request) const { return SubmitCallable(&AppSyncClient::AssociateApi, request); } /** * An Async wrapper for AssociateApi that queues the request into a thread executor and triggers associated callback when operation has finished. */ template void AssociateApiAsync(const AssociateApiRequestT& request, const AssociateApiResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const { return SubmitAsync(&AppSyncClient::AssociateApi, request, handler, context); } /** *

Creates an association between a Merged API and source API using the source * API's identifier.

See Also:

AWS * API Reference

*/ virtual Model::AssociateMergedGraphqlApiOutcome AssociateMergedGraphqlApi(const Model::AssociateMergedGraphqlApiRequest& request) const; /** * A Callable wrapper for AssociateMergedGraphqlApi that returns a future to the operation so that it can be executed in parallel to other requests. */ template Model::AssociateMergedGraphqlApiOutcomeCallable AssociateMergedGraphqlApiCallable(const AssociateMergedGraphqlApiRequestT& request) const { return SubmitCallable(&AppSyncClient::AssociateMergedGraphqlApi, request); } /** * An Async wrapper for AssociateMergedGraphqlApi that queues the request into a thread executor and triggers associated callback when operation has finished. */ template void AssociateMergedGraphqlApiAsync(const AssociateMergedGraphqlApiRequestT& request, const AssociateMergedGraphqlApiResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const { return SubmitAsync(&AppSyncClient::AssociateMergedGraphqlApi, request, handler, context); } /** *

Creates an association between a Merged API and source API using the Merged * API's identifier.

See Also:

AWS * API Reference

*/ virtual Model::AssociateSourceGraphqlApiOutcome AssociateSourceGraphqlApi(const Model::AssociateSourceGraphqlApiRequest& request) const; /** * A Callable wrapper for AssociateSourceGraphqlApi that returns a future to the operation so that it can be executed in parallel to other requests. */ template Model::AssociateSourceGraphqlApiOutcomeCallable AssociateSourceGraphqlApiCallable(const AssociateSourceGraphqlApiRequestT& request) const { return SubmitCallable(&AppSyncClient::AssociateSourceGraphqlApi, request); } /** * An Async wrapper for AssociateSourceGraphqlApi that queues the request into a thread executor and triggers associated callback when operation has finished. */ template void AssociateSourceGraphqlApiAsync(const AssociateSourceGraphqlApiRequestT& request, const AssociateSourceGraphqlApiResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const { return SubmitAsync(&AppSyncClient::AssociateSourceGraphqlApi, request, handler, context); } /** *

Creates a cache for the GraphQL API.

See Also:

AWS * API Reference

*/ virtual Model::CreateApiCacheOutcome CreateApiCache(const Model::CreateApiCacheRequest& request) const; /** * A Callable wrapper for CreateApiCache that returns a future to the operation so that it can be executed in parallel to other requests. */ template Model::CreateApiCacheOutcomeCallable CreateApiCacheCallable(const CreateApiCacheRequestT& request) const { return SubmitCallable(&AppSyncClient::CreateApiCache, request); } /** * An Async wrapper for CreateApiCache that queues the request into a thread executor and triggers associated callback when operation has finished. */ template void CreateApiCacheAsync(const CreateApiCacheRequestT& request, const CreateApiCacheResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const { return SubmitAsync(&AppSyncClient::CreateApiCache, request, handler, context); } /** *

Creates a unique key that you can distribute to clients who invoke your * API.

See Also:

AWS * API Reference

*/ virtual Model::CreateApiKeyOutcome CreateApiKey(const Model::CreateApiKeyRequest& request) const; /** * A Callable wrapper for CreateApiKey that returns a future to the operation so that it can be executed in parallel to other requests. */ template Model::CreateApiKeyOutcomeCallable CreateApiKeyCallable(const CreateApiKeyRequestT& request) const { return SubmitCallable(&AppSyncClient::CreateApiKey, request); } /** * An Async wrapper for CreateApiKey that queues the request into a thread executor and triggers associated callback when operation has finished. */ template void CreateApiKeyAsync(const CreateApiKeyRequestT& request, const CreateApiKeyResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const { return SubmitAsync(&AppSyncClient::CreateApiKey, request, handler, context); } /** *

Creates a DataSource object.

See Also:

AWS * API Reference

*/ virtual Model::CreateDataSourceOutcome CreateDataSource(const Model::CreateDataSourceRequest& request) const; /** * A Callable wrapper for CreateDataSource that returns a future to the operation so that it can be executed in parallel to other requests. */ template Model::CreateDataSourceOutcomeCallable CreateDataSourceCallable(const CreateDataSourceRequestT& request) const { return SubmitCallable(&AppSyncClient::CreateDataSource, request); } /** * An Async wrapper for CreateDataSource that queues the request into a thread executor and triggers associated callback when operation has finished. */ template void CreateDataSourceAsync(const CreateDataSourceRequestT& request, const CreateDataSourceResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const { return SubmitAsync(&AppSyncClient::CreateDataSource, request, handler, context); } /** *

Creates a custom DomainName object.

See Also:

* AWS * API Reference

*/ virtual Model::CreateDomainNameOutcome CreateDomainName(const Model::CreateDomainNameRequest& request) const; /** * A Callable wrapper for CreateDomainName that returns a future to the operation so that it can be executed in parallel to other requests. */ template Model::CreateDomainNameOutcomeCallable CreateDomainNameCallable(const CreateDomainNameRequestT& request) const { return SubmitCallable(&AppSyncClient::CreateDomainName, request); } /** * An Async wrapper for CreateDomainName that queues the request into a thread executor and triggers associated callback when operation has finished. */ template void CreateDomainNameAsync(const CreateDomainNameRequestT& request, const CreateDomainNameResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const { return SubmitAsync(&AppSyncClient::CreateDomainName, request, handler, context); } /** *

Creates a Function object.

A function is a reusable * entity. You can use multiple functions to compose the resolver * logic.

See Also:

AWS * API Reference

*/ virtual Model::CreateFunctionOutcome CreateFunction(const Model::CreateFunctionRequest& request) const; /** * A Callable wrapper for CreateFunction that returns a future to the operation so that it can be executed in parallel to other requests. */ template Model::CreateFunctionOutcomeCallable CreateFunctionCallable(const CreateFunctionRequestT& request) const { return SubmitCallable(&AppSyncClient::CreateFunction, request); } /** * An Async wrapper for CreateFunction that queues the request into a thread executor and triggers associated callback when operation has finished. */ template void CreateFunctionAsync(const CreateFunctionRequestT& request, const CreateFunctionResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const { return SubmitAsync(&AppSyncClient::CreateFunction, request, handler, context); } /** *

Creates a GraphqlApi object.

See Also:

AWS * API Reference

*/ virtual Model::CreateGraphqlApiOutcome CreateGraphqlApi(const Model::CreateGraphqlApiRequest& request) const; /** * A Callable wrapper for CreateGraphqlApi that returns a future to the operation so that it can be executed in parallel to other requests. */ template Model::CreateGraphqlApiOutcomeCallable CreateGraphqlApiCallable(const CreateGraphqlApiRequestT& request) const { return SubmitCallable(&AppSyncClient::CreateGraphqlApi, request); } /** * An Async wrapper for CreateGraphqlApi that queues the request into a thread executor and triggers associated callback when operation has finished. */ template void CreateGraphqlApiAsync(const CreateGraphqlApiRequestT& request, const CreateGraphqlApiResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const { return SubmitAsync(&AppSyncClient::CreateGraphqlApi, request, handler, context); } /** *

Creates a Resolver object.

A resolver converts incoming * requests into a format that a data source can understand, and converts the data * source's responses into GraphQL.

See Also:

AWS * API Reference

*/ virtual Model::CreateResolverOutcome CreateResolver(const Model::CreateResolverRequest& request) const; /** * A Callable wrapper for CreateResolver that returns a future to the operation so that it can be executed in parallel to other requests. */ template Model::CreateResolverOutcomeCallable CreateResolverCallable(const CreateResolverRequestT& request) const { return SubmitCallable(&AppSyncClient::CreateResolver, request); } /** * An Async wrapper for CreateResolver that queues the request into a thread executor and triggers associated callback when operation has finished. */ template void CreateResolverAsync(const CreateResolverRequestT& request, const CreateResolverResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const { return SubmitAsync(&AppSyncClient::CreateResolver, request, handler, context); } /** *

Creates a Type object.

See Also:

AWS * API Reference

*/ virtual Model::CreateTypeOutcome CreateType(const Model::CreateTypeRequest& request) const; /** * A Callable wrapper for CreateType that returns a future to the operation so that it can be executed in parallel to other requests. */ template Model::CreateTypeOutcomeCallable CreateTypeCallable(const CreateTypeRequestT& request) const { return SubmitCallable(&AppSyncClient::CreateType, request); } /** * An Async wrapper for CreateType that queues the request into a thread executor and triggers associated callback when operation has finished. */ template void CreateTypeAsync(const CreateTypeRequestT& request, const CreateTypeResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const { return SubmitAsync(&AppSyncClient::CreateType, request, handler, context); } /** *

Deletes an ApiCache object.

See Also:

AWS * API Reference

*/ virtual Model::DeleteApiCacheOutcome DeleteApiCache(const Model::DeleteApiCacheRequest& request) const; /** * A Callable wrapper for DeleteApiCache that returns a future to the operation so that it can be executed in parallel to other requests. */ template Model::DeleteApiCacheOutcomeCallable DeleteApiCacheCallable(const DeleteApiCacheRequestT& request) const { return SubmitCallable(&AppSyncClient::DeleteApiCache, request); } /** * An Async wrapper for DeleteApiCache that queues the request into a thread executor and triggers associated callback when operation has finished. */ template void DeleteApiCacheAsync(const DeleteApiCacheRequestT& request, const DeleteApiCacheResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const { return SubmitAsync(&AppSyncClient::DeleteApiCache, request, handler, context); } /** *

Deletes an API key.

See Also:

AWS * API Reference

*/ virtual Model::DeleteApiKeyOutcome DeleteApiKey(const Model::DeleteApiKeyRequest& request) const; /** * A Callable wrapper for DeleteApiKey that returns a future to the operation so that it can be executed in parallel to other requests. */ template Model::DeleteApiKeyOutcomeCallable DeleteApiKeyCallable(const DeleteApiKeyRequestT& request) const { return SubmitCallable(&AppSyncClient::DeleteApiKey, request); } /** * An Async wrapper for DeleteApiKey that queues the request into a thread executor and triggers associated callback when operation has finished. */ template void DeleteApiKeyAsync(const DeleteApiKeyRequestT& request, const DeleteApiKeyResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const { return SubmitAsync(&AppSyncClient::DeleteApiKey, request, handler, context); } /** *

Deletes a DataSource object.

See Also:

AWS * API Reference

*/ virtual Model::DeleteDataSourceOutcome DeleteDataSource(const Model::DeleteDataSourceRequest& request) const; /** * A Callable wrapper for DeleteDataSource that returns a future to the operation so that it can be executed in parallel to other requests. */ template Model::DeleteDataSourceOutcomeCallable DeleteDataSourceCallable(const DeleteDataSourceRequestT& request) const { return SubmitCallable(&AppSyncClient::DeleteDataSource, request); } /** * An Async wrapper for DeleteDataSource that queues the request into a thread executor and triggers associated callback when operation has finished. */ template void DeleteDataSourceAsync(const DeleteDataSourceRequestT& request, const DeleteDataSourceResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const { return SubmitAsync(&AppSyncClient::DeleteDataSource, request, handler, context); } /** *

Deletes a custom DomainName object.

See Also:

* AWS * API Reference

*/ virtual Model::DeleteDomainNameOutcome DeleteDomainName(const Model::DeleteDomainNameRequest& request) const; /** * A Callable wrapper for DeleteDomainName that returns a future to the operation so that it can be executed in parallel to other requests. */ template Model::DeleteDomainNameOutcomeCallable DeleteDomainNameCallable(const DeleteDomainNameRequestT& request) const { return SubmitCallable(&AppSyncClient::DeleteDomainName, request); } /** * An Async wrapper for DeleteDomainName that queues the request into a thread executor and triggers associated callback when operation has finished. */ template void DeleteDomainNameAsync(const DeleteDomainNameRequestT& request, const DeleteDomainNameResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const { return SubmitAsync(&AppSyncClient::DeleteDomainName, request, handler, context); } /** *

Deletes a Function.

See Also:

AWS * API Reference

*/ virtual Model::DeleteFunctionOutcome DeleteFunction(const Model::DeleteFunctionRequest& request) const; /** * A Callable wrapper for DeleteFunction that returns a future to the operation so that it can be executed in parallel to other requests. */ template Model::DeleteFunctionOutcomeCallable DeleteFunctionCallable(const DeleteFunctionRequestT& request) const { return SubmitCallable(&AppSyncClient::DeleteFunction, request); } /** * An Async wrapper for DeleteFunction that queues the request into a thread executor and triggers associated callback when operation has finished. */ template void DeleteFunctionAsync(const DeleteFunctionRequestT& request, const DeleteFunctionResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const { return SubmitAsync(&AppSyncClient::DeleteFunction, request, handler, context); } /** *

Deletes a GraphqlApi object.

See Also:

AWS * API Reference

*/ virtual Model::DeleteGraphqlApiOutcome DeleteGraphqlApi(const Model::DeleteGraphqlApiRequest& request) const; /** * A Callable wrapper for DeleteGraphqlApi that returns a future to the operation so that it can be executed in parallel to other requests. */ template Model::DeleteGraphqlApiOutcomeCallable DeleteGraphqlApiCallable(const DeleteGraphqlApiRequestT& request) const { return SubmitCallable(&AppSyncClient::DeleteGraphqlApi, request); } /** * An Async wrapper for DeleteGraphqlApi that queues the request into a thread executor and triggers associated callback when operation has finished. */ template void DeleteGraphqlApiAsync(const DeleteGraphqlApiRequestT& request, const DeleteGraphqlApiResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const { return SubmitAsync(&AppSyncClient::DeleteGraphqlApi, request, handler, context); } /** *

Deletes a Resolver object.

See Also:

AWS * API Reference

*/ virtual Model::DeleteResolverOutcome DeleteResolver(const Model::DeleteResolverRequest& request) const; /** * A Callable wrapper for DeleteResolver that returns a future to the operation so that it can be executed in parallel to other requests. */ template Model::DeleteResolverOutcomeCallable DeleteResolverCallable(const DeleteResolverRequestT& request) const { return SubmitCallable(&AppSyncClient::DeleteResolver, request); } /** * An Async wrapper for DeleteResolver that queues the request into a thread executor and triggers associated callback when operation has finished. */ template void DeleteResolverAsync(const DeleteResolverRequestT& request, const DeleteResolverResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const { return SubmitAsync(&AppSyncClient::DeleteResolver, request, handler, context); } /** *

Deletes a Type object.

See Also:

AWS * API Reference

*/ virtual Model::DeleteTypeOutcome DeleteType(const Model::DeleteTypeRequest& request) const; /** * A Callable wrapper for DeleteType that returns a future to the operation so that it can be executed in parallel to other requests. */ template Model::DeleteTypeOutcomeCallable DeleteTypeCallable(const DeleteTypeRequestT& request) const { return SubmitCallable(&AppSyncClient::DeleteType, request); } /** * An Async wrapper for DeleteType that queues the request into a thread executor and triggers associated callback when operation has finished. */ template void DeleteTypeAsync(const DeleteTypeRequestT& request, const DeleteTypeResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const { return SubmitAsync(&AppSyncClient::DeleteType, request, handler, context); } /** *

Removes an ApiAssociation object from a custom * domain.

See Also:

AWS * API Reference

*/ virtual Model::DisassociateApiOutcome DisassociateApi(const Model::DisassociateApiRequest& request) const; /** * A Callable wrapper for DisassociateApi that returns a future to the operation so that it can be executed in parallel to other requests. */ template Model::DisassociateApiOutcomeCallable DisassociateApiCallable(const DisassociateApiRequestT& request) const { return SubmitCallable(&AppSyncClient::DisassociateApi, request); } /** * An Async wrapper for DisassociateApi that queues the request into a thread executor and triggers associated callback when operation has finished. */ template void DisassociateApiAsync(const DisassociateApiRequestT& request, const DisassociateApiResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const { return SubmitAsync(&AppSyncClient::DisassociateApi, request, handler, context); } /** *

Deletes an association between a Merged API and source API using the source * API's identifier and the association ID.

See Also:

AWS * API Reference

*/ virtual Model::DisassociateMergedGraphqlApiOutcome DisassociateMergedGraphqlApi(const Model::DisassociateMergedGraphqlApiRequest& request) const; /** * A Callable wrapper for DisassociateMergedGraphqlApi that returns a future to the operation so that it can be executed in parallel to other requests. */ template Model::DisassociateMergedGraphqlApiOutcomeCallable DisassociateMergedGraphqlApiCallable(const DisassociateMergedGraphqlApiRequestT& request) const { return SubmitCallable(&AppSyncClient::DisassociateMergedGraphqlApi, request); } /** * An Async wrapper for DisassociateMergedGraphqlApi that queues the request into a thread executor and triggers associated callback when operation has finished. */ template void DisassociateMergedGraphqlApiAsync(const DisassociateMergedGraphqlApiRequestT& request, const DisassociateMergedGraphqlApiResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const { return SubmitAsync(&AppSyncClient::DisassociateMergedGraphqlApi, request, handler, context); } /** *

Deletes an association between a Merged API and source API using the Merged * API's identifier and the association ID.

See Also:

AWS * API Reference

*/ virtual Model::DisassociateSourceGraphqlApiOutcome DisassociateSourceGraphqlApi(const Model::DisassociateSourceGraphqlApiRequest& request) const; /** * A Callable wrapper for DisassociateSourceGraphqlApi that returns a future to the operation so that it can be executed in parallel to other requests. */ template Model::DisassociateSourceGraphqlApiOutcomeCallable DisassociateSourceGraphqlApiCallable(const DisassociateSourceGraphqlApiRequestT& request) const { return SubmitCallable(&AppSyncClient::DisassociateSourceGraphqlApi, request); } /** * An Async wrapper for DisassociateSourceGraphqlApi that queues the request into a thread executor and triggers associated callback when operation has finished. */ template void DisassociateSourceGraphqlApiAsync(const DisassociateSourceGraphqlApiRequestT& request, const DisassociateSourceGraphqlApiResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const { return SubmitAsync(&AppSyncClient::DisassociateSourceGraphqlApi, request, handler, context); } /** *

Evaluates the given code and returns the response. The code definition * requirements depend on the specified runtime. For APPSYNC_JS * runtimes, the code defines the request and response functions. The request * function takes the incoming request after a GraphQL operation is parsed and * converts it into a request configuration for the selected data source operation. * The response function interprets responses from the data source and maps it to * the shape of the GraphQL field output type.

See Also:

AWS * API Reference

*/ virtual Model::EvaluateCodeOutcome EvaluateCode(const Model::EvaluateCodeRequest& request) const; /** * A Callable wrapper for EvaluateCode that returns a future to the operation so that it can be executed in parallel to other requests. */ template Model::EvaluateCodeOutcomeCallable EvaluateCodeCallable(const EvaluateCodeRequestT& request) const { return SubmitCallable(&AppSyncClient::EvaluateCode, request); } /** * An Async wrapper for EvaluateCode that queues the request into a thread executor and triggers associated callback when operation has finished. */ template void EvaluateCodeAsync(const EvaluateCodeRequestT& request, const EvaluateCodeResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const { return SubmitAsync(&AppSyncClient::EvaluateCode, request, handler, context); } /** *

Evaluates a given template and returns the response. The mapping template can * be a request or response template.

Request templates take the incoming * request after a GraphQL operation is parsed and convert it into a request * configuration for the selected data source operation. Response templates * interpret responses from the data source and map it to the shape of the GraphQL * field output type.

Mapping templates are written in the Apache Velocity * Template Language (VTL).

See Also:

AWS * API Reference

*/ virtual Model::EvaluateMappingTemplateOutcome EvaluateMappingTemplate(const Model::EvaluateMappingTemplateRequest& request) const; /** * A Callable wrapper for EvaluateMappingTemplate that returns a future to the operation so that it can be executed in parallel to other requests. */ template Model::EvaluateMappingTemplateOutcomeCallable EvaluateMappingTemplateCallable(const EvaluateMappingTemplateRequestT& request) const { return SubmitCallable(&AppSyncClient::EvaluateMappingTemplate, request); } /** * An Async wrapper for EvaluateMappingTemplate that queues the request into a thread executor and triggers associated callback when operation has finished. */ template void EvaluateMappingTemplateAsync(const EvaluateMappingTemplateRequestT& request, const EvaluateMappingTemplateResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const { return SubmitAsync(&AppSyncClient::EvaluateMappingTemplate, request, handler, context); } /** *

Flushes an ApiCache object.

See Also:

AWS * API Reference

*/ virtual Model::FlushApiCacheOutcome FlushApiCache(const Model::FlushApiCacheRequest& request) const; /** * A Callable wrapper for FlushApiCache that returns a future to the operation so that it can be executed in parallel to other requests. */ template Model::FlushApiCacheOutcomeCallable FlushApiCacheCallable(const FlushApiCacheRequestT& request) const { return SubmitCallable(&AppSyncClient::FlushApiCache, request); } /** * An Async wrapper for FlushApiCache that queues the request into a thread executor and triggers associated callback when operation has finished. */ template void FlushApiCacheAsync(const FlushApiCacheRequestT& request, const FlushApiCacheResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const { return SubmitAsync(&AppSyncClient::FlushApiCache, request, handler, context); } /** *

Retrieves an ApiAssociation object.

See Also:

* AWS * API Reference

*/ virtual Model::GetApiAssociationOutcome GetApiAssociation(const Model::GetApiAssociationRequest& request) const; /** * A Callable wrapper for GetApiAssociation that returns a future to the operation so that it can be executed in parallel to other requests. */ template Model::GetApiAssociationOutcomeCallable GetApiAssociationCallable(const GetApiAssociationRequestT& request) const { return SubmitCallable(&AppSyncClient::GetApiAssociation, request); } /** * An Async wrapper for GetApiAssociation that queues the request into a thread executor and triggers associated callback when operation has finished. */ template void GetApiAssociationAsync(const GetApiAssociationRequestT& request, const GetApiAssociationResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const { return SubmitAsync(&AppSyncClient::GetApiAssociation, request, handler, context); } /** *

Retrieves an ApiCache object.

See Also:

AWS * API Reference

*/ virtual Model::GetApiCacheOutcome GetApiCache(const Model::GetApiCacheRequest& request) const; /** * A Callable wrapper for GetApiCache that returns a future to the operation so that it can be executed in parallel to other requests. */ template Model::GetApiCacheOutcomeCallable GetApiCacheCallable(const GetApiCacheRequestT& request) const { return SubmitCallable(&AppSyncClient::GetApiCache, request); } /** * An Async wrapper for GetApiCache that queues the request into a thread executor and triggers associated callback when operation has finished. */ template void GetApiCacheAsync(const GetApiCacheRequestT& request, const GetApiCacheResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const { return SubmitAsync(&AppSyncClient::GetApiCache, request, handler, context); } /** *

Retrieves a DataSource object.

See Also:

AWS * API Reference

*/ virtual Model::GetDataSourceOutcome GetDataSource(const Model::GetDataSourceRequest& request) const; /** * A Callable wrapper for GetDataSource that returns a future to the operation so that it can be executed in parallel to other requests. */ template Model::GetDataSourceOutcomeCallable GetDataSourceCallable(const GetDataSourceRequestT& request) const { return SubmitCallable(&AppSyncClient::GetDataSource, request); } /** * An Async wrapper for GetDataSource that queues the request into a thread executor and triggers associated callback when operation has finished. */ template void GetDataSourceAsync(const GetDataSourceRequestT& request, const GetDataSourceResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const { return SubmitAsync(&AppSyncClient::GetDataSource, request, handler, context); } /** *

Retrieves a custom DomainName object.

See Also:

* AWS * API Reference

*/ virtual Model::GetDomainNameOutcome GetDomainName(const Model::GetDomainNameRequest& request) const; /** * A Callable wrapper for GetDomainName that returns a future to the operation so that it can be executed in parallel to other requests. */ template Model::GetDomainNameOutcomeCallable GetDomainNameCallable(const GetDomainNameRequestT& request) const { return SubmitCallable(&AppSyncClient::GetDomainName, request); } /** * An Async wrapper for GetDomainName that queues the request into a thread executor and triggers associated callback when operation has finished. */ template void GetDomainNameAsync(const GetDomainNameRequestT& request, const GetDomainNameResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const { return SubmitAsync(&AppSyncClient::GetDomainName, request, handler, context); } /** *

Get a Function.

See Also:

AWS * API Reference

*/ virtual Model::GetFunctionOutcome GetFunction(const Model::GetFunctionRequest& request) const; /** * A Callable wrapper for GetFunction that returns a future to the operation so that it can be executed in parallel to other requests. */ template Model::GetFunctionOutcomeCallable GetFunctionCallable(const GetFunctionRequestT& request) const { return SubmitCallable(&AppSyncClient::GetFunction, request); } /** * An Async wrapper for GetFunction that queues the request into a thread executor and triggers associated callback when operation has finished. */ template void GetFunctionAsync(const GetFunctionRequestT& request, const GetFunctionResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const { return SubmitAsync(&AppSyncClient::GetFunction, request, handler, context); } /** *

Retrieves a GraphqlApi object.

See Also:

AWS * API Reference

*/ virtual Model::GetGraphqlApiOutcome GetGraphqlApi(const Model::GetGraphqlApiRequest& request) const; /** * A Callable wrapper for GetGraphqlApi that returns a future to the operation so that it can be executed in parallel to other requests. */ template Model::GetGraphqlApiOutcomeCallable GetGraphqlApiCallable(const GetGraphqlApiRequestT& request) const { return SubmitCallable(&AppSyncClient::GetGraphqlApi, request); } /** * An Async wrapper for GetGraphqlApi that queues the request into a thread executor and triggers associated callback when operation has finished. */ template void GetGraphqlApiAsync(const GetGraphqlApiRequestT& request, const GetGraphqlApiResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const { return SubmitAsync(&AppSyncClient::GetGraphqlApi, request, handler, context); } /** *

Retrieves the introspection schema for a GraphQL API.

See * Also:

AWS * API Reference

*/ virtual Model::GetIntrospectionSchemaOutcome GetIntrospectionSchema(const Model::GetIntrospectionSchemaRequest& request) const; /** * A Callable wrapper for GetIntrospectionSchema that returns a future to the operation so that it can be executed in parallel to other requests. */ template Model::GetIntrospectionSchemaOutcomeCallable GetIntrospectionSchemaCallable(const GetIntrospectionSchemaRequestT& request) const { return SubmitCallable(&AppSyncClient::GetIntrospectionSchema, request); } /** * An Async wrapper for GetIntrospectionSchema that queues the request into a thread executor and triggers associated callback when operation has finished. */ template void GetIntrospectionSchemaAsync(const GetIntrospectionSchemaRequestT& request, const GetIntrospectionSchemaResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const { return SubmitAsync(&AppSyncClient::GetIntrospectionSchema, request, handler, context); } /** *

Retrieves a Resolver object.

See Also:

AWS * API Reference

*/ virtual Model::GetResolverOutcome GetResolver(const Model::GetResolverRequest& request) const; /** * A Callable wrapper for GetResolver that returns a future to the operation so that it can be executed in parallel to other requests. */ template Model::GetResolverOutcomeCallable GetResolverCallable(const GetResolverRequestT& request) const { return SubmitCallable(&AppSyncClient::GetResolver, request); } /** * An Async wrapper for GetResolver that queues the request into a thread executor and triggers associated callback when operation has finished. */ template void GetResolverAsync(const GetResolverRequestT& request, const GetResolverResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const { return SubmitAsync(&AppSyncClient::GetResolver, request, handler, context); } /** *

Retrieves the current status of a schema creation operation.

See * Also:

AWS * API Reference

*/ virtual Model::GetSchemaCreationStatusOutcome GetSchemaCreationStatus(const Model::GetSchemaCreationStatusRequest& request) const; /** * A Callable wrapper for GetSchemaCreationStatus that returns a future to the operation so that it can be executed in parallel to other requests. */ template Model::GetSchemaCreationStatusOutcomeCallable GetSchemaCreationStatusCallable(const GetSchemaCreationStatusRequestT& request) const { return SubmitCallable(&AppSyncClient::GetSchemaCreationStatus, request); } /** * An Async wrapper for GetSchemaCreationStatus that queues the request into a thread executor and triggers associated callback when operation has finished. */ template void GetSchemaCreationStatusAsync(const GetSchemaCreationStatusRequestT& request, const GetSchemaCreationStatusResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const { return SubmitAsync(&AppSyncClient::GetSchemaCreationStatus, request, handler, context); } /** *

Retrieves a SourceApiAssociation object.

See * Also:

AWS * API Reference

*/ virtual Model::GetSourceApiAssociationOutcome GetSourceApiAssociation(const Model::GetSourceApiAssociationRequest& request) const; /** * A Callable wrapper for GetSourceApiAssociation that returns a future to the operation so that it can be executed in parallel to other requests. */ template Model::GetSourceApiAssociationOutcomeCallable GetSourceApiAssociationCallable(const GetSourceApiAssociationRequestT& request) const { return SubmitCallable(&AppSyncClient::GetSourceApiAssociation, request); } /** * An Async wrapper for GetSourceApiAssociation that queues the request into a thread executor and triggers associated callback when operation has finished. */ template void GetSourceApiAssociationAsync(const GetSourceApiAssociationRequestT& request, const GetSourceApiAssociationResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const { return SubmitAsync(&AppSyncClient::GetSourceApiAssociation, request, handler, context); } /** *

Retrieves a Type object.

See Also:

AWS API * Reference

*/ virtual Model::GetTypeOutcome GetType(const Model::GetTypeRequest& request) const; /** * A Callable wrapper for GetType that returns a future to the operation so that it can be executed in parallel to other requests. */ template Model::GetTypeOutcomeCallable GetTypeCallable(const GetTypeRequestT& request) const { return SubmitCallable(&AppSyncClient::GetType, request); } /** * An Async wrapper for GetType that queues the request into a thread executor and triggers associated callback when operation has finished. */ template void GetTypeAsync(const GetTypeRequestT& request, const GetTypeResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const { return SubmitAsync(&AppSyncClient::GetType, request, handler, context); } /** *

Lists the API keys for a given API.

API keys are deleted * automatically 60 days after they expire. However, they may still be included in * the response until they have actually been deleted. You can safely call * DeleteApiKey to manually delete a key before it's automatically * deleted.

See Also:

AWS * API Reference

*/ virtual Model::ListApiKeysOutcome ListApiKeys(const Model::ListApiKeysRequest& request) const; /** * A Callable wrapper for ListApiKeys that returns a future to the operation so that it can be executed in parallel to other requests. */ template Model::ListApiKeysOutcomeCallable ListApiKeysCallable(const ListApiKeysRequestT& request) const { return SubmitCallable(&AppSyncClient::ListApiKeys, request); } /** * An Async wrapper for ListApiKeys that queues the request into a thread executor and triggers associated callback when operation has finished. */ template void ListApiKeysAsync(const ListApiKeysRequestT& request, const ListApiKeysResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const { return SubmitAsync(&AppSyncClient::ListApiKeys, request, handler, context); } /** *

Lists the data sources for a given API.

See Also:

AWS * API Reference

*/ virtual Model::ListDataSourcesOutcome ListDataSources(const Model::ListDataSourcesRequest& request) const; /** * A Callable wrapper for ListDataSources that returns a future to the operation so that it can be executed in parallel to other requests. */ template Model::ListDataSourcesOutcomeCallable ListDataSourcesCallable(const ListDataSourcesRequestT& request) const { return SubmitCallable(&AppSyncClient::ListDataSources, request); } /** * An Async wrapper for ListDataSources that queues the request into a thread executor and triggers associated callback when operation has finished. */ template void ListDataSourcesAsync(const ListDataSourcesRequestT& request, const ListDataSourcesResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const { return SubmitAsync(&AppSyncClient::ListDataSources, request, handler, context); } /** *

Lists multiple custom domain names.

See Also:

AWS * API Reference

*/ virtual Model::ListDomainNamesOutcome ListDomainNames(const Model::ListDomainNamesRequest& request) const; /** * A Callable wrapper for ListDomainNames that returns a future to the operation so that it can be executed in parallel to other requests. */ template Model::ListDomainNamesOutcomeCallable ListDomainNamesCallable(const ListDomainNamesRequestT& request) const { return SubmitCallable(&AppSyncClient::ListDomainNames, request); } /** * An Async wrapper for ListDomainNames that queues the request into a thread executor and triggers associated callback when operation has finished. */ template void ListDomainNamesAsync(const ListDomainNamesRequestT& request, const ListDomainNamesResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const { return SubmitAsync(&AppSyncClient::ListDomainNames, request, handler, context); } /** *

List multiple functions.

See Also:

AWS * API Reference

*/ virtual Model::ListFunctionsOutcome ListFunctions(const Model::ListFunctionsRequest& request) const; /** * A Callable wrapper for ListFunctions that returns a future to the operation so that it can be executed in parallel to other requests. */ template Model::ListFunctionsOutcomeCallable ListFunctionsCallable(const ListFunctionsRequestT& request) const { return SubmitCallable(&AppSyncClient::ListFunctions, request); } /** * An Async wrapper for ListFunctions that queues the request into a thread executor and triggers associated callback when operation has finished. */ template void ListFunctionsAsync(const ListFunctionsRequestT& request, const ListFunctionsResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const { return SubmitAsync(&AppSyncClient::ListFunctions, request, handler, context); } /** *

Lists your GraphQL APIs.

See Also:

AWS * API Reference

*/ virtual Model::ListGraphqlApisOutcome ListGraphqlApis(const Model::ListGraphqlApisRequest& request) const; /** * A Callable wrapper for ListGraphqlApis that returns a future to the operation so that it can be executed in parallel to other requests. */ template Model::ListGraphqlApisOutcomeCallable ListGraphqlApisCallable(const ListGraphqlApisRequestT& request) const { return SubmitCallable(&AppSyncClient::ListGraphqlApis, request); } /** * An Async wrapper for ListGraphqlApis that queues the request into a thread executor and triggers associated callback when operation has finished. */ template void ListGraphqlApisAsync(const ListGraphqlApisRequestT& request, const ListGraphqlApisResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const { return SubmitAsync(&AppSyncClient::ListGraphqlApis, request, handler, context); } /** *

Lists the resolvers for a given API and type.

See Also:

AWS * API Reference

*/ virtual Model::ListResolversOutcome ListResolvers(const Model::ListResolversRequest& request) const; /** * A Callable wrapper for ListResolvers that returns a future to the operation so that it can be executed in parallel to other requests. */ template Model::ListResolversOutcomeCallable ListResolversCallable(const ListResolversRequestT& request) const { return SubmitCallable(&AppSyncClient::ListResolvers, request); } /** * An Async wrapper for ListResolvers that queues the request into a thread executor and triggers associated callback when operation has finished. */ template void ListResolversAsync(const ListResolversRequestT& request, const ListResolversResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const { return SubmitAsync(&AppSyncClient::ListResolvers, request, handler, context); } /** *

List the resolvers that are associated with a specific * function.

See Also:

AWS * API Reference

*/ virtual Model::ListResolversByFunctionOutcome ListResolversByFunction(const Model::ListResolversByFunctionRequest& request) const; /** * A Callable wrapper for ListResolversByFunction that returns a future to the operation so that it can be executed in parallel to other requests. */ template Model::ListResolversByFunctionOutcomeCallable ListResolversByFunctionCallable(const ListResolversByFunctionRequestT& request) const { return SubmitCallable(&AppSyncClient::ListResolversByFunction, request); } /** * An Async wrapper for ListResolversByFunction that queues the request into a thread executor and triggers associated callback when operation has finished. */ template void ListResolversByFunctionAsync(const ListResolversByFunctionRequestT& request, const ListResolversByFunctionResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const { return SubmitAsync(&AppSyncClient::ListResolversByFunction, request, handler, context); } /** *

Lists the SourceApiAssociationSummary data.

See * Also:

AWS * API Reference

*/ virtual Model::ListSourceApiAssociationsOutcome ListSourceApiAssociations(const Model::ListSourceApiAssociationsRequest& request) const; /** * A Callable wrapper for ListSourceApiAssociations that returns a future to the operation so that it can be executed in parallel to other requests. */ template Model::ListSourceApiAssociationsOutcomeCallable ListSourceApiAssociationsCallable(const ListSourceApiAssociationsRequestT& request) const { return SubmitCallable(&AppSyncClient::ListSourceApiAssociations, request); } /** * An Async wrapper for ListSourceApiAssociations that queues the request into a thread executor and triggers associated callback when operation has finished. */ template void ListSourceApiAssociationsAsync(const ListSourceApiAssociationsRequestT& request, const ListSourceApiAssociationsResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const { return SubmitAsync(&AppSyncClient::ListSourceApiAssociations, request, handler, context); } /** *

Lists the tags for a resource.

See Also:

AWS * API Reference

*/ virtual Model::ListTagsForResourceOutcome ListTagsForResource(const Model::ListTagsForResourceRequest& request) const; /** * A Callable wrapper for ListTagsForResource that returns a future to the operation so that it can be executed in parallel to other requests. */ template Model::ListTagsForResourceOutcomeCallable ListTagsForResourceCallable(const ListTagsForResourceRequestT& request) const { return SubmitCallable(&AppSyncClient::ListTagsForResource, request); } /** * An Async wrapper for ListTagsForResource that queues the request into a thread executor and triggers associated callback when operation has finished. */ template void ListTagsForResourceAsync(const ListTagsForResourceRequestT& request, const ListTagsForResourceResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const { return SubmitAsync(&AppSyncClient::ListTagsForResource, request, handler, context); } /** *

Lists the types for a given API.

See Also:

AWS * API Reference

*/ virtual Model::ListTypesOutcome ListTypes(const Model::ListTypesRequest& request) const; /** * A Callable wrapper for ListTypes that returns a future to the operation so that it can be executed in parallel to other requests. */ template Model::ListTypesOutcomeCallable ListTypesCallable(const ListTypesRequestT& request) const { return SubmitCallable(&AppSyncClient::ListTypes, request); } /** * An Async wrapper for ListTypes that queues the request into a thread executor and triggers associated callback when operation has finished. */ template void ListTypesAsync(const ListTypesRequestT& request, const ListTypesResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const { return SubmitAsync(&AppSyncClient::ListTypes, request, handler, context); } /** *

Lists Type objects by the source API association * ID.

See Also:

AWS * API Reference

*/ virtual Model::ListTypesByAssociationOutcome ListTypesByAssociation(const Model::ListTypesByAssociationRequest& request) const; /** * A Callable wrapper for ListTypesByAssociation that returns a future to the operation so that it can be executed in parallel to other requests. */ template Model::ListTypesByAssociationOutcomeCallable ListTypesByAssociationCallable(const ListTypesByAssociationRequestT& request) const { return SubmitCallable(&AppSyncClient::ListTypesByAssociation, request); } /** * An Async wrapper for ListTypesByAssociation that queues the request into a thread executor and triggers associated callback when operation has finished. */ template void ListTypesByAssociationAsync(const ListTypesByAssociationRequestT& request, const ListTypesByAssociationResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const { return SubmitAsync(&AppSyncClient::ListTypesByAssociation, request, handler, context); } /** *

Adds a new schema to your GraphQL API.

This operation is asynchronous. * Use to determine when it has completed.

See Also:

AWS * API Reference

*/ virtual Model::StartSchemaCreationOutcome StartSchemaCreation(const Model::StartSchemaCreationRequest& request) const; /** * A Callable wrapper for StartSchemaCreation that returns a future to the operation so that it can be executed in parallel to other requests. */ template Model::StartSchemaCreationOutcomeCallable StartSchemaCreationCallable(const StartSchemaCreationRequestT& request) const { return SubmitCallable(&AppSyncClient::StartSchemaCreation, request); } /** * An Async wrapper for StartSchemaCreation that queues the request into a thread executor and triggers associated callback when operation has finished. */ template void StartSchemaCreationAsync(const StartSchemaCreationRequestT& request, const StartSchemaCreationResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const { return SubmitAsync(&AppSyncClient::StartSchemaCreation, request, handler, context); } /** *

Initiates a merge operation. Returns a status that shows the result of the * merge operation.

See Also:

AWS * API Reference

*/ virtual Model::StartSchemaMergeOutcome StartSchemaMerge(const Model::StartSchemaMergeRequest& request) const; /** * A Callable wrapper for StartSchemaMerge that returns a future to the operation so that it can be executed in parallel to other requests. */ template Model::StartSchemaMergeOutcomeCallable StartSchemaMergeCallable(const StartSchemaMergeRequestT& request) const { return SubmitCallable(&AppSyncClient::StartSchemaMerge, request); } /** * An Async wrapper for StartSchemaMerge that queues the request into a thread executor and triggers associated callback when operation has finished. */ template void StartSchemaMergeAsync(const StartSchemaMergeRequestT& request, const StartSchemaMergeResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const { return SubmitAsync(&AppSyncClient::StartSchemaMerge, request, handler, context); } /** *

Tags a resource with user-supplied tags.

See Also:

AWS * API Reference

*/ virtual Model::TagResourceOutcome TagResource(const Model::TagResourceRequest& request) const; /** * A Callable wrapper for TagResource that returns a future to the operation so that it can be executed in parallel to other requests. */ template Model::TagResourceOutcomeCallable TagResourceCallable(const TagResourceRequestT& request) const { return SubmitCallable(&AppSyncClient::TagResource, request); } /** * An Async wrapper for TagResource that queues the request into a thread executor and triggers associated callback when operation has finished. */ template void TagResourceAsync(const TagResourceRequestT& request, const TagResourceResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const { return SubmitAsync(&AppSyncClient::TagResource, request, handler, context); } /** *

Untags a resource.

See Also:

AWS * API Reference

*/ virtual Model::UntagResourceOutcome UntagResource(const Model::UntagResourceRequest& request) const; /** * A Callable wrapper for UntagResource that returns a future to the operation so that it can be executed in parallel to other requests. */ template Model::UntagResourceOutcomeCallable UntagResourceCallable(const UntagResourceRequestT& request) const { return SubmitCallable(&AppSyncClient::UntagResource, request); } /** * An Async wrapper for UntagResource that queues the request into a thread executor and triggers associated callback when operation has finished. */ template void UntagResourceAsync(const UntagResourceRequestT& request, const UntagResourceResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const { return SubmitAsync(&AppSyncClient::UntagResource, request, handler, context); } /** *

Updates the cache for the GraphQL API.

See Also:

AWS * API Reference

*/ virtual Model::UpdateApiCacheOutcome UpdateApiCache(const Model::UpdateApiCacheRequest& request) const; /** * A Callable wrapper for UpdateApiCache that returns a future to the operation so that it can be executed in parallel to other requests. */ template Model::UpdateApiCacheOutcomeCallable UpdateApiCacheCallable(const UpdateApiCacheRequestT& request) const { return SubmitCallable(&AppSyncClient::UpdateApiCache, request); } /** * An Async wrapper for UpdateApiCache that queues the request into a thread executor and triggers associated callback when operation has finished. */ template void UpdateApiCacheAsync(const UpdateApiCacheRequestT& request, const UpdateApiCacheResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const { return SubmitAsync(&AppSyncClient::UpdateApiCache, request, handler, context); } /** *

Updates an API key. You can update the key as long as it's not * deleted.

See Also:

AWS * API Reference

*/ virtual Model::UpdateApiKeyOutcome UpdateApiKey(const Model::UpdateApiKeyRequest& request) const; /** * A Callable wrapper for UpdateApiKey that returns a future to the operation so that it can be executed in parallel to other requests. */ template Model::UpdateApiKeyOutcomeCallable UpdateApiKeyCallable(const UpdateApiKeyRequestT& request) const { return SubmitCallable(&AppSyncClient::UpdateApiKey, request); } /** * An Async wrapper for UpdateApiKey that queues the request into a thread executor and triggers associated callback when operation has finished. */ template void UpdateApiKeyAsync(const UpdateApiKeyRequestT& request, const UpdateApiKeyResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const { return SubmitAsync(&AppSyncClient::UpdateApiKey, request, handler, context); } /** *

Updates a DataSource object.

See Also:

AWS * API Reference

*/ virtual Model::UpdateDataSourceOutcome UpdateDataSource(const Model::UpdateDataSourceRequest& request) const; /** * A Callable wrapper for UpdateDataSource that returns a future to the operation so that it can be executed in parallel to other requests. */ template Model::UpdateDataSourceOutcomeCallable UpdateDataSourceCallable(const UpdateDataSourceRequestT& request) const { return SubmitCallable(&AppSyncClient::UpdateDataSource, request); } /** * An Async wrapper for UpdateDataSource that queues the request into a thread executor and triggers associated callback when operation has finished. */ template void UpdateDataSourceAsync(const UpdateDataSourceRequestT& request, const UpdateDataSourceResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const { return SubmitAsync(&AppSyncClient::UpdateDataSource, request, handler, context); } /** *

Updates a custom DomainName object.

See Also:

* AWS * API Reference

*/ virtual Model::UpdateDomainNameOutcome UpdateDomainName(const Model::UpdateDomainNameRequest& request) const; /** * A Callable wrapper for UpdateDomainName that returns a future to the operation so that it can be executed in parallel to other requests. */ template Model::UpdateDomainNameOutcomeCallable UpdateDomainNameCallable(const UpdateDomainNameRequestT& request) const { return SubmitCallable(&AppSyncClient::UpdateDomainName, request); } /** * An Async wrapper for UpdateDomainName that queues the request into a thread executor and triggers associated callback when operation has finished. */ template void UpdateDomainNameAsync(const UpdateDomainNameRequestT& request, const UpdateDomainNameResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const { return SubmitAsync(&AppSyncClient::UpdateDomainName, request, handler, context); } /** *

Updates a Function object.

See Also:

AWS * API Reference

*/ virtual Model::UpdateFunctionOutcome UpdateFunction(const Model::UpdateFunctionRequest& request) const; /** * A Callable wrapper for UpdateFunction that returns a future to the operation so that it can be executed in parallel to other requests. */ template Model::UpdateFunctionOutcomeCallable UpdateFunctionCallable(const UpdateFunctionRequestT& request) const { return SubmitCallable(&AppSyncClient::UpdateFunction, request); } /** * An Async wrapper for UpdateFunction that queues the request into a thread executor and triggers associated callback when operation has finished. */ template void UpdateFunctionAsync(const UpdateFunctionRequestT& request, const UpdateFunctionResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const { return SubmitAsync(&AppSyncClient::UpdateFunction, request, handler, context); } /** *

Updates a GraphqlApi object.

See Also:

AWS * API Reference

*/ virtual Model::UpdateGraphqlApiOutcome UpdateGraphqlApi(const Model::UpdateGraphqlApiRequest& request) const; /** * A Callable wrapper for UpdateGraphqlApi that returns a future to the operation so that it can be executed in parallel to other requests. */ template Model::UpdateGraphqlApiOutcomeCallable UpdateGraphqlApiCallable(const UpdateGraphqlApiRequestT& request) const { return SubmitCallable(&AppSyncClient::UpdateGraphqlApi, request); } /** * An Async wrapper for UpdateGraphqlApi that queues the request into a thread executor and triggers associated callback when operation has finished. */ template void UpdateGraphqlApiAsync(const UpdateGraphqlApiRequestT& request, const UpdateGraphqlApiResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const { return SubmitAsync(&AppSyncClient::UpdateGraphqlApi, request, handler, context); } /** *

Updates a Resolver object.

See Also:

AWS * API Reference

*/ virtual Model::UpdateResolverOutcome UpdateResolver(const Model::UpdateResolverRequest& request) const; /** * A Callable wrapper for UpdateResolver that returns a future to the operation so that it can be executed in parallel to other requests. */ template Model::UpdateResolverOutcomeCallable UpdateResolverCallable(const UpdateResolverRequestT& request) const { return SubmitCallable(&AppSyncClient::UpdateResolver, request); } /** * An Async wrapper for UpdateResolver that queues the request into a thread executor and triggers associated callback when operation has finished. */ template void UpdateResolverAsync(const UpdateResolverRequestT& request, const UpdateResolverResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const { return SubmitAsync(&AppSyncClient::UpdateResolver, request, handler, context); } /** *

Updates some of the configuration choices of a particular source API * association.

See Also:

AWS * API Reference

*/ virtual Model::UpdateSourceApiAssociationOutcome UpdateSourceApiAssociation(const Model::UpdateSourceApiAssociationRequest& request) const; /** * A Callable wrapper for UpdateSourceApiAssociation that returns a future to the operation so that it can be executed in parallel to other requests. */ template Model::UpdateSourceApiAssociationOutcomeCallable UpdateSourceApiAssociationCallable(const UpdateSourceApiAssociationRequestT& request) const { return SubmitCallable(&AppSyncClient::UpdateSourceApiAssociation, request); } /** * An Async wrapper for UpdateSourceApiAssociation that queues the request into a thread executor and triggers associated callback when operation has finished. */ template void UpdateSourceApiAssociationAsync(const UpdateSourceApiAssociationRequestT& request, const UpdateSourceApiAssociationResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const { return SubmitAsync(&AppSyncClient::UpdateSourceApiAssociation, request, handler, context); } /** *

Updates a Type object.

See Also:

AWS * API Reference

*/ virtual Model::UpdateTypeOutcome UpdateType(const Model::UpdateTypeRequest& request) const; /** * A Callable wrapper for UpdateType that returns a future to the operation so that it can be executed in parallel to other requests. */ template Model::UpdateTypeOutcomeCallable UpdateTypeCallable(const UpdateTypeRequestT& request) const { return SubmitCallable(&AppSyncClient::UpdateType, request); } /** * An Async wrapper for UpdateType that queues the request into a thread executor and triggers associated callback when operation has finished. */ template void UpdateTypeAsync(const UpdateTypeRequestT& request, const UpdateTypeResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const { return SubmitAsync(&AppSyncClient::UpdateType, request, handler, context); } void OverrideEndpoint(const Aws::String& endpoint); std::shared_ptr& accessEndpointProvider(); private: friend class Aws::Client::ClientWithAsyncTemplateMethods; void init(const AppSyncClientConfiguration& clientConfiguration); AppSyncClientConfiguration m_clientConfiguration; std::shared_ptr m_executor; std::shared_ptr m_endpointProvider; }; } // namespace AppSync } // namespace Aws