/*
* 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 s3outposts-2017-07-25.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.S3Outposts.Model
{
///
/// Container for the parameters to the CreateEndpoint operation.
/// Creates an endpoint and associates it with the specified Outpost.
///
///
///
/// It can take up to 5 minutes for this action to finish.
///
///
///
/// Related actions include:
///
///
///
public partial class CreateEndpointRequest : AmazonS3OutpostsRequest
{
private EndpointAccessType _accessType;
private string _customerOwnedIpv4Pool;
private string _outpostId;
private string _securityGroupId;
private string _subnetId;
///
/// Gets and sets the property AccessType.
///
/// The type of access for the network connectivity for the Amazon S3 on Outposts endpoint.
/// To use the Amazon Web Services VPC, choose Private
. To use the endpoint
/// with an on-premises network, choose CustomerOwnedIp
. If you choose CustomerOwnedIp
,
/// you must also provide the customer-owned IP address pool (CoIP pool).
///
///
///
/// Private
is the default access type value.
///
///
///
public EndpointAccessType AccessType
{
get { return this._accessType; }
set { this._accessType = value; }
}
// Check to see if AccessType property is set
internal bool IsSetAccessType()
{
return this._accessType != null;
}
///
/// Gets and sets the property CustomerOwnedIpv4Pool.
///
/// The ID of the customer-owned IPv4 address pool (CoIP pool) for the endpoint. IP addresses
/// are allocated from this pool for the endpoint.
///
///
public string CustomerOwnedIpv4Pool
{
get { return this._customerOwnedIpv4Pool; }
set { this._customerOwnedIpv4Pool = value; }
}
// Check to see if CustomerOwnedIpv4Pool property is set
internal bool IsSetCustomerOwnedIpv4Pool()
{
return this._customerOwnedIpv4Pool != null;
}
///
/// Gets and sets the property OutpostId.
///
/// The ID of the Outposts.
///
///
[AWSProperty(Required=true)]
public string OutpostId
{
get { return this._outpostId; }
set { this._outpostId = value; }
}
// Check to see if OutpostId property is set
internal bool IsSetOutpostId()
{
return this._outpostId != null;
}
///
/// Gets and sets the property SecurityGroupId.
///
/// The ID of the security group to use with the endpoint.
///
///
[AWSProperty(Required=true)]
public string SecurityGroupId
{
get { return this._securityGroupId; }
set { this._securityGroupId = value; }
}
// Check to see if SecurityGroupId property is set
internal bool IsSetSecurityGroupId()
{
return this._securityGroupId != null;
}
///
/// Gets and sets the property SubnetId.
///
/// The ID of the subnet in the selected VPC. The endpoint subnet must belong to the Outpost
/// that has Amazon S3 on Outposts provisioned.
///
///
[AWSProperty(Required=true)]
public string SubnetId
{
get { return this._subnetId; }
set { this._subnetId = value; }
}
// Check to see if SubnetId property is set
internal bool IsSetSubnetId()
{
return this._subnetId != null;
}
}
}