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

com.pulumi.azurenative.synapse.inputs.IntegrationRuntimeSsisPropertiesArgs Maven / Gradle / Ivy

There is a newer version: 2.72.0
Show 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.synapse.inputs;

import com.pulumi.azurenative.synapse.enums.IntegrationRuntimeEdition;
import com.pulumi.azurenative.synapse.enums.IntegrationRuntimeLicenseType;
import com.pulumi.azurenative.synapse.inputs.CmdkeySetupArgs;
import com.pulumi.azurenative.synapse.inputs.ComponentSetupArgs;
import com.pulumi.azurenative.synapse.inputs.EnvironmentVariableSetupArgs;
import com.pulumi.azurenative.synapse.inputs.IntegrationRuntimeCustomSetupScriptPropertiesArgs;
import com.pulumi.azurenative.synapse.inputs.IntegrationRuntimeDataProxyPropertiesArgs;
import com.pulumi.azurenative.synapse.inputs.IntegrationRuntimeSsisCatalogInfoArgs;
import com.pulumi.core.Either;
import com.pulumi.core.Output;
import com.pulumi.core.annotations.Import;
import java.lang.Object;
import java.lang.String;
import java.util.List;
import java.util.Objects;
import java.util.Optional;
import javax.annotation.Nullable;


/**
 * SSIS properties for managed integration runtime.
 * 
 */
public final class IntegrationRuntimeSsisPropertiesArgs extends com.pulumi.resources.ResourceArgs {

    public static final IntegrationRuntimeSsisPropertiesArgs Empty = new IntegrationRuntimeSsisPropertiesArgs();

    /**
     * Catalog information for managed dedicated integration runtime.
     * 
     */
    @Import(name="catalogInfo")
    private @Nullable Output catalogInfo;

    /**
     * @return Catalog information for managed dedicated integration runtime.
     * 
     */
    public Optional> catalogInfo() {
        return Optional.ofNullable(this.catalogInfo);
    }

    /**
     * Custom setup script properties for a managed dedicated integration runtime.
     * 
     */
    @Import(name="customSetupScriptProperties")
    private @Nullable Output customSetupScriptProperties;

    /**
     * @return Custom setup script properties for a managed dedicated integration runtime.
     * 
     */
    public Optional> customSetupScriptProperties() {
        return Optional.ofNullable(this.customSetupScriptProperties);
    }

    /**
     * Data proxy properties for a managed dedicated integration runtime.
     * 
     */
    @Import(name="dataProxyProperties")
    private @Nullable Output dataProxyProperties;

    /**
     * @return Data proxy properties for a managed dedicated integration runtime.
     * 
     */
    public Optional> dataProxyProperties() {
        return Optional.ofNullable(this.dataProxyProperties);
    }

    /**
     * The edition for the SSIS Integration Runtime
     * 
     */
    @Import(name="edition")
    private @Nullable Output> edition;

    /**
     * @return The edition for the SSIS Integration Runtime
     * 
     */
    public Optional>> edition() {
        return Optional.ofNullable(this.edition);
    }

    /**
     * Custom setup without script properties for a SSIS integration runtime.
     * 
     */
    @Import(name="expressCustomSetupProperties")
    private @Nullable Output> expressCustomSetupProperties;

    /**
     * @return Custom setup without script properties for a SSIS integration runtime.
     * 
     */
    public Optional>> expressCustomSetupProperties() {
        return Optional.ofNullable(this.expressCustomSetupProperties);
    }

    /**
     * License type for bringing your own license scenario.
     * 
     */
    @Import(name="licenseType")
    private @Nullable Output> licenseType;

    /**
     * @return License type for bringing your own license scenario.
     * 
     */
    public Optional>> licenseType() {
        return Optional.ofNullable(this.licenseType);
    }

    private IntegrationRuntimeSsisPropertiesArgs() {}

    private IntegrationRuntimeSsisPropertiesArgs(IntegrationRuntimeSsisPropertiesArgs $) {
        this.catalogInfo = $.catalogInfo;
        this.customSetupScriptProperties = $.customSetupScriptProperties;
        this.dataProxyProperties = $.dataProxyProperties;
        this.edition = $.edition;
        this.expressCustomSetupProperties = $.expressCustomSetupProperties;
        this.licenseType = $.licenseType;
    }

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

    public static final class Builder {
        private IntegrationRuntimeSsisPropertiesArgs $;

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

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

        /**
         * @param catalogInfo Catalog information for managed dedicated integration runtime.
         * 
         * @return builder
         * 
         */
        public Builder catalogInfo(@Nullable Output catalogInfo) {
            $.catalogInfo = catalogInfo;
            return this;
        }

        /**
         * @param catalogInfo Catalog information for managed dedicated integration runtime.
         * 
         * @return builder
         * 
         */
        public Builder catalogInfo(IntegrationRuntimeSsisCatalogInfoArgs catalogInfo) {
            return catalogInfo(Output.of(catalogInfo));
        }

        /**
         * @param customSetupScriptProperties Custom setup script properties for a managed dedicated integration runtime.
         * 
         * @return builder
         * 
         */
        public Builder customSetupScriptProperties(@Nullable Output customSetupScriptProperties) {
            $.customSetupScriptProperties = customSetupScriptProperties;
            return this;
        }

        /**
         * @param customSetupScriptProperties Custom setup script properties for a managed dedicated integration runtime.
         * 
         * @return builder
         * 
         */
        public Builder customSetupScriptProperties(IntegrationRuntimeCustomSetupScriptPropertiesArgs customSetupScriptProperties) {
            return customSetupScriptProperties(Output.of(customSetupScriptProperties));
        }

        /**
         * @param dataProxyProperties Data proxy properties for a managed dedicated integration runtime.
         * 
         * @return builder
         * 
         */
        public Builder dataProxyProperties(@Nullable Output dataProxyProperties) {
            $.dataProxyProperties = dataProxyProperties;
            return this;
        }

        /**
         * @param dataProxyProperties Data proxy properties for a managed dedicated integration runtime.
         * 
         * @return builder
         * 
         */
        public Builder dataProxyProperties(IntegrationRuntimeDataProxyPropertiesArgs dataProxyProperties) {
            return dataProxyProperties(Output.of(dataProxyProperties));
        }

        /**
         * @param edition The edition for the SSIS Integration Runtime
         * 
         * @return builder
         * 
         */
        public Builder edition(@Nullable Output> edition) {
            $.edition = edition;
            return this;
        }

        /**
         * @param edition The edition for the SSIS Integration Runtime
         * 
         * @return builder
         * 
         */
        public Builder edition(Either edition) {
            return edition(Output.of(edition));
        }

        /**
         * @param edition The edition for the SSIS Integration Runtime
         * 
         * @return builder
         * 
         */
        public Builder edition(String edition) {
            return edition(Either.ofLeft(edition));
        }

        /**
         * @param edition The edition for the SSIS Integration Runtime
         * 
         * @return builder
         * 
         */
        public Builder edition(IntegrationRuntimeEdition edition) {
            return edition(Either.ofRight(edition));
        }

        /**
         * @param expressCustomSetupProperties Custom setup without script properties for a SSIS integration runtime.
         * 
         * @return builder
         * 
         */
        public Builder expressCustomSetupProperties(@Nullable Output> expressCustomSetupProperties) {
            $.expressCustomSetupProperties = expressCustomSetupProperties;
            return this;
        }

        /**
         * @param expressCustomSetupProperties Custom setup without script properties for a SSIS integration runtime.
         * 
         * @return builder
         * 
         */
        public Builder expressCustomSetupProperties(List expressCustomSetupProperties) {
            return expressCustomSetupProperties(Output.of(expressCustomSetupProperties));
        }

        /**
         * @param expressCustomSetupProperties Custom setup without script properties for a SSIS integration runtime.
         * 
         * @return builder
         * 
         */
        public Builder expressCustomSetupProperties(Object... expressCustomSetupProperties) {
            return expressCustomSetupProperties(List.of(expressCustomSetupProperties));
        }

        /**
         * @param licenseType License type for bringing your own license scenario.
         * 
         * @return builder
         * 
         */
        public Builder licenseType(@Nullable Output> licenseType) {
            $.licenseType = licenseType;
            return this;
        }

        /**
         * @param licenseType License type for bringing your own license scenario.
         * 
         * @return builder
         * 
         */
        public Builder licenseType(Either licenseType) {
            return licenseType(Output.of(licenseType));
        }

        /**
         * @param licenseType License type for bringing your own license scenario.
         * 
         * @return builder
         * 
         */
        public Builder licenseType(String licenseType) {
            return licenseType(Either.ofLeft(licenseType));
        }

        /**
         * @param licenseType License type for bringing your own license scenario.
         * 
         * @return builder
         * 
         */
        public Builder licenseType(IntegrationRuntimeLicenseType licenseType) {
            return licenseType(Either.ofRight(licenseType));
        }

        public IntegrationRuntimeSsisPropertiesArgs build() {
            return $;
        }
    }

}