
com.pulumi.azurenative.datamigration.outputs.MigrateMySqlAzureDbForMySqlOfflineTaskInputResponse Maven / Gradle / Ivy
// *** WARNING: this file was generated by pulumi-java-gen. ***
// *** Do not edit by hand unless you're certain you know what you are doing! ***
package com.pulumi.azurenative.datamigration.outputs;
import com.pulumi.azurenative.datamigration.outputs.MigrateMySqlAzureDbForMySqlOfflineDatabaseInputResponse;
import com.pulumi.azurenative.datamigration.outputs.MySqlConnectionInfoResponse;
import com.pulumi.core.annotations.CustomType;
import com.pulumi.exceptions.MissingRequiredPropertyException;
import java.lang.Boolean;
import java.lang.String;
import java.util.List;
import java.util.Map;
import java.util.Objects;
import java.util.Optional;
import javax.annotation.Nullable;
@CustomType
public final class MigrateMySqlAzureDbForMySqlOfflineTaskInputResponse {
/**
* @return Setting to set the source server read only
*
*/
private @Nullable Boolean makeSourceServerReadOnly;
/**
* @return Optional parameters for fine tuning the data transfer rate during migration
*
*/
private @Nullable Map optionalAgentSettings;
/**
* @return Databases to migrate
*
*/
private List selectedDatabases;
/**
* @return Connection information for source MySQL
*
*/
private MySqlConnectionInfoResponse sourceConnectionInfo;
/**
* @return Parameter to specify when the migration started
*
*/
private @Nullable String startedOn;
/**
* @return Connection information for target Azure Database for MySQL
*
*/
private MySqlConnectionInfoResponse targetConnectionInfo;
private MigrateMySqlAzureDbForMySqlOfflineTaskInputResponse() {}
/**
* @return Setting to set the source server read only
*
*/
public Optional makeSourceServerReadOnly() {
return Optional.ofNullable(this.makeSourceServerReadOnly);
}
/**
* @return Optional parameters for fine tuning the data transfer rate during migration
*
*/
public Map optionalAgentSettings() {
return this.optionalAgentSettings == null ? Map.of() : this.optionalAgentSettings;
}
/**
* @return Databases to migrate
*
*/
public List selectedDatabases() {
return this.selectedDatabases;
}
/**
* @return Connection information for source MySQL
*
*/
public MySqlConnectionInfoResponse sourceConnectionInfo() {
return this.sourceConnectionInfo;
}
/**
* @return Parameter to specify when the migration started
*
*/
public Optional startedOn() {
return Optional.ofNullable(this.startedOn);
}
/**
* @return Connection information for target Azure Database for MySQL
*
*/
public MySqlConnectionInfoResponse targetConnectionInfo() {
return this.targetConnectionInfo;
}
public static Builder builder() {
return new Builder();
}
public static Builder builder(MigrateMySqlAzureDbForMySqlOfflineTaskInputResponse defaults) {
return new Builder(defaults);
}
@CustomType.Builder
public static final class Builder {
private @Nullable Boolean makeSourceServerReadOnly;
private @Nullable Map optionalAgentSettings;
private List selectedDatabases;
private MySqlConnectionInfoResponse sourceConnectionInfo;
private @Nullable String startedOn;
private MySqlConnectionInfoResponse targetConnectionInfo;
public Builder() {}
public Builder(MigrateMySqlAzureDbForMySqlOfflineTaskInputResponse defaults) {
Objects.requireNonNull(defaults);
this.makeSourceServerReadOnly = defaults.makeSourceServerReadOnly;
this.optionalAgentSettings = defaults.optionalAgentSettings;
this.selectedDatabases = defaults.selectedDatabases;
this.sourceConnectionInfo = defaults.sourceConnectionInfo;
this.startedOn = defaults.startedOn;
this.targetConnectionInfo = defaults.targetConnectionInfo;
}
@CustomType.Setter
public Builder makeSourceServerReadOnly(@Nullable Boolean makeSourceServerReadOnly) {
this.makeSourceServerReadOnly = makeSourceServerReadOnly;
return this;
}
@CustomType.Setter
public Builder optionalAgentSettings(@Nullable Map optionalAgentSettings) {
this.optionalAgentSettings = optionalAgentSettings;
return this;
}
@CustomType.Setter
public Builder selectedDatabases(List selectedDatabases) {
if (selectedDatabases == null) {
throw new MissingRequiredPropertyException("MigrateMySqlAzureDbForMySqlOfflineTaskInputResponse", "selectedDatabases");
}
this.selectedDatabases = selectedDatabases;
return this;
}
public Builder selectedDatabases(MigrateMySqlAzureDbForMySqlOfflineDatabaseInputResponse... selectedDatabases) {
return selectedDatabases(List.of(selectedDatabases));
}
@CustomType.Setter
public Builder sourceConnectionInfo(MySqlConnectionInfoResponse sourceConnectionInfo) {
if (sourceConnectionInfo == null) {
throw new MissingRequiredPropertyException("MigrateMySqlAzureDbForMySqlOfflineTaskInputResponse", "sourceConnectionInfo");
}
this.sourceConnectionInfo = sourceConnectionInfo;
return this;
}
@CustomType.Setter
public Builder startedOn(@Nullable String startedOn) {
this.startedOn = startedOn;
return this;
}
@CustomType.Setter
public Builder targetConnectionInfo(MySqlConnectionInfoResponse targetConnectionInfo) {
if (targetConnectionInfo == null) {
throw new MissingRequiredPropertyException("MigrateMySqlAzureDbForMySqlOfflineTaskInputResponse", "targetConnectionInfo");
}
this.targetConnectionInfo = targetConnectionInfo;
return this;
}
public MigrateMySqlAzureDbForMySqlOfflineTaskInputResponse build() {
final var _resultValue = new MigrateMySqlAzureDbForMySqlOfflineTaskInputResponse();
_resultValue.makeSourceServerReadOnly = makeSourceServerReadOnly;
_resultValue.optionalAgentSettings = optionalAgentSettings;
_resultValue.selectedDatabases = selectedDatabases;
_resultValue.sourceConnectionInfo = sourceConnectionInfo;
_resultValue.startedOn = startedOn;
_resultValue.targetConnectionInfo = targetConnectionInfo;
return _resultValue;
}
}
}
© 2015 - 2025 Weber Informatics LLC | Privacy Policy