Table of Contents

Class TopicDescription

Namespace
Microsoft.ServiceBus.Messaging
Assembly
Microsoft.ServiceBus.dll

Represents a description of the topic.

[DataContract(Name = "TopicDescription", Namespace = "http://schemas.microsoft.com/netservices/2010/10/servicebus/connect")]
public sealed class TopicDescription : EntityDescription, IExtensibleDataObject
Inheritance
TopicDescription
Implements
IExtensibleDataObject
Inherited Members

Constructors

TopicDescription(string)

Initializes a new instance of the TopicDescription class with the specified relative path.

public TopicDescription(string path)

Parameters

path string

The path of the topic relative to the service namespace base address.

Fields

MessageTimeToLiveDefaultValue

Specifies the message time to live default value.

public static readonly TimeSpan MessageTimeToLiveDefaultValue

Field Value

TimeSpan

Properties

AccessedAt

Gets the time and date at which a message was last sent to the topic.

public DateTime AccessedAt { get; }

Property Value

DateTime

The time and date at which a message was last sent to the topic.

Authorization

Gets the authorization rules for the description.

public AuthorizationRules Authorization { get; }

Property Value

AuthorizationRules

The authorization rules for the description.

AutoDeleteOnIdle

Gets or sets the TimeSpan idle interval after which the topic is automatically deleted. The minimum duration is 5 minutes.

public TimeSpan AutoDeleteOnIdle { get; set; }

Property Value

TimeSpan

The auto delete on idle time span for the topic.

AvailabilityStatus

Gets the status of the availability of this instance.

public EntityAvailabilityStatus AvailabilityStatus { get; }

Property Value

EntityAvailabilityStatus

The status of the availability of this instance.

CreatedAt

Gets the time and date when the topic was created.

public DateTime CreatedAt { get; }

Property Value

DateTime

The time and date when the topic was created.

DefaultMessageTimeToLive

Gets or sets the default message time to live value for a topic. This is the duration after which the message expires, starting from when the message is sent to the Service Bus. This is the default value used when TimeToLive is not set on a message itself.Messages older than their TimeToLive value will expire and no longer be retained in the message store. Subscribers will be unable to receive expired messages.

public TimeSpan DefaultMessageTimeToLive { get; set; }

Property Value

TimeSpan

The default message time to live for a topic.

DuplicateDetectionHistoryTimeWindow

Gets or sets the TimeSpan structure that defines the duration of the duplicate detection history.

public TimeSpan DuplicateDetectionHistoryTimeWindow { get; set; }

Property Value

TimeSpan

The TimeSpan structure that defines the duration of the duplicate detection history.

EnableBatchedOperations

Gets or sets a value that indicates whether server-side batched operations are enabled.

public bool EnableBatchedOperations { get; set; }

Property Value

bool

true if the batched operations are enabled; otherwise, false.

EnableExpress

Gets or sets a value that indicates whether Express Entities are enabled. An express topic holds a message in memory temporarily before writing it to persistent storage.

public bool EnableExpress { get; set; }

Property Value

bool

true if the Express Entities are enabled; otherwise, false.

EnableFilteringMessagesBeforePublishing

Gets or sets whether messages should be filtered before publishing.

public bool EnableFilteringMessagesBeforePublishing { get; set; }

Property Value

bool

true if message filtering is enabled before publishing; otherwise, false.

Exceptions

NoMatchingSubscriptionException

Thrown if the subscriptions do not match.

EnablePartitioning

Gets or sets whether to enable the topic to be partitioned across multiple message brokers. An express topic holds a message in memory temporarily before writing it to persistent storage.

public bool EnablePartitioning { get; set; }

Property Value

bool

true to enable the topic to be partitioned across multiple message brokers; otherwise, false.

IsAnonymousAccessible

Gets whether anonymous access is allowed.

public bool IsAnonymousAccessible { get; set; }

Property Value

bool

true if anonymous access is allowed; otherwise, false.

MaxSizeInMegabytes

Gets or sets the maximum size of the topic in megabytes, which is the size of memory allocated for the topic.

public long MaxSizeInMegabytes { get; set; }

Property Value

long

The maximum size in megabytes.

MessageCountDetails

Gets message details about the topic.

public MessageCountDetails MessageCountDetails { get; }

Property Value

MessageCountDetails

The MessageCountDetails that contains the number of active messages, dead letters, scheduled messages, messages transferred to other queues, subscriptions, or topics, and the number of messages transferred to the dead letter queue.

Path

Gets the path of the topic.

public string Path { get; set; }

Property Value

string

The path of the topic.

RequiresDuplicateDetection

Gets or sets the value that indicates whether a topic requires duplication detection.

public bool RequiresDuplicateDetection { get; set; }

Property Value

bool

true if a topic requires duplication detection; otherwise, false.

SizeInBytes

Gets the size of the topic in bytes.

public long SizeInBytes { get; }

Property Value

long

The size of the topic in bytes.

Status

Gets or sets the current status of the topic (enabled or disabled). When an entity is disabled, that entity cannot send or receive messages.

public EntityStatus Status { get; set; }

Property Value

EntityStatus

The status of the topic.

SubscriptionCount

Gets then number of subscriptions.

public int SubscriptionCount { get; }

Property Value

int

An int that represents the number of subscriptions.

SupportOrdering

Gets or sets the support ordering method.

public bool SupportOrdering { get; set; }

Property Value

bool

The support ordering method.

UpdatedAt

Gets the time and date when the topic was updated.

public DateTime UpdatedAt { get; }

Property Value

DateTime

The time and date when the topic was updated.

UserMetadata

Gets or sets the user metadata associated with the description.

public string UserMetadata { get; set; }

Property Value

string

The user metadata associated with the description.