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

com.pulumi.azurenative.compute.inputs.TerminateNotificationProfileArgs Maven / Gradle / Ivy

// *** 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.compute.inputs;

import com.pulumi.core.Output;
import com.pulumi.core.annotations.Import;
import java.lang.Boolean;
import java.lang.String;
import java.util.Objects;
import java.util.Optional;
import javax.annotation.Nullable;


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

    public static final TerminateNotificationProfileArgs Empty = new TerminateNotificationProfileArgs();

    /**
     * Specifies whether the Terminate Scheduled event is enabled or disabled.
     * 
     */
    @Import(name="enable")
    private @Nullable Output enable;

    /**
     * @return Specifies whether the Terminate Scheduled event is enabled or disabled.
     * 
     */
    public Optional> enable() {
        return Optional.ofNullable(this.enable);
    }

    /**
     * Configurable length of time a Virtual Machine being deleted will have to potentially approve the Terminate Scheduled Event before the event is auto approved (timed out). The configuration must be specified in ISO 8601 format, the default value is 5 minutes (PT5M)
     * 
     */
    @Import(name="notBeforeTimeout")
    private @Nullable Output notBeforeTimeout;

    /**
     * @return Configurable length of time a Virtual Machine being deleted will have to potentially approve the Terminate Scheduled Event before the event is auto approved (timed out). The configuration must be specified in ISO 8601 format, the default value is 5 minutes (PT5M)
     * 
     */
    public Optional> notBeforeTimeout() {
        return Optional.ofNullable(this.notBeforeTimeout);
    }

    private TerminateNotificationProfileArgs() {}

    private TerminateNotificationProfileArgs(TerminateNotificationProfileArgs $) {
        this.enable = $.enable;
        this.notBeforeTimeout = $.notBeforeTimeout;
    }

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

    public static final class Builder {
        private TerminateNotificationProfileArgs $;

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

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

        /**
         * @param enable Specifies whether the Terminate Scheduled event is enabled or disabled.
         * 
         * @return builder
         * 
         */
        public Builder enable(@Nullable Output enable) {
            $.enable = enable;
            return this;
        }

        /**
         * @param enable Specifies whether the Terminate Scheduled event is enabled or disabled.
         * 
         * @return builder
         * 
         */
        public Builder enable(Boolean enable) {
            return enable(Output.of(enable));
        }

        /**
         * @param notBeforeTimeout Configurable length of time a Virtual Machine being deleted will have to potentially approve the Terminate Scheduled Event before the event is auto approved (timed out). The configuration must be specified in ISO 8601 format, the default value is 5 minutes (PT5M)
         * 
         * @return builder
         * 
         */
        public Builder notBeforeTimeout(@Nullable Output notBeforeTimeout) {
            $.notBeforeTimeout = notBeforeTimeout;
            return this;
        }

        /**
         * @param notBeforeTimeout Configurable length of time a Virtual Machine being deleted will have to potentially approve the Terminate Scheduled Event before the event is auto approved (timed out). The configuration must be specified in ISO 8601 format, the default value is 5 minutes (PT5M)
         * 
         * @return builder
         * 
         */
        public Builder notBeforeTimeout(String notBeforeTimeout) {
            return notBeforeTimeout(Output.of(notBeforeTimeout));
        }

        public TerminateNotificationProfileArgs build() {
            return $;
        }
    }

}




© 2015 - 2025 Weber Informatics LLC | Privacy Policy