TopicArgs

data class TopicArgs(val autoDeleteOnIdle: Output<String>? = null, val defaultMessageTtl: Output<String>? = null, val duplicateDetectionHistoryTimeWindow: Output<String>? = null, val enableBatchedOperations: Output<Boolean>? = null, val enableExpress: Output<Boolean>? = null, val enablePartitioning: Output<Boolean>? = null, val maxMessageSizeInKilobytes: Output<Int>? = null, val maxSizeInMegabytes: Output<Int>? = null, val name: Output<String>? = null, val namespaceId: Output<String>? = null, val requiresDuplicateDetection: Output<Boolean>? = null, val status: Output<String>? = null, val supportOrdering: Output<Boolean>? = null) : ConvertibleToJava<TopicArgs>

Manages a ServiceBus Topic. Note Topics can only be created in Namespaces with an SKU of standard or higher.

Example Usage

package generated_program;
import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.azure.core.ResourceGroup;
import com.pulumi.azure.core.ResourceGroupArgs;
import com.pulumi.azure.servicebus.Namespace;
import com.pulumi.azure.servicebus.NamespaceArgs;
import com.pulumi.azure.servicebus.Topic;
import com.pulumi.azure.servicebus.TopicArgs;
import java.util.List;
import java.util.ArrayList;
import java.util.Map;
import java.io.File;
import java.nio.file.Files;
import java.nio.file.Paths;
public class App {
public static void main(String[] args) {
Pulumi.run(App::stack);
}
public static void stack(Context ctx) {
var exampleResourceGroup = new ResourceGroup("exampleResourceGroup", ResourceGroupArgs.builder()
.location("West Europe")
.build());
var exampleNamespace = new Namespace("exampleNamespace", NamespaceArgs.builder()
.location(exampleResourceGroup.location())
.resourceGroupName(exampleResourceGroup.name())
.sku("Standard")
.tags(Map.of("source", "example"))
.build());
var exampleTopic = new Topic("exampleTopic", TopicArgs.builder()
.namespaceId(exampleNamespace.id())
.enablePartitioning(true)
.build());
}
}

Import

Service Bus Topics can be imported using the resource id, e.g.

$ pulumi import azure:servicebus/topic:Topic example /subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/mygroup1/providers/Microsoft.ServiceBus/namespaces/sbns1/topics/sntopic1

Constructors

Link copied to clipboard
fun TopicArgs(autoDeleteOnIdle: Output<String>? = null, defaultMessageTtl: Output<String>? = null, duplicateDetectionHistoryTimeWindow: Output<String>? = null, enableBatchedOperations: Output<Boolean>? = null, enableExpress: Output<Boolean>? = null, enablePartitioning: Output<Boolean>? = null, maxMessageSizeInKilobytes: Output<Int>? = null, maxSizeInMegabytes: Output<Int>? = null, name: Output<String>? = null, namespaceId: Output<String>? = null, requiresDuplicateDetection: Output<Boolean>? = null, status: Output<String>? = null, supportOrdering: Output<Boolean>? = null)

Functions

Link copied to clipboard
open override fun toJava(): TopicArgs

Properties

Link copied to clipboard
val autoDeleteOnIdle: Output<String>? = null

The ISO 8601 timespan duration of the idle interval after which the Topic is automatically deleted, minimum of 5 minutes.

Link copied to clipboard
val defaultMessageTtl: Output<String>? = null

The ISO 8601 timespan duration of TTL of messages sent to this topic if no TTL value is set on the message itself.

Link copied to clipboard

The ISO 8601 timespan duration during which duplicates can be detected. Defaults to 10 minutes. (PT10M)

Link copied to clipboard
val enableBatchedOperations: Output<Boolean>? = null

Boolean flag which controls if server-side batched operations are enabled.

Link copied to clipboard
val enableExpress: Output<Boolean>? = null

Boolean flag which controls whether Express Entities are enabled. An express topic holds a message in memory temporarily before writing it to persistent storage.

Link copied to clipboard
val enablePartitioning: Output<Boolean>? = null

Boolean flag which controls whether to enable the topic to be partitioned across multiple message brokers. Defaults to false. Changing this forces a new resource to be created.

Link copied to clipboard
val maxMessageSizeInKilobytes: Output<Int>? = null

Integer value which controls the maximum size of a message allowed on the topic for Premium SKU. For supported values see the "Large messages support" section of this document.

Link copied to clipboard
val maxSizeInMegabytes: Output<Int>? = null

Integer value which controls the size of memory allocated for the topic. For supported values see the "Queue/topic size" section of this document.

Link copied to clipboard
val name: Output<String>? = null

Specifies the name of the ServiceBus Topic resource. Changing this forces a new resource to be created.

Link copied to clipboard
val namespaceId: Output<String>? = null

The ID of the ServiceBus Namespace to create Changing this forces a new resource to be created. this topic in. Changing this forces a new resource to be created.

Link copied to clipboard
val requiresDuplicateDetection: Output<Boolean>? = null

Boolean flag which controls whether Changing this forces a new resource to be created. the Topic requires duplicate detection. Defaults to false. Changing this forces a new resource to be created.

Link copied to clipboard
val status: Output<String>? = null

The Status of the Service Bus Topic. Acceptable values are Active or Disabled. Defaults to Active.

Link copied to clipboard
val supportOrdering: Output<Boolean>? = null

Boolean flag which controls whether the Topic supports ordering.