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

com.pulumi.aws.ssmcontacts.PlanArgs Maven / Gradle / Ivy

Go to download

A Pulumi package for creating and managing Amazon Web Services (AWS) cloud resources.

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.aws.ssmcontacts;

import com.pulumi.aws.ssmcontacts.inputs.PlanStageArgs;
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;


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

    public static final PlanArgs Empty = new PlanArgs();

    /**
     * The Amazon Resource Name (ARN) of the contact or escalation plan.
     * 
     */
    @Import(name="contactId", required=true)
    private Output contactId;

    /**
     * @return The Amazon Resource Name (ARN) of the contact or escalation plan.
     * 
     */
    public Output contactId() {
        return this.contactId;
    }

    /**
     * One or more configuration blocks for specifying a list of stages that the escalation plan or engagement plan uses to engage contacts and contact methods. See Stage below for more details.
     * 
     */
    @Import(name="stages", required=true)
    private Output> stages;

    /**
     * @return One or more configuration blocks for specifying a list of stages that the escalation plan or engagement plan uses to engage contacts and contact methods. See Stage below for more details.
     * 
     */
    public Output> stages() {
        return this.stages;
    }

    private PlanArgs() {}

    private PlanArgs(PlanArgs $) {
        this.contactId = $.contactId;
        this.stages = $.stages;
    }

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

    public static final class Builder {
        private PlanArgs $;

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

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

        /**
         * @param contactId The Amazon Resource Name (ARN) of the contact or escalation plan.
         * 
         * @return builder
         * 
         */
        public Builder contactId(Output contactId) {
            $.contactId = contactId;
            return this;
        }

        /**
         * @param contactId The Amazon Resource Name (ARN) of the contact or escalation plan.
         * 
         * @return builder
         * 
         */
        public Builder contactId(String contactId) {
            return contactId(Output.of(contactId));
        }

        /**
         * @param stages One or more configuration blocks for specifying a list of stages that the escalation plan or engagement plan uses to engage contacts and contact methods. See Stage below for more details.
         * 
         * @return builder
         * 
         */
        public Builder stages(Output> stages) {
            $.stages = stages;
            return this;
        }

        /**
         * @param stages One or more configuration blocks for specifying a list of stages that the escalation plan or engagement plan uses to engage contacts and contact methods. See Stage below for more details.
         * 
         * @return builder
         * 
         */
        public Builder stages(List stages) {
            return stages(Output.of(stages));
        }

        /**
         * @param stages One or more configuration blocks for specifying a list of stages that the escalation plan or engagement plan uses to engage contacts and contact methods. See Stage below for more details.
         * 
         * @return builder
         * 
         */
        public Builder stages(PlanStageArgs... stages) {
            return stages(List.of(stages));
        }

        public PlanArgs build() {
            if ($.contactId == null) {
                throw new MissingRequiredPropertyException("PlanArgs", "contactId");
            }
            if ($.stages == null) {
                throw new MissingRequiredPropertyException("PlanArgs", "stages");
            }
            return $;
        }
    }

}




© 2015 - 2025 Weber Informatics LLC | Privacy Policy