Class EndpointDetails
- java.lang.Object
-
- software.amazon.awssdk.services.transfer.model.EndpointDetails
-
- All Implemented Interfaces:
Serializable,SdkPojo,ToCopyableBuilder<EndpointDetails.Builder,EndpointDetails>
@Generated("software.amazon.awssdk:codegen") public final class EndpointDetails extends Object implements SdkPojo, Serializable, ToCopyableBuilder<EndpointDetails.Builder,EndpointDetails>
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
UpdateServerAPI 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_ENDPOINTin your Amazon Web Services account if your account hasn't already done so before May 19, 2021. If you have already created servers withEndpointType=VPC_ENDPOINTin your Amazon Web Services account on or before May 19, 2021, you will not be affected. After this date, useEndpointType=VPC.For more information, see https://docs.aws.amazon.com/transfer/latest/userguide/create-server-in-vpc.html#deprecate-vpc-endpoint.
It is recommended that you use
VPCas theEndpointType. With this endpoint type, you have the option to directly associate up to three Elastic IPv4 addresses (BYO IP included) with your server's endpoint and use VPC security groups to restrict traffic by the client's public IP address. This is not possible withEndpointTypeset toVPC_ENDPOINT.- See Also:
- Serialized Form
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description static interfaceEndpointDetails.Builder
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description List<String>addressAllocationIds()A list of address allocation IDs that are required to attach an Elastic IP address to your server's endpoint.static EndpointDetails.Builderbuilder()booleanequals(Object obj)booleanequalsBySdkFields(Object obj)<T> Optional<T>getValueForField(String fieldName, Class<T> clazz)booleanhasAddressAllocationIds()For responses, this returns true if the service returned a value for the AddressAllocationIds property.inthashCode()booleanhasSecurityGroupIds()For responses, this returns true if the service returned a value for the SecurityGroupIds property.booleanhasSubnetIds()For responses, this returns true if the service returned a value for the SubnetIds property.Map<String,SdkField<?>>sdkFieldNameToField()List<SdkField<?>>sdkFields()List<String>securityGroupIds()A list of security groups IDs that are available to attach to your server's endpoint.static Class<? extends EndpointDetails.Builder>serializableBuilderClass()List<String>subnetIds()A list of subnet IDs that are required to host your server endpoint in your VPC.EndpointDetails.BuildertoBuilder()StringtoString()Returns a string representation of this object.StringvpcEndpointId()The identifier of the VPC endpoint.StringvpcId()The VPC identifier of the VPC in which a server's endpoint will be hosted.-
Methods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, wait, wait, wait
-
Methods inherited from interface software.amazon.awssdk.utils.builder.ToCopyableBuilder
copy
-
-
-
-
Method Detail
-
hasAddressAllocationIds
public final boolean hasAddressAllocationIds()
For responses, this returns true if the service returned a value for the AddressAllocationIds property. This DOES NOT check that the value is non-empty (for which, you should check theisEmpty()method on the property). This is useful because the SDK will never return a null collection or map, but you may need to differentiate between the service returning nothing (or null) and the service returning an empty collection or map. For requests, this returns true if a value for the property was specified in the request builder, and false if a value was not specified.
-
addressAllocationIds
public final List<String> 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
allocationIdfield 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:
-
EndpointTypemust be set toVPC -
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
SubnetIdspopulated (SubnetIdsandAddressAllocationIdscannot be updated simultaneously). -
AddressAllocationIdscan't contain duplicates, and must be equal in length toSubnetIds. For example, if you have three subnet IDs, you must also specify three address allocation IDs. -
Call the
UpdateServerAPI to set or change this parameter.
Attempts to modify the collection returned by this method will result in an UnsupportedOperationException.
This method will never return null. If you would like to know whether the service returned this field (so that you can differentiate between null and empty), you can use the
hasAddressAllocationIds()method.- Returns:
- 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
allocationIdfield 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:
-
EndpointTypemust be set toVPC -
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
SubnetIdspopulated (SubnetIdsandAddressAllocationIdscannot be updated simultaneously). -
AddressAllocationIdscan't contain duplicates, and must be equal in length toSubnetIds. For example, if you have three subnet IDs, you must also specify three address allocation IDs. -
Call the
UpdateServerAPI to set or change this parameter.
-
-
-
hasSubnetIds
public final boolean hasSubnetIds()
For responses, this returns true if the service returned a value for the SubnetIds property. This DOES NOT check that the value is non-empty (for which, you should check theisEmpty()method on the property). This is useful because the SDK will never return a null collection or map, but you may need to differentiate between the service returning nothing (or null) and the service returning an empty collection or map. For requests, this returns true if a value for the property was specified in the request builder, and false if a value was not specified.
-
subnetIds
public final List<String> subnetIds()
A list of subnet IDs that are required to host your server endpoint in your VPC.
This property can only be set when
EndpointTypeis set toVPC.Attempts to modify the collection returned by this method will result in an UnsupportedOperationException.
This method will never return null. If you would like to know whether the service returned this field (so that you can differentiate between null and empty), you can use the
hasSubnetIds()method.- Returns:
- A list of subnet IDs that are required to host your server endpoint in your VPC.
This property can only be set when
EndpointTypeis set toVPC.
-
vpcEndpointId
public final String vpcEndpointId()
The identifier of the VPC endpoint.
This property can only be set when
EndpointTypeis set toVPC_ENDPOINT.For more information, see https://docs.aws.amazon.com/transfer/latest/userguide/create-server-in-vpc.html#deprecate-vpc-endpoint.
- Returns:
- The identifier of the VPC endpoint.
This property can only be set when
EndpointTypeis set toVPC_ENDPOINT.For more information, see https://docs.aws.amazon.com/transfer/latest/userguide/create-server-in-vpc.html#deprecate-vpc-endpoint.
-
vpcId
public final String vpcId()
The VPC identifier of the VPC in which a server's endpoint will be hosted.
This property can only be set when
EndpointTypeis set toVPC.- Returns:
- The VPC identifier of the VPC in which a server's endpoint will be hosted.
This property can only be set when
EndpointTypeis set toVPC.
-
hasSecurityGroupIds
public final boolean hasSecurityGroupIds()
For responses, this returns true if the service returned a value for the SecurityGroupIds property. This DOES NOT check that the value is non-empty (for which, you should check theisEmpty()method on the property). This is useful because the SDK will never return a null collection or map, but you may need to differentiate between the service returning nothing (or null) and the service returning an empty collection or map. For requests, this returns true if a value for the property was specified in the request builder, and false if a value was not specified.
-
securityGroupIds
public final List<String> securityGroupIds()
A list of security groups IDs that are available to attach to your server's endpoint.
This property can only be set when
EndpointTypeis set toVPC.You can edit the
SecurityGroupIdsproperty in the UpdateServer API only if you are changing theEndpointTypefromPUBLICorVPC_ENDPOINTtoVPC. To change security groups associated with your server's VPC endpoint after creation, use the Amazon EC2 ModifyVpcEndpoint API.Attempts to modify the collection returned by this method will result in an UnsupportedOperationException.
This method will never return null. If you would like to know whether the service returned this field (so that you can differentiate between null and empty), you can use the
hasSecurityGroupIds()method.- Returns:
- A list of security groups IDs that are available to attach to your server's endpoint.
This property can only be set when
EndpointTypeis set toVPC.You can edit the
SecurityGroupIdsproperty in the UpdateServer API only if you are changing theEndpointTypefromPUBLICorVPC_ENDPOINTtoVPC. To change security groups associated with your server's VPC endpoint after creation, use the Amazon EC2 ModifyVpcEndpoint API.
-
toBuilder
public EndpointDetails.Builder toBuilder()
- Specified by:
toBuilderin interfaceToCopyableBuilder<EndpointDetails.Builder,EndpointDetails>
-
builder
public static EndpointDetails.Builder builder()
-
serializableBuilderClass
public static Class<? extends EndpointDetails.Builder> serializableBuilderClass()
-
equalsBySdkFields
public final boolean equalsBySdkFields(Object obj)
- Specified by:
equalsBySdkFieldsin interfaceSdkPojo
-
toString
public final String toString()
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.
-
sdkFieldNameToField
public final Map<String,SdkField<?>> sdkFieldNameToField()
- Specified by:
sdkFieldNameToFieldin interfaceSdkPojo
-
-