/*
* Copyright 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.
*/
/*
* Do not modify this file. This file is generated from the transfer-2018-11-05.normal.json service model.
*/
using System;
using System.Collections.Generic;
using System.Xml.Serialization;
using System.Text;
using System.IO;
using System.Net;
using Amazon.Runtime;
using Amazon.Runtime.Internal;
namespace Amazon.Transfer.Model
{
///
/// 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.
///
///
///
public partial class EndpointDetails
{
private List _addressAllocationIds = new List();
private List _securityGroupIds = new List();
private List _subnetIds = new List();
private string _vpcEndpointId;
private string _vpcId;
///
/// Gets and sets the property AddressAllocationIds.
///
/// A list of address allocation IDs that are required to attach an Elastic IP address
/// to your server's endpoint.
///
///
///
/// This property can only be set when EndpointType
is set to VPC
/// and it is only valid in the UpdateServer
API.
///
///
///
public List AddressAllocationIds
{
get { return this._addressAllocationIds; }
set { this._addressAllocationIds = value; }
}
// Check to see if AddressAllocationIds property is set
internal bool IsSetAddressAllocationIds()
{
return this._addressAllocationIds != null && this._addressAllocationIds.Count > 0;
}
///
/// Gets and sets the property 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 List SecurityGroupIds
{
get { return this._securityGroupIds; }
set { this._securityGroupIds = value; }
}
// Check to see if SecurityGroupIds property is set
internal bool IsSetSecurityGroupIds()
{
return this._securityGroupIds != null && this._securityGroupIds.Count > 0;
}
///
/// Gets and sets the property 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 List SubnetIds
{
get { return this._subnetIds; }
set { this._subnetIds = value; }
}
// Check to see if SubnetIds property is set
internal bool IsSetSubnetIds()
{
return this._subnetIds != null && this._subnetIds.Count > 0;
}
///
/// Gets and sets the property 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.
///
///
///
[AWSProperty(Min=22, Max=22)]
public string VpcEndpointId
{
get { return this._vpcEndpointId; }
set { this._vpcEndpointId = value; }
}
// Check to see if VpcEndpointId property is set
internal bool IsSetVpcEndpointId()
{
return this._vpcEndpointId != null;
}
///
/// Gets and sets the property 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 string VpcId
{
get { return this._vpcId; }
set { this._vpcId = value; }
}
// Check to see if VpcId property is set
internal bool IsSetVpcId()
{
return this._vpcId != null;
}
}
}