/* * Copyright 2018-2023 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.rekognition; import static java.util.concurrent.Executors.newFixedThreadPool; import javax.annotation.Generated; import com.amazonaws.services.rekognition.model.*; import com.amazonaws.client.AwsAsyncClientParams; import com.amazonaws.annotation.ThreadSafe; import com.amazonaws.ClientConfiguration; import com.amazonaws.auth.AWSCredentials; import com.amazonaws.auth.AWSCredentialsProvider; import java.util.concurrent.ExecutorService; import com.amazonaws.auth.DefaultAWSCredentialsProviderChain; /** * Client for accessing Amazon Rekognition 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. *

*

* This is the API Reference for Amazon * Rekognition Image, Amazon * Rekognition Custom Labels, Amazon * Rekognition Stored Video, Amazon * Rekognition Streaming Video. It provides descriptions of actions, data types, common parameters, and common * errors. *

*

* Amazon Rekognition Image *

* *

* Amazon Rekognition Custom Labels *

* *

* Amazon Rekognition Video Stored Video *

* *

* Amazon Rekognition Video Streaming Video *

* */ @ThreadSafe @Generated("com.amazonaws:aws-java-sdk-code-generator") public class AmazonRekognitionAsyncClient extends AmazonRekognitionClient implements AmazonRekognitionAsync { private static final int DEFAULT_THREAD_POOL_SIZE = 50; private final java.util.concurrent.ExecutorService executorService; /** * Constructs a new asynchronous client to invoke service methods on Amazon Rekognition. A credentials provider * chain will be used that searches for credentials in this order: * *

* Asynchronous methods are delegated to a fixed-size thread pool containing 50 threads (to match the default * maximum number of concurrent connections to the service). * * @see com.amazonaws.auth.DefaultAWSCredentialsProviderChain * @see java.util.concurrent.Executors#newFixedThreadPool(int) * @deprecated use {@link AmazonRekognitionAsyncClientBuilder#defaultClient()} */ @Deprecated public AmazonRekognitionAsyncClient() { this(DefaultAWSCredentialsProviderChain.getInstance()); } /** * Constructs a new asynchronous client to invoke service methods on Amazon Rekognition. A credentials provider * chain will be used that searches for credentials in this order: *

*

* Asynchronous methods are delegated to a fixed-size thread pool containing a number of threads equal to the * maximum number of concurrent connections configured via {@code ClientConfiguration.getMaxConnections()}. * * @param clientConfiguration * The client configuration options controlling how this client connects to Amazon Rekognition (ex: proxy * settings, retry counts, etc). * * @see com.amazonaws.auth.DefaultAWSCredentialsProviderChain * @see java.util.concurrent.Executors#newFixedThreadPool(int) * @deprecated use {@link AmazonRekognitionAsyncClientBuilder#withClientConfiguration(ClientConfiguration)} */ @Deprecated public AmazonRekognitionAsyncClient(ClientConfiguration clientConfiguration) { this(DefaultAWSCredentialsProviderChain.getInstance(), clientConfiguration, newFixedThreadPool(clientConfiguration.getMaxConnections())); } /** * Constructs a new asynchronous client to invoke service methods on Amazon Rekognition using the specified AWS * account credentials. *

* Asynchronous methods are delegated to a fixed-size thread pool containing 50 threads (to match the default * maximum number of concurrent connections to the service). * * @param awsCredentials * The AWS credentials (access key ID and secret key) to use when authenticating with AWS services. * @see java.util.concurrent.Executors#newFixedThreadPool(int) * @deprecated use {@link AmazonRekognitionAsyncClientBuilder#withCredentials(AWSCredentialsProvider)} */ @Deprecated public AmazonRekognitionAsyncClient(AWSCredentials awsCredentials) { this(awsCredentials, newFixedThreadPool(DEFAULT_THREAD_POOL_SIZE)); } /** * Constructs a new asynchronous client to invoke service methods on Amazon Rekognition using the specified AWS * account credentials and executor service. Default client settings will be used. * * @param awsCredentials * The AWS credentials (access key ID and secret key) to use when authenticating with AWS services. * @param executorService * The executor service by which all asynchronous requests will be executed. * @deprecated use {@link AmazonRekognitionAsyncClientBuilder#withCredentials(AWSCredentialsProvider)} and * {@link AmazonRekognitionAsyncClientBuilder#withExecutorFactory(com.amazonaws.client.builder.ExecutorFactory)} */ @Deprecated public AmazonRekognitionAsyncClient(AWSCredentials awsCredentials, ExecutorService executorService) { this(awsCredentials, configFactory.getConfig(), executorService); } /** * Constructs a new asynchronous client to invoke service methods on Amazon Rekognition using the specified AWS * account credentials, executor service, and client configuration options. * * @param awsCredentials * The AWS credentials (access key ID and secret key) to use when authenticating with AWS services. * @param clientConfiguration * Client configuration options (ex: max retry limit, proxy settings, etc). * @param executorService * The executor service by which all asynchronous requests will be executed. * @deprecated use {@link AmazonRekognitionAsyncClientBuilder#withCredentials(AWSCredentialsProvider)} and * {@link AmazonRekognitionAsyncClientBuilder#withClientConfiguration(ClientConfiguration)} and * {@link AmazonRekognitionAsyncClientBuilder#withExecutorFactory(com.amazonaws.client.builder.ExecutorFactory)} */ @Deprecated public AmazonRekognitionAsyncClient(AWSCredentials awsCredentials, ClientConfiguration clientConfiguration, ExecutorService executorService) { super(awsCredentials, clientConfiguration); this.executorService = executorService; } /** * Constructs a new asynchronous client to invoke service methods on Amazon Rekognition using the specified AWS * account credentials provider. Default client settings will be used. *

* Asynchronous methods are delegated to a fixed-size thread pool containing 50 threads (to match the default * maximum number of concurrent connections to the service). * * @param awsCredentialsProvider * The AWS credentials provider which will provide credentials to authenticate requests with AWS services. * @see java.util.concurrent.Executors#newFixedThreadPool(int) * @deprecated use {@link AmazonRekognitionAsyncClientBuilder#withCredentials(AWSCredentialsProvider)} */ @Deprecated public AmazonRekognitionAsyncClient(AWSCredentialsProvider awsCredentialsProvider) { this(awsCredentialsProvider, newFixedThreadPool(DEFAULT_THREAD_POOL_SIZE)); } /** * Constructs a new asynchronous client to invoke service methods on Amazon Rekognition using the provided AWS * account credentials provider and client configuration options. *

* Asynchronous methods are delegated to a fixed-size thread pool containing a number of threads equal to the * maximum number of concurrent connections configured via {@code ClientConfiguration.getMaxConnections()}. * * @param awsCredentialsProvider * The AWS credentials provider which will provide credentials to authenticate requests with AWS services. * @param clientConfiguration * Client configuration options (ex: max retry limit, proxy settings, etc). * * @see com.amazonaws.auth.DefaultAWSCredentialsProviderChain * @see java.util.concurrent.Executors#newFixedThreadPool(int) * @deprecated use {@link AmazonRekognitionAsyncClientBuilder#withCredentials(AWSCredentialsProvider)} and * {@link AmazonRekognitionAsyncClientBuilder#withClientConfiguration(ClientConfiguration)} */ @Deprecated public AmazonRekognitionAsyncClient(AWSCredentialsProvider awsCredentialsProvider, ClientConfiguration clientConfiguration) { this(awsCredentialsProvider, clientConfiguration, newFixedThreadPool(clientConfiguration.getMaxConnections())); } /** * Constructs a new asynchronous client to invoke service methods on Amazon Rekognition using the specified AWS * account credentials provider and executor service. Default client settings will be used. * * @param awsCredentialsProvider * The AWS credentials provider which will provide credentials to authenticate requests with AWS services. * @param executorService * The executor service by which all asynchronous requests will be executed. * @deprecated use {@link AmazonRekognitionAsyncClientBuilder#withCredentials(AWSCredentialsProvider)} and * {@link AmazonRekognitionAsyncClientBuilder#withExecutorFactory(com.amazonaws.client.builder.ExecutorFactory)} */ @Deprecated public AmazonRekognitionAsyncClient(AWSCredentialsProvider awsCredentialsProvider, ExecutorService executorService) { this(awsCredentialsProvider, configFactory.getConfig(), executorService); } /** * Constructs a new asynchronous client to invoke service methods on Amazon Rekognition using the specified AWS * account credentials provider, executor service, and client configuration options. * * @param awsCredentialsProvider * The AWS credentials provider which will provide credentials to authenticate requests with AWS services. * @param clientConfiguration * Client configuration options (ex: max retry limit, proxy settings, etc). * @param executorService * The executor service by which all asynchronous requests will be executed. * @deprecated use {@link AmazonRekognitionAsyncClientBuilder#withCredentials(AWSCredentialsProvider)} and * {@link AmazonRekognitionAsyncClientBuilder#withClientConfiguration(ClientConfiguration)} and * {@link AmazonRekognitionAsyncClientBuilder#withExecutorFactory(com.amazonaws.client.builder.ExecutorFactory)} */ @Deprecated public AmazonRekognitionAsyncClient(AWSCredentialsProvider awsCredentialsProvider, ClientConfiguration clientConfiguration, ExecutorService executorService) { super(awsCredentialsProvider, clientConfiguration); this.executorService = executorService; } public static AmazonRekognitionAsyncClientBuilder asyncBuilder() { return AmazonRekognitionAsyncClientBuilder.standard(); } /** * Constructs a new asynchronous client to invoke service methods on Amazon Rekognition using the specified * parameters. * * @param asyncClientParams * Object providing client parameters. */ AmazonRekognitionAsyncClient(AwsAsyncClientParams asyncClientParams) { this(asyncClientParams, false); } /** * Constructs a new asynchronous client to invoke service methods on Amazon Rekognition using the specified * parameters. * * @param asyncClientParams * Object providing client parameters. * @param endpointDiscoveryEnabled * true will enable endpoint discovery if the service supports it. */ AmazonRekognitionAsyncClient(AwsAsyncClientParams asyncClientParams, boolean endpointDiscoveryEnabled) { super(asyncClientParams, endpointDiscoveryEnabled); this.executorService = asyncClientParams.getExecutor(); } /** * Returns the executor service used by this client to execute async requests. * * @return The executor service used by this client to execute async requests. */ public ExecutorService getExecutorService() { return executorService; } @Override public java.util.concurrent.Future associateFacesAsync(AssociateFacesRequest request) { return associateFacesAsync(request, null); } @Override public java.util.concurrent.Future associateFacesAsync(final AssociateFacesRequest request, final com.amazonaws.handlers.AsyncHandler asyncHandler) { final AssociateFacesRequest finalRequest = beforeClientExecution(request); return executorService.submit(new java.util.concurrent.Callable() { @Override public AssociateFacesResult call() throws Exception { AssociateFacesResult result = null; try { result = executeAssociateFaces(finalRequest); } catch (Exception ex) { if (asyncHandler != null) { asyncHandler.onError(ex); } throw ex; } if (asyncHandler != null) { asyncHandler.onSuccess(finalRequest, result); } return result; } }); } @Override public java.util.concurrent.Future compareFacesAsync(CompareFacesRequest request) { return compareFacesAsync(request, null); } @Override public java.util.concurrent.Future compareFacesAsync(final CompareFacesRequest request, final com.amazonaws.handlers.AsyncHandler asyncHandler) { final CompareFacesRequest finalRequest = beforeClientExecution(request); return executorService.submit(new java.util.concurrent.Callable() { @Override public CompareFacesResult call() throws Exception { CompareFacesResult result = null; try { result = executeCompareFaces(finalRequest); } catch (Exception ex) { if (asyncHandler != null) { asyncHandler.onError(ex); } throw ex; } if (asyncHandler != null) { asyncHandler.onSuccess(finalRequest, result); } return result; } }); } @Override public java.util.concurrent.Future copyProjectVersionAsync(CopyProjectVersionRequest request) { return copyProjectVersionAsync(request, null); } @Override public java.util.concurrent.Future copyProjectVersionAsync(final CopyProjectVersionRequest request, final com.amazonaws.handlers.AsyncHandler asyncHandler) { final CopyProjectVersionRequest finalRequest = beforeClientExecution(request); return executorService.submit(new java.util.concurrent.Callable() { @Override public CopyProjectVersionResult call() throws Exception { CopyProjectVersionResult result = null; try { result = executeCopyProjectVersion(finalRequest); } catch (Exception ex) { if (asyncHandler != null) { asyncHandler.onError(ex); } throw ex; } if (asyncHandler != null) { asyncHandler.onSuccess(finalRequest, result); } return result; } }); } @Override public java.util.concurrent.Future createCollectionAsync(CreateCollectionRequest request) { return createCollectionAsync(request, null); } @Override public java.util.concurrent.Future createCollectionAsync(final CreateCollectionRequest request, final com.amazonaws.handlers.AsyncHandler asyncHandler) { final CreateCollectionRequest finalRequest = beforeClientExecution(request); return executorService.submit(new java.util.concurrent.Callable() { @Override public CreateCollectionResult call() throws Exception { CreateCollectionResult result = null; try { result = executeCreateCollection(finalRequest); } catch (Exception ex) { if (asyncHandler != null) { asyncHandler.onError(ex); } throw ex; } if (asyncHandler != null) { asyncHandler.onSuccess(finalRequest, result); } return result; } }); } @Override public java.util.concurrent.Future createDatasetAsync(CreateDatasetRequest request) { return createDatasetAsync(request, null); } @Override public java.util.concurrent.Future createDatasetAsync(final CreateDatasetRequest request, final com.amazonaws.handlers.AsyncHandler asyncHandler) { final CreateDatasetRequest finalRequest = beforeClientExecution(request); return executorService.submit(new java.util.concurrent.Callable() { @Override public CreateDatasetResult call() throws Exception { CreateDatasetResult result = null; try { result = executeCreateDataset(finalRequest); } catch (Exception ex) { if (asyncHandler != null) { asyncHandler.onError(ex); } throw ex; } if (asyncHandler != null) { asyncHandler.onSuccess(finalRequest, result); } return result; } }); } @Override public java.util.concurrent.Future createFaceLivenessSessionAsync(CreateFaceLivenessSessionRequest request) { return createFaceLivenessSessionAsync(request, null); } @Override public java.util.concurrent.Future createFaceLivenessSessionAsync(final CreateFaceLivenessSessionRequest request, final com.amazonaws.handlers.AsyncHandler asyncHandler) { final CreateFaceLivenessSessionRequest finalRequest = beforeClientExecution(request); return executorService.submit(new java.util.concurrent.Callable() { @Override public CreateFaceLivenessSessionResult call() throws Exception { CreateFaceLivenessSessionResult result = null; try { result = executeCreateFaceLivenessSession(finalRequest); } catch (Exception ex) { if (asyncHandler != null) { asyncHandler.onError(ex); } throw ex; } if (asyncHandler != null) { asyncHandler.onSuccess(finalRequest, result); } return result; } }); } @Override public java.util.concurrent.Future createProjectAsync(CreateProjectRequest request) { return createProjectAsync(request, null); } @Override public java.util.concurrent.Future createProjectAsync(final CreateProjectRequest request, final com.amazonaws.handlers.AsyncHandler asyncHandler) { final CreateProjectRequest finalRequest = beforeClientExecution(request); return executorService.submit(new java.util.concurrent.Callable() { @Override public CreateProjectResult call() throws Exception { CreateProjectResult result = null; try { result = executeCreateProject(finalRequest); } catch (Exception ex) { if (asyncHandler != null) { asyncHandler.onError(ex); } throw ex; } if (asyncHandler != null) { asyncHandler.onSuccess(finalRequest, result); } return result; } }); } @Override public java.util.concurrent.Future createProjectVersionAsync(CreateProjectVersionRequest request) { return createProjectVersionAsync(request, null); } @Override public java.util.concurrent.Future createProjectVersionAsync(final CreateProjectVersionRequest request, final com.amazonaws.handlers.AsyncHandler asyncHandler) { final CreateProjectVersionRequest finalRequest = beforeClientExecution(request); return executorService.submit(new java.util.concurrent.Callable() { @Override public CreateProjectVersionResult call() throws Exception { CreateProjectVersionResult result = null; try { result = executeCreateProjectVersion(finalRequest); } catch (Exception ex) { if (asyncHandler != null) { asyncHandler.onError(ex); } throw ex; } if (asyncHandler != null) { asyncHandler.onSuccess(finalRequest, result); } return result; } }); } @Override public java.util.concurrent.Future createStreamProcessorAsync(CreateStreamProcessorRequest request) { return createStreamProcessorAsync(request, null); } @Override public java.util.concurrent.Future createStreamProcessorAsync(final CreateStreamProcessorRequest request, final com.amazonaws.handlers.AsyncHandler asyncHandler) { final CreateStreamProcessorRequest finalRequest = beforeClientExecution(request); return executorService.submit(new java.util.concurrent.Callable() { @Override public CreateStreamProcessorResult call() throws Exception { CreateStreamProcessorResult result = null; try { result = executeCreateStreamProcessor(finalRequest); } catch (Exception ex) { if (asyncHandler != null) { asyncHandler.onError(ex); } throw ex; } if (asyncHandler != null) { asyncHandler.onSuccess(finalRequest, result); } return result; } }); } @Override public java.util.concurrent.Future createUserAsync(CreateUserRequest request) { return createUserAsync(request, null); } @Override public java.util.concurrent.Future createUserAsync(final CreateUserRequest request, final com.amazonaws.handlers.AsyncHandler asyncHandler) { final CreateUserRequest finalRequest = beforeClientExecution(request); return executorService.submit(new java.util.concurrent.Callable() { @Override public CreateUserResult call() throws Exception { CreateUserResult result = null; try { result = executeCreateUser(finalRequest); } catch (Exception ex) { if (asyncHandler != null) { asyncHandler.onError(ex); } throw ex; } if (asyncHandler != null) { asyncHandler.onSuccess(finalRequest, result); } return result; } }); } @Override public java.util.concurrent.Future deleteCollectionAsync(DeleteCollectionRequest request) { return deleteCollectionAsync(request, null); } @Override public java.util.concurrent.Future deleteCollectionAsync(final DeleteCollectionRequest request, final com.amazonaws.handlers.AsyncHandler asyncHandler) { final DeleteCollectionRequest finalRequest = beforeClientExecution(request); return executorService.submit(new java.util.concurrent.Callable() { @Override public DeleteCollectionResult call() throws Exception { DeleteCollectionResult result = null; try { result = executeDeleteCollection(finalRequest); } catch (Exception ex) { if (asyncHandler != null) { asyncHandler.onError(ex); } throw ex; } if (asyncHandler != null) { asyncHandler.onSuccess(finalRequest, result); } return result; } }); } @Override public java.util.concurrent.Future deleteDatasetAsync(DeleteDatasetRequest request) { return deleteDatasetAsync(request, null); } @Override public java.util.concurrent.Future deleteDatasetAsync(final DeleteDatasetRequest request, final com.amazonaws.handlers.AsyncHandler asyncHandler) { final DeleteDatasetRequest finalRequest = beforeClientExecution(request); return executorService.submit(new java.util.concurrent.Callable() { @Override public DeleteDatasetResult call() throws Exception { DeleteDatasetResult result = null; try { result = executeDeleteDataset(finalRequest); } catch (Exception ex) { if (asyncHandler != null) { asyncHandler.onError(ex); } throw ex; } if (asyncHandler != null) { asyncHandler.onSuccess(finalRequest, result); } return result; } }); } @Override public java.util.concurrent.Future deleteFacesAsync(DeleteFacesRequest request) { return deleteFacesAsync(request, null); } @Override public java.util.concurrent.Future deleteFacesAsync(final DeleteFacesRequest request, final com.amazonaws.handlers.AsyncHandler asyncHandler) { final DeleteFacesRequest finalRequest = beforeClientExecution(request); return executorService.submit(new java.util.concurrent.Callable() { @Override public DeleteFacesResult call() throws Exception { DeleteFacesResult result = null; try { result = executeDeleteFaces(finalRequest); } catch (Exception ex) { if (asyncHandler != null) { asyncHandler.onError(ex); } throw ex; } if (asyncHandler != null) { asyncHandler.onSuccess(finalRequest, result); } return result; } }); } @Override public java.util.concurrent.Future deleteProjectAsync(DeleteProjectRequest request) { return deleteProjectAsync(request, null); } @Override public java.util.concurrent.Future deleteProjectAsync(final DeleteProjectRequest request, final com.amazonaws.handlers.AsyncHandler asyncHandler) { final DeleteProjectRequest finalRequest = beforeClientExecution(request); return executorService.submit(new java.util.concurrent.Callable() { @Override public DeleteProjectResult call() throws Exception { DeleteProjectResult result = null; try { result = executeDeleteProject(finalRequest); } catch (Exception ex) { if (asyncHandler != null) { asyncHandler.onError(ex); } throw ex; } if (asyncHandler != null) { asyncHandler.onSuccess(finalRequest, result); } return result; } }); } @Override public java.util.concurrent.Future deleteProjectPolicyAsync(DeleteProjectPolicyRequest request) { return deleteProjectPolicyAsync(request, null); } @Override public java.util.concurrent.Future deleteProjectPolicyAsync(final DeleteProjectPolicyRequest request, final com.amazonaws.handlers.AsyncHandler asyncHandler) { final DeleteProjectPolicyRequest finalRequest = beforeClientExecution(request); return executorService.submit(new java.util.concurrent.Callable() { @Override public DeleteProjectPolicyResult call() throws Exception { DeleteProjectPolicyResult result = null; try { result = executeDeleteProjectPolicy(finalRequest); } catch (Exception ex) { if (asyncHandler != null) { asyncHandler.onError(ex); } throw ex; } if (asyncHandler != null) { asyncHandler.onSuccess(finalRequest, result); } return result; } }); } @Override public java.util.concurrent.Future deleteProjectVersionAsync(DeleteProjectVersionRequest request) { return deleteProjectVersionAsync(request, null); } @Override public java.util.concurrent.Future deleteProjectVersionAsync(final DeleteProjectVersionRequest request, final com.amazonaws.handlers.AsyncHandler asyncHandler) { final DeleteProjectVersionRequest finalRequest = beforeClientExecution(request); return executorService.submit(new java.util.concurrent.Callable() { @Override public DeleteProjectVersionResult call() throws Exception { DeleteProjectVersionResult result = null; try { result = executeDeleteProjectVersion(finalRequest); } catch (Exception ex) { if (asyncHandler != null) { asyncHandler.onError(ex); } throw ex; } if (asyncHandler != null) { asyncHandler.onSuccess(finalRequest, result); } return result; } }); } @Override public java.util.concurrent.Future deleteStreamProcessorAsync(DeleteStreamProcessorRequest request) { return deleteStreamProcessorAsync(request, null); } @Override public java.util.concurrent.Future deleteStreamProcessorAsync(final DeleteStreamProcessorRequest request, final com.amazonaws.handlers.AsyncHandler asyncHandler) { final DeleteStreamProcessorRequest finalRequest = beforeClientExecution(request); return executorService.submit(new java.util.concurrent.Callable() { @Override public DeleteStreamProcessorResult call() throws Exception { DeleteStreamProcessorResult result = null; try { result = executeDeleteStreamProcessor(finalRequest); } catch (Exception ex) { if (asyncHandler != null) { asyncHandler.onError(ex); } throw ex; } if (asyncHandler != null) { asyncHandler.onSuccess(finalRequest, result); } return result; } }); } @Override public java.util.concurrent.Future deleteUserAsync(DeleteUserRequest request) { return deleteUserAsync(request, null); } @Override public java.util.concurrent.Future deleteUserAsync(final DeleteUserRequest request, final com.amazonaws.handlers.AsyncHandler asyncHandler) { final DeleteUserRequest finalRequest = beforeClientExecution(request); return executorService.submit(new java.util.concurrent.Callable() { @Override public DeleteUserResult call() throws Exception { DeleteUserResult result = null; try { result = executeDeleteUser(finalRequest); } catch (Exception ex) { if (asyncHandler != null) { asyncHandler.onError(ex); } throw ex; } if (asyncHandler != null) { asyncHandler.onSuccess(finalRequest, result); } return result; } }); } @Override public java.util.concurrent.Future describeCollectionAsync(DescribeCollectionRequest request) { return describeCollectionAsync(request, null); } @Override public java.util.concurrent.Future describeCollectionAsync(final DescribeCollectionRequest request, final com.amazonaws.handlers.AsyncHandler asyncHandler) { final DescribeCollectionRequest finalRequest = beforeClientExecution(request); return executorService.submit(new java.util.concurrent.Callable() { @Override public DescribeCollectionResult call() throws Exception { DescribeCollectionResult result = null; try { result = executeDescribeCollection(finalRequest); } catch (Exception ex) { if (asyncHandler != null) { asyncHandler.onError(ex); } throw ex; } if (asyncHandler != null) { asyncHandler.onSuccess(finalRequest, result); } return result; } }); } @Override public java.util.concurrent.Future describeDatasetAsync(DescribeDatasetRequest request) { return describeDatasetAsync(request, null); } @Override public java.util.concurrent.Future describeDatasetAsync(final DescribeDatasetRequest request, final com.amazonaws.handlers.AsyncHandler asyncHandler) { final DescribeDatasetRequest finalRequest = beforeClientExecution(request); return executorService.submit(new java.util.concurrent.Callable() { @Override public DescribeDatasetResult call() throws Exception { DescribeDatasetResult result = null; try { result = executeDescribeDataset(finalRequest); } catch (Exception ex) { if (asyncHandler != null) { asyncHandler.onError(ex); } throw ex; } if (asyncHandler != null) { asyncHandler.onSuccess(finalRequest, result); } return result; } }); } @Override public java.util.concurrent.Future describeProjectVersionsAsync(DescribeProjectVersionsRequest request) { return describeProjectVersionsAsync(request, null); } @Override public java.util.concurrent.Future describeProjectVersionsAsync(final DescribeProjectVersionsRequest request, final com.amazonaws.handlers.AsyncHandler asyncHandler) { final DescribeProjectVersionsRequest finalRequest = beforeClientExecution(request); return executorService.submit(new java.util.concurrent.Callable() { @Override public DescribeProjectVersionsResult call() throws Exception { DescribeProjectVersionsResult result = null; try { result = executeDescribeProjectVersions(finalRequest); } catch (Exception ex) { if (asyncHandler != null) { asyncHandler.onError(ex); } throw ex; } if (asyncHandler != null) { asyncHandler.onSuccess(finalRequest, result); } return result; } }); } @Override public java.util.concurrent.Future describeProjectsAsync(DescribeProjectsRequest request) { return describeProjectsAsync(request, null); } @Override public java.util.concurrent.Future describeProjectsAsync(final DescribeProjectsRequest request, final com.amazonaws.handlers.AsyncHandler asyncHandler) { final DescribeProjectsRequest finalRequest = beforeClientExecution(request); return executorService.submit(new java.util.concurrent.Callable() { @Override public DescribeProjectsResult call() throws Exception { DescribeProjectsResult result = null; try { result = executeDescribeProjects(finalRequest); } catch (Exception ex) { if (asyncHandler != null) { asyncHandler.onError(ex); } throw ex; } if (asyncHandler != null) { asyncHandler.onSuccess(finalRequest, result); } return result; } }); } @Override public java.util.concurrent.Future describeStreamProcessorAsync(DescribeStreamProcessorRequest request) { return describeStreamProcessorAsync(request, null); } @Override public java.util.concurrent.Future describeStreamProcessorAsync(final DescribeStreamProcessorRequest request, final com.amazonaws.handlers.AsyncHandler asyncHandler) { final DescribeStreamProcessorRequest finalRequest = beforeClientExecution(request); return executorService.submit(new java.util.concurrent.Callable() { @Override public DescribeStreamProcessorResult call() throws Exception { DescribeStreamProcessorResult result = null; try { result = executeDescribeStreamProcessor(finalRequest); } catch (Exception ex) { if (asyncHandler != null) { asyncHandler.onError(ex); } throw ex; } if (asyncHandler != null) { asyncHandler.onSuccess(finalRequest, result); } return result; } }); } @Override public java.util.concurrent.Future detectCustomLabelsAsync(DetectCustomLabelsRequest request) { return detectCustomLabelsAsync(request, null); } @Override public java.util.concurrent.Future detectCustomLabelsAsync(final DetectCustomLabelsRequest request, final com.amazonaws.handlers.AsyncHandler asyncHandler) { final DetectCustomLabelsRequest finalRequest = beforeClientExecution(request); return executorService.submit(new java.util.concurrent.Callable() { @Override public DetectCustomLabelsResult call() throws Exception { DetectCustomLabelsResult result = null; try { result = executeDetectCustomLabels(finalRequest); } catch (Exception ex) { if (asyncHandler != null) { asyncHandler.onError(ex); } throw ex; } if (asyncHandler != null) { asyncHandler.onSuccess(finalRequest, result); } return result; } }); } @Override public java.util.concurrent.Future detectFacesAsync(DetectFacesRequest request) { return detectFacesAsync(request, null); } @Override public java.util.concurrent.Future detectFacesAsync(final DetectFacesRequest request, final com.amazonaws.handlers.AsyncHandler asyncHandler) { final DetectFacesRequest finalRequest = beforeClientExecution(request); return executorService.submit(new java.util.concurrent.Callable() { @Override public DetectFacesResult call() throws Exception { DetectFacesResult result = null; try { result = executeDetectFaces(finalRequest); } catch (Exception ex) { if (asyncHandler != null) { asyncHandler.onError(ex); } throw ex; } if (asyncHandler != null) { asyncHandler.onSuccess(finalRequest, result); } return result; } }); } @Override public java.util.concurrent.Future detectLabelsAsync(DetectLabelsRequest request) { return detectLabelsAsync(request, null); } @Override public java.util.concurrent.Future detectLabelsAsync(final DetectLabelsRequest request, final com.amazonaws.handlers.AsyncHandler asyncHandler) { final DetectLabelsRequest finalRequest = beforeClientExecution(request); return executorService.submit(new java.util.concurrent.Callable() { @Override public DetectLabelsResult call() throws Exception { DetectLabelsResult result = null; try { result = executeDetectLabels(finalRequest); } catch (Exception ex) { if (asyncHandler != null) { asyncHandler.onError(ex); } throw ex; } if (asyncHandler != null) { asyncHandler.onSuccess(finalRequest, result); } return result; } }); } @Override public java.util.concurrent.Future detectModerationLabelsAsync(DetectModerationLabelsRequest request) { return detectModerationLabelsAsync(request, null); } @Override public java.util.concurrent.Future detectModerationLabelsAsync(final DetectModerationLabelsRequest request, final com.amazonaws.handlers.AsyncHandler asyncHandler) { final DetectModerationLabelsRequest finalRequest = beforeClientExecution(request); return executorService.submit(new java.util.concurrent.Callable() { @Override public DetectModerationLabelsResult call() throws Exception { DetectModerationLabelsResult result = null; try { result = executeDetectModerationLabels(finalRequest); } catch (Exception ex) { if (asyncHandler != null) { asyncHandler.onError(ex); } throw ex; } if (asyncHandler != null) { asyncHandler.onSuccess(finalRequest, result); } return result; } }); } @Override public java.util.concurrent.Future detectProtectiveEquipmentAsync(DetectProtectiveEquipmentRequest request) { return detectProtectiveEquipmentAsync(request, null); } @Override public java.util.concurrent.Future detectProtectiveEquipmentAsync(final DetectProtectiveEquipmentRequest request, final com.amazonaws.handlers.AsyncHandler asyncHandler) { final DetectProtectiveEquipmentRequest finalRequest = beforeClientExecution(request); return executorService.submit(new java.util.concurrent.Callable() { @Override public DetectProtectiveEquipmentResult call() throws Exception { DetectProtectiveEquipmentResult result = null; try { result = executeDetectProtectiveEquipment(finalRequest); } catch (Exception ex) { if (asyncHandler != null) { asyncHandler.onError(ex); } throw ex; } if (asyncHandler != null) { asyncHandler.onSuccess(finalRequest, result); } return result; } }); } @Override public java.util.concurrent.Future detectTextAsync(DetectTextRequest request) { return detectTextAsync(request, null); } @Override public java.util.concurrent.Future detectTextAsync(final DetectTextRequest request, final com.amazonaws.handlers.AsyncHandler asyncHandler) { final DetectTextRequest finalRequest = beforeClientExecution(request); return executorService.submit(new java.util.concurrent.Callable() { @Override public DetectTextResult call() throws Exception { DetectTextResult result = null; try { result = executeDetectText(finalRequest); } catch (Exception ex) { if (asyncHandler != null) { asyncHandler.onError(ex); } throw ex; } if (asyncHandler != null) { asyncHandler.onSuccess(finalRequest, result); } return result; } }); } @Override public java.util.concurrent.Future disassociateFacesAsync(DisassociateFacesRequest request) { return disassociateFacesAsync(request, null); } @Override public java.util.concurrent.Future disassociateFacesAsync(final DisassociateFacesRequest request, final com.amazonaws.handlers.AsyncHandler asyncHandler) { final DisassociateFacesRequest finalRequest = beforeClientExecution(request); return executorService.submit(new java.util.concurrent.Callable() { @Override public DisassociateFacesResult call() throws Exception { DisassociateFacesResult result = null; try { result = executeDisassociateFaces(finalRequest); } catch (Exception ex) { if (asyncHandler != null) { asyncHandler.onError(ex); } throw ex; } if (asyncHandler != null) { asyncHandler.onSuccess(finalRequest, result); } return result; } }); } @Override public java.util.concurrent.Future distributeDatasetEntriesAsync(DistributeDatasetEntriesRequest request) { return distributeDatasetEntriesAsync(request, null); } @Override public java.util.concurrent.Future distributeDatasetEntriesAsync(final DistributeDatasetEntriesRequest request, final com.amazonaws.handlers.AsyncHandler asyncHandler) { final DistributeDatasetEntriesRequest finalRequest = beforeClientExecution(request); return executorService.submit(new java.util.concurrent.Callable() { @Override public DistributeDatasetEntriesResult call() throws Exception { DistributeDatasetEntriesResult result = null; try { result = executeDistributeDatasetEntries(finalRequest); } catch (Exception ex) { if (asyncHandler != null) { asyncHandler.onError(ex); } throw ex; } if (asyncHandler != null) { asyncHandler.onSuccess(finalRequest, result); } return result; } }); } @Override public java.util.concurrent.Future getCelebrityInfoAsync(GetCelebrityInfoRequest request) { return getCelebrityInfoAsync(request, null); } @Override public java.util.concurrent.Future getCelebrityInfoAsync(final GetCelebrityInfoRequest request, final com.amazonaws.handlers.AsyncHandler asyncHandler) { final GetCelebrityInfoRequest finalRequest = beforeClientExecution(request); return executorService.submit(new java.util.concurrent.Callable() { @Override public GetCelebrityInfoResult call() throws Exception { GetCelebrityInfoResult result = null; try { result = executeGetCelebrityInfo(finalRequest); } catch (Exception ex) { if (asyncHandler != null) { asyncHandler.onError(ex); } throw ex; } if (asyncHandler != null) { asyncHandler.onSuccess(finalRequest, result); } return result; } }); } @Override public java.util.concurrent.Future getCelebrityRecognitionAsync(GetCelebrityRecognitionRequest request) { return getCelebrityRecognitionAsync(request, null); } @Override public java.util.concurrent.Future getCelebrityRecognitionAsync(final GetCelebrityRecognitionRequest request, final com.amazonaws.handlers.AsyncHandler asyncHandler) { final GetCelebrityRecognitionRequest finalRequest = beforeClientExecution(request); return executorService.submit(new java.util.concurrent.Callable() { @Override public GetCelebrityRecognitionResult call() throws Exception { GetCelebrityRecognitionResult result = null; try { result = executeGetCelebrityRecognition(finalRequest); } catch (Exception ex) { if (asyncHandler != null) { asyncHandler.onError(ex); } throw ex; } if (asyncHandler != null) { asyncHandler.onSuccess(finalRequest, result); } return result; } }); } @Override public java.util.concurrent.Future getContentModerationAsync(GetContentModerationRequest request) { return getContentModerationAsync(request, null); } @Override public java.util.concurrent.Future getContentModerationAsync(final GetContentModerationRequest request, final com.amazonaws.handlers.AsyncHandler asyncHandler) { final GetContentModerationRequest finalRequest = beforeClientExecution(request); return executorService.submit(new java.util.concurrent.Callable() { @Override public GetContentModerationResult call() throws Exception { GetContentModerationResult result = null; try { result = executeGetContentModeration(finalRequest); } catch (Exception ex) { if (asyncHandler != null) { asyncHandler.onError(ex); } throw ex; } if (asyncHandler != null) { asyncHandler.onSuccess(finalRequest, result); } return result; } }); } @Override public java.util.concurrent.Future getFaceDetectionAsync(GetFaceDetectionRequest request) { return getFaceDetectionAsync(request, null); } @Override public java.util.concurrent.Future getFaceDetectionAsync(final GetFaceDetectionRequest request, final com.amazonaws.handlers.AsyncHandler asyncHandler) { final GetFaceDetectionRequest finalRequest = beforeClientExecution(request); return executorService.submit(new java.util.concurrent.Callable() { @Override public GetFaceDetectionResult call() throws Exception { GetFaceDetectionResult result = null; try { result = executeGetFaceDetection(finalRequest); } catch (Exception ex) { if (asyncHandler != null) { asyncHandler.onError(ex); } throw ex; } if (asyncHandler != null) { asyncHandler.onSuccess(finalRequest, result); } return result; } }); } @Override public java.util.concurrent.Future getFaceLivenessSessionResultsAsync(GetFaceLivenessSessionResultsRequest request) { return getFaceLivenessSessionResultsAsync(request, null); } @Override public java.util.concurrent.Future getFaceLivenessSessionResultsAsync( final GetFaceLivenessSessionResultsRequest request, final com.amazonaws.handlers.AsyncHandler asyncHandler) { final GetFaceLivenessSessionResultsRequest finalRequest = beforeClientExecution(request); return executorService.submit(new java.util.concurrent.Callable() { @Override public GetFaceLivenessSessionResultsResult call() throws Exception { GetFaceLivenessSessionResultsResult result = null; try { result = executeGetFaceLivenessSessionResults(finalRequest); } catch (Exception ex) { if (asyncHandler != null) { asyncHandler.onError(ex); } throw ex; } if (asyncHandler != null) { asyncHandler.onSuccess(finalRequest, result); } return result; } }); } @Override public java.util.concurrent.Future getFaceSearchAsync(GetFaceSearchRequest request) { return getFaceSearchAsync(request, null); } @Override public java.util.concurrent.Future getFaceSearchAsync(final GetFaceSearchRequest request, final com.amazonaws.handlers.AsyncHandler asyncHandler) { final GetFaceSearchRequest finalRequest = beforeClientExecution(request); return executorService.submit(new java.util.concurrent.Callable() { @Override public GetFaceSearchResult call() throws Exception { GetFaceSearchResult result = null; try { result = executeGetFaceSearch(finalRequest); } catch (Exception ex) { if (asyncHandler != null) { asyncHandler.onError(ex); } throw ex; } if (asyncHandler != null) { asyncHandler.onSuccess(finalRequest, result); } return result; } }); } @Override public java.util.concurrent.Future getLabelDetectionAsync(GetLabelDetectionRequest request) { return getLabelDetectionAsync(request, null); } @Override public java.util.concurrent.Future getLabelDetectionAsync(final GetLabelDetectionRequest request, final com.amazonaws.handlers.AsyncHandler asyncHandler) { final GetLabelDetectionRequest finalRequest = beforeClientExecution(request); return executorService.submit(new java.util.concurrent.Callable() { @Override public GetLabelDetectionResult call() throws Exception { GetLabelDetectionResult result = null; try { result = executeGetLabelDetection(finalRequest); } catch (Exception ex) { if (asyncHandler != null) { asyncHandler.onError(ex); } throw ex; } if (asyncHandler != null) { asyncHandler.onSuccess(finalRequest, result); } return result; } }); } @Override public java.util.concurrent.Future getPersonTrackingAsync(GetPersonTrackingRequest request) { return getPersonTrackingAsync(request, null); } @Override public java.util.concurrent.Future getPersonTrackingAsync(final GetPersonTrackingRequest request, final com.amazonaws.handlers.AsyncHandler asyncHandler) { final GetPersonTrackingRequest finalRequest = beforeClientExecution(request); return executorService.submit(new java.util.concurrent.Callable() { @Override public GetPersonTrackingResult call() throws Exception { GetPersonTrackingResult result = null; try { result = executeGetPersonTracking(finalRequest); } catch (Exception ex) { if (asyncHandler != null) { asyncHandler.onError(ex); } throw ex; } if (asyncHandler != null) { asyncHandler.onSuccess(finalRequest, result); } return result; } }); } @Override public java.util.concurrent.Future getSegmentDetectionAsync(GetSegmentDetectionRequest request) { return getSegmentDetectionAsync(request, null); } @Override public java.util.concurrent.Future getSegmentDetectionAsync(final GetSegmentDetectionRequest request, final com.amazonaws.handlers.AsyncHandler asyncHandler) { final GetSegmentDetectionRequest finalRequest = beforeClientExecution(request); return executorService.submit(new java.util.concurrent.Callable() { @Override public GetSegmentDetectionResult call() throws Exception { GetSegmentDetectionResult result = null; try { result = executeGetSegmentDetection(finalRequest); } catch (Exception ex) { if (asyncHandler != null) { asyncHandler.onError(ex); } throw ex; } if (asyncHandler != null) { asyncHandler.onSuccess(finalRequest, result); } return result; } }); } @Override public java.util.concurrent.Future getTextDetectionAsync(GetTextDetectionRequest request) { return getTextDetectionAsync(request, null); } @Override public java.util.concurrent.Future getTextDetectionAsync(final GetTextDetectionRequest request, final com.amazonaws.handlers.AsyncHandler asyncHandler) { final GetTextDetectionRequest finalRequest = beforeClientExecution(request); return executorService.submit(new java.util.concurrent.Callable() { @Override public GetTextDetectionResult call() throws Exception { GetTextDetectionResult result = null; try { result = executeGetTextDetection(finalRequest); } catch (Exception ex) { if (asyncHandler != null) { asyncHandler.onError(ex); } throw ex; } if (asyncHandler != null) { asyncHandler.onSuccess(finalRequest, result); } return result; } }); } @Override public java.util.concurrent.Future indexFacesAsync(IndexFacesRequest request) { return indexFacesAsync(request, null); } @Override public java.util.concurrent.Future indexFacesAsync(final IndexFacesRequest request, final com.amazonaws.handlers.AsyncHandler asyncHandler) { final IndexFacesRequest finalRequest = beforeClientExecution(request); return executorService.submit(new java.util.concurrent.Callable() { @Override public IndexFacesResult call() throws Exception { IndexFacesResult result = null; try { result = executeIndexFaces(finalRequest); } catch (Exception ex) { if (asyncHandler != null) { asyncHandler.onError(ex); } throw ex; } if (asyncHandler != null) { asyncHandler.onSuccess(finalRequest, result); } return result; } }); } @Override public java.util.concurrent.Future listCollectionsAsync(ListCollectionsRequest request) { return listCollectionsAsync(request, null); } @Override public java.util.concurrent.Future listCollectionsAsync(final ListCollectionsRequest request, final com.amazonaws.handlers.AsyncHandler asyncHandler) { final ListCollectionsRequest finalRequest = beforeClientExecution(request); return executorService.submit(new java.util.concurrent.Callable() { @Override public ListCollectionsResult call() throws Exception { ListCollectionsResult result = null; try { result = executeListCollections(finalRequest); } catch (Exception ex) { if (asyncHandler != null) { asyncHandler.onError(ex); } throw ex; } if (asyncHandler != null) { asyncHandler.onSuccess(finalRequest, result); } return result; } }); } @Override public java.util.concurrent.Future listDatasetEntriesAsync(ListDatasetEntriesRequest request) { return listDatasetEntriesAsync(request, null); } @Override public java.util.concurrent.Future listDatasetEntriesAsync(final ListDatasetEntriesRequest request, final com.amazonaws.handlers.AsyncHandler asyncHandler) { final ListDatasetEntriesRequest finalRequest = beforeClientExecution(request); return executorService.submit(new java.util.concurrent.Callable() { @Override public ListDatasetEntriesResult call() throws Exception { ListDatasetEntriesResult result = null; try { result = executeListDatasetEntries(finalRequest); } catch (Exception ex) { if (asyncHandler != null) { asyncHandler.onError(ex); } throw ex; } if (asyncHandler != null) { asyncHandler.onSuccess(finalRequest, result); } return result; } }); } @Override public java.util.concurrent.Future listDatasetLabelsAsync(ListDatasetLabelsRequest request) { return listDatasetLabelsAsync(request, null); } @Override public java.util.concurrent.Future listDatasetLabelsAsync(final ListDatasetLabelsRequest request, final com.amazonaws.handlers.AsyncHandler asyncHandler) { final ListDatasetLabelsRequest finalRequest = beforeClientExecution(request); return executorService.submit(new java.util.concurrent.Callable() { @Override public ListDatasetLabelsResult call() throws Exception { ListDatasetLabelsResult result = null; try { result = executeListDatasetLabels(finalRequest); } catch (Exception ex) { if (asyncHandler != null) { asyncHandler.onError(ex); } throw ex; } if (asyncHandler != null) { asyncHandler.onSuccess(finalRequest, result); } return result; } }); } @Override public java.util.concurrent.Future listFacesAsync(ListFacesRequest request) { return listFacesAsync(request, null); } @Override public java.util.concurrent.Future listFacesAsync(final ListFacesRequest request, final com.amazonaws.handlers.AsyncHandler asyncHandler) { final ListFacesRequest finalRequest = beforeClientExecution(request); return executorService.submit(new java.util.concurrent.Callable() { @Override public ListFacesResult call() throws Exception { ListFacesResult result = null; try { result = executeListFaces(finalRequest); } catch (Exception ex) { if (asyncHandler != null) { asyncHandler.onError(ex); } throw ex; } if (asyncHandler != null) { asyncHandler.onSuccess(finalRequest, result); } return result; } }); } @Override public java.util.concurrent.Future listProjectPoliciesAsync(ListProjectPoliciesRequest request) { return listProjectPoliciesAsync(request, null); } @Override public java.util.concurrent.Future listProjectPoliciesAsync(final ListProjectPoliciesRequest request, final com.amazonaws.handlers.AsyncHandler asyncHandler) { final ListProjectPoliciesRequest finalRequest = beforeClientExecution(request); return executorService.submit(new java.util.concurrent.Callable() { @Override public ListProjectPoliciesResult call() throws Exception { ListProjectPoliciesResult result = null; try { result = executeListProjectPolicies(finalRequest); } catch (Exception ex) { if (asyncHandler != null) { asyncHandler.onError(ex); } throw ex; } if (asyncHandler != null) { asyncHandler.onSuccess(finalRequest, result); } return result; } }); } @Override public java.util.concurrent.Future listStreamProcessorsAsync(ListStreamProcessorsRequest request) { return listStreamProcessorsAsync(request, null); } @Override public java.util.concurrent.Future listStreamProcessorsAsync(final ListStreamProcessorsRequest request, final com.amazonaws.handlers.AsyncHandler asyncHandler) { final ListStreamProcessorsRequest finalRequest = beforeClientExecution(request); return executorService.submit(new java.util.concurrent.Callable() { @Override public ListStreamProcessorsResult call() throws Exception { ListStreamProcessorsResult result = null; try { result = executeListStreamProcessors(finalRequest); } catch (Exception ex) { if (asyncHandler != null) { asyncHandler.onError(ex); } throw ex; } if (asyncHandler != null) { asyncHandler.onSuccess(finalRequest, result); } return result; } }); } @Override public java.util.concurrent.Future listTagsForResourceAsync(ListTagsForResourceRequest request) { return listTagsForResourceAsync(request, null); } @Override public java.util.concurrent.Future listTagsForResourceAsync(final ListTagsForResourceRequest request, final com.amazonaws.handlers.AsyncHandler asyncHandler) { final ListTagsForResourceRequest finalRequest = beforeClientExecution(request); return executorService.submit(new java.util.concurrent.Callable() { @Override public ListTagsForResourceResult call() throws Exception { ListTagsForResourceResult result = null; try { result = executeListTagsForResource(finalRequest); } catch (Exception ex) { if (asyncHandler != null) { asyncHandler.onError(ex); } throw ex; } if (asyncHandler != null) { asyncHandler.onSuccess(finalRequest, result); } return result; } }); } @Override public java.util.concurrent.Future listUsersAsync(ListUsersRequest request) { return listUsersAsync(request, null); } @Override public java.util.concurrent.Future listUsersAsync(final ListUsersRequest request, final com.amazonaws.handlers.AsyncHandler asyncHandler) { final ListUsersRequest finalRequest = beforeClientExecution(request); return executorService.submit(new java.util.concurrent.Callable() { @Override public ListUsersResult call() throws Exception { ListUsersResult result = null; try { result = executeListUsers(finalRequest); } catch (Exception ex) { if (asyncHandler != null) { asyncHandler.onError(ex); } throw ex; } if (asyncHandler != null) { asyncHandler.onSuccess(finalRequest, result); } return result; } }); } @Override public java.util.concurrent.Future putProjectPolicyAsync(PutProjectPolicyRequest request) { return putProjectPolicyAsync(request, null); } @Override public java.util.concurrent.Future putProjectPolicyAsync(final PutProjectPolicyRequest request, final com.amazonaws.handlers.AsyncHandler asyncHandler) { final PutProjectPolicyRequest finalRequest = beforeClientExecution(request); return executorService.submit(new java.util.concurrent.Callable() { @Override public PutProjectPolicyResult call() throws Exception { PutProjectPolicyResult result = null; try { result = executePutProjectPolicy(finalRequest); } catch (Exception ex) { if (asyncHandler != null) { asyncHandler.onError(ex); } throw ex; } if (asyncHandler != null) { asyncHandler.onSuccess(finalRequest, result); } return result; } }); } @Override public java.util.concurrent.Future recognizeCelebritiesAsync(RecognizeCelebritiesRequest request) { return recognizeCelebritiesAsync(request, null); } @Override public java.util.concurrent.Future recognizeCelebritiesAsync(final RecognizeCelebritiesRequest request, final com.amazonaws.handlers.AsyncHandler asyncHandler) { final RecognizeCelebritiesRequest finalRequest = beforeClientExecution(request); return executorService.submit(new java.util.concurrent.Callable() { @Override public RecognizeCelebritiesResult call() throws Exception { RecognizeCelebritiesResult result = null; try { result = executeRecognizeCelebrities(finalRequest); } catch (Exception ex) { if (asyncHandler != null) { asyncHandler.onError(ex); } throw ex; } if (asyncHandler != null) { asyncHandler.onSuccess(finalRequest, result); } return result; } }); } @Override public java.util.concurrent.Future searchFacesAsync(SearchFacesRequest request) { return searchFacesAsync(request, null); } @Override public java.util.concurrent.Future searchFacesAsync(final SearchFacesRequest request, final com.amazonaws.handlers.AsyncHandler asyncHandler) { final SearchFacesRequest finalRequest = beforeClientExecution(request); return executorService.submit(new java.util.concurrent.Callable() { @Override public SearchFacesResult call() throws Exception { SearchFacesResult result = null; try { result = executeSearchFaces(finalRequest); } catch (Exception ex) { if (asyncHandler != null) { asyncHandler.onError(ex); } throw ex; } if (asyncHandler != null) { asyncHandler.onSuccess(finalRequest, result); } return result; } }); } @Override public java.util.concurrent.Future searchFacesByImageAsync(SearchFacesByImageRequest request) { return searchFacesByImageAsync(request, null); } @Override public java.util.concurrent.Future searchFacesByImageAsync(final SearchFacesByImageRequest request, final com.amazonaws.handlers.AsyncHandler asyncHandler) { final SearchFacesByImageRequest finalRequest = beforeClientExecution(request); return executorService.submit(new java.util.concurrent.Callable() { @Override public SearchFacesByImageResult call() throws Exception { SearchFacesByImageResult result = null; try { result = executeSearchFacesByImage(finalRequest); } catch (Exception ex) { if (asyncHandler != null) { asyncHandler.onError(ex); } throw ex; } if (asyncHandler != null) { asyncHandler.onSuccess(finalRequest, result); } return result; } }); } @Override public java.util.concurrent.Future searchUsersAsync(SearchUsersRequest request) { return searchUsersAsync(request, null); } @Override public java.util.concurrent.Future searchUsersAsync(final SearchUsersRequest request, final com.amazonaws.handlers.AsyncHandler asyncHandler) { final SearchUsersRequest finalRequest = beforeClientExecution(request); return executorService.submit(new java.util.concurrent.Callable() { @Override public SearchUsersResult call() throws Exception { SearchUsersResult result = null; try { result = executeSearchUsers(finalRequest); } catch (Exception ex) { if (asyncHandler != null) { asyncHandler.onError(ex); } throw ex; } if (asyncHandler != null) { asyncHandler.onSuccess(finalRequest, result); } return result; } }); } @Override public java.util.concurrent.Future searchUsersByImageAsync(SearchUsersByImageRequest request) { return searchUsersByImageAsync(request, null); } @Override public java.util.concurrent.Future searchUsersByImageAsync(final SearchUsersByImageRequest request, final com.amazonaws.handlers.AsyncHandler asyncHandler) { final SearchUsersByImageRequest finalRequest = beforeClientExecution(request); return executorService.submit(new java.util.concurrent.Callable() { @Override public SearchUsersByImageResult call() throws Exception { SearchUsersByImageResult result = null; try { result = executeSearchUsersByImage(finalRequest); } catch (Exception ex) { if (asyncHandler != null) { asyncHandler.onError(ex); } throw ex; } if (asyncHandler != null) { asyncHandler.onSuccess(finalRequest, result); } return result; } }); } @Override public java.util.concurrent.Future startCelebrityRecognitionAsync(StartCelebrityRecognitionRequest request) { return startCelebrityRecognitionAsync(request, null); } @Override public java.util.concurrent.Future startCelebrityRecognitionAsync(final StartCelebrityRecognitionRequest request, final com.amazonaws.handlers.AsyncHandler asyncHandler) { final StartCelebrityRecognitionRequest finalRequest = beforeClientExecution(request); return executorService.submit(new java.util.concurrent.Callable() { @Override public StartCelebrityRecognitionResult call() throws Exception { StartCelebrityRecognitionResult result = null; try { result = executeStartCelebrityRecognition(finalRequest); } catch (Exception ex) { if (asyncHandler != null) { asyncHandler.onError(ex); } throw ex; } if (asyncHandler != null) { asyncHandler.onSuccess(finalRequest, result); } return result; } }); } @Override public java.util.concurrent.Future startContentModerationAsync(StartContentModerationRequest request) { return startContentModerationAsync(request, null); } @Override public java.util.concurrent.Future startContentModerationAsync(final StartContentModerationRequest request, final com.amazonaws.handlers.AsyncHandler asyncHandler) { final StartContentModerationRequest finalRequest = beforeClientExecution(request); return executorService.submit(new java.util.concurrent.Callable() { @Override public StartContentModerationResult call() throws Exception { StartContentModerationResult result = null; try { result = executeStartContentModeration(finalRequest); } catch (Exception ex) { if (asyncHandler != null) { asyncHandler.onError(ex); } throw ex; } if (asyncHandler != null) { asyncHandler.onSuccess(finalRequest, result); } return result; } }); } @Override public java.util.concurrent.Future startFaceDetectionAsync(StartFaceDetectionRequest request) { return startFaceDetectionAsync(request, null); } @Override public java.util.concurrent.Future startFaceDetectionAsync(final StartFaceDetectionRequest request, final com.amazonaws.handlers.AsyncHandler asyncHandler) { final StartFaceDetectionRequest finalRequest = beforeClientExecution(request); return executorService.submit(new java.util.concurrent.Callable() { @Override public StartFaceDetectionResult call() throws Exception { StartFaceDetectionResult result = null; try { result = executeStartFaceDetection(finalRequest); } catch (Exception ex) { if (asyncHandler != null) { asyncHandler.onError(ex); } throw ex; } if (asyncHandler != null) { asyncHandler.onSuccess(finalRequest, result); } return result; } }); } @Override public java.util.concurrent.Future startFaceSearchAsync(StartFaceSearchRequest request) { return startFaceSearchAsync(request, null); } @Override public java.util.concurrent.Future startFaceSearchAsync(final StartFaceSearchRequest request, final com.amazonaws.handlers.AsyncHandler asyncHandler) { final StartFaceSearchRequest finalRequest = beforeClientExecution(request); return executorService.submit(new java.util.concurrent.Callable() { @Override public StartFaceSearchResult call() throws Exception { StartFaceSearchResult result = null; try { result = executeStartFaceSearch(finalRequest); } catch (Exception ex) { if (asyncHandler != null) { asyncHandler.onError(ex); } throw ex; } if (asyncHandler != null) { asyncHandler.onSuccess(finalRequest, result); } return result; } }); } @Override public java.util.concurrent.Future startLabelDetectionAsync(StartLabelDetectionRequest request) { return startLabelDetectionAsync(request, null); } @Override public java.util.concurrent.Future startLabelDetectionAsync(final StartLabelDetectionRequest request, final com.amazonaws.handlers.AsyncHandler asyncHandler) { final StartLabelDetectionRequest finalRequest = beforeClientExecution(request); return executorService.submit(new java.util.concurrent.Callable() { @Override public StartLabelDetectionResult call() throws Exception { StartLabelDetectionResult result = null; try { result = executeStartLabelDetection(finalRequest); } catch (Exception ex) { if (asyncHandler != null) { asyncHandler.onError(ex); } throw ex; } if (asyncHandler != null) { asyncHandler.onSuccess(finalRequest, result); } return result; } }); } @Override public java.util.concurrent.Future startPersonTrackingAsync(StartPersonTrackingRequest request) { return startPersonTrackingAsync(request, null); } @Override public java.util.concurrent.Future startPersonTrackingAsync(final StartPersonTrackingRequest request, final com.amazonaws.handlers.AsyncHandler asyncHandler) { final StartPersonTrackingRequest finalRequest = beforeClientExecution(request); return executorService.submit(new java.util.concurrent.Callable() { @Override public StartPersonTrackingResult call() throws Exception { StartPersonTrackingResult result = null; try { result = executeStartPersonTracking(finalRequest); } catch (Exception ex) { if (asyncHandler != null) { asyncHandler.onError(ex); } throw ex; } if (asyncHandler != null) { asyncHandler.onSuccess(finalRequest, result); } return result; } }); } @Override public java.util.concurrent.Future startProjectVersionAsync(StartProjectVersionRequest request) { return startProjectVersionAsync(request, null); } @Override public java.util.concurrent.Future startProjectVersionAsync(final StartProjectVersionRequest request, final com.amazonaws.handlers.AsyncHandler asyncHandler) { final StartProjectVersionRequest finalRequest = beforeClientExecution(request); return executorService.submit(new java.util.concurrent.Callable() { @Override public StartProjectVersionResult call() throws Exception { StartProjectVersionResult result = null; try { result = executeStartProjectVersion(finalRequest); } catch (Exception ex) { if (asyncHandler != null) { asyncHandler.onError(ex); } throw ex; } if (asyncHandler != null) { asyncHandler.onSuccess(finalRequest, result); } return result; } }); } @Override public java.util.concurrent.Future startSegmentDetectionAsync(StartSegmentDetectionRequest request) { return startSegmentDetectionAsync(request, null); } @Override public java.util.concurrent.Future startSegmentDetectionAsync(final StartSegmentDetectionRequest request, final com.amazonaws.handlers.AsyncHandler asyncHandler) { final StartSegmentDetectionRequest finalRequest = beforeClientExecution(request); return executorService.submit(new java.util.concurrent.Callable() { @Override public StartSegmentDetectionResult call() throws Exception { StartSegmentDetectionResult result = null; try { result = executeStartSegmentDetection(finalRequest); } catch (Exception ex) { if (asyncHandler != null) { asyncHandler.onError(ex); } throw ex; } if (asyncHandler != null) { asyncHandler.onSuccess(finalRequest, result); } return result; } }); } @Override public java.util.concurrent.Future startStreamProcessorAsync(StartStreamProcessorRequest request) { return startStreamProcessorAsync(request, null); } @Override public java.util.concurrent.Future startStreamProcessorAsync(final StartStreamProcessorRequest request, final com.amazonaws.handlers.AsyncHandler asyncHandler) { final StartStreamProcessorRequest finalRequest = beforeClientExecution(request); return executorService.submit(new java.util.concurrent.Callable() { @Override public StartStreamProcessorResult call() throws Exception { StartStreamProcessorResult result = null; try { result = executeStartStreamProcessor(finalRequest); } catch (Exception ex) { if (asyncHandler != null) { asyncHandler.onError(ex); } throw ex; } if (asyncHandler != null) { asyncHandler.onSuccess(finalRequest, result); } return result; } }); } @Override public java.util.concurrent.Future startTextDetectionAsync(StartTextDetectionRequest request) { return startTextDetectionAsync(request, null); } @Override public java.util.concurrent.Future startTextDetectionAsync(final StartTextDetectionRequest request, final com.amazonaws.handlers.AsyncHandler asyncHandler) { final StartTextDetectionRequest finalRequest = beforeClientExecution(request); return executorService.submit(new java.util.concurrent.Callable() { @Override public StartTextDetectionResult call() throws Exception { StartTextDetectionResult result = null; try { result = executeStartTextDetection(finalRequest); } catch (Exception ex) { if (asyncHandler != null) { asyncHandler.onError(ex); } throw ex; } if (asyncHandler != null) { asyncHandler.onSuccess(finalRequest, result); } return result; } }); } @Override public java.util.concurrent.Future stopProjectVersionAsync(StopProjectVersionRequest request) { return stopProjectVersionAsync(request, null); } @Override public java.util.concurrent.Future stopProjectVersionAsync(final StopProjectVersionRequest request, final com.amazonaws.handlers.AsyncHandler asyncHandler) { final StopProjectVersionRequest finalRequest = beforeClientExecution(request); return executorService.submit(new java.util.concurrent.Callable() { @Override public StopProjectVersionResult call() throws Exception { StopProjectVersionResult result = null; try { result = executeStopProjectVersion(finalRequest); } catch (Exception ex) { if (asyncHandler != null) { asyncHandler.onError(ex); } throw ex; } if (asyncHandler != null) { asyncHandler.onSuccess(finalRequest, result); } return result; } }); } @Override public java.util.concurrent.Future stopStreamProcessorAsync(StopStreamProcessorRequest request) { return stopStreamProcessorAsync(request, null); } @Override public java.util.concurrent.Future stopStreamProcessorAsync(final StopStreamProcessorRequest request, final com.amazonaws.handlers.AsyncHandler asyncHandler) { final StopStreamProcessorRequest finalRequest = beforeClientExecution(request); return executorService.submit(new java.util.concurrent.Callable() { @Override public StopStreamProcessorResult call() throws Exception { StopStreamProcessorResult result = null; try { result = executeStopStreamProcessor(finalRequest); } catch (Exception ex) { if (asyncHandler != null) { asyncHandler.onError(ex); } throw ex; } if (asyncHandler != null) { asyncHandler.onSuccess(finalRequest, result); } return result; } }); } @Override public java.util.concurrent.Future tagResourceAsync(TagResourceRequest request) { return tagResourceAsync(request, null); } @Override public java.util.concurrent.Future tagResourceAsync(final TagResourceRequest request, final com.amazonaws.handlers.AsyncHandler asyncHandler) { final TagResourceRequest finalRequest = beforeClientExecution(request); return executorService.submit(new java.util.concurrent.Callable() { @Override public TagResourceResult call() throws Exception { TagResourceResult result = null; try { result = executeTagResource(finalRequest); } catch (Exception ex) { if (asyncHandler != null) { asyncHandler.onError(ex); } throw ex; } if (asyncHandler != null) { asyncHandler.onSuccess(finalRequest, result); } return result; } }); } @Override public java.util.concurrent.Future untagResourceAsync(UntagResourceRequest request) { return untagResourceAsync(request, null); } @Override public java.util.concurrent.Future untagResourceAsync(final UntagResourceRequest request, final com.amazonaws.handlers.AsyncHandler asyncHandler) { final UntagResourceRequest finalRequest = beforeClientExecution(request); return executorService.submit(new java.util.concurrent.Callable() { @Override public UntagResourceResult call() throws Exception { UntagResourceResult result = null; try { result = executeUntagResource(finalRequest); } catch (Exception ex) { if (asyncHandler != null) { asyncHandler.onError(ex); } throw ex; } if (asyncHandler != null) { asyncHandler.onSuccess(finalRequest, result); } return result; } }); } @Override public java.util.concurrent.Future updateDatasetEntriesAsync(UpdateDatasetEntriesRequest request) { return updateDatasetEntriesAsync(request, null); } @Override public java.util.concurrent.Future updateDatasetEntriesAsync(final UpdateDatasetEntriesRequest request, final com.amazonaws.handlers.AsyncHandler asyncHandler) { final UpdateDatasetEntriesRequest finalRequest = beforeClientExecution(request); return executorService.submit(new java.util.concurrent.Callable() { @Override public UpdateDatasetEntriesResult call() throws Exception { UpdateDatasetEntriesResult result = null; try { result = executeUpdateDatasetEntries(finalRequest); } catch (Exception ex) { if (asyncHandler != null) { asyncHandler.onError(ex); } throw ex; } if (asyncHandler != null) { asyncHandler.onSuccess(finalRequest, result); } return result; } }); } @Override public java.util.concurrent.Future updateStreamProcessorAsync(UpdateStreamProcessorRequest request) { return updateStreamProcessorAsync(request, null); } @Override public java.util.concurrent.Future updateStreamProcessorAsync(final UpdateStreamProcessorRequest request, final com.amazonaws.handlers.AsyncHandler asyncHandler) { final UpdateStreamProcessorRequest finalRequest = beforeClientExecution(request); return executorService.submit(new java.util.concurrent.Callable() { @Override public UpdateStreamProcessorResult call() throws Exception { UpdateStreamProcessorResult result = null; try { result = executeUpdateStreamProcessor(finalRequest); } catch (Exception ex) { if (asyncHandler != null) { asyncHandler.onError(ex); } throw ex; } if (asyncHandler != null) { asyncHandler.onSuccess(finalRequest, result); } return result; } }); } /** * Shuts down the client, releasing all managed resources. This includes forcibly terminating all pending * asynchronous service calls. Clients who wish to give pending asynchronous service calls time to complete should * call {@code getExecutorService().shutdown()} followed by {@code getExecutorService().awaitTermination()} prior to * calling this method. */ @Override public void shutdown() { super.shutdown(); executorService.shutdownNow(); } }