#sdk #azure #storage #queues

azure_storage_queues

Azure Queue Storage crate from the Azure SDK for Rust

14 breaking releases

0.15.0 Sep 8, 2023
0.13.0 Jun 28, 2023
0.11.0 Mar 17, 2023
0.9.0 Dec 16, 2022
0.1.0 Jan 25, 2022

#1203 in Network programming

Download history 362/week @ 2023-06-04 267/week @ 2023-06-11 445/week @ 2023-06-18 506/week @ 2023-06-25 399/week @ 2023-07-02 391/week @ 2023-07-09 388/week @ 2023-07-16 402/week @ 2023-07-23 549/week @ 2023-07-30 247/week @ 2023-08-06 204/week @ 2023-08-13 509/week @ 2023-08-20 445/week @ 2023-08-27 397/week @ 2023-09-03 273/week @ 2023-09-10 312/week @ 2023-09-17

1,453 downloads per month

MIT license

335KB
8K SLoC

azure_storage_queues

The Azure Storage Queue crate

This crate is from the Azure SDK for Rust. It supports Azure Queue Storage.

Example

use azure_storage::prelude::*;
use azure_storage_queues::prelude::*;

#[tokio::main]
async fn main() -> azure_core::Result<()> {
    let account = std::env::var("STORAGE_ACCOUNT").expect("missing STORAGE_ACCOUNT");
    let access_key = std::env::var("STORAGE_ACCESS_KEY").expect("missing STORAGE_ACCESS_KEY");
    let queue_name = std::env::var("STORAGE_QUEUE_NAME").expect("missing STORAGE_QUEUE_NAME");

    let storage_credentials = StorageCredentials::Key(account.clone(), access_key);
    let queue_service = QueueServiceClient::new(account, storage_credentials);
    let queue = queue_service.queue_client(queue_name);

    // process messages until there are no more
    loop {
        let response = queue.get_messages().await?;
        if response.messages.is_empty() {
            break;
        }
        for message in response.messages {
            println!("processing message {:?}", message);
            queue.pop_receipt_client(message).delete().await?;
        }
    }

    Ok(())
}

License: MIT

Dependencies

~8–25MB
~376K SLoC