com.amazonaws.services.elasticloadbalancing.AmazonElasticLoadBalancingAsyncClient Maven / Gradle / Ivy
/*
* Copyright 2011-2016 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.elasticloadbalancing;
import com.amazonaws.services.elasticloadbalancing.model.*;
import com.amazonaws.client.AwsAsyncClientParams;
import com.amazonaws.annotation.ThreadSafe;
/**
* Client for accessing Elastic Load Balancing 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.
*
* Elastic Load Balancing
*
* A load balancer distributes incoming traffic across your EC2 instances. This enables you to increase the availability
* of your application. The load balancer also monitors the health of its registered instances and ensures that it
* routes traffic only to healthy instances. You configure your load balancer to accept incoming traffic by specifying
* one or more listeners, which are configured with a protocol and port number for connections from clients to the load
* balancer and a protocol and port number for connections from the load balancer to the instances.
*
*
* Elastic Load Balancing supports two types of load balancers: Classic load balancers and Application load balancers
* (new). A Classic load balancer makes routing and load balancing decisions either at the transport layer (TCP/SSL) or
* the application layer (HTTP/HTTPS), and supports either EC2-Classic or a VPC. An Application load balancer makes
* routing and load balancing decisions at the application layer (HTTP/HTTPS), supports path-based routing, and can
* route requests to one or more ports on each EC2 instance or container instance in your virtual private cloud (VPC).
* For more information, see the .
*
*
* This reference covers the 2012-06-01 API, which supports Classic load balancers. The 2015-12-01 API supports
* Application load balancers.
*
*
* To get started, create a load balancer with one or more listeners using CreateLoadBalancer. Register your
* instances with the load balancer using RegisterInstancesWithLoadBalancer.
*
*
* All Elastic Load Balancing operations are idempotent, which means that they complete at most one time. If you
* repeat an operation, it succeeds with a 200 OK response code.
*
*/
@ThreadSafe
public class AmazonElasticLoadBalancingAsyncClient extends AmazonElasticLoadBalancingClient implements AmazonElasticLoadBalancingAsync {
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 Elastic Load Balancing. 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)
*/
public AmazonElasticLoadBalancingAsyncClient() {
this(com.amazonaws.auth.DefaultAWSCredentialsProviderChain.getInstance());
}
/**
* Constructs a new asynchronous client to invoke service methods on Elastic Load Balancing. 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 Elastic Load Balancing (ex: proxy
* settings, retry counts, etc).
*
* @see com.amazonaws.auth.DefaultAWSCredentialsProviderChain
* @see java.util.concurrent.Executors#newFixedThreadPool(int)
*/
public AmazonElasticLoadBalancingAsyncClient(com.amazonaws.ClientConfiguration clientConfiguration) {
this(com.amazonaws.auth.DefaultAWSCredentialsProviderChain.getInstance(), clientConfiguration, java.util.concurrent.Executors
.newFixedThreadPool(clientConfiguration.getMaxConnections()));
}
/**
* Constructs a new asynchronous client to invoke service methods on Elastic Load Balancing 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)
*/
public AmazonElasticLoadBalancingAsyncClient(com.amazonaws.auth.AWSCredentials awsCredentials) {
this(awsCredentials, java.util.concurrent.Executors.newFixedThreadPool(DEFAULT_THREAD_POOL_SIZE));
}
/**
* Constructs a new asynchronous client to invoke service methods on Elastic Load Balancing 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.
*/
public AmazonElasticLoadBalancingAsyncClient(com.amazonaws.auth.AWSCredentials awsCredentials, java.util.concurrent.ExecutorService executorService) {
this(awsCredentials, configFactory.getConfig(), executorService);
}
/**
* Constructs a new asynchronous client to invoke service methods on Elastic Load Balancing 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.
*/
public AmazonElasticLoadBalancingAsyncClient(com.amazonaws.auth.AWSCredentials awsCredentials, com.amazonaws.ClientConfiguration clientConfiguration,
java.util.concurrent.ExecutorService executorService) {
super(awsCredentials, clientConfiguration);
this.executorService = executorService;
}
/**
* Constructs a new asynchronous client to invoke service methods on Elastic Load Balancing 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)
*/
public AmazonElasticLoadBalancingAsyncClient(com.amazonaws.auth.AWSCredentialsProvider awsCredentialsProvider) {
this(awsCredentialsProvider, java.util.concurrent.Executors.newFixedThreadPool(DEFAULT_THREAD_POOL_SIZE));
}
/**
* Constructs a new asynchronous client to invoke service methods on Elastic Load Balancing 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)
*/
public AmazonElasticLoadBalancingAsyncClient(com.amazonaws.auth.AWSCredentialsProvider awsCredentialsProvider,
com.amazonaws.ClientConfiguration clientConfiguration) {
this(awsCredentialsProvider, clientConfiguration, java.util.concurrent.Executors.newFixedThreadPool(clientConfiguration.getMaxConnections()));
}
/**
* Constructs a new asynchronous client to invoke service methods on Elastic Load Balancing 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.
*/
public AmazonElasticLoadBalancingAsyncClient(com.amazonaws.auth.AWSCredentialsProvider awsCredentialsProvider,
java.util.concurrent.ExecutorService executorService) {
this(awsCredentialsProvider, configFactory.getConfig(), executorService);
}
/**
* Constructs a new asynchronous client to invoke service methods on Elastic Load Balancing 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.
*/
public AmazonElasticLoadBalancingAsyncClient(com.amazonaws.auth.AWSCredentialsProvider awsCredentialsProvider,
com.amazonaws.ClientConfiguration clientConfiguration, java.util.concurrent.ExecutorService executorService) {
super(awsCredentialsProvider, clientConfiguration);
this.executorService = executorService;
}
/**
* Constructs a new asynchronous client to invoke service methods on Elastic Load Balancing using the specified
* parameters.
*
* @param asyncClientParams
* Object providing client parameters.
*/
AmazonElasticLoadBalancingAsyncClient(AwsAsyncClientParams asyncClientParams) {
super(asyncClientParams);
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 java.util.concurrent.ExecutorService getExecutorService() {
return executorService;
}
@Override
public java.util.concurrent.Future addTagsAsync(AddTagsRequest request) {
return addTagsAsync(request, null);
}
@Override
public java.util.concurrent.Future addTagsAsync(final AddTagsRequest request,
final com.amazonaws.handlers.AsyncHandler asyncHandler) {
return executorService.submit(new java.util.concurrent.Callable() {
@Override
public AddTagsResult call() throws Exception {
AddTagsResult result;
try {
result = addTags(request);
} catch (Exception ex) {
if (asyncHandler != null) {
asyncHandler.onError(ex);
}
throw ex;
}
if (asyncHandler != null) {
asyncHandler.onSuccess(request, result);
}
return result;
}
});
}
@Override
public java.util.concurrent.Future applySecurityGroupsToLoadBalancerAsync(
ApplySecurityGroupsToLoadBalancerRequest request) {
return applySecurityGroupsToLoadBalancerAsync(request, null);
}
@Override
public java.util.concurrent.Future applySecurityGroupsToLoadBalancerAsync(
final ApplySecurityGroupsToLoadBalancerRequest request,
final com.amazonaws.handlers.AsyncHandler asyncHandler) {
return executorService.submit(new java.util.concurrent.Callable() {
@Override
public ApplySecurityGroupsToLoadBalancerResult call() throws Exception {
ApplySecurityGroupsToLoadBalancerResult result;
try {
result = applySecurityGroupsToLoadBalancer(request);
} catch (Exception ex) {
if (asyncHandler != null) {
asyncHandler.onError(ex);
}
throw ex;
}
if (asyncHandler != null) {
asyncHandler.onSuccess(request, result);
}
return result;
}
});
}
@Override
public java.util.concurrent.Future attachLoadBalancerToSubnetsAsync(AttachLoadBalancerToSubnetsRequest request) {
return attachLoadBalancerToSubnetsAsync(request, null);
}
@Override
public java.util.concurrent.Future attachLoadBalancerToSubnetsAsync(final AttachLoadBalancerToSubnetsRequest request,
final com.amazonaws.handlers.AsyncHandler asyncHandler) {
return executorService.submit(new java.util.concurrent.Callable() {
@Override
public AttachLoadBalancerToSubnetsResult call() throws Exception {
AttachLoadBalancerToSubnetsResult result;
try {
result = attachLoadBalancerToSubnets(request);
} catch (Exception ex) {
if (asyncHandler != null) {
asyncHandler.onError(ex);
}
throw ex;
}
if (asyncHandler != null) {
asyncHandler.onSuccess(request, result);
}
return result;
}
});
}
@Override
public java.util.concurrent.Future configureHealthCheckAsync(ConfigureHealthCheckRequest request) {
return configureHealthCheckAsync(request, null);
}
@Override
public java.util.concurrent.Future configureHealthCheckAsync(final ConfigureHealthCheckRequest request,
final com.amazonaws.handlers.AsyncHandler asyncHandler) {
return executorService.submit(new java.util.concurrent.Callable() {
@Override
public ConfigureHealthCheckResult call() throws Exception {
ConfigureHealthCheckResult result;
try {
result = configureHealthCheck(request);
} catch (Exception ex) {
if (asyncHandler != null) {
asyncHandler.onError(ex);
}
throw ex;
}
if (asyncHandler != null) {
asyncHandler.onSuccess(request, result);
}
return result;
}
});
}
@Override
public java.util.concurrent.Future createAppCookieStickinessPolicyAsync(
CreateAppCookieStickinessPolicyRequest request) {
return createAppCookieStickinessPolicyAsync(request, null);
}
@Override
public java.util.concurrent.Future createAppCookieStickinessPolicyAsync(
final CreateAppCookieStickinessPolicyRequest request,
final com.amazonaws.handlers.AsyncHandler asyncHandler) {
return executorService.submit(new java.util.concurrent.Callable() {
@Override
public CreateAppCookieStickinessPolicyResult call() throws Exception {
CreateAppCookieStickinessPolicyResult result;
try {
result = createAppCookieStickinessPolicy(request);
} catch (Exception ex) {
if (asyncHandler != null) {
asyncHandler.onError(ex);
}
throw ex;
}
if (asyncHandler != null) {
asyncHandler.onSuccess(request, result);
}
return result;
}
});
}
@Override
public java.util.concurrent.Future createLBCookieStickinessPolicyAsync(CreateLBCookieStickinessPolicyRequest request) {
return createLBCookieStickinessPolicyAsync(request, null);
}
@Override
public java.util.concurrent.Future createLBCookieStickinessPolicyAsync(
final CreateLBCookieStickinessPolicyRequest request,
final com.amazonaws.handlers.AsyncHandler asyncHandler) {
return executorService.submit(new java.util.concurrent.Callable() {
@Override
public CreateLBCookieStickinessPolicyResult call() throws Exception {
CreateLBCookieStickinessPolicyResult result;
try {
result = createLBCookieStickinessPolicy(request);
} catch (Exception ex) {
if (asyncHandler != null) {
asyncHandler.onError(ex);
}
throw ex;
}
if (asyncHandler != null) {
asyncHandler.onSuccess(request, result);
}
return result;
}
});
}
@Override
public java.util.concurrent.Future createLoadBalancerAsync(CreateLoadBalancerRequest request) {
return createLoadBalancerAsync(request, null);
}
@Override
public java.util.concurrent.Future createLoadBalancerAsync(final CreateLoadBalancerRequest request,
final com.amazonaws.handlers.AsyncHandler asyncHandler) {
return executorService.submit(new java.util.concurrent.Callable() {
@Override
public CreateLoadBalancerResult call() throws Exception {
CreateLoadBalancerResult result;
try {
result = createLoadBalancer(request);
} catch (Exception ex) {
if (asyncHandler != null) {
asyncHandler.onError(ex);
}
throw ex;
}
if (asyncHandler != null) {
asyncHandler.onSuccess(request, result);
}
return result;
}
});
}
@Override
public java.util.concurrent.Future createLoadBalancerListenersAsync(CreateLoadBalancerListenersRequest request) {
return createLoadBalancerListenersAsync(request, null);
}
@Override
public java.util.concurrent.Future createLoadBalancerListenersAsync(final CreateLoadBalancerListenersRequest request,
final com.amazonaws.handlers.AsyncHandler asyncHandler) {
return executorService.submit(new java.util.concurrent.Callable() {
@Override
public CreateLoadBalancerListenersResult call() throws Exception {
CreateLoadBalancerListenersResult result;
try {
result = createLoadBalancerListeners(request);
} catch (Exception ex) {
if (asyncHandler != null) {
asyncHandler.onError(ex);
}
throw ex;
}
if (asyncHandler != null) {
asyncHandler.onSuccess(request, result);
}
return result;
}
});
}
@Override
public java.util.concurrent.Future createLoadBalancerPolicyAsync(CreateLoadBalancerPolicyRequest request) {
return createLoadBalancerPolicyAsync(request, null);
}
@Override
public java.util.concurrent.Future createLoadBalancerPolicyAsync(final CreateLoadBalancerPolicyRequest request,
final com.amazonaws.handlers.AsyncHandler asyncHandler) {
return executorService.submit(new java.util.concurrent.Callable() {
@Override
public CreateLoadBalancerPolicyResult call() throws Exception {
CreateLoadBalancerPolicyResult result;
try {
result = createLoadBalancerPolicy(request);
} catch (Exception ex) {
if (asyncHandler != null) {
asyncHandler.onError(ex);
}
throw ex;
}
if (asyncHandler != null) {
asyncHandler.onSuccess(request, result);
}
return result;
}
});
}
@Override
public java.util.concurrent.Future deleteLoadBalancerAsync(DeleteLoadBalancerRequest request) {
return deleteLoadBalancerAsync(request, null);
}
@Override
public java.util.concurrent.Future deleteLoadBalancerAsync(final DeleteLoadBalancerRequest request,
final com.amazonaws.handlers.AsyncHandler asyncHandler) {
return executorService.submit(new java.util.concurrent.Callable() {
@Override
public DeleteLoadBalancerResult call() throws Exception {
DeleteLoadBalancerResult result;
try {
result = deleteLoadBalancer(request);
} catch (Exception ex) {
if (asyncHandler != null) {
asyncHandler.onError(ex);
}
throw ex;
}
if (asyncHandler != null) {
asyncHandler.onSuccess(request, result);
}
return result;
}
});
}
@Override
public java.util.concurrent.Future deleteLoadBalancerListenersAsync(DeleteLoadBalancerListenersRequest request) {
return deleteLoadBalancerListenersAsync(request, null);
}
@Override
public java.util.concurrent.Future deleteLoadBalancerListenersAsync(final DeleteLoadBalancerListenersRequest request,
final com.amazonaws.handlers.AsyncHandler asyncHandler) {
return executorService.submit(new java.util.concurrent.Callable() {
@Override
public DeleteLoadBalancerListenersResult call() throws Exception {
DeleteLoadBalancerListenersResult result;
try {
result = deleteLoadBalancerListeners(request);
} catch (Exception ex) {
if (asyncHandler != null) {
asyncHandler.onError(ex);
}
throw ex;
}
if (asyncHandler != null) {
asyncHandler.onSuccess(request, result);
}
return result;
}
});
}
@Override
public java.util.concurrent.Future deleteLoadBalancerPolicyAsync(DeleteLoadBalancerPolicyRequest request) {
return deleteLoadBalancerPolicyAsync(request, null);
}
@Override
public java.util.concurrent.Future deleteLoadBalancerPolicyAsync(final DeleteLoadBalancerPolicyRequest request,
final com.amazonaws.handlers.AsyncHandler asyncHandler) {
return executorService.submit(new java.util.concurrent.Callable() {
@Override
public DeleteLoadBalancerPolicyResult call() throws Exception {
DeleteLoadBalancerPolicyResult result;
try {
result = deleteLoadBalancerPolicy(request);
} catch (Exception ex) {
if (asyncHandler != null) {
asyncHandler.onError(ex);
}
throw ex;
}
if (asyncHandler != null) {
asyncHandler.onSuccess(request, result);
}
return result;
}
});
}
@Override
public java.util.concurrent.Future deregisterInstancesFromLoadBalancerAsync(
DeregisterInstancesFromLoadBalancerRequest request) {
return deregisterInstancesFromLoadBalancerAsync(request, null);
}
@Override
public java.util.concurrent.Future deregisterInstancesFromLoadBalancerAsync(
final DeregisterInstancesFromLoadBalancerRequest request,
final com.amazonaws.handlers.AsyncHandler asyncHandler) {
return executorService.submit(new java.util.concurrent.Callable() {
@Override
public DeregisterInstancesFromLoadBalancerResult call() throws Exception {
DeregisterInstancesFromLoadBalancerResult result;
try {
result = deregisterInstancesFromLoadBalancer(request);
} catch (Exception ex) {
if (asyncHandler != null) {
asyncHandler.onError(ex);
}
throw ex;
}
if (asyncHandler != null) {
asyncHandler.onSuccess(request, result);
}
return result;
}
});
}
@Override
public java.util.concurrent.Future describeInstanceHealthAsync(DescribeInstanceHealthRequest request) {
return describeInstanceHealthAsync(request, null);
}
@Override
public java.util.concurrent.Future describeInstanceHealthAsync(final DescribeInstanceHealthRequest request,
final com.amazonaws.handlers.AsyncHandler asyncHandler) {
return executorService.submit(new java.util.concurrent.Callable() {
@Override
public DescribeInstanceHealthResult call() throws Exception {
DescribeInstanceHealthResult result;
try {
result = describeInstanceHealth(request);
} catch (Exception ex) {
if (asyncHandler != null) {
asyncHandler.onError(ex);
}
throw ex;
}
if (asyncHandler != null) {
asyncHandler.onSuccess(request, result);
}
return result;
}
});
}
@Override
public java.util.concurrent.Future describeLoadBalancerAttributesAsync(DescribeLoadBalancerAttributesRequest request) {
return describeLoadBalancerAttributesAsync(request, null);
}
@Override
public java.util.concurrent.Future describeLoadBalancerAttributesAsync(
final DescribeLoadBalancerAttributesRequest request,
final com.amazonaws.handlers.AsyncHandler asyncHandler) {
return executorService.submit(new java.util.concurrent.Callable() {
@Override
public DescribeLoadBalancerAttributesResult call() throws Exception {
DescribeLoadBalancerAttributesResult result;
try {
result = describeLoadBalancerAttributes(request);
} catch (Exception ex) {
if (asyncHandler != null) {
asyncHandler.onError(ex);
}
throw ex;
}
if (asyncHandler != null) {
asyncHandler.onSuccess(request, result);
}
return result;
}
});
}
@Override
public java.util.concurrent.Future describeLoadBalancerPoliciesAsync(DescribeLoadBalancerPoliciesRequest request) {
return describeLoadBalancerPoliciesAsync(request, null);
}
@Override
public java.util.concurrent.Future describeLoadBalancerPoliciesAsync(final DescribeLoadBalancerPoliciesRequest request,
final com.amazonaws.handlers.AsyncHandler asyncHandler) {
return executorService.submit(new java.util.concurrent.Callable() {
@Override
public DescribeLoadBalancerPoliciesResult call() throws Exception {
DescribeLoadBalancerPoliciesResult result;
try {
result = describeLoadBalancerPolicies(request);
} catch (Exception ex) {
if (asyncHandler != null) {
asyncHandler.onError(ex);
}
throw ex;
}
if (asyncHandler != null) {
asyncHandler.onSuccess(request, result);
}
return result;
}
});
}
/**
* Simplified method form for invoking the DescribeLoadBalancerPolicies operation.
*
* @see #describeLoadBalancerPoliciesAsync(DescribeLoadBalancerPoliciesRequest)
*/
@Override
public java.util.concurrent.Future describeLoadBalancerPoliciesAsync() {
return describeLoadBalancerPoliciesAsync(new DescribeLoadBalancerPoliciesRequest());
}
/**
* Simplified method form for invoking the DescribeLoadBalancerPolicies operation with an AsyncHandler.
*
* @see #describeLoadBalancerPoliciesAsync(DescribeLoadBalancerPoliciesRequest, com.amazonaws.handlers.AsyncHandler)
*/
public java.util.concurrent.Future describeLoadBalancerPoliciesAsync(
com.amazonaws.handlers.AsyncHandler asyncHandler) {
return describeLoadBalancerPoliciesAsync(new DescribeLoadBalancerPoliciesRequest(), asyncHandler);
}
@Override
public java.util.concurrent.Future describeLoadBalancerPolicyTypesAsync(
DescribeLoadBalancerPolicyTypesRequest request) {
return describeLoadBalancerPolicyTypesAsync(request, null);
}
@Override
public java.util.concurrent.Future describeLoadBalancerPolicyTypesAsync(
final DescribeLoadBalancerPolicyTypesRequest request,
final com.amazonaws.handlers.AsyncHandler asyncHandler) {
return executorService.submit(new java.util.concurrent.Callable() {
@Override
public DescribeLoadBalancerPolicyTypesResult call() throws Exception {
DescribeLoadBalancerPolicyTypesResult result;
try {
result = describeLoadBalancerPolicyTypes(request);
} catch (Exception ex) {
if (asyncHandler != null) {
asyncHandler.onError(ex);
}
throw ex;
}
if (asyncHandler != null) {
asyncHandler.onSuccess(request, result);
}
return result;
}
});
}
/**
* Simplified method form for invoking the DescribeLoadBalancerPolicyTypes operation.
*
* @see #describeLoadBalancerPolicyTypesAsync(DescribeLoadBalancerPolicyTypesRequest)
*/
@Override
public java.util.concurrent.Future describeLoadBalancerPolicyTypesAsync() {
return describeLoadBalancerPolicyTypesAsync(new DescribeLoadBalancerPolicyTypesRequest());
}
/**
* Simplified method form for invoking the DescribeLoadBalancerPolicyTypes operation with an AsyncHandler.
*
* @see #describeLoadBalancerPolicyTypesAsync(DescribeLoadBalancerPolicyTypesRequest,
* com.amazonaws.handlers.AsyncHandler)
*/
public java.util.concurrent.Future describeLoadBalancerPolicyTypesAsync(
com.amazonaws.handlers.AsyncHandler asyncHandler) {
return describeLoadBalancerPolicyTypesAsync(new DescribeLoadBalancerPolicyTypesRequest(), asyncHandler);
}
@Override
public java.util.concurrent.Future describeLoadBalancersAsync(DescribeLoadBalancersRequest request) {
return describeLoadBalancersAsync(request, null);
}
@Override
public java.util.concurrent.Future describeLoadBalancersAsync(final DescribeLoadBalancersRequest request,
final com.amazonaws.handlers.AsyncHandler asyncHandler) {
return executorService.submit(new java.util.concurrent.Callable() {
@Override
public DescribeLoadBalancersResult call() throws Exception {
DescribeLoadBalancersResult result;
try {
result = describeLoadBalancers(request);
} catch (Exception ex) {
if (asyncHandler != null) {
asyncHandler.onError(ex);
}
throw ex;
}
if (asyncHandler != null) {
asyncHandler.onSuccess(request, result);
}
return result;
}
});
}
/**
* Simplified method form for invoking the DescribeLoadBalancers operation.
*
* @see #describeLoadBalancersAsync(DescribeLoadBalancersRequest)
*/
@Override
public java.util.concurrent.Future describeLoadBalancersAsync() {
return describeLoadBalancersAsync(new DescribeLoadBalancersRequest());
}
/**
* Simplified method form for invoking the DescribeLoadBalancers operation with an AsyncHandler.
*
* @see #describeLoadBalancersAsync(DescribeLoadBalancersRequest, com.amazonaws.handlers.AsyncHandler)
*/
public java.util.concurrent.Future describeLoadBalancersAsync(
com.amazonaws.handlers.AsyncHandler asyncHandler) {
return describeLoadBalancersAsync(new DescribeLoadBalancersRequest(), asyncHandler);
}
@Override
public java.util.concurrent.Future describeTagsAsync(DescribeTagsRequest request) {
return describeTagsAsync(request, null);
}
@Override
public java.util.concurrent.Future describeTagsAsync(final DescribeTagsRequest request,
final com.amazonaws.handlers.AsyncHandler asyncHandler) {
return executorService.submit(new java.util.concurrent.Callable() {
@Override
public DescribeTagsResult call() throws Exception {
DescribeTagsResult result;
try {
result = describeTags(request);
} catch (Exception ex) {
if (asyncHandler != null) {
asyncHandler.onError(ex);
}
throw ex;
}
if (asyncHandler != null) {
asyncHandler.onSuccess(request, result);
}
return result;
}
});
}
@Override
public java.util.concurrent.Future detachLoadBalancerFromSubnetsAsync(DetachLoadBalancerFromSubnetsRequest request) {
return detachLoadBalancerFromSubnetsAsync(request, null);
}
@Override
public java.util.concurrent.Future detachLoadBalancerFromSubnetsAsync(
final DetachLoadBalancerFromSubnetsRequest request,
final com.amazonaws.handlers.AsyncHandler asyncHandler) {
return executorService.submit(new java.util.concurrent.Callable() {
@Override
public DetachLoadBalancerFromSubnetsResult call() throws Exception {
DetachLoadBalancerFromSubnetsResult result;
try {
result = detachLoadBalancerFromSubnets(request);
} catch (Exception ex) {
if (asyncHandler != null) {
asyncHandler.onError(ex);
}
throw ex;
}
if (asyncHandler != null) {
asyncHandler.onSuccess(request, result);
}
return result;
}
});
}
@Override
public java.util.concurrent.Future disableAvailabilityZonesForLoadBalancerAsync(
DisableAvailabilityZonesForLoadBalancerRequest request) {
return disableAvailabilityZonesForLoadBalancerAsync(request, null);
}
@Override
public java.util.concurrent.Future disableAvailabilityZonesForLoadBalancerAsync(
final DisableAvailabilityZonesForLoadBalancerRequest request,
final com.amazonaws.handlers.AsyncHandler asyncHandler) {
return executorService.submit(new java.util.concurrent.Callable() {
@Override
public DisableAvailabilityZonesForLoadBalancerResult call() throws Exception {
DisableAvailabilityZonesForLoadBalancerResult result;
try {
result = disableAvailabilityZonesForLoadBalancer(request);
} catch (Exception ex) {
if (asyncHandler != null) {
asyncHandler.onError(ex);
}
throw ex;
}
if (asyncHandler != null) {
asyncHandler.onSuccess(request, result);
}
return result;
}
});
}
@Override
public java.util.concurrent.Future enableAvailabilityZonesForLoadBalancerAsync(
EnableAvailabilityZonesForLoadBalancerRequest request) {
return enableAvailabilityZonesForLoadBalancerAsync(request, null);
}
@Override
public java.util.concurrent.Future enableAvailabilityZonesForLoadBalancerAsync(
final EnableAvailabilityZonesForLoadBalancerRequest request,
final com.amazonaws.handlers.AsyncHandler asyncHandler) {
return executorService.submit(new java.util.concurrent.Callable() {
@Override
public EnableAvailabilityZonesForLoadBalancerResult call() throws Exception {
EnableAvailabilityZonesForLoadBalancerResult result;
try {
result = enableAvailabilityZonesForLoadBalancer(request);
} catch (Exception ex) {
if (asyncHandler != null) {
asyncHandler.onError(ex);
}
throw ex;
}
if (asyncHandler != null) {
asyncHandler.onSuccess(request, result);
}
return result;
}
});
}
@Override
public java.util.concurrent.Future modifyLoadBalancerAttributesAsync(ModifyLoadBalancerAttributesRequest request) {
return modifyLoadBalancerAttributesAsync(request, null);
}
@Override
public java.util.concurrent.Future modifyLoadBalancerAttributesAsync(final ModifyLoadBalancerAttributesRequest request,
final com.amazonaws.handlers.AsyncHandler asyncHandler) {
return executorService.submit(new java.util.concurrent.Callable() {
@Override
public ModifyLoadBalancerAttributesResult call() throws Exception {
ModifyLoadBalancerAttributesResult result;
try {
result = modifyLoadBalancerAttributes(request);
} catch (Exception ex) {
if (asyncHandler != null) {
asyncHandler.onError(ex);
}
throw ex;
}
if (asyncHandler != null) {
asyncHandler.onSuccess(request, result);
}
return result;
}
});
}
@Override
public java.util.concurrent.Future registerInstancesWithLoadBalancerAsync(
RegisterInstancesWithLoadBalancerRequest request) {
return registerInstancesWithLoadBalancerAsync(request, null);
}
@Override
public java.util.concurrent.Future registerInstancesWithLoadBalancerAsync(
final RegisterInstancesWithLoadBalancerRequest request,
final com.amazonaws.handlers.AsyncHandler asyncHandler) {
return executorService.submit(new java.util.concurrent.Callable() {
@Override
public RegisterInstancesWithLoadBalancerResult call() throws Exception {
RegisterInstancesWithLoadBalancerResult result;
try {
result = registerInstancesWithLoadBalancer(request);
} catch (Exception ex) {
if (asyncHandler != null) {
asyncHandler.onError(ex);
}
throw ex;
}
if (asyncHandler != null) {
asyncHandler.onSuccess(request, result);
}
return result;
}
});
}
@Override
public java.util.concurrent.Future removeTagsAsync(RemoveTagsRequest request) {
return removeTagsAsync(request, null);
}
@Override
public java.util.concurrent.Future removeTagsAsync(final RemoveTagsRequest request,
final com.amazonaws.handlers.AsyncHandler asyncHandler) {
return executorService.submit(new java.util.concurrent.Callable() {
@Override
public RemoveTagsResult call() throws Exception {
RemoveTagsResult result;
try {
result = removeTags(request);
} catch (Exception ex) {
if (asyncHandler != null) {
asyncHandler.onError(ex);
}
throw ex;
}
if (asyncHandler != null) {
asyncHandler.onSuccess(request, result);
}
return result;
}
});
}
@Override
public java.util.concurrent.Future setLoadBalancerListenerSSLCertificateAsync(
SetLoadBalancerListenerSSLCertificateRequest request) {
return setLoadBalancerListenerSSLCertificateAsync(request, null);
}
@Override
public java.util.concurrent.Future setLoadBalancerListenerSSLCertificateAsync(
final SetLoadBalancerListenerSSLCertificateRequest request,
final com.amazonaws.handlers.AsyncHandler asyncHandler) {
return executorService.submit(new java.util.concurrent.Callable() {
@Override
public SetLoadBalancerListenerSSLCertificateResult call() throws Exception {
SetLoadBalancerListenerSSLCertificateResult result;
try {
result = setLoadBalancerListenerSSLCertificate(request);
} catch (Exception ex) {
if (asyncHandler != null) {
asyncHandler.onError(ex);
}
throw ex;
}
if (asyncHandler != null) {
asyncHandler.onSuccess(request, result);
}
return result;
}
});
}
@Override
public java.util.concurrent.Future setLoadBalancerPoliciesForBackendServerAsync(
SetLoadBalancerPoliciesForBackendServerRequest request) {
return setLoadBalancerPoliciesForBackendServerAsync(request, null);
}
@Override
public java.util.concurrent.Future setLoadBalancerPoliciesForBackendServerAsync(
final SetLoadBalancerPoliciesForBackendServerRequest request,
final com.amazonaws.handlers.AsyncHandler asyncHandler) {
return executorService.submit(new java.util.concurrent.Callable() {
@Override
public SetLoadBalancerPoliciesForBackendServerResult call() throws Exception {
SetLoadBalancerPoliciesForBackendServerResult result;
try {
result = setLoadBalancerPoliciesForBackendServer(request);
} catch (Exception ex) {
if (asyncHandler != null) {
asyncHandler.onError(ex);
}
throw ex;
}
if (asyncHandler != null) {
asyncHandler.onSuccess(request, result);
}
return result;
}
});
}
@Override
public java.util.concurrent.Future setLoadBalancerPoliciesOfListenerAsync(
SetLoadBalancerPoliciesOfListenerRequest request) {
return setLoadBalancerPoliciesOfListenerAsync(request, null);
}
@Override
public java.util.concurrent.Future setLoadBalancerPoliciesOfListenerAsync(
final SetLoadBalancerPoliciesOfListenerRequest request,
final com.amazonaws.handlers.AsyncHandler asyncHandler) {
return executorService.submit(new java.util.concurrent.Callable() {
@Override
public SetLoadBalancerPoliciesOfListenerResult call() throws Exception {
SetLoadBalancerPoliciesOfListenerResult result;
try {
result = setLoadBalancerPoliciesOfListener(request);
} catch (Exception ex) {
if (asyncHandler != null) {
asyncHandler.onError(ex);
}
throw ex;
}
if (asyncHandler != null) {
asyncHandler.onSuccess(request, 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();
}
}