@Override
    public AssociateAddressResult associateAddress(AssociateAddressRequest request) {
        request = beforeClientExecution(request);
        return executeAssociateAddress(request);
    }
<p>
Associates an Elastic IP address, or carrier IP address (for instances that are in subnets in Wavelength Zones)
with an instance or a network interface. Before you can use an Elastic IP address, you must allocate it to your
account.
</p>
<p>
If the Elastic IP address is already associated with a different instance, it is disassociated from that instance
and associated with the specified instance. If you associate an Elastic IP address with an instance that has an
existing Elastic IP address, the existing address is disassociated from the instance, but remains allocated to
your account.
</p>
<p>
[Subnets in Wavelength Zones] You can associate an IP address from the telecommunication carrier to the instance
or network interface.
</p>
<p>
You cannot associate an Elastic IP address with an interface in a different network border group.
</p>
<important>
<p>
This is an idempotent operation. If you perform the operation more than once, Amazon EC2 doesn't return an error,
and you may be charged for each time the Elastic IP address is remapped to the same instance. For more
information, see the <i>Elastic IP Addresses</i> section of <a href="http://aws.amazon.com/ec2/pricing/">Amazon
EC2 Pricing</a>.
</p>
</important>

@param associateAddressRequest
@return Result of the AssociateAddress operation returned by the service.
@sample AmazonEC2.AssociateAddress
@see <a href="http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/AssociateAddress" target="_top">AWS API
     Documentation</a>
aws-java-sdk-ec2/src/main/java/com/amazonaws/services/ec2/AmazonEC2Client.java