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

com.pulumi.azurenative.sql.JobStepArgs Maven / Gradle / Ivy

There is a newer version: 2.82.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.sql;

import com.pulumi.azurenative.sql.inputs.JobStepActionArgs;
import com.pulumi.azurenative.sql.inputs.JobStepExecutionOptionsArgs;
import com.pulumi.azurenative.sql.inputs.JobStepOutputArgs;
import com.pulumi.core.Output;
import com.pulumi.core.annotations.Import;
import com.pulumi.exceptions.MissingRequiredPropertyException;
import java.lang.Integer;
import java.lang.String;
import java.util.Objects;
import java.util.Optional;
import javax.annotation.Nullable;


public final class JobStepArgs extends com.pulumi.resources.ResourceArgs {

    public static final JobStepArgs Empty = new JobStepArgs();

    /**
     * The action payload of the job step.
     * 
     */
    @Import(name="action", required=true)
    private Output action;

    /**
     * @return The action payload of the job step.
     * 
     */
    public Output action() {
        return this.action;
    }

    /**
     * The resource ID of the job credential that will be used to connect to the targets.
     * 
     */
    @Import(name="credential", required=true)
    private Output credential;

    /**
     * @return The resource ID of the job credential that will be used to connect to the targets.
     * 
     */
    public Output credential() {
        return this.credential;
    }

    /**
     * Execution options for the job step.
     * 
     */
    @Import(name="executionOptions")
    private @Nullable Output executionOptions;

    /**
     * @return Execution options for the job step.
     * 
     */
    public Optional> executionOptions() {
        return Optional.ofNullable(this.executionOptions);
    }

    /**
     * The name of the job agent.
     * 
     */
    @Import(name="jobAgentName", required=true)
    private Output jobAgentName;

    /**
     * @return The name of the job agent.
     * 
     */
    public Output jobAgentName() {
        return this.jobAgentName;
    }

    /**
     * The name of the job.
     * 
     */
    @Import(name="jobName", required=true)
    private Output jobName;

    /**
     * @return The name of the job.
     * 
     */
    public Output jobName() {
        return this.jobName;
    }

    /**
     * Output destination properties of the job step.
     * 
     */
    @Import(name="output")
    private @Nullable Output output;

    /**
     * @return Output destination properties of the job step.
     * 
     */
    public Optional> output() {
        return Optional.ofNullable(this.output);
    }

    /**
     * The name of the resource group that contains the resource. You can obtain this value from the Azure Resource Manager API or the portal.
     * 
     */
    @Import(name="resourceGroupName", required=true)
    private Output resourceGroupName;

    /**
     * @return The name of the resource group that contains the resource. You can obtain this value from the Azure Resource Manager API or the portal.
     * 
     */
    public Output resourceGroupName() {
        return this.resourceGroupName;
    }

    /**
     * The name of the server.
     * 
     */
    @Import(name="serverName", required=true)
    private Output serverName;

    /**
     * @return The name of the server.
     * 
     */
    public Output serverName() {
        return this.serverName;
    }

    /**
     * The job step's index within the job. If not specified when creating the job step, it will be created as the last step. If not specified when updating the job step, the step id is not modified.
     * 
     */
    @Import(name="stepId")
    private @Nullable Output stepId;

    /**
     * @return The job step's index within the job. If not specified when creating the job step, it will be created as the last step. If not specified when updating the job step, the step id is not modified.
     * 
     */
    public Optional> stepId() {
        return Optional.ofNullable(this.stepId);
    }

    /**
     * The name of the job step.
     * 
     */
    @Import(name="stepName")
    private @Nullable Output stepName;

    /**
     * @return The name of the job step.
     * 
     */
    public Optional> stepName() {
        return Optional.ofNullable(this.stepName);
    }

    /**
     * The resource ID of the target group that the job step will be executed on.
     * 
     */
    @Import(name="targetGroup", required=true)
    private Output targetGroup;

    /**
     * @return The resource ID of the target group that the job step will be executed on.
     * 
     */
    public Output targetGroup() {
        return this.targetGroup;
    }

    private JobStepArgs() {}

    private JobStepArgs(JobStepArgs $) {
        this.action = $.action;
        this.credential = $.credential;
        this.executionOptions = $.executionOptions;
        this.jobAgentName = $.jobAgentName;
        this.jobName = $.jobName;
        this.output = $.output;
        this.resourceGroupName = $.resourceGroupName;
        this.serverName = $.serverName;
        this.stepId = $.stepId;
        this.stepName = $.stepName;
        this.targetGroup = $.targetGroup;
    }

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

    public static final class Builder {
        private JobStepArgs $;

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

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

        /**
         * @param action The action payload of the job step.
         * 
         * @return builder
         * 
         */
        public Builder action(Output action) {
            $.action = action;
            return this;
        }

        /**
         * @param action The action payload of the job step.
         * 
         * @return builder
         * 
         */
        public Builder action(JobStepActionArgs action) {
            return action(Output.of(action));
        }

        /**
         * @param credential The resource ID of the job credential that will be used to connect to the targets.
         * 
         * @return builder
         * 
         */
        public Builder credential(Output credential) {
            $.credential = credential;
            return this;
        }

        /**
         * @param credential The resource ID of the job credential that will be used to connect to the targets.
         * 
         * @return builder
         * 
         */
        public Builder credential(String credential) {
            return credential(Output.of(credential));
        }

        /**
         * @param executionOptions Execution options for the job step.
         * 
         * @return builder
         * 
         */
        public Builder executionOptions(@Nullable Output executionOptions) {
            $.executionOptions = executionOptions;
            return this;
        }

        /**
         * @param executionOptions Execution options for the job step.
         * 
         * @return builder
         * 
         */
        public Builder executionOptions(JobStepExecutionOptionsArgs executionOptions) {
            return executionOptions(Output.of(executionOptions));
        }

        /**
         * @param jobAgentName The name of the job agent.
         * 
         * @return builder
         * 
         */
        public Builder jobAgentName(Output jobAgentName) {
            $.jobAgentName = jobAgentName;
            return this;
        }

        /**
         * @param jobAgentName The name of the job agent.
         * 
         * @return builder
         * 
         */
        public Builder jobAgentName(String jobAgentName) {
            return jobAgentName(Output.of(jobAgentName));
        }

        /**
         * @param jobName The name of the job.
         * 
         * @return builder
         * 
         */
        public Builder jobName(Output jobName) {
            $.jobName = jobName;
            return this;
        }

        /**
         * @param jobName The name of the job.
         * 
         * @return builder
         * 
         */
        public Builder jobName(String jobName) {
            return jobName(Output.of(jobName));
        }

        /**
         * @param output Output destination properties of the job step.
         * 
         * @return builder
         * 
         */
        public Builder output(@Nullable Output output) {
            $.output = output;
            return this;
        }

        /**
         * @param output Output destination properties of the job step.
         * 
         * @return builder
         * 
         */
        public Builder output(JobStepOutputArgs output) {
            return output(Output.of(output));
        }

        /**
         * @param resourceGroupName The name of the resource group that contains the resource. You can obtain this value from the Azure Resource Manager API or the portal.
         * 
         * @return builder
         * 
         */
        public Builder resourceGroupName(Output resourceGroupName) {
            $.resourceGroupName = resourceGroupName;
            return this;
        }

        /**
         * @param resourceGroupName The name of the resource group that contains the resource. You can obtain this value from the Azure Resource Manager API or the portal.
         * 
         * @return builder
         * 
         */
        public Builder resourceGroupName(String resourceGroupName) {
            return resourceGroupName(Output.of(resourceGroupName));
        }

        /**
         * @param serverName The name of the server.
         * 
         * @return builder
         * 
         */
        public Builder serverName(Output serverName) {
            $.serverName = serverName;
            return this;
        }

        /**
         * @param serverName The name of the server.
         * 
         * @return builder
         * 
         */
        public Builder serverName(String serverName) {
            return serverName(Output.of(serverName));
        }

        /**
         * @param stepId The job step's index within the job. If not specified when creating the job step, it will be created as the last step. If not specified when updating the job step, the step id is not modified.
         * 
         * @return builder
         * 
         */
        public Builder stepId(@Nullable Output stepId) {
            $.stepId = stepId;
            return this;
        }

        /**
         * @param stepId The job step's index within the job. If not specified when creating the job step, it will be created as the last step. If not specified when updating the job step, the step id is not modified.
         * 
         * @return builder
         * 
         */
        public Builder stepId(Integer stepId) {
            return stepId(Output.of(stepId));
        }

        /**
         * @param stepName The name of the job step.
         * 
         * @return builder
         * 
         */
        public Builder stepName(@Nullable Output stepName) {
            $.stepName = stepName;
            return this;
        }

        /**
         * @param stepName The name of the job step.
         * 
         * @return builder
         * 
         */
        public Builder stepName(String stepName) {
            return stepName(Output.of(stepName));
        }

        /**
         * @param targetGroup The resource ID of the target group that the job step will be executed on.
         * 
         * @return builder
         * 
         */
        public Builder targetGroup(Output targetGroup) {
            $.targetGroup = targetGroup;
            return this;
        }

        /**
         * @param targetGroup The resource ID of the target group that the job step will be executed on.
         * 
         * @return builder
         * 
         */
        public Builder targetGroup(String targetGroup) {
            return targetGroup(Output.of(targetGroup));
        }

        public JobStepArgs build() {
            if ($.action == null) {
                throw new MissingRequiredPropertyException("JobStepArgs", "action");
            }
            if ($.credential == null) {
                throw new MissingRequiredPropertyException("JobStepArgs", "credential");
            }
            if ($.jobAgentName == null) {
                throw new MissingRequiredPropertyException("JobStepArgs", "jobAgentName");
            }
            if ($.jobName == null) {
                throw new MissingRequiredPropertyException("JobStepArgs", "jobName");
            }
            if ($.resourceGroupName == null) {
                throw new MissingRequiredPropertyException("JobStepArgs", "resourceGroupName");
            }
            if ($.serverName == null) {
                throw new MissingRequiredPropertyException("JobStepArgs", "serverName");
            }
            if ($.targetGroup == null) {
                throw new MissingRequiredPropertyException("JobStepArgs", "targetGroup");
            }
            return $;
        }
    }

}




© 2015 - 2025 Weber Informatics LLC | Privacy Policy