/*
* 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 fsx-2018-03-01.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.FSx.Model
{
///
/// Configuration for the FSx for NetApp ONTAP file system.
///
public partial class OntapFileSystemConfiguration
{
private int? _automaticBackupRetentionDays;
private string _dailyAutomaticBackupStartTime;
private OntapDeploymentType _deploymentType;
private DiskIopsConfiguration _diskIopsConfiguration;
private string _endpointIpAddressRange;
private FileSystemEndpoints _endpoints;
private string _fsxAdminPassword;
private string _preferredSubnetId;
private List _routeTableIds = new List();
private int? _throughputCapacity;
private string _weeklyMaintenanceStartTime;
///
/// Gets and sets the property AutomaticBackupRetentionDays.
///
[AWSProperty(Min=0, Max=90)]
public int AutomaticBackupRetentionDays
{
get { return this._automaticBackupRetentionDays.GetValueOrDefault(); }
set { this._automaticBackupRetentionDays = value; }
}
// Check to see if AutomaticBackupRetentionDays property is set
internal bool IsSetAutomaticBackupRetentionDays()
{
return this._automaticBackupRetentionDays.HasValue;
}
///
/// Gets and sets the property DailyAutomaticBackupStartTime.
///
[AWSProperty(Min=5, Max=5)]
public string DailyAutomaticBackupStartTime
{
get { return this._dailyAutomaticBackupStartTime; }
set { this._dailyAutomaticBackupStartTime = value; }
}
// Check to see if DailyAutomaticBackupStartTime property is set
internal bool IsSetDailyAutomaticBackupStartTime()
{
return this._dailyAutomaticBackupStartTime != null;
}
///
/// Gets and sets the property DeploymentType.
///
/// Specifies the FSx for ONTAP file system deployment type in use in the file system.
///
///
/// -
///
///
MULTI_AZ_1
- (Default) A high availability file system configured for
/// Multi-AZ redundancy to tolerate temporary Availability Zone (AZ) unavailability.
///
/// -
///
///
SINGLE_AZ_1
- A file system configured for Single-AZ redundancy.
///
///
///
/// For information about the use cases for Multi-AZ and Single-AZ deployments, refer
/// to Choosing
/// Multi-AZ or Single-AZ file system deployment.
///
///
public OntapDeploymentType DeploymentType
{
get { return this._deploymentType; }
set { this._deploymentType = value; }
}
// Check to see if DeploymentType property is set
internal bool IsSetDeploymentType()
{
return this._deploymentType != null;
}
///
/// Gets and sets the property DiskIopsConfiguration.
///
/// The SSD IOPS configuration for the ONTAP file system, specifying the number of provisioned
/// IOPS and the provision mode.
///
///
public DiskIopsConfiguration DiskIopsConfiguration
{
get { return this._diskIopsConfiguration; }
set { this._diskIopsConfiguration = value; }
}
// Check to see if DiskIopsConfiguration property is set
internal bool IsSetDiskIopsConfiguration()
{
return this._diskIopsConfiguration != null;
}
///
/// Gets and sets the property EndpointIpAddressRange.
///
/// (Multi-AZ only) Specifies the IP address range in which the endpoints to access your
/// file system will be created. By default in the Amazon FSx API, Amazon FSx selects
/// an unused IP address range for you from the 198.19.* range. By default in the Amazon
/// FSx console, Amazon FSx chooses the last 64 IP addresses from the VPC’s primary CIDR
/// range to use as the endpoint IP address range for the file system. You can have overlapping
/// endpoint IP addresses for file systems deployed in the same VPC/route tables.
///
///
[AWSProperty(Min=9, Max=17)]
public string EndpointIpAddressRange
{
get { return this._endpointIpAddressRange; }
set { this._endpointIpAddressRange = value; }
}
// Check to see if EndpointIpAddressRange property is set
internal bool IsSetEndpointIpAddressRange()
{
return this._endpointIpAddressRange != null;
}
///
/// Gets and sets the property Endpoints.
///
/// The Management
and Intercluster
endpoints that are used
/// to access data or to manage the file system using the NetApp ONTAP CLI, REST API,
/// or NetApp SnapMirror.
///
///
public FileSystemEndpoints Endpoints
{
get { return this._endpoints; }
set { this._endpoints = value; }
}
// Check to see if Endpoints property is set
internal bool IsSetEndpoints()
{
return this._endpoints != null;
}
///
/// Gets and sets the property FsxAdminPassword.
///
/// You can use the fsxadmin
user account to access the NetApp ONTAP CLI
/// and REST API. The password value is always redacted in the response.
///
///
[AWSProperty(Sensitive=true, Min=8, Max=50)]
public string FsxAdminPassword
{
get { return this._fsxAdminPassword; }
set { this._fsxAdminPassword = value; }
}
// Check to see if FsxAdminPassword property is set
internal bool IsSetFsxAdminPassword()
{
return this._fsxAdminPassword != null;
}
///
/// Gets and sets the property PreferredSubnetId.
///
[AWSProperty(Min=15, Max=24)]
public string PreferredSubnetId
{
get { return this._preferredSubnetId; }
set { this._preferredSubnetId = value; }
}
// Check to see if PreferredSubnetId property is set
internal bool IsSetPreferredSubnetId()
{
return this._preferredSubnetId != null;
}
///
/// Gets and sets the property RouteTableIds.
///
/// (Multi-AZ only) The VPC route tables in which your file system's endpoints are created.
///
///
[AWSProperty(Max=50)]
public List RouteTableIds
{
get { return this._routeTableIds; }
set { this._routeTableIds = value; }
}
// Check to see if RouteTableIds property is set
internal bool IsSetRouteTableIds()
{
return this._routeTableIds != null && this._routeTableIds.Count > 0;
}
///
/// Gets and sets the property ThroughputCapacity.
///
[AWSProperty(Min=8, Max=100000)]
public int ThroughputCapacity
{
get { return this._throughputCapacity.GetValueOrDefault(); }
set { this._throughputCapacity = value; }
}
// Check to see if ThroughputCapacity property is set
internal bool IsSetThroughputCapacity()
{
return this._throughputCapacity.HasValue;
}
///
/// Gets and sets the property WeeklyMaintenanceStartTime.
///
[AWSProperty(Min=7, Max=7)]
public string WeeklyMaintenanceStartTime
{
get { return this._weeklyMaintenanceStartTime; }
set { this._weeklyMaintenanceStartTime = value; }
}
// Check to see if WeeklyMaintenanceStartTime property is set
internal bool IsSetWeeklyMaintenanceStartTime()
{
return this._weeklyMaintenanceStartTime != null;
}
}
}