/*
* 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 ModifyDBInstance operation.
/// Modifies settings for an instance. You can change one or more database configuration
/// parameters by specifying these parameters and the new values in the request.
///
public partial class ModifyDBInstanceRequest : AmazonDocDBRequest
{
private bool? _applyImmediately;
private bool? _autoMinorVersionUpgrade;
private string _caCertificateIdentifier;
private bool? _copyTagsToSnapshot;
private string _dbInstanceClass;
private string _dbInstanceIdentifier;
private bool? _enablePerformanceInsights;
private string _newDBInstanceIdentifier;
private string _performanceInsightsKMSKeyId;
private string _preferredMaintenanceWindow;
private int? _promotionTier;
///
/// Gets and sets the property ApplyImmediately.
///
/// Specifies whether the modifications in this request and any pending modifications
/// are asynchronously applied as soon as possible, regardless of the PreferredMaintenanceWindow
/// setting for the instance.
///
///
///
/// If this parameter is set to false
, changes to the instance are applied
/// during the next maintenance window. Some parameter changes can cause an outage and
/// are applied on the next reboot.
///
///
///
/// Default: false
///
///
public bool ApplyImmediately
{
get { return this._applyImmediately.GetValueOrDefault(); }
set { this._applyImmediately = value; }
}
// Check to see if ApplyImmediately property is set
internal bool IsSetApplyImmediately()
{
return this._applyImmediately.HasValue;
}
///
/// 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.
///
///
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 CACertificateIdentifier.
///
/// Indicates the certificate that needs to be associated with the instance.
///
///
public string CACertificateIdentifier
{
get { return this._caCertificateIdentifier; }
set { this._caCertificateIdentifier = value; }
}
// Check to see if CACertificateIdentifier property is set
internal bool IsSetCACertificateIdentifier()
{
return this._caCertificateIdentifier != null;
}
///
/// Gets and sets the property CopyTagsToSnapshot.
///
/// A value that indicates whether to copy all 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 DBInstanceClass.
///
/// The new compute and memory capacity of the instance; for example, db.r5.large
.
/// Not all instance classes are available in all Amazon Web Services Regions.
///
///
///
/// If you modify the instance class, an outage occurs during the change. The change is
/// applied during the next maintenance window, unless ApplyImmediately
is
/// specified as true
for this request.
///
///
///
/// Default: Uses existing setting.
///
///
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 value is stored as a lowercase string.
///
///
///
/// Constraints:
///
/// -
///
/// Must match the identifier of an existing
DBInstance
.
///
///
///
[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 NewDBInstanceIdentifier.
///
/// The new instance identifier for the instance when renaming an instance. When you
/// change the instance identifier, an instance reboot occurs immediately if you set Apply
/// Immediately
to true
. It occurs during the next maintenance window
/// if you set Apply Immediately
to false
. This value 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
///
///
public string NewDBInstanceIdentifier
{
get { return this._newDBInstanceIdentifier; }
set { this._newDBInstanceIdentifier = value; }
}
// Check to see if NewDBInstanceIdentifier property is set
internal bool IsSetNewDBInstanceIdentifier()
{
return this._newDBInstanceIdentifier != 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 weekly time range (in UTC) during which system maintenance can occur, which might
/// result in an outage. Changing this parameter doesn't result in an outage except in
/// the following situation, and the change is asynchronously applied as soon as possible.
/// If there are pending actions that cause a reboot, and the maintenance window is changed
/// to include the current time, changing this parameter causes a reboot of the instance.
/// If you are moving this window to the current time, there must be at least 30 minutes
/// between the current time and end of the window to ensure that pending changes are
/// applied.
///
///
///
/// Default: Uses existing setting.
///
///
///
/// Format: ddd:hh24:mi-ddd:hh24:mi
///
///
///
/// Valid days: Mon, Tue, Wed, Thu, Fri, Sat, Sun
///
///
///
/// Constraints: Must be at least 30 minutes.
///
///
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;
}
}
}