/* * 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 docdb-2014-10-31.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.DocDB.Model { /// /// Container for the parameters to the CreateDBInstance operation. /// Creates a new instance. /// public partial class CreateDBInstanceRequest : AmazonDocDBRequest { private bool? _autoMinorVersionUpgrade; private string _availabilityZone; private bool? _copyTagsToSnapshot; private string _dbClusterIdentifier; private string _dbInstanceClass; private string _dbInstanceIdentifier; private bool? _enablePerformanceInsights; private string _engine; private string _performanceInsightsKMSKeyId; private string _preferredMaintenanceWindow; private int? _promotionTier; private List _tags = new List(); /// /// Gets and sets the property AutoMinorVersionUpgrade. /// /// This parameter does not apply to Amazon DocumentDB. Amazon DocumentDB does not perform /// minor version upgrades regardless of the value set. /// /// /// /// Default: false /// /// public bool AutoMinorVersionUpgrade { get { return this._autoMinorVersionUpgrade.GetValueOrDefault(); } set { this._autoMinorVersionUpgrade = value; } } // Check to see if AutoMinorVersionUpgrade property is set internal bool IsSetAutoMinorVersionUpgrade() { return this._autoMinorVersionUpgrade.HasValue; } /// /// Gets and sets the property AvailabilityZone. /// /// The Amazon EC2 Availability Zone that the instance is created in. /// /// /// /// Default: A random, system-chosen Availability Zone in the endpoint's Amazon Web Services /// Region. /// /// /// /// Example: us-east-1d /// /// public string AvailabilityZone { get { return this._availabilityZone; } set { this._availabilityZone = value; } } // Check to see if AvailabilityZone property is set internal bool IsSetAvailabilityZone() { return this._availabilityZone != null; } /// /// Gets and sets the property CopyTagsToSnapshot. /// /// A value that indicates whether to copy tags from the DB instance to snapshots of the /// DB instance. By default, tags are not copied. /// /// public bool CopyTagsToSnapshot { get { return this._copyTagsToSnapshot.GetValueOrDefault(); } set { this._copyTagsToSnapshot = value; } } // Check to see if CopyTagsToSnapshot property is set internal bool IsSetCopyTagsToSnapshot() { return this._copyTagsToSnapshot.HasValue; } /// /// Gets and sets the property DBClusterIdentifier. /// /// The identifier of the cluster that the instance will belong to. /// /// [AWSProperty(Required=true)] public string DBClusterIdentifier { get { return this._dbClusterIdentifier; } set { this._dbClusterIdentifier = value; } } // Check to see if DBClusterIdentifier property is set internal bool IsSetDBClusterIdentifier() { return this._dbClusterIdentifier != null; } /// /// Gets and sets the property DBInstanceClass. /// /// The compute and memory capacity of the instance; for example, db.r5.large. /// /// /// [AWSProperty(Required=true)] public string DBInstanceClass { get { return this._dbInstanceClass; } set { this._dbInstanceClass = value; } } // Check to see if DBInstanceClass property is set internal bool IsSetDBInstanceClass() { return this._dbInstanceClass != null; } /// /// Gets and sets the property DBInstanceIdentifier. /// /// The instance identifier. This parameter is stored as a lowercase string. /// /// /// /// Constraints: /// ///
  • /// /// Must contain from 1 to 63 letters, numbers, or hyphens. /// ///
  • /// /// The first character must be a letter. /// ///
  • /// /// Cannot end with a hyphen or contain two consecutive hyphens. /// ///
/// /// Example: mydbinstance /// ///
[AWSProperty(Required=true)] public string DBInstanceIdentifier { get { return this._dbInstanceIdentifier; } set { this._dbInstanceIdentifier = value; } } // Check to see if DBInstanceIdentifier property is set internal bool IsSetDBInstanceIdentifier() { return this._dbInstanceIdentifier != null; } /// /// Gets and sets the property EnablePerformanceInsights. /// /// A value that indicates whether to enable Performance Insights for the DB Instance. /// For more information, see Using /// Amazon Performance Insights. /// /// public bool EnablePerformanceInsights { get { return this._enablePerformanceInsights.GetValueOrDefault(); } set { this._enablePerformanceInsights = value; } } // Check to see if EnablePerformanceInsights property is set internal bool IsSetEnablePerformanceInsights() { return this._enablePerformanceInsights.HasValue; } /// /// Gets and sets the property Engine. /// /// The name of the database engine to be used for this instance. /// /// /// /// Valid value: docdb /// /// [AWSProperty(Required=true)] public string Engine { get { return this._engine; } set { this._engine = value; } } // Check to see if Engine property is set internal bool IsSetEngine() { return this._engine != null; } /// /// Gets and sets the property PerformanceInsightsKMSKeyId. /// /// The KMS key identifier for encryption of Performance Insights data. /// /// /// /// The KMS key identifier is the key ARN, key ID, alias ARN, or alias name for the KMS /// key. /// /// /// /// If you do not specify a value for PerformanceInsightsKMSKeyId, then Amazon DocumentDB /// uses your default KMS key. There is a default KMS key for your Amazon Web Services /// account. Your Amazon Web Services account has a different default KMS key for each /// Amazon Web Services region. /// /// public string PerformanceInsightsKMSKeyId { get { return this._performanceInsightsKMSKeyId; } set { this._performanceInsightsKMSKeyId = value; } } // Check to see if PerformanceInsightsKMSKeyId property is set internal bool IsSetPerformanceInsightsKMSKeyId() { return this._performanceInsightsKMSKeyId != null; } /// /// Gets and sets the property PreferredMaintenanceWindow. /// /// The time range each week during which system maintenance can occur, in Universal Coordinated /// Time (UTC). /// /// /// /// Format: ddd:hh24:mi-ddd:hh24:mi /// /// /// /// The default is a 30-minute window selected at random from an 8-hour block of time /// for each Amazon Web Services Region, occurring on a random day of the week. /// /// /// /// Valid days: Mon, Tue, Wed, Thu, Fri, Sat, Sun /// /// /// /// Constraints: Minimum 30-minute window. /// /// public string PreferredMaintenanceWindow { get { return this._preferredMaintenanceWindow; } set { this._preferredMaintenanceWindow = value; } } // Check to see if PreferredMaintenanceWindow property is set internal bool IsSetPreferredMaintenanceWindow() { return this._preferredMaintenanceWindow != null; } /// /// Gets and sets the property PromotionTier. /// /// A value that specifies the order in which an Amazon DocumentDB replica is promoted /// to the primary instance after a failure of the existing primary instance. /// /// /// /// Default: 1 /// /// /// /// Valid values: 0-15 /// /// public int PromotionTier { get { return this._promotionTier.GetValueOrDefault(); } set { this._promotionTier = value; } } // Check to see if PromotionTier property is set internal bool IsSetPromotionTier() { return this._promotionTier.HasValue; } /// /// Gets and sets the property Tags. /// /// The tags to be assigned to the instance. You can assign up to 10 tags to an instance. /// /// public List Tags { get { return this._tags; } set { this._tags = value; } } // Check to see if Tags property is set internal bool IsSetTags() { return this._tags != null && this._tags.Count > 0; } } }