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

com.amazonaws.services.ec2.model.CreateNetworkInterfaceRequest Maven / Gradle / Ivy

Go to download

The AWS Java SDK for Amazon EC2 module holds the client classes that are used for communicating with Amazon EC2 Service

The newest version!
/*
 * Copyright 2019-2024 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.CreateNetworkInterfaceRequestMarshaller;

/**
 * 
 */
@Generated("com.amazonaws:aws-java-sdk-code-generator")
public class CreateNetworkInterfaceRequest extends AmazonWebServiceRequest implements Serializable, Cloneable,
        DryRunSupportedRequest {

    /**
     * 

* A description for the network interface. *

*/ private String description; /** *

* The IDs of one or more security groups. *

*/ private com.amazonaws.internal.SdkInternalList groups; /** *

* The number of IPv6 addresses to assign to a network interface. Amazon EC2 automatically selects the IPv6 * addresses from the subnet range. *

*

* You can't specify a count of IPv6 addresses using this parameter if you've specified one of the following: * specific IPv6 addresses, specific IPv6 prefixes, or a count of IPv6 prefixes. *

*

* If your subnet has the AssignIpv6AddressOnCreation attribute set, you can override that setting by * specifying 0 as the IPv6 address count. *

*/ private Integer ipv6AddressCount; /** *

* The IPv6 addresses from the IPv6 CIDR block range of your subnet. *

*

* You can't specify IPv6 addresses using this parameter if you've specified one of the following: a count of IPv6 * addresses, specific IPv6 prefixes, or a count of IPv6 prefixes. *

*/ private com.amazonaws.internal.SdkInternalList ipv6Addresses; /** *

* The primary private IPv4 address of the network interface. If you don't specify an IPv4 address, Amazon EC2 * selects one for you from the subnet's IPv4 CIDR range. If you specify an IP address, you cannot indicate any IP * addresses specified in privateIpAddresses as primary (only one IP address can be designated as * primary). *

*/ private String privateIpAddress; /** *

* The private IPv4 addresses. *

*

* You can't specify private IPv4 addresses if you've specified one of the following: a count of private IPv4 * addresses, specific IPv4 prefixes, or a count of IPv4 prefixes. *

*/ private com.amazonaws.internal.SdkInternalList privateIpAddresses; /** *

* The number of secondary private IPv4 addresses to assign to a network interface. When you specify a number of * secondary IPv4 addresses, Amazon EC2 selects these IP addresses within the subnet's IPv4 CIDR range. You can't * specify this option and specify more than one private IP address using privateIpAddresses. *

*

* You can't specify a count of private IPv4 addresses if you've specified one of the following: specific private * IPv4 addresses, specific IPv4 prefixes, or a count of IPv4 prefixes. *

*/ private Integer secondaryPrivateIpAddressCount; /** *

* The IPv4 prefixes assigned to the network interface. *

*

* You can't specify IPv4 prefixes if you've specified one of the following: a count of IPv4 prefixes, specific * private IPv4 addresses, or a count of private IPv4 addresses. *

*/ private com.amazonaws.internal.SdkInternalList ipv4Prefixes; /** *

* The number of IPv4 prefixes that Amazon Web Services automatically assigns to the network interface. *

*

* You can't specify a count of IPv4 prefixes if you've specified one of the following: specific IPv4 prefixes, * specific private IPv4 addresses, or a count of private IPv4 addresses. *

*/ private Integer ipv4PrefixCount; /** *

* The IPv6 prefixes assigned to the network interface. *

*

* You can't specify IPv6 prefixes if you've specified one of the following: a count of IPv6 prefixes, specific IPv6 * addresses, or a count of IPv6 addresses. *

*/ private com.amazonaws.internal.SdkInternalList ipv6Prefixes; /** *

* The number of IPv6 prefixes that Amazon Web Services automatically assigns to the network interface. *

*

* You can't specify a count of IPv6 prefixes if you've specified one of the following: specific IPv6 prefixes, * specific IPv6 addresses, or a count of IPv6 addresses. *

*/ private Integer ipv6PrefixCount; /** *

* The type of network interface. The default is interface. *

*

* The only supported values are interface, efa, and trunk. *

*/ private String interfaceType; /** *

* The ID of the subnet to associate with the network interface. *

*/ private String subnetId; /** *

* The tags to apply to the new network interface. *

*/ private com.amazonaws.internal.SdkInternalList tagSpecifications; /** *

* Unique, case-sensitive identifier that you provide to ensure the idempotency of the request. For more * information, see Ensuring * idempotency. *

*/ private String clientToken; /** *

* If you’re creating a network interface in a dual-stack or IPv6-only subnet, you have the option to assign a * primary IPv6 IP address. A primary IPv6 address is an IPv6 GUA address associated with an ENI that you have * enabled to use a primary IPv6 address. Use this option if the instance that this ENI will be attached to relies * on its IPv6 address not changing. Amazon Web Services will automatically assign an IPv6 address associated with * the ENI attached to your instance to be the primary IPv6 address. Once you enable an IPv6 GUA address to be a * primary IPv6, you cannot disable it. When you enable an IPv6 GUA address to be a primary IPv6, the first IPv6 GUA * will be made the primary IPv6 address until the instance is terminated or the network interface is detached. If * you have multiple IPv6 addresses associated with an ENI attached to your instance and you enable a primary IPv6 * address, the first IPv6 GUA address associated with the ENI becomes the primary IPv6 address. *

*/ private Boolean enablePrimaryIpv6; /** *

* A connection tracking specification for the network interface. *

*/ private ConnectionTrackingSpecificationRequest connectionTrackingSpecification; /** *

* A description for the network interface. *

* * @param description * A description for the network interface. */ public void setDescription(String description) { this.description = description; } /** *

* A description for the network interface. *

* * @return A description for the network interface. */ public String getDescription() { return this.description; } /** *

* A description for the network interface. *

* * @param description * A description for the network interface. * @return Returns a reference to this object so that method calls can be chained together. */ public CreateNetworkInterfaceRequest withDescription(String description) { setDescription(description); return this; } /** *

* The IDs of one or more security groups. *

* * @return The IDs of one or more security groups. */ public java.util.List getGroups() { if (groups == null) { groups = new com.amazonaws.internal.SdkInternalList(); } return groups; } /** *

* The IDs of one or more security groups. *

* * @param groups * The IDs of one or more security groups. */ public void setGroups(java.util.Collection groups) { if (groups == null) { this.groups = null; return; } this.groups = new com.amazonaws.internal.SdkInternalList(groups); } /** *

* The IDs of one or more security groups. *

*

* NOTE: This method appends the values to the existing list (if any). Use * {@link #setGroups(java.util.Collection)} or {@link #withGroups(java.util.Collection)} if you want to override the * existing values. *

* * @param groups * The IDs of one or more security groups. * @return Returns a reference to this object so that method calls can be chained together. */ public CreateNetworkInterfaceRequest withGroups(String... groups) { if (this.groups == null) { setGroups(new com.amazonaws.internal.SdkInternalList(groups.length)); } for (String ele : groups) { this.groups.add(ele); } return this; } /** *

* The IDs of one or more security groups. *

* * @param groups * The IDs of one or more security groups. * @return Returns a reference to this object so that method calls can be chained together. */ public CreateNetworkInterfaceRequest withGroups(java.util.Collection groups) { setGroups(groups); return this; } /** *

* The number of IPv6 addresses to assign to a network interface. Amazon EC2 automatically selects the IPv6 * addresses from the subnet range. *

*

* You can't specify a count of IPv6 addresses using this parameter if you've specified one of the following: * specific IPv6 addresses, specific IPv6 prefixes, or a count of IPv6 prefixes. *

*

* If your subnet has the AssignIpv6AddressOnCreation attribute set, you can override that setting by * specifying 0 as the IPv6 address count. *

* * @param ipv6AddressCount * The number of IPv6 addresses to assign to a network interface. Amazon EC2 automatically selects the IPv6 * addresses from the subnet range.

*

* You can't specify a count of IPv6 addresses using this parameter if you've specified one of the following: * specific IPv6 addresses, specific IPv6 prefixes, or a count of IPv6 prefixes. *

*

* If your subnet has the AssignIpv6AddressOnCreation attribute set, you can override that * setting by specifying 0 as the IPv6 address count. */ public void setIpv6AddressCount(Integer ipv6AddressCount) { this.ipv6AddressCount = ipv6AddressCount; } /** *

* The number of IPv6 addresses to assign to a network interface. Amazon EC2 automatically selects the IPv6 * addresses from the subnet range. *

*

* You can't specify a count of IPv6 addresses using this parameter if you've specified one of the following: * specific IPv6 addresses, specific IPv6 prefixes, or a count of IPv6 prefixes. *

*

* If your subnet has the AssignIpv6AddressOnCreation attribute set, you can override that setting by * specifying 0 as the IPv6 address count. *

* * @return The number of IPv6 addresses to assign to a network interface. Amazon EC2 automatically selects the IPv6 * addresses from the subnet range.

*

* You can't specify a count of IPv6 addresses using this parameter if you've specified one of the * following: specific IPv6 addresses, specific IPv6 prefixes, or a count of IPv6 prefixes. *

*

* If your subnet has the AssignIpv6AddressOnCreation attribute set, you can override that * setting by specifying 0 as the IPv6 address count. */ public Integer getIpv6AddressCount() { return this.ipv6AddressCount; } /** *

* The number of IPv6 addresses to assign to a network interface. Amazon EC2 automatically selects the IPv6 * addresses from the subnet range. *

*

* You can't specify a count of IPv6 addresses using this parameter if you've specified one of the following: * specific IPv6 addresses, specific IPv6 prefixes, or a count of IPv6 prefixes. *

*

* If your subnet has the AssignIpv6AddressOnCreation attribute set, you can override that setting by * specifying 0 as the IPv6 address count. *

* * @param ipv6AddressCount * The number of IPv6 addresses to assign to a network interface. Amazon EC2 automatically selects the IPv6 * addresses from the subnet range.

*

* You can't specify a count of IPv6 addresses using this parameter if you've specified one of the following: * specific IPv6 addresses, specific IPv6 prefixes, or a count of IPv6 prefixes. *

*

* If your subnet has the AssignIpv6AddressOnCreation attribute set, you can override that * setting by specifying 0 as the IPv6 address count. * @return Returns a reference to this object so that method calls can be chained together. */ public CreateNetworkInterfaceRequest withIpv6AddressCount(Integer ipv6AddressCount) { setIpv6AddressCount(ipv6AddressCount); return this; } /** *

* The IPv6 addresses from the IPv6 CIDR block range of your subnet. *

*

* You can't specify IPv6 addresses using this parameter if you've specified one of the following: a count of IPv6 * addresses, specific IPv6 prefixes, or a count of IPv6 prefixes. *

* * @return The IPv6 addresses from the IPv6 CIDR block range of your subnet.

*

* You can't specify IPv6 addresses using this parameter if you've specified one of the following: a count * of IPv6 addresses, specific IPv6 prefixes, or a count of IPv6 prefixes. */ public java.util.List getIpv6Addresses() { if (ipv6Addresses == null) { ipv6Addresses = new com.amazonaws.internal.SdkInternalList(); } return ipv6Addresses; } /** *

* The IPv6 addresses from the IPv6 CIDR block range of your subnet. *

*

* You can't specify IPv6 addresses using this parameter if you've specified one of the following: a count of IPv6 * addresses, specific IPv6 prefixes, or a count of IPv6 prefixes. *

* * @param ipv6Addresses * The IPv6 addresses from the IPv6 CIDR block range of your subnet.

*

* You can't specify IPv6 addresses using this parameter if you've specified one of the following: a count of * IPv6 addresses, specific IPv6 prefixes, or a count of IPv6 prefixes. */ public void setIpv6Addresses(java.util.Collection ipv6Addresses) { if (ipv6Addresses == null) { this.ipv6Addresses = null; return; } this.ipv6Addresses = new com.amazonaws.internal.SdkInternalList(ipv6Addresses); } /** *

* The IPv6 addresses from the IPv6 CIDR block range of your subnet. *

*

* You can't specify IPv6 addresses using this parameter if you've specified one of the following: a count of IPv6 * addresses, specific IPv6 prefixes, or a count of IPv6 prefixes. *

*

* NOTE: This method appends the values to the existing list (if any). Use * {@link #setIpv6Addresses(java.util.Collection)} or {@link #withIpv6Addresses(java.util.Collection)} if you want * to override the existing values. *

* * @param ipv6Addresses * The IPv6 addresses from the IPv6 CIDR block range of your subnet.

*

* You can't specify IPv6 addresses using this parameter if you've specified one of the following: a count of * IPv6 addresses, specific IPv6 prefixes, or a count of IPv6 prefixes. * @return Returns a reference to this object so that method calls can be chained together. */ public CreateNetworkInterfaceRequest withIpv6Addresses(InstanceIpv6Address... ipv6Addresses) { if (this.ipv6Addresses == null) { setIpv6Addresses(new com.amazonaws.internal.SdkInternalList(ipv6Addresses.length)); } for (InstanceIpv6Address ele : ipv6Addresses) { this.ipv6Addresses.add(ele); } return this; } /** *

* The IPv6 addresses from the IPv6 CIDR block range of your subnet. *

*

* You can't specify IPv6 addresses using this parameter if you've specified one of the following: a count of IPv6 * addresses, specific IPv6 prefixes, or a count of IPv6 prefixes. *

* * @param ipv6Addresses * The IPv6 addresses from the IPv6 CIDR block range of your subnet.

*

* You can't specify IPv6 addresses using this parameter if you've specified one of the following: a count of * IPv6 addresses, specific IPv6 prefixes, or a count of IPv6 prefixes. * @return Returns a reference to this object so that method calls can be chained together. */ public CreateNetworkInterfaceRequest withIpv6Addresses(java.util.Collection ipv6Addresses) { setIpv6Addresses(ipv6Addresses); return this; } /** *

* The primary private IPv4 address of the network interface. If you don't specify an IPv4 address, Amazon EC2 * selects one for you from the subnet's IPv4 CIDR range. If you specify an IP address, you cannot indicate any IP * addresses specified in privateIpAddresses as primary (only one IP address can be designated as * primary). *

* * @param privateIpAddress * The primary private IPv4 address of the network interface. If you don't specify an IPv4 address, Amazon * EC2 selects one for you from the subnet's IPv4 CIDR range. If you specify an IP address, you cannot * indicate any IP addresses specified in privateIpAddresses as primary (only one IP address can * be designated as primary). */ public void setPrivateIpAddress(String privateIpAddress) { this.privateIpAddress = privateIpAddress; } /** *

* The primary private IPv4 address of the network interface. If you don't specify an IPv4 address, Amazon EC2 * selects one for you from the subnet's IPv4 CIDR range. If you specify an IP address, you cannot indicate any IP * addresses specified in privateIpAddresses as primary (only one IP address can be designated as * primary). *

* * @return The primary private IPv4 address of the network interface. If you don't specify an IPv4 address, Amazon * EC2 selects one for you from the subnet's IPv4 CIDR range. If you specify an IP address, you cannot * indicate any IP addresses specified in privateIpAddresses as primary (only one IP address * can be designated as primary). */ public String getPrivateIpAddress() { return this.privateIpAddress; } /** *

* The primary private IPv4 address of the network interface. If you don't specify an IPv4 address, Amazon EC2 * selects one for you from the subnet's IPv4 CIDR range. If you specify an IP address, you cannot indicate any IP * addresses specified in privateIpAddresses as primary (only one IP address can be designated as * primary). *

* * @param privateIpAddress * The primary private IPv4 address of the network interface. If you don't specify an IPv4 address, Amazon * EC2 selects one for you from the subnet's IPv4 CIDR range. If you specify an IP address, you cannot * indicate any IP addresses specified in privateIpAddresses as primary (only one IP address can * be designated as primary). * @return Returns a reference to this object so that method calls can be chained together. */ public CreateNetworkInterfaceRequest withPrivateIpAddress(String privateIpAddress) { setPrivateIpAddress(privateIpAddress); return this; } /** *

* The private IPv4 addresses. *

*

* You can't specify private IPv4 addresses if you've specified one of the following: a count of private IPv4 * addresses, specific IPv4 prefixes, or a count of IPv4 prefixes. *

* * @return The private IPv4 addresses.

*

* You can't specify private IPv4 addresses if you've specified one of the following: a count of private * IPv4 addresses, specific IPv4 prefixes, or a count of IPv4 prefixes. */ public java.util.List getPrivateIpAddresses() { if (privateIpAddresses == null) { privateIpAddresses = new com.amazonaws.internal.SdkInternalList(); } return privateIpAddresses; } /** *

* The private IPv4 addresses. *

*

* You can't specify private IPv4 addresses if you've specified one of the following: a count of private IPv4 * addresses, specific IPv4 prefixes, or a count of IPv4 prefixes. *

* * @param privateIpAddresses * The private IPv4 addresses.

*

* You can't specify private IPv4 addresses if you've specified one of the following: a count of private IPv4 * addresses, specific IPv4 prefixes, or a count of IPv4 prefixes. */ public void setPrivateIpAddresses(java.util.Collection privateIpAddresses) { if (privateIpAddresses == null) { this.privateIpAddresses = null; return; } this.privateIpAddresses = new com.amazonaws.internal.SdkInternalList(privateIpAddresses); } /** *

* The private IPv4 addresses. *

*

* You can't specify private IPv4 addresses if you've specified one of the following: a count of private IPv4 * addresses, specific IPv4 prefixes, or a count of IPv4 prefixes. *

*

* NOTE: This method appends the values to the existing list (if any). Use * {@link #setPrivateIpAddresses(java.util.Collection)} or {@link #withPrivateIpAddresses(java.util.Collection)} if * you want to override the existing values. *

* * @param privateIpAddresses * The private IPv4 addresses.

*

* You can't specify private IPv4 addresses if you've specified one of the following: a count of private IPv4 * addresses, specific IPv4 prefixes, or a count of IPv4 prefixes. * @return Returns a reference to this object so that method calls can be chained together. */ public CreateNetworkInterfaceRequest withPrivateIpAddresses(PrivateIpAddressSpecification... privateIpAddresses) { if (this.privateIpAddresses == null) { setPrivateIpAddresses(new com.amazonaws.internal.SdkInternalList(privateIpAddresses.length)); } for (PrivateIpAddressSpecification ele : privateIpAddresses) { this.privateIpAddresses.add(ele); } return this; } /** *

* The private IPv4 addresses. *

*

* You can't specify private IPv4 addresses if you've specified one of the following: a count of private IPv4 * addresses, specific IPv4 prefixes, or a count of IPv4 prefixes. *

* * @param privateIpAddresses * The private IPv4 addresses.

*

* You can't specify private IPv4 addresses if you've specified one of the following: a count of private IPv4 * addresses, specific IPv4 prefixes, or a count of IPv4 prefixes. * @return Returns a reference to this object so that method calls can be chained together. */ public CreateNetworkInterfaceRequest withPrivateIpAddresses(java.util.Collection privateIpAddresses) { setPrivateIpAddresses(privateIpAddresses); return this; } /** *

* The number of secondary private IPv4 addresses to assign to a network interface. When you specify a number of * secondary IPv4 addresses, Amazon EC2 selects these IP addresses within the subnet's IPv4 CIDR range. You can't * specify this option and specify more than one private IP address using privateIpAddresses. *

*

* You can't specify a count of private IPv4 addresses if you've specified one of the following: specific private * IPv4 addresses, specific IPv4 prefixes, or a count of IPv4 prefixes. *

* * @param secondaryPrivateIpAddressCount * The number of secondary private IPv4 addresses to assign to a network interface. When you specify a number * of secondary IPv4 addresses, Amazon EC2 selects these IP addresses within the subnet's IPv4 CIDR range. * You can't specify this option and specify more than one private IP address using * privateIpAddresses.

*

* You can't specify a count of private IPv4 addresses if you've specified one of the following: specific * private IPv4 addresses, specific IPv4 prefixes, or a count of IPv4 prefixes. */ public void setSecondaryPrivateIpAddressCount(Integer secondaryPrivateIpAddressCount) { this.secondaryPrivateIpAddressCount = secondaryPrivateIpAddressCount; } /** *

* The number of secondary private IPv4 addresses to assign to a network interface. When you specify a number of * secondary IPv4 addresses, Amazon EC2 selects these IP addresses within the subnet's IPv4 CIDR range. You can't * specify this option and specify more than one private IP address using privateIpAddresses. *

*

* You can't specify a count of private IPv4 addresses if you've specified one of the following: specific private * IPv4 addresses, specific IPv4 prefixes, or a count of IPv4 prefixes. *

* * @return The number of secondary private IPv4 addresses to assign to a network interface. When you specify a * number of secondary IPv4 addresses, Amazon EC2 selects these IP addresses within the subnet's IPv4 CIDR * range. You can't specify this option and specify more than one private IP address using * privateIpAddresses.

*

* You can't specify a count of private IPv4 addresses if you've specified one of the following: specific * private IPv4 addresses, specific IPv4 prefixes, or a count of IPv4 prefixes. */ public Integer getSecondaryPrivateIpAddressCount() { return this.secondaryPrivateIpAddressCount; } /** *

* The number of secondary private IPv4 addresses to assign to a network interface. When you specify a number of * secondary IPv4 addresses, Amazon EC2 selects these IP addresses within the subnet's IPv4 CIDR range. You can't * specify this option and specify more than one private IP address using privateIpAddresses. *

*

* You can't specify a count of private IPv4 addresses if you've specified one of the following: specific private * IPv4 addresses, specific IPv4 prefixes, or a count of IPv4 prefixes. *

* * @param secondaryPrivateIpAddressCount * The number of secondary private IPv4 addresses to assign to a network interface. When you specify a number * of secondary IPv4 addresses, Amazon EC2 selects these IP addresses within the subnet's IPv4 CIDR range. * You can't specify this option and specify more than one private IP address using * privateIpAddresses.

*

* You can't specify a count of private IPv4 addresses if you've specified one of the following: specific * private IPv4 addresses, specific IPv4 prefixes, or a count of IPv4 prefixes. * @return Returns a reference to this object so that method calls can be chained together. */ public CreateNetworkInterfaceRequest withSecondaryPrivateIpAddressCount(Integer secondaryPrivateIpAddressCount) { setSecondaryPrivateIpAddressCount(secondaryPrivateIpAddressCount); return this; } /** *

* The IPv4 prefixes assigned to the network interface. *

*

* You can't specify IPv4 prefixes if you've specified one of the following: a count of IPv4 prefixes, specific * private IPv4 addresses, or a count of private IPv4 addresses. *

* * @return The IPv4 prefixes assigned to the network interface.

*

* You can't specify IPv4 prefixes if you've specified one of the following: a count of IPv4 prefixes, * specific private IPv4 addresses, or a count of private IPv4 addresses. */ public java.util.List getIpv4Prefixes() { if (ipv4Prefixes == null) { ipv4Prefixes = new com.amazonaws.internal.SdkInternalList(); } return ipv4Prefixes; } /** *

* The IPv4 prefixes assigned to the network interface. *

*

* You can't specify IPv4 prefixes if you've specified one of the following: a count of IPv4 prefixes, specific * private IPv4 addresses, or a count of private IPv4 addresses. *

* * @param ipv4Prefixes * The IPv4 prefixes assigned to the network interface.

*

* You can't specify IPv4 prefixes if you've specified one of the following: a count of IPv4 prefixes, * specific private IPv4 addresses, or a count of private IPv4 addresses. */ public void setIpv4Prefixes(java.util.Collection ipv4Prefixes) { if (ipv4Prefixes == null) { this.ipv4Prefixes = null; return; } this.ipv4Prefixes = new com.amazonaws.internal.SdkInternalList(ipv4Prefixes); } /** *

* The IPv4 prefixes assigned to the network interface. *

*

* You can't specify IPv4 prefixes if you've specified one of the following: a count of IPv4 prefixes, specific * private IPv4 addresses, or a count of private IPv4 addresses. *

*

* NOTE: This method appends the values to the existing list (if any). Use * {@link #setIpv4Prefixes(java.util.Collection)} or {@link #withIpv4Prefixes(java.util.Collection)} if you want to * override the existing values. *

* * @param ipv4Prefixes * The IPv4 prefixes assigned to the network interface.

*

* You can't specify IPv4 prefixes if you've specified one of the following: a count of IPv4 prefixes, * specific private IPv4 addresses, or a count of private IPv4 addresses. * @return Returns a reference to this object so that method calls can be chained together. */ public CreateNetworkInterfaceRequest withIpv4Prefixes(Ipv4PrefixSpecificationRequest... ipv4Prefixes) { if (this.ipv4Prefixes == null) { setIpv4Prefixes(new com.amazonaws.internal.SdkInternalList(ipv4Prefixes.length)); } for (Ipv4PrefixSpecificationRequest ele : ipv4Prefixes) { this.ipv4Prefixes.add(ele); } return this; } /** *

* The IPv4 prefixes assigned to the network interface. *

*

* You can't specify IPv4 prefixes if you've specified one of the following: a count of IPv4 prefixes, specific * private IPv4 addresses, or a count of private IPv4 addresses. *

* * @param ipv4Prefixes * The IPv4 prefixes assigned to the network interface.

*

* You can't specify IPv4 prefixes if you've specified one of the following: a count of IPv4 prefixes, * specific private IPv4 addresses, or a count of private IPv4 addresses. * @return Returns a reference to this object so that method calls can be chained together. */ public CreateNetworkInterfaceRequest withIpv4Prefixes(java.util.Collection ipv4Prefixes) { setIpv4Prefixes(ipv4Prefixes); return this; } /** *

* The number of IPv4 prefixes that Amazon Web Services automatically assigns to the network interface. *

*

* You can't specify a count of IPv4 prefixes if you've specified one of the following: specific IPv4 prefixes, * specific private IPv4 addresses, or a count of private IPv4 addresses. *

* * @param ipv4PrefixCount * The number of IPv4 prefixes that Amazon Web Services automatically assigns to the network interface.

*

* You can't specify a count of IPv4 prefixes if you've specified one of the following: specific IPv4 * prefixes, specific private IPv4 addresses, or a count of private IPv4 addresses. */ public void setIpv4PrefixCount(Integer ipv4PrefixCount) { this.ipv4PrefixCount = ipv4PrefixCount; } /** *

* The number of IPv4 prefixes that Amazon Web Services automatically assigns to the network interface. *

*

* You can't specify a count of IPv4 prefixes if you've specified one of the following: specific IPv4 prefixes, * specific private IPv4 addresses, or a count of private IPv4 addresses. *

* * @return The number of IPv4 prefixes that Amazon Web Services automatically assigns to the network interface.

*

* You can't specify a count of IPv4 prefixes if you've specified one of the following: specific IPv4 * prefixes, specific private IPv4 addresses, or a count of private IPv4 addresses. */ public Integer getIpv4PrefixCount() { return this.ipv4PrefixCount; } /** *

* The number of IPv4 prefixes that Amazon Web Services automatically assigns to the network interface. *

*

* You can't specify a count of IPv4 prefixes if you've specified one of the following: specific IPv4 prefixes, * specific private IPv4 addresses, or a count of private IPv4 addresses. *

* * @param ipv4PrefixCount * The number of IPv4 prefixes that Amazon Web Services automatically assigns to the network interface.

*

* You can't specify a count of IPv4 prefixes if you've specified one of the following: specific IPv4 * prefixes, specific private IPv4 addresses, or a count of private IPv4 addresses. * @return Returns a reference to this object so that method calls can be chained together. */ public CreateNetworkInterfaceRequest withIpv4PrefixCount(Integer ipv4PrefixCount) { setIpv4PrefixCount(ipv4PrefixCount); return this; } /** *

* The IPv6 prefixes assigned to the network interface. *

*

* You can't specify IPv6 prefixes if you've specified one of the following: a count of IPv6 prefixes, specific IPv6 * addresses, or a count of IPv6 addresses. *

* * @return The IPv6 prefixes assigned to the network interface.

*

* You can't specify IPv6 prefixes if you've specified one of the following: a count of IPv6 prefixes, * specific IPv6 addresses, or a count of IPv6 addresses. */ public java.util.List getIpv6Prefixes() { if (ipv6Prefixes == null) { ipv6Prefixes = new com.amazonaws.internal.SdkInternalList(); } return ipv6Prefixes; } /** *

* The IPv6 prefixes assigned to the network interface. *

*

* You can't specify IPv6 prefixes if you've specified one of the following: a count of IPv6 prefixes, specific IPv6 * addresses, or a count of IPv6 addresses. *

* * @param ipv6Prefixes * The IPv6 prefixes assigned to the network interface.

*

* You can't specify IPv6 prefixes if you've specified one of the following: a count of IPv6 prefixes, * specific IPv6 addresses, or a count of IPv6 addresses. */ public void setIpv6Prefixes(java.util.Collection ipv6Prefixes) { if (ipv6Prefixes == null) { this.ipv6Prefixes = null; return; } this.ipv6Prefixes = new com.amazonaws.internal.SdkInternalList(ipv6Prefixes); } /** *

* The IPv6 prefixes assigned to the network interface. *

*

* You can't specify IPv6 prefixes if you've specified one of the following: a count of IPv6 prefixes, specific IPv6 * addresses, or a count of IPv6 addresses. *

*

* NOTE: This method appends the values to the existing list (if any). Use * {@link #setIpv6Prefixes(java.util.Collection)} or {@link #withIpv6Prefixes(java.util.Collection)} if you want to * override the existing values. *

* * @param ipv6Prefixes * The IPv6 prefixes assigned to the network interface.

*

* You can't specify IPv6 prefixes if you've specified one of the following: a count of IPv6 prefixes, * specific IPv6 addresses, or a count of IPv6 addresses. * @return Returns a reference to this object so that method calls can be chained together. */ public CreateNetworkInterfaceRequest withIpv6Prefixes(Ipv6PrefixSpecificationRequest... ipv6Prefixes) { if (this.ipv6Prefixes == null) { setIpv6Prefixes(new com.amazonaws.internal.SdkInternalList(ipv6Prefixes.length)); } for (Ipv6PrefixSpecificationRequest ele : ipv6Prefixes) { this.ipv6Prefixes.add(ele); } return this; } /** *

* The IPv6 prefixes assigned to the network interface. *

*

* You can't specify IPv6 prefixes if you've specified one of the following: a count of IPv6 prefixes, specific IPv6 * addresses, or a count of IPv6 addresses. *

* * @param ipv6Prefixes * The IPv6 prefixes assigned to the network interface.

*

* You can't specify IPv6 prefixes if you've specified one of the following: a count of IPv6 prefixes, * specific IPv6 addresses, or a count of IPv6 addresses. * @return Returns a reference to this object so that method calls can be chained together. */ public CreateNetworkInterfaceRequest withIpv6Prefixes(java.util.Collection ipv6Prefixes) { setIpv6Prefixes(ipv6Prefixes); return this; } /** *

* The number of IPv6 prefixes that Amazon Web Services automatically assigns to the network interface. *

*

* You can't specify a count of IPv6 prefixes if you've specified one of the following: specific IPv6 prefixes, * specific IPv6 addresses, or a count of IPv6 addresses. *

* * @param ipv6PrefixCount * The number of IPv6 prefixes that Amazon Web Services automatically assigns to the network interface.

*

* You can't specify a count of IPv6 prefixes if you've specified one of the following: specific IPv6 * prefixes, specific IPv6 addresses, or a count of IPv6 addresses. */ public void setIpv6PrefixCount(Integer ipv6PrefixCount) { this.ipv6PrefixCount = ipv6PrefixCount; } /** *

* The number of IPv6 prefixes that Amazon Web Services automatically assigns to the network interface. *

*

* You can't specify a count of IPv6 prefixes if you've specified one of the following: specific IPv6 prefixes, * specific IPv6 addresses, or a count of IPv6 addresses. *

* * @return The number of IPv6 prefixes that Amazon Web Services automatically assigns to the network interface.

*

* You can't specify a count of IPv6 prefixes if you've specified one of the following: specific IPv6 * prefixes, specific IPv6 addresses, or a count of IPv6 addresses. */ public Integer getIpv6PrefixCount() { return this.ipv6PrefixCount; } /** *

* The number of IPv6 prefixes that Amazon Web Services automatically assigns to the network interface. *

*

* You can't specify a count of IPv6 prefixes if you've specified one of the following: specific IPv6 prefixes, * specific IPv6 addresses, or a count of IPv6 addresses. *

* * @param ipv6PrefixCount * The number of IPv6 prefixes that Amazon Web Services automatically assigns to the network interface.

*

* You can't specify a count of IPv6 prefixes if you've specified one of the following: specific IPv6 * prefixes, specific IPv6 addresses, or a count of IPv6 addresses. * @return Returns a reference to this object so that method calls can be chained together. */ public CreateNetworkInterfaceRequest withIpv6PrefixCount(Integer ipv6PrefixCount) { setIpv6PrefixCount(ipv6PrefixCount); return this; } /** *

* The type of network interface. The default is interface. *

*

* The only supported values are interface, efa, and trunk. *

* * @param interfaceType * The type of network interface. The default is interface.

*

* The only supported values are interface, efa, and trunk. * @see NetworkInterfaceCreationType */ public void setInterfaceType(String interfaceType) { this.interfaceType = interfaceType; } /** *

* The type of network interface. The default is interface. *

*

* The only supported values are interface, efa, and trunk. *

* * @return The type of network interface. The default is interface.

*

* The only supported values are interface, efa, and trunk. * @see NetworkInterfaceCreationType */ public String getInterfaceType() { return this.interfaceType; } /** *

* The type of network interface. The default is interface. *

*

* The only supported values are interface, efa, and trunk. *

* * @param interfaceType * The type of network interface. The default is interface.

*

* The only supported values are interface, efa, and trunk. * @return Returns a reference to this object so that method calls can be chained together. * @see NetworkInterfaceCreationType */ public CreateNetworkInterfaceRequest withInterfaceType(String interfaceType) { setInterfaceType(interfaceType); return this; } /** *

* The type of network interface. The default is interface. *

*

* The only supported values are interface, efa, and trunk. *

* * @param interfaceType * The type of network interface. The default is interface.

*

* The only supported values are interface, efa, and trunk. * @return Returns a reference to this object so that method calls can be chained together. * @see NetworkInterfaceCreationType */ public CreateNetworkInterfaceRequest withInterfaceType(NetworkInterfaceCreationType interfaceType) { this.interfaceType = interfaceType.toString(); return this; } /** *

* The ID of the subnet to associate with the network interface. *

* * @param subnetId * The ID of the subnet to associate with the network interface. */ public void setSubnetId(String subnetId) { this.subnetId = subnetId; } /** *

* The ID of the subnet to associate with the network interface. *

* * @return The ID of the subnet to associate with the network interface. */ public String getSubnetId() { return this.subnetId; } /** *

* The ID of the subnet to associate with the network interface. *

* * @param subnetId * The ID of the subnet to associate with the network interface. * @return Returns a reference to this object so that method calls can be chained together. */ public CreateNetworkInterfaceRequest withSubnetId(String subnetId) { setSubnetId(subnetId); return this; } /** *

* The tags to apply to the new network interface. *

* * @return The tags to apply to the new network interface. */ public java.util.List getTagSpecifications() { if (tagSpecifications == null) { tagSpecifications = new com.amazonaws.internal.SdkInternalList(); } return tagSpecifications; } /** *

* The tags to apply to the new network interface. *

* * @param tagSpecifications * The tags to apply to the new network interface. */ public void setTagSpecifications(java.util.Collection tagSpecifications) { if (tagSpecifications == null) { this.tagSpecifications = null; return; } this.tagSpecifications = new com.amazonaws.internal.SdkInternalList(tagSpecifications); } /** *

* The tags to apply to the new network interface. *

*

* 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 apply to the new network interface. * @return Returns a reference to this object so that method calls can be chained together. */ public CreateNetworkInterfaceRequest withTagSpecifications(TagSpecification... tagSpecifications) { if (this.tagSpecifications == null) { setTagSpecifications(new com.amazonaws.internal.SdkInternalList(tagSpecifications.length)); } for (TagSpecification ele : tagSpecifications) { this.tagSpecifications.add(ele); } return this; } /** *

* The tags to apply to the new network interface. *

* * @param tagSpecifications * The tags to apply to the new network interface. * @return Returns a reference to this object so that method calls can be chained together. */ public CreateNetworkInterfaceRequest withTagSpecifications(java.util.Collection tagSpecifications) { setTagSpecifications(tagSpecifications); return this; } /** *

* Unique, case-sensitive identifier that you provide to ensure the idempotency of the request. For more * information, see Ensuring * idempotency. *

* * @param clientToken * Unique, case-sensitive identifier that you provide to ensure the idempotency of the request. For more * information, see Ensuring idempotency. */ public void setClientToken(String clientToken) { this.clientToken = clientToken; } /** *

* Unique, case-sensitive identifier that you provide to ensure the idempotency of the request. For more * information, see Ensuring * idempotency. *

* * @return Unique, case-sensitive identifier that you provide to ensure the idempotency of the request. For more * information, see Ensuring idempotency. */ public String getClientToken() { return this.clientToken; } /** *

* Unique, case-sensitive identifier that you provide to ensure the idempotency of the request. For more * information, see Ensuring * idempotency. *

* * @param clientToken * Unique, case-sensitive identifier that you provide to ensure the idempotency of the request. For more * information, see Ensuring idempotency. * @return Returns a reference to this object so that method calls can be chained together. */ public CreateNetworkInterfaceRequest withClientToken(String clientToken) { setClientToken(clientToken); return this; } /** *

* If you’re creating a network interface in a dual-stack or IPv6-only subnet, you have the option to assign a * primary IPv6 IP address. A primary IPv6 address is an IPv6 GUA address associated with an ENI that you have * enabled to use a primary IPv6 address. Use this option if the instance that this ENI will be attached to relies * on its IPv6 address not changing. Amazon Web Services will automatically assign an IPv6 address associated with * the ENI attached to your instance to be the primary IPv6 address. Once you enable an IPv6 GUA address to be a * primary IPv6, you cannot disable it. When you enable an IPv6 GUA address to be a primary IPv6, the first IPv6 GUA * will be made the primary IPv6 address until the instance is terminated or the network interface is detached. If * you have multiple IPv6 addresses associated with an ENI attached to your instance and you enable a primary IPv6 * address, the first IPv6 GUA address associated with the ENI becomes the primary IPv6 address. *

* * @param enablePrimaryIpv6 * If you’re creating a network interface in a dual-stack or IPv6-only subnet, you have the option to assign * a primary IPv6 IP address. A primary IPv6 address is an IPv6 GUA address associated with an ENI that you * have enabled to use a primary IPv6 address. Use this option if the instance that this ENI will be attached * to relies on its IPv6 address not changing. Amazon Web Services will automatically assign an IPv6 address * associated with the ENI attached to your instance to be the primary IPv6 address. Once you enable an IPv6 * GUA address to be a primary IPv6, you cannot disable it. When you enable an IPv6 GUA address to be a * primary IPv6, the first IPv6 GUA will be made the primary IPv6 address until the instance is terminated or * the network interface is detached. If you have multiple IPv6 addresses associated with an ENI attached to * your instance and you enable a primary IPv6 address, the first IPv6 GUA address associated with the ENI * becomes the primary IPv6 address. */ public void setEnablePrimaryIpv6(Boolean enablePrimaryIpv6) { this.enablePrimaryIpv6 = enablePrimaryIpv6; } /** *

* If you’re creating a network interface in a dual-stack or IPv6-only subnet, you have the option to assign a * primary IPv6 IP address. A primary IPv6 address is an IPv6 GUA address associated with an ENI that you have * enabled to use a primary IPv6 address. Use this option if the instance that this ENI will be attached to relies * on its IPv6 address not changing. Amazon Web Services will automatically assign an IPv6 address associated with * the ENI attached to your instance to be the primary IPv6 address. Once you enable an IPv6 GUA address to be a * primary IPv6, you cannot disable it. When you enable an IPv6 GUA address to be a primary IPv6, the first IPv6 GUA * will be made the primary IPv6 address until the instance is terminated or the network interface is detached. If * you have multiple IPv6 addresses associated with an ENI attached to your instance and you enable a primary IPv6 * address, the first IPv6 GUA address associated with the ENI becomes the primary IPv6 address. *

* * @return If you’re creating a network interface in a dual-stack or IPv6-only subnet, you have the option to assign * a primary IPv6 IP address. A primary IPv6 address is an IPv6 GUA address associated with an ENI that you * have enabled to use a primary IPv6 address. Use this option if the instance that this ENI will be * attached to relies on its IPv6 address not changing. Amazon Web Services will automatically assign an * IPv6 address associated with the ENI attached to your instance to be the primary IPv6 address. Once you * enable an IPv6 GUA address to be a primary IPv6, you cannot disable it. When you enable an IPv6 GUA * address to be a primary IPv6, the first IPv6 GUA will be made the primary IPv6 address until the instance * is terminated or the network interface is detached. If you have multiple IPv6 addresses associated with * an ENI attached to your instance and you enable a primary IPv6 address, the first IPv6 GUA address * associated with the ENI becomes the primary IPv6 address. */ public Boolean getEnablePrimaryIpv6() { return this.enablePrimaryIpv6; } /** *

* If you’re creating a network interface in a dual-stack or IPv6-only subnet, you have the option to assign a * primary IPv6 IP address. A primary IPv6 address is an IPv6 GUA address associated with an ENI that you have * enabled to use a primary IPv6 address. Use this option if the instance that this ENI will be attached to relies * on its IPv6 address not changing. Amazon Web Services will automatically assign an IPv6 address associated with * the ENI attached to your instance to be the primary IPv6 address. Once you enable an IPv6 GUA address to be a * primary IPv6, you cannot disable it. When you enable an IPv6 GUA address to be a primary IPv6, the first IPv6 GUA * will be made the primary IPv6 address until the instance is terminated or the network interface is detached. If * you have multiple IPv6 addresses associated with an ENI attached to your instance and you enable a primary IPv6 * address, the first IPv6 GUA address associated with the ENI becomes the primary IPv6 address. *

* * @param enablePrimaryIpv6 * If you’re creating a network interface in a dual-stack or IPv6-only subnet, you have the option to assign * a primary IPv6 IP address. A primary IPv6 address is an IPv6 GUA address associated with an ENI that you * have enabled to use a primary IPv6 address. Use this option if the instance that this ENI will be attached * to relies on its IPv6 address not changing. Amazon Web Services will automatically assign an IPv6 address * associated with the ENI attached to your instance to be the primary IPv6 address. Once you enable an IPv6 * GUA address to be a primary IPv6, you cannot disable it. When you enable an IPv6 GUA address to be a * primary IPv6, the first IPv6 GUA will be made the primary IPv6 address until the instance is terminated or * the network interface is detached. If you have multiple IPv6 addresses associated with an ENI attached to * your instance and you enable a primary IPv6 address, the first IPv6 GUA address associated with the ENI * becomes the primary IPv6 address. * @return Returns a reference to this object so that method calls can be chained together. */ public CreateNetworkInterfaceRequest withEnablePrimaryIpv6(Boolean enablePrimaryIpv6) { setEnablePrimaryIpv6(enablePrimaryIpv6); return this; } /** *

* If you’re creating a network interface in a dual-stack or IPv6-only subnet, you have the option to assign a * primary IPv6 IP address. A primary IPv6 address is an IPv6 GUA address associated with an ENI that you have * enabled to use a primary IPv6 address. Use this option if the instance that this ENI will be attached to relies * on its IPv6 address not changing. Amazon Web Services will automatically assign an IPv6 address associated with * the ENI attached to your instance to be the primary IPv6 address. Once you enable an IPv6 GUA address to be a * primary IPv6, you cannot disable it. When you enable an IPv6 GUA address to be a primary IPv6, the first IPv6 GUA * will be made the primary IPv6 address until the instance is terminated or the network interface is detached. If * you have multiple IPv6 addresses associated with an ENI attached to your instance and you enable a primary IPv6 * address, the first IPv6 GUA address associated with the ENI becomes the primary IPv6 address. *

* * @return If you’re creating a network interface in a dual-stack or IPv6-only subnet, you have the option to assign * a primary IPv6 IP address. A primary IPv6 address is an IPv6 GUA address associated with an ENI that you * have enabled to use a primary IPv6 address. Use this option if the instance that this ENI will be * attached to relies on its IPv6 address not changing. Amazon Web Services will automatically assign an * IPv6 address associated with the ENI attached to your instance to be the primary IPv6 address. Once you * enable an IPv6 GUA address to be a primary IPv6, you cannot disable it. When you enable an IPv6 GUA * address to be a primary IPv6, the first IPv6 GUA will be made the primary IPv6 address until the instance * is terminated or the network interface is detached. If you have multiple IPv6 addresses associated with * an ENI attached to your instance and you enable a primary IPv6 address, the first IPv6 GUA address * associated with the ENI becomes the primary IPv6 address. */ public Boolean isEnablePrimaryIpv6() { return this.enablePrimaryIpv6; } /** *

* A connection tracking specification for the network interface. *

* * @param connectionTrackingSpecification * A connection tracking specification for the network interface. */ public void setConnectionTrackingSpecification(ConnectionTrackingSpecificationRequest connectionTrackingSpecification) { this.connectionTrackingSpecification = connectionTrackingSpecification; } /** *

* A connection tracking specification for the network interface. *

* * @return A connection tracking specification for the network interface. */ public ConnectionTrackingSpecificationRequest getConnectionTrackingSpecification() { return this.connectionTrackingSpecification; } /** *

* A connection tracking specification for the network interface. *

* * @param connectionTrackingSpecification * A connection tracking specification for the network interface. * @return Returns a reference to this object so that method calls can be chained together. */ public CreateNetworkInterfaceRequest withConnectionTrackingSpecification(ConnectionTrackingSpecificationRequest connectionTrackingSpecification) { setConnectionTrackingSpecification(connectionTrackingSpecification); return this; } /** * This method is intended for internal use only. Returns the marshaled request configured with additional * parameters to enable operation dry-run. */ @Override public Request getDryRunRequest() { Request request = new CreateNetworkInterfaceRequestMarshaller().marshall(this); request.addParameter("DryRun", Boolean.toString(true)); return request; } /** * Returns a string representation of this object. This is useful for testing and debugging. Sensitive data will be * redacted from this string using a placeholder value. * * @return A string representation of this object. * * @see java.lang.Object#toString() */ @Override public String toString() { StringBuilder sb = new StringBuilder(); sb.append("{"); if (getDescription() != null) sb.append("Description: ").append(getDescription()).append(","); if (getGroups() != null) sb.append("Groups: ").append(getGroups()).append(","); if (getIpv6AddressCount() != null) sb.append("Ipv6AddressCount: ").append(getIpv6AddressCount()).append(","); if (getIpv6Addresses() != null) sb.append("Ipv6Addresses: ").append(getIpv6Addresses()).append(","); if (getPrivateIpAddress() != null) sb.append("PrivateIpAddress: ").append(getPrivateIpAddress()).append(","); if (getPrivateIpAddresses() != null) sb.append("PrivateIpAddresses: ").append(getPrivateIpAddresses()).append(","); if (getSecondaryPrivateIpAddressCount() != null) sb.append("SecondaryPrivateIpAddressCount: ").append(getSecondaryPrivateIpAddressCount()).append(","); if (getIpv4Prefixes() != null) sb.append("Ipv4Prefixes: ").append(getIpv4Prefixes()).append(","); if (getIpv4PrefixCount() != null) sb.append("Ipv4PrefixCount: ").append(getIpv4PrefixCount()).append(","); if (getIpv6Prefixes() != null) sb.append("Ipv6Prefixes: ").append(getIpv6Prefixes()).append(","); if (getIpv6PrefixCount() != null) sb.append("Ipv6PrefixCount: ").append(getIpv6PrefixCount()).append(","); if (getInterfaceType() != null) sb.append("InterfaceType: ").append(getInterfaceType()).append(","); if (getSubnetId() != null) sb.append("SubnetId: ").append(getSubnetId()).append(","); if (getTagSpecifications() != null) sb.append("TagSpecifications: ").append(getTagSpecifications()).append(","); if (getClientToken() != null) sb.append("ClientToken: ").append(getClientToken()).append(","); if (getEnablePrimaryIpv6() != null) sb.append("EnablePrimaryIpv6: ").append(getEnablePrimaryIpv6()).append(","); if (getConnectionTrackingSpecification() != null) sb.append("ConnectionTrackingSpecification: ").append(getConnectionTrackingSpecification()); sb.append("}"); return sb.toString(); } @Override public boolean equals(Object obj) { if (this == obj) return true; if (obj == null) return false; if (obj instanceof CreateNetworkInterfaceRequest == false) return false; CreateNetworkInterfaceRequest other = (CreateNetworkInterfaceRequest) obj; if (other.getDescription() == null ^ this.getDescription() == null) return false; if (other.getDescription() != null && other.getDescription().equals(this.getDescription()) == false) return false; if (other.getGroups() == null ^ this.getGroups() == null) return false; if (other.getGroups() != null && other.getGroups().equals(this.getGroups()) == false) return false; if (other.getIpv6AddressCount() == null ^ this.getIpv6AddressCount() == null) return false; if (other.getIpv6AddressCount() != null && other.getIpv6AddressCount().equals(this.getIpv6AddressCount()) == false) return false; if (other.getIpv6Addresses() == null ^ this.getIpv6Addresses() == null) return false; if (other.getIpv6Addresses() != null && other.getIpv6Addresses().equals(this.getIpv6Addresses()) == false) return false; if (other.getPrivateIpAddress() == null ^ this.getPrivateIpAddress() == null) return false; if (other.getPrivateIpAddress() != null && other.getPrivateIpAddress().equals(this.getPrivateIpAddress()) == false) return false; if (other.getPrivateIpAddresses() == null ^ this.getPrivateIpAddresses() == null) return false; if (other.getPrivateIpAddresses() != null && other.getPrivateIpAddresses().equals(this.getPrivateIpAddresses()) == false) return false; if (other.getSecondaryPrivateIpAddressCount() == null ^ this.getSecondaryPrivateIpAddressCount() == null) return false; if (other.getSecondaryPrivateIpAddressCount() != null && other.getSecondaryPrivateIpAddressCount().equals(this.getSecondaryPrivateIpAddressCount()) == false) return false; if (other.getIpv4Prefixes() == null ^ this.getIpv4Prefixes() == null) return false; if (other.getIpv4Prefixes() != null && other.getIpv4Prefixes().equals(this.getIpv4Prefixes()) == false) return false; if (other.getIpv4PrefixCount() == null ^ this.getIpv4PrefixCount() == null) return false; if (other.getIpv4PrefixCount() != null && other.getIpv4PrefixCount().equals(this.getIpv4PrefixCount()) == false) return false; if (other.getIpv6Prefixes() == null ^ this.getIpv6Prefixes() == null) return false; if (other.getIpv6Prefixes() != null && other.getIpv6Prefixes().equals(this.getIpv6Prefixes()) == false) return false; if (other.getIpv6PrefixCount() == null ^ this.getIpv6PrefixCount() == null) return false; if (other.getIpv6PrefixCount() != null && other.getIpv6PrefixCount().equals(this.getIpv6PrefixCount()) == false) return false; if (other.getInterfaceType() == null ^ this.getInterfaceType() == null) return false; if (other.getInterfaceType() != null && other.getInterfaceType().equals(this.getInterfaceType()) == false) return false; if (other.getSubnetId() == null ^ this.getSubnetId() == null) return false; if (other.getSubnetId() != null && other.getSubnetId().equals(this.getSubnetId()) == false) return false; if (other.getTagSpecifications() == null ^ this.getTagSpecifications() == null) return false; if (other.getTagSpecifications() != null && other.getTagSpecifications().equals(this.getTagSpecifications()) == false) return false; if (other.getClientToken() == null ^ this.getClientToken() == null) return false; if (other.getClientToken() != null && other.getClientToken().equals(this.getClientToken()) == false) return false; if (other.getEnablePrimaryIpv6() == null ^ this.getEnablePrimaryIpv6() == null) return false; if (other.getEnablePrimaryIpv6() != null && other.getEnablePrimaryIpv6().equals(this.getEnablePrimaryIpv6()) == false) return false; if (other.getConnectionTrackingSpecification() == null ^ this.getConnectionTrackingSpecification() == null) return false; if (other.getConnectionTrackingSpecification() != null && other.getConnectionTrackingSpecification().equals(this.getConnectionTrackingSpecification()) == false) return false; return true; } @Override public int hashCode() { final int prime = 31; int hashCode = 1; hashCode = prime * hashCode + ((getDescription() == null) ? 0 : getDescription().hashCode()); hashCode = prime * hashCode + ((getGroups() == null) ? 0 : getGroups().hashCode()); hashCode = prime * hashCode + ((getIpv6AddressCount() == null) ? 0 : getIpv6AddressCount().hashCode()); hashCode = prime * hashCode + ((getIpv6Addresses() == null) ? 0 : getIpv6Addresses().hashCode()); hashCode = prime * hashCode + ((getPrivateIpAddress() == null) ? 0 : getPrivateIpAddress().hashCode()); hashCode = prime * hashCode + ((getPrivateIpAddresses() == null) ? 0 : getPrivateIpAddresses().hashCode()); hashCode = prime * hashCode + ((getSecondaryPrivateIpAddressCount() == null) ? 0 : getSecondaryPrivateIpAddressCount().hashCode()); hashCode = prime * hashCode + ((getIpv4Prefixes() == null) ? 0 : getIpv4Prefixes().hashCode()); hashCode = prime * hashCode + ((getIpv4PrefixCount() == null) ? 0 : getIpv4PrefixCount().hashCode()); hashCode = prime * hashCode + ((getIpv6Prefixes() == null) ? 0 : getIpv6Prefixes().hashCode()); hashCode = prime * hashCode + ((getIpv6PrefixCount() == null) ? 0 : getIpv6PrefixCount().hashCode()); hashCode = prime * hashCode + ((getInterfaceType() == null) ? 0 : getInterfaceType().hashCode()); hashCode = prime * hashCode + ((getSubnetId() == null) ? 0 : getSubnetId().hashCode()); hashCode = prime * hashCode + ((getTagSpecifications() == null) ? 0 : getTagSpecifications().hashCode()); hashCode = prime * hashCode + ((getClientToken() == null) ? 0 : getClientToken().hashCode()); hashCode = prime * hashCode + ((getEnablePrimaryIpv6() == null) ? 0 : getEnablePrimaryIpv6().hashCode()); hashCode = prime * hashCode + ((getConnectionTrackingSpecification() == null) ? 0 : getConnectionTrackingSpecification().hashCode()); return hashCode; } @Override public CreateNetworkInterfaceRequest clone() { return (CreateNetworkInterfaceRequest) super.clone(); } }




© 2015 - 2024 Weber Informatics LLC | Privacy Policy