/*
* 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 rds-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.RDS.Model
{
///
/// Container for the parameters to the RestoreDBInstanceToPointInTime operation.
/// Restores a DB instance to an arbitrary point in time. You can restore to any point
/// in time before the time identified by the LatestRestorableTime property. You can restore
/// to a point up to the number of days specified by the BackupRetentionPeriod property.
///
///
///
/// The target database is created with most of the original configuration, but in a system-selected
/// Availability Zone, with the default security group, the default subnet group, and
/// the default DB parameter group. By default, the new DB instance is created as a single-AZ
/// deployment except when the instance is a SQL Server instance that has an option group
/// that is associated with mirroring; in this case, the instance becomes a mirrored deployment
/// and not a single-AZ deployment.
///
///
///
/// This command doesn't apply to Aurora MySQL and Aurora PostgreSQL. For Aurora, use
/// RestoreDBClusterToPointInTime
.
///
///
///
public partial class RestoreDBInstanceToPointInTimeRequest : AmazonRDSRequest
{
private int? _allocatedStorage;
private bool? _autoMinorVersionUpgrade;
private string _availabilityZone;
private string _backupTarget;
private bool? _copyTagsToSnapshot;
private string _customIamInstanceProfile;
private string _dbInstanceClass;
private string _dbName;
private string _dbParameterGroupName;
private string _dbSubnetGroupName;
private bool? _deletionProtection;
private string _domain;
private string _domainAuthSecretArn;
private List _domainDnsIps = new List();
private string _domainFqdn;
private string _domainIAMRoleName;
private string _domainOu;
private List _enableCloudwatchLogsExports = new List();
private bool? _enableCustomerOwnedIp;
private bool? _enableIAMDatabaseAuthentication;
private string _engine;
private int? _iops;
private string _licenseModel;
private int? _maxAllocatedStorage;
private bool? _multiAZ;
private string _networkType;
private string _optionGroupName;
private int? _port;
private List _processorFeatures = new List();
private bool? _publiclyAccessible;
private DateTime? _restoreTimeUtc;
private string _sourceDBInstanceAutomatedBackupsArn;
private string _sourceDBInstanceIdentifier;
private string _sourceDbiResourceId;
private int? _storageThroughput;
private string _storageType;
private List _tags = new List();
private string _targetDBInstanceIdentifier;
private string _tdeCredentialArn;
private string _tdeCredentialPassword;
private bool? _useDefaultProcessorFeatures;
private bool? _useLatestRestorableTime;
private List _vpcSecurityGroupIds = new List();
///
/// Empty constructor used to set properties independently even when a simple constructor is available
///
public RestoreDBInstanceToPointInTimeRequest() { }
///
/// Instantiates RestoreDBInstanceToPointInTimeRequest with the parameterized properties
///
/// The identifier of the source DB instance from which to restore. Constraints: - Must match the identifier of an existing DB instance.
/// The name of the new DB instance to be created. Constraints: - Must contain from 1 to 63 letters, numbers, or hyphens
- First character must be a letter
- Can't end with a hyphen or contain two consecutive hyphens
public RestoreDBInstanceToPointInTimeRequest(string sourceDBInstanceIdentifier, string targetDBInstanceIdentifier)
{
_sourceDBInstanceIdentifier = sourceDBInstanceIdentifier;
_targetDBInstanceIdentifier = targetDBInstanceIdentifier;
}
///
/// Gets and sets the property AllocatedStorage.
///
/// The amount of storage (in gibibytes) to allocate initially for the DB instance. Follow
/// the allocation rules specified in CreateDBInstance
.
///
///
///
/// Be sure to allocate enough storage for your new DB instance so that the restore operation
/// can succeed. You can also allocate additional storage for future growth.
///
///
///
public int AllocatedStorage
{
get { return this._allocatedStorage.GetValueOrDefault(); }
set { this._allocatedStorage = value; }
}
// Check to see if AllocatedStorage property is set
internal bool IsSetAllocatedStorage()
{
return this._allocatedStorage.HasValue;
}
///
/// Gets and sets the property AutoMinorVersionUpgrade.
///
/// A value that indicates whether minor version upgrades are applied automatically to
/// the DB instance during the maintenance window.
///
///
///
/// This setting doesn't apply to RDS Custom.
///
///
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 Availability Zone (AZ) where the DB instance will be created.
///
///
///
/// Default: A random, system-chosen Availability Zone.
///
///
///
/// Constraint: You can't specify the AvailabilityZone
parameter if the DB
/// instance is a Multi-AZ deployment.
///
///
///
/// Example: us-east-1a
///
///
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 BackupTarget.
///
/// Specifies where automated backups and manual snapshots are stored for the restored
/// DB instance.
///
///
///
/// Possible values are outposts
(Amazon Web Services Outposts) and region
/// (Amazon Web Services Region). The default is region
.
///
///
///
/// For more information, see Working
/// with Amazon RDS on Amazon Web Services Outposts in the Amazon RDS User Guide.
///
///
public string BackupTarget
{
get { return this._backupTarget; }
set { this._backupTarget = value; }
}
// Check to see if BackupTarget property is set
internal bool IsSetBackupTarget()
{
return this._backupTarget != null;
}
///
/// Gets and sets the property CopyTagsToSnapshot.
///
/// A value that indicates whether to copy all tags from the restored 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 CustomIamInstanceProfile.
///
/// The instance profile associated with the underlying Amazon EC2 instance of an RDS
/// Custom DB instance. The instance profile must meet the following requirements:
///
/// -
///
/// The profile must exist in your account.
///
///
-
///
/// The profile must have an IAM role that Amazon EC2 has permissions to assume.
///
///
-
///
/// The instance profile name and the associated IAM role name must start with the prefix
///
AWSRDSCustom
.
///
///
///
/// For the list of permissions required for the IAM role, see
/// Configure IAM and your VPC in the Amazon RDS User Guide.
///
///
///
/// This setting is required for RDS Custom.
///
///
public string CustomIamInstanceProfile
{
get { return this._customIamInstanceProfile; }
set { this._customIamInstanceProfile = value; }
}
// Check to see if CustomIamInstanceProfile property is set
internal bool IsSetCustomIamInstanceProfile()
{
return this._customIamInstanceProfile != null;
}
///
/// Gets and sets the property DBInstanceClass.
///
/// The compute and memory capacity of the Amazon RDS DB instance, for example db.m4.large.
/// Not all DB instance classes are available in all Amazon Web Services Regions, or for
/// all database engines. For the full list of DB instance classes, and availability for
/// your engine, see DB
/// Instance Class in the Amazon RDS User Guide.
///
///
///
/// Default: The same DBInstanceClass as the original DB instance.
///
///
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 DBName.
///
/// The database name for the restored DB instance.
///
///
///
/// This parameter isn't supported for the MySQL or MariaDB engines. It also doesn't apply
/// to RDS Custom.
///
///
///
public string DBName
{
get { return this._dbName; }
set { this._dbName = value; }
}
// Check to see if DBName property is set
internal bool IsSetDBName()
{
return this._dbName != null;
}
///
/// Gets and sets the property DBParameterGroupName.
///
/// The name of the DB parameter group to associate with this DB instance.
///
///
///
/// If you do not specify a value for DBParameterGroupName
, then the default
/// DBParameterGroup
for the specified DB engine is used.
///
///
///
/// This setting doesn't apply to RDS Custom.
///
///
///
/// Constraints:
///
/// -
///
/// If supplied, must match the name of an existing DBParameterGroup.
///
///
-
///
/// Must be 1 to 255 letters, numbers, or hyphens.
///
///
-
///
/// First character must be a letter.
///
///
-
///
/// Can't end with a hyphen or contain two consecutive hyphens.
///
///
///
public string DBParameterGroupName
{
get { return this._dbParameterGroupName; }
set { this._dbParameterGroupName = value; }
}
// Check to see if DBParameterGroupName property is set
internal bool IsSetDBParameterGroupName()
{
return this._dbParameterGroupName != null;
}
///
/// Gets and sets the property DBSubnetGroupName.
///
/// The DB subnet group name to use for the new instance.
///
///
///
/// Constraints: If supplied, must match the name of an existing DBSubnetGroup.
///
///
///
/// Example: mydbsubnetgroup
///
///
public string DBSubnetGroupName
{
get { return this._dbSubnetGroupName; }
set { this._dbSubnetGroupName = value; }
}
// Check to see if DBSubnetGroupName property is set
internal bool IsSetDBSubnetGroupName()
{
return this._dbSubnetGroupName != null;
}
///
/// Gets and sets the property DeletionProtection.
///
/// A value that indicates whether the DB instance has deletion protection enabled. The
/// database can't be deleted when deletion protection is enabled. By default, deletion
/// protection isn't enabled. For more information, see
/// Deleting a DB Instance.
///
///
public bool DeletionProtection
{
get { return this._deletionProtection.GetValueOrDefault(); }
set { this._deletionProtection = value; }
}
// Check to see if DeletionProtection property is set
internal bool IsSetDeletionProtection()
{
return this._deletionProtection.HasValue;
}
///
/// Gets and sets the property Domain.
///
/// Specify the Active Directory directory ID to restore the DB instance in. Create the
/// domain before running this command. Currently, you can create only the MySQL, Microsoft
/// SQL Server, Oracle, and PostgreSQL DB instances in an Active Directory Domain.
///
///
///
/// This setting doesn't apply to RDS Custom.
///
///
///
/// For more information, see
/// Kerberos Authentication in the Amazon RDS User Guide.
///
///
public string Domain
{
get { return this._domain; }
set { this._domain = value; }
}
// Check to see if Domain property is set
internal bool IsSetDomain()
{
return this._domain != null;
}
///
/// Gets and sets the property DomainAuthSecretArn.
///
/// The ARN for the Secrets Manager secret with the credentials for the user joining the
/// domain.
///
///
///
/// Constraints:
///
/// -
///
/// Can't be longer than 64 characters.
///
///
///
/// Example: arn:aws:secretsmanager:region:account-number:secret:myselfmanagedADtestsecret-123456
///
///
///
public string DomainAuthSecretArn
{
get { return this._domainAuthSecretArn; }
set { this._domainAuthSecretArn = value; }
}
// Check to see if DomainAuthSecretArn property is set
internal bool IsSetDomainAuthSecretArn()
{
return this._domainAuthSecretArn != null;
}
///
/// Gets and sets the property DomainDnsIps.
///
/// The IPv4 DNS IP addresses of your primary and secondary Active Directory domain controllers.
///
///
///
/// Constraints:
///
/// -
///
/// Two IP addresses must be provided. If there isn't a secondary domain controller, use
/// the IP address of the primary domain controller for both entries in the list.
///
///
///
/// Example: 123.124.125.126,234.235.236.237
///
///
public List DomainDnsIps
{
get { return this._domainDnsIps; }
set { this._domainDnsIps = value; }
}
// Check to see if DomainDnsIps property is set
internal bool IsSetDomainDnsIps()
{
return this._domainDnsIps != null && this._domainDnsIps.Count > 0;
}
///
/// Gets and sets the property DomainFqdn.
///
/// The fully qualified domain name (FQDN) of an Active Directory domain.
///
///
///
/// Constraints:
///
/// -
///
/// Can't be longer than 64 characters.
///
///
///
/// Example: mymanagedADtest.mymanagedAD.mydomain
///
///
public string DomainFqdn
{
get { return this._domainFqdn; }
set { this._domainFqdn = value; }
}
// Check to see if DomainFqdn property is set
internal bool IsSetDomainFqdn()
{
return this._domainFqdn != null;
}
///
/// Gets and sets the property DomainIAMRoleName.
///
/// The name of the IAM role to use when making API calls to the Directory Service.
///
///
///
/// This setting doesn't apply to RDS Custom DB instances.
///
///
public string DomainIAMRoleName
{
get { return this._domainIAMRoleName; }
set { this._domainIAMRoleName = value; }
}
// Check to see if DomainIAMRoleName property is set
internal bool IsSetDomainIAMRoleName()
{
return this._domainIAMRoleName != null;
}
///
/// Gets and sets the property DomainOu.
///
/// The Active Directory organizational unit for your DB instance to join.
///
///
///
/// Constraints:
///
/// -
///
/// Must be in the distinguished name format.
///
///
-
///
/// Can't be longer than 64 characters.
///
///
///
/// Example: OU=mymanagedADtestOU,DC=mymanagedADtest,DC=mymanagedAD,DC=mydomain
///
///
///
public string DomainOu
{
get { return this._domainOu; }
set { this._domainOu = value; }
}
// Check to see if DomainOu property is set
internal bool IsSetDomainOu()
{
return this._domainOu != null;
}
///
/// Gets and sets the property EnableCloudwatchLogsExports.
///
/// The list of logs that the restored DB instance is to export to CloudWatch Logs. The
/// values in the list depend on the DB engine being used. For more information, see Publishing
/// Database Logs to Amazon CloudWatch Logs in the Amazon RDS User Guide.
///
///
///
/// This setting doesn't apply to RDS Custom.
///
///
public List EnableCloudwatchLogsExports
{
get { return this._enableCloudwatchLogsExports; }
set { this._enableCloudwatchLogsExports = value; }
}
// Check to see if EnableCloudwatchLogsExports property is set
internal bool IsSetEnableCloudwatchLogsExports()
{
return this._enableCloudwatchLogsExports != null && this._enableCloudwatchLogsExports.Count > 0;
}
///
/// Gets and sets the property EnableCustomerOwnedIp.
///
/// A value that indicates whether to enable a customer-owned IP address (CoIP) for an
/// RDS on Outposts DB instance.
///
///
///
/// A CoIP provides local or external connectivity to resources in your Outpost
/// subnets through your on-premises network. For some use cases, a CoIP can provide lower
/// latency for connections to the DB instance from outside of its virtual private cloud
/// (VPC) on your local network.
///
///
///
/// This setting doesn't apply to RDS Custom.
///
///
///
/// For more information about RDS on Outposts, see Working
/// with Amazon RDS on Amazon Web Services Outposts in the Amazon RDS User Guide.
///
///
///
/// For more information about CoIPs, see Customer-owned
/// IP addresses in the Amazon Web Services Outposts User Guide.
///
///
public bool EnableCustomerOwnedIp
{
get { return this._enableCustomerOwnedIp.GetValueOrDefault(); }
set { this._enableCustomerOwnedIp = value; }
}
// Check to see if EnableCustomerOwnedIp property is set
internal bool IsSetEnableCustomerOwnedIp()
{
return this._enableCustomerOwnedIp.HasValue;
}
///
/// Gets and sets the property EnableIAMDatabaseAuthentication.
///
/// A value that indicates whether to enable mapping of Amazon Web Services Identity and
/// Access Management (IAM) accounts to database accounts. By default, mapping isn't enabled.
///
///
///
/// This setting doesn't apply to RDS Custom.
///
///
///
/// For more information about IAM database authentication, see
/// IAM Database Authentication for MySQL and PostgreSQL in the Amazon RDS User
/// Guide.
///
///
public bool EnableIAMDatabaseAuthentication
{
get { return this._enableIAMDatabaseAuthentication.GetValueOrDefault(); }
set { this._enableIAMDatabaseAuthentication = value; }
}
// Check to see if EnableIAMDatabaseAuthentication property is set
internal bool IsSetEnableIAMDatabaseAuthentication()
{
return this._enableIAMDatabaseAuthentication.HasValue;
}
///
/// Gets and sets the property Engine.
///
/// The database engine to use for the new instance.
///
///
///
/// This setting doesn't apply to RDS Custom.
///
///
///
/// Default: The same as source
///
///
///
/// Constraint: Must be compatible with the engine of the source
///
///
///
/// Valid Values:
///
/// -
///
///
mariadb
///
/// -
///
///
mysql
///
/// -
///
///
oracle-ee
///
/// -
///
///
oracle-ee-cdb
///
/// -
///
///
oracle-se2
///
/// -
///
///
oracle-se2-cdb
///
/// -
///
///
postgres
///
/// -
///
///
sqlserver-ee
///
/// -
///
///
sqlserver-se
///
/// -
///
///
sqlserver-ex
///
/// -
///
///
sqlserver-web
///
///
///
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 Iops.
///
/// The amount of Provisioned IOPS (input/output operations per second) to be initially
/// allocated for the DB instance.
///
///
///
/// Constraints: Must be an integer greater than 1000.
///
///
///
/// SQL Server
///
///
///
/// Setting the IOPS value for the SQL Server database engine isn't supported.
///
///
public int Iops
{
get { return this._iops.GetValueOrDefault(); }
set { this._iops = value; }
}
// Check to see if Iops property is set
internal bool IsSetIops()
{
return this._iops.HasValue;
}
///
/// Gets and sets the property LicenseModel.
///
/// License model information for the restored DB instance.
///
///
///
/// This setting doesn't apply to RDS Custom.
///
///
///
/// Default: Same as source.
///
///
///
/// Valid values: license-included
| bring-your-own-license
/// | general-public-license
///
///
public string LicenseModel
{
get { return this._licenseModel; }
set { this._licenseModel = value; }
}
// Check to see if LicenseModel property is set
internal bool IsSetLicenseModel()
{
return this._licenseModel != null;
}
///
/// Gets and sets the property MaxAllocatedStorage.
///
/// The upper limit in gibibytes (GiB) to which Amazon RDS can automatically scale the
/// storage of the DB instance.
///
///
///
/// For more information about this setting, including limitations that apply to it, see
///
/// Managing capacity automatically with Amazon RDS storage autoscaling in the Amazon
/// RDS User Guide.
///
///
///
/// This setting doesn't apply to RDS Custom.
///
///
public int MaxAllocatedStorage
{
get { return this._maxAllocatedStorage.GetValueOrDefault(); }
set { this._maxAllocatedStorage = value; }
}
// Check to see if MaxAllocatedStorage property is set
internal bool IsSetMaxAllocatedStorage()
{
return this._maxAllocatedStorage.HasValue;
}
///
/// Gets and sets the property MultiAZ.
///
/// A value that indicates whether the DB instance is a Multi-AZ deployment.
///
///
///
/// This setting doesn't apply to RDS Custom.
///
///
///
/// Constraint: You can't specify the AvailabilityZone
parameter if the DB
/// instance is a Multi-AZ deployment.
///
///
public bool MultiAZ
{
get { return this._multiAZ.GetValueOrDefault(); }
set { this._multiAZ = value; }
}
// Check to see if MultiAZ property is set
internal bool IsSetMultiAZ()
{
return this._multiAZ.HasValue;
}
///
/// Gets and sets the property NetworkType.
///
/// The network type of the DB instance.
///
///
///
/// Valid values:
///
/// -
///
///
IPV4
///
/// -
///
///
DUAL
///
///
///
/// The network type is determined by the DBSubnetGroup
specified for the
/// DB instance. A DBSubnetGroup
can support only the IPv4 protocol or the
/// IPv4 and the IPv6 protocols (DUAL
).
///
///
///
/// For more information, see
/// Working with a DB instance in a VPC in the Amazon RDS User Guide.
///
///
public string NetworkType
{
get { return this._networkType; }
set { this._networkType = value; }
}
// Check to see if NetworkType property is set
internal bool IsSetNetworkType()
{
return this._networkType != null;
}
///
/// Gets and sets the property OptionGroupName.
///
/// The name of the option group to be used for the restored DB instance.
///
///
///
/// Permanent options, such as the TDE option for Oracle Advanced Security TDE, can't
/// be removed from an option group, and that option group can't be removed from a DB
/// instance after it is associated with a DB instance
///
///
///
/// This setting doesn't apply to RDS Custom.
///
///
public string OptionGroupName
{
get { return this._optionGroupName; }
set { this._optionGroupName = value; }
}
// Check to see if OptionGroupName property is set
internal bool IsSetOptionGroupName()
{
return this._optionGroupName != null;
}
///
/// Gets and sets the property Port.
///
/// The port number on which the database accepts connections.
///
///
///
/// Constraints: Value must be 1150-65535
///
///
///
/// Default: The same port as the original DB instance.
///
///
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 ProcessorFeatures.
///
/// The number of CPU cores and the number of threads per core for the DB instance class
/// of the DB instance.
///
///
///
/// This setting doesn't apply to RDS Custom.
///
///
public List ProcessorFeatures
{
get { return this._processorFeatures; }
set { this._processorFeatures = value; }
}
// Check to see if ProcessorFeatures property is set
internal bool IsSetProcessorFeatures()
{
return this._processorFeatures != null && this._processorFeatures.Count > 0;
}
///
/// Gets and sets the property PubliclyAccessible.
///
/// A value that indicates whether the DB instance is publicly accessible.
///
///
///
/// When the DB cluster is publicly accessible, its Domain Name System (DNS) endpoint
/// resolves to the private IP address from within the DB cluster's virtual private cloud
/// (VPC). It resolves to the public IP address from outside of the DB cluster's VPC.
/// Access to the DB cluster is ultimately controlled by the security group it uses. That
/// public access isn't permitted if the security group assigned to the DB cluster doesn't
/// permit it.
///
///
///
/// When the DB instance isn't publicly accessible, it is an internal DB instance with
/// a DNS name that resolves to a private IP address.
///
///
///
/// For more information, see CreateDBInstance.
///
///
public bool PubliclyAccessible
{
get { return this._publiclyAccessible.GetValueOrDefault(); }
set { this._publiclyAccessible = value; }
}
// Check to see if PubliclyAccessible property is set
internal bool IsSetPubliclyAccessible()
{
return this._publiclyAccessible.HasValue;
}
///
/// Gets and sets the property RestoreTimeUtc.
///
/// The date and time to restore from.
///
///
///
/// Valid Values: Value must be a time in Universal Coordinated Time (UTC) format
///
///
///
/// Constraints:
///
/// -
///
/// Must be before the latest restorable time for the DB instance
///
///
-
///
/// Can't be specified if the
UseLatestRestorableTime
parameter is enabled
///
///
///
/// Example: 2009-09-07T23:45:00Z
///
///
public DateTime RestoreTimeUtc
{
get { return this._restoreTimeUtc.GetValueOrDefault(); }
set { this._restoreTime = this._restoreTimeUtc = value; }
}
// Check to see if RestoreTimeUtc property is set
internal bool IsSetRestoreTimeUtc()
{
return this._restoreTimeUtc.HasValue;
}
///
/// Gets and sets the property SourceDBInstanceAutomatedBackupsArn.
///
/// The Amazon Resource Name (ARN) of the replicated automated backups from which to restore,
/// for example, arn:aws:rds:useast-1:123456789012:auto-backup:ab-L2IJCEXJP7XQ7HOJ4SIEXAMPLE
.
///
///
///
/// This setting doesn't apply to RDS Custom.
///
///
public string SourceDBInstanceAutomatedBackupsArn
{
get { return this._sourceDBInstanceAutomatedBackupsArn; }
set { this._sourceDBInstanceAutomatedBackupsArn = value; }
}
// Check to see if SourceDBInstanceAutomatedBackupsArn property is set
internal bool IsSetSourceDBInstanceAutomatedBackupsArn()
{
return this._sourceDBInstanceAutomatedBackupsArn != null;
}
///
/// Gets and sets the property SourceDBInstanceIdentifier.
///
/// The identifier of the source DB instance from which to restore.
///
///
///
/// Constraints:
///
/// -
///
/// Must match the identifier of an existing DB instance.
///
///
///
public string SourceDBInstanceIdentifier
{
get { return this._sourceDBInstanceIdentifier; }
set { this._sourceDBInstanceIdentifier = value; }
}
// Check to see if SourceDBInstanceIdentifier property is set
internal bool IsSetSourceDBInstanceIdentifier()
{
return this._sourceDBInstanceIdentifier != null;
}
///
/// Gets and sets the property SourceDbiResourceId.
///
/// The resource ID of the source DB instance from which to restore.
///
///
public string SourceDbiResourceId
{
get { return this._sourceDbiResourceId; }
set { this._sourceDbiResourceId = value; }
}
// Check to see if SourceDbiResourceId property is set
internal bool IsSetSourceDbiResourceId()
{
return this._sourceDbiResourceId != null;
}
///
/// Gets and sets the property StorageThroughput.
///
/// Specifies the storage throughput value for the DB instance.
///
///
///
/// This setting doesn't apply to RDS Custom or Amazon Aurora.
///
///
public int StorageThroughput
{
get { return this._storageThroughput.GetValueOrDefault(); }
set { this._storageThroughput = value; }
}
// Check to see if StorageThroughput property is set
internal bool IsSetStorageThroughput()
{
return this._storageThroughput.HasValue;
}
///
/// Gets and sets the property StorageType.
///
/// Specifies the storage type to be associated with the DB instance.
///
///
///
/// Valid values: gp2 | gp3 | io1 | standard
///
///
///
/// If you specify io1
or gp3
, you must also include a value
/// for the Iops
parameter.
///
///
///
/// Default: io1
if the Iops
parameter is specified, otherwise
/// gp2
///
///
public string StorageType
{
get { return this._storageType; }
set { this._storageType = value; }
}
// Check to see if StorageType property is set
internal bool IsSetStorageType()
{
return this._storageType != null;
}
///
/// Gets and sets the property Tags.
///
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;
}
///
/// Gets and sets the property TargetDBInstanceIdentifier.
///
/// The name of the new DB instance to be created.
///
///
///
/// Constraints:
///
/// -
///
/// Must contain from 1 to 63 letters, numbers, or hyphens
///
///
-
///
/// First character must be a letter
///
///
-
///
/// Can't end with a hyphen or contain two consecutive hyphens
///
///
///
[AWSProperty(Required=true)]
public string TargetDBInstanceIdentifier
{
get { return this._targetDBInstanceIdentifier; }
set { this._targetDBInstanceIdentifier = value; }
}
// Check to see if TargetDBInstanceIdentifier property is set
internal bool IsSetTargetDBInstanceIdentifier()
{
return this._targetDBInstanceIdentifier != null;
}
///
/// Gets and sets the property TdeCredentialArn.
///
/// The ARN from the key store with which to associate the instance for TDE encryption.
///
///
///
/// This setting doesn't apply to RDS Custom.
///
///
public string TdeCredentialArn
{
get { return this._tdeCredentialArn; }
set { this._tdeCredentialArn = value; }
}
// Check to see if TdeCredentialArn property is set
internal bool IsSetTdeCredentialArn()
{
return this._tdeCredentialArn != null;
}
///
/// Gets and sets the property TdeCredentialPassword.
///
/// The password for the given ARN from the key store in order to access the device.
///
///
///
/// This setting doesn't apply to RDS Custom.
///
///
public string TdeCredentialPassword
{
get { return this._tdeCredentialPassword; }
set { this._tdeCredentialPassword = value; }
}
// Check to see if TdeCredentialPassword property is set
internal bool IsSetTdeCredentialPassword()
{
return this._tdeCredentialPassword != null;
}
///
/// Gets and sets the property UseDefaultProcessorFeatures.
///
/// A value that indicates whether the DB instance class of the DB instance uses its default
/// processor features.
///
///
///
/// This setting doesn't apply to RDS Custom.
///
///
public bool UseDefaultProcessorFeatures
{
get { return this._useDefaultProcessorFeatures.GetValueOrDefault(); }
set { this._useDefaultProcessorFeatures = value; }
}
// Check to see if UseDefaultProcessorFeatures property is set
internal bool IsSetUseDefaultProcessorFeatures()
{
return this._useDefaultProcessorFeatures.HasValue;
}
///
/// Gets and sets the property UseLatestRestorableTime.
///
/// A value that indicates whether the DB instance is restored from the latest backup
/// time. By default, the DB instance isn't restored from the latest backup time.
///
///
///
/// Constraints: Can't be specified if the RestoreTime
parameter is provided.
///
///
public bool UseLatestRestorableTime
{
get { return this._useLatestRestorableTime.GetValueOrDefault(); }
set { this._useLatestRestorableTime = value; }
}
// Check to see if UseLatestRestorableTime property is set
internal bool IsSetUseLatestRestorableTime()
{
return this._useLatestRestorableTime.HasValue;
}
///
/// Gets and sets the property VpcSecurityGroupIds.
///
/// A list of EC2 VPC security groups to associate with this DB instance.
///
///
///
/// Default: The default EC2 VPC security group for the DB subnet group's VPC.
///
///
public List VpcSecurityGroupIds
{
get { return this._vpcSecurityGroupIds; }
set { this._vpcSecurityGroupIds = value; }
}
// Check to see if VpcSecurityGroupIds property is set
internal bool IsSetVpcSecurityGroupIds()
{
return this._vpcSecurityGroupIds != null && this._vpcSecurityGroupIds.Count > 0;
}
#region Backwards compatible properties
private DateTime? _restoreTime;
///
/// Gets and sets the property RestoreTimeUtc.
///
/// This property is deprecated. Setting this property results in non-UTC DateTimes not
/// being marshalled correctly. Use RestoreTimeUtc instead. Setting either RestoreTime
/// or RestoreTimeUtc results in both RestoreTime and RestoreTimeUtc being assigned, the
/// latest assignment to either one of the two property is reflected in the value of both.
/// RestoreTime is provided for backwards compatibility only and assigning a non-Utc DateTime
/// to it results in the wrong timestamp being passed to the service.
///
///
///
/// The date and time to restore from.
///
///
///
/// Valid Values: Value must be a time in Universal Coordinated Time (UTC) format
///
///
///
/// Constraints:
///
/// -
///
/// Must be before the latest restorable time for the DB instance
///
///
-
///
/// Can't be specified if the
UseLatestRestorableTime
parameter is enabled
///
///
///
/// Example: 2009-09-07T23:45:00Z
///
///
[Obsolete("Setting this property results in non-UTC DateTimes not being marshalled correctly. " +
"Use RestoreTimeUtc instead. Setting either RestoreTime or RestoreTimeUtc results in both RestoreTime and " +
"RestoreTimeUtc being assigned, the latest assignment to either one of the two property is " +
"reflected in the value of both. RestoreTime is provided for backwards compatibility only and " +
"assigning a non-Utc DateTime to it results in the wrong timestamp being passed to the service.", false)]
public DateTime RestoreTime
{
get { return this._restoreTime.GetValueOrDefault(); }
set
{
this._restoreTime = value;
this._restoreTimeUtc = new DateTime(value.Ticks, DateTimeKind.Utc);
}
}
#endregion
}
}