/** * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. * SPDX-License-Identifier: Apache-2.0. */ #pragma once /* Generic header includes */ #include #include #include #include #include #include #include #include #include /* End of generic header includes */ /* Service model headers required in AthenaClient header */ #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include /* End of service model headers required in AthenaClient header */ namespace Aws { namespace Http { class HttpClient; class HttpClientFactory; } // namespace Http namespace Utils { template< typename R, typename E> class Outcome; namespace Threading { class Executor; } // namespace Threading } // namespace Utils namespace Auth { class AWSCredentials; class AWSCredentialsProvider; } // namespace Auth namespace Client { class RetryStrategy; } // namespace Client namespace Athena { using AthenaClientConfiguration = Aws::Client::GenericClientConfiguration; using AthenaEndpointProviderBase = Aws::Athena::Endpoint::AthenaEndpointProviderBase; using AthenaEndpointProvider = Aws::Athena::Endpoint::AthenaEndpointProvider; namespace Model { /* Service model forward declarations required in AthenaClient header */ class BatchGetNamedQueryRequest; class BatchGetPreparedStatementRequest; class BatchGetQueryExecutionRequest; class CancelCapacityReservationRequest; class CreateCapacityReservationRequest; class CreateDataCatalogRequest; class CreateNamedQueryRequest; class CreateNotebookRequest; class CreatePreparedStatementRequest; class CreatePresignedNotebookUrlRequest; class CreateWorkGroupRequest; class DeleteCapacityReservationRequest; class DeleteDataCatalogRequest; class DeleteNamedQueryRequest; class DeleteNotebookRequest; class DeletePreparedStatementRequest; class DeleteWorkGroupRequest; class ExportNotebookRequest; class GetCalculationExecutionRequest; class GetCalculationExecutionCodeRequest; class GetCalculationExecutionStatusRequest; class GetCapacityAssignmentConfigurationRequest; class GetCapacityReservationRequest; class GetDataCatalogRequest; class GetDatabaseRequest; class GetNamedQueryRequest; class GetNotebookMetadataRequest; class GetPreparedStatementRequest; class GetQueryExecutionRequest; class GetQueryResultsRequest; class GetQueryRuntimeStatisticsRequest; class GetSessionRequest; class GetSessionStatusRequest; class GetTableMetadataRequest; class GetWorkGroupRequest; class ImportNotebookRequest; class ListApplicationDPUSizesRequest; class ListCalculationExecutionsRequest; class ListCapacityReservationsRequest; class ListDataCatalogsRequest; class ListDatabasesRequest; class ListEngineVersionsRequest; class ListExecutorsRequest; class ListNamedQueriesRequest; class ListNotebookMetadataRequest; class ListNotebookSessionsRequest; class ListPreparedStatementsRequest; class ListQueryExecutionsRequest; class ListSessionsRequest; class ListTableMetadataRequest; class ListTagsForResourceRequest; class ListWorkGroupsRequest; class PutCapacityAssignmentConfigurationRequest; class StartCalculationExecutionRequest; class StartQueryExecutionRequest; class StartSessionRequest; class StopCalculationExecutionRequest; class StopQueryExecutionRequest; class TagResourceRequest; class TerminateSessionRequest; class UntagResourceRequest; class UpdateCapacityReservationRequest; class UpdateDataCatalogRequest; class UpdateNamedQueryRequest; class UpdateNotebookRequest; class UpdateNotebookMetadataRequest; class UpdatePreparedStatementRequest; class UpdateWorkGroupRequest; /* End of service model forward declarations required in AthenaClient header */ /* Service model Outcome class definitions */ typedef Aws::Utils::Outcome BatchGetNamedQueryOutcome; typedef Aws::Utils::Outcome BatchGetPreparedStatementOutcome; typedef Aws::Utils::Outcome BatchGetQueryExecutionOutcome; typedef Aws::Utils::Outcome CancelCapacityReservationOutcome; typedef Aws::Utils::Outcome CreateCapacityReservationOutcome; typedef Aws::Utils::Outcome CreateDataCatalogOutcome; typedef Aws::Utils::Outcome CreateNamedQueryOutcome; typedef Aws::Utils::Outcome CreateNotebookOutcome; typedef Aws::Utils::Outcome CreatePreparedStatementOutcome; typedef Aws::Utils::Outcome CreatePresignedNotebookUrlOutcome; typedef Aws::Utils::Outcome CreateWorkGroupOutcome; typedef Aws::Utils::Outcome DeleteCapacityReservationOutcome; typedef Aws::Utils::Outcome DeleteDataCatalogOutcome; typedef Aws::Utils::Outcome DeleteNamedQueryOutcome; typedef Aws::Utils::Outcome DeleteNotebookOutcome; typedef Aws::Utils::Outcome DeletePreparedStatementOutcome; typedef Aws::Utils::Outcome DeleteWorkGroupOutcome; typedef Aws::Utils::Outcome ExportNotebookOutcome; typedef Aws::Utils::Outcome GetCalculationExecutionOutcome; typedef Aws::Utils::Outcome GetCalculationExecutionCodeOutcome; typedef Aws::Utils::Outcome GetCalculationExecutionStatusOutcome; typedef Aws::Utils::Outcome GetCapacityAssignmentConfigurationOutcome; typedef Aws::Utils::Outcome GetCapacityReservationOutcome; typedef Aws::Utils::Outcome GetDataCatalogOutcome; typedef Aws::Utils::Outcome GetDatabaseOutcome; typedef Aws::Utils::Outcome GetNamedQueryOutcome; typedef Aws::Utils::Outcome GetNotebookMetadataOutcome; typedef Aws::Utils::Outcome GetPreparedStatementOutcome; typedef Aws::Utils::Outcome GetQueryExecutionOutcome; typedef Aws::Utils::Outcome GetQueryResultsOutcome; typedef Aws::Utils::Outcome GetQueryRuntimeStatisticsOutcome; typedef Aws::Utils::Outcome GetSessionOutcome; typedef Aws::Utils::Outcome GetSessionStatusOutcome; typedef Aws::Utils::Outcome GetTableMetadataOutcome; typedef Aws::Utils::Outcome GetWorkGroupOutcome; typedef Aws::Utils::Outcome ImportNotebookOutcome; typedef Aws::Utils::Outcome ListApplicationDPUSizesOutcome; typedef Aws::Utils::Outcome ListCalculationExecutionsOutcome; typedef Aws::Utils::Outcome ListCapacityReservationsOutcome; typedef Aws::Utils::Outcome ListDataCatalogsOutcome; typedef Aws::Utils::Outcome ListDatabasesOutcome; typedef Aws::Utils::Outcome ListEngineVersionsOutcome; typedef Aws::Utils::Outcome ListExecutorsOutcome; typedef Aws::Utils::Outcome ListNamedQueriesOutcome; typedef Aws::Utils::Outcome ListNotebookMetadataOutcome; typedef Aws::Utils::Outcome ListNotebookSessionsOutcome; typedef Aws::Utils::Outcome ListPreparedStatementsOutcome; typedef Aws::Utils::Outcome ListQueryExecutionsOutcome; typedef Aws::Utils::Outcome ListSessionsOutcome; typedef Aws::Utils::Outcome ListTableMetadataOutcome; typedef Aws::Utils::Outcome ListTagsForResourceOutcome; typedef Aws::Utils::Outcome ListWorkGroupsOutcome; typedef Aws::Utils::Outcome PutCapacityAssignmentConfigurationOutcome; typedef Aws::Utils::Outcome StartCalculationExecutionOutcome; typedef Aws::Utils::Outcome StartQueryExecutionOutcome; typedef Aws::Utils::Outcome StartSessionOutcome; typedef Aws::Utils::Outcome StopCalculationExecutionOutcome; typedef Aws::Utils::Outcome StopQueryExecutionOutcome; typedef Aws::Utils::Outcome TagResourceOutcome; typedef Aws::Utils::Outcome TerminateSessionOutcome; typedef Aws::Utils::Outcome UntagResourceOutcome; typedef Aws::Utils::Outcome UpdateCapacityReservationOutcome; typedef Aws::Utils::Outcome UpdateDataCatalogOutcome; typedef Aws::Utils::Outcome UpdateNamedQueryOutcome; typedef Aws::Utils::Outcome UpdateNotebookOutcome; typedef Aws::Utils::Outcome UpdateNotebookMetadataOutcome; typedef Aws::Utils::Outcome UpdatePreparedStatementOutcome; typedef Aws::Utils::Outcome UpdateWorkGroupOutcome; /* End of service model Outcome class definitions */ /* Service model Outcome callable definitions */ typedef std::future BatchGetNamedQueryOutcomeCallable; typedef std::future BatchGetPreparedStatementOutcomeCallable; typedef std::future BatchGetQueryExecutionOutcomeCallable; typedef std::future CancelCapacityReservationOutcomeCallable; typedef std::future CreateCapacityReservationOutcomeCallable; typedef std::future CreateDataCatalogOutcomeCallable; typedef std::future CreateNamedQueryOutcomeCallable; typedef std::future CreateNotebookOutcomeCallable; typedef std::future CreatePreparedStatementOutcomeCallable; typedef std::future CreatePresignedNotebookUrlOutcomeCallable; typedef std::future CreateWorkGroupOutcomeCallable; typedef std::future DeleteCapacityReservationOutcomeCallable; typedef std::future DeleteDataCatalogOutcomeCallable; typedef std::future DeleteNamedQueryOutcomeCallable; typedef std::future DeleteNotebookOutcomeCallable; typedef std::future DeletePreparedStatementOutcomeCallable; typedef std::future DeleteWorkGroupOutcomeCallable; typedef std::future ExportNotebookOutcomeCallable; typedef std::future GetCalculationExecutionOutcomeCallable; typedef std::future GetCalculationExecutionCodeOutcomeCallable; typedef std::future GetCalculationExecutionStatusOutcomeCallable; typedef std::future GetCapacityAssignmentConfigurationOutcomeCallable; typedef std::future GetCapacityReservationOutcomeCallable; typedef std::future GetDataCatalogOutcomeCallable; typedef std::future GetDatabaseOutcomeCallable; typedef std::future GetNamedQueryOutcomeCallable; typedef std::future GetNotebookMetadataOutcomeCallable; typedef std::future GetPreparedStatementOutcomeCallable; typedef std::future GetQueryExecutionOutcomeCallable; typedef std::future GetQueryResultsOutcomeCallable; typedef std::future GetQueryRuntimeStatisticsOutcomeCallable; typedef std::future GetSessionOutcomeCallable; typedef std::future GetSessionStatusOutcomeCallable; typedef std::future GetTableMetadataOutcomeCallable; typedef std::future GetWorkGroupOutcomeCallable; typedef std::future ImportNotebookOutcomeCallable; typedef std::future ListApplicationDPUSizesOutcomeCallable; typedef std::future ListCalculationExecutionsOutcomeCallable; typedef std::future ListCapacityReservationsOutcomeCallable; typedef std::future ListDataCatalogsOutcomeCallable; typedef std::future ListDatabasesOutcomeCallable; typedef std::future ListEngineVersionsOutcomeCallable; typedef std::future ListExecutorsOutcomeCallable; typedef std::future ListNamedQueriesOutcomeCallable; typedef std::future ListNotebookMetadataOutcomeCallable; typedef std::future ListNotebookSessionsOutcomeCallable; typedef std::future ListPreparedStatementsOutcomeCallable; typedef std::future ListQueryExecutionsOutcomeCallable; typedef std::future ListSessionsOutcomeCallable; typedef std::future ListTableMetadataOutcomeCallable; typedef std::future ListTagsForResourceOutcomeCallable; typedef std::future ListWorkGroupsOutcomeCallable; typedef std::future PutCapacityAssignmentConfigurationOutcomeCallable; typedef std::future StartCalculationExecutionOutcomeCallable; typedef std::future StartQueryExecutionOutcomeCallable; typedef std::future StartSessionOutcomeCallable; typedef std::future StopCalculationExecutionOutcomeCallable; typedef std::future StopQueryExecutionOutcomeCallable; typedef std::future TagResourceOutcomeCallable; typedef std::future TerminateSessionOutcomeCallable; typedef std::future UntagResourceOutcomeCallable; typedef std::future UpdateCapacityReservationOutcomeCallable; typedef std::future UpdateDataCatalogOutcomeCallable; typedef std::future UpdateNamedQueryOutcomeCallable; typedef std::future UpdateNotebookOutcomeCallable; typedef std::future UpdateNotebookMetadataOutcomeCallable; typedef std::future UpdatePreparedStatementOutcomeCallable; typedef std::future UpdateWorkGroupOutcomeCallable; /* End of service model Outcome callable definitions */ } // namespace Model class AthenaClient; /* Service model async handlers definitions */ typedef std::function&) > BatchGetNamedQueryResponseReceivedHandler; typedef std::function&) > BatchGetPreparedStatementResponseReceivedHandler; typedef std::function&) > BatchGetQueryExecutionResponseReceivedHandler; typedef std::function&) > CancelCapacityReservationResponseReceivedHandler; typedef std::function&) > CreateCapacityReservationResponseReceivedHandler; typedef std::function&) > CreateDataCatalogResponseReceivedHandler; typedef std::function&) > CreateNamedQueryResponseReceivedHandler; typedef std::function&) > CreateNotebookResponseReceivedHandler; typedef std::function&) > CreatePreparedStatementResponseReceivedHandler; typedef std::function&) > CreatePresignedNotebookUrlResponseReceivedHandler; typedef std::function&) > CreateWorkGroupResponseReceivedHandler; typedef std::function&) > DeleteCapacityReservationResponseReceivedHandler; typedef std::function&) > DeleteDataCatalogResponseReceivedHandler; typedef std::function&) > DeleteNamedQueryResponseReceivedHandler; typedef std::function&) > DeleteNotebookResponseReceivedHandler; typedef std::function&) > DeletePreparedStatementResponseReceivedHandler; typedef std::function&) > DeleteWorkGroupResponseReceivedHandler; typedef std::function&) > ExportNotebookResponseReceivedHandler; typedef std::function&) > GetCalculationExecutionResponseReceivedHandler; typedef std::function&) > GetCalculationExecutionCodeResponseReceivedHandler; typedef std::function&) > GetCalculationExecutionStatusResponseReceivedHandler; typedef std::function&) > GetCapacityAssignmentConfigurationResponseReceivedHandler; typedef std::function&) > GetCapacityReservationResponseReceivedHandler; typedef std::function&) > GetDataCatalogResponseReceivedHandler; typedef std::function&) > GetDatabaseResponseReceivedHandler; typedef std::function&) > GetNamedQueryResponseReceivedHandler; typedef std::function&) > GetNotebookMetadataResponseReceivedHandler; typedef std::function&) > GetPreparedStatementResponseReceivedHandler; typedef std::function&) > GetQueryExecutionResponseReceivedHandler; typedef std::function&) > GetQueryResultsResponseReceivedHandler; typedef std::function&) > GetQueryRuntimeStatisticsResponseReceivedHandler; typedef std::function&) > GetSessionResponseReceivedHandler; typedef std::function&) > GetSessionStatusResponseReceivedHandler; typedef std::function&) > GetTableMetadataResponseReceivedHandler; typedef std::function&) > GetWorkGroupResponseReceivedHandler; typedef std::function&) > ImportNotebookResponseReceivedHandler; typedef std::function&) > ListApplicationDPUSizesResponseReceivedHandler; typedef std::function&) > ListCalculationExecutionsResponseReceivedHandler; typedef std::function&) > ListCapacityReservationsResponseReceivedHandler; typedef std::function&) > ListDataCatalogsResponseReceivedHandler; typedef std::function&) > ListDatabasesResponseReceivedHandler; typedef std::function&) > ListEngineVersionsResponseReceivedHandler; typedef std::function&) > ListExecutorsResponseReceivedHandler; typedef std::function&) > ListNamedQueriesResponseReceivedHandler; typedef std::function&) > ListNotebookMetadataResponseReceivedHandler; typedef std::function&) > ListNotebookSessionsResponseReceivedHandler; typedef std::function&) > ListPreparedStatementsResponseReceivedHandler; typedef std::function&) > ListQueryExecutionsResponseReceivedHandler; typedef std::function&) > ListSessionsResponseReceivedHandler; typedef std::function&) > ListTableMetadataResponseReceivedHandler; typedef std::function&) > ListTagsForResourceResponseReceivedHandler; typedef std::function&) > ListWorkGroupsResponseReceivedHandler; typedef std::function&) > PutCapacityAssignmentConfigurationResponseReceivedHandler; typedef std::function&) > StartCalculationExecutionResponseReceivedHandler; typedef std::function&) > StartQueryExecutionResponseReceivedHandler; typedef std::function&) > StartSessionResponseReceivedHandler; typedef std::function&) > StopCalculationExecutionResponseReceivedHandler; typedef std::function&) > StopQueryExecutionResponseReceivedHandler; typedef std::function&) > TagResourceResponseReceivedHandler; typedef std::function&) > TerminateSessionResponseReceivedHandler; typedef std::function&) > UntagResourceResponseReceivedHandler; typedef std::function&) > UpdateCapacityReservationResponseReceivedHandler; typedef std::function&) > UpdateDataCatalogResponseReceivedHandler; typedef std::function&) > UpdateNamedQueryResponseReceivedHandler; typedef std::function&) > UpdateNotebookResponseReceivedHandler; typedef std::function&) > UpdateNotebookMetadataResponseReceivedHandler; typedef std::function&) > UpdatePreparedStatementResponseReceivedHandler; typedef std::function&) > UpdateWorkGroupResponseReceivedHandler; /* End of service model async handlers definitions */ } // namespace Athena } // namespace Aws