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

com.pulumi.azurenative.storage.QueueServicePropertiesArgs Maven / Gradle / Ivy

There is a newer version: 2.82.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.storage;

import com.pulumi.azurenative.storage.inputs.CorsRulesArgs;
import com.pulumi.core.Output;
import com.pulumi.core.annotations.Import;
import com.pulumi.exceptions.MissingRequiredPropertyException;
import java.lang.String;
import java.util.Objects;
import java.util.Optional;
import javax.annotation.Nullable;


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

    public static final QueueServicePropertiesArgs Empty = new QueueServicePropertiesArgs();

    /**
     * The name of the storage account within the specified resource group. Storage account names must be between 3 and 24 characters in length and use numbers and lower-case letters only.
     * 
     */
    @Import(name="accountName", required=true)
    private Output accountName;

    /**
     * @return The name of the storage account within the specified resource group. Storage account names must be between 3 and 24 characters in length and use numbers and lower-case letters only.
     * 
     */
    public Output accountName() {
        return this.accountName;
    }

    /**
     * Specifies CORS rules for the Queue service. You can include up to five CorsRule elements in the request. If no CorsRule elements are included in the request body, all CORS rules will be deleted, and CORS will be disabled for the Queue service.
     * 
     */
    @Import(name="cors")
    private @Nullable Output cors;

    /**
     * @return Specifies CORS rules for the Queue service. You can include up to five CorsRule elements in the request. If no CorsRule elements are included in the request body, all CORS rules will be deleted, and CORS will be disabled for the Queue service.
     * 
     */
    public Optional> cors() {
        return Optional.ofNullable(this.cors);
    }

    /**
     * The name of the Queue Service within the specified storage account. Queue Service Name must be 'default'
     * 
     */
    @Import(name="queueServiceName")
    private @Nullable Output queueServiceName;

    /**
     * @return The name of the Queue Service within the specified storage account. Queue Service Name must be 'default'
     * 
     */
    public Optional> queueServiceName() {
        return Optional.ofNullable(this.queueServiceName);
    }

    /**
     * The name of the resource group within the user's subscription. The name is case insensitive.
     * 
     */
    @Import(name="resourceGroupName", required=true)
    private Output resourceGroupName;

    /**
     * @return The name of the resource group within the user's subscription. The name is case insensitive.
     * 
     */
    public Output resourceGroupName() {
        return this.resourceGroupName;
    }

    private QueueServicePropertiesArgs() {}

    private QueueServicePropertiesArgs(QueueServicePropertiesArgs $) {
        this.accountName = $.accountName;
        this.cors = $.cors;
        this.queueServiceName = $.queueServiceName;
        this.resourceGroupName = $.resourceGroupName;
    }

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

    public static final class Builder {
        private QueueServicePropertiesArgs $;

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

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

        /**
         * @param accountName The name of the storage account within the specified resource group. Storage account names must be between 3 and 24 characters in length and use numbers and lower-case letters only.
         * 
         * @return builder
         * 
         */
        public Builder accountName(Output accountName) {
            $.accountName = accountName;
            return this;
        }

        /**
         * @param accountName The name of the storage account within the specified resource group. Storage account names must be between 3 and 24 characters in length and use numbers and lower-case letters only.
         * 
         * @return builder
         * 
         */
        public Builder accountName(String accountName) {
            return accountName(Output.of(accountName));
        }

        /**
         * @param cors Specifies CORS rules for the Queue service. You can include up to five CorsRule elements in the request. If no CorsRule elements are included in the request body, all CORS rules will be deleted, and CORS will be disabled for the Queue service.
         * 
         * @return builder
         * 
         */
        public Builder cors(@Nullable Output cors) {
            $.cors = cors;
            return this;
        }

        /**
         * @param cors Specifies CORS rules for the Queue service. You can include up to five CorsRule elements in the request. If no CorsRule elements are included in the request body, all CORS rules will be deleted, and CORS will be disabled for the Queue service.
         * 
         * @return builder
         * 
         */
        public Builder cors(CorsRulesArgs cors) {
            return cors(Output.of(cors));
        }

        /**
         * @param queueServiceName The name of the Queue Service within the specified storage account. Queue Service Name must be 'default'
         * 
         * @return builder
         * 
         */
        public Builder queueServiceName(@Nullable Output queueServiceName) {
            $.queueServiceName = queueServiceName;
            return this;
        }

        /**
         * @param queueServiceName The name of the Queue Service within the specified storage account. Queue Service Name must be 'default'
         * 
         * @return builder
         * 
         */
        public Builder queueServiceName(String queueServiceName) {
            return queueServiceName(Output.of(queueServiceName));
        }

        /**
         * @param resourceGroupName The name of the resource group within the user's subscription. The name is case insensitive.
         * 
         * @return builder
         * 
         */
        public Builder resourceGroupName(Output resourceGroupName) {
            $.resourceGroupName = resourceGroupName;
            return this;
        }

        /**
         * @param resourceGroupName The name of the resource group within the user's subscription. The name is case insensitive.
         * 
         * @return builder
         * 
         */
        public Builder resourceGroupName(String resourceGroupName) {
            return resourceGroupName(Output.of(resourceGroupName));
        }

        public QueueServicePropertiesArgs build() {
            if ($.accountName == null) {
                throw new MissingRequiredPropertyException("QueueServicePropertiesArgs", "accountName");
            }
            if ($.resourceGroupName == null) {
                throw new MissingRequiredPropertyException("QueueServicePropertiesArgs", "resourceGroupName");
            }
            return $;
        }
    }

}




© 2015 - 2025 Weber Informatics LLC | Privacy Policy