com.aliyun.rds20140815.models.CloneDBInstanceShrinkRequest Maven / Gradle / Ivy
Show all versions of rds20140815 Show documentation
// This file is auto-generated, don't edit it. Thanks.
package com.aliyun.rds20140815.models;
import com.aliyun.tea.*;
public class CloneDBInstanceShrinkRequest extends TeaModel {
/**
* Specifies whether to enable the automatic payment feature for the new instance. Valid values:
*
* - true: enables the feature. You must make sure that your account balance is sufficient.
* - false: disables the feature. An unpaid order is generated.
*
*
* Default value: true. If your account balance is insufficient, you can set the AutoPay parameter to false to generate an unpaid order. Then, you can log on to the ApsaraDB RDS console to complete the payment.
*
*
* example:
* true
*/
@NameInMap("AutoPay")
public Boolean autoPay;
/**
* The backup set ID.
* You can call the DescribeBackups operation to query the backup set ID.
*
* You must specify at least one of the BackupId or RestoreTime parameters.
*
*
* example:
* 902****
*/
@NameInMap("BackupId")
public String backupId;
/**
* The type of backup that is used to restore the data of the original instance. Valid values:
*
* - FullBackup
* - IncrementalBackup
*
*
* example:
* FullBackup
*/
@NameInMap("BackupType")
public String backupType;
/**
* A reserved parameter. You do not need to specify this parameter.
*
* example:
* false
*/
@NameInMap("BpeEnabled")
public String bpeEnabled;
/**
* An invalid parameter. You do not need to specify this parameter.
*
* example:
* false
*/
@NameInMap("BurstingEnabled")
public Boolean burstingEnabled;
/**
* The RDS edition of the instance. Valid values:
*
* - Basic: RDS Basic Edition.
* - HighAvailability: RDS High-availability Edition.
* - AlwaysOn: RDS Cluster Edition for ApsaraDB RDS for SQL Server.
* - cluster: RDS Cluster Edition for ApsaraDB RDS for MySQL.
* - Finance: RDS Enterprise Edition. This edition is available only on the China site (aliyun.com).
*
* Serverless instances
*
* - serverless_basic: RDS Basic Edition. This edition is available only for serverless instances that run MySQL and PostgreSQL.
* - serverless_standard: RDS High-availability Edition for ApsaraDB RDS for MySQL
* - serverless_ha: RDS High-availability Edition for ApsaraDB RDS for SQL Server
*
*
* You do not need to configure this parameter. The value of this parameter is the same as that of the original instance.
*
*
* example:
* HighAvailability
*/
@NameInMap("Category")
public String category;
/**
* The client token that is used to ensure the idempotence of the request. You can use the client to generate the token, but you must make sure that the token is unique among different requests. The token can contain only ASCII characters and cannot exceed 64 characters in length.
*
* example:
* 0c593ea1-3bea-11e9-b96b-88**********
*/
@NameInMap("ClientToken")
public String clientToken;
/**
* The instance type of the new instance. For information, see Primary ApsaraDB RDS instance types.
*
* By default, the new instance uses the same instance type as the original primary instance.
*
*
* example:
* mysql.n1.micro.1
*/
@NameInMap("DBInstanceClass")
public String DBInstanceClass;
/**
* The instance ID.
* This parameter is required.
*
* example:
* rm-uf6wjk5xxxxxxxxxx
*/
@NameInMap("DBInstanceId")
public String DBInstanceId;
/**
* The storage capacity of the new instance. Unit: GB. You can increase the storage capacity in increments of 5 GB. For more information, see Primary ApsaraDB RDS instance types.
*
* By default, the new instance has the same storage capacity as the original primary instance.
*
*
* example:
* 1000
*/
@NameInMap("DBInstanceStorage")
public Integer DBInstanceStorage;
/**
* The storage type of the new instance. Valid values:
*
* - general_essd (recommend): general Enterprise SSD (ESSD)
* - local_ssd: local SSD
* - cloud_ssd: standard SSD
* - cloud_essd: performance level 1 (PL1) ESSD
* - cloud_essd2: PL2 ESSD
* - cloud_essd3: PL3 ESSD
*
*
* Serverless instances support only PL1 ESSDs and general ESSDs.
*
*
* example:
* cloud_essd
*/
@NameInMap("DBInstanceStorageType")
public String DBInstanceStorageType;
/**
* The name of the database. If you specify more than one database, the value is in the following format: Original database name 1,Original database name 2
.
*
* example:
* test1,test2
*/
@NameInMap("DbNames")
public String dbNames;
/**
* The ID of the dedicated cluster.
*
* example:
* dhg-7a9xxxxxxxx
*/
@NameInMap("DedicatedHostGroupId")
public String dedicatedHostGroupId;
/**
* Specifies whether to enable the release protection feature for the new instance. Valid values:
*
* - true
* - false (default)
*
*
* example:
* true
*/
@NameInMap("DeletionProtection")
public Boolean deletionProtection;
/**
* The network type of the new instance. Valid values:
*
* - VPC
* - Classic
*
*
* By default, the new instance has the same network type as the original primary instance.
*
*
* example:
* VPC
*/
@NameInMap("InstanceNetworkType")
public String instanceNetworkType;
/**
* A reserved parameter.
*
* example:
* None
*/
@NameInMap("IoAccelerationEnabled")
public String ioAccelerationEnabled;
/**
* The billing method of the instance. Valid values:
*
* - Postpaid: pay-as-you-go.
* - Prepaid: subscription.
* - Serverless: serverless. This value is not supported for instances that run MariaDB. For more information, see Overview of serverless ApsaraDB RDS for MySQL instances, Overview of serverless ApsaraDB RDS for SQL Server instances, and Overview of serverless ApsaraDB RDS for PostgreSQL instances.
*
* This parameter is required.
*
* example:
* Postpaid
*/
@NameInMap("PayType")
public String payType;
/**
* The unit that is used to calculate the billing cycle of the new instance. This parameter takes effect only when you select the subscription billing method for the new instance. Valid values:
*
* - Year
* - Month
*
*
* If you set the PayType parameter to Prepaid, you must specify this parameter.
*
*
* example:
* Year
*/
@NameInMap("Period")
public String period;
/**
* The internal IP address of the new instance, which must be within the CIDR block supported by the specified vSwitch. The system automatically assigns an internal IP address based on the values of the VPCId and VSwitchId parameters.
*
* example:
* 172.XX.XXX.69
*/
@NameInMap("PrivateIpAddress")
public String privateIpAddress;
/**
* The region ID. You can call the DescribeRegions operation to query the most recent region list.
*
* example:
* cn-hangzhou
*/
@NameInMap("RegionId")
public String regionId;
@NameInMap("ResourceOwnerId")
public Long resourceOwnerId;
/**
* Specifies whether to restore only the databases and tables that you specify. The value 1 specifies to restore only the specified databases and tables. If you do not want to restore only the specified databases or tables, you do not need to specify this parameter.
*
* example:
* 1
*/
@NameInMap("RestoreTable")
public String restoreTable;
/**
* The point in time to which you want to restore data. The point in time must fall within the specified backup retention period. Specify the time in the ISO 8601 standard in the yyyy-MM-ddTHH:mm:ssZ format. The time must be in UTC.
*
* You must specify at least one of the BackupId and RestoreTime parameters.
*
*
* example:
* 2011-06-11T16:00:00Z
*/
@NameInMap("RestoreTime")
public String restoreTime;
/**
* The specifications for the serverless instance. You must specify this parameter only when you restore data to a new serverless instance.
*
* This parameter is available only on the China site (aliyun.com).
*
*/
@NameInMap("ServerlessConfig")
public String serverlessConfigShrink;
/**
* The information about the database and table that you want to restore. The value is in the following format: [{"type":"db","name":"Name of Database 1","newname":"New name of Database 1","tables":[{"type":"table","name":"Name of Table 1 in Database 1","newname":"New name of Table 1"},{"type":"table","name":"Name of Table 2 in Database 1","newname":"New name of Table 2"}]},{"type":"db","name":"Name of Database 2","newname":"New name of Database 2","tables":[{"type":"table","name":"Name of Table 1 in Database 2","newname":"New name of Table 1"},{"type":"table","name":"Name of Table 2 in Database 2","newname":"New name of Table 2"}]}]
*
* example:
* [{"type":"db","name":"testdb1","newname":"testdb1_new","tables":[{"type":"table","name":"testdb1table1","newname":"testdb1table1_new"}]}]
*/
@NameInMap("TableMeta")
public String tableMeta;
/**
* The subscription duration of the new instance. Valid values:
*
* - If you set the Period parameter to Year, the value of the UsedTime parameter ranges from 1 to 3.
* - If you set the Period parameter to Month, the value of the UsedTime parameter ranges from 1 to 9.
*
*
* If you set the PayType parameter to Prepaid, you must also specify this parameter.
*
*
* example:
* 1
*/
@NameInMap("UsedTime")
public Integer usedTime;
/**
* The ID of the virtual private cloud (VPC).
*
* Make sure that the VPC belongs to the required region.
*
*
* example:
* vpc-uf6f7l4fg90xxxxxxxxxx
*/
@NameInMap("VPCId")
public String VPCId;
/**
* The ID of the vSwitch. The vSwitch must belong to the zone that is specified by ZoneId.
*
* - If you set InstanceNetworkType to VPC, you must also specify this parameter.
* - If you specify the ZoneSlaveId1 parameter, you must specify the IDs of two vSwitches for this parameter and separate the IDs with a comma (,).
*
*
* example:
* vsw-uf6adz52c2pxxxxxxxxxx
*/
@NameInMap("VSwitchId")
public String vSwitchId;
/**
* The zone ID of the primary instance. You can call the DescribeRegions operation to query the zone ID.
*
* Set this value to the zone ID of the original instance.
*
*
* example:
* cn-hangzhou-b
*/
@NameInMap("ZoneId")
public String zoneId;
/**
* The zone ID of the secondary instance. If you set the ZoneIdSlave1 parameter and the ZoneId parameter to the same value, the single-zone deployment method is used. If you set the ZoneIdSlave1 parameter and the ZoneId parameter to different values, the multi-zone deployment method is used.
*
* example:
* cn-hangzhou-c
*/
@NameInMap("ZoneIdSlave1")
public String zoneIdSlave1;
/**
* The zone ID of the logger instance. If you set the ZoneIdSlave2 parameter to the same value as the ZoneId parameter, the single-zone deployment method is used. If you set the ZoneIdSlave2 parameter to a different value from the ZoneId parameter, the multi-zone deployment method is used.
*
* example:
* cn-hangzhou-d
*/
@NameInMap("ZoneIdSlave2")
public String zoneIdSlave2;
public static CloneDBInstanceShrinkRequest build(java.util.Map map) throws Exception {
CloneDBInstanceShrinkRequest self = new CloneDBInstanceShrinkRequest();
return TeaModel.build(map, self);
}
public CloneDBInstanceShrinkRequest setAutoPay(Boolean autoPay) {
this.autoPay = autoPay;
return this;
}
public Boolean getAutoPay() {
return this.autoPay;
}
public CloneDBInstanceShrinkRequest setBackupId(String backupId) {
this.backupId = backupId;
return this;
}
public String getBackupId() {
return this.backupId;
}
public CloneDBInstanceShrinkRequest setBackupType(String backupType) {
this.backupType = backupType;
return this;
}
public String getBackupType() {
return this.backupType;
}
public CloneDBInstanceShrinkRequest setBpeEnabled(String bpeEnabled) {
this.bpeEnabled = bpeEnabled;
return this;
}
public String getBpeEnabled() {
return this.bpeEnabled;
}
public CloneDBInstanceShrinkRequest setBurstingEnabled(Boolean burstingEnabled) {
this.burstingEnabled = burstingEnabled;
return this;
}
public Boolean getBurstingEnabled() {
return this.burstingEnabled;
}
public CloneDBInstanceShrinkRequest setCategory(String category) {
this.category = category;
return this;
}
public String getCategory() {
return this.category;
}
public CloneDBInstanceShrinkRequest setClientToken(String clientToken) {
this.clientToken = clientToken;
return this;
}
public String getClientToken() {
return this.clientToken;
}
public CloneDBInstanceShrinkRequest setDBInstanceClass(String DBInstanceClass) {
this.DBInstanceClass = DBInstanceClass;
return this;
}
public String getDBInstanceClass() {
return this.DBInstanceClass;
}
public CloneDBInstanceShrinkRequest setDBInstanceId(String DBInstanceId) {
this.DBInstanceId = DBInstanceId;
return this;
}
public String getDBInstanceId() {
return this.DBInstanceId;
}
public CloneDBInstanceShrinkRequest setDBInstanceStorage(Integer DBInstanceStorage) {
this.DBInstanceStorage = DBInstanceStorage;
return this;
}
public Integer getDBInstanceStorage() {
return this.DBInstanceStorage;
}
public CloneDBInstanceShrinkRequest setDBInstanceStorageType(String DBInstanceStorageType) {
this.DBInstanceStorageType = DBInstanceStorageType;
return this;
}
public String getDBInstanceStorageType() {
return this.DBInstanceStorageType;
}
public CloneDBInstanceShrinkRequest setDbNames(String dbNames) {
this.dbNames = dbNames;
return this;
}
public String getDbNames() {
return this.dbNames;
}
public CloneDBInstanceShrinkRequest setDedicatedHostGroupId(String dedicatedHostGroupId) {
this.dedicatedHostGroupId = dedicatedHostGroupId;
return this;
}
public String getDedicatedHostGroupId() {
return this.dedicatedHostGroupId;
}
public CloneDBInstanceShrinkRequest setDeletionProtection(Boolean deletionProtection) {
this.deletionProtection = deletionProtection;
return this;
}
public Boolean getDeletionProtection() {
return this.deletionProtection;
}
public CloneDBInstanceShrinkRequest setInstanceNetworkType(String instanceNetworkType) {
this.instanceNetworkType = instanceNetworkType;
return this;
}
public String getInstanceNetworkType() {
return this.instanceNetworkType;
}
public CloneDBInstanceShrinkRequest setIoAccelerationEnabled(String ioAccelerationEnabled) {
this.ioAccelerationEnabled = ioAccelerationEnabled;
return this;
}
public String getIoAccelerationEnabled() {
return this.ioAccelerationEnabled;
}
public CloneDBInstanceShrinkRequest setPayType(String payType) {
this.payType = payType;
return this;
}
public String getPayType() {
return this.payType;
}
public CloneDBInstanceShrinkRequest setPeriod(String period) {
this.period = period;
return this;
}
public String getPeriod() {
return this.period;
}
public CloneDBInstanceShrinkRequest setPrivateIpAddress(String privateIpAddress) {
this.privateIpAddress = privateIpAddress;
return this;
}
public String getPrivateIpAddress() {
return this.privateIpAddress;
}
public CloneDBInstanceShrinkRequest setRegionId(String regionId) {
this.regionId = regionId;
return this;
}
public String getRegionId() {
return this.regionId;
}
public CloneDBInstanceShrinkRequest setResourceOwnerId(Long resourceOwnerId) {
this.resourceOwnerId = resourceOwnerId;
return this;
}
public Long getResourceOwnerId() {
return this.resourceOwnerId;
}
public CloneDBInstanceShrinkRequest setRestoreTable(String restoreTable) {
this.restoreTable = restoreTable;
return this;
}
public String getRestoreTable() {
return this.restoreTable;
}
public CloneDBInstanceShrinkRequest setRestoreTime(String restoreTime) {
this.restoreTime = restoreTime;
return this;
}
public String getRestoreTime() {
return this.restoreTime;
}
public CloneDBInstanceShrinkRequest setServerlessConfigShrink(String serverlessConfigShrink) {
this.serverlessConfigShrink = serverlessConfigShrink;
return this;
}
public String getServerlessConfigShrink() {
return this.serverlessConfigShrink;
}
public CloneDBInstanceShrinkRequest setTableMeta(String tableMeta) {
this.tableMeta = tableMeta;
return this;
}
public String getTableMeta() {
return this.tableMeta;
}
public CloneDBInstanceShrinkRequest setUsedTime(Integer usedTime) {
this.usedTime = usedTime;
return this;
}
public Integer getUsedTime() {
return this.usedTime;
}
public CloneDBInstanceShrinkRequest setVPCId(String VPCId) {
this.VPCId = VPCId;
return this;
}
public String getVPCId() {
return this.VPCId;
}
public CloneDBInstanceShrinkRequest setVSwitchId(String vSwitchId) {
this.vSwitchId = vSwitchId;
return this;
}
public String getVSwitchId() {
return this.vSwitchId;
}
public CloneDBInstanceShrinkRequest setZoneId(String zoneId) {
this.zoneId = zoneId;
return this;
}
public String getZoneId() {
return this.zoneId;
}
public CloneDBInstanceShrinkRequest setZoneIdSlave1(String zoneIdSlave1) {
this.zoneIdSlave1 = zoneIdSlave1;
return this;
}
public String getZoneIdSlave1() {
return this.zoneIdSlave1;
}
public CloneDBInstanceShrinkRequest setZoneIdSlave2(String zoneIdSlave2) {
this.zoneIdSlave2 = zoneIdSlave2;
return this;
}
public String getZoneIdSlave2() {
return this.zoneIdSlave2;
}
}