/* * Copyright 2012-2017 Amazon.com, Inc. or its affiliates. All Rights Reserved. * * Licensed under the Apache License, Version 2.0 (the "License"). You may not use this file except in compliance with * the License. A copy of the License is located at * * http://aws.amazon.com/apache2.0 * * or in the "license" file accompanying this file. This file is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR * CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions * and limitations under the License. */ package com.amazonaws.services.athena; import javax.annotation.Generated; import com.amazonaws.services.athena.model.*; /** * Interface for accessing Amazon Athena asynchronously. Each asynchronous method will return a Java Future object * representing the asynchronous operation; overloads which accept an {@code AsyncHandler} can be used to receive * notification when an asynchronous operation completes. * <p> * <b>Note:</b> Do not directly implement this interface, new methods are added to it regularly. Extend from * {@link com.amazonaws.services.athena.AbstractAmazonAthenaAsync} instead. * </p> * <p> * <p> * Amazon Athena is an interactive query service that lets you use standard SQL to analyze data directly in Amazon S3. * You can point Athena at your data in Amazon S3 and run ad-hoc queries and get results in seconds. Athena is * serverless, so there is no infrastructure to set up or manage. You pay only for the queries you run. Athena scales * automatically—executing queries in parallel—so results are fast, even with large datasets and complex queries. For * more information, see <a href="http://docs.aws.amazon.com/athena/latest/ug/what-is.html">What is Amazon Athena</a> in * the <i>Amazon Athena User Guide</i>. * </p> * <p> * For code samples using the AWS SDK for Java, see <a * href="http://docs.aws.amazon.com/athena/latest/ug/code-samples.html">Examples and Code Samples</a> in the <i>Amazon * Athena User Guide</i>. * </p> */ @Generated("com.amazonaws:aws-java-sdk-code-generator") public interface AmazonAthenaAsync extends AmazonAthena { /** * <p> * Returns the details of a single named query or a list of up to 50 queries, which you provide as an array of query * ID strings. Use <a>ListNamedQueries</a> to get the list of named query IDs. If information could not be retrieved * for a submitted query ID, information about the query ID submitted is listed under * <a>UnprocessedNamedQueryId</a>. Named queries are different from executed queries. Use * <a>BatchGetQueryExecution</a> to get details about each unique query execution, and <a>ListQueryExecutions</a> to * get a list of query execution IDs. * </p> * * @param batchGetNamedQueryRequest * @return A Java Future containing the result of the BatchGetNamedQuery operation returned by the service. * @sample AmazonAthenaAsync.BatchGetNamedQuery * @see <a href="http://docs.aws.amazon.com/goto/WebAPI/athena-2017-05-18/BatchGetNamedQuery" target="_top">AWS API * Documentation</a> */ java.util.concurrent.Future<BatchGetNamedQueryResult> batchGetNamedQueryAsync(BatchGetNamedQueryRequest batchGetNamedQueryRequest); /** * <p> * Returns the details of a single named query or a list of up to 50 queries, which you provide as an array of query * ID strings. Use <a>ListNamedQueries</a> to get the list of named query IDs. If information could not be retrieved * for a submitted query ID, information about the query ID submitted is listed under * <a>UnprocessedNamedQueryId</a>. Named queries are different from executed queries. Use * <a>BatchGetQueryExecution</a> to get details about each unique query execution, and <a>ListQueryExecutions</a> to * get a list of query execution IDs. * </p> * * @param batchGetNamedQueryRequest * @param asyncHandler * Asynchronous callback handler for events in the lifecycle of the request. Users can provide an * implementation of the callback methods in this interface to receive notification of successful or * unsuccessful completion of the operation. * @return A Java Future containing the result of the BatchGetNamedQuery operation returned by the service. * @sample AmazonAthenaAsyncHandler.BatchGetNamedQuery * @see <a href="http://docs.aws.amazon.com/goto/WebAPI/athena-2017-05-18/BatchGetNamedQuery" target="_top">AWS API * Documentation</a> */ java.util.concurrent.Future<BatchGetNamedQueryResult> batchGetNamedQueryAsync(BatchGetNamedQueryRequest batchGetNamedQueryRequest, com.amazonaws.handlers.AsyncHandler<BatchGetNamedQueryRequest, BatchGetNamedQueryResult> asyncHandler); /** * <p> * Returns the details of a single query execution or a list of up to 50 query executions, which you provide as an * array of query execution ID strings. To get a list of query execution IDs, use <a>ListQueryExecutions</a>. Query * executions are different from named (saved) queries. Use <a>BatchGetNamedQuery</a> to get details about named * queries. * </p> * * @param batchGetQueryExecutionRequest * @return A Java Future containing the result of the BatchGetQueryExecution operation returned by the service. * @sample AmazonAthenaAsync.BatchGetQueryExecution * @see <a href="http://docs.aws.amazon.com/goto/WebAPI/athena-2017-05-18/BatchGetQueryExecution" target="_top">AWS * API Documentation</a> */ java.util.concurrent.Future<BatchGetQueryExecutionResult> batchGetQueryExecutionAsync(BatchGetQueryExecutionRequest batchGetQueryExecutionRequest); /** * <p> * Returns the details of a single query execution or a list of up to 50 query executions, which you provide as an * array of query execution ID strings. To get a list of query execution IDs, use <a>ListQueryExecutions</a>. Query * executions are different from named (saved) queries. Use <a>BatchGetNamedQuery</a> to get details about named * queries. * </p> * * @param batchGetQueryExecutionRequest * @param asyncHandler * Asynchronous callback handler for events in the lifecycle of the request. Users can provide an * implementation of the callback methods in this interface to receive notification of successful or * unsuccessful completion of the operation. * @return A Java Future containing the result of the BatchGetQueryExecution operation returned by the service. * @sample AmazonAthenaAsyncHandler.BatchGetQueryExecution * @see <a href="http://docs.aws.amazon.com/goto/WebAPI/athena-2017-05-18/BatchGetQueryExecution" target="_top">AWS * API Documentation</a> */ java.util.concurrent.Future<BatchGetQueryExecutionResult> batchGetQueryExecutionAsync(BatchGetQueryExecutionRequest batchGetQueryExecutionRequest, com.amazonaws.handlers.AsyncHandler<BatchGetQueryExecutionRequest, BatchGetQueryExecutionResult> asyncHandler); /** * <p> * Creates a named query. * </p> * <p> * For code samples using the AWS SDK for Java, see <a * href="http://docs.aws.amazon.com/athena/latest/ug/code-samples.html">Examples and Code Samples</a> in the * <i>Amazon Athena User Guide</i>. * </p> * * @param createNamedQueryRequest * @return A Java Future containing the result of the CreateNamedQuery operation returned by the service. * @sample AmazonAthenaAsync.CreateNamedQuery * @see <a href="http://docs.aws.amazon.com/goto/WebAPI/athena-2017-05-18/CreateNamedQuery" target="_top">AWS API * Documentation</a> */ java.util.concurrent.Future<CreateNamedQueryResult> createNamedQueryAsync(CreateNamedQueryRequest createNamedQueryRequest); /** * <p> * Creates a named query. * </p> * <p> * For code samples using the AWS SDK for Java, see <a * href="http://docs.aws.amazon.com/athena/latest/ug/code-samples.html">Examples and Code Samples</a> in the * <i>Amazon Athena User Guide</i>. * </p> * * @param createNamedQueryRequest * @param asyncHandler * Asynchronous callback handler for events in the lifecycle of the request. Users can provide an * implementation of the callback methods in this interface to receive notification of successful or * unsuccessful completion of the operation. * @return A Java Future containing the result of the CreateNamedQuery operation returned by the service. * @sample AmazonAthenaAsyncHandler.CreateNamedQuery * @see <a href="http://docs.aws.amazon.com/goto/WebAPI/athena-2017-05-18/CreateNamedQuery" target="_top">AWS API * Documentation</a> */ java.util.concurrent.Future<CreateNamedQueryResult> createNamedQueryAsync(CreateNamedQueryRequest createNamedQueryRequest, com.amazonaws.handlers.AsyncHandler<CreateNamedQueryRequest, CreateNamedQueryResult> asyncHandler); /** * <p> * Deletes a named query. * </p> * <p> * For code samples using the AWS SDK for Java, see <a * href="http://docs.aws.amazon.com/athena/latest/ug/code-samples.html">Examples and Code Samples</a> in the * <i>Amazon Athena User Guide</i>. * </p> * * @param deleteNamedQueryRequest * @return A Java Future containing the result of the DeleteNamedQuery operation returned by the service. * @sample AmazonAthenaAsync.DeleteNamedQuery * @see <a href="http://docs.aws.amazon.com/goto/WebAPI/athena-2017-05-18/DeleteNamedQuery" target="_top">AWS API * Documentation</a> */ java.util.concurrent.Future<DeleteNamedQueryResult> deleteNamedQueryAsync(DeleteNamedQueryRequest deleteNamedQueryRequest); /** * <p> * Deletes a named query. * </p> * <p> * For code samples using the AWS SDK for Java, see <a * href="http://docs.aws.amazon.com/athena/latest/ug/code-samples.html">Examples and Code Samples</a> in the * <i>Amazon Athena User Guide</i>. * </p> * * @param deleteNamedQueryRequest * @param asyncHandler * Asynchronous callback handler for events in the lifecycle of the request. Users can provide an * implementation of the callback methods in this interface to receive notification of successful or * unsuccessful completion of the operation. * @return A Java Future containing the result of the DeleteNamedQuery operation returned by the service. * @sample AmazonAthenaAsyncHandler.DeleteNamedQuery * @see <a href="http://docs.aws.amazon.com/goto/WebAPI/athena-2017-05-18/DeleteNamedQuery" target="_top">AWS API * Documentation</a> */ java.util.concurrent.Future<DeleteNamedQueryResult> deleteNamedQueryAsync(DeleteNamedQueryRequest deleteNamedQueryRequest, com.amazonaws.handlers.AsyncHandler<DeleteNamedQueryRequest, DeleteNamedQueryResult> asyncHandler); /** * <p> * Returns information about a single query. * </p> * * @param getNamedQueryRequest * @return A Java Future containing the result of the GetNamedQuery operation returned by the service. * @sample AmazonAthenaAsync.GetNamedQuery * @see <a href="http://docs.aws.amazon.com/goto/WebAPI/athena-2017-05-18/GetNamedQuery" target="_top">AWS API * Documentation</a> */ java.util.concurrent.Future<GetNamedQueryResult> getNamedQueryAsync(GetNamedQueryRequest getNamedQueryRequest); /** * <p> * Returns information about a single query. * </p> * * @param getNamedQueryRequest * @param asyncHandler * Asynchronous callback handler for events in the lifecycle of the request. Users can provide an * implementation of the callback methods in this interface to receive notification of successful or * unsuccessful completion of the operation. * @return A Java Future containing the result of the GetNamedQuery operation returned by the service. * @sample AmazonAthenaAsyncHandler.GetNamedQuery * @see <a href="http://docs.aws.amazon.com/goto/WebAPI/athena-2017-05-18/GetNamedQuery" target="_top">AWS API * Documentation</a> */ java.util.concurrent.Future<GetNamedQueryResult> getNamedQueryAsync(GetNamedQueryRequest getNamedQueryRequest, com.amazonaws.handlers.AsyncHandler<GetNamedQueryRequest, GetNamedQueryResult> asyncHandler); /** * <p> * Returns information about a single execution of a query. Each time a query executes, information about the query * execution is saved with a unique ID. * </p> * * @param getQueryExecutionRequest * @return A Java Future containing the result of the GetQueryExecution operation returned by the service. * @sample AmazonAthenaAsync.GetQueryExecution * @see <a href="http://docs.aws.amazon.com/goto/WebAPI/athena-2017-05-18/GetQueryExecution" target="_top">AWS API * Documentation</a> */ java.util.concurrent.Future<GetQueryExecutionResult> getQueryExecutionAsync(GetQueryExecutionRequest getQueryExecutionRequest); /** * <p> * Returns information about a single execution of a query. Each time a query executes, information about the query * execution is saved with a unique ID. * </p> * * @param getQueryExecutionRequest * @param asyncHandler * Asynchronous callback handler for events in the lifecycle of the request. Users can provide an * implementation of the callback methods in this interface to receive notification of successful or * unsuccessful completion of the operation. * @return A Java Future containing the result of the GetQueryExecution operation returned by the service. * @sample AmazonAthenaAsyncHandler.GetQueryExecution * @see <a href="http://docs.aws.amazon.com/goto/WebAPI/athena-2017-05-18/GetQueryExecution" target="_top">AWS API * Documentation</a> */ java.util.concurrent.Future<GetQueryExecutionResult> getQueryExecutionAsync(GetQueryExecutionRequest getQueryExecutionRequest, com.amazonaws.handlers.AsyncHandler<GetQueryExecutionRequest, GetQueryExecutionResult> asyncHandler); /** * <p> * Returns the results of a single query execution specified by <code>QueryExecutionId</code>. This request does not * execute the query but returns results. Use <a>StartQueryExecution</a> to run a query. * </p> * * @param getQueryResultsRequest * @return A Java Future containing the result of the GetQueryResults operation returned by the service. * @sample AmazonAthenaAsync.GetQueryResults * @see <a href="http://docs.aws.amazon.com/goto/WebAPI/athena-2017-05-18/GetQueryResults" target="_top">AWS API * Documentation</a> */ java.util.concurrent.Future<GetQueryResultsResult> getQueryResultsAsync(GetQueryResultsRequest getQueryResultsRequest); /** * <p> * Returns the results of a single query execution specified by <code>QueryExecutionId</code>. This request does not * execute the query but returns results. Use <a>StartQueryExecution</a> to run a query. * </p> * * @param getQueryResultsRequest * @param asyncHandler * Asynchronous callback handler for events in the lifecycle of the request. Users can provide an * implementation of the callback methods in this interface to receive notification of successful or * unsuccessful completion of the operation. * @return A Java Future containing the result of the GetQueryResults operation returned by the service. * @sample AmazonAthenaAsyncHandler.GetQueryResults * @see <a href="http://docs.aws.amazon.com/goto/WebAPI/athena-2017-05-18/GetQueryResults" target="_top">AWS API * Documentation</a> */ java.util.concurrent.Future<GetQueryResultsResult> getQueryResultsAsync(GetQueryResultsRequest getQueryResultsRequest, com.amazonaws.handlers.AsyncHandler<GetQueryResultsRequest, GetQueryResultsResult> asyncHandler); /** * <p> * Provides a list of all available query IDs. * </p> * <p> * For code samples using the AWS SDK for Java, see <a * href="http://docs.aws.amazon.com/athena/latest/ug/code-samples.html">Examples and Code Samples</a> in the * <i>Amazon Athena User Guide</i>. * </p> * * @param listNamedQueriesRequest * @return A Java Future containing the result of the ListNamedQueries operation returned by the service. * @sample AmazonAthenaAsync.ListNamedQueries * @see <a href="http://docs.aws.amazon.com/goto/WebAPI/athena-2017-05-18/ListNamedQueries" target="_top">AWS API * Documentation</a> */ java.util.concurrent.Future<ListNamedQueriesResult> listNamedQueriesAsync(ListNamedQueriesRequest listNamedQueriesRequest); /** * <p> * Provides a list of all available query IDs. * </p> * <p> * For code samples using the AWS SDK for Java, see <a * href="http://docs.aws.amazon.com/athena/latest/ug/code-samples.html">Examples and Code Samples</a> in the * <i>Amazon Athena User Guide</i>. * </p> * * @param listNamedQueriesRequest * @param asyncHandler * Asynchronous callback handler for events in the lifecycle of the request. Users can provide an * implementation of the callback methods in this interface to receive notification of successful or * unsuccessful completion of the operation. * @return A Java Future containing the result of the ListNamedQueries operation returned by the service. * @sample AmazonAthenaAsyncHandler.ListNamedQueries * @see <a href="http://docs.aws.amazon.com/goto/WebAPI/athena-2017-05-18/ListNamedQueries" target="_top">AWS API * Documentation</a> */ java.util.concurrent.Future<ListNamedQueriesResult> listNamedQueriesAsync(ListNamedQueriesRequest listNamedQueriesRequest, com.amazonaws.handlers.AsyncHandler<ListNamedQueriesRequest, ListNamedQueriesResult> asyncHandler); /** * <p> * Provides a list of all available query execution IDs. * </p> * <p> * For code samples using the AWS SDK for Java, see <a * href="http://docs.aws.amazon.com/athena/latest/ug/code-samples.html">Examples and Code Samples</a> in the * <i>Amazon Athena User Guide</i>. * </p> * * @param listQueryExecutionsRequest * @return A Java Future containing the result of the ListQueryExecutions operation returned by the service. * @sample AmazonAthenaAsync.ListQueryExecutions * @see <a href="http://docs.aws.amazon.com/goto/WebAPI/athena-2017-05-18/ListQueryExecutions" target="_top">AWS API * Documentation</a> */ java.util.concurrent.Future<ListQueryExecutionsResult> listQueryExecutionsAsync(ListQueryExecutionsRequest listQueryExecutionsRequest); /** * <p> * Provides a list of all available query execution IDs. * </p> * <p> * For code samples using the AWS SDK for Java, see <a * href="http://docs.aws.amazon.com/athena/latest/ug/code-samples.html">Examples and Code Samples</a> in the * <i>Amazon Athena User Guide</i>. * </p> * * @param listQueryExecutionsRequest * @param asyncHandler * Asynchronous callback handler for events in the lifecycle of the request. Users can provide an * implementation of the callback methods in this interface to receive notification of successful or * unsuccessful completion of the operation. * @return A Java Future containing the result of the ListQueryExecutions operation returned by the service. * @sample AmazonAthenaAsyncHandler.ListQueryExecutions * @see <a href="http://docs.aws.amazon.com/goto/WebAPI/athena-2017-05-18/ListQueryExecutions" target="_top">AWS API * Documentation</a> */ java.util.concurrent.Future<ListQueryExecutionsResult> listQueryExecutionsAsync(ListQueryExecutionsRequest listQueryExecutionsRequest, com.amazonaws.handlers.AsyncHandler<ListQueryExecutionsRequest, ListQueryExecutionsResult> asyncHandler); /** * <p> * Runs (executes) the SQL query statements contained in the <code>Query</code> string. * </p> * <p> * For code samples using the AWS SDK for Java, see <a * href="http://docs.aws.amazon.com/athena/latest/ug/code-samples.html">Examples and Code Samples</a> in the * <i>Amazon Athena User Guide</i>. * </p> * * @param startQueryExecutionRequest * @return A Java Future containing the result of the StartQueryExecution operation returned by the service. * @sample AmazonAthenaAsync.StartQueryExecution * @see <a href="http://docs.aws.amazon.com/goto/WebAPI/athena-2017-05-18/StartQueryExecution" target="_top">AWS API * Documentation</a> */ java.util.concurrent.Future<StartQueryExecutionResult> startQueryExecutionAsync(StartQueryExecutionRequest startQueryExecutionRequest); /** * <p> * Runs (executes) the SQL query statements contained in the <code>Query</code> string. * </p> * <p> * For code samples using the AWS SDK for Java, see <a * href="http://docs.aws.amazon.com/athena/latest/ug/code-samples.html">Examples and Code Samples</a> in the * <i>Amazon Athena User Guide</i>. * </p> * * @param startQueryExecutionRequest * @param asyncHandler * Asynchronous callback handler for events in the lifecycle of the request. Users can provide an * implementation of the callback methods in this interface to receive notification of successful or * unsuccessful completion of the operation. * @return A Java Future containing the result of the StartQueryExecution operation returned by the service. * @sample AmazonAthenaAsyncHandler.StartQueryExecution * @see <a href="http://docs.aws.amazon.com/goto/WebAPI/athena-2017-05-18/StartQueryExecution" target="_top">AWS API * Documentation</a> */ java.util.concurrent.Future<StartQueryExecutionResult> startQueryExecutionAsync(StartQueryExecutionRequest startQueryExecutionRequest, com.amazonaws.handlers.AsyncHandler<StartQueryExecutionRequest, StartQueryExecutionResult> asyncHandler); /** * <p> * Stops a query execution. * </p> * <p> * For code samples using the AWS SDK for Java, see <a * href="http://docs.aws.amazon.com/athena/latest/ug/code-samples.html">Examples and Code Samples</a> in the * <i>Amazon Athena User Guide</i>. * </p> * * @param stopQueryExecutionRequest * @return A Java Future containing the result of the StopQueryExecution operation returned by the service. * @sample AmazonAthenaAsync.StopQueryExecution * @see <a href="http://docs.aws.amazon.com/goto/WebAPI/athena-2017-05-18/StopQueryExecution" target="_top">AWS API * Documentation</a> */ java.util.concurrent.Future<StopQueryExecutionResult> stopQueryExecutionAsync(StopQueryExecutionRequest stopQueryExecutionRequest); /** * <p> * Stops a query execution. * </p> * <p> * For code samples using the AWS SDK for Java, see <a * href="http://docs.aws.amazon.com/athena/latest/ug/code-samples.html">Examples and Code Samples</a> in the * <i>Amazon Athena User Guide</i>. * </p> * * @param stopQueryExecutionRequest * @param asyncHandler * Asynchronous callback handler for events in the lifecycle of the request. Users can provide an * implementation of the callback methods in this interface to receive notification of successful or * unsuccessful completion of the operation. * @return A Java Future containing the result of the StopQueryExecution operation returned by the service. * @sample AmazonAthenaAsyncHandler.StopQueryExecution * @see <a href="http://docs.aws.amazon.com/goto/WebAPI/athena-2017-05-18/StopQueryExecution" target="_top">AWS API * Documentation</a> */ java.util.concurrent.Future<StopQueryExecutionResult> stopQueryExecutionAsync(StopQueryExecutionRequest stopQueryExecutionRequest, com.amazonaws.handlers.AsyncHandler<StopQueryExecutionRequest, StopQueryExecutionResult> asyncHandler); }