AzureStorage.Queue (AzureStorage v0.1.6) View Source
Azure Queue Storage
ref. https://docs.microsoft.com/en-us/rest/api/storageservices/queue-service-rest-api
{:ok, context} = AzureStorage.create_queue_service("account_name", "account_key")
context |> list_queues()
Link to this section Summary
Functions
The Put Message operation adds a new message to the back of the message queue.
The Create Queue operation creates a queue in a storage account.
Azure Queue items can be retrieve by calling get_messages/3
.
The Delete Queue operation permanently deletes the specified queue.
The Get Messages operation retrieves one or more messages from the front of the queue.
This operation lists all of the queues in a given storage account.
Update queue item commonly use for updating queue item visibility timeout as well as queue message body
Link to this section Functions
The Put Message operation adds a new message to the back of the message queue.
A visibility timeout can also be specified to make the message invisible until the visibility timeout expires. A message must be in a format that can be included in an XML request with UTF-8 encoding. The encoded message can be up to 64 KiB in size for versions 2011-08-18 and newer, or 8 KiB in size for previous versions.
ref. https://docs.microsoft.com/en-us/rest/api/storageservices/put-message
context |> create_message("booking-queue", "hello world")
The Create Queue operation creates a queue in a storage account.
ref. https://docs.microsoft.com/en-us/rest/api/storageservices/create-queue4
context |> create_queue("booking-queue")
Azure Queue items can be retrieve by calling get_messages/3
.
However, queue items are not remove from storage. Therefore, client need to send request to delete queue item when it is done processing.
The Delete Queue operation permanently deletes the specified queue.
ref. https://docs.microsoft.com/en-us/rest/api/storageservices/delete-queue3
context |> delete_queue("booking-queue")
Specs
get_messages(AzureStorage.Request.Context.t(), String.t(), keyword()) :: {:ok, list() | []} | {:error, String.t()}
The Get Messages operation retrieves one or more messages from the front of the queue.
ref. https://docs.microsoft.com/en-us/rest/api/storageservices/get-messages
Supported options:
:visibilitytimeout
- false Message visibility timeout in second The default value is30
.:numofmessages
- false Number of messages to retrieve from the queue, up to a maximum of 32. The default value is1
.:timeout
- false The default value is30
.
Specs
list_queues(AzureStorage.Request.Context.t()) :: {:ok, %{items: list() | [], marker: String.t() | nil}} | {:error, String.t()}
This operation lists all of the queues in a given storage account.
Update queue item commonly use for updating queue item visibility timeout as well as queue message body
{:ok, messages} = context |> get_messages("booking-queue")
[head | tail] = messages
context |> update_message("booking-queue", head, "hello world!")
Supported options:
:visibilitytimeout
- false Message visibility timeout in second The default value is0
.:messagettl
- false Message time to live in second The default value is604800
.:timeout
- false The default value is30
.