All Downloads are FREE. Search and download functionalities are using the official Maven repository.
Please wait. This can take some minutes ...
Many resources are needed to download a project. Please understand that we have to compensate our server costs. Thank you in advance.
Project price only 1 $
You can buy this project and download/modify it how often you want.
com.pulumi.azure.servicebus.NamespaceArgs Maven / Gradle / Ivy
Go to download
A Pulumi package for creating and managing Microsoft Azure cloud resources, based on the Terraform azurerm provider. We recommend using the [Azure Native provider](https://github.com/pulumi/pulumi-azure-native) to provision Azure infrastructure. Azure Native provides complete coverage of Azure resources and same-day access to new resources and resource updates.
// *** 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.servicebus;
import com.pulumi.azure.servicebus.inputs.NamespaceCustomerManagedKeyArgs;
import com.pulumi.azure.servicebus.inputs.NamespaceIdentityArgs;
import com.pulumi.azure.servicebus.inputs.NamespaceNetworkRuleSetArgs;
import com.pulumi.core.Output;
import com.pulumi.core.annotations.Import;
import com.pulumi.exceptions.MissingRequiredPropertyException;
import java.lang.Boolean;
import java.lang.Integer;
import java.lang.String;
import java.util.Map;
import java.util.Objects;
import java.util.Optional;
import javax.annotation.Nullable;
public final class NamespaceArgs extends com.pulumi.resources.ResourceArgs {
public static final NamespaceArgs Empty = new NamespaceArgs();
/**
* Specifies the capacity. When `sku` is `Premium`, capacity can be `1`, `2`, `4`, `8` or `16`. When `sku` is `Basic` or `Standard`, capacity can be `0` only.
*
*/
@Import(name="capacity")
private @Nullable Output capacity;
/**
* @return Specifies the capacity. When `sku` is `Premium`, capacity can be `1`, `2`, `4`, `8` or `16`. When `sku` is `Basic` or `Standard`, capacity can be `0` only.
*
*/
public Optional> capacity() {
return Optional.ofNullable(this.capacity);
}
/**
* An `customer_managed_key` block as defined below.
*
*/
@Import(name="customerManagedKey")
private @Nullable Output customerManagedKey;
/**
* @return An `customer_managed_key` block as defined below.
*
*/
public Optional> customerManagedKey() {
return Optional.ofNullable(this.customerManagedKey);
}
/**
* An `identity` block as defined below.
*
*/
@Import(name="identity")
private @Nullable Output identity;
/**
* @return An `identity` block as defined below.
*
*/
public Optional> identity() {
return Optional.ofNullable(this.identity);
}
/**
* Whether or not SAS authentication is enabled for the Service Bus namespace. Defaults to `true`.
*
*/
@Import(name="localAuthEnabled")
private @Nullable Output localAuthEnabled;
/**
* @return Whether or not SAS authentication is enabled for the Service Bus namespace. Defaults to `true`.
*
*/
public Optional> localAuthEnabled() {
return Optional.ofNullable(this.localAuthEnabled);
}
/**
* Specifies the supported Azure location where the resource exists. Changing this forces a new resource to be created.
*
*/
@Import(name="location")
private @Nullable Output location;
/**
* @return Specifies the supported Azure location where the resource exists. Changing this forces a new resource to be created.
*
*/
public Optional> location() {
return Optional.ofNullable(this.location);
}
/**
* The minimum supported TLS version for this Service Bus Namespace. Valid values are: `1.0`, `1.1` and `1.2`. Defaults to `1.2`.
*
*/
@Import(name="minimumTlsVersion")
private @Nullable Output minimumTlsVersion;
/**
* @return The minimum supported TLS version for this Service Bus Namespace. Valid values are: `1.0`, `1.1` and `1.2`. Defaults to `1.2`.
*
*/
public Optional> minimumTlsVersion() {
return Optional.ofNullable(this.minimumTlsVersion);
}
/**
* Specifies the name of the ServiceBus Namespace resource . Changing this forces a new resource to be created.
*
*/
@Import(name="name")
private @Nullable Output name;
/**
* @return Specifies the name of the ServiceBus Namespace resource . Changing this forces a new resource to be created.
*
*/
public Optional> name() {
return Optional.ofNullable(this.name);
}
/**
* An `network_rule_set` block as defined below.
*
*/
@Import(name="networkRuleSet")
private @Nullable Output networkRuleSet;
/**
* @return An `network_rule_set` block as defined below.
*
*/
public Optional> networkRuleSet() {
return Optional.ofNullable(this.networkRuleSet);
}
/**
* Specifies the number messaging partitions. Only valid when `sku` is `Premium` and the minimum number is `1`. Possible values include `0`, `1`, `2`, and `4`. Defaults to `0` for Standard, Basic namespace. Changing this forces a new resource to be created.
*
* > **Note:** It's not possible to change the partitioning option on any existing namespace. The number of partitions can only be set during namespace creation. Please check the doc https://learn.microsoft.com/en-us/azure/service-bus-messaging/enable-partitions-premium for more feature restrictions.
*
*/
@Import(name="premiumMessagingPartitions")
private @Nullable Output premiumMessagingPartitions;
/**
* @return Specifies the number messaging partitions. Only valid when `sku` is `Premium` and the minimum number is `1`. Possible values include `0`, `1`, `2`, and `4`. Defaults to `0` for Standard, Basic namespace. Changing this forces a new resource to be created.
*
* > **Note:** It's not possible to change the partitioning option on any existing namespace. The number of partitions can only be set during namespace creation. Please check the doc https://learn.microsoft.com/en-us/azure/service-bus-messaging/enable-partitions-premium for more feature restrictions.
*
*/
public Optional> premiumMessagingPartitions() {
return Optional.ofNullable(this.premiumMessagingPartitions);
}
/**
* Is public network access enabled for the Service Bus Namespace? Defaults to `true`.
*
*/
@Import(name="publicNetworkAccessEnabled")
private @Nullable Output publicNetworkAccessEnabled;
/**
* @return Is public network access enabled for the Service Bus Namespace? Defaults to `true`.
*
*/
public Optional> publicNetworkAccessEnabled() {
return Optional.ofNullable(this.publicNetworkAccessEnabled);
}
/**
* The name of the resource group in which to Changing this forces a new resource to be created.
* create the namespace.
*
*/
@Import(name="resourceGroupName", required=true)
private Output resourceGroupName;
/**
* @return The name of the resource group in which to Changing this forces a new resource to be created.
* create the namespace.
*
*/
public Output resourceGroupName() {
return this.resourceGroupName;
}
/**
* Defines which tier to use. Options are `Basic`, `Standard` or `Premium`. Please note that setting this field to `Premium` will force the creation of a new resource.
*
*/
@Import(name="sku", required=true)
private Output sku;
/**
* @return Defines which tier to use. Options are `Basic`, `Standard` or `Premium`. Please note that setting this field to `Premium` will force the creation of a new resource.
*
*/
public Output sku() {
return this.sku;
}
/**
* A mapping of tags to assign to the resource.
*
*/
@Import(name="tags")
private @Nullable Output> tags;
/**
* @return A mapping of tags to assign to the resource.
*
*/
public Optional>> tags() {
return Optional.ofNullable(this.tags);
}
private NamespaceArgs() {}
private NamespaceArgs(NamespaceArgs $) {
this.capacity = $.capacity;
this.customerManagedKey = $.customerManagedKey;
this.identity = $.identity;
this.localAuthEnabled = $.localAuthEnabled;
this.location = $.location;
this.minimumTlsVersion = $.minimumTlsVersion;
this.name = $.name;
this.networkRuleSet = $.networkRuleSet;
this.premiumMessagingPartitions = $.premiumMessagingPartitions;
this.publicNetworkAccessEnabled = $.publicNetworkAccessEnabled;
this.resourceGroupName = $.resourceGroupName;
this.sku = $.sku;
this.tags = $.tags;
}
public static Builder builder() {
return new Builder();
}
public static Builder builder(NamespaceArgs defaults) {
return new Builder(defaults);
}
public static final class Builder {
private NamespaceArgs $;
public Builder() {
$ = new NamespaceArgs();
}
public Builder(NamespaceArgs defaults) {
$ = new NamespaceArgs(Objects.requireNonNull(defaults));
}
/**
* @param capacity Specifies the capacity. When `sku` is `Premium`, capacity can be `1`, `2`, `4`, `8` or `16`. When `sku` is `Basic` or `Standard`, capacity can be `0` only.
*
* @return builder
*
*/
public Builder capacity(@Nullable Output capacity) {
$.capacity = capacity;
return this;
}
/**
* @param capacity Specifies the capacity. When `sku` is `Premium`, capacity can be `1`, `2`, `4`, `8` or `16`. When `sku` is `Basic` or `Standard`, capacity can be `0` only.
*
* @return builder
*
*/
public Builder capacity(Integer capacity) {
return capacity(Output.of(capacity));
}
/**
* @param customerManagedKey An `customer_managed_key` block as defined below.
*
* @return builder
*
*/
public Builder customerManagedKey(@Nullable Output customerManagedKey) {
$.customerManagedKey = customerManagedKey;
return this;
}
/**
* @param customerManagedKey An `customer_managed_key` block as defined below.
*
* @return builder
*
*/
public Builder customerManagedKey(NamespaceCustomerManagedKeyArgs customerManagedKey) {
return customerManagedKey(Output.of(customerManagedKey));
}
/**
* @param identity An `identity` block as defined below.
*
* @return builder
*
*/
public Builder identity(@Nullable Output identity) {
$.identity = identity;
return this;
}
/**
* @param identity An `identity` block as defined below.
*
* @return builder
*
*/
public Builder identity(NamespaceIdentityArgs identity) {
return identity(Output.of(identity));
}
/**
* @param localAuthEnabled Whether or not SAS authentication is enabled for the Service Bus namespace. Defaults to `true`.
*
* @return builder
*
*/
public Builder localAuthEnabled(@Nullable Output localAuthEnabled) {
$.localAuthEnabled = localAuthEnabled;
return this;
}
/**
* @param localAuthEnabled Whether or not SAS authentication is enabled for the Service Bus namespace. Defaults to `true`.
*
* @return builder
*
*/
public Builder localAuthEnabled(Boolean localAuthEnabled) {
return localAuthEnabled(Output.of(localAuthEnabled));
}
/**
* @param location Specifies the supported Azure location where the resource exists. Changing this forces a new resource to be created.
*
* @return builder
*
*/
public Builder location(@Nullable Output location) {
$.location = location;
return this;
}
/**
* @param location Specifies the supported Azure location where the resource exists. Changing this forces a new resource to be created.
*
* @return builder
*
*/
public Builder location(String location) {
return location(Output.of(location));
}
/**
* @param minimumTlsVersion The minimum supported TLS version for this Service Bus Namespace. Valid values are: `1.0`, `1.1` and `1.2`. Defaults to `1.2`.
*
* @return builder
*
*/
public Builder minimumTlsVersion(@Nullable Output minimumTlsVersion) {
$.minimumTlsVersion = minimumTlsVersion;
return this;
}
/**
* @param minimumTlsVersion The minimum supported TLS version for this Service Bus Namespace. Valid values are: `1.0`, `1.1` and `1.2`. Defaults to `1.2`.
*
* @return builder
*
*/
public Builder minimumTlsVersion(String minimumTlsVersion) {
return minimumTlsVersion(Output.of(minimumTlsVersion));
}
/**
* @param name Specifies the name of the ServiceBus Namespace resource . Changing this forces a new resource to be created.
*
* @return builder
*
*/
public Builder name(@Nullable Output name) {
$.name = name;
return this;
}
/**
* @param name Specifies the name of the ServiceBus Namespace resource . Changing this forces a new resource to be created.
*
* @return builder
*
*/
public Builder name(String name) {
return name(Output.of(name));
}
/**
* @param networkRuleSet An `network_rule_set` block as defined below.
*
* @return builder
*
*/
public Builder networkRuleSet(@Nullable Output networkRuleSet) {
$.networkRuleSet = networkRuleSet;
return this;
}
/**
* @param networkRuleSet An `network_rule_set` block as defined below.
*
* @return builder
*
*/
public Builder networkRuleSet(NamespaceNetworkRuleSetArgs networkRuleSet) {
return networkRuleSet(Output.of(networkRuleSet));
}
/**
* @param premiumMessagingPartitions Specifies the number messaging partitions. Only valid when `sku` is `Premium` and the minimum number is `1`. Possible values include `0`, `1`, `2`, and `4`. Defaults to `0` for Standard, Basic namespace. Changing this forces a new resource to be created.
*
* > **Note:** It's not possible to change the partitioning option on any existing namespace. The number of partitions can only be set during namespace creation. Please check the doc https://learn.microsoft.com/en-us/azure/service-bus-messaging/enable-partitions-premium for more feature restrictions.
*
* @return builder
*
*/
public Builder premiumMessagingPartitions(@Nullable Output premiumMessagingPartitions) {
$.premiumMessagingPartitions = premiumMessagingPartitions;
return this;
}
/**
* @param premiumMessagingPartitions Specifies the number messaging partitions. Only valid when `sku` is `Premium` and the minimum number is `1`. Possible values include `0`, `1`, `2`, and `4`. Defaults to `0` for Standard, Basic namespace. Changing this forces a new resource to be created.
*
* > **Note:** It's not possible to change the partitioning option on any existing namespace. The number of partitions can only be set during namespace creation. Please check the doc https://learn.microsoft.com/en-us/azure/service-bus-messaging/enable-partitions-premium for more feature restrictions.
*
* @return builder
*
*/
public Builder premiumMessagingPartitions(Integer premiumMessagingPartitions) {
return premiumMessagingPartitions(Output.of(premiumMessagingPartitions));
}
/**
* @param publicNetworkAccessEnabled Is public network access enabled for the Service Bus Namespace? Defaults to `true`.
*
* @return builder
*
*/
public Builder publicNetworkAccessEnabled(@Nullable Output publicNetworkAccessEnabled) {
$.publicNetworkAccessEnabled = publicNetworkAccessEnabled;
return this;
}
/**
* @param publicNetworkAccessEnabled Is public network access enabled for the Service Bus Namespace? Defaults to `true`.
*
* @return builder
*
*/
public Builder publicNetworkAccessEnabled(Boolean publicNetworkAccessEnabled) {
return publicNetworkAccessEnabled(Output.of(publicNetworkAccessEnabled));
}
/**
* @param resourceGroupName The name of the resource group in which to Changing this forces a new resource to be created.
* create the namespace.
*
* @return builder
*
*/
public Builder resourceGroupName(Output resourceGroupName) {
$.resourceGroupName = resourceGroupName;
return this;
}
/**
* @param resourceGroupName The name of the resource group in which to Changing this forces a new resource to be created.
* create the namespace.
*
* @return builder
*
*/
public Builder resourceGroupName(String resourceGroupName) {
return resourceGroupName(Output.of(resourceGroupName));
}
/**
* @param sku Defines which tier to use. Options are `Basic`, `Standard` or `Premium`. Please note that setting this field to `Premium` will force the creation of a new resource.
*
* @return builder
*
*/
public Builder sku(Output sku) {
$.sku = sku;
return this;
}
/**
* @param sku Defines which tier to use. Options are `Basic`, `Standard` or `Premium`. Please note that setting this field to `Premium` will force the creation of a new resource.
*
* @return builder
*
*/
public Builder sku(String sku) {
return sku(Output.of(sku));
}
/**
* @param tags A mapping of tags to assign to the resource.
*
* @return builder
*
*/
public Builder tags(@Nullable Output> tags) {
$.tags = tags;
return this;
}
/**
* @param tags A mapping of tags to assign to the resource.
*
* @return builder
*
*/
public Builder tags(Map tags) {
return tags(Output.of(tags));
}
public NamespaceArgs build() {
if ($.resourceGroupName == null) {
throw new MissingRequiredPropertyException("NamespaceArgs", "resourceGroupName");
}
if ($.sku == null) {
throw new MissingRequiredPropertyException("NamespaceArgs", "sku");
}
return $;
}
}
}