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

com.pulumi.azure.securitycenter.inputs.AutomationSourceRuleSetRuleArgs 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.azure.securitycenter.inputs;

import com.pulumi.core.Output;
import com.pulumi.core.annotations.Import;
import com.pulumi.exceptions.MissingRequiredPropertyException;
import java.lang.String;
import java.util.Objects;


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

    public static final AutomationSourceRuleSetRuleArgs Empty = new AutomationSourceRuleSetRuleArgs();

    /**
     * A value that will be compared with the value in `property_path`.
     * 
     */
    @Import(name="expectedValue", required=true)
    private Output expectedValue;

    /**
     * @return A value that will be compared with the value in `property_path`.
     * 
     */
    public Output expectedValue() {
        return this.expectedValue;
    }

    /**
     * The comparison operator to use, must be one of: `Contains`, `EndsWith`, `Equals`, `GreaterThan`, `GreaterThanOrEqualTo`, `LesserThan`, `LesserThanOrEqualTo`, `NotEquals`, `StartsWith`
     * 
     */
    @Import(name="operator", required=true)
    private Output operator;

    /**
     * @return The comparison operator to use, must be one of: `Contains`, `EndsWith`, `Equals`, `GreaterThan`, `GreaterThanOrEqualTo`, `LesserThan`, `LesserThanOrEqualTo`, `NotEquals`, `StartsWith`
     * 
     */
    public Output operator() {
        return this.operator;
    }

    /**
     * The JPath of the entity model property that should be checked.
     * 
     */
    @Import(name="propertyPath", required=true)
    private Output propertyPath;

    /**
     * @return The JPath of the entity model property that should be checked.
     * 
     */
    public Output propertyPath() {
        return this.propertyPath;
    }

    /**
     * The data type of the compared operands, must be one of: `Integer`, `String`, `Boolean` or `Number`.
     * 
     * > **NOTE:** The schema for Security Center alerts (when `event_source` is "Alerts") [can be found here](https://docs.microsoft.com/azure/security-center/alerts-schemas?tabs=schema-continuousexport)
     * 
     */
    @Import(name="propertyType", required=true)
    private Output propertyType;

    /**
     * @return The data type of the compared operands, must be one of: `Integer`, `String`, `Boolean` or `Number`.
     * 
     * > **NOTE:** The schema for Security Center alerts (when `event_source` is "Alerts") [can be found here](https://docs.microsoft.com/azure/security-center/alerts-schemas?tabs=schema-continuousexport)
     * 
     */
    public Output propertyType() {
        return this.propertyType;
    }

    private AutomationSourceRuleSetRuleArgs() {}

    private AutomationSourceRuleSetRuleArgs(AutomationSourceRuleSetRuleArgs $) {
        this.expectedValue = $.expectedValue;
        this.operator = $.operator;
        this.propertyPath = $.propertyPath;
        this.propertyType = $.propertyType;
    }

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

    public static final class Builder {
        private AutomationSourceRuleSetRuleArgs $;

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

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

        /**
         * @param expectedValue A value that will be compared with the value in `property_path`.
         * 
         * @return builder
         * 
         */
        public Builder expectedValue(Output expectedValue) {
            $.expectedValue = expectedValue;
            return this;
        }

        /**
         * @param expectedValue A value that will be compared with the value in `property_path`.
         * 
         * @return builder
         * 
         */
        public Builder expectedValue(String expectedValue) {
            return expectedValue(Output.of(expectedValue));
        }

        /**
         * @param operator The comparison operator to use, must be one of: `Contains`, `EndsWith`, `Equals`, `GreaterThan`, `GreaterThanOrEqualTo`, `LesserThan`, `LesserThanOrEqualTo`, `NotEquals`, `StartsWith`
         * 
         * @return builder
         * 
         */
        public Builder operator(Output operator) {
            $.operator = operator;
            return this;
        }

        /**
         * @param operator The comparison operator to use, must be one of: `Contains`, `EndsWith`, `Equals`, `GreaterThan`, `GreaterThanOrEqualTo`, `LesserThan`, `LesserThanOrEqualTo`, `NotEquals`, `StartsWith`
         * 
         * @return builder
         * 
         */
        public Builder operator(String operator) {
            return operator(Output.of(operator));
        }

        /**
         * @param propertyPath The JPath of the entity model property that should be checked.
         * 
         * @return builder
         * 
         */
        public Builder propertyPath(Output propertyPath) {
            $.propertyPath = propertyPath;
            return this;
        }

        /**
         * @param propertyPath The JPath of the entity model property that should be checked.
         * 
         * @return builder
         * 
         */
        public Builder propertyPath(String propertyPath) {
            return propertyPath(Output.of(propertyPath));
        }

        /**
         * @param propertyType The data type of the compared operands, must be one of: `Integer`, `String`, `Boolean` or `Number`.
         * 
         * > **NOTE:** The schema for Security Center alerts (when `event_source` is "Alerts") [can be found here](https://docs.microsoft.com/azure/security-center/alerts-schemas?tabs=schema-continuousexport)
         * 
         * @return builder
         * 
         */
        public Builder propertyType(Output propertyType) {
            $.propertyType = propertyType;
            return this;
        }

        /**
         * @param propertyType The data type of the compared operands, must be one of: `Integer`, `String`, `Boolean` or `Number`.
         * 
         * > **NOTE:** The schema for Security Center alerts (when `event_source` is "Alerts") [can be found here](https://docs.microsoft.com/azure/security-center/alerts-schemas?tabs=schema-continuousexport)
         * 
         * @return builder
         * 
         */
        public Builder propertyType(String propertyType) {
            return propertyType(Output.of(propertyType));
        }

        public AutomationSourceRuleSetRuleArgs build() {
            if ($.expectedValue == null) {
                throw new MissingRequiredPropertyException("AutomationSourceRuleSetRuleArgs", "expectedValue");
            }
            if ($.operator == null) {
                throw new MissingRequiredPropertyException("AutomationSourceRuleSetRuleArgs", "operator");
            }
            if ($.propertyPath == null) {
                throw new MissingRequiredPropertyException("AutomationSourceRuleSetRuleArgs", "propertyPath");
            }
            if ($.propertyType == null) {
                throw new MissingRequiredPropertyException("AutomationSourceRuleSetRuleArgs", "propertyType");
            }
            return $;
        }
    }

}




© 2015 - 2024 Weber Informatics LLC | Privacy Policy