Table of Contents

Class QueueDescription

Namespace
Microsoft.Azure.ServiceBus.Management
Assembly
Microsoft.Azure.ServiceBus.dll

Represents the metadata description of the queue.

public class QueueDescription : IEquatable<QueueDescription>
Inheritance
QueueDescription
Implements
Inherited Members

Constructors

QueueDescription(string)

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

public QueueDescription(string path)

Parameters

path string

Path of the queue relative to the namespace base address.

Properties

AuthorizationRules

The AuthorizationRules on the queue to control user access at entity level.

public AuthorizationRules AuthorizationRules { get; }

Property Value

AuthorizationRules

AutoDeleteOnIdle

The TimeSpan idle interval after which the queue is automatically deleted.

public TimeSpan AutoDeleteOnIdle { get; set; }

Property Value

TimeSpan

Remarks

The minimum duration is 5 minutes. Default value is MaxValue.

DefaultMessageTimeToLive

The default time to live value for the messages. This is the duration after which the message expires, starting from when the message is sent to Service Bus.

public TimeSpan DefaultMessageTimeToLive { get; set; }

Property Value

TimeSpan

Remarks

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. Default value is MaxValue.

DuplicateDetectionHistoryTimeWindow

The TimeSpan duration of duplicate detection history that is maintained by the service.

public TimeSpan DuplicateDetectionHistoryTimeWindow { get; set; }

Property Value

TimeSpan

Remarks

The default value is 1 minute. Max value is 7 days and minimum is 20 seconds.

EnableBatchedOperations

Indicates whether server-side batched operations are enabled.

public bool EnableBatchedOperations { get; set; }

Property Value

bool

Remarks

Defaults to true.

EnableDeadLetteringOnMessageExpiration

Indicates whether this queue has dead letter support when a message expires.

public bool EnableDeadLetteringOnMessageExpiration { get; set; }

Property Value

bool

Remarks

If true, the expired messages are moved to dead-letter sub-queue. Default value is false.

EnablePartitioning

Indicates whether the queue is to be partitioned across multiple message brokers.

public bool EnablePartitioning { get; set; }

Property Value

bool

Remarks

Defaults to false.

ForwardDeadLetteredMessagesTo

The path of the recipient entity to which all the dead-lettered messages of this queue are forwarded to.

public string ForwardDeadLetteredMessagesTo { get; set; }

Property Value

string

Remarks

If set, user cannot manually receive dead-lettered messages from this queue. The destination entity must already exist.

ForwardTo

The path of the recipient entity to which all the messages sent to the queue are forwarded to.

public string ForwardTo { get; set; }

Property Value

string

Remarks

If set, user cannot manually receive messages from this queue. The destination entity must be an already existing entity.

LockDuration

Duration of a peek lock receive. i.e., the amount of time that the message is locked by a given receiver so that no other receiver receives the same message.

public TimeSpan LockDuration { get; set; }

Property Value

TimeSpan

Remarks

Max value is 5 minutes. Default value is 60 seconds.

MaxDeliveryCount

The maximum delivery count of a message before it is dead-lettered.

public int MaxDeliveryCount { get; set; }

Property Value

int

Remarks

The delivery count is increased when a message is received in PeekLock mode and didn't complete the message before the message lock expired. Default value is 10. Minimum value is 1.

MaxSizeInMB

The maximum size of the queue in megabytes, which is the size of memory allocated for the queue.

public long MaxSizeInMB { get; set; }

Property Value

long

Remarks

Default value is 1024.

Path

Path of the queue relative to the namespace base address.

public string Path { get; set; }

Property Value

string

Remarks

Max length is 260 chars. Cannot start or end with a slash. Cannot have restricted characters: '@','?','#','*'

RequiresDuplicateDetection

This value indicates if the queue requires guard against duplicate messages. If true, duplicate messages having same MessageId and sent to queue within duration of DuplicateDetectionHistoryTimeWindow will be discarded.

public bool RequiresDuplicateDetection { get; set; }

Property Value

bool

Remarks

Defaults to false.

RequiresSession

This indicates whether the queue supports the concept of session. Sessionful-messages follow FIFO ordering.

public bool RequiresSession { get; set; }

Property Value

bool

Remarks

If true, the receiver can only recieve messages using AcceptMessageSessionAsync(). Defaults to false.

Status

The current status of the queue (Enabled / Disabled).

public EntityStatus Status { get; set; }

Property Value

EntityStatus

Remarks

When an entity is disabled, that entity cannot send or receive messages.

UserMetadata

Custom metdata that user can associate with the description.

public string UserMetadata { get; set; }

Property Value

string

Remarks

Cannot be null. Max length is 1024 chars.

Methods

Equals(QueueDescription)

public bool Equals(QueueDescription otherDescription)

Parameters

otherDescription QueueDescription

Returns

bool

Equals(object)

public override bool Equals(object obj)

Parameters

obj object

Returns

bool

GetHashCode()

public override int GetHashCode()

Returns

int

Operators

operator ==(QueueDescription, QueueDescription)

public static bool operator ==(QueueDescription o1, QueueDescription o2)

Parameters

o1 QueueDescription
o2 QueueDescription

Returns

bool

operator !=(QueueDescription, QueueDescription)

public static bool operator !=(QueueDescription o1, QueueDescription o2)

Parameters

o1 QueueDescription
o2 QueueDescription

Returns

bool