/*
* 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.ec2.model;
import java.io.Serializable;
import javax.annotation.Generated;
import com.amazonaws.AmazonWebServiceRequest;
import com.amazonaws.Request;
import com.amazonaws.services.ec2.model.transform.AllocateAddressRequestMarshaller;
/**
*
*/
@Generated("com.amazonaws:aws-java-sdk-code-generator")
public class AllocateAddressRequest extends AmazonWebServiceRequest implements Serializable, Cloneable, DryRunSupportedRequest
* The network (
* The Elastic IP address to recover or an IPv4 address from an address pool.
*
* The ID of an address pool that you own. Use this parameter to let Amazon EC2 select an address from the address
* pool. To specify a specific address from the address pool, use the
* A unique set of Availability Zones, Local Zones, or Wavelength Zones from which Amazon Web Services advertises IP
* addresses. Use this parameter to limit the IP address to this location. IP addresses cannot move between network
* border groups.
*
* Use
* DescribeAvailabilityZones to view the network border groups.
*
* You cannot use a network border group with EC2 Classic. If you attempt this operation on EC2 Classic, you receive
* an
* The ID of a customer-owned address pool. Use this parameter to let Amazon EC2 select an address from the address
* pool. Alternatively, specify a specific address from the address pool.
*
* The tags to assign to the Elastic IP address.
*
* The network (
* The network (
* The network (
* The network (
* The network (
* The Elastic IP address to recover or an IPv4 address from an address pool.
*
* The Elastic IP address to recover or an IPv4 address from an address pool.
*
* The Elastic IP address to recover or an IPv4 address from an address pool.
*
* The ID of an address pool that you own. Use this parameter to let Amazon EC2 select an address from the address
* pool. To specify a specific address from the address pool, use the
* The ID of an address pool that you own. Use this parameter to let Amazon EC2 select an address from the address
* pool. To specify a specific address from the address pool, use the
* The ID of an address pool that you own. Use this parameter to let Amazon EC2 select an address from the address
* pool. To specify a specific address from the address pool, use the
* A unique set of Availability Zones, Local Zones, or Wavelength Zones from which Amazon Web Services advertises IP
* addresses. Use this parameter to limit the IP address to this location. IP addresses cannot move between network
* border groups.
*
* Use
* DescribeAvailabilityZones to view the network border groups.
*
* You cannot use a network border group with EC2 Classic. If you attempt this operation on EC2 Classic, you receive
* an vpc
).
* Address
parameter instead.
* InvalidParameterCombination
error.
* vpc
).
* vpc
).
* @see DomainType
*/
public void setDomain(String domain) {
this.domain = domain;
}
/**
* vpc
).
* vpc
).
* @see DomainType
*/
public String getDomain() {
return this.domain;
}
/**
* vpc
).
* vpc
).
* @return Returns a reference to this object so that method calls can be chained together.
* @see DomainType
*/
public AllocateAddressRequest withDomain(String domain) {
setDomain(domain);
return this;
}
/**
* vpc
).
* vpc
).
* @see DomainType
*/
public void setDomain(DomainType domain) {
withDomain(domain);
}
/**
* vpc
).
* vpc
).
* @return Returns a reference to this object so that method calls can be chained together.
* @see DomainType
*/
public AllocateAddressRequest withDomain(DomainType domain) {
this.domain = domain.toString();
return this;
}
/**
* Address
parameter instead.
* Address
parameter
* instead.
*/
public void setPublicIpv4Pool(String publicIpv4Pool) {
this.publicIpv4Pool = publicIpv4Pool;
}
/**
* Address
parameter instead.
* Address
parameter
* instead.
*/
public String getPublicIpv4Pool() {
return this.publicIpv4Pool;
}
/**
* Address
parameter instead.
* Address
parameter
* instead.
* @return Returns a reference to this object so that method calls can be chained together.
*/
public AllocateAddressRequest withPublicIpv4Pool(String publicIpv4Pool) {
setPublicIpv4Pool(publicIpv4Pool);
return this;
}
/**
* InvalidParameterCombination
error.
*
* Use * DescribeAvailabilityZones to view the network border groups. *
*
* You cannot use a network border group with EC2 Classic. If you attempt this operation on EC2 Classic, you
* receive an InvalidParameterCombination
error.
*/
public void setNetworkBorderGroup(String networkBorderGroup) {
this.networkBorderGroup = networkBorderGroup;
}
/**
*
* A unique set of Availability Zones, Local Zones, or Wavelength Zones from which Amazon Web Services advertises IP * addresses. Use this parameter to limit the IP address to this location. IP addresses cannot move between network * border groups. *
** Use * DescribeAvailabilityZones to view the network border groups. *
*
* You cannot use a network border group with EC2 Classic. If you attempt this operation on EC2 Classic, you receive
* an InvalidParameterCombination
error.
*
* Use * DescribeAvailabilityZones to view the network border groups. *
*
* You cannot use a network border group with EC2 Classic. If you attempt this operation on EC2 Classic, you
* receive an InvalidParameterCombination
error.
*/
public String getNetworkBorderGroup() {
return this.networkBorderGroup;
}
/**
*
* A unique set of Availability Zones, Local Zones, or Wavelength Zones from which Amazon Web Services advertises IP * addresses. Use this parameter to limit the IP address to this location. IP addresses cannot move between network * border groups. *
** Use * DescribeAvailabilityZones to view the network border groups. *
*
* You cannot use a network border group with EC2 Classic. If you attempt this operation on EC2 Classic, you receive
* an InvalidParameterCombination
error.
*
* Use * DescribeAvailabilityZones to view the network border groups. *
*
* You cannot use a network border group with EC2 Classic. If you attempt this operation on EC2 Classic, you
* receive an InvalidParameterCombination
error.
* @return Returns a reference to this object so that method calls can be chained together.
*/
public AllocateAddressRequest withNetworkBorderGroup(String networkBorderGroup) {
setNetworkBorderGroup(networkBorderGroup);
return this;
}
/**
*
* The ID of a customer-owned address pool. Use this parameter to let Amazon EC2 select an address from the address * pool. Alternatively, specify a specific address from the address pool. *
* * @param customerOwnedIpv4Pool * The ID of a customer-owned address pool. Use this parameter to let Amazon EC2 select an address from the * address pool. Alternatively, specify a specific address from the address pool. */ public void setCustomerOwnedIpv4Pool(String customerOwnedIpv4Pool) { this.customerOwnedIpv4Pool = customerOwnedIpv4Pool; } /** ** The ID of a customer-owned address pool. Use this parameter to let Amazon EC2 select an address from the address * pool. Alternatively, specify a specific address from the address pool. *
* * @return The ID of a customer-owned address pool. Use this parameter to let Amazon EC2 select an address from the * address pool. Alternatively, specify a specific address from the address pool. */ public String getCustomerOwnedIpv4Pool() { return this.customerOwnedIpv4Pool; } /** ** The ID of a customer-owned address pool. Use this parameter to let Amazon EC2 select an address from the address * pool. Alternatively, specify a specific address from the address pool. *
* * @param customerOwnedIpv4Pool * The ID of a customer-owned address pool. Use this parameter to let Amazon EC2 select an address from the * address pool. Alternatively, specify a specific address from the address pool. * @return Returns a reference to this object so that method calls can be chained together. */ public AllocateAddressRequest withCustomerOwnedIpv4Pool(String customerOwnedIpv4Pool) { setCustomerOwnedIpv4Pool(customerOwnedIpv4Pool); return this; } /** ** The tags to assign to the Elastic IP address. *
* * @return The tags to assign to the Elastic IP address. */ public java.util.List* The tags to assign to the Elastic IP address. *
* * @param tagSpecifications * The tags to assign to the Elastic IP address. */ public void setTagSpecifications(java.util.Collection* The tags to assign to the Elastic IP address. *
** NOTE: This method appends the values to the existing list (if any). Use * {@link #setTagSpecifications(java.util.Collection)} or {@link #withTagSpecifications(java.util.Collection)} if * you want to override the existing values. *
* * @param tagSpecifications * The tags to assign to the Elastic IP address. * @return Returns a reference to this object so that method calls can be chained together. */ public AllocateAddressRequest withTagSpecifications(TagSpecification... tagSpecifications) { if (this.tagSpecifications == null) { setTagSpecifications(new com.amazonaws.internal.SdkInternalList* The tags to assign to the Elastic IP address. *
* * @param tagSpecifications * The tags to assign to the Elastic IP address. * @return Returns a reference to this object so that method calls can be chained together. */ public AllocateAddressRequest withTagSpecifications(java.util.Collection