All Downloads are FREE. Search and download functionalities are using the official Maven repository.

com.amazonaws.services.health.AWSHealthAsyncClient Maven / Gradle / Ivy

Go to download

The AWS Java SDK for AWS Health APIs and Notifications module holds the client classes that are used for communicating with AWS Health APIs and Notifications service.

There is a newer version: 1.12.780
Show newest version
/*
 * Copyright 2017-2022 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.health;

import static java.util.concurrent.Executors.newFixedThreadPool;

import javax.annotation.Generated;

import com.amazonaws.services.health.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 AWSHealth 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.
 * 

* Health *

* The Health API provides programmatic access to the Health information that appears in the Personal Health Dashboard. You can use the API operations to get * information about events that might affect your Amazon Web Services services and resources. *

* *
    *
  • *

    * You must have a Business, Enterprise On-Ramp, or Enterprise Support plan from Amazon Web Services Support to use the Health API. If you call the * Health API from an Amazon Web Services account that doesn't have a Business, Enterprise On-Ramp, or Enterprise * Support plan, you receive a SubscriptionRequiredException error. *

    *
  • *
  • *

    * You can use the Health endpoint health.us-east-1.amazonaws.com (HTTPS) to call the Health API operations. Health * supports a multi-Region application architecture and has two regional endpoints in an active-passive configuration. * You can use the high availability endpoint example to determine which Amazon Web Services Region is active, so that * you can get the latest information from the API. For more information, see Accessing the Health API in the Health * User Guide. *

    *
  • *
*
*

* For authentication of requests, Health uses the Signature Version 4 Signing * Process. *

*

* If your Amazon Web Services account is part of Organizations, you can use the Health organizational view feature. * This feature provides a centralized view of Health events across all accounts in your organization. You can aggregate * Health events in real time to identify accounts in your organization that are affected by an operational event or get * notified of security vulnerabilities. Use the organizational view API operations to enable this feature and return * event information. For more information, see Aggregating Health events in the * Health User Guide. *

* *

* When you use the Health API operations to return Health events, see the following recommendations: *

*
    *
  • *

    * Use the eventScopeCode parameter to specify whether to return Health events that are public or account-specific. *

    *
  • *
  • *

    * Use pagination to view all events from the response. For example, if you call the * DescribeEventsForOrganization operation to get all events in your organization, you might receive * several page results. Specify the nextToken in the next request to return more results. *

    *
  • *
*
*/ @ThreadSafe @Generated("com.amazonaws:aws-java-sdk-code-generator") public class AWSHealthAsyncClient extends AWSHealthClient implements AWSHealthAsync { 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 AWSHealth. A credentials provider chain will be * used that searches for credentials in this order: *
    *
  • Environment Variables - AWS_ACCESS_KEY_ID and AWS_SECRET_KEY
  • *
  • Java System Properties - aws.accessKeyId and aws.secretKey
  • *
  • Credential profiles file at the default location (~/.aws/credentials) shared by all AWS SDKs and the AWS CLI
  • *
  • Instance profile credentials delivered through the Amazon EC2 metadata service
  • *
*

* 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 AWSHealthAsyncClientBuilder#defaultClient()} */ @Deprecated public AWSHealthAsyncClient() { this(DefaultAWSCredentialsProviderChain.getInstance()); } /** * Constructs a new asynchronous client to invoke service methods on AWSHealth. A credentials provider chain will be * used that searches for credentials in this order: *

    *
  • Environment Variables - AWS_ACCESS_KEY_ID and AWS_SECRET_KEY
  • *
  • Java System Properties - aws.accessKeyId and aws.secretKey
  • *
  • Credential profiles file at the default location (~/.aws/credentials) shared by all AWS SDKs and the AWS CLI
  • *
  • Instance profile credentials delivered through the Amazon EC2 metadata service
  • *
*

* 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 AWSHealth (ex: proxy settings, * retry counts, etc). * * @see com.amazonaws.auth.DefaultAWSCredentialsProviderChain * @see java.util.concurrent.Executors#newFixedThreadPool(int) * @deprecated use {@link AWSHealthAsyncClientBuilder#withClientConfiguration(ClientConfiguration)} */ @Deprecated public AWSHealthAsyncClient(ClientConfiguration clientConfiguration) { this(DefaultAWSCredentialsProviderChain.getInstance(), clientConfiguration, newFixedThreadPool(clientConfiguration.getMaxConnections())); } /** * Constructs a new asynchronous client to invoke service methods on AWSHealth 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 AWSHealthAsyncClientBuilder#withCredentials(AWSCredentialsProvider)} */ @Deprecated public AWSHealthAsyncClient(AWSCredentials awsCredentials) { this(awsCredentials, newFixedThreadPool(DEFAULT_THREAD_POOL_SIZE)); } /** * Constructs a new asynchronous client to invoke service methods on AWSHealth 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 AWSHealthAsyncClientBuilder#withCredentials(AWSCredentialsProvider)} and * {@link AWSHealthAsyncClientBuilder#withExecutorFactory(com.amazonaws.client.builder.ExecutorFactory)} */ @Deprecated public AWSHealthAsyncClient(AWSCredentials awsCredentials, ExecutorService executorService) { this(awsCredentials, configFactory.getConfig(), executorService); } /** * Constructs a new asynchronous client to invoke service methods on AWSHealth 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 AWSHealthAsyncClientBuilder#withCredentials(AWSCredentialsProvider)} and * {@link AWSHealthAsyncClientBuilder#withClientConfiguration(ClientConfiguration)} and * {@link AWSHealthAsyncClientBuilder#withExecutorFactory(com.amazonaws.client.builder.ExecutorFactory)} */ @Deprecated public AWSHealthAsyncClient(AWSCredentials awsCredentials, ClientConfiguration clientConfiguration, ExecutorService executorService) { super(awsCredentials, clientConfiguration); this.executorService = executorService; } /** * Constructs a new asynchronous client to invoke service methods on AWSHealth 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 AWSHealthAsyncClientBuilder#withCredentials(AWSCredentialsProvider)} */ @Deprecated public AWSHealthAsyncClient(AWSCredentialsProvider awsCredentialsProvider) { this(awsCredentialsProvider, newFixedThreadPool(DEFAULT_THREAD_POOL_SIZE)); } /** * Constructs a new asynchronous client to invoke service methods on AWSHealth 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 AWSHealthAsyncClientBuilder#withCredentials(AWSCredentialsProvider)} and * {@link AWSHealthAsyncClientBuilder#withClientConfiguration(ClientConfiguration)} */ @Deprecated public AWSHealthAsyncClient(AWSCredentialsProvider awsCredentialsProvider, ClientConfiguration clientConfiguration) { this(awsCredentialsProvider, clientConfiguration, newFixedThreadPool(clientConfiguration.getMaxConnections())); } /** * Constructs a new asynchronous client to invoke service methods on AWSHealth 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 AWSHealthAsyncClientBuilder#withCredentials(AWSCredentialsProvider)} and * {@link AWSHealthAsyncClientBuilder#withExecutorFactory(com.amazonaws.client.builder.ExecutorFactory)} */ @Deprecated public AWSHealthAsyncClient(AWSCredentialsProvider awsCredentialsProvider, ExecutorService executorService) { this(awsCredentialsProvider, configFactory.getConfig(), executorService); } /** * Constructs a new asynchronous client to invoke service methods on AWSHealth 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 AWSHealthAsyncClientBuilder#withCredentials(AWSCredentialsProvider)} and * {@link AWSHealthAsyncClientBuilder#withClientConfiguration(ClientConfiguration)} and * {@link AWSHealthAsyncClientBuilder#withExecutorFactory(com.amazonaws.client.builder.ExecutorFactory)} */ @Deprecated public AWSHealthAsyncClient(AWSCredentialsProvider awsCredentialsProvider, ClientConfiguration clientConfiguration, ExecutorService executorService) { super(awsCredentialsProvider, clientConfiguration); this.executorService = executorService; } public static AWSHealthAsyncClientBuilder asyncBuilder() { return AWSHealthAsyncClientBuilder.standard(); } /** * Constructs a new asynchronous client to invoke service methods on AWSHealth using the specified parameters. * * @param asyncClientParams * Object providing client parameters. */ AWSHealthAsyncClient(AwsAsyncClientParams asyncClientParams) { this(asyncClientParams, false); } /** * Constructs a new asynchronous client to invoke service methods on AWSHealth using the specified parameters. * * @param asyncClientParams * Object providing client parameters. * @param endpointDiscoveryEnabled * true will enable endpoint discovery if the service supports it. */ AWSHealthAsyncClient(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 describeAffectedAccountsForOrganizationAsync( DescribeAffectedAccountsForOrganizationRequest request) { return describeAffectedAccountsForOrganizationAsync(request, null); } @Override public java.util.concurrent.Future describeAffectedAccountsForOrganizationAsync( final DescribeAffectedAccountsForOrganizationRequest request, final com.amazonaws.handlers.AsyncHandler asyncHandler) { final DescribeAffectedAccountsForOrganizationRequest finalRequest = beforeClientExecution(request); return executorService.submit(new java.util.concurrent.Callable() { @Override public DescribeAffectedAccountsForOrganizationResult call() throws Exception { DescribeAffectedAccountsForOrganizationResult result = null; try { result = executeDescribeAffectedAccountsForOrganization(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 describeAffectedEntitiesAsync(DescribeAffectedEntitiesRequest request) { return describeAffectedEntitiesAsync(request, null); } @Override public java.util.concurrent.Future describeAffectedEntitiesAsync(final DescribeAffectedEntitiesRequest request, final com.amazonaws.handlers.AsyncHandler asyncHandler) { final DescribeAffectedEntitiesRequest finalRequest = beforeClientExecution(request); return executorService.submit(new java.util.concurrent.Callable() { @Override public DescribeAffectedEntitiesResult call() throws Exception { DescribeAffectedEntitiesResult result = null; try { result = executeDescribeAffectedEntities(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 describeAffectedEntitiesForOrganizationAsync( DescribeAffectedEntitiesForOrganizationRequest request) { return describeAffectedEntitiesForOrganizationAsync(request, null); } @Override public java.util.concurrent.Future describeAffectedEntitiesForOrganizationAsync( final DescribeAffectedEntitiesForOrganizationRequest request, final com.amazonaws.handlers.AsyncHandler asyncHandler) { final DescribeAffectedEntitiesForOrganizationRequest finalRequest = beforeClientExecution(request); return executorService.submit(new java.util.concurrent.Callable() { @Override public DescribeAffectedEntitiesForOrganizationResult call() throws Exception { DescribeAffectedEntitiesForOrganizationResult result = null; try { result = executeDescribeAffectedEntitiesForOrganization(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 describeEntityAggregatesAsync(DescribeEntityAggregatesRequest request) { return describeEntityAggregatesAsync(request, null); } @Override public java.util.concurrent.Future describeEntityAggregatesAsync(final DescribeEntityAggregatesRequest request, final com.amazonaws.handlers.AsyncHandler asyncHandler) { final DescribeEntityAggregatesRequest finalRequest = beforeClientExecution(request); return executorService.submit(new java.util.concurrent.Callable() { @Override public DescribeEntityAggregatesResult call() throws Exception { DescribeEntityAggregatesResult result = null; try { result = executeDescribeEntityAggregates(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 describeEventAggregatesAsync(DescribeEventAggregatesRequest request) { return describeEventAggregatesAsync(request, null); } @Override public java.util.concurrent.Future describeEventAggregatesAsync(final DescribeEventAggregatesRequest request, final com.amazonaws.handlers.AsyncHandler asyncHandler) { final DescribeEventAggregatesRequest finalRequest = beforeClientExecution(request); return executorService.submit(new java.util.concurrent.Callable() { @Override public DescribeEventAggregatesResult call() throws Exception { DescribeEventAggregatesResult result = null; try { result = executeDescribeEventAggregates(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 describeEventDetailsAsync(DescribeEventDetailsRequest request) { return describeEventDetailsAsync(request, null); } @Override public java.util.concurrent.Future describeEventDetailsAsync(final DescribeEventDetailsRequest request, final com.amazonaws.handlers.AsyncHandler asyncHandler) { final DescribeEventDetailsRequest finalRequest = beforeClientExecution(request); return executorService.submit(new java.util.concurrent.Callable() { @Override public DescribeEventDetailsResult call() throws Exception { DescribeEventDetailsResult result = null; try { result = executeDescribeEventDetails(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 describeEventDetailsForOrganizationAsync( DescribeEventDetailsForOrganizationRequest request) { return describeEventDetailsForOrganizationAsync(request, null); } @Override public java.util.concurrent.Future describeEventDetailsForOrganizationAsync( final DescribeEventDetailsForOrganizationRequest request, final com.amazonaws.handlers.AsyncHandler asyncHandler) { final DescribeEventDetailsForOrganizationRequest finalRequest = beforeClientExecution(request); return executorService.submit(new java.util.concurrent.Callable() { @Override public DescribeEventDetailsForOrganizationResult call() throws Exception { DescribeEventDetailsForOrganizationResult result = null; try { result = executeDescribeEventDetailsForOrganization(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 describeEventTypesAsync(DescribeEventTypesRequest request) { return describeEventTypesAsync(request, null); } @Override public java.util.concurrent.Future describeEventTypesAsync(final DescribeEventTypesRequest request, final com.amazonaws.handlers.AsyncHandler asyncHandler) { final DescribeEventTypesRequest finalRequest = beforeClientExecution(request); return executorService.submit(new java.util.concurrent.Callable() { @Override public DescribeEventTypesResult call() throws Exception { DescribeEventTypesResult result = null; try { result = executeDescribeEventTypes(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 describeEventsAsync(DescribeEventsRequest request) { return describeEventsAsync(request, null); } @Override public java.util.concurrent.Future describeEventsAsync(final DescribeEventsRequest request, final com.amazonaws.handlers.AsyncHandler asyncHandler) { final DescribeEventsRequest finalRequest = beforeClientExecution(request); return executorService.submit(new java.util.concurrent.Callable() { @Override public DescribeEventsResult call() throws Exception { DescribeEventsResult result = null; try { result = executeDescribeEvents(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 describeEventsForOrganizationAsync(DescribeEventsForOrganizationRequest request) { return describeEventsForOrganizationAsync(request, null); } @Override public java.util.concurrent.Future describeEventsForOrganizationAsync( final DescribeEventsForOrganizationRequest request, final com.amazonaws.handlers.AsyncHandler asyncHandler) { final DescribeEventsForOrganizationRequest finalRequest = beforeClientExecution(request); return executorService.submit(new java.util.concurrent.Callable() { @Override public DescribeEventsForOrganizationResult call() throws Exception { DescribeEventsForOrganizationResult result = null; try { result = executeDescribeEventsForOrganization(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 describeHealthServiceStatusForOrganizationAsync( DescribeHealthServiceStatusForOrganizationRequest request) { return describeHealthServiceStatusForOrganizationAsync(request, null); } @Override public java.util.concurrent.Future describeHealthServiceStatusForOrganizationAsync( final DescribeHealthServiceStatusForOrganizationRequest request, final com.amazonaws.handlers.AsyncHandler asyncHandler) { final DescribeHealthServiceStatusForOrganizationRequest finalRequest = beforeClientExecution(request); return executorService.submit(new java.util.concurrent.Callable() { @Override public DescribeHealthServiceStatusForOrganizationResult call() throws Exception { DescribeHealthServiceStatusForOrganizationResult result = null; try { result = executeDescribeHealthServiceStatusForOrganization(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 disableHealthServiceAccessForOrganizationAsync( DisableHealthServiceAccessForOrganizationRequest request) { return disableHealthServiceAccessForOrganizationAsync(request, null); } @Override public java.util.concurrent.Future disableHealthServiceAccessForOrganizationAsync( final DisableHealthServiceAccessForOrganizationRequest request, final com.amazonaws.handlers.AsyncHandler asyncHandler) { final DisableHealthServiceAccessForOrganizationRequest finalRequest = beforeClientExecution(request); return executorService.submit(new java.util.concurrent.Callable() { @Override public DisableHealthServiceAccessForOrganizationResult call() throws Exception { DisableHealthServiceAccessForOrganizationResult result = null; try { result = executeDisableHealthServiceAccessForOrganization(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 enableHealthServiceAccessForOrganizationAsync( EnableHealthServiceAccessForOrganizationRequest request) { return enableHealthServiceAccessForOrganizationAsync(request, null); } @Override public java.util.concurrent.Future enableHealthServiceAccessForOrganizationAsync( final EnableHealthServiceAccessForOrganizationRequest request, final com.amazonaws.handlers.AsyncHandler asyncHandler) { final EnableHealthServiceAccessForOrganizationRequest finalRequest = beforeClientExecution(request); return executorService.submit(new java.util.concurrent.Callable() { @Override public EnableHealthServiceAccessForOrganizationResult call() throws Exception { EnableHealthServiceAccessForOrganizationResult result = null; try { result = executeEnableHealthServiceAccessForOrganization(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(); } }





© 2015 - 2025 Weber Informatics LLC | Privacy Policy