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

com.pulumi.azurenative.elastic.inputs.MonitorPropertiesArgs 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.elastic.inputs;

import com.pulumi.azurenative.elastic.enums.MonitoringStatus;
import com.pulumi.azurenative.elastic.enums.ProvisioningState;
import com.pulumi.azurenative.elastic.inputs.UserInfoArgs;
import com.pulumi.core.Either;
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;


/**
 * Properties specific to the monitor resource.
 * 
 */
public final class MonitorPropertiesArgs extends com.pulumi.resources.ResourceArgs {

    public static final MonitorPropertiesArgs Empty = new MonitorPropertiesArgs();

    /**
     * Flag to determine if User API Key has to be generated and shared.
     * 
     */
    @Import(name="generateApiKey")
    private @Nullable Output generateApiKey;

    /**
     * @return Flag to determine if User API Key has to be generated and shared.
     * 
     */
    public Optional> generateApiKey() {
        return Optional.ofNullable(this.generateApiKey);
    }

    /**
     * Flag specifying if the resource monitoring is enabled or disabled.
     * 
     */
    @Import(name="monitoringStatus")
    private @Nullable Output> monitoringStatus;

    /**
     * @return Flag specifying if the resource monitoring is enabled or disabled.
     * 
     */
    public Optional>> monitoringStatus() {
        return Optional.ofNullable(this.monitoringStatus);
    }

    /**
     * Provisioning state of the monitor resource.
     * 
     */
    @Import(name="provisioningState")
    private @Nullable Output> provisioningState;

    /**
     * @return Provisioning state of the monitor resource.
     * 
     */
    public Optional>> provisioningState() {
        return Optional.ofNullable(this.provisioningState);
    }

    /**
     * User information.
     * 
     */
    @Import(name="userInfo")
    private @Nullable Output userInfo;

    /**
     * @return User information.
     * 
     */
    public Optional> userInfo() {
        return Optional.ofNullable(this.userInfo);
    }

    /**
     * Version of elastic of the monitor resource
     * 
     */
    @Import(name="version")
    private @Nullable Output version;

    /**
     * @return Version of elastic of the monitor resource
     * 
     */
    public Optional> version() {
        return Optional.ofNullable(this.version);
    }

    private MonitorPropertiesArgs() {}

    private MonitorPropertiesArgs(MonitorPropertiesArgs $) {
        this.generateApiKey = $.generateApiKey;
        this.monitoringStatus = $.monitoringStatus;
        this.provisioningState = $.provisioningState;
        this.userInfo = $.userInfo;
        this.version = $.version;
    }

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

    public static final class Builder {
        private MonitorPropertiesArgs $;

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

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

        /**
         * @param generateApiKey Flag to determine if User API Key has to be generated and shared.
         * 
         * @return builder
         * 
         */
        public Builder generateApiKey(@Nullable Output generateApiKey) {
            $.generateApiKey = generateApiKey;
            return this;
        }

        /**
         * @param generateApiKey Flag to determine if User API Key has to be generated and shared.
         * 
         * @return builder
         * 
         */
        public Builder generateApiKey(Boolean generateApiKey) {
            return generateApiKey(Output.of(generateApiKey));
        }

        /**
         * @param monitoringStatus Flag specifying if the resource monitoring is enabled or disabled.
         * 
         * @return builder
         * 
         */
        public Builder monitoringStatus(@Nullable Output> monitoringStatus) {
            $.monitoringStatus = monitoringStatus;
            return this;
        }

        /**
         * @param monitoringStatus Flag specifying if the resource monitoring is enabled or disabled.
         * 
         * @return builder
         * 
         */
        public Builder monitoringStatus(Either monitoringStatus) {
            return monitoringStatus(Output.of(monitoringStatus));
        }

        /**
         * @param monitoringStatus Flag specifying if the resource monitoring is enabled or disabled.
         * 
         * @return builder
         * 
         */
        public Builder monitoringStatus(String monitoringStatus) {
            return monitoringStatus(Either.ofLeft(monitoringStatus));
        }

        /**
         * @param monitoringStatus Flag specifying if the resource monitoring is enabled or disabled.
         * 
         * @return builder
         * 
         */
        public Builder monitoringStatus(MonitoringStatus monitoringStatus) {
            return monitoringStatus(Either.ofRight(monitoringStatus));
        }

        /**
         * @param provisioningState Provisioning state of the monitor resource.
         * 
         * @return builder
         * 
         */
        public Builder provisioningState(@Nullable Output> provisioningState) {
            $.provisioningState = provisioningState;
            return this;
        }

        /**
         * @param provisioningState Provisioning state of the monitor resource.
         * 
         * @return builder
         * 
         */
        public Builder provisioningState(Either provisioningState) {
            return provisioningState(Output.of(provisioningState));
        }

        /**
         * @param provisioningState Provisioning state of the monitor resource.
         * 
         * @return builder
         * 
         */
        public Builder provisioningState(String provisioningState) {
            return provisioningState(Either.ofLeft(provisioningState));
        }

        /**
         * @param provisioningState Provisioning state of the monitor resource.
         * 
         * @return builder
         * 
         */
        public Builder provisioningState(ProvisioningState provisioningState) {
            return provisioningState(Either.ofRight(provisioningState));
        }

        /**
         * @param userInfo User information.
         * 
         * @return builder
         * 
         */
        public Builder userInfo(@Nullable Output userInfo) {
            $.userInfo = userInfo;
            return this;
        }

        /**
         * @param userInfo User information.
         * 
         * @return builder
         * 
         */
        public Builder userInfo(UserInfoArgs userInfo) {
            return userInfo(Output.of(userInfo));
        }

        /**
         * @param version Version of elastic of the monitor resource
         * 
         * @return builder
         * 
         */
        public Builder version(@Nullable Output version) {
            $.version = version;
            return this;
        }

        /**
         * @param version Version of elastic of the monitor resource
         * 
         * @return builder
         * 
         */
        public Builder version(String version) {
            return version(Output.of(version));
        }

        public MonitorPropertiesArgs build() {
            return $;
        }
    }

}




© 2015 - 2024 Weber Informatics LLC | Privacy Policy