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

com.pulumi.azurenative.web.inputs.AutoHealTriggersArgs Maven / Gradle / Ivy

There is a newer version: 2.78.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.web.inputs;

import com.pulumi.azurenative.web.inputs.RequestsBasedTriggerArgs;
import com.pulumi.azurenative.web.inputs.SlowRequestsBasedTriggerArgs;
import com.pulumi.azurenative.web.inputs.StatusCodesBasedTriggerArgs;
import com.pulumi.azurenative.web.inputs.StatusCodesRangeBasedTriggerArgs;
import com.pulumi.core.Output;
import com.pulumi.core.annotations.Import;
import java.lang.Integer;
import java.util.List;
import java.util.Objects;
import java.util.Optional;
import javax.annotation.Nullable;


/**
 * Triggers for auto-heal.
 * 
 */
public final class AutoHealTriggersArgs extends com.pulumi.resources.ResourceArgs {

    public static final AutoHealTriggersArgs Empty = new AutoHealTriggersArgs();

    /**
     * A rule based on private bytes.
     * 
     */
    @Import(name="privateBytesInKB")
    private @Nullable Output privateBytesInKB;

    /**
     * @return A rule based on private bytes.
     * 
     */
    public Optional> privateBytesInKB() {
        return Optional.ofNullable(this.privateBytesInKB);
    }

    /**
     * A rule based on total requests.
     * 
     */
    @Import(name="requests")
    private @Nullable Output requests;

    /**
     * @return A rule based on total requests.
     * 
     */
    public Optional> requests() {
        return Optional.ofNullable(this.requests);
    }

    /**
     * A rule based on request execution time.
     * 
     */
    @Import(name="slowRequests")
    private @Nullable Output slowRequests;

    /**
     * @return A rule based on request execution time.
     * 
     */
    public Optional> slowRequests() {
        return Optional.ofNullable(this.slowRequests);
    }

    /**
     * A rule based on multiple Slow Requests Rule with path
     * 
     */
    @Import(name="slowRequestsWithPath")
    private @Nullable Output> slowRequestsWithPath;

    /**
     * @return A rule based on multiple Slow Requests Rule with path
     * 
     */
    public Optional>> slowRequestsWithPath() {
        return Optional.ofNullable(this.slowRequestsWithPath);
    }

    /**
     * A rule based on status codes.
     * 
     */
    @Import(name="statusCodes")
    private @Nullable Output> statusCodes;

    /**
     * @return A rule based on status codes.
     * 
     */
    public Optional>> statusCodes() {
        return Optional.ofNullable(this.statusCodes);
    }

    /**
     * A rule based on status codes ranges.
     * 
     */
    @Import(name="statusCodesRange")
    private @Nullable Output> statusCodesRange;

    /**
     * @return A rule based on status codes ranges.
     * 
     */
    public Optional>> statusCodesRange() {
        return Optional.ofNullable(this.statusCodesRange);
    }

    private AutoHealTriggersArgs() {}

    private AutoHealTriggersArgs(AutoHealTriggersArgs $) {
        this.privateBytesInKB = $.privateBytesInKB;
        this.requests = $.requests;
        this.slowRequests = $.slowRequests;
        this.slowRequestsWithPath = $.slowRequestsWithPath;
        this.statusCodes = $.statusCodes;
        this.statusCodesRange = $.statusCodesRange;
    }

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

    public static final class Builder {
        private AutoHealTriggersArgs $;

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

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

        /**
         * @param privateBytesInKB A rule based on private bytes.
         * 
         * @return builder
         * 
         */
        public Builder privateBytesInKB(@Nullable Output privateBytesInKB) {
            $.privateBytesInKB = privateBytesInKB;
            return this;
        }

        /**
         * @param privateBytesInKB A rule based on private bytes.
         * 
         * @return builder
         * 
         */
        public Builder privateBytesInKB(Integer privateBytesInKB) {
            return privateBytesInKB(Output.of(privateBytesInKB));
        }

        /**
         * @param requests A rule based on total requests.
         * 
         * @return builder
         * 
         */
        public Builder requests(@Nullable Output requests) {
            $.requests = requests;
            return this;
        }

        /**
         * @param requests A rule based on total requests.
         * 
         * @return builder
         * 
         */
        public Builder requests(RequestsBasedTriggerArgs requests) {
            return requests(Output.of(requests));
        }

        /**
         * @param slowRequests A rule based on request execution time.
         * 
         * @return builder
         * 
         */
        public Builder slowRequests(@Nullable Output slowRequests) {
            $.slowRequests = slowRequests;
            return this;
        }

        /**
         * @param slowRequests A rule based on request execution time.
         * 
         * @return builder
         * 
         */
        public Builder slowRequests(SlowRequestsBasedTriggerArgs slowRequests) {
            return slowRequests(Output.of(slowRequests));
        }

        /**
         * @param slowRequestsWithPath A rule based on multiple Slow Requests Rule with path
         * 
         * @return builder
         * 
         */
        public Builder slowRequestsWithPath(@Nullable Output> slowRequestsWithPath) {
            $.slowRequestsWithPath = slowRequestsWithPath;
            return this;
        }

        /**
         * @param slowRequestsWithPath A rule based on multiple Slow Requests Rule with path
         * 
         * @return builder
         * 
         */
        public Builder slowRequestsWithPath(List slowRequestsWithPath) {
            return slowRequestsWithPath(Output.of(slowRequestsWithPath));
        }

        /**
         * @param slowRequestsWithPath A rule based on multiple Slow Requests Rule with path
         * 
         * @return builder
         * 
         */
        public Builder slowRequestsWithPath(SlowRequestsBasedTriggerArgs... slowRequestsWithPath) {
            return slowRequestsWithPath(List.of(slowRequestsWithPath));
        }

        /**
         * @param statusCodes A rule based on status codes.
         * 
         * @return builder
         * 
         */
        public Builder statusCodes(@Nullable Output> statusCodes) {
            $.statusCodes = statusCodes;
            return this;
        }

        /**
         * @param statusCodes A rule based on status codes.
         * 
         * @return builder
         * 
         */
        public Builder statusCodes(List statusCodes) {
            return statusCodes(Output.of(statusCodes));
        }

        /**
         * @param statusCodes A rule based on status codes.
         * 
         * @return builder
         * 
         */
        public Builder statusCodes(StatusCodesBasedTriggerArgs... statusCodes) {
            return statusCodes(List.of(statusCodes));
        }

        /**
         * @param statusCodesRange A rule based on status codes ranges.
         * 
         * @return builder
         * 
         */
        public Builder statusCodesRange(@Nullable Output> statusCodesRange) {
            $.statusCodesRange = statusCodesRange;
            return this;
        }

        /**
         * @param statusCodesRange A rule based on status codes ranges.
         * 
         * @return builder
         * 
         */
        public Builder statusCodesRange(List statusCodesRange) {
            return statusCodesRange(Output.of(statusCodesRange));
        }

        /**
         * @param statusCodesRange A rule based on status codes ranges.
         * 
         * @return builder
         * 
         */
        public Builder statusCodesRange(StatusCodesRangeBasedTriggerArgs... statusCodesRange) {
            return statusCodesRange(List.of(statusCodesRange));
        }

        public AutoHealTriggersArgs build() {
            return $;
        }
    }

}




© 2015 - 2024 Weber Informatics LLC | Privacy Policy