com.amazonaws.services.elasticloadbalancing
Class AmazonElasticLoadBalancingClient

java.lang.Object
  extended by com.amazonaws.AmazonWebServiceClient
      extended by com.amazonaws.services.elasticloadbalancing.AmazonElasticLoadBalancingClient
All Implemented Interfaces:
AmazonElasticLoadBalancing
Direct Known Subclasses:
AmazonElasticLoadBalancingAsyncClient

public class AmazonElasticLoadBalancingClient
extends AmazonWebServiceClient
implements AmazonElasticLoadBalancing

Client for accessing AmazonElasticLoadBalancing. All service calls made using this client are blocking, and will not return until the service call completes.

Elastic Load Balancing is a cost-effective and easy to use web service to help you improve availability and scalability of your application. It makes it easy for you to distribute application loads between two or more EC2 instances. Elastic Load Balancing enables availability through redundancy and supports traffic growth of your application.


Constructor Summary
AmazonElasticLoadBalancingClient(AWSCredentials awsCredentials)
          Constructs a new client to invoke service methods on AmazonElasticLoadBalancing using the specified AWS account credentials.
AmazonElasticLoadBalancingClient(AWSCredentials awsCredentials, ClientConfiguration clientConfiguration)
          Constructs a new client to invoke service methods on AmazonElasticLoadBalancing using the specified AWS account credentials and client configuration options.
 
Method Summary
 ConfigureHealthCheckResult configureHealthCheck(ConfigureHealthCheckRequest configureHealthCheckRequest)
           Enables the client to define an application healthcheck for the instances.
 CreateLoadBalancerResult createLoadBalancer(CreateLoadBalancerRequest createLoadBalancerRequest)
           Creates a new LoadBalancer.
 void deleteLoadBalancer(DeleteLoadBalancerRequest deleteLoadBalancerRequest)
           Deletes the specified LoadBalancer.
 DeregisterInstancesFromLoadBalancerResult deregisterInstancesFromLoadBalancer(DeregisterInstancesFromLoadBalancerRequest deregisterInstancesFromLoadBalancerRequest)
           Deregisters instances from the LoadBalancer.
 DescribeInstanceHealthResult describeInstanceHealth(DescribeInstanceHealthRequest describeInstanceHealthRequest)
           Returns the current state of the instances of the specified LoadBalancer.
 DescribeLoadBalancersResult describeLoadBalancers()
           Returns detailed configuration information for the specified LoadBalancers.
 DescribeLoadBalancersResult describeLoadBalancers(DescribeLoadBalancersRequest describeLoadBalancersRequest)
           Returns detailed configuration information for the specified LoadBalancers.
 DisableAvailabilityZonesForLoadBalancerResult disableAvailabilityZonesForLoadBalancer(DisableAvailabilityZonesForLoadBalancerRequest disableAvailabilityZonesForLoadBalancerRequest)
           Removes the specified EC2 Availability Zones from the set of configured Availability Zones for the LoadBalancer.
 EnableAvailabilityZonesForLoadBalancerResult enableAvailabilityZonesForLoadBalancer(EnableAvailabilityZonesForLoadBalancerRequest enableAvailabilityZonesForLoadBalancerRequest)
           Adds one or more EC2 Availability Zones to the LoadBalancer.
 RegisterInstancesWithLoadBalancerResult registerInstancesWithLoadBalancer(RegisterInstancesWithLoadBalancerRequest registerInstancesWithLoadBalancerRequest)
           Adds new instances to the LoadBalancer.
 
Methods inherited from class com.amazonaws.AmazonWebServiceClient
setEndpoint
 
Methods inherited from class java.lang.Object
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 
Methods inherited from interface com.amazonaws.services.elasticloadbalancing.AmazonElasticLoadBalancing
setEndpoint
 

Constructor Detail

AmazonElasticLoadBalancingClient

public AmazonElasticLoadBalancingClient(AWSCredentials awsCredentials)
Constructs a new client to invoke service methods on AmazonElasticLoadBalancing using the specified AWS account credentials.

All service calls made using this new client object are blocking, and will not return until the service call completes.

Parameters:
awsCredentials - The AWS credentials (access key ID and secret key) to use when authenticating with AWS services.

AmazonElasticLoadBalancingClient

public AmazonElasticLoadBalancingClient(AWSCredentials awsCredentials,
                                        ClientConfiguration clientConfiguration)
Constructs a new client to invoke service methods on AmazonElasticLoadBalancing using the specified AWS account credentials and client configuration options.

All service calls made using this new client object are blocking, and will not return until the service call completes.

Parameters:
awsCredentials - The AWS credentials (access key ID and secret key) to use when authenticating with AWS services.
clientConfiguration - The client configuration options controlling how this client connects to AmazonElasticLoadBalancing (ex: proxy settings, retry counts, etc.).
Method Detail

deregisterInstancesFromLoadBalancer

public DeregisterInstancesFromLoadBalancerResult deregisterInstancesFromLoadBalancer(DeregisterInstancesFromLoadBalancerRequest deregisterInstancesFromLoadBalancerRequest)
                                                                              throws AmazonServiceException,
                                                                                     AmazonClientException

Deregisters instances from the LoadBalancer. Once the instance is deregistered, it will stop receiving traffic from the LoadBalancer.

In order to successfully call this API, the same account credentials as those used to create the LoadBalancer must be provided.

Specified by:
deregisterInstancesFromLoadBalancer in interface AmazonElasticLoadBalancing
Parameters:
deregisterInstancesFromLoadBalancerRequest - Container for the necessary parameters to execute the DeregisterInstancesFromLoadBalancer service method on AmazonElasticLoadBalancing.
Returns:
The response from the DeregisterInstancesFromLoadBalancer service method, as returned by AmazonElasticLoadBalancing.
Throws:
InvalidInstanceException
LoadBalancerNotFoundException
AmazonClientException - If any internal errors are encountered inside the client while attempting to make the request or handle the response. For example if a network connection is not available.
AmazonServiceException - If an error response is returned by AmazonElasticLoadBalancing indicating either a problem with the data in the request, or a server side issue.

configureHealthCheck

public ConfigureHealthCheckResult configureHealthCheck(ConfigureHealthCheckRequest configureHealthCheckRequest)
                                                throws AmazonServiceException,
                                                       AmazonClientException

Enables the client to define an application healthcheck for the instances.

Specified by:
configureHealthCheck in interface AmazonElasticLoadBalancing
Parameters:
configureHealthCheckRequest - Container for the necessary parameters to execute the ConfigureHealthCheck service method on AmazonElasticLoadBalancing.
Returns:
The response from the ConfigureHealthCheck service method, as returned by AmazonElasticLoadBalancing.
Throws:
LoadBalancerNotFoundException
AmazonClientException - If any internal errors are encountered inside the client while attempting to make the request or handle the response. For example if a network connection is not available.
AmazonServiceException - If an error response is returned by AmazonElasticLoadBalancing indicating either a problem with the data in the request, or a server side issue.

deleteLoadBalancer

public void deleteLoadBalancer(DeleteLoadBalancerRequest deleteLoadBalancerRequest)
                        throws AmazonServiceException,
                               AmazonClientException

Deletes the specified LoadBalancer.

If attempting to recreate the LoadBalancer, the client must reconfigure all the settings. The DNS name associated with a deleted LoadBalancer will no longer be usable. Once deleted, the name and associated DNS record of the LoadBalancer no longer exist and traffic sent to any of its IP addresses will no longer be delivered to client instances. The client will not receive the same DNS name even if a new LoadBalancer with same LoadBalancerName is created.

To successfully call this API, the client must provide the same account credentials as were used to create the LoadBalancer.

NOTE: By design, if the LoadBalancer does not exist or has already been deleted, DeleteLoadBalancer still succeeds.

Specified by:
deleteLoadBalancer in interface AmazonElasticLoadBalancing
Parameters:
deleteLoadBalancerRequest - Container for the necessary parameters to execute the DeleteLoadBalancer service method on AmazonElasticLoadBalancing.
Throws:
AmazonClientException - If any internal errors are encountered inside the client while attempting to make the request or handle the response. For example if a network connection is not available.
AmazonServiceException - If an error response is returned by AmazonElasticLoadBalancing indicating either a problem with the data in the request, or a server side issue.

registerInstancesWithLoadBalancer

public RegisterInstancesWithLoadBalancerResult registerInstancesWithLoadBalancer(RegisterInstancesWithLoadBalancerRequest registerInstancesWithLoadBalancerRequest)
                                                                          throws AmazonServiceException,
                                                                                 AmazonClientException

Adds new instances to the LoadBalancer.

Once the instance is registered, it starts receiving traffic and requests from the LoadBalancer. Any instance that is not in any of the Availability Zones registered for the LoadBalancer will be moved to the OutOfService state. It will move to the InService state when the Availability Zone is added to the LoadBalancer.

NOTE: In order for this call to be successful, the client must have created the LoadBalancer. The client must provide the same account credentials as those that were used to create the LoadBalancer.

NOTE: Completion of this API does not guarantee that operation has completed. Rather, it means that the request has been registered and the changes will happen shortly.

Specified by:
registerInstancesWithLoadBalancer in interface AmazonElasticLoadBalancing
Parameters:
registerInstancesWithLoadBalancerRequest - Container for the necessary parameters to execute the RegisterInstancesWithLoadBalancer service method on AmazonElasticLoadBalancing.
Returns:
The response from the RegisterInstancesWithLoadBalancer service method, as returned by AmazonElasticLoadBalancing.
Throws:
InvalidInstanceException
LoadBalancerNotFoundException
AmazonClientException - If any internal errors are encountered inside the client while attempting to make the request or handle the response. For example if a network connection is not available.
AmazonServiceException - If an error response is returned by AmazonElasticLoadBalancing indicating either a problem with the data in the request, or a server side issue.

createLoadBalancer

public CreateLoadBalancerResult createLoadBalancer(CreateLoadBalancerRequest createLoadBalancerRequest)
                                            throws AmazonServiceException,
                                                   AmazonClientException

Creates a new LoadBalancer.

Once the call has completed successfully, a new LoadBalancer is created; however, it will not be usable until at least one instance has been registered. When the LoadBalancer creation is completed, the client can check whether or not it is usable by using the DescribeInstanceHealth API. The LoadBalancer is usable as soon as any registered instance is InService .

NOTE: Currently, the client's quota of LoadBalancers is limited to five per Region.

NOTE: Load balancer DNS names vary depending on the Region they're created in. For load balancers created in the United States, the DNS name ends with: us-east-1.elb.amazonaws.com (for the US Standard Region) us-west-1.elb.amazonaws.com (for the Northern California Region) For load balancers created in the EU (Ireland) Region, the DNS name ends with: eu-west-1.elb.amazonaws.com

Specified by:
createLoadBalancer in interface AmazonElasticLoadBalancing
Parameters:
createLoadBalancerRequest - Container for the necessary parameters to execute the CreateLoadBalancer service method on AmazonElasticLoadBalancing.
Returns:
The response from the CreateLoadBalancer service method, as returned by AmazonElasticLoadBalancing.
Throws:
TooManyLoadBalancersException
DuplicateLoadBalancerNameException
AmazonClientException - If any internal errors are encountered inside the client while attempting to make the request or handle the response. For example if a network connection is not available.
AmazonServiceException - If an error response is returned by AmazonElasticLoadBalancing indicating either a problem with the data in the request, or a server side issue.

enableAvailabilityZonesForLoadBalancer

public EnableAvailabilityZonesForLoadBalancerResult enableAvailabilityZonesForLoadBalancer(EnableAvailabilityZonesForLoadBalancerRequest enableAvailabilityZonesForLoadBalancerRequest)
                                                                                    throws AmazonServiceException,
                                                                                           AmazonClientException

Adds one or more EC2 Availability Zones to the LoadBalancer.

The LoadBalancer evenly distributes requests across all its registered Availability Zones that contain instances. As a result, the client must ensure that its LoadBalancer is appropriately scaled for each registered Availability Zone.

NOTE: The new EC2 Availability Zones to be added must be in the same EC2 Region as the Availability Zones for which the LoadBalancer was created.

Specified by:
enableAvailabilityZonesForLoadBalancer in interface AmazonElasticLoadBalancing
Parameters:
enableAvailabilityZonesForLoadBalancerRequest - Container for the necessary parameters to execute the EnableAvailabilityZonesForLoadBalancer service method on AmazonElasticLoadBalancing.
Returns:
The response from the EnableAvailabilityZonesForLoadBalancer service method, as returned by AmazonElasticLoadBalancing.
Throws:
LoadBalancerNotFoundException
AmazonClientException - If any internal errors are encountered inside the client while attempting to make the request or handle the response. For example if a network connection is not available.
AmazonServiceException - If an error response is returned by AmazonElasticLoadBalancing indicating either a problem with the data in the request, or a server side issue.

disableAvailabilityZonesForLoadBalancer

public DisableAvailabilityZonesForLoadBalancerResult disableAvailabilityZonesForLoadBalancer(DisableAvailabilityZonesForLoadBalancerRequest disableAvailabilityZonesForLoadBalancerRequest)
                                                                                      throws AmazonServiceException,
                                                                                             AmazonClientException

Removes the specified EC2 Availability Zones from the set of configured Availability Zones for the LoadBalancer.

There must be at least one Availability Zone registered with a LoadBalancer at all times. A client cannot remove all the Availability Zones from a LoadBalancer. Once an Availability Zone is removed, all the instances registered with the LoadBalancer that are in the removed Availability Zone go into the OutOfService state. Upon Availability Zone removal, the LoadBalancer attempts to equally balance the traffic among its remaining usable Availability Zones. Trying to remove an Availability Zone that was not associated with the LoadBalancer does nothing.

NOTE: In order for this call to be successful, the client must have created the LoadBalancer. The client must provide the same account credentials as those that were used to create the LoadBalancer.

Specified by:
disableAvailabilityZonesForLoadBalancer in interface AmazonElasticLoadBalancing
Parameters:
disableAvailabilityZonesForLoadBalancerRequest - Container for the necessary parameters to execute the DisableAvailabilityZonesForLoadBalancer service method on AmazonElasticLoadBalancing.
Returns:
The response from the DisableAvailabilityZonesForLoadBalancer service method, as returned by AmazonElasticLoadBalancing.
Throws:
InvalidConfigurationRequestException
LoadBalancerNotFoundException
AmazonClientException - If any internal errors are encountered inside the client while attempting to make the request or handle the response. For example if a network connection is not available.
AmazonServiceException - If an error response is returned by AmazonElasticLoadBalancing indicating either a problem with the data in the request, or a server side issue.

describeInstanceHealth

public DescribeInstanceHealthResult describeInstanceHealth(DescribeInstanceHealthRequest describeInstanceHealthRequest)
                                                    throws AmazonServiceException,
                                                           AmazonClientException

Returns the current state of the instances of the specified LoadBalancer. If no instances are specified, the state of all the instances for the LoadBalancer is returned.

NOTE: The client must have created the specified input LoadBalancer in order to retrieve this information; the client must provide the same account credentials as those that were used to create the LoadBalancer.

Specified by:
describeInstanceHealth in interface AmazonElasticLoadBalancing
Parameters:
describeInstanceHealthRequest - Container for the necessary parameters to execute the DescribeInstanceHealth service method on AmazonElasticLoadBalancing.
Returns:
The response from the DescribeInstanceHealth service method, as returned by AmazonElasticLoadBalancing.
Throws:
InvalidInstanceException
LoadBalancerNotFoundException
AmazonClientException - If any internal errors are encountered inside the client while attempting to make the request or handle the response. For example if a network connection is not available.
AmazonServiceException - If an error response is returned by AmazonElasticLoadBalancing indicating either a problem with the data in the request, or a server side issue.

describeLoadBalancers

public DescribeLoadBalancersResult describeLoadBalancers(DescribeLoadBalancersRequest describeLoadBalancersRequest)
                                                  throws AmazonServiceException,
                                                         AmazonClientException

Returns detailed configuration information for the specified LoadBalancers. If no LoadBalancers are specified, the operation returns configuration information for all LoadBalancers created by the caller.

NOTE: The client must have created the specified input LoadBalancers in order to retrieve this information; the client must provide the same account credentials as those that were used to create the LoadBalancer.

Specified by:
describeLoadBalancers in interface AmazonElasticLoadBalancing
Parameters:
describeLoadBalancersRequest - Container for the necessary parameters to execute the DescribeLoadBalancers service method on AmazonElasticLoadBalancing.
Returns:
The response from the DescribeLoadBalancers service method, as returned by AmazonElasticLoadBalancing.
Throws:
LoadBalancerNotFoundException
AmazonClientException - If any internal errors are encountered inside the client while attempting to make the request or handle the response. For example if a network connection is not available.
AmazonServiceException - If an error response is returned by AmazonElasticLoadBalancing indicating either a problem with the data in the request, or a server side issue.

describeLoadBalancers

public DescribeLoadBalancersResult describeLoadBalancers()
                                                  throws AmazonServiceException,
                                                         AmazonClientException

Returns detailed configuration information for the specified LoadBalancers. If no LoadBalancers are specified, the operation returns configuration information for all LoadBalancers created by the caller.

NOTE: The client must have created the specified input LoadBalancers in order to retrieve this information; the client must provide the same account credentials as those that were used to create the LoadBalancer.

Specified by:
describeLoadBalancers in interface AmazonElasticLoadBalancing
Returns:
The response from the DescribeLoadBalancers service method, as returned by AmazonElasticLoadBalancing.
Throws:
LoadBalancerNotFoundException
AmazonClientException - If any internal errors are encountered inside the client while attempting to make the request or handle the response. For example if a network connection is not available.
AmazonServiceException - If an error response is returned by AmazonElasticLoadBalancing indicating either a problem with the data in the request, or a server side issue.


Copyright © 2010 Amazon Web Services, Inc. All Rights Reserved.