Skip to content

Latest commit

 

History

History
71 lines (58 loc) · 5.05 KB

QueueExtensions.md

File metadata and controls

71 lines (58 loc) · 5.05 KB

Queue Extensions

Behaviors

This repository contains the following behaviors:

Processors

This repository contains the following processors:

Commands

Queue extensions depend on queue commands, which represent the actual extension implementation:

Options

Queue extensions are controlled using QueueOptions<TMessage>.

The same option can have different requirements within the scope of different commands. Options requirements are as follows:

  • Required: the value is required and an exception will be thrown if one is not supplied
  • Default: the value is required and a default will be provided if one is not supplied
  • Optional: the value is optional and will be used if one is supplied, ignored otherwise
  • Ignored: the value is not used by the command and supplying one will have no effect

Options and their requirements are described in the following table:

Option Description Send Delete Receive
IsEnabled true to enable execution of the extension, false to disable it Default 1 Default 1 Default 1
QueueClient The queue client against which the operation is executed Required Required Required
QueueMessage The System.BinaryData containing the content to upload Default 2 Ignored Ignored
Visibility Specifies the visibility delay for the message Optional Ignored Optional
TimeToLive Specifies the time-to-live interval for the message Optional Ignored Ignored
Received The event that is raised after the message is received Ignored Ignored Optional
Delete The event that identifies the message to be deleted Ignored Required 3 Ignored

Footnotes

  1. false 2 3

  2. the message content is serialized as a JSON object

  3. messages to be deleted from a queue are identified using MessageId and PopReceipt (this is obtained when the message is received)