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

com.amazonaws.services.transfer.model.EndpointDetails Maven / Gradle / Ivy

Go to download

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

There is a newer version: 1.12.772
Show 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.transfer.model;

import java.io.Serializable;
import javax.annotation.Generated;
import com.amazonaws.protocol.StructuredPojo;
import com.amazonaws.protocol.ProtocolMarshaller;

/**
 * 

* The virtual private cloud (VPC) endpoint settings that are configured for your file transfer protocol-enabled server. * With a VPC endpoint, you can restrict access to your server and resources only within your VPC. To control incoming * internet traffic, invoke the UpdateServer API and attach an Elastic IP address to your server's * endpoint. *

* *

* After May 19, 2021, you won't be able to create a server using EndpointType=VPC_ENDPOINT in your Amazon * Web Servicesaccount if your account hasn't already done so before May 19, 2021. If you have already created servers * with EndpointType=VPC_ENDPOINT in your Amazon Web Servicesaccount on or before May 19, 2021, you will * not be affected. After this date, use EndpointType=VPC. *

*

* For more information, see * https://docs.aws.amazon.com/transfer/latest/userguide/create-server-in-vpc.html#deprecate-vpc-endpoint. *

*
* * @see AWS API * Documentation */ @Generated("com.amazonaws:aws-java-sdk-code-generator") public class EndpointDetails implements Serializable, Cloneable, StructuredPojo { /** *

* A list of address allocation IDs that are required to attach an Elastic IP address to your server's endpoint. *

*

* An address allocation ID corresponds to the allocation ID of an Elastic IP address. This value can be retrieved * from the allocationId field from the Amazon EC2 Address data type. One way to * retrieve this value is by calling the EC2 DescribeAddresses * API. *

*

* This parameter is optional. Set this parameter if you want to make your VPC endpoint public-facing. For details, * see Create an internet-facing endpoint for your server. *

* *

* This property can only be set as follows: *

*
    *
  • *

    * EndpointType must be set to VPC *

    *
  • *
  • *

    * The Transfer Family server must be offline. *

    *
  • *
  • *

    * You cannot set this parameter for Transfer Family servers that use the FTP protocol. *

    *
  • *
  • *

    * The server must already have SubnetIds populated (SubnetIds and * AddressAllocationIds cannot be updated simultaneously). *

    *
  • *
  • *

    * AddressAllocationIds can't contain duplicates, and must be equal in length to SubnetIds * . For example, if you have three subnet IDs, you must also specify three address allocation IDs. *

    *
  • *
  • *

    * Call the UpdateServer API to set or change this parameter. *

    *
  • *
*
*/ private java.util.List addressAllocationIds; /** *

* A list of subnet IDs that are required to host your server endpoint in your VPC. *

* *

* This property can only be set when EndpointType is set to VPC. *

*
*/ private java.util.List subnetIds; /** *

* The identifier of the VPC endpoint. *

* *

* This property can only be set when EndpointType is set to VPC_ENDPOINT. *

*

* For more information, see * https://docs.aws.amazon.com/transfer/latest/userguide/create-server-in-vpc.html#deprecate-vpc-endpoint. *

*
*/ private String vpcEndpointId; /** *

* The VPC identifier of the VPC in which a server's endpoint will be hosted. *

* *

* This property can only be set when EndpointType is set to VPC. *

*
*/ private String vpcId; /** *

* A list of security groups IDs that are available to attach to your server's endpoint. *

* *

* This property can only be set when EndpointType is set to VPC. *

*

* You can edit the SecurityGroupIds property in the UpdateServer API only if * you are changing the EndpointType from PUBLIC or VPC_ENDPOINT to * VPC. To change security groups associated with your server's VPC endpoint after creation, use the * Amazon EC2 ModifyVpcEndpoint * API. *

*
*/ private java.util.List securityGroupIds; /** *

* A list of address allocation IDs that are required to attach an Elastic IP address to your server's endpoint. *

*

* An address allocation ID corresponds to the allocation ID of an Elastic IP address. This value can be retrieved * from the allocationId field from the Amazon EC2 Address data type. One way to * retrieve this value is by calling the EC2 DescribeAddresses * API. *

*

* This parameter is optional. Set this parameter if you want to make your VPC endpoint public-facing. For details, * see Create an internet-facing endpoint for your server. *

* *

* This property can only be set as follows: *

*
    *
  • *

    * EndpointType must be set to VPC *

    *
  • *
  • *

    * The Transfer Family server must be offline. *

    *
  • *
  • *

    * You cannot set this parameter for Transfer Family servers that use the FTP protocol. *

    *
  • *
  • *

    * The server must already have SubnetIds populated (SubnetIds and * AddressAllocationIds cannot be updated simultaneously). *

    *
  • *
  • *

    * AddressAllocationIds can't contain duplicates, and must be equal in length to SubnetIds * . For example, if you have three subnet IDs, you must also specify three address allocation IDs. *

    *
  • *
  • *

    * Call the UpdateServer API to set or change this parameter. *

    *
  • *
*
* * @return A list of address allocation IDs that are required to attach an Elastic IP address to your server's * endpoint.

*

* An address allocation ID corresponds to the allocation ID of an Elastic IP address. This value can be * retrieved from the allocationId field from the Amazon EC2 Address data type. One * way to retrieve this value is by calling the EC2 DescribeAddresses API. *

*

* This parameter is optional. Set this parameter if you want to make your VPC endpoint public-facing. For * details, see Create an internet-facing endpoint for your server. *

* *

* This property can only be set as follows: *

*
    *
  • *

    * EndpointType must be set to VPC *

    *
  • *
  • *

    * The Transfer Family server must be offline. *

    *
  • *
  • *

    * You cannot set this parameter for Transfer Family servers that use the FTP protocol. *

    *
  • *
  • *

    * The server must already have SubnetIds populated (SubnetIds and * AddressAllocationIds cannot be updated simultaneously). *

    *
  • *
  • *

    * AddressAllocationIds can't contain duplicates, and must be equal in length to * SubnetIds. For example, if you have three subnet IDs, you must also specify three address * allocation IDs. *

    *
  • *
  • *

    * Call the UpdateServer API to set or change this parameter. *

    *
  • *
*/ public java.util.List getAddressAllocationIds() { return addressAllocationIds; } /** *

* A list of address allocation IDs that are required to attach an Elastic IP address to your server's endpoint. *

*

* An address allocation ID corresponds to the allocation ID of an Elastic IP address. This value can be retrieved * from the allocationId field from the Amazon EC2 Address data type. One way to * retrieve this value is by calling the EC2 DescribeAddresses * API. *

*

* This parameter is optional. Set this parameter if you want to make your VPC endpoint public-facing. For details, * see Create an internet-facing endpoint for your server. *

* *

* This property can only be set as follows: *

*
    *
  • *

    * EndpointType must be set to VPC *

    *
  • *
  • *

    * The Transfer Family server must be offline. *

    *
  • *
  • *

    * You cannot set this parameter for Transfer Family servers that use the FTP protocol. *

    *
  • *
  • *

    * The server must already have SubnetIds populated (SubnetIds and * AddressAllocationIds cannot be updated simultaneously). *

    *
  • *
  • *

    * AddressAllocationIds can't contain duplicates, and must be equal in length to SubnetIds * . For example, if you have three subnet IDs, you must also specify three address allocation IDs. *

    *
  • *
  • *

    * Call the UpdateServer API to set or change this parameter. *

    *
  • *
*
* * @param addressAllocationIds * A list of address allocation IDs that are required to attach an Elastic IP address to your server's * endpoint.

*

* An address allocation ID corresponds to the allocation ID of an Elastic IP address. This value can be * retrieved from the allocationId field from the Amazon EC2 Address data type. One * way to retrieve this value is by calling the EC2 DescribeAddresses API. *

*

* This parameter is optional. Set this parameter if you want to make your VPC endpoint public-facing. For * details, see Create an internet-facing endpoint for your server. *

* *

* This property can only be set as follows: *

*
    *
  • *

    * EndpointType must be set to VPC *

    *
  • *
  • *

    * The Transfer Family server must be offline. *

    *
  • *
  • *

    * You cannot set this parameter for Transfer Family servers that use the FTP protocol. *

    *
  • *
  • *

    * The server must already have SubnetIds populated (SubnetIds and * AddressAllocationIds cannot be updated simultaneously). *

    *
  • *
  • *

    * AddressAllocationIds can't contain duplicates, and must be equal in length to * SubnetIds. For example, if you have three subnet IDs, you must also specify three address * allocation IDs. *

    *
  • *
  • *

    * Call the UpdateServer API to set or change this parameter. *

    *
  • *
*/ public void setAddressAllocationIds(java.util.Collection addressAllocationIds) { if (addressAllocationIds == null) { this.addressAllocationIds = null; return; } this.addressAllocationIds = new java.util.ArrayList(addressAllocationIds); } /** *

* A list of address allocation IDs that are required to attach an Elastic IP address to your server's endpoint. *

*

* An address allocation ID corresponds to the allocation ID of an Elastic IP address. This value can be retrieved * from the allocationId field from the Amazon EC2 Address data type. One way to * retrieve this value is by calling the EC2 DescribeAddresses * API. *

*

* This parameter is optional. Set this parameter if you want to make your VPC endpoint public-facing. For details, * see Create an internet-facing endpoint for your server. *

* *

* This property can only be set as follows: *

*
    *
  • *

    * EndpointType must be set to VPC *

    *
  • *
  • *

    * The Transfer Family server must be offline. *

    *
  • *
  • *

    * You cannot set this parameter for Transfer Family servers that use the FTP protocol. *

    *
  • *
  • *

    * The server must already have SubnetIds populated (SubnetIds and * AddressAllocationIds cannot be updated simultaneously). *

    *
  • *
  • *

    * AddressAllocationIds can't contain duplicates, and must be equal in length to SubnetIds * . For example, if you have three subnet IDs, you must also specify three address allocation IDs. *

    *
  • *
  • *

    * Call the UpdateServer API to set or change this parameter. *

    *
  • *
*
*

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

* * @param addressAllocationIds * A list of address allocation IDs that are required to attach an Elastic IP address to your server's * endpoint.

*

* An address allocation ID corresponds to the allocation ID of an Elastic IP address. This value can be * retrieved from the allocationId field from the Amazon EC2 Address data type. One * way to retrieve this value is by calling the EC2 DescribeAddresses API. *

*

* This parameter is optional. Set this parameter if you want to make your VPC endpoint public-facing. For * details, see Create an internet-facing endpoint for your server. *

* *

* This property can only be set as follows: *

*
    *
  • *

    * EndpointType must be set to VPC *

    *
  • *
  • *

    * The Transfer Family server must be offline. *

    *
  • *
  • *

    * You cannot set this parameter for Transfer Family servers that use the FTP protocol. *

    *
  • *
  • *

    * The server must already have SubnetIds populated (SubnetIds and * AddressAllocationIds cannot be updated simultaneously). *

    *
  • *
  • *

    * AddressAllocationIds can't contain duplicates, and must be equal in length to * SubnetIds. For example, if you have three subnet IDs, you must also specify three address * allocation IDs. *

    *
  • *
  • *

    * Call the UpdateServer API to set or change this parameter. *

    *
  • *
* @return Returns a reference to this object so that method calls can be chained together. */ public EndpointDetails withAddressAllocationIds(String... addressAllocationIds) { if (this.addressAllocationIds == null) { setAddressAllocationIds(new java.util.ArrayList(addressAllocationIds.length)); } for (String ele : addressAllocationIds) { this.addressAllocationIds.add(ele); } return this; } /** *

* A list of address allocation IDs that are required to attach an Elastic IP address to your server's endpoint. *

*

* An address allocation ID corresponds to the allocation ID of an Elastic IP address. This value can be retrieved * from the allocationId field from the Amazon EC2 Address data type. One way to * retrieve this value is by calling the EC2 DescribeAddresses * API. *

*

* This parameter is optional. Set this parameter if you want to make your VPC endpoint public-facing. For details, * see Create an internet-facing endpoint for your server. *

* *

* This property can only be set as follows: *

*
    *
  • *

    * EndpointType must be set to VPC *

    *
  • *
  • *

    * The Transfer Family server must be offline. *

    *
  • *
  • *

    * You cannot set this parameter for Transfer Family servers that use the FTP protocol. *

    *
  • *
  • *

    * The server must already have SubnetIds populated (SubnetIds and * AddressAllocationIds cannot be updated simultaneously). *

    *
  • *
  • *

    * AddressAllocationIds can't contain duplicates, and must be equal in length to SubnetIds * . For example, if you have three subnet IDs, you must also specify three address allocation IDs. *

    *
  • *
  • *

    * Call the UpdateServer API to set or change this parameter. *

    *
  • *
*
* * @param addressAllocationIds * A list of address allocation IDs that are required to attach an Elastic IP address to your server's * endpoint.

*

* An address allocation ID corresponds to the allocation ID of an Elastic IP address. This value can be * retrieved from the allocationId field from the Amazon EC2 Address data type. One * way to retrieve this value is by calling the EC2 DescribeAddresses API. *

*

* This parameter is optional. Set this parameter if you want to make your VPC endpoint public-facing. For * details, see Create an internet-facing endpoint for your server. *

* *

* This property can only be set as follows: *

*
    *
  • *

    * EndpointType must be set to VPC *

    *
  • *
  • *

    * The Transfer Family server must be offline. *

    *
  • *
  • *

    * You cannot set this parameter for Transfer Family servers that use the FTP protocol. *

    *
  • *
  • *

    * The server must already have SubnetIds populated (SubnetIds and * AddressAllocationIds cannot be updated simultaneously). *

    *
  • *
  • *

    * AddressAllocationIds can't contain duplicates, and must be equal in length to * SubnetIds. For example, if you have three subnet IDs, you must also specify three address * allocation IDs. *

    *
  • *
  • *

    * Call the UpdateServer API to set or change this parameter. *

    *
  • *
* @return Returns a reference to this object so that method calls can be chained together. */ public EndpointDetails withAddressAllocationIds(java.util.Collection addressAllocationIds) { setAddressAllocationIds(addressAllocationIds); return this; } /** *

* A list of subnet IDs that are required to host your server endpoint in your VPC. *

* *

* This property can only be set when EndpointType is set to VPC. *

*
* * @return A list of subnet IDs that are required to host your server endpoint in your VPC.

*

* This property can only be set when EndpointType is set to VPC. *

*/ public java.util.List getSubnetIds() { return subnetIds; } /** *

* A list of subnet IDs that are required to host your server endpoint in your VPC. *

* *

* This property can only be set when EndpointType is set to VPC. *

*
* * @param subnetIds * A list of subnet IDs that are required to host your server endpoint in your VPC.

*

* This property can only be set when EndpointType is set to VPC. *

*/ public void setSubnetIds(java.util.Collection subnetIds) { if (subnetIds == null) { this.subnetIds = null; return; } this.subnetIds = new java.util.ArrayList(subnetIds); } /** *

* A list of subnet IDs that are required to host your server endpoint in your VPC. *

* *

* This property can only be set when EndpointType is set to VPC. *

*
*

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

* * @param subnetIds * A list of subnet IDs that are required to host your server endpoint in your VPC.

*

* This property can only be set when EndpointType is set to VPC. *

* @return Returns a reference to this object so that method calls can be chained together. */ public EndpointDetails withSubnetIds(String... subnetIds) { if (this.subnetIds == null) { setSubnetIds(new java.util.ArrayList(subnetIds.length)); } for (String ele : subnetIds) { this.subnetIds.add(ele); } return this; } /** *

* A list of subnet IDs that are required to host your server endpoint in your VPC. *

* *

* This property can only be set when EndpointType is set to VPC. *

*
* * @param subnetIds * A list of subnet IDs that are required to host your server endpoint in your VPC.

*

* This property can only be set when EndpointType is set to VPC. *

* @return Returns a reference to this object so that method calls can be chained together. */ public EndpointDetails withSubnetIds(java.util.Collection subnetIds) { setSubnetIds(subnetIds); return this; } /** *

* The identifier of the VPC endpoint. *

* *

* This property can only be set when EndpointType is set to VPC_ENDPOINT. *

*

* For more information, see * https://docs.aws.amazon.com/transfer/latest/userguide/create-server-in-vpc.html#deprecate-vpc-endpoint. *

*
* * @param vpcEndpointId * The identifier of the VPC endpoint.

*

* This property can only be set when EndpointType is set to VPC_ENDPOINT. *

*

* For more information, see * https://docs.aws.amazon.com/transfer/latest/userguide/create-server-in-vpc.html#deprecate-vpc-endpoint. *

*/ public void setVpcEndpointId(String vpcEndpointId) { this.vpcEndpointId = vpcEndpointId; } /** *

* The identifier of the VPC endpoint. *

* *

* This property can only be set when EndpointType is set to VPC_ENDPOINT. *

*

* For more information, see * https://docs.aws.amazon.com/transfer/latest/userguide/create-server-in-vpc.html#deprecate-vpc-endpoint. *

*
* * @return The identifier of the VPC endpoint.

*

* This property can only be set when EndpointType is set to VPC_ENDPOINT. *

*

* For more information, see * https://docs.aws.amazon.com/transfer/latest/userguide/create-server-in-vpc.html#deprecate-vpc-endpoint. *

*/ public String getVpcEndpointId() { return this.vpcEndpointId; } /** *

* The identifier of the VPC endpoint. *

* *

* This property can only be set when EndpointType is set to VPC_ENDPOINT. *

*

* For more information, see * https://docs.aws.amazon.com/transfer/latest/userguide/create-server-in-vpc.html#deprecate-vpc-endpoint. *

*
* * @param vpcEndpointId * The identifier of the VPC endpoint.

*

* This property can only be set when EndpointType is set to VPC_ENDPOINT. *

*

* For more information, see * https://docs.aws.amazon.com/transfer/latest/userguide/create-server-in-vpc.html#deprecate-vpc-endpoint. *

* @return Returns a reference to this object so that method calls can be chained together. */ public EndpointDetails withVpcEndpointId(String vpcEndpointId) { setVpcEndpointId(vpcEndpointId); return this; } /** *

* The VPC identifier of the VPC in which a server's endpoint will be hosted. *

* *

* This property can only be set when EndpointType is set to VPC. *

*
* * @param vpcId * The VPC identifier of the VPC in which a server's endpoint will be hosted.

*

* This property can only be set when EndpointType is set to VPC. *

*/ public void setVpcId(String vpcId) { this.vpcId = vpcId; } /** *

* The VPC identifier of the VPC in which a server's endpoint will be hosted. *

* *

* This property can only be set when EndpointType is set to VPC. *

*
* * @return The VPC identifier of the VPC in which a server's endpoint will be hosted.

*

* This property can only be set when EndpointType is set to VPC. *

*/ public String getVpcId() { return this.vpcId; } /** *

* The VPC identifier of the VPC in which a server's endpoint will be hosted. *

* *

* This property can only be set when EndpointType is set to VPC. *

*
* * @param vpcId * The VPC identifier of the VPC in which a server's endpoint will be hosted.

*

* This property can only be set when EndpointType is set to VPC. *

* @return Returns a reference to this object so that method calls can be chained together. */ public EndpointDetails withVpcId(String vpcId) { setVpcId(vpcId); return this; } /** *

* A list of security groups IDs that are available to attach to your server's endpoint. *

* *

* This property can only be set when EndpointType is set to VPC. *

*

* You can edit the SecurityGroupIds property in the UpdateServer API only if * you are changing the EndpointType from PUBLIC or VPC_ENDPOINT to * VPC. To change security groups associated with your server's VPC endpoint after creation, use the * Amazon EC2 ModifyVpcEndpoint * API. *

*
* * @return A list of security groups IDs that are available to attach to your server's endpoint.

*

* This property can only be set when EndpointType is set to VPC. *

*

* You can edit the SecurityGroupIds property in the UpdateServer API * only if you are changing the EndpointType from PUBLIC or * VPC_ENDPOINT to VPC. To change security groups associated with your server's * VPC endpoint after creation, use the Amazon EC2 ModifyVpcEndpoint API. *

*/ public java.util.List getSecurityGroupIds() { return securityGroupIds; } /** *

* A list of security groups IDs that are available to attach to your server's endpoint. *

* *

* This property can only be set when EndpointType is set to VPC. *

*

* You can edit the SecurityGroupIds property in the UpdateServer API only if * you are changing the EndpointType from PUBLIC or VPC_ENDPOINT to * VPC. To change security groups associated with your server's VPC endpoint after creation, use the * Amazon EC2 ModifyVpcEndpoint * API. *

*
* * @param securityGroupIds * A list of security groups IDs that are available to attach to your server's endpoint.

*

* This property can only be set when EndpointType is set to VPC. *

*

* You can edit the SecurityGroupIds property in the UpdateServer API * only if you are changing the EndpointType from PUBLIC or * VPC_ENDPOINT to VPC. To change security groups associated with your server's VPC * endpoint after creation, use the Amazon EC2 ModifyVpcEndpoint API. *

*/ public void setSecurityGroupIds(java.util.Collection securityGroupIds) { if (securityGroupIds == null) { this.securityGroupIds = null; return; } this.securityGroupIds = new java.util.ArrayList(securityGroupIds); } /** *

* A list of security groups IDs that are available to attach to your server's endpoint. *

* *

* This property can only be set when EndpointType is set to VPC. *

*

* You can edit the SecurityGroupIds property in the UpdateServer API only if * you are changing the EndpointType from PUBLIC or VPC_ENDPOINT to * VPC. To change security groups associated with your server's VPC endpoint after creation, use the * Amazon EC2 ModifyVpcEndpoint * API. *

*
*

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

* * @param securityGroupIds * A list of security groups IDs that are available to attach to your server's endpoint.

*

* This property can only be set when EndpointType is set to VPC. *

*

* You can edit the SecurityGroupIds property in the UpdateServer API * only if you are changing the EndpointType from PUBLIC or * VPC_ENDPOINT to VPC. To change security groups associated with your server's VPC * endpoint after creation, use the Amazon EC2 ModifyVpcEndpoint API. *

* @return Returns a reference to this object so that method calls can be chained together. */ public EndpointDetails withSecurityGroupIds(String... securityGroupIds) { if (this.securityGroupIds == null) { setSecurityGroupIds(new java.util.ArrayList(securityGroupIds.length)); } for (String ele : securityGroupIds) { this.securityGroupIds.add(ele); } return this; } /** *

* A list of security groups IDs that are available to attach to your server's endpoint. *

* *

* This property can only be set when EndpointType is set to VPC. *

*

* You can edit the SecurityGroupIds property in the UpdateServer API only if * you are changing the EndpointType from PUBLIC or VPC_ENDPOINT to * VPC. To change security groups associated with your server's VPC endpoint after creation, use the * Amazon EC2 ModifyVpcEndpoint * API. *

*
* * @param securityGroupIds * A list of security groups IDs that are available to attach to your server's endpoint.

*

* This property can only be set when EndpointType is set to VPC. *

*

* You can edit the SecurityGroupIds property in the UpdateServer API * only if you are changing the EndpointType from PUBLIC or * VPC_ENDPOINT to VPC. To change security groups associated with your server's VPC * endpoint after creation, use the Amazon EC2 ModifyVpcEndpoint API. *

* @return Returns a reference to this object so that method calls can be chained together. */ public EndpointDetails withSecurityGroupIds(java.util.Collection securityGroupIds) { setSecurityGroupIds(securityGroupIds); return this; } /** * 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 (getAddressAllocationIds() != null) sb.append("AddressAllocationIds: ").append(getAddressAllocationIds()).append(","); if (getSubnetIds() != null) sb.append("SubnetIds: ").append(getSubnetIds()).append(","); if (getVpcEndpointId() != null) sb.append("VpcEndpointId: ").append(getVpcEndpointId()).append(","); if (getVpcId() != null) sb.append("VpcId: ").append(getVpcId()).append(","); if (getSecurityGroupIds() != null) sb.append("SecurityGroupIds: ").append(getSecurityGroupIds()); sb.append("}"); return sb.toString(); } @Override public boolean equals(Object obj) { if (this == obj) return true; if (obj == null) return false; if (obj instanceof EndpointDetails == false) return false; EndpointDetails other = (EndpointDetails) obj; if (other.getAddressAllocationIds() == null ^ this.getAddressAllocationIds() == null) return false; if (other.getAddressAllocationIds() != null && other.getAddressAllocationIds().equals(this.getAddressAllocationIds()) == false) return false; if (other.getSubnetIds() == null ^ this.getSubnetIds() == null) return false; if (other.getSubnetIds() != null && other.getSubnetIds().equals(this.getSubnetIds()) == false) return false; if (other.getVpcEndpointId() == null ^ this.getVpcEndpointId() == null) return false; if (other.getVpcEndpointId() != null && other.getVpcEndpointId().equals(this.getVpcEndpointId()) == false) return false; if (other.getVpcId() == null ^ this.getVpcId() == null) return false; if (other.getVpcId() != null && other.getVpcId().equals(this.getVpcId()) == false) return false; if (other.getSecurityGroupIds() == null ^ this.getSecurityGroupIds() == null) return false; if (other.getSecurityGroupIds() != null && other.getSecurityGroupIds().equals(this.getSecurityGroupIds()) == false) return false; return true; } @Override public int hashCode() { final int prime = 31; int hashCode = 1; hashCode = prime * hashCode + ((getAddressAllocationIds() == null) ? 0 : getAddressAllocationIds().hashCode()); hashCode = prime * hashCode + ((getSubnetIds() == null) ? 0 : getSubnetIds().hashCode()); hashCode = prime * hashCode + ((getVpcEndpointId() == null) ? 0 : getVpcEndpointId().hashCode()); hashCode = prime * hashCode + ((getVpcId() == null) ? 0 : getVpcId().hashCode()); hashCode = prime * hashCode + ((getSecurityGroupIds() == null) ? 0 : getSecurityGroupIds().hashCode()); return hashCode; } @Override public EndpointDetails clone() { try { return (EndpointDetails) super.clone(); } catch (CloneNotSupportedException e) { throw new IllegalStateException("Got a CloneNotSupportedException from Object.clone() " + "even though we're Cloneable!", e); } } @com.amazonaws.annotation.SdkInternalApi @Override public void marshall(ProtocolMarshaller protocolMarshaller) { com.amazonaws.services.transfer.model.transform.EndpointDetailsMarshaller.getInstance().marshall(this, protocolMarshaller); } }




© 2015 - 2024 Weber Informatics LLC | Privacy Policy