/*
* 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
{
///
/// Amazon S3 on Outposts Access Points simplify managing data access at scale for shared
/// datasets in S3 on Outposts. S3 on Outposts uses endpoints to connect to Outposts buckets
/// so that you can perform actions within your virtual private cloud (VPC). For more
/// information, see
/// Accessing S3 on Outposts using VPC-only access points in the Amazon Simple
/// Storage Service User Guide.
///
public partial class Endpoint
{
private EndpointAccessType _accessType;
private string _cidrBlock;
private DateTime? _creationTime;
private string _customerOwnedIpv4Pool;
private string _endpointArn;
private FailedReason _failedReason;
private List _networkInterfaces = new List();
private string _outpostsId;
private string _securityGroupId;
private EndpointStatus _status;
private string _subnetId;
private string _vpcId;
///
/// Gets and sets the property AccessType.
///
/// The type of connectivity used to access the Amazon S3 on Outposts endpoint.
///
///
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 CidrBlock.
///
/// The VPC CIDR committed by this endpoint.
///
///
public string CidrBlock
{
get { return this._cidrBlock; }
set { this._cidrBlock = value; }
}
// Check to see if CidrBlock property is set
internal bool IsSetCidrBlock()
{
return this._cidrBlock != null;
}
///
/// Gets and sets the property CreationTime.
///
/// The time the endpoint was created.
///
///
public DateTime CreationTime
{
get { return this._creationTime.GetValueOrDefault(); }
set { this._creationTime = value; }
}
// Check to see if CreationTime property is set
internal bool IsSetCreationTime()
{
return this._creationTime.HasValue;
}
///
/// Gets and sets the property CustomerOwnedIpv4Pool.
///
/// The ID of the customer-owned IPv4 address pool used 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 EndpointArn.
///
/// The Amazon Resource Name (ARN) of the endpoint.
///
///
public string EndpointArn
{
get { return this._endpointArn; }
set { this._endpointArn = value; }
}
// Check to see if EndpointArn property is set
internal bool IsSetEndpointArn()
{
return this._endpointArn != null;
}
///
/// Gets and sets the property FailedReason.
///
/// The failure reason, if any, for a create or delete endpoint operation.
///
///
public FailedReason FailedReason
{
get { return this._failedReason; }
set { this._failedReason = value; }
}
// Check to see if FailedReason property is set
internal bool IsSetFailedReason()
{
return this._failedReason != null;
}
///
/// Gets and sets the property NetworkInterfaces.
///
/// The network interface of the endpoint.
///
///
public List NetworkInterfaces
{
get { return this._networkInterfaces; }
set { this._networkInterfaces = value; }
}
// Check to see if NetworkInterfaces property is set
internal bool IsSetNetworkInterfaces()
{
return this._networkInterfaces != null && this._networkInterfaces.Count > 0;
}
///
/// Gets and sets the property OutpostsId.
///
/// The ID of the Outposts.
///
///
public string OutpostsId
{
get { return this._outpostsId; }
set { this._outpostsId = value; }
}
// Check to see if OutpostsId property is set
internal bool IsSetOutpostsId()
{
return this._outpostsId != null;
}
///
/// Gets and sets the property SecurityGroupId.
///
/// The ID of the security group used for the endpoint.
///
///
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 Status.
///
/// The status of the endpoint.
///
///
public EndpointStatus Status
{
get { return this._status; }
set { this._status = value; }
}
// Check to see if Status property is set
internal bool IsSetStatus()
{
return this._status != null;
}
///
/// Gets and sets the property SubnetId.
///
/// The ID of the subnet used for the endpoint.
///
///
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;
}
///
/// Gets and sets the property VpcId.
///
/// The ID of the VPC used for the endpoint.
///
///
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;
}
}
}