/*
* 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 redshift-serverless-2021-04-21.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.RedshiftServerless.Model
{
///
/// Information about an Amazon Redshift Serverless VPC endpoint.
///
public partial class EndpointAccess
{
private string _address;
private string _endpointArn;
private DateTime? _endpointCreateTime;
private string _endpointName;
private string _endpointStatus;
private int? _port;
private List _subnetIds = new List();
private VpcEndpoint _vpcEndpoint;
private List _vpcSecurityGroups = new List();
private string _workgroupName;
///
/// Gets and sets the property Address.
///
/// The DNS address of the endpoint.
///
///
public string Address
{
get { return this._address; }
set { this._address = value; }
}
// Check to see if Address property is set
internal bool IsSetAddress()
{
return this._address != null;
}
///
/// Gets and sets the property EndpointArn.
///
/// The Amazon Resource Name (ARN) of the VPC 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 EndpointCreateTime.
///
/// The time that the endpoint was created.
///
///
public DateTime EndpointCreateTime
{
get { return this._endpointCreateTime.GetValueOrDefault(); }
set { this._endpointCreateTime = value; }
}
// Check to see if EndpointCreateTime property is set
internal bool IsSetEndpointCreateTime()
{
return this._endpointCreateTime.HasValue;
}
///
/// Gets and sets the property EndpointName.
///
/// The name of the VPC endpoint.
///
///
public string EndpointName
{
get { return this._endpointName; }
set { this._endpointName = value; }
}
// Check to see if EndpointName property is set
internal bool IsSetEndpointName()
{
return this._endpointName != null;
}
///
/// Gets and sets the property EndpointStatus.
///
/// The status of the VPC endpoint.
///
///
public string EndpointStatus
{
get { return this._endpointStatus; }
set { this._endpointStatus = value; }
}
// Check to see if EndpointStatus property is set
internal bool IsSetEndpointStatus()
{
return this._endpointStatus != null;
}
///
/// Gets and sets the property Port.
///
/// The port number on which Amazon Redshift Serverless accepts incoming connections.
///
///
public int Port
{
get { return this._port.GetValueOrDefault(); }
set { this._port = value; }
}
// Check to see if Port property is set
internal bool IsSetPort()
{
return this._port.HasValue;
}
///
/// Gets and sets the property SubnetIds.
///
/// The unique identifier of subnets where Amazon Redshift Serverless choose to deploy
/// the VPC endpoint.
///
///
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 VpcEndpoint.
///
/// The connection endpoint for connecting to Amazon Redshift Serverless.
///
///
public VpcEndpoint VpcEndpoint
{
get { return this._vpcEndpoint; }
set { this._vpcEndpoint = value; }
}
// Check to see if VpcEndpoint property is set
internal bool IsSetVpcEndpoint()
{
return this._vpcEndpoint != null;
}
///
/// Gets and sets the property VpcSecurityGroups.
///
/// The security groups associated with the endpoint.
///
///
public List VpcSecurityGroups
{
get { return this._vpcSecurityGroups; }
set { this._vpcSecurityGroups = value; }
}
// Check to see if VpcSecurityGroups property is set
internal bool IsSetVpcSecurityGroups()
{
return this._vpcSecurityGroups != null && this._vpcSecurityGroups.Count > 0;
}
///
/// Gets and sets the property WorkgroupName.
///
/// The name of the workgroup associated with the endpoint.
///
///
public string WorkgroupName
{
get { return this._workgroupName; }
set { this._workgroupName = value; }
}
// Check to see if WorkgroupName property is set
internal bool IsSetWorkgroupName()
{
return this._workgroupName != null;
}
}
}