com.aliyun.sdk.service.dts20200101.models.DescribeDtsJobsResponseBody Maven / Gradle / Ivy
Show all versions of alibabacloud-dts20200101 Show documentation
// This file is auto-generated, don't edit it. Thanks.
package com.aliyun.sdk.service.dts20200101.models;
import darabonba.core.RequestModel;
import darabonba.core.TeaModel;
import com.aliyun.sdk.gateway.pop.models.*;
/**
* {@link DescribeDtsJobsResponseBody} extends {@link TeaModel}
*
* DescribeDtsJobsResponseBody
*/
public class DescribeDtsJobsResponseBody extends TeaModel {
@com.aliyun.core.annotation.NameInMap("DtsJobList")
private java.util.List < DtsJobList> dtsJobList;
@com.aliyun.core.annotation.NameInMap("DynamicCode")
private String dynamicCode;
@com.aliyun.core.annotation.NameInMap("DynamicMessage")
private String dynamicMessage;
@com.aliyun.core.annotation.NameInMap("ErrCode")
private String errCode;
@com.aliyun.core.annotation.NameInMap("ErrMessage")
private String errMessage;
@com.aliyun.core.annotation.NameInMap("EtlDemoList")
private java.util.List < EtlDemoList> etlDemoList;
@com.aliyun.core.annotation.NameInMap("HttpStatusCode")
private Integer httpStatusCode;
@com.aliyun.core.annotation.NameInMap("PageNumber")
private Integer pageNumber;
@com.aliyun.core.annotation.NameInMap("PageRecordCount")
private Integer pageRecordCount;
@com.aliyun.core.annotation.NameInMap("RequestId")
private String requestId;
@com.aliyun.core.annotation.NameInMap("Success")
private Boolean success;
@com.aliyun.core.annotation.NameInMap("TotalRecordCount")
private Integer totalRecordCount;
private DescribeDtsJobsResponseBody(Builder builder) {
this.dtsJobList = builder.dtsJobList;
this.dynamicCode = builder.dynamicCode;
this.dynamicMessage = builder.dynamicMessage;
this.errCode = builder.errCode;
this.errMessage = builder.errMessage;
this.etlDemoList = builder.etlDemoList;
this.httpStatusCode = builder.httpStatusCode;
this.pageNumber = builder.pageNumber;
this.pageRecordCount = builder.pageRecordCount;
this.requestId = builder.requestId;
this.success = builder.success;
this.totalRecordCount = builder.totalRecordCount;
}
public static Builder builder() {
return new Builder();
}
public static DescribeDtsJobsResponseBody create() {
return builder().build();
}
/**
* @return dtsJobList
*/
public java.util.List < DtsJobList> getDtsJobList() {
return this.dtsJobList;
}
/**
* @return dynamicCode
*/
public String getDynamicCode() {
return this.dynamicCode;
}
/**
* @return dynamicMessage
*/
public String getDynamicMessage() {
return this.dynamicMessage;
}
/**
* @return errCode
*/
public String getErrCode() {
return this.errCode;
}
/**
* @return errMessage
*/
public String getErrMessage() {
return this.errMessage;
}
/**
* @return etlDemoList
*/
public java.util.List < EtlDemoList> getEtlDemoList() {
return this.etlDemoList;
}
/**
* @return httpStatusCode
*/
public Integer getHttpStatusCode() {
return this.httpStatusCode;
}
/**
* @return pageNumber
*/
public Integer getPageNumber() {
return this.pageNumber;
}
/**
* @return pageRecordCount
*/
public Integer getPageRecordCount() {
return this.pageRecordCount;
}
/**
* @return requestId
*/
public String getRequestId() {
return this.requestId;
}
/**
* @return success
*/
public Boolean getSuccess() {
return this.success;
}
/**
* @return totalRecordCount
*/
public Integer getTotalRecordCount() {
return this.totalRecordCount;
}
public static final class Builder {
private java.util.List < DtsJobList> dtsJobList;
private String dynamicCode;
private String dynamicMessage;
private String errCode;
private String errMessage;
private java.util.List < EtlDemoList> etlDemoList;
private Integer httpStatusCode;
private Integer pageNumber;
private Integer pageRecordCount;
private String requestId;
private Boolean success;
private Integer totalRecordCount;
/**
* The list of DTS tasks and the details of each task.
*/
public Builder dtsJobList(java.util.List < DtsJobList> dtsJobList) {
this.dtsJobList = dtsJobList;
return this;
}
/**
* The dynamic error code. This parameter will be removed in the future.
*/
public Builder dynamicCode(String dynamicCode) {
this.dynamicCode = dynamicCode;
return this;
}
/**
* The dynamic part in the error message. The value of this parameter is used to replace the **%s** variable in the value of the **ErrMessage** parameter.
*
*
* > For example, if the value of the **ErrMessage** parameter is **The Value of Input Parameter %s is not valid** and the value of the **DynamicMessage** parameter is **Type**, the specified **Type** parameter is invalid.
*/
public Builder dynamicMessage(String dynamicMessage) {
this.dynamicMessage = dynamicMessage;
return this;
}
/**
* The error code returned if the call failed.
*/
public Builder errCode(String errCode) {
this.errCode = errCode;
return this;
}
/**
* The error message returned if the call failed.
*/
public Builder errMessage(String errMessage) {
this.errMessage = errMessage;
return this;
}
/**
* The DTS tasks and the details of each task.
*/
public Builder etlDemoList(java.util.List < EtlDemoList> etlDemoList) {
this.etlDemoList = etlDemoList;
return this;
}
/**
* The HTTP status code.
*/
public Builder httpStatusCode(Integer httpStatusCode) {
this.httpStatusCode = httpStatusCode;
return this;
}
/**
* The page number of the returned page.
*/
public Builder pageNumber(Integer pageNumber) {
this.pageNumber = pageNumber;
return this;
}
/**
* The number of entries returned per page.
*/
public Builder pageRecordCount(Integer pageRecordCount) {
this.pageRecordCount = pageRecordCount;
return this;
}
/**
* The ID of the request.
*/
public Builder requestId(String requestId) {
this.requestId = requestId;
return this;
}
/**
* Indicates whether the call was successful.
*/
public Builder success(Boolean success) {
this.success = success;
return this;
}
/**
* The total number of DTS tasks that meet the query condition.
*/
public Builder totalRecordCount(Integer totalRecordCount) {
this.totalRecordCount = totalRecordCount;
return this;
}
public DescribeDtsJobsResponseBody build() {
return new DescribeDtsJobsResponseBody(this);
}
}
public static class DataCloudStatus extends TeaModel {
@com.aliyun.core.annotation.NameInMap("ErrorMessage")
private String errorMessage;
@com.aliyun.core.annotation.NameInMap("NeedUpgrade")
private Boolean needUpgrade;
@com.aliyun.core.annotation.NameInMap("Percent")
private String percent;
@com.aliyun.core.annotation.NameInMap("Progress")
private String progress;
@com.aliyun.core.annotation.NameInMap("Status")
private String status;
private DataCloudStatus(Builder builder) {
this.errorMessage = builder.errorMessage;
this.needUpgrade = builder.needUpgrade;
this.percent = builder.percent;
this.progress = builder.progress;
this.status = builder.status;
}
public static Builder builder() {
return new Builder();
}
public static DataCloudStatus create() {
return builder().build();
}
/**
* @return errorMessage
*/
public String getErrorMessage() {
return this.errorMessage;
}
/**
* @return needUpgrade
*/
public Boolean getNeedUpgrade() {
return this.needUpgrade;
}
/**
* @return percent
*/
public String getPercent() {
return this.percent;
}
/**
* @return progress
*/
public String getProgress() {
return this.progress;
}
/**
* @return status
*/
public String getStatus() {
return this.status;
}
public static final class Builder {
private String errorMessage;
private Boolean needUpgrade;
private String percent;
private String progress;
private String status;
/**
* The error message returned if the task failed.
*/
public Builder errorMessage(String errorMessage) {
this.errorMessage = errorMessage;
return this;
}
/**
* Indicates whether the instance needs to be upgraded. Valid values:
*
*
* - **true**
* - **false**
*/
public Builder needUpgrade(Boolean needUpgrade) {
this.needUpgrade = needUpgrade;
return this;
}
/**
* The progress of the task. Unit: percentage.
*/
public Builder percent(String percent) {
this.percent = percent;
return this;
}
/**
* The number of tables that have been migrated.
*/
public Builder progress(String progress) {
this.progress = progress;
return this;
}
/**
* The state of the task. For more information about the valid values, see the description of the request parameter **Status**.
*/
public Builder status(String status) {
this.status = status;
return this;
}
public DataCloudStatus build() {
return new DataCloudStatus(this);
}
}
}
public static class DataEtlStatus extends TeaModel {
@com.aliyun.core.annotation.NameInMap("ErrorMessage")
private String errorMessage;
@com.aliyun.core.annotation.NameInMap("Percent")
private String percent;
@com.aliyun.core.annotation.NameInMap("Progress")
private String progress;
@com.aliyun.core.annotation.NameInMap("Status")
private String status;
private DataEtlStatus(Builder builder) {
this.errorMessage = builder.errorMessage;
this.percent = builder.percent;
this.progress = builder.progress;
this.status = builder.status;
}
public static Builder builder() {
return new Builder();
}
public static DataEtlStatus create() {
return builder().build();
}
/**
* @return errorMessage
*/
public String getErrorMessage() {
return this.errorMessage;
}
/**
* @return percent
*/
public String getPercent() {
return this.percent;
}
/**
* @return progress
*/
public String getProgress() {
return this.progress;
}
/**
* @return status
*/
public String getStatus() {
return this.status;
}
public static final class Builder {
private String errorMessage;
private String percent;
private String progress;
private String status;
/**
* The error message returned if the task failed.
*/
public Builder errorMessage(String errorMessage) {
this.errorMessage = errorMessage;
return this;
}
/**
* The progress of the ETL task.
*/
public Builder percent(String percent) {
this.percent = percent;
return this;
}
/**
* The number of records that have been processed by the ETL task.
*/
public Builder progress(String progress) {
this.progress = progress;
return this;
}
/**
* The state of the ETL task. Valid values:
*
*
* * **NotStarted**: The task is not started.
* * **Migrating**: The task is in progress.
* * **Failed**: The task failed.
* * **Finished**: The task is complete.
* * **Catched**: The task is not delayed.
*/
public Builder status(String status) {
this.status = status;
return this;
}
public DataEtlStatus build() {
return new DataEtlStatus(this);
}
}
}
public static class DataInitializationStatus extends TeaModel {
@com.aliyun.core.annotation.NameInMap("ErrorMessage")
private String errorMessage;
@com.aliyun.core.annotation.NameInMap("Percent")
private String percent;
@com.aliyun.core.annotation.NameInMap("Progress")
private String progress;
@com.aliyun.core.annotation.NameInMap("Status")
private String status;
private DataInitializationStatus(Builder builder) {
this.errorMessage = builder.errorMessage;
this.percent = builder.percent;
this.progress = builder.progress;
this.status = builder.status;
}
public static Builder builder() {
return new Builder();
}
public static DataInitializationStatus create() {
return builder().build();
}
/**
* @return errorMessage
*/
public String getErrorMessage() {
return this.errorMessage;
}
/**
* @return percent
*/
public String getPercent() {
return this.percent;
}
/**
* @return progress
*/
public String getProgress() {
return this.progress;
}
/**
* @return status
*/
public String getStatus() {
return this.status;
}
public static final class Builder {
private String errorMessage;
private String percent;
private String progress;
private String status;
/**
* The error message returned if full data synchronization failed.
*/
public Builder errorMessage(String errorMessage) {
this.errorMessage = errorMessage;
return this;
}
/**
* The progress of full data synchronization. This is expressed as a percentage.
*/
public Builder percent(String percent) {
this.percent = percent;
return this;
}
/**
* The number of records that have been synchronized during full data synchronization.
*/
public Builder progress(String progress) {
this.progress = progress;
return this;
}
/**
* The state of full data synchronization. Valid values:
*
*
* * **NotStarted**: The task is not started.
* * **Migrating**: The task is in progress.
* * **Failed**: The task failed.
* * **Finished**: The task is complete.
*/
public Builder status(String status) {
this.status = status;
return this;
}
public DataInitializationStatus build() {
return new DataInitializationStatus(this);
}
}
}
public static class DataSynchronizationStatus extends TeaModel {
@com.aliyun.core.annotation.NameInMap("ErrorMessage")
private String errorMessage;
@com.aliyun.core.annotation.NameInMap("NeedUpgrade")
private Boolean needUpgrade;
@com.aliyun.core.annotation.NameInMap("Percent")
private String percent;
@com.aliyun.core.annotation.NameInMap("Progress")
private String progress;
@com.aliyun.core.annotation.NameInMap("Status")
private String status;
private DataSynchronizationStatus(Builder builder) {
this.errorMessage = builder.errorMessage;
this.needUpgrade = builder.needUpgrade;
this.percent = builder.percent;
this.progress = builder.progress;
this.status = builder.status;
}
public static Builder builder() {
return new Builder();
}
public static DataSynchronizationStatus create() {
return builder().build();
}
/**
* @return errorMessage
*/
public String getErrorMessage() {
return this.errorMessage;
}
/**
* @return needUpgrade
*/
public Boolean getNeedUpgrade() {
return this.needUpgrade;
}
/**
* @return percent
*/
public String getPercent() {
return this.percent;
}
/**
* @return progress
*/
public String getProgress() {
return this.progress;
}
/**
* @return status
*/
public String getStatus() {
return this.status;
}
public static final class Builder {
private String errorMessage;
private Boolean needUpgrade;
private String percent;
private String progress;
private String status;
/**
* The error message returned if incremental data migration or synchronization failed.
*/
public Builder errorMessage(String errorMessage) {
this.errorMessage = errorMessage;
return this;
}
/**
* Indicates whether the instance needs to be upgraded. Valid values:
*
*
* * **true**: yes
* * **false**: no
*
* > To upgrade a DTS instance, call the [TransferInstanceClass](~~281093~~) operation.
*/
public Builder needUpgrade(Boolean needUpgrade) {
this.needUpgrade = needUpgrade;
return this;
}
/**
* The progress of incremental data migration or synchronization.
*/
public Builder percent(String percent) {
this.percent = percent;
return this;
}
/**
* The number of records that have been migrated or synchronized during incremental data migration or synchronization.
*/
public Builder progress(String progress) {
this.progress = progress;
return this;
}
/**
* The state of incremental data migration or synchronization. Valid values:
*
*
* * **NotStarted**: The task is not started.
* * **Migrating**: The task is in progress.
* * **Failed**: The task failed.
* * **Finished**: The task is complete.
* * **Catched**: The task is not delayed.
*/
public Builder status(String status) {
this.status = status;
return this;
}
public DataSynchronizationStatus build() {
return new DataSynchronizationStatus(this);
}
}
}
public static class DestinationEndpoint extends TeaModel {
@com.aliyun.core.annotation.NameInMap("DatabaseName")
private String databaseName;
@com.aliyun.core.annotation.NameInMap("EngineName")
private String engineName;
@com.aliyun.core.annotation.NameInMap("InstanceID")
private String instanceID;
@com.aliyun.core.annotation.NameInMap("InstanceType")
private String instanceType;
@com.aliyun.core.annotation.NameInMap("Ip")
private String ip;
@com.aliyun.core.annotation.NameInMap("OracleSID")
private String oracleSID;
@com.aliyun.core.annotation.NameInMap("Port")
private String port;
@com.aliyun.core.annotation.NameInMap("Region")
private String region;
@com.aliyun.core.annotation.NameInMap("SslSolutionEnum")
private String sslSolutionEnum;
@com.aliyun.core.annotation.NameInMap("UserName")
private String userName;
private DestinationEndpoint(Builder builder) {
this.databaseName = builder.databaseName;
this.engineName = builder.engineName;
this.instanceID = builder.instanceID;
this.instanceType = builder.instanceType;
this.ip = builder.ip;
this.oracleSID = builder.oracleSID;
this.port = builder.port;
this.region = builder.region;
this.sslSolutionEnum = builder.sslSolutionEnum;
this.userName = builder.userName;
}
public static Builder builder() {
return new Builder();
}
public static DestinationEndpoint create() {
return builder().build();
}
/**
* @return databaseName
*/
public String getDatabaseName() {
return this.databaseName;
}
/**
* @return engineName
*/
public String getEngineName() {
return this.engineName;
}
/**
* @return instanceID
*/
public String getInstanceID() {
return this.instanceID;
}
/**
* @return instanceType
*/
public String getInstanceType() {
return this.instanceType;
}
/**
* @return ip
*/
public String getIp() {
return this.ip;
}
/**
* @return oracleSID
*/
public String getOracleSID() {
return this.oracleSID;
}
/**
* @return port
*/
public String getPort() {
return this.port;
}
/**
* @return region
*/
public String getRegion() {
return this.region;
}
/**
* @return sslSolutionEnum
*/
public String getSslSolutionEnum() {
return this.sslSolutionEnum;
}
/**
* @return userName
*/
public String getUserName() {
return this.userName;
}
public static final class Builder {
private String databaseName;
private String engineName;
private String instanceID;
private String instanceType;
private String ip;
private String oracleSID;
private String port;
private String region;
private String sslSolutionEnum;
private String userName;
/**
* The name of the database to which the migration object in the destination instance belongs.
*/
public Builder databaseName(String databaseName) {
this.databaseName = databaseName;
return this;
}
/**
* The database type of the destination instance.
*/
public Builder engineName(String engineName) {
this.engineName = engineName;
return this;
}
/**
* The ID of the destination instance.
*/
public Builder instanceID(String instanceID) {
this.instanceID = instanceID;
return this;
}
/**
* The type of the destination instance.
*/
public Builder instanceType(String instanceType) {
this.instanceType = instanceType;
return this;
}
/**
* The endpoint of the destination instance.
*/
public Builder ip(String ip) {
this.ip = ip;
return this;
}
/**
* The SID of the Oracle database.
*
*
* > This parameter is returned only if the **EngineName** parameter of the destination instance is set to **Oracle** and the Oracle database is deployed in a non-RAC architecture.
*/
public Builder oracleSID(String oracleSID) {
this.oracleSID = oracleSID;
return this;
}
/**
* The database service port of the destination instance.
*/
public Builder port(String port) {
this.port = port;
return this;
}
/**
* The ID of the region in which the destination instance resides. For more information, see [List of supported regions](~~141033~~).
*/
public Builder region(String region) {
this.region = region;
return this;
}
/**
* Indicates whether SSL encryption is enabled. Valid values:
*
*
* * **DISABLE**: SSL encryption is disabled.
* * **ENABLE_WITH_CERTIFICATE**: SSL encryption is enabled, and the CA certificate is uploaded.
* * **ENABLE_ONLY\_4\_MONGODB_ALTAS**: SSL encryption is enabled for the connection to an AWS MongoDB Altas database.
* * **ENABLE_ONLY\_4\_KAFKA_SCRAM_SHA\_256**: SCRAM-SHA-256 is used to encrypt the connection to a Kafka cluster.
*/
public Builder sslSolutionEnum(String sslSolutionEnum) {
this.sslSolutionEnum = sslSolutionEnum;
return this;
}
/**
* The database account of the destination instance.
*/
public Builder userName(String userName) {
this.userName = userName;
return this;
}
public DestinationEndpoint build() {
return new DestinationEndpoint(this);
}
}
}
public static class ErrorDetails extends TeaModel {
@com.aliyun.core.annotation.NameInMap("ErrorCode")
private String errorCode;
@com.aliyun.core.annotation.NameInMap("HelpUrl")
private String helpUrl;
private ErrorDetails(Builder builder) {
this.errorCode = builder.errorCode;
this.helpUrl = builder.helpUrl;
}
public static Builder builder() {
return new Builder();
}
public static ErrorDetails create() {
return builder().build();
}
/**
* @return errorCode
*/
public String getErrorCode() {
return this.errorCode;
}
/**
* @return helpUrl
*/
public String getHelpUrl() {
return this.helpUrl;
}
public static final class Builder {
private String errorCode;
private String helpUrl;
/**
* The error code returned.
*/
public Builder errorCode(String errorCode) {
this.errorCode = errorCode;
return this;
}
/**
* The URL of the documentation.
*/
public Builder helpUrl(String helpUrl) {
this.helpUrl = helpUrl;
return this;
}
public ErrorDetails build() {
return new ErrorDetails(this);
}
}
}
public static class FullDataCheckStatus extends TeaModel {
@com.aliyun.core.annotation.NameInMap("ErrorMessage")
private String errorMessage;
@com.aliyun.core.annotation.NameInMap("Percent")
private String percent;
@com.aliyun.core.annotation.NameInMap("Progress")
private String progress;
@com.aliyun.core.annotation.NameInMap("Status")
private String status;
private FullDataCheckStatus(Builder builder) {
this.errorMessage = builder.errorMessage;
this.percent = builder.percent;
this.progress = builder.progress;
this.status = builder.status;
}
public static Builder builder() {
return new Builder();
}
public static FullDataCheckStatus create() {
return builder().build();
}
/**
* @return errorMessage
*/
public String getErrorMessage() {
return this.errorMessage;
}
/**
* @return percent
*/
public String getPercent() {
return this.percent;
}
/**
* @return progress
*/
public String getProgress() {
return this.progress;
}
/**
* @return status
*/
public String getStatus() {
return this.status;
}
public static final class Builder {
private String errorMessage;
private String percent;
private String progress;
private String status;
/**
* The error message returned if the task failed.
*/
public Builder errorMessage(String errorMessage) {
this.errorMessage = errorMessage;
return this;
}
/**
* The progress of the full data verification task. Unit: percentage.
*/
public Builder percent(String percent) {
this.percent = percent;
return this;
}
/**
* The progress of the full data verification task.
*/
public Builder progress(String progress) {
this.progress = progress;
return this;
}
/**
* The state of the full data verification task. Valid values:
*
*
* - **NotStarted**: The verification is not started.
* - **Checking**: The verification is in progress.
* - **Failed**: The verification failed.
* - **Finished**: The verification is complete.
*/
public Builder status(String status) {
this.status = status;
return this;
}
public FullDataCheckStatus build() {
return new FullDataCheckStatus(this);
}
}
}
public static class IncDataCheckStatus extends TeaModel {
@com.aliyun.core.annotation.NameInMap("ErrorMessage")
private String errorMessage;
@com.aliyun.core.annotation.NameInMap("Percent")
private String percent;
@com.aliyun.core.annotation.NameInMap("Progress")
private String progress;
@com.aliyun.core.annotation.NameInMap("Status")
private String status;
private IncDataCheckStatus(Builder builder) {
this.errorMessage = builder.errorMessage;
this.percent = builder.percent;
this.progress = builder.progress;
this.status = builder.status;
}
public static Builder builder() {
return new Builder();
}
public static IncDataCheckStatus create() {
return builder().build();
}
/**
* @return errorMessage
*/
public String getErrorMessage() {
return this.errorMessage;
}
/**
* @return percent
*/
public String getPercent() {
return this.percent;
}
/**
* @return progress
*/
public String getProgress() {
return this.progress;
}
/**
* @return status
*/
public String getStatus() {
return this.status;
}
public static final class Builder {
private String errorMessage;
private String percent;
private String progress;
private String status;
/**
* The error message returned if the task failed.
*/
public Builder errorMessage(String errorMessage) {
this.errorMessage = errorMessage;
return this;
}
/**
* The progress of the incremental data verification task. Unit: percentage.
*/
public Builder percent(String percent) {
this.percent = percent;
return this;
}
/**
* The progress of the incremental data verification task.
*/
public Builder progress(String progress) {
this.progress = progress;
return this;
}
/**
* The state of the incremental data verification task. Valid values:
*
*
* - **Catched**: The verification is delayed.
* - **NotStarted**: The verification is not started.
* - **Checking**: The verification is in progress.
* - **Failed**: The verification failed.
*/
public Builder status(String status) {
this.status = status;
return this;
}
public IncDataCheckStatus build() {
return new IncDataCheckStatus(this);
}
}
}
public static class MigrationMode extends TeaModel {
@com.aliyun.core.annotation.NameInMap("DataInitialization")
private Boolean dataInitialization;
@com.aliyun.core.annotation.NameInMap("DataSynchronization")
private Boolean dataSynchronization;
@com.aliyun.core.annotation.NameInMap("FullDataCheck")
private Boolean fullDataCheck;
@com.aliyun.core.annotation.NameInMap("IncDataCheck")
private Boolean incDataCheck;
@com.aliyun.core.annotation.NameInMap("StructureInitialization")
private Boolean structureInitialization;
private MigrationMode(Builder builder) {
this.dataInitialization = builder.dataInitialization;
this.dataSynchronization = builder.dataSynchronization;
this.fullDataCheck = builder.fullDataCheck;
this.incDataCheck = builder.incDataCheck;
this.structureInitialization = builder.structureInitialization;
}
public static Builder builder() {
return new Builder();
}
public static MigrationMode create() {
return builder().build();
}
/**
* @return dataInitialization
*/
public Boolean getDataInitialization() {
return this.dataInitialization;
}
/**
* @return dataSynchronization
*/
public Boolean getDataSynchronization() {
return this.dataSynchronization;
}
/**
* @return fullDataCheck
*/
public Boolean getFullDataCheck() {
return this.fullDataCheck;
}
/**
* @return incDataCheck
*/
public Boolean getIncDataCheck() {
return this.incDataCheck;
}
/**
* @return structureInitialization
*/
public Boolean getStructureInitialization() {
return this.structureInitialization;
}
public static final class Builder {
private Boolean dataInitialization;
private Boolean dataSynchronization;
private Boolean fullDataCheck;
private Boolean incDataCheck;
private Boolean structureInitialization;
/**
* Indicates whether full data migration or synchronization is performed. Valid values:
*
*
* * **true**: yes
* * **false**: no
*/
public Builder dataInitialization(Boolean dataInitialization) {
this.dataInitialization = dataInitialization;
return this;
}
/**
* Indicates whether incremental data migration or synchronization is performed. Valid values:
*
*
* * **true**: yes
* * **false**: no
*/
public Builder dataSynchronization(Boolean dataSynchronization) {
this.dataSynchronization = dataSynchronization;
return this;
}
/**
* Indicates whether full data verification is performed. Valid values:
*
* - **true**: yes
* - **false**: no
*/
public Builder fullDataCheck(Boolean fullDataCheck) {
this.fullDataCheck = fullDataCheck;
return this;
}
/**
* Indicates whether incremental data verification is performed. Valid values:
*
* - **true**: yes
* - **false**: no
*/
public Builder incDataCheck(Boolean incDataCheck) {
this.incDataCheck = incDataCheck;
return this;
}
/**
* Indicates whether schema migration or schema synchronization is performed. Valid values:
*
*
* * **true**: yes
* * **false**: no
*/
public Builder structureInitialization(Boolean structureInitialization) {
this.structureInitialization = structureInitialization;
return this;
}
public MigrationMode build() {
return new MigrationMode(this);
}
}
}
public static class Performance extends TeaModel {
@com.aliyun.core.annotation.NameInMap("Flow")
private String flow;
@com.aliyun.core.annotation.NameInMap("Rps")
private String rps;
private Performance(Builder builder) {
this.flow = builder.flow;
this.rps = builder.rps;
}
public static Builder builder() {
return new Builder();
}
public static Performance create() {
return builder().build();
}
/**
* @return flow
*/
public String getFlow() {
return this.flow;
}
/**
* @return rps
*/
public String getRps() {
return this.rps;
}
public static final class Builder {
private String flow;
private String rps;
/**
* The size of data that is migrated or synchronized per second. Unit: MB/s.
*/
public Builder flow(String flow) {
this.flow = flow;
return this;
}
/**
* The number of times that SQL statements are migrated or synchronized per second, including BEGIN, COMMIT, DML, and DDL statements. DML statements include INSERT, DELETE, and UPDATE.
*/
public Builder rps(String rps) {
this.rps = rps;
return this;
}
public Performance build() {
return new Performance(this);
}
}
}
public static class Detail extends TeaModel {
@com.aliyun.core.annotation.NameInMap("CheckItem")
private String checkItem;
@com.aliyun.core.annotation.NameInMap("CheckItemDescription")
private String checkItemDescription;
@com.aliyun.core.annotation.NameInMap("CheckResult")
private String checkResult;
@com.aliyun.core.annotation.NameInMap("FailedReason")
private String failedReason;
@com.aliyun.core.annotation.NameInMap("RepairMethod")
private String repairMethod;
private Detail(Builder builder) {
this.checkItem = builder.checkItem;
this.checkItemDescription = builder.checkItemDescription;
this.checkResult = builder.checkResult;
this.failedReason = builder.failedReason;
this.repairMethod = builder.repairMethod;
}
public static Builder builder() {
return new Builder();
}
public static Detail create() {
return builder().build();
}
/**
* @return checkItem
*/
public String getCheckItem() {
return this.checkItem;
}
/**
* @return checkItemDescription
*/
public String getCheckItemDescription() {
return this.checkItemDescription;
}
/**
* @return checkResult
*/
public String getCheckResult() {
return this.checkResult;
}
/**
* @return failedReason
*/
public String getFailedReason() {
return this.failedReason;
}
/**
* @return repairMethod
*/
public String getRepairMethod() {
return this.repairMethod;
}
public static final class Builder {
private String checkItem;
private String checkItemDescription;
private String checkResult;
private String failedReason;
private String repairMethod;
/**
* The name of the precheck item.
*/
public Builder checkItem(String checkItem) {
this.checkItem = checkItem;
return this;
}
/**
* The description of the precheck item.
*/
public Builder checkItemDescription(String checkItemDescription) {
this.checkItemDescription = checkItemDescription;
return this;
}
/**
* The precheck result. Valid values:
*
*
* * **Success**
* * **Failed**
*/
public Builder checkResult(String checkResult) {
this.checkResult = checkResult;
return this;
}
/**
* The error message returned if the task failed to pass the precheck.
*
*
* > This parameter is returned only if the value of the **CheckResult** parameter is **Failed**.
*/
public Builder failedReason(String failedReason) {
this.failedReason = failedReason;
return this;
}
/**
* The method to fix the precheck failure.
*
*
* > This parameter is returned only if the value of the **CheckResult** parameter is **Failed**.
*/
public Builder repairMethod(String repairMethod) {
this.repairMethod = repairMethod;
return this;
}
public Detail build() {
return new Detail(this);
}
}
}
public static class PrecheckStatus extends TeaModel {
@com.aliyun.core.annotation.NameInMap("Detail")
private java.util.List < Detail> detail;
@com.aliyun.core.annotation.NameInMap("ErrorMessage")
private String errorMessage;
@com.aliyun.core.annotation.NameInMap("Percent")
private String percent;
@com.aliyun.core.annotation.NameInMap("Status")
private String status;
private PrecheckStatus(Builder builder) {
this.detail = builder.detail;
this.errorMessage = builder.errorMessage;
this.percent = builder.percent;
this.status = builder.status;
}
public static Builder builder() {
return new Builder();
}
public static PrecheckStatus create() {
return builder().build();
}
/**
* @return detail
*/
public java.util.List < Detail> getDetail() {
return this.detail;
}
/**
* @return errorMessage
*/
public String getErrorMessage() {
return this.errorMessage;
}
/**
* @return percent
*/
public String getPercent() {
return this.percent;
}
/**
* @return status
*/
public String getStatus() {
return this.status;
}
public static final class Builder {
private java.util.List < Detail> detail;
private String errorMessage;
private String percent;
private String status;
/**
* The result of each precheck item.
*/
public Builder detail(java.util.List < Detail> detail) {
this.detail = detail;
return this;
}
/**
* The cause of the precheck failure.
*/
public Builder errorMessage(String errorMessage) {
this.errorMessage = errorMessage;
return this;
}
/**
* The precheck progress. This is expressed as a percentage.
*/
public Builder percent(String percent) {
this.percent = percent;
return this;
}
/**
* The precheck status. Valid values:
*
*
* * **NotStarted**
* * **Suspending**:
* * **Checking**
* * **Failed**
* * **Finished**
*/
public Builder status(String status) {
this.status = status;
return this;
}
public PrecheckStatus build() {
return new PrecheckStatus(this);
}
}
}
public static class RetryState extends TeaModel {
@com.aliyun.core.annotation.NameInMap("ErrMessage")
private String errMessage;
@com.aliyun.core.annotation.NameInMap("JobId")
private String jobId;
@com.aliyun.core.annotation.NameInMap("MaxRetryTime")
private Integer maxRetryTime;
@com.aliyun.core.annotation.NameInMap("MigrationErrCode")
private String migrationErrCode;
@com.aliyun.core.annotation.NameInMap("MigrationErrHelpDocId")
private String migrationErrHelpDocId;
@com.aliyun.core.annotation.NameInMap("MigrationErrHelpDocKey")
private String migrationErrHelpDocKey;
@com.aliyun.core.annotation.NameInMap("MigrationErrMsg")
private String migrationErrMsg;
@com.aliyun.core.annotation.NameInMap("MigrationErrType")
private String migrationErrType;
@com.aliyun.core.annotation.NameInMap("MigrationErrWorkaround")
private String migrationErrWorkaround;
@com.aliyun.core.annotation.NameInMap("Module")
private String module;
@com.aliyun.core.annotation.NameInMap("RetryCount")
private Integer retryCount;
@com.aliyun.core.annotation.NameInMap("RetryTarget")
private String retryTarget;
@com.aliyun.core.annotation.NameInMap("RetryTime")
private Integer retryTime;
@com.aliyun.core.annotation.NameInMap("Retrying")
private Boolean retrying;
private RetryState(Builder builder) {
this.errMessage = builder.errMessage;
this.jobId = builder.jobId;
this.maxRetryTime = builder.maxRetryTime;
this.migrationErrCode = builder.migrationErrCode;
this.migrationErrHelpDocId = builder.migrationErrHelpDocId;
this.migrationErrHelpDocKey = builder.migrationErrHelpDocKey;
this.migrationErrMsg = builder.migrationErrMsg;
this.migrationErrType = builder.migrationErrType;
this.migrationErrWorkaround = builder.migrationErrWorkaround;
this.module = builder.module;
this.retryCount = builder.retryCount;
this.retryTarget = builder.retryTarget;
this.retryTime = builder.retryTime;
this.retrying = builder.retrying;
}
public static Builder builder() {
return new Builder();
}
public static RetryState create() {
return builder().build();
}
/**
* @return errMessage
*/
public String getErrMessage() {
return this.errMessage;
}
/**
* @return jobId
*/
public String getJobId() {
return this.jobId;
}
/**
* @return maxRetryTime
*/
public Integer getMaxRetryTime() {
return this.maxRetryTime;
}
/**
* @return migrationErrCode
*/
public String getMigrationErrCode() {
return this.migrationErrCode;
}
/**
* @return migrationErrHelpDocId
*/
public String getMigrationErrHelpDocId() {
return this.migrationErrHelpDocId;
}
/**
* @return migrationErrHelpDocKey
*/
public String getMigrationErrHelpDocKey() {
return this.migrationErrHelpDocKey;
}
/**
* @return migrationErrMsg
*/
public String getMigrationErrMsg() {
return this.migrationErrMsg;
}
/**
* @return migrationErrType
*/
public String getMigrationErrType() {
return this.migrationErrType;
}
/**
* @return migrationErrWorkaround
*/
public String getMigrationErrWorkaround() {
return this.migrationErrWorkaround;
}
/**
* @return module
*/
public String getModule() {
return this.module;
}
/**
* @return retryCount
*/
public Integer getRetryCount() {
return this.retryCount;
}
/**
* @return retryTarget
*/
public String getRetryTarget() {
return this.retryTarget;
}
/**
* @return retryTime
*/
public Integer getRetryTime() {
return this.retryTime;
}
/**
* @return retrying
*/
public Boolean getRetrying() {
return this.retrying;
}
public static final class Builder {
private String errMessage;
private String jobId;
private Integer maxRetryTime;
private String migrationErrCode;
private String migrationErrHelpDocId;
private String migrationErrHelpDocKey;
private String migrationErrMsg;
private String migrationErrType;
private String migrationErrWorkaround;
private String module;
private Integer retryCount;
private String retryTarget;
private Integer retryTime;
private Boolean retrying;
/**
* The error message returned if these retries failed.
*/
public Builder errMessage(String errMessage) {
this.errMessage = errMessage;
return this;
}
/**
* The task ID.
*/
public Builder jobId(String jobId) {
this.jobId = jobId;
return this;
}
/**
* The maximum duration of a retry. Unit: seconds.
*/
public Builder maxRetryTime(Integer maxRetryTime) {
this.maxRetryTime = maxRetryTime;
return this;
}
/**
* The error code.
*/
public Builder migrationErrCode(String migrationErrCode) {
this.migrationErrCode = migrationErrCode;
return this;
}
/**
* The ID of the error code-related documentation.
*/
public Builder migrationErrHelpDocId(String migrationErrHelpDocId) {
this.migrationErrHelpDocId = migrationErrHelpDocId;
return this;
}
/**
* The key of the error code-related documentation.
*/
public Builder migrationErrHelpDocKey(String migrationErrHelpDocKey) {
this.migrationErrHelpDocKey = migrationErrHelpDocKey;
return this;
}
/**
* The error message.
*/
public Builder migrationErrMsg(String migrationErrMsg) {
this.migrationErrMsg = migrationErrMsg;
return this;
}
/**
* The type of the error code.
*/
public Builder migrationErrType(String migrationErrType) {
this.migrationErrType = migrationErrType;
return this;
}
/**
* The solution to the error.
*/
public Builder migrationErrWorkaround(String migrationErrWorkaround) {
this.migrationErrWorkaround = migrationErrWorkaround;
return this;
}
/**
* The progress of the instance when DTS retries.
*/
public Builder module(String module) {
this.module = module;
return this;
}
/**
* The number of retries that have been performed.
*/
public Builder retryCount(Integer retryCount) {
this.retryCount = retryCount;
return this;
}
/**
* The object on which these retries are performed. Valid values:
*
*
* - **srcDB**: the source database
* - **destDB**: the destination database
* - **inner_module**: an internal module of DTS
*/
public Builder retryTarget(String retryTarget) {
this.retryTarget = retryTarget;
return this;
}
/**
* The time that has elapsed from the time when the first retry starts. Unit: seconds.
*/
public Builder retryTime(Integer retryTime) {
this.retryTime = retryTime;
return this;
}
/**
* Indicates whether the task is being retried. Valid values:
*
*
* - **true**
* - **false**
*/
public Builder retrying(Boolean retrying) {
this.retrying = retrying;
return this;
}
public RetryState build() {
return new RetryState(this);
}
}
}
public static class ReverseJobDataInitializationStatus extends TeaModel {
@com.aliyun.core.annotation.NameInMap("ErrorMessage")
private String errorMessage;
@com.aliyun.core.annotation.NameInMap("Percent")
private String percent;
@com.aliyun.core.annotation.NameInMap("Progress")
private String progress;
@com.aliyun.core.annotation.NameInMap("Status")
private String status;
private ReverseJobDataInitializationStatus(Builder builder) {
this.errorMessage = builder.errorMessage;
this.percent = builder.percent;
this.progress = builder.progress;
this.status = builder.status;
}
public static Builder builder() {
return new Builder();
}
public static ReverseJobDataInitializationStatus create() {
return builder().build();
}
/**
* @return errorMessage
*/
public String getErrorMessage() {
return this.errorMessage;
}
/**
* @return percent
*/
public String getPercent() {
return this.percent;
}
/**
* @return progress
*/
public String getProgress() {
return this.progress;
}
/**
* @return status
*/
public String getStatus() {
return this.status;
}
public static final class Builder {
private String errorMessage;
private String percent;
private String progress;
private String status;
/**
* The error message returned if initial full data synchronization failed.
*/
public Builder errorMessage(String errorMessage) {
this.errorMessage = errorMessage;
return this;
}
/**
* The progress of initial full data synchronization. Unit: percentage.
*/
public Builder percent(String percent) {
this.percent = percent;
return this;
}
/**
* The number of entries that have been synchronized during initial full data synchronization.
*/
public Builder progress(String progress) {
this.progress = progress;
return this;
}
/**
* The state of initial full data synchronization. Valid values:
*
*
* - **NotStarted**: The task is not started.
* - **Migrating**: The task is in progress.
* - **Failed**: The task failed.
* - **Finished**: The task is complete.
*/
public Builder status(String status) {
this.status = status;
return this;
}
public ReverseJobDataInitializationStatus build() {
return new ReverseJobDataInitializationStatus(this);
}
}
}
public static class ReverseJobDataSynchronizationStatus extends TeaModel {
@com.aliyun.core.annotation.NameInMap("ErrorMessage")
private String errorMessage;
@com.aliyun.core.annotation.NameInMap("NeedUpgrade")
private Boolean needUpgrade;
@com.aliyun.core.annotation.NameInMap("Percent")
private String percent;
@com.aliyun.core.annotation.NameInMap("Progress")
private String progress;
@com.aliyun.core.annotation.NameInMap("Status")
private String status;
private ReverseJobDataSynchronizationStatus(Builder builder) {
this.errorMessage = builder.errorMessage;
this.needUpgrade = builder.needUpgrade;
this.percent = builder.percent;
this.progress = builder.progress;
this.status = builder.status;
}
public static Builder builder() {
return new Builder();
}
public static ReverseJobDataSynchronizationStatus create() {
return builder().build();
}
/**
* @return errorMessage
*/
public String getErrorMessage() {
return this.errorMessage;
}
/**
* @return needUpgrade
*/
public Boolean getNeedUpgrade() {
return this.needUpgrade;
}
/**
* @return percent
*/
public String getPercent() {
return this.percent;
}
/**
* @return progress
*/
public String getProgress() {
return this.progress;
}
/**
* @return status
*/
public String getStatus() {
return this.status;
}
public static final class Builder {
private String errorMessage;
private Boolean needUpgrade;
private String percent;
private String progress;
private String status;
/**
* The error message returned if incremental data synchronization failed.
*/
public Builder errorMessage(String errorMessage) {
this.errorMessage = errorMessage;
return this;
}
/**
* Indicates whether the instance needs to be upgraded. Valid values:
*
*
* - **true**
* - **false**
*
* > To upgrade a DTS instance, call the [TransferInstanceClass](~~281093~~) operation.
*/
public Builder needUpgrade(Boolean needUpgrade) {
this.needUpgrade = needUpgrade;
return this;
}
/**
* The progress of incremental data synchronization. Unit: percentage.
*/
public Builder percent(String percent) {
this.percent = percent;
return this;
}
/**
* The number of entries that have been migrated or synchronized during incremental data migration or synchronization.
*/
public Builder progress(String progress) {
this.progress = progress;
return this;
}
/**
* The state of incremental data synchronization.
*/
public Builder status(String status) {
this.status = status;
return this;
}
public ReverseJobDataSynchronizationStatus build() {
return new ReverseJobDataSynchronizationStatus(this);
}
}
}
public static class ReverseJobDestinationEndpoint extends TeaModel {
@com.aliyun.core.annotation.NameInMap("DatabaseName")
private String databaseName;
@com.aliyun.core.annotation.NameInMap("EngineName")
private String engineName;
@com.aliyun.core.annotation.NameInMap("InstanceID")
private String instanceID;
@com.aliyun.core.annotation.NameInMap("InstanceType")
private String instanceType;
@com.aliyun.core.annotation.NameInMap("Ip")
private String ip;
@com.aliyun.core.annotation.NameInMap("OracleSID")
private String oracleSID;
@com.aliyun.core.annotation.NameInMap("Port")
private String port;
@com.aliyun.core.annotation.NameInMap("Region")
private String region;
@com.aliyun.core.annotation.NameInMap("SslSolutionEnum")
private String sslSolutionEnum;
@com.aliyun.core.annotation.NameInMap("UserName")
private String userName;
private ReverseJobDestinationEndpoint(Builder builder) {
this.databaseName = builder.databaseName;
this.engineName = builder.engineName;
this.instanceID = builder.instanceID;
this.instanceType = builder.instanceType;
this.ip = builder.ip;
this.oracleSID = builder.oracleSID;
this.port = builder.port;
this.region = builder.region;
this.sslSolutionEnum = builder.sslSolutionEnum;
this.userName = builder.userName;
}
public static Builder builder() {
return new Builder();
}
public static ReverseJobDestinationEndpoint create() {
return builder().build();
}
/**
* @return databaseName
*/
public String getDatabaseName() {
return this.databaseName;
}
/**
* @return engineName
*/
public String getEngineName() {
return this.engineName;
}
/**
* @return instanceID
*/
public String getInstanceID() {
return this.instanceID;
}
/**
* @return instanceType
*/
public String getInstanceType() {
return this.instanceType;
}
/**
* @return ip
*/
public String getIp() {
return this.ip;
}
/**
* @return oracleSID
*/
public String getOracleSID() {
return this.oracleSID;
}
/**
* @return port
*/
public String getPort() {
return this.port;
}
/**
* @return region
*/
public String getRegion() {
return this.region;
}
/**
* @return sslSolutionEnum
*/
public String getSslSolutionEnum() {
return this.sslSolutionEnum;
}
/**
* @return userName
*/
public String getUserName() {
return this.userName;
}
public static final class Builder {
private String databaseName;
private String engineName;
private String instanceID;
private String instanceType;
private String ip;
private String oracleSID;
private String port;
private String region;
private String sslSolutionEnum;
private String userName;
/**
* The name of the database that contains the synchronized objects in the destination instance.
*/
public Builder databaseName(String databaseName) {
this.databaseName = databaseName;
return this;
}
/**
* The database engine of the destination instance.
*/
public Builder engineName(String engineName) {
this.engineName = engineName;
return this;
}
/**
* The ID of the destination instance.
*/
public Builder instanceID(String instanceID) {
this.instanceID = instanceID;
return this;
}
/**
* The type of the destination instance.
*/
public Builder instanceType(String instanceType) {
this.instanceType = instanceType;
return this;
}
/**
* The endpoint of the destination instance.
*/
public Builder ip(String ip) {
this.ip = ip;
return this;
}
/**
* The SID of the Oracle database.
*
*
* > This parameter is returned only if the returned value of **EngineName** of the destination instance is **Oracle** and the Oracle database is deployed in a non-RAC architecture.
*/
public Builder oracleSID(String oracleSID) {
this.oracleSID = oracleSID;
return this;
}
/**
* The port number of the destination instance.
*/
public Builder port(String port) {
this.port = port;
return this;
}
/**
* The ID of the region in which the destination instance resides. For more information, see [List of supported regions](~~141033~~).
*/
public Builder region(String region) {
this.region = region;
return this;
}
/**
* Indicates whether SSL encryption is enabled. Valid values:
*
*
* - **DISABLE**: SSL encryption is disabled.
* - **ENABLE_WITH_CERTIFICATE**: SSL encryption is enabled and the CA certificate is uploaded.
* - **ENABLE_ONLY_4_MONGODB_ALTAS**: SSL encryption is enabled for the connection with an AWS MongoDB Altas database.
* - **ENABLE_ONLY_4_KAFKA_SCRAM_SHA_256**: SCRAM-SHA-256 is used to encrypt the connection with a Kafka cluster.
*/
public Builder sslSolutionEnum(String sslSolutionEnum) {
this.sslSolutionEnum = sslSolutionEnum;
return this;
}
/**
* The database account of the destination instance.
*/
public Builder userName(String userName) {
this.userName = userName;
return this;
}
public ReverseJobDestinationEndpoint build() {
return new ReverseJobDestinationEndpoint(this);
}
}
}
public static class ReverseJobErrorDetails extends TeaModel {
@com.aliyun.core.annotation.NameInMap("ErrorCode")
private String errorCode;
@com.aliyun.core.annotation.NameInMap("HelpUrl")
private String helpUrl;
private ReverseJobErrorDetails(Builder builder) {
this.errorCode = builder.errorCode;
this.helpUrl = builder.helpUrl;
}
public static Builder builder() {
return new Builder();
}
public static ReverseJobErrorDetails create() {
return builder().build();
}
/**
* @return errorCode
*/
public String getErrorCode() {
return this.errorCode;
}
/**
* @return helpUrl
*/
public String getHelpUrl() {
return this.helpUrl;
}
public static final class Builder {
private String errorCode;
private String helpUrl;
/**
* The error code returned.
*/
public Builder errorCode(String errorCode) {
this.errorCode = errorCode;
return this;
}
/**
* The URL of the documentation.
*/
public Builder helpUrl(String helpUrl) {
this.helpUrl = helpUrl;
return this;
}
public ReverseJobErrorDetails build() {
return new ReverseJobErrorDetails(this);
}
}
}
public static class ReverseJobFullDataCheckStatus extends TeaModel {
@com.aliyun.core.annotation.NameInMap("ErrorMessage")
private String errorMessage;
@com.aliyun.core.annotation.NameInMap("Percent")
private String percent;
@com.aliyun.core.annotation.NameInMap("Progress")
private String progress;
@com.aliyun.core.annotation.NameInMap("Status")
private String status;
private ReverseJobFullDataCheckStatus(Builder builder) {
this.errorMessage = builder.errorMessage;
this.percent = builder.percent;
this.progress = builder.progress;
this.status = builder.status;
}
public static Builder builder() {
return new Builder();
}
public static ReverseJobFullDataCheckStatus create() {
return builder().build();
}
/**
* @return errorMessage
*/
public String getErrorMessage() {
return this.errorMessage;
}
/**
* @return percent
*/
public String getPercent() {
return this.percent;
}
/**
* @return progress
*/
public String getProgress() {
return this.progress;
}
/**
* @return status
*/
public String getStatus() {
return this.status;
}
public static final class Builder {
private String errorMessage;
private String percent;
private String progress;
private String status;
/**
* The error message returned if the task failed.
*/
public Builder errorMessage(String errorMessage) {
this.errorMessage = errorMessage;
return this;
}
/**
* The progress of the full data verification task. Unit: percentage.
*/
public Builder percent(String percent) {
this.percent = percent;
return this;
}
/**
* The progress of the full data verification task.
*/
public Builder progress(String progress) {
this.progress = progress;
return this;
}
/**
* The state of the full data verification task. Valid values:
*
*
* - **NotStarted**: The verification is not started.
* - **Checking**: The verification is in progress.
* - **Failed**: The verification failed.
* - **Finished**: The verification is complete.
*/
public Builder status(String status) {
this.status = status;
return this;
}
public ReverseJobFullDataCheckStatus build() {
return new ReverseJobFullDataCheckStatus(this);
}
}
}
public static class ReverseJobIncDataCheckStatus extends TeaModel {
@com.aliyun.core.annotation.NameInMap("ErrorMessage")
private String errorMessage;
@com.aliyun.core.annotation.NameInMap("Percent")
private String percent;
@com.aliyun.core.annotation.NameInMap("Progress")
private String progress;
@com.aliyun.core.annotation.NameInMap("Status")
private String status;
private ReverseJobIncDataCheckStatus(Builder builder) {
this.errorMessage = builder.errorMessage;
this.percent = builder.percent;
this.progress = builder.progress;
this.status = builder.status;
}
public static Builder builder() {
return new Builder();
}
public static ReverseJobIncDataCheckStatus create() {
return builder().build();
}
/**
* @return errorMessage
*/
public String getErrorMessage() {
return this.errorMessage;
}
/**
* @return percent
*/
public String getPercent() {
return this.percent;
}
/**
* @return progress
*/
public String getProgress() {
return this.progress;
}
/**
* @return status
*/
public String getStatus() {
return this.status;
}
public static final class Builder {
private String errorMessage;
private String percent;
private String progress;
private String status;
/**
* The error message returned if the task failed.
*/
public Builder errorMessage(String errorMessage) {
this.errorMessage = errorMessage;
return this;
}
/**
* The progress of the incremental data verification task. Unit: percentage.
*/
public Builder percent(String percent) {
this.percent = percent;
return this;
}
/**
* The progress of the incremental data verification task.
*/
public Builder progress(String progress) {
this.progress = progress;
return this;
}
/**
* The state of the incremental data verification task. Valid values:
*
*
* - **Catched**: The verification is delayed.
* - **NotStarted**: The verification is not started.
* - **Checking**: The verification is in progress.
* - **Failed**: The verification failed.
*/
public Builder status(String status) {
this.status = status;
return this;
}
public ReverseJobIncDataCheckStatus build() {
return new ReverseJobIncDataCheckStatus(this);
}
}
}
public static class ReverseJobMigrationMode extends TeaModel {
@com.aliyun.core.annotation.NameInMap("DataInitialization")
private Boolean dataInitialization;
@com.aliyun.core.annotation.NameInMap("DataSynchronization")
private Boolean dataSynchronization;
@com.aliyun.core.annotation.NameInMap("FullDataCheck")
private Boolean fullDataCheck;
@com.aliyun.core.annotation.NameInMap("IncDataCheck")
private Boolean incDataCheck;
@com.aliyun.core.annotation.NameInMap("StructureInitialization")
private Boolean structureInitialization;
private ReverseJobMigrationMode(Builder builder) {
this.dataInitialization = builder.dataInitialization;
this.dataSynchronization = builder.dataSynchronization;
this.fullDataCheck = builder.fullDataCheck;
this.incDataCheck = builder.incDataCheck;
this.structureInitialization = builder.structureInitialization;
}
public static Builder builder() {
return new Builder();
}
public static ReverseJobMigrationMode create() {
return builder().build();
}
/**
* @return dataInitialization
*/
public Boolean getDataInitialization() {
return this.dataInitialization;
}
/**
* @return dataSynchronization
*/
public Boolean getDataSynchronization() {
return this.dataSynchronization;
}
/**
* @return fullDataCheck
*/
public Boolean getFullDataCheck() {
return this.fullDataCheck;
}
/**
* @return incDataCheck
*/
public Boolean getIncDataCheck() {
return this.incDataCheck;
}
/**
* @return structureInitialization
*/
public Boolean getStructureInitialization() {
return this.structureInitialization;
}
public static final class Builder {
private Boolean dataInitialization;
private Boolean dataSynchronization;
private Boolean fullDataCheck;
private Boolean incDataCheck;
private Boolean structureInitialization;
/**
* Indicates whether initial full data synchronization is performed. Valid values:
*
*
* - **true**
* - **false**
*/
public Builder dataInitialization(Boolean dataInitialization) {
this.dataInitialization = dataInitialization;
return this;
}
/**
* Indicates whether incremental data synchronization is performed. Valid values:
*
* - **true**
* - **false**
*/
public Builder dataSynchronization(Boolean dataSynchronization) {
this.dataSynchronization = dataSynchronization;
return this;
}
/**
* Indicates whether full data verification is performed. Valid values:
*
* - **true**: yes
* - **false**: no
*/
public Builder fullDataCheck(Boolean fullDataCheck) {
this.fullDataCheck = fullDataCheck;
return this;
}
/**
* Indicates whether incremental data verification is performed. Valid values:
*
* - **true**: yes
* - **false**: no
*/
public Builder incDataCheck(Boolean incDataCheck) {
this.incDataCheck = incDataCheck;
return this;
}
/**
* Indicates whether initial schema synchronization is performed. Valid values:
*
* - **true**
* - **false**
*/
public Builder structureInitialization(Boolean structureInitialization) {
this.structureInitialization = structureInitialization;
return this;
}
public ReverseJobMigrationMode build() {
return new ReverseJobMigrationMode(this);
}
}
}
public static class ReverseJobPerformance extends TeaModel {
@com.aliyun.core.annotation.NameInMap("Flow")
private String flow;
@com.aliyun.core.annotation.NameInMap("Rps")
private String rps;
private ReverseJobPerformance(Builder builder) {
this.flow = builder.flow;
this.rps = builder.rps;
}
public static Builder builder() {
return new Builder();
}
public static ReverseJobPerformance create() {
return builder().build();
}
/**
* @return flow
*/
public String getFlow() {
return this.flow;
}
/**
* @return rps
*/
public String getRps() {
return this.rps;
}
public static final class Builder {
private String flow;
private String rps;
/**
* The size of data that is synchronized per second. Unit: MB/s.
*/
public Builder flow(String flow) {
this.flow = flow;
return this;
}
/**
* The number of times that SQL statements are synchronized per second, including BEGIN, COMMIT, DML, and DDL statements. DML statements include INSERT, DELETE, and UPDATE.
*/
public Builder rps(String rps) {
this.rps = rps;
return this;
}
public ReverseJobPerformance build() {
return new ReverseJobPerformance(this);
}
}
}
public static class PrecheckStatusDetail extends TeaModel {
@com.aliyun.core.annotation.NameInMap("CheckItem")
private String checkItem;
@com.aliyun.core.annotation.NameInMap("CheckItemDescription")
private String checkItemDescription;
@com.aliyun.core.annotation.NameInMap("CheckResult")
private String checkResult;
@com.aliyun.core.annotation.NameInMap("FailedReason")
private String failedReason;
@com.aliyun.core.annotation.NameInMap("RepairMethod")
private String repairMethod;
private PrecheckStatusDetail(Builder builder) {
this.checkItem = builder.checkItem;
this.checkItemDescription = builder.checkItemDescription;
this.checkResult = builder.checkResult;
this.failedReason = builder.failedReason;
this.repairMethod = builder.repairMethod;
}
public static Builder builder() {
return new Builder();
}
public static PrecheckStatusDetail create() {
return builder().build();
}
/**
* @return checkItem
*/
public String getCheckItem() {
return this.checkItem;
}
/**
* @return checkItemDescription
*/
public String getCheckItemDescription() {
return this.checkItemDescription;
}
/**
* @return checkResult
*/
public String getCheckResult() {
return this.checkResult;
}
/**
* @return failedReason
*/
public String getFailedReason() {
return this.failedReason;
}
/**
* @return repairMethod
*/
public String getRepairMethod() {
return this.repairMethod;
}
public static final class Builder {
private String checkItem;
private String checkItemDescription;
private String checkResult;
private String failedReason;
private String repairMethod;
/**
* The name of the precheck item.
*/
public Builder checkItem(String checkItem) {
this.checkItem = checkItem;
return this;
}
/**
* The description of the precheck item.
*/
public Builder checkItemDescription(String checkItemDescription) {
this.checkItemDescription = checkItemDescription;
return this;
}
/**
* The precheck result. Valid values:
*
*
* - **Success**
* - **Failed**
*/
public Builder checkResult(String checkResult) {
this.checkResult = checkResult;
return this;
}
/**
* The error message returned if the task failed to pass the precheck.
*/
public Builder failedReason(String failedReason) {
this.failedReason = failedReason;
return this;
}
/**
* The method to fix a precheck failure.
*/
public Builder repairMethod(String repairMethod) {
this.repairMethod = repairMethod;
return this;
}
public PrecheckStatusDetail build() {
return new PrecheckStatusDetail(this);
}
}
}
public static class ReverseJobPrecheckStatus extends TeaModel {
@com.aliyun.core.annotation.NameInMap("Detail")
private java.util.List < PrecheckStatusDetail> detail;
@com.aliyun.core.annotation.NameInMap("ErrorMessage")
private String errorMessage;
@com.aliyun.core.annotation.NameInMap("Percent")
private String percent;
@com.aliyun.core.annotation.NameInMap("Status")
private String status;
private ReverseJobPrecheckStatus(Builder builder) {
this.detail = builder.detail;
this.errorMessage = builder.errorMessage;
this.percent = builder.percent;
this.status = builder.status;
}
public static Builder builder() {
return new Builder();
}
public static ReverseJobPrecheckStatus create() {
return builder().build();
}
/**
* @return detail
*/
public java.util.List < PrecheckStatusDetail> getDetail() {
return this.detail;
}
/**
* @return errorMessage
*/
public String getErrorMessage() {
return this.errorMessage;
}
/**
* @return percent
*/
public String getPercent() {
return this.percent;
}
/**
* @return status
*/
public String getStatus() {
return this.status;
}
public static final class Builder {
private java.util.List < PrecheckStatusDetail> detail;
private String errorMessage;
private String percent;
private String status;
/**
* The result of each precheck item.
*/
public Builder detail(java.util.List < PrecheckStatusDetail> detail) {
this.detail = detail;
return this;
}
/**
* The error message returned if the precheck failed.
*/
public Builder errorMessage(String errorMessage) {
this.errorMessage = errorMessage;
return this;
}
/**
* The precheck progress. Unit: percentage.
*/
public Builder percent(String percent) {
this.percent = percent;
return this;
}
/**
* The precheck state. Valid values:
*
*
* - **NotStarted**: The precheck is not started.
* - **Suspending**: The precheck is paused.
* - **Checking**: The precheck is in progress.
* - **Failed**: The precheck failed.
* - **Finished**: The precheck is complete.
*/
public Builder status(String status) {
this.status = status;
return this;
}
public ReverseJobPrecheckStatus build() {
return new ReverseJobPrecheckStatus(this);
}
}
}
public static class SourceEndpoint extends TeaModel {
@com.aliyun.core.annotation.NameInMap("DatabaseName")
private String databaseName;
@com.aliyun.core.annotation.NameInMap("EngineName")
private String engineName;
@com.aliyun.core.annotation.NameInMap("InstanceID")
private String instanceID;
@com.aliyun.core.annotation.NameInMap("InstanceType")
private String instanceType;
@com.aliyun.core.annotation.NameInMap("Ip")
private String ip;
@com.aliyun.core.annotation.NameInMap("OracleSID")
private String oracleSID;
@com.aliyun.core.annotation.NameInMap("Port")
private String port;
@com.aliyun.core.annotation.NameInMap("Region")
private String region;
@com.aliyun.core.annotation.NameInMap("SslSolutionEnum")
private String sslSolutionEnum;
@com.aliyun.core.annotation.NameInMap("UserName")
private String userName;
private SourceEndpoint(Builder builder) {
this.databaseName = builder.databaseName;
this.engineName = builder.engineName;
this.instanceID = builder.instanceID;
this.instanceType = builder.instanceType;
this.ip = builder.ip;
this.oracleSID = builder.oracleSID;
this.port = builder.port;
this.region = builder.region;
this.sslSolutionEnum = builder.sslSolutionEnum;
this.userName = builder.userName;
}
public static Builder builder() {
return new Builder();
}
public static SourceEndpoint create() {
return builder().build();
}
/**
* @return databaseName
*/
public String getDatabaseName() {
return this.databaseName;
}
/**
* @return engineName
*/
public String getEngineName() {
return this.engineName;
}
/**
* @return instanceID
*/
public String getInstanceID() {
return this.instanceID;
}
/**
* @return instanceType
*/
public String getInstanceType() {
return this.instanceType;
}
/**
* @return ip
*/
public String getIp() {
return this.ip;
}
/**
* @return oracleSID
*/
public String getOracleSID() {
return this.oracleSID;
}
/**
* @return port
*/
public String getPort() {
return this.port;
}
/**
* @return region
*/
public String getRegion() {
return this.region;
}
/**
* @return sslSolutionEnum
*/
public String getSslSolutionEnum() {
return this.sslSolutionEnum;
}
/**
* @return userName
*/
public String getUserName() {
return this.userName;
}
public static final class Builder {
private String databaseName;
private String engineName;
private String instanceID;
private String instanceType;
private String ip;
private String oracleSID;
private String port;
private String region;
private String sslSolutionEnum;
private String userName;
/**
* The name of the database that contains the objects to be migrated from the source instance.
*/
public Builder databaseName(String databaseName) {
this.databaseName = databaseName;
return this;
}
/**
* The database engine of the source instance.
*/
public Builder engineName(String engineName) {
this.engineName = engineName;
return this;
}
/**
* The ID of the source instance.
*/
public Builder instanceID(String instanceID) {
this.instanceID = instanceID;
return this;
}
/**
* The type of the source instance.
*/
public Builder instanceType(String instanceType) {
this.instanceType = instanceType;
return this;
}
/**
* The endpoint of the source instance.
*/
public Builder ip(String ip) {
this.ip = ip;
return this;
}
/**
* The SID of the Oracle database.
*
*
* > This parameter is returned only if the returned value of **EngineName** of the source instance is **Oracle** and the Oracle database is deployed in a non-RAC architecture.
*/
public Builder oracleSID(String oracleSID) {
this.oracleSID = oracleSID;
return this;
}
/**
* The port number of the source instance.
*/
public Builder port(String port) {
this.port = port;
return this;
}
/**
* The ID of the region in which the source instance resides. For more information, see [Supported regions](~~141033~~).
*/
public Builder region(String region) {
this.region = region;
return this;
}
/**
* Indicates whether SSL encryption is enabled. Valid values:
*
*
* - **DISABLE**: SSL encryption is disabled.
* - **ENABLE_WITH_CERTIFICATE**: SSL encryption is enabled and the CA certificate is uploaded.
* - **ENABLE_ONLY_4_MONGODB_ALTAS**: SSL encryption is enabled for the connection with an AWS MongoDB Altas database.
* - **ENABLE_ONLY_4_KAFKA_SCRAM_SHA_256**: SCRAM-SHA-256 is used to encrypt the connection with a Kafka cluster.
*/
public Builder sslSolutionEnum(String sslSolutionEnum) {
this.sslSolutionEnum = sslSolutionEnum;
return this;
}
/**
* The database account of the source instance.
*/
public Builder userName(String userName) {
this.userName = userName;
return this;
}
public SourceEndpoint build() {
return new SourceEndpoint(this);
}
}
}
public static class StructureInitializationStatus extends TeaModel {
@com.aliyun.core.annotation.NameInMap("ErrorMessage")
private String errorMessage;
@com.aliyun.core.annotation.NameInMap("Percent")
private String percent;
@com.aliyun.core.annotation.NameInMap("Progress")
private String progress;
@com.aliyun.core.annotation.NameInMap("Status")
private String status;
private StructureInitializationStatus(Builder builder) {
this.errorMessage = builder.errorMessage;
this.percent = builder.percent;
this.progress = builder.progress;
this.status = builder.status;
}
public static Builder builder() {
return new Builder();
}
public static StructureInitializationStatus create() {
return builder().build();
}
/**
* @return errorMessage
*/
public String getErrorMessage() {
return this.errorMessage;
}
/**
* @return percent
*/
public String getPercent() {
return this.percent;
}
/**
* @return progress
*/
public String getProgress() {
return this.progress;
}
/**
* @return status
*/
public String getStatus() {
return this.status;
}
public static final class Builder {
private String errorMessage;
private String percent;
private String progress;
private String status;
/**
* The error message returned if initial schema synchronization failed.
*/
public Builder errorMessage(String errorMessage) {
this.errorMessage = errorMessage;
return this;
}
/**
* The progress of initial schema synchronization. Unit: percentage.
*/
public Builder percent(String percent) {
this.percent = percent;
return this;
}
/**
* The number of tables that have been synchronized during initial schema synchronization.
*/
public Builder progress(String progress) {
this.progress = progress;
return this;
}
/**
* The state of initial schema synchronization. Valid values:
*
*
* - **NotStarted**: The task is not started.
* - **Migrating**: The task is in progress.
* - **Failed**: The task failed.
* - **Finished**: The task is complete.
*/
public Builder status(String status) {
this.status = status;
return this;
}
public StructureInitializationStatus build() {
return new StructureInitializationStatus(this);
}
}
}
public static class ReverseJob extends TeaModel {
@com.aliyun.core.annotation.NameInMap("Checkpoint")
private String checkpoint;
@com.aliyun.core.annotation.NameInMap("CpuUsage")
private String cpuUsage;
@com.aliyun.core.annotation.NameInMap("CreateTime")
private String createTime;
@com.aliyun.core.annotation.NameInMap("DataInitializationStatus")
private ReverseJobDataInitializationStatus dataInitializationStatus;
@com.aliyun.core.annotation.NameInMap("DataSynchronizationStatus")
private ReverseJobDataSynchronizationStatus dataSynchronizationStatus;
@com.aliyun.core.annotation.NameInMap("DbObject")
private String dbObject;
@com.aliyun.core.annotation.NameInMap("DedicatedClusterId")
private String dedicatedClusterId;
@com.aliyun.core.annotation.NameInMap("Delay")
private Long delay;
@com.aliyun.core.annotation.NameInMap("DestinationEndpoint")
private ReverseJobDestinationEndpoint destinationEndpoint;
@com.aliyun.core.annotation.NameInMap("DtsInstanceID")
private String dtsInstanceID;
@com.aliyun.core.annotation.NameInMap("DtsJobClass")
private String dtsJobClass;
@com.aliyun.core.annotation.NameInMap("DtsJobDirection")
private String dtsJobDirection;
@com.aliyun.core.annotation.NameInMap("DtsJobId")
private String dtsJobId;
@com.aliyun.core.annotation.NameInMap("DtsJobName")
private String dtsJobName;
@com.aliyun.core.annotation.NameInMap("DuUsage")
private Long duUsage;
@com.aliyun.core.annotation.NameInMap("ErrorDetails")
private java.util.List < ReverseJobErrorDetails> errorDetails;
@com.aliyun.core.annotation.NameInMap("ErrorMessage")
private String errorMessage;
@com.aliyun.core.annotation.NameInMap("EtlSafeCheckpoint")
private String etlSafeCheckpoint;
@com.aliyun.core.annotation.NameInMap("ExpireTime")
private String expireTime;
@com.aliyun.core.annotation.NameInMap("FullDataCheckStatus")
private ReverseJobFullDataCheckStatus fullDataCheckStatus;
@com.aliyun.core.annotation.NameInMap("IncDataCheckStatus")
private ReverseJobIncDataCheckStatus incDataCheckStatus;
@com.aliyun.core.annotation.NameInMap("MaxDu")
private Double maxDu;
@com.aliyun.core.annotation.NameInMap("MemUsage")
private String memUsage;
@com.aliyun.core.annotation.NameInMap("MigrationMode")
private ReverseJobMigrationMode migrationMode;
@com.aliyun.core.annotation.NameInMap("MinDu")
private Double minDu;
@com.aliyun.core.annotation.NameInMap("PayType")
private String payType;
@com.aliyun.core.annotation.NameInMap("Performance")
private ReverseJobPerformance performance;
@com.aliyun.core.annotation.NameInMap("PrecheckStatus")
private ReverseJobPrecheckStatus precheckStatus;
@com.aliyun.core.annotation.NameInMap("Reserved")
private String reserved;
@com.aliyun.core.annotation.NameInMap("SourceEndpoint")
private SourceEndpoint sourceEndpoint;
@com.aliyun.core.annotation.NameInMap("Status")
private String status;
@com.aliyun.core.annotation.NameInMap("StructureInitializationStatus")
private StructureInitializationStatus structureInitializationStatus;
private ReverseJob(Builder builder) {
this.checkpoint = builder.checkpoint;
this.cpuUsage = builder.cpuUsage;
this.createTime = builder.createTime;
this.dataInitializationStatus = builder.dataInitializationStatus;
this.dataSynchronizationStatus = builder.dataSynchronizationStatus;
this.dbObject = builder.dbObject;
this.dedicatedClusterId = builder.dedicatedClusterId;
this.delay = builder.delay;
this.destinationEndpoint = builder.destinationEndpoint;
this.dtsInstanceID = builder.dtsInstanceID;
this.dtsJobClass = builder.dtsJobClass;
this.dtsJobDirection = builder.dtsJobDirection;
this.dtsJobId = builder.dtsJobId;
this.dtsJobName = builder.dtsJobName;
this.duUsage = builder.duUsage;
this.errorDetails = builder.errorDetails;
this.errorMessage = builder.errorMessage;
this.etlSafeCheckpoint = builder.etlSafeCheckpoint;
this.expireTime = builder.expireTime;
this.fullDataCheckStatus = builder.fullDataCheckStatus;
this.incDataCheckStatus = builder.incDataCheckStatus;
this.maxDu = builder.maxDu;
this.memUsage = builder.memUsage;
this.migrationMode = builder.migrationMode;
this.minDu = builder.minDu;
this.payType = builder.payType;
this.performance = builder.performance;
this.precheckStatus = builder.precheckStatus;
this.reserved = builder.reserved;
this.sourceEndpoint = builder.sourceEndpoint;
this.status = builder.status;
this.structureInitializationStatus = builder.structureInitializationStatus;
}
public static Builder builder() {
return new Builder();
}
public static ReverseJob create() {
return builder().build();
}
/**
* @return checkpoint
*/
public String getCheckpoint() {
return this.checkpoint;
}
/**
* @return cpuUsage
*/
public String getCpuUsage() {
return this.cpuUsage;
}
/**
* @return createTime
*/
public String getCreateTime() {
return this.createTime;
}
/**
* @return dataInitializationStatus
*/
public ReverseJobDataInitializationStatus getDataInitializationStatus() {
return this.dataInitializationStatus;
}
/**
* @return dataSynchronizationStatus
*/
public ReverseJobDataSynchronizationStatus getDataSynchronizationStatus() {
return this.dataSynchronizationStatus;
}
/**
* @return dbObject
*/
public String getDbObject() {
return this.dbObject;
}
/**
* @return dedicatedClusterId
*/
public String getDedicatedClusterId() {
return this.dedicatedClusterId;
}
/**
* @return delay
*/
public Long getDelay() {
return this.delay;
}
/**
* @return destinationEndpoint
*/
public ReverseJobDestinationEndpoint getDestinationEndpoint() {
return this.destinationEndpoint;
}
/**
* @return dtsInstanceID
*/
public String getDtsInstanceID() {
return this.dtsInstanceID;
}
/**
* @return dtsJobClass
*/
public String getDtsJobClass() {
return this.dtsJobClass;
}
/**
* @return dtsJobDirection
*/
public String getDtsJobDirection() {
return this.dtsJobDirection;
}
/**
* @return dtsJobId
*/
public String getDtsJobId() {
return this.dtsJobId;
}
/**
* @return dtsJobName
*/
public String getDtsJobName() {
return this.dtsJobName;
}
/**
* @return duUsage
*/
public Long getDuUsage() {
return this.duUsage;
}
/**
* @return errorDetails
*/
public java.util.List < ReverseJobErrorDetails> getErrorDetails() {
return this.errorDetails;
}
/**
* @return errorMessage
*/
public String getErrorMessage() {
return this.errorMessage;
}
/**
* @return etlSafeCheckpoint
*/
public String getEtlSafeCheckpoint() {
return this.etlSafeCheckpoint;
}
/**
* @return expireTime
*/
public String getExpireTime() {
return this.expireTime;
}
/**
* @return fullDataCheckStatus
*/
public ReverseJobFullDataCheckStatus getFullDataCheckStatus() {
return this.fullDataCheckStatus;
}
/**
* @return incDataCheckStatus
*/
public ReverseJobIncDataCheckStatus getIncDataCheckStatus() {
return this.incDataCheckStatus;
}
/**
* @return maxDu
*/
public Double getMaxDu() {
return this.maxDu;
}
/**
* @return memUsage
*/
public String getMemUsage() {
return this.memUsage;
}
/**
* @return migrationMode
*/
public ReverseJobMigrationMode getMigrationMode() {
return this.migrationMode;
}
/**
* @return minDu
*/
public Double getMinDu() {
return this.minDu;
}
/**
* @return payType
*/
public String getPayType() {
return this.payType;
}
/**
* @return performance
*/
public ReverseJobPerformance getPerformance() {
return this.performance;
}
/**
* @return precheckStatus
*/
public ReverseJobPrecheckStatus getPrecheckStatus() {
return this.precheckStatus;
}
/**
* @return reserved
*/
public String getReserved() {
return this.reserved;
}
/**
* @return sourceEndpoint
*/
public SourceEndpoint getSourceEndpoint() {
return this.sourceEndpoint;
}
/**
* @return status
*/
public String getStatus() {
return this.status;
}
/**
* @return structureInitializationStatus
*/
public StructureInitializationStatus getStructureInitializationStatus() {
return this.structureInitializationStatus;
}
public static final class Builder {
private String checkpoint;
private String cpuUsage;
private String createTime;
private ReverseJobDataInitializationStatus dataInitializationStatus;
private ReverseJobDataSynchronizationStatus dataSynchronizationStatus;
private String dbObject;
private String dedicatedClusterId;
private Long delay;
private ReverseJobDestinationEndpoint destinationEndpoint;
private String dtsInstanceID;
private String dtsJobClass;
private String dtsJobDirection;
private String dtsJobId;
private String dtsJobName;
private Long duUsage;
private java.util.List < ReverseJobErrorDetails> errorDetails;
private String errorMessage;
private String etlSafeCheckpoint;
private String expireTime;
private ReverseJobFullDataCheckStatus fullDataCheckStatus;
private ReverseJobIncDataCheckStatus incDataCheckStatus;
private Double maxDu;
private String memUsage;
private ReverseJobMigrationMode migrationMode;
private Double minDu;
private String payType;
private ReverseJobPerformance performance;
private ReverseJobPrecheckStatus precheckStatus;
private String reserved;
private SourceEndpoint sourceEndpoint;
private String status;
private StructureInitializationStatus structureInitializationStatus;
/**
* The start offset of incremental data synchronization. This value is a UNIX timestamp representing the number of seconds that have elapsed since January 1, 1970, 00:00:00 UTC.
*/
public Builder checkpoint(String checkpoint) {
this.checkpoint = checkpoint;
return this;
}
/**
* The CPU utilization of the instance. Unit: percentage.
*/
public Builder cpuUsage(String cpuUsage) {
this.cpuUsage = cpuUsage;
return this;
}
/**
* The time when the task was created. The time follows the ISO 8601 standard in the *yyyy-MM-dd*T*HH:mm:ss*Z format. The time is displayed in UTC.
*/
public Builder createTime(String createTime) {
this.createTime = createTime;
return this;
}
/**
* The state of initial full data synchronization.
*/
public Builder dataInitializationStatus(ReverseJobDataInitializationStatus dataInitializationStatus) {
this.dataInitializationStatus = dataInitializationStatus;
return this;
}
/**
* The state of incremental data synchronization.
*/
public Builder dataSynchronizationStatus(ReverseJobDataSynchronizationStatus dataSynchronizationStatus) {
this.dataSynchronizationStatus = dataSynchronizationStatus;
return this;
}
/**
* The schema of the objects that you want to synchronize. The value is a JSON string and can contain regular expressions. For more information, see Objects of DTS tasks.
*/
public Builder dbObject(String dbObject) {
this.dbObject = dbObject;
return this;
}
/**
* The ID of the DTS dedicated cluster on which a DTS task runs.
*/
public Builder dedicatedClusterId(String dedicatedClusterId) {
this.dedicatedClusterId = dedicatedClusterId;
return this;
}
/**
* The latency of incremental data synchronization. Unit: seconds.
*/
public Builder delay(Long delay) {
this.delay = delay;
return this;
}
/**
* The connection settings of the destination instance.
*/
public Builder destinationEndpoint(ReverseJobDestinationEndpoint destinationEndpoint) {
this.destinationEndpoint = destinationEndpoint;
return this;
}
/**
* The ID of the data synchronization instance.
*/
public Builder dtsInstanceID(String dtsInstanceID) {
this.dtsInstanceID = dtsInstanceID;
return this;
}
/**
* The instance class.
*
*
* > For more information about the test performance of each instance class, see [Specifications of data synchronization instances](~~26605~~).
*/
public Builder dtsJobClass(String dtsJobClass) {
this.dtsJobClass = dtsJobClass;
return this;
}
/**
* The synchronization direction. **Reverse** is returned.
*/
public Builder dtsJobDirection(String dtsJobDirection) {
this.dtsJobDirection = dtsJobDirection;
return this;
}
/**
* The ID of the synchronization task.
*/
public Builder dtsJobId(String dtsJobId) {
this.dtsJobId = dtsJobId;
return this;
}
/**
* The name of the data synchronization task.
*/
public Builder dtsJobName(String dtsJobName) {
this.dtsJobName = dtsJobName;
return this;
}
/**
* The number of DUs that have been used.
*/
public Builder duUsage(Long duUsage) {
this.duUsage = duUsage;
return this;
}
/**
* The error message returned.
*/
public Builder errorDetails(java.util.List < ReverseJobErrorDetails> errorDetails) {
this.errorDetails = errorDetails;
return this;
}
/**
* The error message returned if the task failed.
*/
public Builder errorMessage(String errorMessage) {
this.errorMessage = errorMessage;
return this;
}
/**
* The checkpoint of the ETL task.
*/
public Builder etlSafeCheckpoint(String etlSafeCheckpoint) {
this.etlSafeCheckpoint = etlSafeCheckpoint;
return this;
}
/**
* The time when the instance expires. The time follows the ISO 8601 standard in the *yyyy-MM-dd*T*HH:mm:ss*Z format. The time is displayed in UTC.
*
*
* > This parameter is returned only if the returned value of **PayType** is **PrePaid**.
*/
public Builder expireTime(String expireTime) {
this.expireTime = expireTime;
return this;
}
/**
* The state information about the full data verification task.
*/
public Builder fullDataCheckStatus(ReverseJobFullDataCheckStatus fullDataCheckStatus) {
this.fullDataCheckStatus = fullDataCheckStatus;
return this;
}
/**
* The state information about the incremental data verification task.
*/
public Builder incDataCheckStatus(ReverseJobIncDataCheckStatus incDataCheckStatus) {
this.incDataCheckStatus = incDataCheckStatus;
return this;
}
/**
* MaxDu.
*/
public Builder maxDu(Double maxDu) {
this.maxDu = maxDu;
return this;
}
/**
* The memory that has been used. Unit: MB.
*/
public Builder memUsage(String memUsage) {
this.memUsage = memUsage;
return this;
}
/**
* The initial synchronization types.
*/
public Builder migrationMode(ReverseJobMigrationMode migrationMode) {
this.migrationMode = migrationMode;
return this;
}
/**
* MinDu.
*/
public Builder minDu(Double minDu) {
this.minDu = minDu;
return this;
}
/**
* The billing method of the DTS instance. Valid values:
*
*
* - **PrePaid**: subscription
* - **PostPaid**: pay-as-you-go
*/
public Builder payType(String payType) {
this.payType = payType;
return this;
}
/**
* The performance of the data synchronization instance.
*/
public Builder performance(ReverseJobPerformance performance) {
this.performance = performance;
return this;
}
/**
* The precheck state.
*/
public Builder precheckStatus(ReverseJobPrecheckStatus precheckStatus) {
this.precheckStatus = precheckStatus;
return this;
}
/**
* The reserved parameter of DTS. The value is a JSON string. You can specify this parameter to meet specific requirements, for example, whether to automatically start a precheck. For more information, see [MigrationReserved](~~176470~~).
*/
public Builder reserved(String reserved) {
this.reserved = reserved;
return this;
}
/**
* The connection settings of the source instance.
*/
public Builder sourceEndpoint(SourceEndpoint sourceEndpoint) {
this.sourceEndpoint = sourceEndpoint;
return this;
}
/**
* The state of the DTS instance. For more information about the valid values, see the description of the request parameter **Status**.
*/
public Builder status(String status) {
this.status = status;
return this;
}
/**
* The state of initial schema synchronization.
*/
public Builder structureInitializationStatus(StructureInitializationStatus structureInitializationStatus) {
this.structureInitializationStatus = structureInitializationStatus;
return this;
}
public ReverseJob build() {
return new ReverseJob(this);
}
}
}
public static class DtsJobListSourceEndpoint extends TeaModel {
@com.aliyun.core.annotation.NameInMap("DatabaseName")
private String databaseName;
@com.aliyun.core.annotation.NameInMap("EngineName")
private String engineName;
@com.aliyun.core.annotation.NameInMap("InstanceID")
private String instanceID;
@com.aliyun.core.annotation.NameInMap("InstanceType")
private String instanceType;
@com.aliyun.core.annotation.NameInMap("Ip")
private String ip;
@com.aliyun.core.annotation.NameInMap("OracleSID")
private String oracleSID;
@com.aliyun.core.annotation.NameInMap("Port")
private String port;
@com.aliyun.core.annotation.NameInMap("Region")
private String region;
@com.aliyun.core.annotation.NameInMap("SslSolutionEnum")
private String sslSolutionEnum;
@com.aliyun.core.annotation.NameInMap("UserName")
private String userName;
private DtsJobListSourceEndpoint(Builder builder) {
this.databaseName = builder.databaseName;
this.engineName = builder.engineName;
this.instanceID = builder.instanceID;
this.instanceType = builder.instanceType;
this.ip = builder.ip;
this.oracleSID = builder.oracleSID;
this.port = builder.port;
this.region = builder.region;
this.sslSolutionEnum = builder.sslSolutionEnum;
this.userName = builder.userName;
}
public static Builder builder() {
return new Builder();
}
public static DtsJobListSourceEndpoint create() {
return builder().build();
}
/**
* @return databaseName
*/
public String getDatabaseName() {
return this.databaseName;
}
/**
* @return engineName
*/
public String getEngineName() {
return this.engineName;
}
/**
* @return instanceID
*/
public String getInstanceID() {
return this.instanceID;
}
/**
* @return instanceType
*/
public String getInstanceType() {
return this.instanceType;
}
/**
* @return ip
*/
public String getIp() {
return this.ip;
}
/**
* @return oracleSID
*/
public String getOracleSID() {
return this.oracleSID;
}
/**
* @return port
*/
public String getPort() {
return this.port;
}
/**
* @return region
*/
public String getRegion() {
return this.region;
}
/**
* @return sslSolutionEnum
*/
public String getSslSolutionEnum() {
return this.sslSolutionEnum;
}
/**
* @return userName
*/
public String getUserName() {
return this.userName;
}
public static final class Builder {
private String databaseName;
private String engineName;
private String instanceID;
private String instanceType;
private String ip;
private String oracleSID;
private String port;
private String region;
private String sslSolutionEnum;
private String userName;
/**
* The name of the database that contains the objects to be migrated from the source instance.
*/
public Builder databaseName(String databaseName) {
this.databaseName = databaseName;
return this;
}
/**
* The database engine of the source instance.
*/
public Builder engineName(String engineName) {
this.engineName = engineName;
return this;
}
/**
* The ID of the source instance.
*/
public Builder instanceID(String instanceID) {
this.instanceID = instanceID;
return this;
}
/**
* The type of the source instance.
*/
public Builder instanceType(String instanceType) {
this.instanceType = instanceType;
return this;
}
/**
* The endpoint of the source instance.
*/
public Builder ip(String ip) {
this.ip = ip;
return this;
}
/**
* The SID of the Oracle database.
*
*
* > This parameter is returned only if the returned value of **EngineName** of the source instance is **Oracle** and the Oracle database is deployed in a non-RAC architecture.
*/
public Builder oracleSID(String oracleSID) {
this.oracleSID = oracleSID;
return this;
}
/**
* The port number of the source instance.
*/
public Builder port(String port) {
this.port = port;
return this;
}
/**
* The ID of the region in which the source instance resides. For more information, see [Supported regions](~~141033~~).
*/
public Builder region(String region) {
this.region = region;
return this;
}
/**
* Indicates whether SSL encryption is enabled. Valid values:
*
*
* - **DISABLE**: SSL encryption is disabled.
* - **ENABLE_WITH_CERTIFICAT**E: SSL encryption is enabled and the CA certificate is uploaded.
* - **ENABLE_ONLY_4_MONGODB_ALTAS**: SSL encryption is enabled for the connection with an AWS MongoDB Altas database.
* - **ENABLE_ONLY_4_KAFKA_SCRAM_SHA_256**: SCRAM-SHA-256 is used to encrypt the connection with a Kafka cluster.
*/
public Builder sslSolutionEnum(String sslSolutionEnum) {
this.sslSolutionEnum = sslSolutionEnum;
return this;
}
/**
* The database account of the source instance.
*/
public Builder userName(String userName) {
this.userName = userName;
return this;
}
public DtsJobListSourceEndpoint build() {
return new DtsJobListSourceEndpoint(this);
}
}
}
public static class DtsJobListStructureInitializationStatus extends TeaModel {
@com.aliyun.core.annotation.NameInMap("ErrorMessage")
private String errorMessage;
@com.aliyun.core.annotation.NameInMap("Percent")
private String percent;
@com.aliyun.core.annotation.NameInMap("Progress")
private String progress;
@com.aliyun.core.annotation.NameInMap("Status")
private String status;
private DtsJobListStructureInitializationStatus(Builder builder) {
this.errorMessage = builder.errorMessage;
this.percent = builder.percent;
this.progress = builder.progress;
this.status = builder.status;
}
public static Builder builder() {
return new Builder();
}
public static DtsJobListStructureInitializationStatus create() {
return builder().build();
}
/**
* @return errorMessage
*/
public String getErrorMessage() {
return this.errorMessage;
}
/**
* @return percent
*/
public String getPercent() {
return this.percent;
}
/**
* @return progress
*/
public String getProgress() {
return this.progress;
}
/**
* @return status
*/
public String getStatus() {
return this.status;
}
public static final class Builder {
private String errorMessage;
private String percent;
private String progress;
private String status;
/**
* The error message returned if schema migration or initial schema synchronization failed.
*/
public Builder errorMessage(String errorMessage) {
this.errorMessage = errorMessage;
return this;
}
/**
* The progress of schema migration or initial schema synchronization. Unit: percentage.
*/
public Builder percent(String percent) {
this.percent = percent;
return this;
}
/**
* The number of tables that have been migrated or synchronized during schema migration or initial schema synchronization.
*/
public Builder progress(String progress) {
this.progress = progress;
return this;
}
/**
* The state of schema migration or initial schema synchronization. Valid values:
*
*
* - **NotStarted**: The task is not started.
* - **Migrating**: The task is in progress.
* - **Failed**: The task failed.
* - **Finished**: The task is complete.
*/
public Builder status(String status) {
this.status = status;
return this;
}
public DtsJobListStructureInitializationStatus build() {
return new DtsJobListStructureInitializationStatus(this);
}
}
}
public static class TagList extends TeaModel {
@com.aliyun.core.annotation.NameInMap("TagKey")
private String tagKey;
@com.aliyun.core.annotation.NameInMap("TagValue")
private String tagValue;
private TagList(Builder builder) {
this.tagKey = builder.tagKey;
this.tagValue = builder.tagValue;
}
public static Builder builder() {
return new Builder();
}
public static TagList create() {
return builder().build();
}
/**
* @return tagKey
*/
public String getTagKey() {
return this.tagKey;
}
/**
* @return tagValue
*/
public String getTagValue() {
return this.tagValue;
}
public static final class Builder {
private String tagKey;
private String tagValue;
/**
* The key of the tag.
*/
public Builder tagKey(String tagKey) {
this.tagKey = tagKey;
return this;
}
/**
* The value of the tag.
*/
public Builder tagValue(String tagValue) {
this.tagValue = tagValue;
return this;
}
public TagList build() {
return new TagList(this);
}
}
}
public static class DtsJobList extends TeaModel {
@com.aliyun.core.annotation.NameInMap("AppName")
private String appName;
@com.aliyun.core.annotation.NameInMap("BeginTimestamp")
private String beginTimestamp;
@com.aliyun.core.annotation.NameInMap("Checkpoint")
private String checkpoint;
@com.aliyun.core.annotation.NameInMap("ConsumptionCheckpoint")
private String consumptionCheckpoint;
@com.aliyun.core.annotation.NameInMap("ConsumptionClient")
private String consumptionClient;
@com.aliyun.core.annotation.NameInMap("CpuUsage")
private String cpuUsage;
@com.aliyun.core.annotation.NameInMap("CreateTime")
private String createTime;
@com.aliyun.core.annotation.NameInMap("DataCloudStatus")
private DataCloudStatus dataCloudStatus;
@com.aliyun.core.annotation.NameInMap("DataEtlStatus")
private DataEtlStatus dataEtlStatus;
@com.aliyun.core.annotation.NameInMap("DataInitializationStatus")
private DataInitializationStatus dataInitializationStatus;
@com.aliyun.core.annotation.NameInMap("DataSynchronizationStatus")
private DataSynchronizationStatus dataSynchronizationStatus;
@com.aliyun.core.annotation.NameInMap("DbObject")
private String dbObject;
@com.aliyun.core.annotation.NameInMap("DedicatedClusterId")
private String dedicatedClusterId;
@com.aliyun.core.annotation.NameInMap("Delay")
private Long delay;
@com.aliyun.core.annotation.NameInMap("DestinationEndpoint")
private DestinationEndpoint destinationEndpoint;
@com.aliyun.core.annotation.NameInMap("DtsBisLabel")
private String dtsBisLabel;
@com.aliyun.core.annotation.NameInMap("DtsInstanceID")
private String dtsInstanceID;
@com.aliyun.core.annotation.NameInMap("DtsJobClass")
private String dtsJobClass;
@com.aliyun.core.annotation.NameInMap("DtsJobDirection")
private String dtsJobDirection;
@com.aliyun.core.annotation.NameInMap("DtsJobId")
private String dtsJobId;
@com.aliyun.core.annotation.NameInMap("DtsJobName")
private String dtsJobName;
@com.aliyun.core.annotation.NameInMap("DuUsage")
private Long duUsage;
@com.aliyun.core.annotation.NameInMap("EndTimestamp")
private String endTimestamp;
@com.aliyun.core.annotation.NameInMap("ErrorDetails")
private java.util.List < ErrorDetails> errorDetails;
@com.aliyun.core.annotation.NameInMap("ErrorMessage")
private String errorMessage;
@com.aliyun.core.annotation.NameInMap("EtlSafeCheckpoint")
private String etlSafeCheckpoint;
@com.aliyun.core.annotation.NameInMap("ExpireTime")
private String expireTime;
@com.aliyun.core.annotation.NameInMap("FullDataCheckStatus")
private FullDataCheckStatus fullDataCheckStatus;
@com.aliyun.core.annotation.NameInMap("IncDataCheckStatus")
private IncDataCheckStatus incDataCheckStatus;
@com.aliyun.core.annotation.NameInMap("JobType")
private String jobType;
@com.aliyun.core.annotation.NameInMap("MaxDu")
private Double maxDu;
@com.aliyun.core.annotation.NameInMap("MemUsage")
private String memUsage;
@com.aliyun.core.annotation.NameInMap("MigrationErrCode")
private String migrationErrCode;
@com.aliyun.core.annotation.NameInMap("MigrationErrHelpDocId")
private String migrationErrHelpDocId;
@com.aliyun.core.annotation.NameInMap("MigrationErrHelpDocKey")
private String migrationErrHelpDocKey;
@com.aliyun.core.annotation.NameInMap("MigrationErrMsg")
private String migrationErrMsg;
@com.aliyun.core.annotation.NameInMap("MigrationErrType")
private String migrationErrType;
@com.aliyun.core.annotation.NameInMap("MigrationErrWorkaround")
private String migrationErrWorkaround;
@com.aliyun.core.annotation.NameInMap("MigrationMode")
private MigrationMode migrationMode;
@com.aliyun.core.annotation.NameInMap("MinDu")
private Double minDu;
@com.aliyun.core.annotation.NameInMap("OriginType")
private String originType;
@com.aliyun.core.annotation.NameInMap("PayType")
private String payType;
@com.aliyun.core.annotation.NameInMap("Performance")
private Performance performance;
@com.aliyun.core.annotation.NameInMap("PrecheckStatus")
private PrecheckStatus precheckStatus;
@com.aliyun.core.annotation.NameInMap("Reserved")
private String reserved;
@com.aliyun.core.annotation.NameInMap("ResourceGroupDisplayName")
private String resourceGroupDisplayName;
@com.aliyun.core.annotation.NameInMap("ResourceGroupId")
private String resourceGroupId;
@com.aliyun.core.annotation.NameInMap("RetryState")
private RetryState retryState;
@com.aliyun.core.annotation.NameInMap("ReverseJob")
private ReverseJob reverseJob;
@com.aliyun.core.annotation.NameInMap("SourceEndpoint")
private DtsJobListSourceEndpoint sourceEndpoint;
@com.aliyun.core.annotation.NameInMap("Status")
private String status;
@com.aliyun.core.annotation.NameInMap("StructureInitializationStatus")
private DtsJobListStructureInitializationStatus structureInitializationStatus;
@com.aliyun.core.annotation.NameInMap("TagList")
private java.util.List < TagList> tagList;
private DtsJobList(Builder builder) {
this.appName = builder.appName;
this.beginTimestamp = builder.beginTimestamp;
this.checkpoint = builder.checkpoint;
this.consumptionCheckpoint = builder.consumptionCheckpoint;
this.consumptionClient = builder.consumptionClient;
this.cpuUsage = builder.cpuUsage;
this.createTime = builder.createTime;
this.dataCloudStatus = builder.dataCloudStatus;
this.dataEtlStatus = builder.dataEtlStatus;
this.dataInitializationStatus = builder.dataInitializationStatus;
this.dataSynchronizationStatus = builder.dataSynchronizationStatus;
this.dbObject = builder.dbObject;
this.dedicatedClusterId = builder.dedicatedClusterId;
this.delay = builder.delay;
this.destinationEndpoint = builder.destinationEndpoint;
this.dtsBisLabel = builder.dtsBisLabel;
this.dtsInstanceID = builder.dtsInstanceID;
this.dtsJobClass = builder.dtsJobClass;
this.dtsJobDirection = builder.dtsJobDirection;
this.dtsJobId = builder.dtsJobId;
this.dtsJobName = builder.dtsJobName;
this.duUsage = builder.duUsage;
this.endTimestamp = builder.endTimestamp;
this.errorDetails = builder.errorDetails;
this.errorMessage = builder.errorMessage;
this.etlSafeCheckpoint = builder.etlSafeCheckpoint;
this.expireTime = builder.expireTime;
this.fullDataCheckStatus = builder.fullDataCheckStatus;
this.incDataCheckStatus = builder.incDataCheckStatus;
this.jobType = builder.jobType;
this.maxDu = builder.maxDu;
this.memUsage = builder.memUsage;
this.migrationErrCode = builder.migrationErrCode;
this.migrationErrHelpDocId = builder.migrationErrHelpDocId;
this.migrationErrHelpDocKey = builder.migrationErrHelpDocKey;
this.migrationErrMsg = builder.migrationErrMsg;
this.migrationErrType = builder.migrationErrType;
this.migrationErrWorkaround = builder.migrationErrWorkaround;
this.migrationMode = builder.migrationMode;
this.minDu = builder.minDu;
this.originType = builder.originType;
this.payType = builder.payType;
this.performance = builder.performance;
this.precheckStatus = builder.precheckStatus;
this.reserved = builder.reserved;
this.resourceGroupDisplayName = builder.resourceGroupDisplayName;
this.resourceGroupId = builder.resourceGroupId;
this.retryState = builder.retryState;
this.reverseJob = builder.reverseJob;
this.sourceEndpoint = builder.sourceEndpoint;
this.status = builder.status;
this.structureInitializationStatus = builder.structureInitializationStatus;
this.tagList = builder.tagList;
}
public static Builder builder() {
return new Builder();
}
public static DtsJobList create() {
return builder().build();
}
/**
* @return appName
*/
public String getAppName() {
return this.appName;
}
/**
* @return beginTimestamp
*/
public String getBeginTimestamp() {
return this.beginTimestamp;
}
/**
* @return checkpoint
*/
public String getCheckpoint() {
return this.checkpoint;
}
/**
* @return consumptionCheckpoint
*/
public String getConsumptionCheckpoint() {
return this.consumptionCheckpoint;
}
/**
* @return consumptionClient
*/
public String getConsumptionClient() {
return this.consumptionClient;
}
/**
* @return cpuUsage
*/
public String getCpuUsage() {
return this.cpuUsage;
}
/**
* @return createTime
*/
public String getCreateTime() {
return this.createTime;
}
/**
* @return dataCloudStatus
*/
public DataCloudStatus getDataCloudStatus() {
return this.dataCloudStatus;
}
/**
* @return dataEtlStatus
*/
public DataEtlStatus getDataEtlStatus() {
return this.dataEtlStatus;
}
/**
* @return dataInitializationStatus
*/
public DataInitializationStatus getDataInitializationStatus() {
return this.dataInitializationStatus;
}
/**
* @return dataSynchronizationStatus
*/
public DataSynchronizationStatus getDataSynchronizationStatus() {
return this.dataSynchronizationStatus;
}
/**
* @return dbObject
*/
public String getDbObject() {
return this.dbObject;
}
/**
* @return dedicatedClusterId
*/
public String getDedicatedClusterId() {
return this.dedicatedClusterId;
}
/**
* @return delay
*/
public Long getDelay() {
return this.delay;
}
/**
* @return destinationEndpoint
*/
public DestinationEndpoint getDestinationEndpoint() {
return this.destinationEndpoint;
}
/**
* @return dtsBisLabel
*/
public String getDtsBisLabel() {
return this.dtsBisLabel;
}
/**
* @return dtsInstanceID
*/
public String getDtsInstanceID() {
return this.dtsInstanceID;
}
/**
* @return dtsJobClass
*/
public String getDtsJobClass() {
return this.dtsJobClass;
}
/**
* @return dtsJobDirection
*/
public String getDtsJobDirection() {
return this.dtsJobDirection;
}
/**
* @return dtsJobId
*/
public String getDtsJobId() {
return this.dtsJobId;
}
/**
* @return dtsJobName
*/
public String getDtsJobName() {
return this.dtsJobName;
}
/**
* @return duUsage
*/
public Long getDuUsage() {
return this.duUsage;
}
/**
* @return endTimestamp
*/
public String getEndTimestamp() {
return this.endTimestamp;
}
/**
* @return errorDetails
*/
public java.util.List < ErrorDetails> getErrorDetails() {
return this.errorDetails;
}
/**
* @return errorMessage
*/
public String getErrorMessage() {
return this.errorMessage;
}
/**
* @return etlSafeCheckpoint
*/
public String getEtlSafeCheckpoint() {
return this.etlSafeCheckpoint;
}
/**
* @return expireTime
*/
public String getExpireTime() {
return this.expireTime;
}
/**
* @return fullDataCheckStatus
*/
public FullDataCheckStatus getFullDataCheckStatus() {
return this.fullDataCheckStatus;
}
/**
* @return incDataCheckStatus
*/
public IncDataCheckStatus getIncDataCheckStatus() {
return this.incDataCheckStatus;
}
/**
* @return jobType
*/
public String getJobType() {
return this.jobType;
}
/**
* @return maxDu
*/
public Double getMaxDu() {
return this.maxDu;
}
/**
* @return memUsage
*/
public String getMemUsage() {
return this.memUsage;
}
/**
* @return migrationErrCode
*/
public String getMigrationErrCode() {
return this.migrationErrCode;
}
/**
* @return migrationErrHelpDocId
*/
public String getMigrationErrHelpDocId() {
return this.migrationErrHelpDocId;
}
/**
* @return migrationErrHelpDocKey
*/
public String getMigrationErrHelpDocKey() {
return this.migrationErrHelpDocKey;
}
/**
* @return migrationErrMsg
*/
public String getMigrationErrMsg() {
return this.migrationErrMsg;
}
/**
* @return migrationErrType
*/
public String getMigrationErrType() {
return this.migrationErrType;
}
/**
* @return migrationErrWorkaround
*/
public String getMigrationErrWorkaround() {
return this.migrationErrWorkaround;
}
/**
* @return migrationMode
*/
public MigrationMode getMigrationMode() {
return this.migrationMode;
}
/**
* @return minDu
*/
public Double getMinDu() {
return this.minDu;
}
/**
* @return originType
*/
public String getOriginType() {
return this.originType;
}
/**
* @return payType
*/
public String getPayType() {
return this.payType;
}
/**
* @return performance
*/
public Performance getPerformance() {
return this.performance;
}
/**
* @return precheckStatus
*/
public PrecheckStatus getPrecheckStatus() {
return this.precheckStatus;
}
/**
* @return reserved
*/
public String getReserved() {
return this.reserved;
}
/**
* @return resourceGroupDisplayName
*/
public String getResourceGroupDisplayName() {
return this.resourceGroupDisplayName;
}
/**
* @return resourceGroupId
*/
public String getResourceGroupId() {
return this.resourceGroupId;
}
/**
* @return retryState
*/
public RetryState getRetryState() {
return this.retryState;
}
/**
* @return reverseJob
*/
public ReverseJob getReverseJob() {
return this.reverseJob;
}
/**
* @return sourceEndpoint
*/
public DtsJobListSourceEndpoint getSourceEndpoint() {
return this.sourceEndpoint;
}
/**
* @return status
*/
public String getStatus() {
return this.status;
}
/**
* @return structureInitializationStatus
*/
public DtsJobListStructureInitializationStatus getStructureInitializationStatus() {
return this.structureInitializationStatus;
}
/**
* @return tagList
*/
public java.util.List < TagList> getTagList() {
return this.tagList;
}
public static final class Builder {
private String appName;
private String beginTimestamp;
private String checkpoint;
private String consumptionCheckpoint;
private String consumptionClient;
private String cpuUsage;
private String createTime;
private DataCloudStatus dataCloudStatus;
private DataEtlStatus dataEtlStatus;
private DataInitializationStatus dataInitializationStatus;
private DataSynchronizationStatus dataSynchronizationStatus;
private String dbObject;
private String dedicatedClusterId;
private Long delay;
private DestinationEndpoint destinationEndpoint;
private String dtsBisLabel;
private String dtsInstanceID;
private String dtsJobClass;
private String dtsJobDirection;
private String dtsJobId;
private String dtsJobName;
private Long duUsage;
private String endTimestamp;
private java.util.List < ErrorDetails> errorDetails;
private String errorMessage;
private String etlSafeCheckpoint;
private String expireTime;
private FullDataCheckStatus fullDataCheckStatus;
private IncDataCheckStatus incDataCheckStatus;
private String jobType;
private Double maxDu;
private String memUsage;
private String migrationErrCode;
private String migrationErrHelpDocId;
private String migrationErrHelpDocKey;
private String migrationErrMsg;
private String migrationErrType;
private String migrationErrWorkaround;
private MigrationMode migrationMode;
private Double minDu;
private String originType;
private String payType;
private Performance performance;
private PrecheckStatus precheckStatus;
private String reserved;
private String resourceGroupDisplayName;
private String resourceGroupId;
private RetryState retryState;
private ReverseJob reverseJob;
private DtsJobListSourceEndpoint sourceEndpoint;
private String status;
private DtsJobListStructureInitializationStatus structureInitializationStatus;
private java.util.List < TagList> tagList;
/**
* Indicates whether the **new** change tracking feature is used.
*
*
* > This parameter is returned only for change tracking instances of the new version.
*/
public Builder appName(String appName) {
this.appName = appName;
return this;
}
/**
* The start of the time range for change tracking. The time follows the ISO 8601 standard in the *yyyy-MM-dd*T*HH:mm:ss*Z format. The time is displayed in UTC.
*/
public Builder beginTimestamp(String beginTimestamp) {
this.beginTimestamp = beginTimestamp;
return this;
}
/**
* The start offset of incremental data synchronization. The value is a UNIX timestamp representing the number of seconds that have elapsed since the epoch time January 1, 1970, 00:00:00 UTC.
*/
public Builder checkpoint(String checkpoint) {
this.checkpoint = checkpoint;
return this;
}
/**
* The consumption checkpoint of the change tracking instance. The time follows the ISO 8601 standard in the *yyyy-MM-dd*T*HH:mm:ss*Z format. The time is displayed in UTC.
*/
public Builder consumptionCheckpoint(String consumptionCheckpoint) {
this.consumptionCheckpoint = consumptionCheckpoint;
return this;
}
/**
* The downstream client information, in the following format: \:\.
*/
public Builder consumptionClient(String consumptionClient) {
this.consumptionClient = consumptionClient;
return this;
}
/**
* The CPU utilization of the instance. Unit: percentage.
*/
public Builder cpuUsage(String cpuUsage) {
this.cpuUsage = cpuUsage;
return this;
}
/**
* The point in time when the task was created. The time follows the ISO 8601 standard in the *yyyy-MM-dd*T*HH:mm:ss*Z format. The time is displayed in UTC.
*/
public Builder createTime(String createTime) {
this.createTime = createTime;
return this;
}
/**
* The state of the physical gateway-based migration task.
*/
public Builder dataCloudStatus(DataCloudStatus dataCloudStatus) {
this.dataCloudStatus = dataCloudStatus;
return this;
}
/**
* The state of the extract, transform, and load (ETL) task. Valid values:
*
*
* > This parameter collection is returned only if an ETL task is configured.
*/
public Builder dataEtlStatus(DataEtlStatus dataEtlStatus) {
this.dataEtlStatus = dataEtlStatus;
return this;
}
/**
* The state of full data synchronization.
*/
public Builder dataInitializationStatus(DataInitializationStatus dataInitializationStatus) {
this.dataInitializationStatus = dataInitializationStatus;
return this;
}
/**
* The state of incremental data migration or synchronization.
*/
public Builder dataSynchronizationStatus(DataSynchronizationStatus dataSynchronizationStatus) {
this.dataSynchronizationStatus = dataSynchronizationStatus;
return this;
}
/**
* The objects that you want to synchronize. The value is a JSON string and can contain regular expressions. For more information, see "Objects of DTS tasks".
*/
public Builder dbObject(String dbObject) {
this.dbObject = dbObject;
return this;
}
/**
* The ID of the DTS dedicated cluster on which a DTS task runs.
*/
public Builder dedicatedClusterId(String dedicatedClusterId) {
this.dedicatedClusterId = dedicatedClusterId;
return this;
}
/**
* The latency of incremental data synchronization. Unit: seconds.
*/
public Builder delay(Long delay) {
this.delay = delay;
return this;
}
/**
* The connection settings of the destination instance.
*/
public Builder destinationEndpoint(DestinationEndpoint destinationEndpoint) {
this.destinationEndpoint = destinationEndpoint;
return this;
}
/**
* The environment tag of the DTS instance. Valid values:
*
*
* - **normal**
* - **online**
*/
public Builder dtsBisLabel(String dtsBisLabel) {
this.dtsBisLabel = dtsBisLabel;
return this;
}
/**
* The ID of the data synchronization instance.
*/
public Builder dtsInstanceID(String dtsInstanceID) {
this.dtsInstanceID = dtsInstanceID;
return this;
}
/**
* The instance class.
*
*
* > For more information about the test performance of each instance class, see [Specifications of data synchronization instances](~~26605~~).
*/
public Builder dtsJobClass(String dtsJobClass) {
this.dtsJobClass = dtsJobClass;
return this;
}
/**
* The synchronization direction. The value is **Reverse**.
*/
public Builder dtsJobDirection(String dtsJobDirection) {
this.dtsJobDirection = dtsJobDirection;
return this;
}
/**
* The ID of the data synchronization task.
*/
public Builder dtsJobId(String dtsJobId) {
this.dtsJobId = dtsJobId;
return this;
}
/**
* The name of the data synchronization task.
*/
public Builder dtsJobName(String dtsJobName) {
this.dtsJobName = dtsJobName;
return this;
}
/**
* The number of DUs that have been used.
*/
public Builder duUsage(Long duUsage) {
this.duUsage = duUsage;
return this;
}
/**
* The end of the time range for change tracking. The time follows the ISO 8601 standard in the *yyyy-MM-dd*T*HH:mm:ss*Z format. The time is displayed in UTC.
*/
public Builder endTimestamp(String endTimestamp) {
this.endTimestamp = endTimestamp;
return this;
}
/**
* The error message returned.
*/
public Builder errorDetails(java.util.List < ErrorDetails> errorDetails) {
this.errorDetails = errorDetails;
return this;
}
/**
* The error message returned if the task failed.
*/
public Builder errorMessage(String errorMessage) {
this.errorMessage = errorMessage;
return this;
}
/**
* The checkpoint of the ETL task.
*/
public Builder etlSafeCheckpoint(String etlSafeCheckpoint) {
this.etlSafeCheckpoint = etlSafeCheckpoint;
return this;
}
/**
* The point in time when the instance expires. The time follows the ISO 8601 standard in the *yyyy-MM-dd*T*HH:mm:ss*Z format. The time is displayed in UTC.
*
*
* > This parameter is returned only if the value of the **PayType** parameter is **PrePaid**.
*/
public Builder expireTime(String expireTime) {
this.expireTime = expireTime;
return this;
}
/**
* The state information about the full data verification task.
*/
public Builder fullDataCheckStatus(FullDataCheckStatus fullDataCheckStatus) {
this.fullDataCheckStatus = fullDataCheckStatus;
return this;
}
/**
* The state information about the incremental data verification task.
*/
public Builder incDataCheckStatus(IncDataCheckStatus incDataCheckStatus) {
this.incDataCheckStatus = incDataCheckStatus;
return this;
}
/**
* The type of the DTS task. Valid values:
*
*
* - **MIGRATION**: data migration task
* - **SYNC**: data synchronization task
* - **SUBSCRIBE**: change tracking task
*/
public Builder jobType(String jobType) {
this.jobType = jobType;
return this;
}
/**
* MaxDu.
*/
public Builder maxDu(Double maxDu) {
this.maxDu = maxDu;
return this;
}
/**
* The memory that has been used. Unit: MB.
*/
public Builder memUsage(String memUsage) {
this.memUsage = memUsage;
return this;
}
/**
* The error code.
*/
public Builder migrationErrCode(String migrationErrCode) {
this.migrationErrCode = migrationErrCode;
return this;
}
/**
* The ID of the error code-related documentation.
*/
public Builder migrationErrHelpDocId(String migrationErrHelpDocId) {
this.migrationErrHelpDocId = migrationErrHelpDocId;
return this;
}
/**
* The key of the error code-related documentation.
*/
public Builder migrationErrHelpDocKey(String migrationErrHelpDocKey) {
this.migrationErrHelpDocKey = migrationErrHelpDocKey;
return this;
}
/**
* The error message.
*/
public Builder migrationErrMsg(String migrationErrMsg) {
this.migrationErrMsg = migrationErrMsg;
return this;
}
/**
* The type of the error code.
*/
public Builder migrationErrType(String migrationErrType) {
this.migrationErrType = migrationErrType;
return this;
}
/**
* The solution to the error.
*/
public Builder migrationErrWorkaround(String migrationErrWorkaround) {
this.migrationErrWorkaround = migrationErrWorkaround;
return this;
}
/**
* The migration or synchronization modes.
*/
public Builder migrationMode(MigrationMode migrationMode) {
this.migrationMode = migrationMode;
return this;
}
/**
* MinDu.
*/
public Builder minDu(Double minDu) {
this.minDu = minDu;
return this;
}
/**
* The source of the task. Valid values:
*
*
* * **PTS**
* * **DMS**
* * **DTS**
*/
public Builder originType(String originType) {
this.originType = originType;
return this;
}
/**
* The billing method of the DTS instance. Valid values:
*
*
* * **PrePaid**: subscription
* * **PostPaid**: pay-as-you-go
*/
public Builder payType(String payType) {
this.payType = payType;
return this;
}
/**
* The performance of the data migration or synchronization instance.
*/
public Builder performance(Performance performance) {
this.performance = performance;
return this;
}
/**
* The precheck state.
*/
public Builder precheckStatus(PrecheckStatus precheckStatus) {
this.precheckStatus = precheckStatus;
return this;
}
/**
* The reserved parameter of DTS. The value is a JSON string. You can specify this parameter to meet specific requirements, for example, whether to automatically start a precheck. For more information, see [MigrationReserved](~~176470~~).
*/
public Builder reserved(String reserved) {
this.reserved = reserved;
return this;
}
/**
* The name of the resource group.
*/
public Builder resourceGroupDisplayName(String resourceGroupDisplayName) {
this.resourceGroupDisplayName = resourceGroupDisplayName;
return this;
}
/**
* The resource group ID.
*/
public Builder resourceGroupId(String resourceGroupId) {
this.resourceGroupId = resourceGroupId;
return this;
}
/**
* The information about the retries performed by DTS due to an exception.
*/
public Builder retryState(RetryState retryState) {
this.retryState = retryState;
return this;
}
/**
* The details of the data synchronization task in the reverse direction.
*
*
* > This parameter is returned only for two-way data synchronization tasks.
*/
public Builder reverseJob(ReverseJob reverseJob) {
this.reverseJob = reverseJob;
return this;
}
/**
* The connection settings of the source instance.
*/
public Builder sourceEndpoint(DtsJobListSourceEndpoint sourceEndpoint) {
this.sourceEndpoint = sourceEndpoint;
return this;
}
/**
* The state of the DTS instance. For more information about the valid values, see the description of the request parameter **Status**.
*/
public Builder status(String status) {
this.status = status;
return this;
}
/**
* The state of schema migration or initial schema synchronization.
*/
public Builder structureInitializationStatus(DtsJobListStructureInitializationStatus structureInitializationStatus) {
this.structureInitializationStatus = structureInitializationStatus;
return this;
}
/**
* The tags of the task.
*/
public Builder tagList(java.util.List < TagList> tagList) {
this.tagList = tagList;
return this;
}
public DtsJobList build() {
return new DtsJobList(this);
}
}
}
public static class EtlDemoListDataEtlStatus extends TeaModel {
@com.aliyun.core.annotation.NameInMap("ErrorMessage")
private String errorMessage;
@com.aliyun.core.annotation.NameInMap("Percent")
private String percent;
@com.aliyun.core.annotation.NameInMap("Progress")
private String progress;
@com.aliyun.core.annotation.NameInMap("Status")
private String status;
private EtlDemoListDataEtlStatus(Builder builder) {
this.errorMessage = builder.errorMessage;
this.percent = builder.percent;
this.progress = builder.progress;
this.status = builder.status;
}
public static Builder builder() {
return new Builder();
}
public static EtlDemoListDataEtlStatus create() {
return builder().build();
}
/**
* @return errorMessage
*/
public String getErrorMessage() {
return this.errorMessage;
}
/**
* @return percent
*/
public String getPercent() {
return this.percent;
}
/**
* @return progress
*/
public String getProgress() {
return this.progress;
}
/**
* @return status
*/
public String getStatus() {
return this.status;
}
public static final class Builder {
private String errorMessage;
private String percent;
private String progress;
private String status;
/**
* The error message returned if the ETL task failed.
*/
public Builder errorMessage(String errorMessage) {
this.errorMessage = errorMessage;
return this;
}
/**
* The progress of the ETL task. Unit: percentage.
*/
public Builder percent(String percent) {
this.percent = percent;
return this;
}
/**
* The number of entries that have been processed by the ETL task.
*/
public Builder progress(String progress) {
this.progress = progress;
return this;
}
/**
* The state of the ETL task. Valid values:
*
*
* - **NotStarted**: The task is not started.
* - **Migrating**: The task is in progress.
* - **Failed**: The task failed.
* - **Finished**: The task is complete.
* - **Catched**: The task is not delayed.
*/
public Builder status(String status) {
this.status = status;
return this;
}
public EtlDemoListDataEtlStatus build() {
return new EtlDemoListDataEtlStatus(this);
}
}
}
public static class EtlDemoListDataInitializationStatus extends TeaModel {
@com.aliyun.core.annotation.NameInMap("ErrorMessage")
private String errorMessage;
@com.aliyun.core.annotation.NameInMap("Percent")
private String percent;
@com.aliyun.core.annotation.NameInMap("Progress")
private String progress;
@com.aliyun.core.annotation.NameInMap("Status")
private String status;
private EtlDemoListDataInitializationStatus(Builder builder) {
this.errorMessage = builder.errorMessage;
this.percent = builder.percent;
this.progress = builder.progress;
this.status = builder.status;
}
public static Builder builder() {
return new Builder();
}
public static EtlDemoListDataInitializationStatus create() {
return builder().build();
}
/**
* @return errorMessage
*/
public String getErrorMessage() {
return this.errorMessage;
}
/**
* @return percent
*/
public String getPercent() {
return this.percent;
}
/**
* @return progress
*/
public String getProgress() {
return this.progress;
}
/**
* @return status
*/
public String getStatus() {
return this.status;
}
public static final class Builder {
private String errorMessage;
private String percent;
private String progress;
private String status;
/**
* The error message returned if full data migration or initial full data synchronization failed.
*/
public Builder errorMessage(String errorMessage) {
this.errorMessage = errorMessage;
return this;
}
/**
* The progress of full data migration or initial full data synchronization. Unit: percentage.
*/
public Builder percent(String percent) {
this.percent = percent;
return this;
}
/**
* The number of entries that have been migrated or synchronized during full data migration or initial full data synchronization.
*/
public Builder progress(String progress) {
this.progress = progress;
return this;
}
/**
* The state of full data migration or initial full data synchronization. Valid values:
*
*
* - **NotStarted**: The task is not started.
* - **Migrating**: The task is in progress.
* - **Failed**: The task failed.
* - **Finished**: The task is complete.
*/
public Builder status(String status) {
this.status = status;
return this;
}
public EtlDemoListDataInitializationStatus build() {
return new EtlDemoListDataInitializationStatus(this);
}
}
}
public static class EtlDemoListDataSynchronizationStatus extends TeaModel {
@com.aliyun.core.annotation.NameInMap("ErrorMessage")
private String errorMessage;
@com.aliyun.core.annotation.NameInMap("NeedUpgrade")
private Boolean needUpgrade;
@com.aliyun.core.annotation.NameInMap("Percent")
private String percent;
@com.aliyun.core.annotation.NameInMap("Progress")
private String progress;
@com.aliyun.core.annotation.NameInMap("Status")
private String status;
private EtlDemoListDataSynchronizationStatus(Builder builder) {
this.errorMessage = builder.errorMessage;
this.needUpgrade = builder.needUpgrade;
this.percent = builder.percent;
this.progress = builder.progress;
this.status = builder.status;
}
public static Builder builder() {
return new Builder();
}
public static EtlDemoListDataSynchronizationStatus create() {
return builder().build();
}
/**
* @return errorMessage
*/
public String getErrorMessage() {
return this.errorMessage;
}
/**
* @return needUpgrade
*/
public Boolean getNeedUpgrade() {
return this.needUpgrade;
}
/**
* @return percent
*/
public String getPercent() {
return this.percent;
}
/**
* @return progress
*/
public String getProgress() {
return this.progress;
}
/**
* @return status
*/
public String getStatus() {
return this.status;
}
public static final class Builder {
private String errorMessage;
private Boolean needUpgrade;
private String percent;
private String progress;
private String status;
/**
* The error message returned if incremental data migration or synchronization failed.
*/
public Builder errorMessage(String errorMessage) {
this.errorMessage = errorMessage;
return this;
}
/**
* Indicates whether the instance needs to be upgraded. Valid values:
*
*
* - **true**
* - **false**
*
* > To upgrade a DTS instance, call the [TransferInstanceClass](~~281093~~) operation.
*/
public Builder needUpgrade(Boolean needUpgrade) {
this.needUpgrade = needUpgrade;
return this;
}
/**
* The progress of incremental data migration or synchronization. Unit: percentage.
*/
public Builder percent(String percent) {
this.percent = percent;
return this;
}
/**
* The number of entries that have been migrated or synchronized during incremental data migration or synchronization.
*/
public Builder progress(String progress) {
this.progress = progress;
return this;
}
/**
* The state of incremental data migration or synchronization. Valid values:
*
*
* - **NotStarted**: The task is not started.
* - **Migrating**: The task is in progress.
* - **Failed**: The task failed.
* - **Finished**: The task is complete.
* - **Catched**: The task is not delayed.
*/
public Builder status(String status) {
this.status = status;
return this;
}
public EtlDemoListDataSynchronizationStatus build() {
return new EtlDemoListDataSynchronizationStatus(this);
}
}
}
public static class EtlDemoListDestinationEndpoint extends TeaModel {
@com.aliyun.core.annotation.NameInMap("DatabaseName")
private String databaseName;
@com.aliyun.core.annotation.NameInMap("EngineName")
private String engineName;
@com.aliyun.core.annotation.NameInMap("InstanceID")
private String instanceID;
@com.aliyun.core.annotation.NameInMap("InstanceType")
private String instanceType;
@com.aliyun.core.annotation.NameInMap("Ip")
private String ip;
@com.aliyun.core.annotation.NameInMap("OracleSID")
private String oracleSID;
@com.aliyun.core.annotation.NameInMap("Port")
private String port;
@com.aliyun.core.annotation.NameInMap("Region")
private String region;
@com.aliyun.core.annotation.NameInMap("SslSolutionEnum")
private String sslSolutionEnum;
@com.aliyun.core.annotation.NameInMap("UserName")
private String userName;
private EtlDemoListDestinationEndpoint(Builder builder) {
this.databaseName = builder.databaseName;
this.engineName = builder.engineName;
this.instanceID = builder.instanceID;
this.instanceType = builder.instanceType;
this.ip = builder.ip;
this.oracleSID = builder.oracleSID;
this.port = builder.port;
this.region = builder.region;
this.sslSolutionEnum = builder.sslSolutionEnum;
this.userName = builder.userName;
}
public static Builder builder() {
return new Builder();
}
public static EtlDemoListDestinationEndpoint create() {
return builder().build();
}
/**
* @return databaseName
*/
public String getDatabaseName() {
return this.databaseName;
}
/**
* @return engineName
*/
public String getEngineName() {
return this.engineName;
}
/**
* @return instanceID
*/
public String getInstanceID() {
return this.instanceID;
}
/**
* @return instanceType
*/
public String getInstanceType() {
return this.instanceType;
}
/**
* @return ip
*/
public String getIp() {
return this.ip;
}
/**
* @return oracleSID
*/
public String getOracleSID() {
return this.oracleSID;
}
/**
* @return port
*/
public String getPort() {
return this.port;
}
/**
* @return region
*/
public String getRegion() {
return this.region;
}
/**
* @return sslSolutionEnum
*/
public String getSslSolutionEnum() {
return this.sslSolutionEnum;
}
/**
* @return userName
*/
public String getUserName() {
return this.userName;
}
public static final class Builder {
private String databaseName;
private String engineName;
private String instanceID;
private String instanceType;
private String ip;
private String oracleSID;
private String port;
private String region;
private String sslSolutionEnum;
private String userName;
/**
* The name of the database that contains the migrated objects in the destination instance.
*/
public Builder databaseName(String databaseName) {
this.databaseName = databaseName;
return this;
}
/**
* The database engine of the destination instance.
*/
public Builder engineName(String engineName) {
this.engineName = engineName;
return this;
}
/**
* The ID of the destination instance.
*/
public Builder instanceID(String instanceID) {
this.instanceID = instanceID;
return this;
}
/**
* The type of the destination instance.
*/
public Builder instanceType(String instanceType) {
this.instanceType = instanceType;
return this;
}
/**
* The endpoint of the destination instance.
*/
public Builder ip(String ip) {
this.ip = ip;
return this;
}
/**
* The SID of the Oracle database.
*
*
* > This parameter is returned only if the returned value of **EngineName** of the destination instance is **Oracle** and the Oracle database is deployed in a non-RAC architecture.
*/
public Builder oracleSID(String oracleSID) {
this.oracleSID = oracleSID;
return this;
}
/**
* The port number of the destination instance.
*/
public Builder port(String port) {
this.port = port;
return this;
}
/**
* The ID of the region in which the destination instance resides. For more information, see [Supported regions](~~141033~~).
*/
public Builder region(String region) {
this.region = region;
return this;
}
/**
* Indicates whether SSL encryption is enabled. Valid values:
*
*
* - **DISABLE**: SSL encryption is disabled.
* - **ENABLE_WITH_CERTIFICATE**: SSL encryption is enabled and the CA certificate is uploaded.
* - **ENABLE_ONLY_4_MONGODB_ALTAS**: SSL encryption is enabled for the connection with an AWS MongoDB Altas database.
* - **ENABLE_ONLY_4_KAFKA_SCRAM_SHA_256**: SCRAM-SHA-256 is used to encrypt the connection with a Kafka cluster.
*/
public Builder sslSolutionEnum(String sslSolutionEnum) {
this.sslSolutionEnum = sslSolutionEnum;
return this;
}
/**
* The database account of the destination instance.
*/
public Builder userName(String userName) {
this.userName = userName;
return this;
}
public EtlDemoListDestinationEndpoint build() {
return new EtlDemoListDestinationEndpoint(this);
}
}
}
public static class EtlDemoListMigrationMode extends TeaModel {
@com.aliyun.core.annotation.NameInMap("DataInitialization")
private Boolean dataInitialization;
@com.aliyun.core.annotation.NameInMap("DataSynchronization")
private Boolean dataSynchronization;
@com.aliyun.core.annotation.NameInMap("StructureInitialization")
private Boolean structureInitialization;
private EtlDemoListMigrationMode(Builder builder) {
this.dataInitialization = builder.dataInitialization;
this.dataSynchronization = builder.dataSynchronization;
this.structureInitialization = builder.structureInitialization;
}
public static Builder builder() {
return new Builder();
}
public static EtlDemoListMigrationMode create() {
return builder().build();
}
/**
* @return dataInitialization
*/
public Boolean getDataInitialization() {
return this.dataInitialization;
}
/**
* @return dataSynchronization
*/
public Boolean getDataSynchronization() {
return this.dataSynchronization;
}
/**
* @return structureInitialization
*/
public Boolean getStructureInitialization() {
return this.structureInitialization;
}
public static final class Builder {
private Boolean dataInitialization;
private Boolean dataSynchronization;
private Boolean structureInitialization;
/**
* Indicates whether full data migration or initial full data synchronization is performed. Valid values:
*
*
* - **true**
* - **false**
*/
public Builder dataInitialization(Boolean dataInitialization) {
this.dataInitialization = dataInitialization;
return this;
}
/**
* Indicates whether incremental data migration or synchronization is performed. Valid values:
*
*
* - **true**
* - **false**
*/
public Builder dataSynchronization(Boolean dataSynchronization) {
this.dataSynchronization = dataSynchronization;
return this;
}
/**
* Indicates whether schema migration or initial schema synchronization is performed. Valid values:
*
*
* - **true**
* - **false**
*/
public Builder structureInitialization(Boolean structureInitialization) {
this.structureInitialization = structureInitialization;
return this;
}
public EtlDemoListMigrationMode build() {
return new EtlDemoListMigrationMode(this);
}
}
}
public static class EtlDemoListPerformance extends TeaModel {
@com.aliyun.core.annotation.NameInMap("Flow")
private String flow;
@com.aliyun.core.annotation.NameInMap("Rps")
private String rps;
private EtlDemoListPerformance(Builder builder) {
this.flow = builder.flow;
this.rps = builder.rps;
}
public static Builder builder() {
return new Builder();
}
public static EtlDemoListPerformance create() {
return builder().build();
}
/**
* @return flow
*/
public String getFlow() {
return this.flow;
}
/**
* @return rps
*/
public String getRps() {
return this.rps;
}
public static final class Builder {
private String flow;
private String rps;
/**
* The size of data that is migrated or synchronized per second. Unit: MB/s.
*/
public Builder flow(String flow) {
this.flow = flow;
return this;
}
/**
* The number of times that SQL statements are migrated or synchronized per second, including BEGIN, COMMIT, DML, and DDL statements. DML statements include INSERT, DELETE, and UPDATE.
*/
public Builder rps(String rps) {
this.rps = rps;
return this;
}
public EtlDemoListPerformance build() {
return new EtlDemoListPerformance(this);
}
}
}
public static class EtlDemoListPrecheckStatusDetail extends TeaModel {
@com.aliyun.core.annotation.NameInMap("CheckItem")
private String checkItem;
@com.aliyun.core.annotation.NameInMap("CheckItemDescription")
private String checkItemDescription;
@com.aliyun.core.annotation.NameInMap("CheckResult")
private String checkResult;
@com.aliyun.core.annotation.NameInMap("FailedReason")
private String failedReason;
@com.aliyun.core.annotation.NameInMap("RepairMethod")
private String repairMethod;
private EtlDemoListPrecheckStatusDetail(Builder builder) {
this.checkItem = builder.checkItem;
this.checkItemDescription = builder.checkItemDescription;
this.checkResult = builder.checkResult;
this.failedReason = builder.failedReason;
this.repairMethod = builder.repairMethod;
}
public static Builder builder() {
return new Builder();
}
public static EtlDemoListPrecheckStatusDetail create() {
return builder().build();
}
/**
* @return checkItem
*/
public String getCheckItem() {
return this.checkItem;
}
/**
* @return checkItemDescription
*/
public String getCheckItemDescription() {
return this.checkItemDescription;
}
/**
* @return checkResult
*/
public String getCheckResult() {
return this.checkResult;
}
/**
* @return failedReason
*/
public String getFailedReason() {
return this.failedReason;
}
/**
* @return repairMethod
*/
public String getRepairMethod() {
return this.repairMethod;
}
public static final class Builder {
private String checkItem;
private String checkItemDescription;
private String checkResult;
private String failedReason;
private String repairMethod;
/**
* The name of the precheck item.
*/
public Builder checkItem(String checkItem) {
this.checkItem = checkItem;
return this;
}
/**
* The description of the precheck item.
*/
public Builder checkItemDescription(String checkItemDescription) {
this.checkItemDescription = checkItemDescription;
return this;
}
/**
* The precheck result. Valid values:
*
*
* - **Success**
* - **Failed**
*/
public Builder checkResult(String checkResult) {
this.checkResult = checkResult;
return this;
}
/**
* The error message returned if the task failed to pass the precheck.
*
*
* > This parameter is returned only if the returned value of **CheckResult** is **Failed**.
*/
public Builder failedReason(String failedReason) {
this.failedReason = failedReason;
return this;
}
/**
* The method to fix a precheck failure.
*
*
* > This parameter is returned only if the returned value of **CheckResult** is **Failed**.
*/
public Builder repairMethod(String repairMethod) {
this.repairMethod = repairMethod;
return this;
}
public EtlDemoListPrecheckStatusDetail build() {
return new EtlDemoListPrecheckStatusDetail(this);
}
}
}
public static class EtlDemoListPrecheckStatus extends TeaModel {
@com.aliyun.core.annotation.NameInMap("Detail")
private java.util.List < EtlDemoListPrecheckStatusDetail> detail;
@com.aliyun.core.annotation.NameInMap("ErrorMessage")
private String errorMessage;
@com.aliyun.core.annotation.NameInMap("Percent")
private String percent;
@com.aliyun.core.annotation.NameInMap("Status")
private String status;
private EtlDemoListPrecheckStatus(Builder builder) {
this.detail = builder.detail;
this.errorMessage = builder.errorMessage;
this.percent = builder.percent;
this.status = builder.status;
}
public static Builder builder() {
return new Builder();
}
public static EtlDemoListPrecheckStatus create() {
return builder().build();
}
/**
* @return detail
*/
public java.util.List < EtlDemoListPrecheckStatusDetail> getDetail() {
return this.detail;
}
/**
* @return errorMessage
*/
public String getErrorMessage() {
return this.errorMessage;
}
/**
* @return percent
*/
public String getPercent() {
return this.percent;
}
/**
* @return status
*/
public String getStatus() {
return this.status;
}
public static final class Builder {
private java.util.List < EtlDemoListPrecheckStatusDetail> detail;
private String errorMessage;
private String percent;
private String status;
/**
* The result of each precheck item.
*/
public Builder detail(java.util.List < EtlDemoListPrecheckStatusDetail> detail) {
this.detail = detail;
return this;
}
/**
* The error message returned if the precheck failed.
*/
public Builder errorMessage(String errorMessage) {
this.errorMessage = errorMessage;
return this;
}
/**
* The precheck progress. Unit: percentage.
*/
public Builder percent(String percent) {
this.percent = percent;
return this;
}
/**
* The precheck state. Valid values:
*
*
* - **NotStarted**: The precheck is not started.
* - **Suspending**: The precheck is paused.
* - **Checking**: The precheck is in progress.
* - **Failed**: The precheck failed.
* - **Finished**: The precheck is complete.
*/
public Builder status(String status) {
this.status = status;
return this;
}
public EtlDemoListPrecheckStatus build() {
return new EtlDemoListPrecheckStatus(this);
}
}
}
public static class EtlDemoListRetryState extends TeaModel {
@com.aliyun.core.annotation.NameInMap("ErrMessage")
private String errMessage;
@com.aliyun.core.annotation.NameInMap("JobId")
private String jobId;
@com.aliyun.core.annotation.NameInMap("MaxRetryTime")
private Integer maxRetryTime;
@com.aliyun.core.annotation.NameInMap("Module")
private String module;
@com.aliyun.core.annotation.NameInMap("RetryCount")
private Integer retryCount;
@com.aliyun.core.annotation.NameInMap("RetryTarget")
private String retryTarget;
@com.aliyun.core.annotation.NameInMap("RetryTime")
private Integer retryTime;
@com.aliyun.core.annotation.NameInMap("Retrying")
private Boolean retrying;
private EtlDemoListRetryState(Builder builder) {
this.errMessage = builder.errMessage;
this.jobId = builder.jobId;
this.maxRetryTime = builder.maxRetryTime;
this.module = builder.module;
this.retryCount = builder.retryCount;
this.retryTarget = builder.retryTarget;
this.retryTime = builder.retryTime;
this.retrying = builder.retrying;
}
public static Builder builder() {
return new Builder();
}
public static EtlDemoListRetryState create() {
return builder().build();
}
/**
* @return errMessage
*/
public String getErrMessage() {
return this.errMessage;
}
/**
* @return jobId
*/
public String getJobId() {
return this.jobId;
}
/**
* @return maxRetryTime
*/
public Integer getMaxRetryTime() {
return this.maxRetryTime;
}
/**
* @return module
*/
public String getModule() {
return this.module;
}
/**
* @return retryCount
*/
public Integer getRetryCount() {
return this.retryCount;
}
/**
* @return retryTarget
*/
public String getRetryTarget() {
return this.retryTarget;
}
/**
* @return retryTime
*/
public Integer getRetryTime() {
return this.retryTime;
}
/**
* @return retrying
*/
public Boolean getRetrying() {
return this.retrying;
}
public static final class Builder {
private String errMessage;
private String jobId;
private Integer maxRetryTime;
private String module;
private Integer retryCount;
private String retryTarget;
private Integer retryTime;
private Boolean retrying;
/**
* The error message returned if these retries failed.
*/
public Builder errMessage(String errMessage) {
this.errMessage = errMessage;
return this;
}
/**
* The task ID.
*/
public Builder jobId(String jobId) {
this.jobId = jobId;
return this;
}
/**
* The maximum duration of a retry. Unit: seconds.
*/
public Builder maxRetryTime(Integer maxRetryTime) {
this.maxRetryTime = maxRetryTime;
return this;
}
/**
* The progress of the instance when DTS retries.
*/
public Builder module(String module) {
this.module = module;
return this;
}
/**
* The number of retries that have been performed.
*/
public Builder retryCount(Integer retryCount) {
this.retryCount = retryCount;
return this;
}
/**
* The object on which these retries are performed. Valid values:
*
*
* - **srcDB**: the source database
* - **destDB**: the destination database
* - **inner_module**: an internal module of DTS
*/
public Builder retryTarget(String retryTarget) {
this.retryTarget = retryTarget;
return this;
}
/**
* The time that has elapsed from the time when the first retry starts. Unit: seconds.
*/
public Builder retryTime(Integer retryTime) {
this.retryTime = retryTime;
return this;
}
/**
* Indicates whether the task is being retried. Valid values:
*
*
* - **true**
* - **false**
*/
public Builder retrying(Boolean retrying) {
this.retrying = retrying;
return this;
}
public EtlDemoListRetryState build() {
return new EtlDemoListRetryState(this);
}
}
}
public static class EtlDemoListReverseJobDataInitializationStatus extends TeaModel {
@com.aliyun.core.annotation.NameInMap("ErrorMessage")
private String errorMessage;
@com.aliyun.core.annotation.NameInMap("Percent")
private String percent;
@com.aliyun.core.annotation.NameInMap("Progress")
private String progress;
@com.aliyun.core.annotation.NameInMap("Status")
private String status;
private EtlDemoListReverseJobDataInitializationStatus(Builder builder) {
this.errorMessage = builder.errorMessage;
this.percent = builder.percent;
this.progress = builder.progress;
this.status = builder.status;
}
public static Builder builder() {
return new Builder();
}
public static EtlDemoListReverseJobDataInitializationStatus create() {
return builder().build();
}
/**
* @return errorMessage
*/
public String getErrorMessage() {
return this.errorMessage;
}
/**
* @return percent
*/
public String getPercent() {
return this.percent;
}
/**
* @return progress
*/
public String getProgress() {
return this.progress;
}
/**
* @return status
*/
public String getStatus() {
return this.status;
}
public static final class Builder {
private String errorMessage;
private String percent;
private String progress;
private String status;
/**
* The error message returned if initial full data synchronization failed.
*/
public Builder errorMessage(String errorMessage) {
this.errorMessage = errorMessage;
return this;
}
/**
* The progress of initial full data synchronization. Unit: percentage.
*/
public Builder percent(String percent) {
this.percent = percent;
return this;
}
/**
* The number of entries that have been synchronized during initial full data synchronization.
*/
public Builder progress(String progress) {
this.progress = progress;
return this;
}
/**
* The state of initial full data synchronization. Valid values:
*
*
* - **NotStarted**: The task is not started.
* - **Migrating**: The task is in progress.
* - **Failed**: The task failed.
* - **Finished**: The task is complete.
*/
public Builder status(String status) {
this.status = status;
return this;
}
public EtlDemoListReverseJobDataInitializationStatus build() {
return new EtlDemoListReverseJobDataInitializationStatus(this);
}
}
}
public static class EtlDemoListReverseJobDataSynchronizationStatus extends TeaModel {
@com.aliyun.core.annotation.NameInMap("ErrorMessage")
private String errorMessage;
@com.aliyun.core.annotation.NameInMap("NeedUpgrade")
private Boolean needUpgrade;
@com.aliyun.core.annotation.NameInMap("Percent")
private String percent;
@com.aliyun.core.annotation.NameInMap("Progress")
private String progress;
@com.aliyun.core.annotation.NameInMap("Status")
private String status;
private EtlDemoListReverseJobDataSynchronizationStatus(Builder builder) {
this.errorMessage = builder.errorMessage;
this.needUpgrade = builder.needUpgrade;
this.percent = builder.percent;
this.progress = builder.progress;
this.status = builder.status;
}
public static Builder builder() {
return new Builder();
}
public static EtlDemoListReverseJobDataSynchronizationStatus create() {
return builder().build();
}
/**
* @return errorMessage
*/
public String getErrorMessage() {
return this.errorMessage;
}
/**
* @return needUpgrade
*/
public Boolean getNeedUpgrade() {
return this.needUpgrade;
}
/**
* @return percent
*/
public String getPercent() {
return this.percent;
}
/**
* @return progress
*/
public String getProgress() {
return this.progress;
}
/**
* @return status
*/
public String getStatus() {
return this.status;
}
public static final class Builder {
private String errorMessage;
private Boolean needUpgrade;
private String percent;
private String progress;
private String status;
/**
* The error message returned if incremental data synchronization failed.
*/
public Builder errorMessage(String errorMessage) {
this.errorMessage = errorMessage;
return this;
}
/**
* Indicates whether the instance needs to be upgraded. Valid values:
*
*
* - **true**
* - **false**
*
* > To upgrade a DTS instance, call the [TransferInstanceClass](~~281093~~) operation.
*/
public Builder needUpgrade(Boolean needUpgrade) {
this.needUpgrade = needUpgrade;
return this;
}
/**
* The progress of incremental data synchronization. Unit: percentage.
*/
public Builder percent(String percent) {
this.percent = percent;
return this;
}
/**
* The number of entries that have been migrated or synchronized during incremental data migration or synchronization.
*/
public Builder progress(String progress) {
this.progress = progress;
return this;
}
/**
* The state of incremental data synchronization.
*/
public Builder status(String status) {
this.status = status;
return this;
}
public EtlDemoListReverseJobDataSynchronizationStatus build() {
return new EtlDemoListReverseJobDataSynchronizationStatus(this);
}
}
}
public static class EtlDemoListReverseJobDestinationEndpoint extends TeaModel {
@com.aliyun.core.annotation.NameInMap("DatabaseName")
private String databaseName;
@com.aliyun.core.annotation.NameInMap("EngineName")
private String engineName;
@com.aliyun.core.annotation.NameInMap("InstanceID")
private String instanceID;
@com.aliyun.core.annotation.NameInMap("InstanceType")
private String instanceType;
@com.aliyun.core.annotation.NameInMap("Ip")
private String ip;
@com.aliyun.core.annotation.NameInMap("OracleSID")
private String oracleSID;
@com.aliyun.core.annotation.NameInMap("Port")
private String port;
@com.aliyun.core.annotation.NameInMap("Region")
private String region;
@com.aliyun.core.annotation.NameInMap("SslSolutionEnum")
private String sslSolutionEnum;
@com.aliyun.core.annotation.NameInMap("UserName")
private String userName;
private EtlDemoListReverseJobDestinationEndpoint(Builder builder) {
this.databaseName = builder.databaseName;
this.engineName = builder.engineName;
this.instanceID = builder.instanceID;
this.instanceType = builder.instanceType;
this.ip = builder.ip;
this.oracleSID = builder.oracleSID;
this.port = builder.port;
this.region = builder.region;
this.sslSolutionEnum = builder.sslSolutionEnum;
this.userName = builder.userName;
}
public static Builder builder() {
return new Builder();
}
public static EtlDemoListReverseJobDestinationEndpoint create() {
return builder().build();
}
/**
* @return databaseName
*/
public String getDatabaseName() {
return this.databaseName;
}
/**
* @return engineName
*/
public String getEngineName() {
return this.engineName;
}
/**
* @return instanceID
*/
public String getInstanceID() {
return this.instanceID;
}
/**
* @return instanceType
*/
public String getInstanceType() {
return this.instanceType;
}
/**
* @return ip
*/
public String getIp() {
return this.ip;
}
/**
* @return oracleSID
*/
public String getOracleSID() {
return this.oracleSID;
}
/**
* @return port
*/
public String getPort() {
return this.port;
}
/**
* @return region
*/
public String getRegion() {
return this.region;
}
/**
* @return sslSolutionEnum
*/
public String getSslSolutionEnum() {
return this.sslSolutionEnum;
}
/**
* @return userName
*/
public String getUserName() {
return this.userName;
}
public static final class Builder {
private String databaseName;
private String engineName;
private String instanceID;
private String instanceType;
private String ip;
private String oracleSID;
private String port;
private String region;
private String sslSolutionEnum;
private String userName;
/**
* The name of the database that contains the synchronized objects in the destination instance.
*/
public Builder databaseName(String databaseName) {
this.databaseName = databaseName;
return this;
}
/**
* The database engine of the destination instance.
*/
public Builder engineName(String engineName) {
this.engineName = engineName;
return this;
}
/**
* The ID of the destination instance.
*/
public Builder instanceID(String instanceID) {
this.instanceID = instanceID;
return this;
}
/**
* The type of the destination instance.
*/
public Builder instanceType(String instanceType) {
this.instanceType = instanceType;
return this;
}
/**
* The endpoint of the destination instance.
*/
public Builder ip(String ip) {
this.ip = ip;
return this;
}
/**
* The SID of the Oracle database.
*
*
* > This parameter is returned only if the returned value of **EngineName** of the destination instance is **Oracle** and the Oracle database is deployed in a non-RAC architecture.
*/
public Builder oracleSID(String oracleSID) {
this.oracleSID = oracleSID;
return this;
}
/**
* The port number of the destination instance.
*/
public Builder port(String port) {
this.port = port;
return this;
}
/**
* The ID of the region in which the destination instance resides. For more information, see [Supported regions](~~141033~~).
*/
public Builder region(String region) {
this.region = region;
return this;
}
/**
* Indicates whether SSL encryption is enabled. Valid values:
*
*
* - **DISABLE**: SSL encryption is disabled.
* - **ENABLE_WITH_CERTIFICATE**: SSL encryption is enabled and the CA certificate is uploaded.
* - **ENABLE_ONLY_4_MONGODB_ALTAS**: SSL encryption is enabled for the connection with an AWS MongoDB Altas database.
* - **ENABLE_ONLY_4_KAFKA_SCRAM_SHA_256**: SCRAM-SHA-256 is used to encrypt the connection with a Kafka cluster.
*/
public Builder sslSolutionEnum(String sslSolutionEnum) {
this.sslSolutionEnum = sslSolutionEnum;
return this;
}
/**
* The database account of the destination instance.
*/
public Builder userName(String userName) {
this.userName = userName;
return this;
}
public EtlDemoListReverseJobDestinationEndpoint build() {
return new EtlDemoListReverseJobDestinationEndpoint(this);
}
}
}
public static class EtlDemoListReverseJobMigrationMode extends TeaModel {
@com.aliyun.core.annotation.NameInMap("DataInitialization")
private Boolean dataInitialization;
@com.aliyun.core.annotation.NameInMap("DataSynchronization")
private Boolean dataSynchronization;
@com.aliyun.core.annotation.NameInMap("StructureInitialization")
private Boolean structureInitialization;
private EtlDemoListReverseJobMigrationMode(Builder builder) {
this.dataInitialization = builder.dataInitialization;
this.dataSynchronization = builder.dataSynchronization;
this.structureInitialization = builder.structureInitialization;
}
public static Builder builder() {
return new Builder();
}
public static EtlDemoListReverseJobMigrationMode create() {
return builder().build();
}
/**
* @return dataInitialization
*/
public Boolean getDataInitialization() {
return this.dataInitialization;
}
/**
* @return dataSynchronization
*/
public Boolean getDataSynchronization() {
return this.dataSynchronization;
}
/**
* @return structureInitialization
*/
public Boolean getStructureInitialization() {
return this.structureInitialization;
}
public static final class Builder {
private Boolean dataInitialization;
private Boolean dataSynchronization;
private Boolean structureInitialization;
/**
* Indicates whether full data migration or initial full data synchronization is performed. Valid values:
*
*
* - **true**
* - **false**
*/
public Builder dataInitialization(Boolean dataInitialization) {
this.dataInitialization = dataInitialization;
return this;
}
/**
* Indicates whether incremental data migration or synchronization is performed. Valid values:
*
*
* - **true**
* - **false**
*/
public Builder dataSynchronization(Boolean dataSynchronization) {
this.dataSynchronization = dataSynchronization;
return this;
}
/**
* Indicates whether schema migration or initial schema synchronization is performed. Valid values:
*
*
* - **true**
* - **false**
*/
public Builder structureInitialization(Boolean structureInitialization) {
this.structureInitialization = structureInitialization;
return this;
}
public EtlDemoListReverseJobMigrationMode build() {
return new EtlDemoListReverseJobMigrationMode(this);
}
}
}
public static class EtlDemoListReverseJobPerformance extends TeaModel {
@com.aliyun.core.annotation.NameInMap("Flow")
private String flow;
@com.aliyun.core.annotation.NameInMap("Rps")
private String rps;
private EtlDemoListReverseJobPerformance(Builder builder) {
this.flow = builder.flow;
this.rps = builder.rps;
}
public static Builder builder() {
return new Builder();
}
public static EtlDemoListReverseJobPerformance create() {
return builder().build();
}
/**
* @return flow
*/
public String getFlow() {
return this.flow;
}
/**
* @return rps
*/
public String getRps() {
return this.rps;
}
public static final class Builder {
private String flow;
private String rps;
/**
* The size of data that is migrated or synchronized per second. Unit: MB/s.
*/
public Builder flow(String flow) {
this.flow = flow;
return this;
}
/**
* The number of times that SQL statements are migrated or synchronized per second, including BEGIN, COMMIT, DML, and DDL statements. DML statements include INSERT, DELETE, and UPDATE.
*/
public Builder rps(String rps) {
this.rps = rps;
return this;
}
public EtlDemoListReverseJobPerformance build() {
return new EtlDemoListReverseJobPerformance(this);
}
}
}
public static class ReverseJobPrecheckStatusDetail extends TeaModel {
@com.aliyun.core.annotation.NameInMap("CheckItem")
private String checkItem;
@com.aliyun.core.annotation.NameInMap("CheckItemDescription")
private String checkItemDescription;
@com.aliyun.core.annotation.NameInMap("CheckResult")
private String checkResult;
@com.aliyun.core.annotation.NameInMap("FailedReason")
private String failedReason;
@com.aliyun.core.annotation.NameInMap("RepairMethod")
private String repairMethod;
private ReverseJobPrecheckStatusDetail(Builder builder) {
this.checkItem = builder.checkItem;
this.checkItemDescription = builder.checkItemDescription;
this.checkResult = builder.checkResult;
this.failedReason = builder.failedReason;
this.repairMethod = builder.repairMethod;
}
public static Builder builder() {
return new Builder();
}
public static ReverseJobPrecheckStatusDetail create() {
return builder().build();
}
/**
* @return checkItem
*/
public String getCheckItem() {
return this.checkItem;
}
/**
* @return checkItemDescription
*/
public String getCheckItemDescription() {
return this.checkItemDescription;
}
/**
* @return checkResult
*/
public String getCheckResult() {
return this.checkResult;
}
/**
* @return failedReason
*/
public String getFailedReason() {
return this.failedReason;
}
/**
* @return repairMethod
*/
public String getRepairMethod() {
return this.repairMethod;
}
public static final class Builder {
private String checkItem;
private String checkItemDescription;
private String checkResult;
private String failedReason;
private String repairMethod;
/**
* The name of the precheck item.
*/
public Builder checkItem(String checkItem) {
this.checkItem = checkItem;
return this;
}
/**
* The description of the precheck item.
*/
public Builder checkItemDescription(String checkItemDescription) {
this.checkItemDescription = checkItemDescription;
return this;
}
/**
* The precheck result. Valid values:
*
*
* - **Success**
* - **Failed**
*/
public Builder checkResult(String checkResult) {
this.checkResult = checkResult;
return this;
}
/**
* The error message returned if the task failed to pass the precheck.
*
*
* > This parameter is returned only if the returned value of **CheckResult** is **Failed**.
*/
public Builder failedReason(String failedReason) {
this.failedReason = failedReason;
return this;
}
/**
* The method to fix a precheck failure.
*
*
* > This parameter is returned only if the returned value of **CheckResult** is **Failed**.
*/
public Builder repairMethod(String repairMethod) {
this.repairMethod = repairMethod;
return this;
}
public ReverseJobPrecheckStatusDetail build() {
return new ReverseJobPrecheckStatusDetail(this);
}
}
}
public static class EtlDemoListReverseJobPrecheckStatus extends TeaModel {
@com.aliyun.core.annotation.NameInMap("Detail")
private java.util.List < ReverseJobPrecheckStatusDetail> detail;
@com.aliyun.core.annotation.NameInMap("ErrorMessage")
private String errorMessage;
@com.aliyun.core.annotation.NameInMap("Percent")
private String percent;
@com.aliyun.core.annotation.NameInMap("Status")
private String status;
private EtlDemoListReverseJobPrecheckStatus(Builder builder) {
this.detail = builder.detail;
this.errorMessage = builder.errorMessage;
this.percent = builder.percent;
this.status = builder.status;
}
public static Builder builder() {
return new Builder();
}
public static EtlDemoListReverseJobPrecheckStatus create() {
return builder().build();
}
/**
* @return detail
*/
public java.util.List < ReverseJobPrecheckStatusDetail> getDetail() {
return this.detail;
}
/**
* @return errorMessage
*/
public String getErrorMessage() {
return this.errorMessage;
}
/**
* @return percent
*/
public String getPercent() {
return this.percent;
}
/**
* @return status
*/
public String getStatus() {
return this.status;
}
public static final class Builder {
private java.util.List < ReverseJobPrecheckStatusDetail> detail;
private String errorMessage;
private String percent;
private String status;
/**
* The result of each precheck item.
*/
public Builder detail(java.util.List < ReverseJobPrecheckStatusDetail> detail) {
this.detail = detail;
return this;
}
/**
* The error message returned if the precheck failed.
*/
public Builder errorMessage(String errorMessage) {
this.errorMessage = errorMessage;
return this;
}
/**
* The precheck progress. Unit: percentage.
*/
public Builder percent(String percent) {
this.percent = percent;
return this;
}
/**
* The precheck state. Valid values:
*
*
* - **NotStarted**: The precheck is not started.
* - **Suspending**: The precheck is paused.
* - **Checking**: The precheck is in progress.
* - **Failed**: The precheck failed.
* - **Finished**: The precheck is complete.
*/
public Builder status(String status) {
this.status = status;
return this;
}
public EtlDemoListReverseJobPrecheckStatus build() {
return new EtlDemoListReverseJobPrecheckStatus(this);
}
}
}
public static class ReverseJobSourceEndpoint extends TeaModel {
@com.aliyun.core.annotation.NameInMap("DatabaseName")
private String databaseName;
@com.aliyun.core.annotation.NameInMap("EngineName")
private String engineName;
@com.aliyun.core.annotation.NameInMap("InstanceID")
private String instanceID;
@com.aliyun.core.annotation.NameInMap("InstanceType")
private String instanceType;
@com.aliyun.core.annotation.NameInMap("Ip")
private String ip;
@com.aliyun.core.annotation.NameInMap("OracleSID")
private String oracleSID;
@com.aliyun.core.annotation.NameInMap("Port")
private String port;
@com.aliyun.core.annotation.NameInMap("Region")
private String region;
@com.aliyun.core.annotation.NameInMap("SslSolutionEnum")
private String sslSolutionEnum;
@com.aliyun.core.annotation.NameInMap("UserName")
private String userName;
private ReverseJobSourceEndpoint(Builder builder) {
this.databaseName = builder.databaseName;
this.engineName = builder.engineName;
this.instanceID = builder.instanceID;
this.instanceType = builder.instanceType;
this.ip = builder.ip;
this.oracleSID = builder.oracleSID;
this.port = builder.port;
this.region = builder.region;
this.sslSolutionEnum = builder.sslSolutionEnum;
this.userName = builder.userName;
}
public static Builder builder() {
return new Builder();
}
public static ReverseJobSourceEndpoint create() {
return builder().build();
}
/**
* @return databaseName
*/
public String getDatabaseName() {
return this.databaseName;
}
/**
* @return engineName
*/
public String getEngineName() {
return this.engineName;
}
/**
* @return instanceID
*/
public String getInstanceID() {
return this.instanceID;
}
/**
* @return instanceType
*/
public String getInstanceType() {
return this.instanceType;
}
/**
* @return ip
*/
public String getIp() {
return this.ip;
}
/**
* @return oracleSID
*/
public String getOracleSID() {
return this.oracleSID;
}
/**
* @return port
*/
public String getPort() {
return this.port;
}
/**
* @return region
*/
public String getRegion() {
return this.region;
}
/**
* @return sslSolutionEnum
*/
public String getSslSolutionEnum() {
return this.sslSolutionEnum;
}
/**
* @return userName
*/
public String getUserName() {
return this.userName;
}
public static final class Builder {
private String databaseName;
private String engineName;
private String instanceID;
private String instanceType;
private String ip;
private String oracleSID;
private String port;
private String region;
private String sslSolutionEnum;
private String userName;
/**
* The name of the database that contains the objects to be migrated from the source instance.
*/
public Builder databaseName(String databaseName) {
this.databaseName = databaseName;
return this;
}
/**
* The database engine of the source instance.
*/
public Builder engineName(String engineName) {
this.engineName = engineName;
return this;
}
/**
* The ID of the source instance.
*/
public Builder instanceID(String instanceID) {
this.instanceID = instanceID;
return this;
}
/**
* The type of the source instance.
*/
public Builder instanceType(String instanceType) {
this.instanceType = instanceType;
return this;
}
/**
* The endpoint of the source instance.
*/
public Builder ip(String ip) {
this.ip = ip;
return this;
}
/**
* The SID of the Oracle database.
*
*
* > This parameter is returned only if the returned value of **EngineName** of the source instance is **Oracle** and the Oracle database is deployed in a non-RAC architecture.
*/
public Builder oracleSID(String oracleSID) {
this.oracleSID = oracleSID;
return this;
}
/**
* The port number of the source instance.
*/
public Builder port(String port) {
this.port = port;
return this;
}
/**
* The ID of the region in which the source instance resides. For more information, see [Supported regions](~~141033~~).
*/
public Builder region(String region) {
this.region = region;
return this;
}
/**
* Indicates whether SSL encryption is enabled. Valid values:
*
*
* - **DISABLE**: SSL encryption is disabled.
* - **ENABLE_WITH_CERTIFICATE**: SSL encryption is enabled and the CA certificate is uploaded.
* - **ENABLE_ONLY_4_MONGODB_ALTAS**: SSL encryption is enabled for the connection with an AWS MongoDB Altas database.
* - **ENABLE_ONLY_4_KAFKA_SCRAM_SHA_256**: SCRAM-SHA-256 is used to encrypt the connection with a Kafka cluster.
*/
public Builder sslSolutionEnum(String sslSolutionEnum) {
this.sslSolutionEnum = sslSolutionEnum;
return this;
}
/**
* The database account of the source instance.
*/
public Builder userName(String userName) {
this.userName = userName;
return this;
}
public ReverseJobSourceEndpoint build() {
return new ReverseJobSourceEndpoint(this);
}
}
}
public static class ReverseJobStructureInitializationStatus extends TeaModel {
@com.aliyun.core.annotation.NameInMap("ErrorMessage")
private String errorMessage;
@com.aliyun.core.annotation.NameInMap("Percent")
private String percent;
@com.aliyun.core.annotation.NameInMap("Progress")
private String progress;
@com.aliyun.core.annotation.NameInMap("Status")
private String status;
private ReverseJobStructureInitializationStatus(Builder builder) {
this.errorMessage = builder.errorMessage;
this.percent = builder.percent;
this.progress = builder.progress;
this.status = builder.status;
}
public static Builder builder() {
return new Builder();
}
public static ReverseJobStructureInitializationStatus create() {
return builder().build();
}
/**
* @return errorMessage
*/
public String getErrorMessage() {
return this.errorMessage;
}
/**
* @return percent
*/
public String getPercent() {
return this.percent;
}
/**
* @return progress
*/
public String getProgress() {
return this.progress;
}
/**
* @return status
*/
public String getStatus() {
return this.status;
}
public static final class Builder {
private String errorMessage;
private String percent;
private String progress;
private String status;
/**
* The error message returned if initial schema synchronization failed.
*/
public Builder errorMessage(String errorMessage) {
this.errorMessage = errorMessage;
return this;
}
/**
* The progress of initial schema synchronization. Unit: percentage.
*/
public Builder percent(String percent) {
this.percent = percent;
return this;
}
/**
* The number of tables that have been synchronized during initial schema synchronization.
*/
public Builder progress(String progress) {
this.progress = progress;
return this;
}
/**
* The state of initial schema synchronization. Valid values:
*
*
* - **NotStarted**: The task is not started.
* - **Migrating**: The task is in progress.
* - **Failed**: The task failed.
* - **Finished**: The task is complete.
*/
public Builder status(String status) {
this.status = status;
return this;
}
public ReverseJobStructureInitializationStatus build() {
return new ReverseJobStructureInitializationStatus(this);
}
}
}
public static class EtlDemoListReverseJob extends TeaModel {
@com.aliyun.core.annotation.NameInMap("Checkpoint")
private String checkpoint;
@com.aliyun.core.annotation.NameInMap("CreateTime")
private String createTime;
@com.aliyun.core.annotation.NameInMap("DataInitializationStatus")
private EtlDemoListReverseJobDataInitializationStatus dataInitializationStatus;
@com.aliyun.core.annotation.NameInMap("DataSynchronizationStatus")
private EtlDemoListReverseJobDataSynchronizationStatus dataSynchronizationStatus;
@com.aliyun.core.annotation.NameInMap("DbObject")
private String dbObject;
@com.aliyun.core.annotation.NameInMap("Delay")
private Long delay;
@com.aliyun.core.annotation.NameInMap("DestinationEndpoint")
private EtlDemoListReverseJobDestinationEndpoint destinationEndpoint;
@com.aliyun.core.annotation.NameInMap("DtsInstanceID")
private String dtsInstanceID;
@com.aliyun.core.annotation.NameInMap("DtsJobClass")
private String dtsJobClass;
@com.aliyun.core.annotation.NameInMap("DtsJobDirection")
private String dtsJobDirection;
@com.aliyun.core.annotation.NameInMap("DtsJobId")
private String dtsJobId;
@com.aliyun.core.annotation.NameInMap("DtsJobName")
private String dtsJobName;
@com.aliyun.core.annotation.NameInMap("ErrorMessage")
private String errorMessage;
@com.aliyun.core.annotation.NameInMap("EtlSafeCheckpoint")
private String etlSafeCheckpoint;
@com.aliyun.core.annotation.NameInMap("ExpireTime")
private String expireTime;
@com.aliyun.core.annotation.NameInMap("MigrationMode")
private EtlDemoListReverseJobMigrationMode migrationMode;
@com.aliyun.core.annotation.NameInMap("PayType")
private String payType;
@com.aliyun.core.annotation.NameInMap("Performance")
private EtlDemoListReverseJobPerformance performance;
@com.aliyun.core.annotation.NameInMap("PrecheckStatus")
private EtlDemoListReverseJobPrecheckStatus precheckStatus;
@com.aliyun.core.annotation.NameInMap("Reserved")
private String reserved;
@com.aliyun.core.annotation.NameInMap("SourceEndpoint")
private ReverseJobSourceEndpoint sourceEndpoint;
@com.aliyun.core.annotation.NameInMap("Status")
private String status;
@com.aliyun.core.annotation.NameInMap("StructureInitializationStatus")
private ReverseJobStructureInitializationStatus structureInitializationStatus;
private EtlDemoListReverseJob(Builder builder) {
this.checkpoint = builder.checkpoint;
this.createTime = builder.createTime;
this.dataInitializationStatus = builder.dataInitializationStatus;
this.dataSynchronizationStatus = builder.dataSynchronizationStatus;
this.dbObject = builder.dbObject;
this.delay = builder.delay;
this.destinationEndpoint = builder.destinationEndpoint;
this.dtsInstanceID = builder.dtsInstanceID;
this.dtsJobClass = builder.dtsJobClass;
this.dtsJobDirection = builder.dtsJobDirection;
this.dtsJobId = builder.dtsJobId;
this.dtsJobName = builder.dtsJobName;
this.errorMessage = builder.errorMessage;
this.etlSafeCheckpoint = builder.etlSafeCheckpoint;
this.expireTime = builder.expireTime;
this.migrationMode = builder.migrationMode;
this.payType = builder.payType;
this.performance = builder.performance;
this.precheckStatus = builder.precheckStatus;
this.reserved = builder.reserved;
this.sourceEndpoint = builder.sourceEndpoint;
this.status = builder.status;
this.structureInitializationStatus = builder.structureInitializationStatus;
}
public static Builder builder() {
return new Builder();
}
public static EtlDemoListReverseJob create() {
return builder().build();
}
/**
* @return checkpoint
*/
public String getCheckpoint() {
return this.checkpoint;
}
/**
* @return createTime
*/
public String getCreateTime() {
return this.createTime;
}
/**
* @return dataInitializationStatus
*/
public EtlDemoListReverseJobDataInitializationStatus getDataInitializationStatus() {
return this.dataInitializationStatus;
}
/**
* @return dataSynchronizationStatus
*/
public EtlDemoListReverseJobDataSynchronizationStatus getDataSynchronizationStatus() {
return this.dataSynchronizationStatus;
}
/**
* @return dbObject
*/
public String getDbObject() {
return this.dbObject;
}
/**
* @return delay
*/
public Long getDelay() {
return this.delay;
}
/**
* @return destinationEndpoint
*/
public EtlDemoListReverseJobDestinationEndpoint getDestinationEndpoint() {
return this.destinationEndpoint;
}
/**
* @return dtsInstanceID
*/
public String getDtsInstanceID() {
return this.dtsInstanceID;
}
/**
* @return dtsJobClass
*/
public String getDtsJobClass() {
return this.dtsJobClass;
}
/**
* @return dtsJobDirection
*/
public String getDtsJobDirection() {
return this.dtsJobDirection;
}
/**
* @return dtsJobId
*/
public String getDtsJobId() {
return this.dtsJobId;
}
/**
* @return dtsJobName
*/
public String getDtsJobName() {
return this.dtsJobName;
}
/**
* @return errorMessage
*/
public String getErrorMessage() {
return this.errorMessage;
}
/**
* @return etlSafeCheckpoint
*/
public String getEtlSafeCheckpoint() {
return this.etlSafeCheckpoint;
}
/**
* @return expireTime
*/
public String getExpireTime() {
return this.expireTime;
}
/**
* @return migrationMode
*/
public EtlDemoListReverseJobMigrationMode getMigrationMode() {
return this.migrationMode;
}
/**
* @return payType
*/
public String getPayType() {
return this.payType;
}
/**
* @return performance
*/
public EtlDemoListReverseJobPerformance getPerformance() {
return this.performance;
}
/**
* @return precheckStatus
*/
public EtlDemoListReverseJobPrecheckStatus getPrecheckStatus() {
return this.precheckStatus;
}
/**
* @return reserved
*/
public String getReserved() {
return this.reserved;
}
/**
* @return sourceEndpoint
*/
public ReverseJobSourceEndpoint getSourceEndpoint() {
return this.sourceEndpoint;
}
/**
* @return status
*/
public String getStatus() {
return this.status;
}
/**
* @return structureInitializationStatus
*/
public ReverseJobStructureInitializationStatus getStructureInitializationStatus() {
return this.structureInitializationStatus;
}
public static final class Builder {
private String checkpoint;
private String createTime;
private EtlDemoListReverseJobDataInitializationStatus dataInitializationStatus;
private EtlDemoListReverseJobDataSynchronizationStatus dataSynchronizationStatus;
private String dbObject;
private Long delay;
private EtlDemoListReverseJobDestinationEndpoint destinationEndpoint;
private String dtsInstanceID;
private String dtsJobClass;
private String dtsJobDirection;
private String dtsJobId;
private String dtsJobName;
private String errorMessage;
private String etlSafeCheckpoint;
private String expireTime;
private EtlDemoListReverseJobMigrationMode migrationMode;
private String payType;
private EtlDemoListReverseJobPerformance performance;
private EtlDemoListReverseJobPrecheckStatus precheckStatus;
private String reserved;
private ReverseJobSourceEndpoint sourceEndpoint;
private String status;
private ReverseJobStructureInitializationStatus structureInitializationStatus;
/**
* The start offset of incremental data synchronization. This value is a UNIX timestamp representing the number of seconds that have elapsed since January 1, 1970, 00:00:00 UTC.
*/
public Builder checkpoint(String checkpoint) {
this.checkpoint = checkpoint;
return this;
}
/**
* The time when the task was created. The time follows the ISO 8601 standard in the *yyyy-MM-dd*T*HH:mm:ss*Z format. The time is displayed in UTC.
*/
public Builder createTime(String createTime) {
this.createTime = createTime;
return this;
}
/**
* The state of initial full data synchronization.
*/
public Builder dataInitializationStatus(EtlDemoListReverseJobDataInitializationStatus dataInitializationStatus) {
this.dataInitializationStatus = dataInitializationStatus;
return this;
}
/**
* The state of incremental data synchronization.
*/
public Builder dataSynchronizationStatus(EtlDemoListReverseJobDataSynchronizationStatus dataSynchronizationStatus) {
this.dataSynchronizationStatus = dataSynchronizationStatus;
return this;
}
/**
* The schema of the objects that you want to synchronize. The value is a JSON string and can contain regular expressions. For more information, see Objects of DTS tasks.
*/
public Builder dbObject(String dbObject) {
this.dbObject = dbObject;
return this;
}
/**
* The latency of incremental data synchronization. Unit: seconds.
*/
public Builder delay(Long delay) {
this.delay = delay;
return this;
}
/**
* The connection settings of the destination instance.
*/
public Builder destinationEndpoint(EtlDemoListReverseJobDestinationEndpoint destinationEndpoint) {
this.destinationEndpoint = destinationEndpoint;
return this;
}
/**
* The ID of the data synchronization instance.
*/
public Builder dtsInstanceID(String dtsInstanceID) {
this.dtsInstanceID = dtsInstanceID;
return this;
}
/**
* The instance class.
*
*
* > For more information about the test performance of each instance class, see [Specifications of data synchronization instances](~~26605~~).
*/
public Builder dtsJobClass(String dtsJobClass) {
this.dtsJobClass = dtsJobClass;
return this;
}
/**
* The synchronization direction. **Reverse** is returned.
*/
public Builder dtsJobDirection(String dtsJobDirection) {
this.dtsJobDirection = dtsJobDirection;
return this;
}
/**
* The ID of the synchronization task.
*/
public Builder dtsJobId(String dtsJobId) {
this.dtsJobId = dtsJobId;
return this;
}
/**
* The name of the data synchronization task.
*/
public Builder dtsJobName(String dtsJobName) {
this.dtsJobName = dtsJobName;
return this;
}
/**
* The error message returned if the task failed.
*/
public Builder errorMessage(String errorMessage) {
this.errorMessage = errorMessage;
return this;
}
/**
* The checkpoint of the ETL task.
*/
public Builder etlSafeCheckpoint(String etlSafeCheckpoint) {
this.etlSafeCheckpoint = etlSafeCheckpoint;
return this;
}
/**
* The time when the instance expires. The time follows the ISO 8601 standard in the* yyyy-MM-dd*T*HH:mm:ss*Z format. The time is displayed in UTC.
*
*
* > This parameter is returned only if the returned value of **PayType** is **PrePaid**.
*/
public Builder expireTime(String expireTime) {
this.expireTime = expireTime;
return this;
}
/**
* The migration types or initial synchronization types.
*/
public Builder migrationMode(EtlDemoListReverseJobMigrationMode migrationMode) {
this.migrationMode = migrationMode;
return this;
}
/**
* The billing method of the DTS instance. Valid values:
*
*
* - **PrePaid**: subscription
* - **PostPaid**: pay-as-you-go
*/
public Builder payType(String payType) {
this.payType = payType;
return this;
}
/**
* The performance of the data migration or synchronization instance.
*/
public Builder performance(EtlDemoListReverseJobPerformance performance) {
this.performance = performance;
return this;
}
/**
* The precheck state.
*/
public Builder precheckStatus(EtlDemoListReverseJobPrecheckStatus precheckStatus) {
this.precheckStatus = precheckStatus;
return this;
}
/**
* The reserved parameter of DTS. The value is a JSON string. You can specify this parameter to meet specific requirements, for example, whether to automatically start a precheck. For more information, see [MigrationReserved](~~176470~~).
*/
public Builder reserved(String reserved) {
this.reserved = reserved;
return this;
}
/**
* The connection settings of the source instance.
*/
public Builder sourceEndpoint(ReverseJobSourceEndpoint sourceEndpoint) {
this.sourceEndpoint = sourceEndpoint;
return this;
}
/**
* The state of the DTS instance. For more information about the valid values, see the description of the request parameter **Status**.
*/
public Builder status(String status) {
this.status = status;
return this;
}
/**
* The state of initial schema synchronization.
*/
public Builder structureInitializationStatus(ReverseJobStructureInitializationStatus structureInitializationStatus) {
this.structureInitializationStatus = structureInitializationStatus;
return this;
}
public EtlDemoListReverseJob build() {
return new EtlDemoListReverseJob(this);
}
}
}
public static class EtlDemoListSourceEndpoint extends TeaModel {
@com.aliyun.core.annotation.NameInMap("DatabaseName")
private String databaseName;
@com.aliyun.core.annotation.NameInMap("EngineName")
private String engineName;
@com.aliyun.core.annotation.NameInMap("InstanceID")
private String instanceID;
@com.aliyun.core.annotation.NameInMap("InstanceType")
private String instanceType;
@com.aliyun.core.annotation.NameInMap("Ip")
private String ip;
@com.aliyun.core.annotation.NameInMap("OracleSID")
private String oracleSID;
@com.aliyun.core.annotation.NameInMap("Port")
private String port;
@com.aliyun.core.annotation.NameInMap("Region")
private String region;
@com.aliyun.core.annotation.NameInMap("SslSolutionEnum")
private String sslSolutionEnum;
@com.aliyun.core.annotation.NameInMap("UserName")
private String userName;
private EtlDemoListSourceEndpoint(Builder builder) {
this.databaseName = builder.databaseName;
this.engineName = builder.engineName;
this.instanceID = builder.instanceID;
this.instanceType = builder.instanceType;
this.ip = builder.ip;
this.oracleSID = builder.oracleSID;
this.port = builder.port;
this.region = builder.region;
this.sslSolutionEnum = builder.sslSolutionEnum;
this.userName = builder.userName;
}
public static Builder builder() {
return new Builder();
}
public static EtlDemoListSourceEndpoint create() {
return builder().build();
}
/**
* @return databaseName
*/
public String getDatabaseName() {
return this.databaseName;
}
/**
* @return engineName
*/
public String getEngineName() {
return this.engineName;
}
/**
* @return instanceID
*/
public String getInstanceID() {
return this.instanceID;
}
/**
* @return instanceType
*/
public String getInstanceType() {
return this.instanceType;
}
/**
* @return ip
*/
public String getIp() {
return this.ip;
}
/**
* @return oracleSID
*/
public String getOracleSID() {
return this.oracleSID;
}
/**
* @return port
*/
public String getPort() {
return this.port;
}
/**
* @return region
*/
public String getRegion() {
return this.region;
}
/**
* @return sslSolutionEnum
*/
public String getSslSolutionEnum() {
return this.sslSolutionEnum;
}
/**
* @return userName
*/
public String getUserName() {
return this.userName;
}
public static final class Builder {
private String databaseName;
private String engineName;
private String instanceID;
private String instanceType;
private String ip;
private String oracleSID;
private String port;
private String region;
private String sslSolutionEnum;
private String userName;
/**
* The name of the database that contains the objects to be migrated from the source instance.
*/
public Builder databaseName(String databaseName) {
this.databaseName = databaseName;
return this;
}
/**
* The database engine of the source instance.
*/
public Builder engineName(String engineName) {
this.engineName = engineName;
return this;
}
/**
* The ID of the source instance.
*/
public Builder instanceID(String instanceID) {
this.instanceID = instanceID;
return this;
}
/**
* The type of the source instance.
*/
public Builder instanceType(String instanceType) {
this.instanceType = instanceType;
return this;
}
/**
* The endpoint of the source instance.
*/
public Builder ip(String ip) {
this.ip = ip;
return this;
}
/**
* The SID of the Oracle database.
*
*
* > This parameter is returned only if the returned value of **EngineName** of the source instance is **Oracle** and the Oracle database is deployed in a non-RAC architecture.
*/
public Builder oracleSID(String oracleSID) {
this.oracleSID = oracleSID;
return this;
}
/**
* The port number of the source instance.
*/
public Builder port(String port) {
this.port = port;
return this;
}
/**
* The ID of the region in which the source instance resides. For more information, see [Supported regions](~~141033~~).
*/
public Builder region(String region) {
this.region = region;
return this;
}
/**
* Indicates whether SSL encryption is enabled. Valid values:
*
*
* - **DISABLE**: SSL encryption is disabled.
* - **ENABLE_WITH_CERTIFICATE**: SSL encryption is enabled and the CA certificate is uploaded.
* - **ENABLE_ONLY_4_MONGODB_ALTAS**: SSL encryption is enabled for the connection with an AWS MongoDB Altas database.
* - **ENABLE_ONLY_4_KAFKA_SCRAM_SHA_256**: SCRAM-SHA-256 is used to encrypt the connection with a Kafka cluster.
*/
public Builder sslSolutionEnum(String sslSolutionEnum) {
this.sslSolutionEnum = sslSolutionEnum;
return this;
}
/**
* The database account of the source instance.
*/
public Builder userName(String userName) {
this.userName = userName;
return this;
}
public EtlDemoListSourceEndpoint build() {
return new EtlDemoListSourceEndpoint(this);
}
}
}
public static class EtlDemoListStructureInitializationStatus extends TeaModel {
@com.aliyun.core.annotation.NameInMap("ErrorMessage")
private String errorMessage;
@com.aliyun.core.annotation.NameInMap("Percent")
private String percent;
@com.aliyun.core.annotation.NameInMap("Progress")
private String progress;
@com.aliyun.core.annotation.NameInMap("Status")
private String status;
private EtlDemoListStructureInitializationStatus(Builder builder) {
this.errorMessage = builder.errorMessage;
this.percent = builder.percent;
this.progress = builder.progress;
this.status = builder.status;
}
public static Builder builder() {
return new Builder();
}
public static EtlDemoListStructureInitializationStatus create() {
return builder().build();
}
/**
* @return errorMessage
*/
public String getErrorMessage() {
return this.errorMessage;
}
/**
* @return percent
*/
public String getPercent() {
return this.percent;
}
/**
* @return progress
*/
public String getProgress() {
return this.progress;
}
/**
* @return status
*/
public String getStatus() {
return this.status;
}
public static final class Builder {
private String errorMessage;
private String percent;
private String progress;
private String status;
/**
* The error message returned if schema migration or initial schema synchronization failed.
*/
public Builder errorMessage(String errorMessage) {
this.errorMessage = errorMessage;
return this;
}
/**
* The progress of schema migration or initial schema synchronization. Unit: percentage.
*/
public Builder percent(String percent) {
this.percent = percent;
return this;
}
/**
* The number of tables that have been migrated or synchronized during schema migration or initial schema synchronization.
*/
public Builder progress(String progress) {
this.progress = progress;
return this;
}
/**
* The state of schema migration or initial schema synchronization. Valid values:
*
*
* - **NotStarted**: The task is not started.
* - **Migrating**: The task is in progress.
* - **Failed**: The task failed.
* - **Finished**: The task is complete.
*/
public Builder status(String status) {
this.status = status;
return this;
}
public EtlDemoListStructureInitializationStatus build() {
return new EtlDemoListStructureInitializationStatus(this);
}
}
}
public static class EtlDemoListTagList extends TeaModel {
@com.aliyun.core.annotation.NameInMap("TagKey")
private String tagKey;
@com.aliyun.core.annotation.NameInMap("TagValue")
private String tagValue;
private EtlDemoListTagList(Builder builder) {
this.tagKey = builder.tagKey;
this.tagValue = builder.tagValue;
}
public static Builder builder() {
return new Builder();
}
public static EtlDemoListTagList create() {
return builder().build();
}
/**
* @return tagKey
*/
public String getTagKey() {
return this.tagKey;
}
/**
* @return tagValue
*/
public String getTagValue() {
return this.tagValue;
}
public static final class Builder {
private String tagKey;
private String tagValue;
/**
* The tag key.
*/
public Builder tagKey(String tagKey) {
this.tagKey = tagKey;
return this;
}
/**
* The tag value.
*/
public Builder tagValue(String tagValue) {
this.tagValue = tagValue;
return this;
}
public EtlDemoListTagList build() {
return new EtlDemoListTagList(this);
}
}
}
public static class EtlDemoList extends TeaModel {
@com.aliyun.core.annotation.NameInMap("AppName")
private String appName;
@com.aliyun.core.annotation.NameInMap("BeginTimestamp")
private String beginTimestamp;
@com.aliyun.core.annotation.NameInMap("Checkpoint")
private String checkpoint;
@com.aliyun.core.annotation.NameInMap("ConsumptionCheckpoint")
private String consumptionCheckpoint;
@com.aliyun.core.annotation.NameInMap("ConsumptionClient")
private String consumptionClient;
@com.aliyun.core.annotation.NameInMap("CreateTime")
private String createTime;
@com.aliyun.core.annotation.NameInMap("DataEtlStatus")
private EtlDemoListDataEtlStatus dataEtlStatus;
@com.aliyun.core.annotation.NameInMap("DataInitializationStatus")
private EtlDemoListDataInitializationStatus dataInitializationStatus;
@com.aliyun.core.annotation.NameInMap("DataSynchronizationStatus")
private EtlDemoListDataSynchronizationStatus dataSynchronizationStatus;
@com.aliyun.core.annotation.NameInMap("DbObject")
private String dbObject;
@com.aliyun.core.annotation.NameInMap("Delay")
private Long delay;
@com.aliyun.core.annotation.NameInMap("DestinationEndpoint")
private EtlDemoListDestinationEndpoint destinationEndpoint;
@com.aliyun.core.annotation.NameInMap("DtsInstanceID")
private String dtsInstanceID;
@com.aliyun.core.annotation.NameInMap("DtsJobClass")
private String dtsJobClass;
@com.aliyun.core.annotation.NameInMap("DtsJobDirection")
private String dtsJobDirection;
@com.aliyun.core.annotation.NameInMap("DtsJobId")
private String dtsJobId;
@com.aliyun.core.annotation.NameInMap("DtsJobName")
private String dtsJobName;
@com.aliyun.core.annotation.NameInMap("EndTimestamp")
private String endTimestamp;
@com.aliyun.core.annotation.NameInMap("ErrorMessage")
private String errorMessage;
@com.aliyun.core.annotation.NameInMap("EtlSafeCheckpoint")
private String etlSafeCheckpoint;
@com.aliyun.core.annotation.NameInMap("ExpireTime")
private String expireTime;
@com.aliyun.core.annotation.NameInMap("JobType")
private String jobType;
@com.aliyun.core.annotation.NameInMap("MigrationMode")
private EtlDemoListMigrationMode migrationMode;
@com.aliyun.core.annotation.NameInMap("OriginType")
private String originType;
@com.aliyun.core.annotation.NameInMap("PayType")
private String payType;
@com.aliyun.core.annotation.NameInMap("Performance")
private EtlDemoListPerformance performance;
@com.aliyun.core.annotation.NameInMap("PrecheckStatus")
private EtlDemoListPrecheckStatus precheckStatus;
@com.aliyun.core.annotation.NameInMap("Reserved")
private String reserved;
@com.aliyun.core.annotation.NameInMap("ResourceGroupDisplayName")
private String resourceGroupDisplayName;
@com.aliyun.core.annotation.NameInMap("ResourceGroupId")
private String resourceGroupId;
@com.aliyun.core.annotation.NameInMap("RetryState")
private EtlDemoListRetryState retryState;
@com.aliyun.core.annotation.NameInMap("ReverseJob")
private EtlDemoListReverseJob reverseJob;
@com.aliyun.core.annotation.NameInMap("SourceEndpoint")
private EtlDemoListSourceEndpoint sourceEndpoint;
@com.aliyun.core.annotation.NameInMap("Status")
private String status;
@com.aliyun.core.annotation.NameInMap("StructureInitializationStatus")
private EtlDemoListStructureInitializationStatus structureInitializationStatus;
@com.aliyun.core.annotation.NameInMap("TagList")
private java.util.List < EtlDemoListTagList> tagList;
private EtlDemoList(Builder builder) {
this.appName = builder.appName;
this.beginTimestamp = builder.beginTimestamp;
this.checkpoint = builder.checkpoint;
this.consumptionCheckpoint = builder.consumptionCheckpoint;
this.consumptionClient = builder.consumptionClient;
this.createTime = builder.createTime;
this.dataEtlStatus = builder.dataEtlStatus;
this.dataInitializationStatus = builder.dataInitializationStatus;
this.dataSynchronizationStatus = builder.dataSynchronizationStatus;
this.dbObject = builder.dbObject;
this.delay = builder.delay;
this.destinationEndpoint = builder.destinationEndpoint;
this.dtsInstanceID = builder.dtsInstanceID;
this.dtsJobClass = builder.dtsJobClass;
this.dtsJobDirection = builder.dtsJobDirection;
this.dtsJobId = builder.dtsJobId;
this.dtsJobName = builder.dtsJobName;
this.endTimestamp = builder.endTimestamp;
this.errorMessage = builder.errorMessage;
this.etlSafeCheckpoint = builder.etlSafeCheckpoint;
this.expireTime = builder.expireTime;
this.jobType = builder.jobType;
this.migrationMode = builder.migrationMode;
this.originType = builder.originType;
this.payType = builder.payType;
this.performance = builder.performance;
this.precheckStatus = builder.precheckStatus;
this.reserved = builder.reserved;
this.resourceGroupDisplayName = builder.resourceGroupDisplayName;
this.resourceGroupId = builder.resourceGroupId;
this.retryState = builder.retryState;
this.reverseJob = builder.reverseJob;
this.sourceEndpoint = builder.sourceEndpoint;
this.status = builder.status;
this.structureInitializationStatus = builder.structureInitializationStatus;
this.tagList = builder.tagList;
}
public static Builder builder() {
return new Builder();
}
public static EtlDemoList create() {
return builder().build();
}
/**
* @return appName
*/
public String getAppName() {
return this.appName;
}
/**
* @return beginTimestamp
*/
public String getBeginTimestamp() {
return this.beginTimestamp;
}
/**
* @return checkpoint
*/
public String getCheckpoint() {
return this.checkpoint;
}
/**
* @return consumptionCheckpoint
*/
public String getConsumptionCheckpoint() {
return this.consumptionCheckpoint;
}
/**
* @return consumptionClient
*/
public String getConsumptionClient() {
return this.consumptionClient;
}
/**
* @return createTime
*/
public String getCreateTime() {
return this.createTime;
}
/**
* @return dataEtlStatus
*/
public EtlDemoListDataEtlStatus getDataEtlStatus() {
return this.dataEtlStatus;
}
/**
* @return dataInitializationStatus
*/
public EtlDemoListDataInitializationStatus getDataInitializationStatus() {
return this.dataInitializationStatus;
}
/**
* @return dataSynchronizationStatus
*/
public EtlDemoListDataSynchronizationStatus getDataSynchronizationStatus() {
return this.dataSynchronizationStatus;
}
/**
* @return dbObject
*/
public String getDbObject() {
return this.dbObject;
}
/**
* @return delay
*/
public Long getDelay() {
return this.delay;
}
/**
* @return destinationEndpoint
*/
public EtlDemoListDestinationEndpoint getDestinationEndpoint() {
return this.destinationEndpoint;
}
/**
* @return dtsInstanceID
*/
public String getDtsInstanceID() {
return this.dtsInstanceID;
}
/**
* @return dtsJobClass
*/
public String getDtsJobClass() {
return this.dtsJobClass;
}
/**
* @return dtsJobDirection
*/
public String getDtsJobDirection() {
return this.dtsJobDirection;
}
/**
* @return dtsJobId
*/
public String getDtsJobId() {
return this.dtsJobId;
}
/**
* @return dtsJobName
*/
public String getDtsJobName() {
return this.dtsJobName;
}
/**
* @return endTimestamp
*/
public String getEndTimestamp() {
return this.endTimestamp;
}
/**
* @return errorMessage
*/
public String getErrorMessage() {
return this.errorMessage;
}
/**
* @return etlSafeCheckpoint
*/
public String getEtlSafeCheckpoint() {
return this.etlSafeCheckpoint;
}
/**
* @return expireTime
*/
public String getExpireTime() {
return this.expireTime;
}
/**
* @return jobType
*/
public String getJobType() {
return this.jobType;
}
/**
* @return migrationMode
*/
public EtlDemoListMigrationMode getMigrationMode() {
return this.migrationMode;
}
/**
* @return originType
*/
public String getOriginType() {
return this.originType;
}
/**
* @return payType
*/
public String getPayType() {
return this.payType;
}
/**
* @return performance
*/
public EtlDemoListPerformance getPerformance() {
return this.performance;
}
/**
* @return precheckStatus
*/
public EtlDemoListPrecheckStatus getPrecheckStatus() {
return this.precheckStatus;
}
/**
* @return reserved
*/
public String getReserved() {
return this.reserved;
}
/**
* @return resourceGroupDisplayName
*/
public String getResourceGroupDisplayName() {
return this.resourceGroupDisplayName;
}
/**
* @return resourceGroupId
*/
public String getResourceGroupId() {
return this.resourceGroupId;
}
/**
* @return retryState
*/
public EtlDemoListRetryState getRetryState() {
return this.retryState;
}
/**
* @return reverseJob
*/
public EtlDemoListReverseJob getReverseJob() {
return this.reverseJob;
}
/**
* @return sourceEndpoint
*/
public EtlDemoListSourceEndpoint getSourceEndpoint() {
return this.sourceEndpoint;
}
/**
* @return status
*/
public String getStatus() {
return this.status;
}
/**
* @return structureInitializationStatus
*/
public EtlDemoListStructureInitializationStatus getStructureInitializationStatus() {
return this.structureInitializationStatus;
}
/**
* @return tagList
*/
public java.util.List < EtlDemoListTagList> getTagList() {
return this.tagList;
}
public static final class Builder {
private String appName;
private String beginTimestamp;
private String checkpoint;
private String consumptionCheckpoint;
private String consumptionClient;
private String createTime;
private EtlDemoListDataEtlStatus dataEtlStatus;
private EtlDemoListDataInitializationStatus dataInitializationStatus;
private EtlDemoListDataSynchronizationStatus dataSynchronizationStatus;
private String dbObject;
private Long delay;
private EtlDemoListDestinationEndpoint destinationEndpoint;
private String dtsInstanceID;
private String dtsJobClass;
private String dtsJobDirection;
private String dtsJobId;
private String dtsJobName;
private String endTimestamp;
private String errorMessage;
private String etlSafeCheckpoint;
private String expireTime;
private String jobType;
private EtlDemoListMigrationMode migrationMode;
private String originType;
private String payType;
private EtlDemoListPerformance performance;
private EtlDemoListPrecheckStatus precheckStatus;
private String reserved;
private String resourceGroupDisplayName;
private String resourceGroupId;
private EtlDemoListRetryState retryState;
private EtlDemoListReverseJob reverseJob;
private EtlDemoListSourceEndpoint sourceEndpoint;
private String status;
private EtlDemoListStructureInitializationStatus structureInitializationStatus;
private java.util.List < EtlDemoListTagList> tagList;
/**
* Indicates whether the **new** change tracking feature is used.
*
*
* > This parameter is returned only for change tracking instances of the new version.
*/
public Builder appName(String appName) {
this.appName = appName;
return this;
}
/**
* The start of the time range for change tracking. The time follows the ISO 8601 standard in the *yyyy-MM-dd*T*HH:mm:ss*Z format. The time is displayed in UTC.
*/
public Builder beginTimestamp(String beginTimestamp) {
this.beginTimestamp = beginTimestamp;
return this;
}
/**
* The start offset of incremental data migration or data synchronization. This value is a UNIX timestamp representing the number of seconds that have elapsed since January 1, 1970, 00:00:00 UTC.
*/
public Builder checkpoint(String checkpoint) {
this.checkpoint = checkpoint;
return this;
}
/**
* The consumption checkpoint of the change tracking instance. The time follows the ISO 8601 standard in the *yyyy-MM-dd*T*HH:mm:ss*Z format. The time is displayed in UTC.
*/
public Builder consumptionCheckpoint(String consumptionCheckpoint) {
this.consumptionCheckpoint = consumptionCheckpoint;
return this;
}
/**
* The downstream client information in the following format: :.
*/
public Builder consumptionClient(String consumptionClient) {
this.consumptionClient = consumptionClient;
return this;
}
/**
* The time when the task was created. The time follows the ISO 8601 standard in the *yyyy-MM-dd*T*HH:mm:s*sZ format. The time is displayed in UTC.
*/
public Builder createTime(String createTime) {
this.createTime = createTime;
return this;
}
/**
* The state of the ETL task.
*
*
* > This parameter collection is returned only if an ETL task is configured.
*/
public Builder dataEtlStatus(EtlDemoListDataEtlStatus dataEtlStatus) {
this.dataEtlStatus = dataEtlStatus;
return this;
}
/**
* The state of full data migration or initial full data synchronization.
*/
public Builder dataInitializationStatus(EtlDemoListDataInitializationStatus dataInitializationStatus) {
this.dataInitializationStatus = dataInitializationStatus;
return this;
}
/**
* The state of incremental data migration or synchronization.
*/
public Builder dataSynchronizationStatus(EtlDemoListDataSynchronizationStatus dataSynchronizationStatus) {
this.dataSynchronizationStatus = dataSynchronizationStatus;
return this;
}
/**
* The objects of the data migration, data synchronization, or change tracking task. For more information, see [Objects of DTS tasks](~~209545~~).
*/
public Builder dbObject(String dbObject) {
this.dbObject = dbObject;
return this;
}
/**
* The latency of incremental data migration or synchronization.
*
*
* > If you query data migration tasks, the unit of this parameter is milliseconds. If you query data synchronization tasks, the unit of this parameter is seconds.
*/
public Builder delay(Long delay) {
this.delay = delay;
return this;
}
/**
* The connection settings of the destination instance.
*/
public Builder destinationEndpoint(EtlDemoListDestinationEndpoint destinationEndpoint) {
this.destinationEndpoint = destinationEndpoint;
return this;
}
/**
* The ID of the data migration, data synchronization, or change tracking instance.
*/
public Builder dtsInstanceID(String dtsInstanceID) {
this.dtsInstanceID = dtsInstanceID;
return this;
}
/**
* The instance class.
*
*
* > For more information about the test performance of each instance class, see [Specifications of data migration instances](~~26606~~) and [Specifications of data synchronization instances](~~26605~~).
*/
public Builder dtsJobClass(String dtsJobClass) {
this.dtsJobClass = dtsJobClass;
return this;
}
/**
* The synchronization direction. Valid values:
*
*
* - **Forward**
* - **Reverse**
*
* > This parameter is returned only if the topology of the data synchronization instance is two-way synchronization.
*/
public Builder dtsJobDirection(String dtsJobDirection) {
this.dtsJobDirection = dtsJobDirection;
return this;
}
/**
* The ID of the data migration, data synchronization, or change tracking task.
*/
public Builder dtsJobId(String dtsJobId) {
this.dtsJobId = dtsJobId;
return this;
}
/**
* The name of the data migration, data synchronization, or change tracking task.
*/
public Builder dtsJobName(String dtsJobName) {
this.dtsJobName = dtsJobName;
return this;
}
/**
* The end of the time range for change tracking. The time follows the ISO 8601 standard in the *yyyy-MM-dd*T*HH:mm:ss*Z format. The time is displayed in UTC.
*/
public Builder endTimestamp(String endTimestamp) {
this.endTimestamp = endTimestamp;
return this;
}
/**
* The error message returned if the task failed.
*/
public Builder errorMessage(String errorMessage) {
this.errorMessage = errorMessage;
return this;
}
/**
* The checkpoint of the ETL task.
*/
public Builder etlSafeCheckpoint(String etlSafeCheckpoint) {
this.etlSafeCheckpoint = etlSafeCheckpoint;
return this;
}
/**
* The time when the instance expires. The time follows the ISO 8601 standard in the *yyyy-MM-dd*T*HH:mm:ss*Z format. The time is displayed in UTC.
*
*
* > This parameter is returned only if the returned value of **PayType** is **PrePaid**.
*/
public Builder expireTime(String expireTime) {
this.expireTime = expireTime;
return this;
}
/**
* The type of the DTS task. Valid values:
*
*
* - **MIGRATION**: data migration task
* - **SYNC**: data synchronization task
* - **SUBSCRIBE**: change tracking task
*/
public Builder jobType(String jobType) {
this.jobType = jobType;
return this;
}
/**
* The migration types or initial synchronization types.
*/
public Builder migrationMode(EtlDemoListMigrationMode migrationMode) {
this.migrationMode = migrationMode;
return this;
}
/**
* The source of the task.
*
* - **PTS**
* - **DMS**
* - **DTS**
*/
public Builder originType(String originType) {
this.originType = originType;
return this;
}
/**
* The billing method of the DTS instance. Valid values:
*
*
* - **PrePaid**: subscription
* - **PostPaid**: pay-as-you-go
*/
public Builder payType(String payType) {
this.payType = payType;
return this;
}
/**
* The performance of the data migration or synchronization instance.
*/
public Builder performance(EtlDemoListPerformance performance) {
this.performance = performance;
return this;
}
/**
* The precheck state.
*/
public Builder precheckStatus(EtlDemoListPrecheckStatus precheckStatus) {
this.precheckStatus = precheckStatus;
return this;
}
/**
* The reserved parameter of DTS. The value is a JSON string. You can specify this parameter to meet specific requirements, for example, whether to automatically start a precheck. For more information, see [MigrationReserved](~~176470~~).
*/
public Builder reserved(String reserved) {
this.reserved = reserved;
return this;
}
/**
* The name of the resource group.
*/
public Builder resourceGroupDisplayName(String resourceGroupDisplayName) {
this.resourceGroupDisplayName = resourceGroupDisplayName;
return this;
}
/**
* The resource group ID.
*/
public Builder resourceGroupId(String resourceGroupId) {
this.resourceGroupId = resourceGroupId;
return this;
}
/**
* The information about the retries performed by DTS due to an exception.
*/
public Builder retryState(EtlDemoListRetryState retryState) {
this.retryState = retryState;
return this;
}
/**
* The details of the data synchronization task in the reverse direction.
*
*
* > This parameter is returned only for two-way data synchronization tasks.
*/
public Builder reverseJob(EtlDemoListReverseJob reverseJob) {
this.reverseJob = reverseJob;
return this;
}
/**
* The connection settings of the source instance.
*/
public Builder sourceEndpoint(EtlDemoListSourceEndpoint sourceEndpoint) {
this.sourceEndpoint = sourceEndpoint;
return this;
}
/**
* The state of the DTS instance. For more information about the valid values, see the description of the request parameter **Status**.
*/
public Builder status(String status) {
this.status = status;
return this;
}
/**
* The state of schema migration or initial schema synchronization.
*/
public Builder structureInitializationStatus(EtlDemoListStructureInitializationStatus structureInitializationStatus) {
this.structureInitializationStatus = structureInitializationStatus;
return this;
}
/**
* The tags of the task.
*/
public Builder tagList(java.util.List < EtlDemoListTagList> tagList) {
this.tagList = tagList;
return this;
}
public EtlDemoList build() {
return new EtlDemoList(this);
}
}
}
}