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

com.pulumi.aws.ssmincidents.inputs.ResponsePlanIncidentTemplateArgs 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.ssmincidents.inputs;

import com.pulumi.aws.ssmincidents.inputs.ResponsePlanIncidentTemplateNotificationTargetArgs;
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.List;
import java.util.Map;
import java.util.Objects;
import java.util.Optional;
import javax.annotation.Nullable;


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

    public static final ResponsePlanIncidentTemplateArgs Empty = new ResponsePlanIncidentTemplateArgs();

    /**
     * A string used to stop Incident Manager from creating multiple incident records for the same incident.
     * 
     */
    @Import(name="dedupeString")
    private @Nullable Output dedupeString;

    /**
     * @return A string used to stop Incident Manager from creating multiple incident records for the same incident.
     * 
     */
    public Optional> dedupeString() {
        return Optional.ofNullable(this.dedupeString);
    }

    /**
     * The impact value of a generated incident. The following values are supported:
     * 
     */
    @Import(name="impact", required=true)
    private Output impact;

    /**
     * @return The impact value of a generated incident. The following values are supported:
     * 
     */
    public Output impact() {
        return this.impact;
    }

    /**
     * The tags assigned to an incident template. When an incident starts, Incident Manager assigns the tags specified in the template to the incident.
     * 
     */
    @Import(name="incidentTags")
    private @Nullable Output> incidentTags;

    /**
     * @return The tags assigned to an incident template. When an incident starts, Incident Manager assigns the tags specified in the template to the incident.
     * 
     */
    public Optional>> incidentTags() {
        return Optional.ofNullable(this.incidentTags);
    }

    /**
     * The Amazon Simple Notification Service (Amazon SNS) targets that this incident notifies when it is updated. The `notification_target` configuration block supports the following argument:
     * 
     */
    @Import(name="notificationTargets")
    private @Nullable Output> notificationTargets;

    /**
     * @return The Amazon Simple Notification Service (Amazon SNS) targets that this incident notifies when it is updated. The `notification_target` configuration block supports the following argument:
     * 
     */
    public Optional>> notificationTargets() {
        return Optional.ofNullable(this.notificationTargets);
    }

    /**
     * The summary of an incident.
     * 
     */
    @Import(name="summary")
    private @Nullable Output summary;

    /**
     * @return The summary of an incident.
     * 
     */
    public Optional> summary() {
        return Optional.ofNullable(this.summary);
    }

    /**
     * The title of a generated incident.
     * 
     */
    @Import(name="title", required=true)
    private Output title;

    /**
     * @return The title of a generated incident.
     * 
     */
    public Output title() {
        return this.title;
    }

    private ResponsePlanIncidentTemplateArgs() {}

    private ResponsePlanIncidentTemplateArgs(ResponsePlanIncidentTemplateArgs $) {
        this.dedupeString = $.dedupeString;
        this.impact = $.impact;
        this.incidentTags = $.incidentTags;
        this.notificationTargets = $.notificationTargets;
        this.summary = $.summary;
        this.title = $.title;
    }

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

    public static final class Builder {
        private ResponsePlanIncidentTemplateArgs $;

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

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

        /**
         * @param dedupeString A string used to stop Incident Manager from creating multiple incident records for the same incident.
         * 
         * @return builder
         * 
         */
        public Builder dedupeString(@Nullable Output dedupeString) {
            $.dedupeString = dedupeString;
            return this;
        }

        /**
         * @param dedupeString A string used to stop Incident Manager from creating multiple incident records for the same incident.
         * 
         * @return builder
         * 
         */
        public Builder dedupeString(String dedupeString) {
            return dedupeString(Output.of(dedupeString));
        }

        /**
         * @param impact The impact value of a generated incident. The following values are supported:
         * 
         * @return builder
         * 
         */
        public Builder impact(Output impact) {
            $.impact = impact;
            return this;
        }

        /**
         * @param impact The impact value of a generated incident. The following values are supported:
         * 
         * @return builder
         * 
         */
        public Builder impact(Integer impact) {
            return impact(Output.of(impact));
        }

        /**
         * @param incidentTags The tags assigned to an incident template. When an incident starts, Incident Manager assigns the tags specified in the template to the incident.
         * 
         * @return builder
         * 
         */
        public Builder incidentTags(@Nullable Output> incidentTags) {
            $.incidentTags = incidentTags;
            return this;
        }

        /**
         * @param incidentTags The tags assigned to an incident template. When an incident starts, Incident Manager assigns the tags specified in the template to the incident.
         * 
         * @return builder
         * 
         */
        public Builder incidentTags(Map incidentTags) {
            return incidentTags(Output.of(incidentTags));
        }

        /**
         * @param notificationTargets The Amazon Simple Notification Service (Amazon SNS) targets that this incident notifies when it is updated. The `notification_target` configuration block supports the following argument:
         * 
         * @return builder
         * 
         */
        public Builder notificationTargets(@Nullable Output> notificationTargets) {
            $.notificationTargets = notificationTargets;
            return this;
        }

        /**
         * @param notificationTargets The Amazon Simple Notification Service (Amazon SNS) targets that this incident notifies when it is updated. The `notification_target` configuration block supports the following argument:
         * 
         * @return builder
         * 
         */
        public Builder notificationTargets(List notificationTargets) {
            return notificationTargets(Output.of(notificationTargets));
        }

        /**
         * @param notificationTargets The Amazon Simple Notification Service (Amazon SNS) targets that this incident notifies when it is updated. The `notification_target` configuration block supports the following argument:
         * 
         * @return builder
         * 
         */
        public Builder notificationTargets(ResponsePlanIncidentTemplateNotificationTargetArgs... notificationTargets) {
            return notificationTargets(List.of(notificationTargets));
        }

        /**
         * @param summary The summary of an incident.
         * 
         * @return builder
         * 
         */
        public Builder summary(@Nullable Output summary) {
            $.summary = summary;
            return this;
        }

        /**
         * @param summary The summary of an incident.
         * 
         * @return builder
         * 
         */
        public Builder summary(String summary) {
            return summary(Output.of(summary));
        }

        /**
         * @param title The title of a generated incident.
         * 
         * @return builder
         * 
         */
        public Builder title(Output title) {
            $.title = title;
            return this;
        }

        /**
         * @param title The title of a generated incident.
         * 
         * @return builder
         * 
         */
        public Builder title(String title) {
            return title(Output.of(title));
        }

        public ResponsePlanIncidentTemplateArgs build() {
            if ($.impact == null) {
                throw new MissingRequiredPropertyException("ResponsePlanIncidentTemplateArgs", "impact");
            }
            if ($.title == null) {
                throw new MissingRequiredPropertyException("ResponsePlanIncidentTemplateArgs", "title");
            }
            return $;
        }
    }

}




© 2015 - 2025 Weber Informatics LLC | Privacy Policy