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

com.pulumi.azurenative.datafactory.outputs.AmazonRedshiftSourceResponse Maven / Gradle / Ivy

The newest version!
// *** 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.datafactory.outputs;

import com.pulumi.azurenative.datafactory.outputs.RedshiftUnloadSettingsResponse;
import com.pulumi.core.annotations.CustomType;
import com.pulumi.exceptions.MissingRequiredPropertyException;
import java.lang.Object;
import java.lang.String;
import java.util.Objects;
import java.util.Optional;
import javax.annotation.Nullable;

@CustomType
public final class AmazonRedshiftSourceResponse {
    /**
     * @return Specifies the additional columns to be added to source data. Type: array of objects(AdditionalColumns) (or Expression with resultType array of objects).
     * 
     */
    private @Nullable Object additionalColumns;
    /**
     * @return If true, disable data store metrics collection. Default is false. Type: boolean (or Expression with resultType boolean).
     * 
     */
    private @Nullable Object disableMetricsCollection;
    /**
     * @return The maximum concurrent connection count for the source data store. Type: integer (or Expression with resultType integer).
     * 
     */
    private @Nullable Object maxConcurrentConnections;
    /**
     * @return Database query. Type: string (or Expression with resultType string).
     * 
     */
    private @Nullable Object query;
    /**
     * @return Query timeout. Type: string (or Expression with resultType string), pattern: ((\d+)\.)?(\d\d):(60|([0-5][0-9])):(60|([0-5][0-9])).
     * 
     */
    private @Nullable Object queryTimeout;
    /**
     * @return The Amazon S3 settings needed for the interim Amazon S3 when copying from Amazon Redshift with unload. With this, data from Amazon Redshift source will be unloaded into S3 first and then copied into the targeted sink from the interim S3.
     * 
     */
    private @Nullable RedshiftUnloadSettingsResponse redshiftUnloadSettings;
    /**
     * @return Source retry count. Type: integer (or Expression with resultType integer).
     * 
     */
    private @Nullable Object sourceRetryCount;
    /**
     * @return Source retry wait. Type: string (or Expression with resultType string), pattern: ((\d+)\.)?(\d\d):(60|([0-5][0-9])):(60|([0-5][0-9])).
     * 
     */
    private @Nullable Object sourceRetryWait;
    /**
     * @return Copy source type.
     * Expected value is 'AmazonRedshiftSource'.
     * 
     */
    private String type;

    private AmazonRedshiftSourceResponse() {}
    /**
     * @return Specifies the additional columns to be added to source data. Type: array of objects(AdditionalColumns) (or Expression with resultType array of objects).
     * 
     */
    public Optional additionalColumns() {
        return Optional.ofNullable(this.additionalColumns);
    }
    /**
     * @return If true, disable data store metrics collection. Default is false. Type: boolean (or Expression with resultType boolean).
     * 
     */
    public Optional disableMetricsCollection() {
        return Optional.ofNullable(this.disableMetricsCollection);
    }
    /**
     * @return The maximum concurrent connection count for the source data store. Type: integer (or Expression with resultType integer).
     * 
     */
    public Optional maxConcurrentConnections() {
        return Optional.ofNullable(this.maxConcurrentConnections);
    }
    /**
     * @return Database query. Type: string (or Expression with resultType string).
     * 
     */
    public Optional query() {
        return Optional.ofNullable(this.query);
    }
    /**
     * @return Query timeout. Type: string (or Expression with resultType string), pattern: ((\d+)\.)?(\d\d):(60|([0-5][0-9])):(60|([0-5][0-9])).
     * 
     */
    public Optional queryTimeout() {
        return Optional.ofNullable(this.queryTimeout);
    }
    /**
     * @return The Amazon S3 settings needed for the interim Amazon S3 when copying from Amazon Redshift with unload. With this, data from Amazon Redshift source will be unloaded into S3 first and then copied into the targeted sink from the interim S3.
     * 
     */
    public Optional redshiftUnloadSettings() {
        return Optional.ofNullable(this.redshiftUnloadSettings);
    }
    /**
     * @return Source retry count. Type: integer (or Expression with resultType integer).
     * 
     */
    public Optional sourceRetryCount() {
        return Optional.ofNullable(this.sourceRetryCount);
    }
    /**
     * @return Source retry wait. Type: string (or Expression with resultType string), pattern: ((\d+)\.)?(\d\d):(60|([0-5][0-9])):(60|([0-5][0-9])).
     * 
     */
    public Optional sourceRetryWait() {
        return Optional.ofNullable(this.sourceRetryWait);
    }
    /**
     * @return Copy source type.
     * Expected value is 'AmazonRedshiftSource'.
     * 
     */
    public String type() {
        return this.type;
    }

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

    public static Builder builder(AmazonRedshiftSourceResponse defaults) {
        return new Builder(defaults);
    }
    @CustomType.Builder
    public static final class Builder {
        private @Nullable Object additionalColumns;
        private @Nullable Object disableMetricsCollection;
        private @Nullable Object maxConcurrentConnections;
        private @Nullable Object query;
        private @Nullable Object queryTimeout;
        private @Nullable RedshiftUnloadSettingsResponse redshiftUnloadSettings;
        private @Nullable Object sourceRetryCount;
        private @Nullable Object sourceRetryWait;
        private String type;
        public Builder() {}
        public Builder(AmazonRedshiftSourceResponse defaults) {
    	      Objects.requireNonNull(defaults);
    	      this.additionalColumns = defaults.additionalColumns;
    	      this.disableMetricsCollection = defaults.disableMetricsCollection;
    	      this.maxConcurrentConnections = defaults.maxConcurrentConnections;
    	      this.query = defaults.query;
    	      this.queryTimeout = defaults.queryTimeout;
    	      this.redshiftUnloadSettings = defaults.redshiftUnloadSettings;
    	      this.sourceRetryCount = defaults.sourceRetryCount;
    	      this.sourceRetryWait = defaults.sourceRetryWait;
    	      this.type = defaults.type;
        }

        @CustomType.Setter
        public Builder additionalColumns(@Nullable Object additionalColumns) {

            this.additionalColumns = additionalColumns;
            return this;
        }
        @CustomType.Setter
        public Builder disableMetricsCollection(@Nullable Object disableMetricsCollection) {

            this.disableMetricsCollection = disableMetricsCollection;
            return this;
        }
        @CustomType.Setter
        public Builder maxConcurrentConnections(@Nullable Object maxConcurrentConnections) {

            this.maxConcurrentConnections = maxConcurrentConnections;
            return this;
        }
        @CustomType.Setter
        public Builder query(@Nullable Object query) {

            this.query = query;
            return this;
        }
        @CustomType.Setter
        public Builder queryTimeout(@Nullable Object queryTimeout) {

            this.queryTimeout = queryTimeout;
            return this;
        }
        @CustomType.Setter
        public Builder redshiftUnloadSettings(@Nullable RedshiftUnloadSettingsResponse redshiftUnloadSettings) {

            this.redshiftUnloadSettings = redshiftUnloadSettings;
            return this;
        }
        @CustomType.Setter
        public Builder sourceRetryCount(@Nullable Object sourceRetryCount) {

            this.sourceRetryCount = sourceRetryCount;
            return this;
        }
        @CustomType.Setter
        public Builder sourceRetryWait(@Nullable Object sourceRetryWait) {

            this.sourceRetryWait = sourceRetryWait;
            return this;
        }
        @CustomType.Setter
        public Builder type(String type) {
            if (type == null) {
              throw new MissingRequiredPropertyException("AmazonRedshiftSourceResponse", "type");
            }
            this.type = type;
            return this;
        }
        public AmazonRedshiftSourceResponse build() {
            final var _resultValue = new AmazonRedshiftSourceResponse();
            _resultValue.additionalColumns = additionalColumns;
            _resultValue.disableMetricsCollection = disableMetricsCollection;
            _resultValue.maxConcurrentConnections = maxConcurrentConnections;
            _resultValue.query = query;
            _resultValue.queryTimeout = queryTimeout;
            _resultValue.redshiftUnloadSettings = redshiftUnloadSettings;
            _resultValue.sourceRetryCount = sourceRetryCount;
            _resultValue.sourceRetryWait = sourceRetryWait;
            _resultValue.type = type;
            return _resultValue;
        }
    }
}