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

com.pulumi.azurenative.datafactory.inputs.ExecuteSSISPackageActivityArgs 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.inputs;

import com.pulumi.azurenative.datafactory.enums.ActivityOnInactiveMarkAs;
import com.pulumi.azurenative.datafactory.enums.ActivityState;
import com.pulumi.azurenative.datafactory.inputs.ActivityDependencyArgs;
import com.pulumi.azurenative.datafactory.inputs.ActivityPolicyArgs;
import com.pulumi.azurenative.datafactory.inputs.IntegrationRuntimeReferenceArgs;
import com.pulumi.azurenative.datafactory.inputs.LinkedServiceReferenceArgs;
import com.pulumi.azurenative.datafactory.inputs.SSISExecutionCredentialArgs;
import com.pulumi.azurenative.datafactory.inputs.SSISExecutionParameterArgs;
import com.pulumi.azurenative.datafactory.inputs.SSISLogLocationArgs;
import com.pulumi.azurenative.datafactory.inputs.SSISPackageLocationArgs;
import com.pulumi.azurenative.datafactory.inputs.SSISPropertyOverrideArgs;
import com.pulumi.azurenative.datafactory.inputs.UserPropertyArgs;
import com.pulumi.core.Either;
import com.pulumi.core.Output;
import com.pulumi.core.annotations.Import;
import com.pulumi.core.internal.Codegen;
import com.pulumi.exceptions.MissingRequiredPropertyException;
import java.lang.Object;
import java.lang.String;
import java.util.List;
import java.util.Map;
import java.util.Objects;
import java.util.Optional;
import javax.annotation.Nullable;


/**
 * Execute SSIS package activity.
 * 
 */
public final class ExecuteSSISPackageActivityArgs extends com.pulumi.resources.ResourceArgs {

    public static final ExecuteSSISPackageActivityArgs Empty = new ExecuteSSISPackageActivityArgs();

    /**
     * The integration runtime reference.
     * 
     */
    @Import(name="connectVia", required=true)
    private Output connectVia;

    /**
     * @return The integration runtime reference.
     * 
     */
    public Output connectVia() {
        return this.connectVia;
    }

    /**
     * Activity depends on condition.
     * 
     */
    @Import(name="dependsOn")
    private @Nullable Output> dependsOn;

    /**
     * @return Activity depends on condition.
     * 
     */
    public Optional>> dependsOn() {
        return Optional.ofNullable(this.dependsOn);
    }

    /**
     * Activity description.
     * 
     */
    @Import(name="description")
    private @Nullable Output description;

    /**
     * @return Activity description.
     * 
     */
    public Optional> description() {
        return Optional.ofNullable(this.description);
    }

    /**
     * The environment path to execute the SSIS package. Type: string (or Expression with resultType string).
     * 
     */
    @Import(name="environmentPath")
    private @Nullable Output environmentPath;

    /**
     * @return The environment path to execute the SSIS package. Type: string (or Expression with resultType string).
     * 
     */
    public Optional> environmentPath() {
        return Optional.ofNullable(this.environmentPath);
    }

    /**
     * The package execution credential.
     * 
     */
    @Import(name="executionCredential")
    private @Nullable Output executionCredential;

    /**
     * @return The package execution credential.
     * 
     */
    public Optional> executionCredential() {
        return Optional.ofNullable(this.executionCredential);
    }

    /**
     * Linked service reference.
     * 
     */
    @Import(name="linkedServiceName")
    private @Nullable Output linkedServiceName;

    /**
     * @return Linked service reference.
     * 
     */
    public Optional> linkedServiceName() {
        return Optional.ofNullable(this.linkedServiceName);
    }

    /**
     * SSIS package execution log location.
     * 
     */
    @Import(name="logLocation")
    private @Nullable Output logLocation;

    /**
     * @return SSIS package execution log location.
     * 
     */
    public Optional> logLocation() {
        return Optional.ofNullable(this.logLocation);
    }

    /**
     * The logging level of SSIS package execution. Type: string (or Expression with resultType string).
     * 
     */
    @Import(name="loggingLevel")
    private @Nullable Output loggingLevel;

    /**
     * @return The logging level of SSIS package execution. Type: string (or Expression with resultType string).
     * 
     */
    public Optional> loggingLevel() {
        return Optional.ofNullable(this.loggingLevel);
    }

    /**
     * Activity name.
     * 
     */
    @Import(name="name", required=true)
    private Output name;

    /**
     * @return Activity name.
     * 
     */
    public Output name() {
        return this.name;
    }

    /**
     * Status result of the activity when the state is set to Inactive. This is an optional property and if not provided when the activity is inactive, the status will be Succeeded by default.
     * 
     */
    @Import(name="onInactiveMarkAs")
    private @Nullable Output> onInactiveMarkAs;

    /**
     * @return Status result of the activity when the state is set to Inactive. This is an optional property and if not provided when the activity is inactive, the status will be Succeeded by default.
     * 
     */
    public Optional>> onInactiveMarkAs() {
        return Optional.ofNullable(this.onInactiveMarkAs);
    }

    /**
     * The package level connection managers to execute the SSIS package.
     * 
     */
    @Import(name="packageConnectionManagers")
    private @Nullable Output>> packageConnectionManagers;

    /**
     * @return The package level connection managers to execute the SSIS package.
     * 
     */
    public Optional>>> packageConnectionManagers() {
        return Optional.ofNullable(this.packageConnectionManagers);
    }

    /**
     * SSIS package location.
     * 
     */
    @Import(name="packageLocation", required=true)
    private Output packageLocation;

    /**
     * @return SSIS package location.
     * 
     */
    public Output packageLocation() {
        return this.packageLocation;
    }

    /**
     * The package level parameters to execute the SSIS package.
     * 
     */
    @Import(name="packageParameters")
    private @Nullable Output> packageParameters;

    /**
     * @return The package level parameters to execute the SSIS package.
     * 
     */
    public Optional>> packageParameters() {
        return Optional.ofNullable(this.packageParameters);
    }

    /**
     * Activity policy.
     * 
     */
    @Import(name="policy")
    private @Nullable Output policy;

    /**
     * @return Activity policy.
     * 
     */
    public Optional> policy() {
        return Optional.ofNullable(this.policy);
    }

    /**
     * The project level connection managers to execute the SSIS package.
     * 
     */
    @Import(name="projectConnectionManagers")
    private @Nullable Output>> projectConnectionManagers;

    /**
     * @return The project level connection managers to execute the SSIS package.
     * 
     */
    public Optional>>> projectConnectionManagers() {
        return Optional.ofNullable(this.projectConnectionManagers);
    }

    /**
     * The project level parameters to execute the SSIS package.
     * 
     */
    @Import(name="projectParameters")
    private @Nullable Output> projectParameters;

    /**
     * @return The project level parameters to execute the SSIS package.
     * 
     */
    public Optional>> projectParameters() {
        return Optional.ofNullable(this.projectParameters);
    }

    /**
     * The property overrides to execute the SSIS package.
     * 
     */
    @Import(name="propertyOverrides")
    private @Nullable Output> propertyOverrides;

    /**
     * @return The property overrides to execute the SSIS package.
     * 
     */
    public Optional>> propertyOverrides() {
        return Optional.ofNullable(this.propertyOverrides);
    }

    /**
     * Specifies the runtime to execute SSIS package. The value should be "x86" or "x64". Type: string (or Expression with resultType string).
     * 
     */
    @Import(name="runtime")
    private @Nullable Output runtime;

    /**
     * @return Specifies the runtime to execute SSIS package. The value should be "x86" or "x64". Type: string (or Expression with resultType string).
     * 
     */
    public Optional> runtime() {
        return Optional.ofNullable(this.runtime);
    }

    /**
     * Activity state. This is an optional property and if not provided, the state will be Active by default.
     * 
     */
    @Import(name="state")
    private @Nullable Output> state;

    /**
     * @return Activity state. This is an optional property and if not provided, the state will be Active by default.
     * 
     */
    public Optional>> state() {
        return Optional.ofNullable(this.state);
    }

    /**
     * Type of activity.
     * Expected value is 'ExecuteSSISPackage'.
     * 
     */
    @Import(name="type", required=true)
    private Output type;

    /**
     * @return Type of activity.
     * Expected value is 'ExecuteSSISPackage'.
     * 
     */
    public Output type() {
        return this.type;
    }

    /**
     * Activity user properties.
     * 
     */
    @Import(name="userProperties")
    private @Nullable Output> userProperties;

    /**
     * @return Activity user properties.
     * 
     */
    public Optional>> userProperties() {
        return Optional.ofNullable(this.userProperties);
    }

    private ExecuteSSISPackageActivityArgs() {}

    private ExecuteSSISPackageActivityArgs(ExecuteSSISPackageActivityArgs $) {
        this.connectVia = $.connectVia;
        this.dependsOn = $.dependsOn;
        this.description = $.description;
        this.environmentPath = $.environmentPath;
        this.executionCredential = $.executionCredential;
        this.linkedServiceName = $.linkedServiceName;
        this.logLocation = $.logLocation;
        this.loggingLevel = $.loggingLevel;
        this.name = $.name;
        this.onInactiveMarkAs = $.onInactiveMarkAs;
        this.packageConnectionManagers = $.packageConnectionManagers;
        this.packageLocation = $.packageLocation;
        this.packageParameters = $.packageParameters;
        this.policy = $.policy;
        this.projectConnectionManagers = $.projectConnectionManagers;
        this.projectParameters = $.projectParameters;
        this.propertyOverrides = $.propertyOverrides;
        this.runtime = $.runtime;
        this.state = $.state;
        this.type = $.type;
        this.userProperties = $.userProperties;
    }

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

    public static final class Builder {
        private ExecuteSSISPackageActivityArgs $;

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

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

        /**
         * @param connectVia The integration runtime reference.
         * 
         * @return builder
         * 
         */
        public Builder connectVia(Output connectVia) {
            $.connectVia = connectVia;
            return this;
        }

        /**
         * @param connectVia The integration runtime reference.
         * 
         * @return builder
         * 
         */
        public Builder connectVia(IntegrationRuntimeReferenceArgs connectVia) {
            return connectVia(Output.of(connectVia));
        }

        /**
         * @param dependsOn Activity depends on condition.
         * 
         * @return builder
         * 
         */
        public Builder dependsOn(@Nullable Output> dependsOn) {
            $.dependsOn = dependsOn;
            return this;
        }

        /**
         * @param dependsOn Activity depends on condition.
         * 
         * @return builder
         * 
         */
        public Builder dependsOn(List dependsOn) {
            return dependsOn(Output.of(dependsOn));
        }

        /**
         * @param dependsOn Activity depends on condition.
         * 
         * @return builder
         * 
         */
        public Builder dependsOn(ActivityDependencyArgs... dependsOn) {
            return dependsOn(List.of(dependsOn));
        }

        /**
         * @param description Activity description.
         * 
         * @return builder
         * 
         */
        public Builder description(@Nullable Output description) {
            $.description = description;
            return this;
        }

        /**
         * @param description Activity description.
         * 
         * @return builder
         * 
         */
        public Builder description(String description) {
            return description(Output.of(description));
        }

        /**
         * @param environmentPath The environment path to execute the SSIS package. Type: string (or Expression with resultType string).
         * 
         * @return builder
         * 
         */
        public Builder environmentPath(@Nullable Output environmentPath) {
            $.environmentPath = environmentPath;
            return this;
        }

        /**
         * @param environmentPath The environment path to execute the SSIS package. Type: string (or Expression with resultType string).
         * 
         * @return builder
         * 
         */
        public Builder environmentPath(Object environmentPath) {
            return environmentPath(Output.of(environmentPath));
        }

        /**
         * @param executionCredential The package execution credential.
         * 
         * @return builder
         * 
         */
        public Builder executionCredential(@Nullable Output executionCredential) {
            $.executionCredential = executionCredential;
            return this;
        }

        /**
         * @param executionCredential The package execution credential.
         * 
         * @return builder
         * 
         */
        public Builder executionCredential(SSISExecutionCredentialArgs executionCredential) {
            return executionCredential(Output.of(executionCredential));
        }

        /**
         * @param linkedServiceName Linked service reference.
         * 
         * @return builder
         * 
         */
        public Builder linkedServiceName(@Nullable Output linkedServiceName) {
            $.linkedServiceName = linkedServiceName;
            return this;
        }

        /**
         * @param linkedServiceName Linked service reference.
         * 
         * @return builder
         * 
         */
        public Builder linkedServiceName(LinkedServiceReferenceArgs linkedServiceName) {
            return linkedServiceName(Output.of(linkedServiceName));
        }

        /**
         * @param logLocation SSIS package execution log location.
         * 
         * @return builder
         * 
         */
        public Builder logLocation(@Nullable Output logLocation) {
            $.logLocation = logLocation;
            return this;
        }

        /**
         * @param logLocation SSIS package execution log location.
         * 
         * @return builder
         * 
         */
        public Builder logLocation(SSISLogLocationArgs logLocation) {
            return logLocation(Output.of(logLocation));
        }

        /**
         * @param loggingLevel The logging level of SSIS package execution. Type: string (or Expression with resultType string).
         * 
         * @return builder
         * 
         */
        public Builder loggingLevel(@Nullable Output loggingLevel) {
            $.loggingLevel = loggingLevel;
            return this;
        }

        /**
         * @param loggingLevel The logging level of SSIS package execution. Type: string (or Expression with resultType string).
         * 
         * @return builder
         * 
         */
        public Builder loggingLevel(Object loggingLevel) {
            return loggingLevel(Output.of(loggingLevel));
        }

        /**
         * @param name Activity name.
         * 
         * @return builder
         * 
         */
        public Builder name(Output name) {
            $.name = name;
            return this;
        }

        /**
         * @param name Activity name.
         * 
         * @return builder
         * 
         */
        public Builder name(String name) {
            return name(Output.of(name));
        }

        /**
         * @param onInactiveMarkAs Status result of the activity when the state is set to Inactive. This is an optional property and if not provided when the activity is inactive, the status will be Succeeded by default.
         * 
         * @return builder
         * 
         */
        public Builder onInactiveMarkAs(@Nullable Output> onInactiveMarkAs) {
            $.onInactiveMarkAs = onInactiveMarkAs;
            return this;
        }

        /**
         * @param onInactiveMarkAs Status result of the activity when the state is set to Inactive. This is an optional property and if not provided when the activity is inactive, the status will be Succeeded by default.
         * 
         * @return builder
         * 
         */
        public Builder onInactiveMarkAs(Either onInactiveMarkAs) {
            return onInactiveMarkAs(Output.of(onInactiveMarkAs));
        }

        /**
         * @param onInactiveMarkAs Status result of the activity when the state is set to Inactive. This is an optional property and if not provided when the activity is inactive, the status will be Succeeded by default.
         * 
         * @return builder
         * 
         */
        public Builder onInactiveMarkAs(String onInactiveMarkAs) {
            return onInactiveMarkAs(Either.ofLeft(onInactiveMarkAs));
        }

        /**
         * @param onInactiveMarkAs Status result of the activity when the state is set to Inactive. This is an optional property and if not provided when the activity is inactive, the status will be Succeeded by default.
         * 
         * @return builder
         * 
         */
        public Builder onInactiveMarkAs(ActivityOnInactiveMarkAs onInactiveMarkAs) {
            return onInactiveMarkAs(Either.ofRight(onInactiveMarkAs));
        }

        /**
         * @param packageConnectionManagers The package level connection managers to execute the SSIS package.
         * 
         * @return builder
         * 
         */
        public Builder packageConnectionManagers(@Nullable Output>> packageConnectionManagers) {
            $.packageConnectionManagers = packageConnectionManagers;
            return this;
        }

        /**
         * @param packageConnectionManagers The package level connection managers to execute the SSIS package.
         * 
         * @return builder
         * 
         */
        public Builder packageConnectionManagers(Map> packageConnectionManagers) {
            return packageConnectionManagers(Output.of(packageConnectionManagers));
        }

        /**
         * @param packageLocation SSIS package location.
         * 
         * @return builder
         * 
         */
        public Builder packageLocation(Output packageLocation) {
            $.packageLocation = packageLocation;
            return this;
        }

        /**
         * @param packageLocation SSIS package location.
         * 
         * @return builder
         * 
         */
        public Builder packageLocation(SSISPackageLocationArgs packageLocation) {
            return packageLocation(Output.of(packageLocation));
        }

        /**
         * @param packageParameters The package level parameters to execute the SSIS package.
         * 
         * @return builder
         * 
         */
        public Builder packageParameters(@Nullable Output> packageParameters) {
            $.packageParameters = packageParameters;
            return this;
        }

        /**
         * @param packageParameters The package level parameters to execute the SSIS package.
         * 
         * @return builder
         * 
         */
        public Builder packageParameters(Map packageParameters) {
            return packageParameters(Output.of(packageParameters));
        }

        /**
         * @param policy Activity policy.
         * 
         * @return builder
         * 
         */
        public Builder policy(@Nullable Output policy) {
            $.policy = policy;
            return this;
        }

        /**
         * @param policy Activity policy.
         * 
         * @return builder
         * 
         */
        public Builder policy(ActivityPolicyArgs policy) {
            return policy(Output.of(policy));
        }

        /**
         * @param projectConnectionManagers The project level connection managers to execute the SSIS package.
         * 
         * @return builder
         * 
         */
        public Builder projectConnectionManagers(@Nullable Output>> projectConnectionManagers) {
            $.projectConnectionManagers = projectConnectionManagers;
            return this;
        }

        /**
         * @param projectConnectionManagers The project level connection managers to execute the SSIS package.
         * 
         * @return builder
         * 
         */
        public Builder projectConnectionManagers(Map> projectConnectionManagers) {
            return projectConnectionManagers(Output.of(projectConnectionManagers));
        }

        /**
         * @param projectParameters The project level parameters to execute the SSIS package.
         * 
         * @return builder
         * 
         */
        public Builder projectParameters(@Nullable Output> projectParameters) {
            $.projectParameters = projectParameters;
            return this;
        }

        /**
         * @param projectParameters The project level parameters to execute the SSIS package.
         * 
         * @return builder
         * 
         */
        public Builder projectParameters(Map projectParameters) {
            return projectParameters(Output.of(projectParameters));
        }

        /**
         * @param propertyOverrides The property overrides to execute the SSIS package.
         * 
         * @return builder
         * 
         */
        public Builder propertyOverrides(@Nullable Output> propertyOverrides) {
            $.propertyOverrides = propertyOverrides;
            return this;
        }

        /**
         * @param propertyOverrides The property overrides to execute the SSIS package.
         * 
         * @return builder
         * 
         */
        public Builder propertyOverrides(Map propertyOverrides) {
            return propertyOverrides(Output.of(propertyOverrides));
        }

        /**
         * @param runtime Specifies the runtime to execute SSIS package. The value should be "x86" or "x64". Type: string (or Expression with resultType string).
         * 
         * @return builder
         * 
         */
        public Builder runtime(@Nullable Output runtime) {
            $.runtime = runtime;
            return this;
        }

        /**
         * @param runtime Specifies the runtime to execute SSIS package. The value should be "x86" or "x64". Type: string (or Expression with resultType string).
         * 
         * @return builder
         * 
         */
        public Builder runtime(Object runtime) {
            return runtime(Output.of(runtime));
        }

        /**
         * @param state Activity state. This is an optional property and if not provided, the state will be Active by default.
         * 
         * @return builder
         * 
         */
        public Builder state(@Nullable Output> state) {
            $.state = state;
            return this;
        }

        /**
         * @param state Activity state. This is an optional property and if not provided, the state will be Active by default.
         * 
         * @return builder
         * 
         */
        public Builder state(Either state) {
            return state(Output.of(state));
        }

        /**
         * @param state Activity state. This is an optional property and if not provided, the state will be Active by default.
         * 
         * @return builder
         * 
         */
        public Builder state(String state) {
            return state(Either.ofLeft(state));
        }

        /**
         * @param state Activity state. This is an optional property and if not provided, the state will be Active by default.
         * 
         * @return builder
         * 
         */
        public Builder state(ActivityState state) {
            return state(Either.ofRight(state));
        }

        /**
         * @param type Type of activity.
         * Expected value is 'ExecuteSSISPackage'.
         * 
         * @return builder
         * 
         */
        public Builder type(Output type) {
            $.type = type;
            return this;
        }

        /**
         * @param type Type of activity.
         * Expected value is 'ExecuteSSISPackage'.
         * 
         * @return builder
         * 
         */
        public Builder type(String type) {
            return type(Output.of(type));
        }

        /**
         * @param userProperties Activity user properties.
         * 
         * @return builder
         * 
         */
        public Builder userProperties(@Nullable Output> userProperties) {
            $.userProperties = userProperties;
            return this;
        }

        /**
         * @param userProperties Activity user properties.
         * 
         * @return builder
         * 
         */
        public Builder userProperties(List userProperties) {
            return userProperties(Output.of(userProperties));
        }

        /**
         * @param userProperties Activity user properties.
         * 
         * @return builder
         * 
         */
        public Builder userProperties(UserPropertyArgs... userProperties) {
            return userProperties(List.of(userProperties));
        }

        public ExecuteSSISPackageActivityArgs build() {
            if ($.connectVia == null) {
                throw new MissingRequiredPropertyException("ExecuteSSISPackageActivityArgs", "connectVia");
            }
            if ($.name == null) {
                throw new MissingRequiredPropertyException("ExecuteSSISPackageActivityArgs", "name");
            }
            if ($.packageLocation == null) {
                throw new MissingRequiredPropertyException("ExecuteSSISPackageActivityArgs", "packageLocation");
            }
            $.type = Codegen.stringProp("type").output().arg($.type).require();
            return $;
        }
    }

}