All Downloads are FREE. Search and download functionalities are using the official Maven repository.

com.pulumi.azurenative.datamigration.inputs.GetUserTablesSqlSyncTaskInputArgs 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.inputs;

import com.pulumi.azurenative.datamigration.inputs.SqlConnectionInfoArgs;
import com.pulumi.core.Output;
import com.pulumi.core.annotations.Import;
import com.pulumi.exceptions.MissingRequiredPropertyException;
import java.lang.String;
import java.util.List;
import java.util.Objects;


/**
 * Input for the task that collects user tables for the given list of databases
 * 
 */
public final class GetUserTablesSqlSyncTaskInputArgs extends com.pulumi.resources.ResourceArgs {

    public static final GetUserTablesSqlSyncTaskInputArgs Empty = new GetUserTablesSqlSyncTaskInputArgs();

    /**
     * List of source database names to collect tables for
     * 
     */
    @Import(name="selectedSourceDatabases", required=true)
    private Output> selectedSourceDatabases;

    /**
     * @return List of source database names to collect tables for
     * 
     */
    public Output> selectedSourceDatabases() {
        return this.selectedSourceDatabases;
    }

    /**
     * List of target database names to collect tables for
     * 
     */
    @Import(name="selectedTargetDatabases", required=true)
    private Output> selectedTargetDatabases;

    /**
     * @return List of target database names to collect tables for
     * 
     */
    public Output> selectedTargetDatabases() {
        return this.selectedTargetDatabases;
    }

    /**
     * Connection information for SQL Server
     * 
     */
    @Import(name="sourceConnectionInfo", required=true)
    private Output sourceConnectionInfo;

    /**
     * @return Connection information for SQL Server
     * 
     */
    public Output sourceConnectionInfo() {
        return this.sourceConnectionInfo;
    }

    /**
     * Connection information for SQL DB
     * 
     */
    @Import(name="targetConnectionInfo", required=true)
    private Output targetConnectionInfo;

    /**
     * @return Connection information for SQL DB
     * 
     */
    public Output targetConnectionInfo() {
        return this.targetConnectionInfo;
    }

    private GetUserTablesSqlSyncTaskInputArgs() {}

    private GetUserTablesSqlSyncTaskInputArgs(GetUserTablesSqlSyncTaskInputArgs $) {
        this.selectedSourceDatabases = $.selectedSourceDatabases;
        this.selectedTargetDatabases = $.selectedTargetDatabases;
        this.sourceConnectionInfo = $.sourceConnectionInfo;
        this.targetConnectionInfo = $.targetConnectionInfo;
    }

    public static Builder builder() {
        return new Builder();
    }
    public static Builder builder(GetUserTablesSqlSyncTaskInputArgs defaults) {
        return new Builder(defaults);
    }

    public static final class Builder {
        private GetUserTablesSqlSyncTaskInputArgs $;

        public Builder() {
            $ = new GetUserTablesSqlSyncTaskInputArgs();
        }

        public Builder(GetUserTablesSqlSyncTaskInputArgs defaults) {
            $ = new GetUserTablesSqlSyncTaskInputArgs(Objects.requireNonNull(defaults));
        }

        /**
         * @param selectedSourceDatabases List of source database names to collect tables for
         * 
         * @return builder
         * 
         */
        public Builder selectedSourceDatabases(Output> selectedSourceDatabases) {
            $.selectedSourceDatabases = selectedSourceDatabases;
            return this;
        }

        /**
         * @param selectedSourceDatabases List of source database names to collect tables for
         * 
         * @return builder
         * 
         */
        public Builder selectedSourceDatabases(List selectedSourceDatabases) {
            return selectedSourceDatabases(Output.of(selectedSourceDatabases));
        }

        /**
         * @param selectedSourceDatabases List of source database names to collect tables for
         * 
         * @return builder
         * 
         */
        public Builder selectedSourceDatabases(String... selectedSourceDatabases) {
            return selectedSourceDatabases(List.of(selectedSourceDatabases));
        }

        /**
         * @param selectedTargetDatabases List of target database names to collect tables for
         * 
         * @return builder
         * 
         */
        public Builder selectedTargetDatabases(Output> selectedTargetDatabases) {
            $.selectedTargetDatabases = selectedTargetDatabases;
            return this;
        }

        /**
         * @param selectedTargetDatabases List of target database names to collect tables for
         * 
         * @return builder
         * 
         */
        public Builder selectedTargetDatabases(List selectedTargetDatabases) {
            return selectedTargetDatabases(Output.of(selectedTargetDatabases));
        }

        /**
         * @param selectedTargetDatabases List of target database names to collect tables for
         * 
         * @return builder
         * 
         */
        public Builder selectedTargetDatabases(String... selectedTargetDatabases) {
            return selectedTargetDatabases(List.of(selectedTargetDatabases));
        }

        /**
         * @param sourceConnectionInfo Connection information for SQL Server
         * 
         * @return builder
         * 
         */
        public Builder sourceConnectionInfo(Output sourceConnectionInfo) {
            $.sourceConnectionInfo = sourceConnectionInfo;
            return this;
        }

        /**
         * @param sourceConnectionInfo Connection information for SQL Server
         * 
         * @return builder
         * 
         */
        public Builder sourceConnectionInfo(SqlConnectionInfoArgs sourceConnectionInfo) {
            return sourceConnectionInfo(Output.of(sourceConnectionInfo));
        }

        /**
         * @param targetConnectionInfo Connection information for SQL DB
         * 
         * @return builder
         * 
         */
        public Builder targetConnectionInfo(Output targetConnectionInfo) {
            $.targetConnectionInfo = targetConnectionInfo;
            return this;
        }

        /**
         * @param targetConnectionInfo Connection information for SQL DB
         * 
         * @return builder
         * 
         */
        public Builder targetConnectionInfo(SqlConnectionInfoArgs targetConnectionInfo) {
            return targetConnectionInfo(Output.of(targetConnectionInfo));
        }

        public GetUserTablesSqlSyncTaskInputArgs build() {
            if ($.selectedSourceDatabases == null) {
                throw new MissingRequiredPropertyException("GetUserTablesSqlSyncTaskInputArgs", "selectedSourceDatabases");
            }
            if ($.selectedTargetDatabases == null) {
                throw new MissingRequiredPropertyException("GetUserTablesSqlSyncTaskInputArgs", "selectedTargetDatabases");
            }
            if ($.sourceConnectionInfo == null) {
                throw new MissingRequiredPropertyException("GetUserTablesSqlSyncTaskInputArgs", "sourceConnectionInfo");
            }
            if ($.targetConnectionInfo == null) {
                throw new MissingRequiredPropertyException("GetUserTablesSqlSyncTaskInputArgs", "targetConnectionInfo");
            }
            return $;
        }
    }

}




© 2015 - 2025 Weber Informatics LLC | Privacy Policy