/* * 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.mainframemodernization; import javax.annotation.Generated; import com.amazonaws.services.mainframemodernization.model.*; import com.amazonaws.client.AwsAsyncClientParams; import com.amazonaws.annotation.ThreadSafe; import java.util.concurrent.ExecutorService; /** * Client for accessing AWSMainframeModernization 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. *

*

* Amazon Web Services Mainframe Modernization provides tools and resources to help you plan and implement migration and * modernization from mainframes to Amazon Web Services managed runtime environments. It provides tools for analyzing * existing mainframe applications, developing or updating mainframe applications using COBOL or PL/I, and implementing * an automated pipeline for continuous integration and continuous delivery (CI/CD) of the applications. *

*/ @ThreadSafe @Generated("com.amazonaws:aws-java-sdk-code-generator") public class AWSMainframeModernizationAsyncClient extends AWSMainframeModernizationClient implements AWSMainframeModernizationAsync { private static final int DEFAULT_THREAD_POOL_SIZE = 50; private final java.util.concurrent.ExecutorService executorService; public static AWSMainframeModernizationAsyncClientBuilder asyncBuilder() { return AWSMainframeModernizationAsyncClientBuilder.standard(); } /** * Constructs a new asynchronous client to invoke service methods on AWSMainframeModernization using the specified * parameters. * * @param asyncClientParams * Object providing client parameters. */ AWSMainframeModernizationAsyncClient(AwsAsyncClientParams asyncClientParams) { this(asyncClientParams, false); } /** * Constructs a new asynchronous client to invoke service methods on AWSMainframeModernization using the specified * parameters. * * @param asyncClientParams * Object providing client parameters. * @param endpointDiscoveryEnabled * true will enable endpoint discovery if the service supports it. */ AWSMainframeModernizationAsyncClient(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 cancelBatchJobExecutionAsync(CancelBatchJobExecutionRequest request) { return cancelBatchJobExecutionAsync(request, null); } @Override public java.util.concurrent.Future cancelBatchJobExecutionAsync(final CancelBatchJobExecutionRequest request, final com.amazonaws.handlers.AsyncHandler asyncHandler) { final CancelBatchJobExecutionRequest finalRequest = beforeClientExecution(request); return executorService.submit(new java.util.concurrent.Callable() { @Override public CancelBatchJobExecutionResult call() throws Exception { CancelBatchJobExecutionResult result = null; try { result = executeCancelBatchJobExecution(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 createApplicationAsync(CreateApplicationRequest request) { return createApplicationAsync(request, null); } @Override public java.util.concurrent.Future createApplicationAsync(final CreateApplicationRequest request, final com.amazonaws.handlers.AsyncHandler asyncHandler) { final CreateApplicationRequest finalRequest = beforeClientExecution(request); return executorService.submit(new java.util.concurrent.Callable() { @Override public CreateApplicationResult call() throws Exception { CreateApplicationResult result = null; try { result = executeCreateApplication(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 createDataSetImportTaskAsync(CreateDataSetImportTaskRequest request) { return createDataSetImportTaskAsync(request, null); } @Override public java.util.concurrent.Future createDataSetImportTaskAsync(final CreateDataSetImportTaskRequest request, final com.amazonaws.handlers.AsyncHandler asyncHandler) { final CreateDataSetImportTaskRequest finalRequest = beforeClientExecution(request); return executorService.submit(new java.util.concurrent.Callable() { @Override public CreateDataSetImportTaskResult call() throws Exception { CreateDataSetImportTaskResult result = null; try { result = executeCreateDataSetImportTask(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 createDeploymentAsync(CreateDeploymentRequest request) { return createDeploymentAsync(request, null); } @Override public java.util.concurrent.Future createDeploymentAsync(final CreateDeploymentRequest request, final com.amazonaws.handlers.AsyncHandler asyncHandler) { final CreateDeploymentRequest finalRequest = beforeClientExecution(request); return executorService.submit(new java.util.concurrent.Callable() { @Override public CreateDeploymentResult call() throws Exception { CreateDeploymentResult result = null; try { result = executeCreateDeployment(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 createEnvironmentAsync(CreateEnvironmentRequest request) { return createEnvironmentAsync(request, null); } @Override public java.util.concurrent.Future createEnvironmentAsync(final CreateEnvironmentRequest request, final com.amazonaws.handlers.AsyncHandler asyncHandler) { final CreateEnvironmentRequest finalRequest = beforeClientExecution(request); return executorService.submit(new java.util.concurrent.Callable() { @Override public CreateEnvironmentResult call() throws Exception { CreateEnvironmentResult result = null; try { result = executeCreateEnvironment(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 deleteApplicationAsync(DeleteApplicationRequest request) { return deleteApplicationAsync(request, null); } @Override public java.util.concurrent.Future deleteApplicationAsync(final DeleteApplicationRequest request, final com.amazonaws.handlers.AsyncHandler asyncHandler) { final DeleteApplicationRequest finalRequest = beforeClientExecution(request); return executorService.submit(new java.util.concurrent.Callable() { @Override public DeleteApplicationResult call() throws Exception { DeleteApplicationResult result = null; try { result = executeDeleteApplication(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 deleteApplicationFromEnvironmentAsync( DeleteApplicationFromEnvironmentRequest request) { return deleteApplicationFromEnvironmentAsync(request, null); } @Override public java.util.concurrent.Future deleteApplicationFromEnvironmentAsync( final DeleteApplicationFromEnvironmentRequest request, final com.amazonaws.handlers.AsyncHandler asyncHandler) { final DeleteApplicationFromEnvironmentRequest finalRequest = beforeClientExecution(request); return executorService.submit(new java.util.concurrent.Callable() { @Override public DeleteApplicationFromEnvironmentResult call() throws Exception { DeleteApplicationFromEnvironmentResult result = null; try { result = executeDeleteApplicationFromEnvironment(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 deleteEnvironmentAsync(DeleteEnvironmentRequest request) { return deleteEnvironmentAsync(request, null); } @Override public java.util.concurrent.Future deleteEnvironmentAsync(final DeleteEnvironmentRequest request, final com.amazonaws.handlers.AsyncHandler asyncHandler) { final DeleteEnvironmentRequest finalRequest = beforeClientExecution(request); return executorService.submit(new java.util.concurrent.Callable() { @Override public DeleteEnvironmentResult call() throws Exception { DeleteEnvironmentResult result = null; try { result = executeDeleteEnvironment(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 getApplicationAsync(GetApplicationRequest request) { return getApplicationAsync(request, null); } @Override public java.util.concurrent.Future getApplicationAsync(final GetApplicationRequest request, final com.amazonaws.handlers.AsyncHandler asyncHandler) { final GetApplicationRequest finalRequest = beforeClientExecution(request); return executorService.submit(new java.util.concurrent.Callable() { @Override public GetApplicationResult call() throws Exception { GetApplicationResult result = null; try { result = executeGetApplication(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 getApplicationVersionAsync(GetApplicationVersionRequest request) { return getApplicationVersionAsync(request, null); } @Override public java.util.concurrent.Future getApplicationVersionAsync(final GetApplicationVersionRequest request, final com.amazonaws.handlers.AsyncHandler asyncHandler) { final GetApplicationVersionRequest finalRequest = beforeClientExecution(request); return executorService.submit(new java.util.concurrent.Callable() { @Override public GetApplicationVersionResult call() throws Exception { GetApplicationVersionResult result = null; try { result = executeGetApplicationVersion(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 getBatchJobExecutionAsync(GetBatchJobExecutionRequest request) { return getBatchJobExecutionAsync(request, null); } @Override public java.util.concurrent.Future getBatchJobExecutionAsync(final GetBatchJobExecutionRequest request, final com.amazonaws.handlers.AsyncHandler asyncHandler) { final GetBatchJobExecutionRequest finalRequest = beforeClientExecution(request); return executorService.submit(new java.util.concurrent.Callable() { @Override public GetBatchJobExecutionResult call() throws Exception { GetBatchJobExecutionResult result = null; try { result = executeGetBatchJobExecution(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 getDataSetDetailsAsync(GetDataSetDetailsRequest request) { return getDataSetDetailsAsync(request, null); } @Override public java.util.concurrent.Future getDataSetDetailsAsync(final GetDataSetDetailsRequest request, final com.amazonaws.handlers.AsyncHandler asyncHandler) { final GetDataSetDetailsRequest finalRequest = beforeClientExecution(request); return executorService.submit(new java.util.concurrent.Callable() { @Override public GetDataSetDetailsResult call() throws Exception { GetDataSetDetailsResult result = null; try { result = executeGetDataSetDetails(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 getDataSetImportTaskAsync(GetDataSetImportTaskRequest request) { return getDataSetImportTaskAsync(request, null); } @Override public java.util.concurrent.Future getDataSetImportTaskAsync(final GetDataSetImportTaskRequest request, final com.amazonaws.handlers.AsyncHandler asyncHandler) { final GetDataSetImportTaskRequest finalRequest = beforeClientExecution(request); return executorService.submit(new java.util.concurrent.Callable() { @Override public GetDataSetImportTaskResult call() throws Exception { GetDataSetImportTaskResult result = null; try { result = executeGetDataSetImportTask(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 getDeploymentAsync(GetDeploymentRequest request) { return getDeploymentAsync(request, null); } @Override public java.util.concurrent.Future getDeploymentAsync(final GetDeploymentRequest request, final com.amazonaws.handlers.AsyncHandler asyncHandler) { final GetDeploymentRequest finalRequest = beforeClientExecution(request); return executorService.submit(new java.util.concurrent.Callable() { @Override public GetDeploymentResult call() throws Exception { GetDeploymentResult result = null; try { result = executeGetDeployment(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 getEnvironmentAsync(GetEnvironmentRequest request) { return getEnvironmentAsync(request, null); } @Override public java.util.concurrent.Future getEnvironmentAsync(final GetEnvironmentRequest request, final com.amazonaws.handlers.AsyncHandler asyncHandler) { final GetEnvironmentRequest finalRequest = beforeClientExecution(request); return executorService.submit(new java.util.concurrent.Callable() { @Override public GetEnvironmentResult call() throws Exception { GetEnvironmentResult result = null; try { result = executeGetEnvironment(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 getSignedBluinsightsUrlAsync(GetSignedBluinsightsUrlRequest request) { return getSignedBluinsightsUrlAsync(request, null); } @Override public java.util.concurrent.Future getSignedBluinsightsUrlAsync(final GetSignedBluinsightsUrlRequest request, final com.amazonaws.handlers.AsyncHandler asyncHandler) { final GetSignedBluinsightsUrlRequest finalRequest = beforeClientExecution(request); return executorService.submit(new java.util.concurrent.Callable() { @Override public GetSignedBluinsightsUrlResult call() throws Exception { GetSignedBluinsightsUrlResult result = null; try { result = executeGetSignedBluinsightsUrl(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 listApplicationVersionsAsync(ListApplicationVersionsRequest request) { return listApplicationVersionsAsync(request, null); } @Override public java.util.concurrent.Future listApplicationVersionsAsync(final ListApplicationVersionsRequest request, final com.amazonaws.handlers.AsyncHandler asyncHandler) { final ListApplicationVersionsRequest finalRequest = beforeClientExecution(request); return executorService.submit(new java.util.concurrent.Callable() { @Override public ListApplicationVersionsResult call() throws Exception { ListApplicationVersionsResult result = null; try { result = executeListApplicationVersions(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 listApplicationsAsync(ListApplicationsRequest request) { return listApplicationsAsync(request, null); } @Override public java.util.concurrent.Future listApplicationsAsync(final ListApplicationsRequest request, final com.amazonaws.handlers.AsyncHandler asyncHandler) { final ListApplicationsRequest finalRequest = beforeClientExecution(request); return executorService.submit(new java.util.concurrent.Callable() { @Override public ListApplicationsResult call() throws Exception { ListApplicationsResult result = null; try { result = executeListApplications(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 listBatchJobDefinitionsAsync(ListBatchJobDefinitionsRequest request) { return listBatchJobDefinitionsAsync(request, null); } @Override public java.util.concurrent.Future listBatchJobDefinitionsAsync(final ListBatchJobDefinitionsRequest request, final com.amazonaws.handlers.AsyncHandler asyncHandler) { final ListBatchJobDefinitionsRequest finalRequest = beforeClientExecution(request); return executorService.submit(new java.util.concurrent.Callable() { @Override public ListBatchJobDefinitionsResult call() throws Exception { ListBatchJobDefinitionsResult result = null; try { result = executeListBatchJobDefinitions(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 listBatchJobExecutionsAsync(ListBatchJobExecutionsRequest request) { return listBatchJobExecutionsAsync(request, null); } @Override public java.util.concurrent.Future listBatchJobExecutionsAsync(final ListBatchJobExecutionsRequest request, final com.amazonaws.handlers.AsyncHandler asyncHandler) { final ListBatchJobExecutionsRequest finalRequest = beforeClientExecution(request); return executorService.submit(new java.util.concurrent.Callable() { @Override public ListBatchJobExecutionsResult call() throws Exception { ListBatchJobExecutionsResult result = null; try { result = executeListBatchJobExecutions(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 listDataSetImportHistoryAsync(ListDataSetImportHistoryRequest request) { return listDataSetImportHistoryAsync(request, null); } @Override public java.util.concurrent.Future listDataSetImportHistoryAsync(final ListDataSetImportHistoryRequest request, final com.amazonaws.handlers.AsyncHandler asyncHandler) { final ListDataSetImportHistoryRequest finalRequest = beforeClientExecution(request); return executorService.submit(new java.util.concurrent.Callable() { @Override public ListDataSetImportHistoryResult call() throws Exception { ListDataSetImportHistoryResult result = null; try { result = executeListDataSetImportHistory(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 listDataSetsAsync(ListDataSetsRequest request) { return listDataSetsAsync(request, null); } @Override public java.util.concurrent.Future listDataSetsAsync(final ListDataSetsRequest request, final com.amazonaws.handlers.AsyncHandler asyncHandler) { final ListDataSetsRequest finalRequest = beforeClientExecution(request); return executorService.submit(new java.util.concurrent.Callable() { @Override public ListDataSetsResult call() throws Exception { ListDataSetsResult result = null; try { result = executeListDataSets(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 listDeploymentsAsync(ListDeploymentsRequest request) { return listDeploymentsAsync(request, null); } @Override public java.util.concurrent.Future listDeploymentsAsync(final ListDeploymentsRequest request, final com.amazonaws.handlers.AsyncHandler asyncHandler) { final ListDeploymentsRequest finalRequest = beforeClientExecution(request); return executorService.submit(new java.util.concurrent.Callable() { @Override public ListDeploymentsResult call() throws Exception { ListDeploymentsResult result = null; try { result = executeListDeployments(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 listEngineVersionsAsync(ListEngineVersionsRequest request) { return listEngineVersionsAsync(request, null); } @Override public java.util.concurrent.Future listEngineVersionsAsync(final ListEngineVersionsRequest request, final com.amazonaws.handlers.AsyncHandler asyncHandler) { final ListEngineVersionsRequest finalRequest = beforeClientExecution(request); return executorService.submit(new java.util.concurrent.Callable() { @Override public ListEngineVersionsResult call() throws Exception { ListEngineVersionsResult result = null; try { result = executeListEngineVersions(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 listEnvironmentsAsync(ListEnvironmentsRequest request) { return listEnvironmentsAsync(request, null); } @Override public java.util.concurrent.Future listEnvironmentsAsync(final ListEnvironmentsRequest request, final com.amazonaws.handlers.AsyncHandler asyncHandler) { final ListEnvironmentsRequest finalRequest = beforeClientExecution(request); return executorService.submit(new java.util.concurrent.Callable() { @Override public ListEnvironmentsResult call() throws Exception { ListEnvironmentsResult result = null; try { result = executeListEnvironments(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 startApplicationAsync(StartApplicationRequest request) { return startApplicationAsync(request, null); } @Override public java.util.concurrent.Future startApplicationAsync(final StartApplicationRequest request, final com.amazonaws.handlers.AsyncHandler asyncHandler) { final StartApplicationRequest finalRequest = beforeClientExecution(request); return executorService.submit(new java.util.concurrent.Callable() { @Override public StartApplicationResult call() throws Exception { StartApplicationResult result = null; try { result = executeStartApplication(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 startBatchJobAsync(StartBatchJobRequest request) { return startBatchJobAsync(request, null); } @Override public java.util.concurrent.Future startBatchJobAsync(final StartBatchJobRequest request, final com.amazonaws.handlers.AsyncHandler asyncHandler) { final StartBatchJobRequest finalRequest = beforeClientExecution(request); return executorService.submit(new java.util.concurrent.Callable() { @Override public StartBatchJobResult call() throws Exception { StartBatchJobResult result = null; try { result = executeStartBatchJob(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 stopApplicationAsync(StopApplicationRequest request) { return stopApplicationAsync(request, null); } @Override public java.util.concurrent.Future stopApplicationAsync(final StopApplicationRequest request, final com.amazonaws.handlers.AsyncHandler asyncHandler) { final StopApplicationRequest finalRequest = beforeClientExecution(request); return executorService.submit(new java.util.concurrent.Callable() { @Override public StopApplicationResult call() throws Exception { StopApplicationResult result = null; try { result = executeStopApplication(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 updateApplicationAsync(UpdateApplicationRequest request) { return updateApplicationAsync(request, null); } @Override public java.util.concurrent.Future updateApplicationAsync(final UpdateApplicationRequest request, final com.amazonaws.handlers.AsyncHandler asyncHandler) { final UpdateApplicationRequest finalRequest = beforeClientExecution(request); return executorService.submit(new java.util.concurrent.Callable() { @Override public UpdateApplicationResult call() throws Exception { UpdateApplicationResult result = null; try { result = executeUpdateApplication(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 updateEnvironmentAsync(UpdateEnvironmentRequest request) { return updateEnvironmentAsync(request, null); } @Override public java.util.concurrent.Future updateEnvironmentAsync(final UpdateEnvironmentRequest request, final com.amazonaws.handlers.AsyncHandler asyncHandler) { final UpdateEnvironmentRequest finalRequest = beforeClientExecution(request); return executorService.submit(new java.util.concurrent.Callable() { @Override public UpdateEnvironmentResult call() throws Exception { UpdateEnvironmentResult result = null; try { result = executeUpdateEnvironment(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(); } }