[][src]Struct azure_functions::bindings::ServiceBusMessage

pub struct ServiceBusMessage(_);

Represents a Service Bus message output binding.

The following binding attributes are supported:

NameDescription
nameThe name of the parameter being bound.
queue_nameThe name of the queue. Use only if sending queue messages, not for a topic.
topic_nameThe name of the topic. Use only if sending topic messages, not for a queue.
subscription_nameThe name of the subscription. Use only if sending topic messages, not for a queue.
connectionThe name of an app setting that contains the Service Bus connection string to use for this binding. Defaults to AzureWebJobsServiceBus.

Examples

An example that creates a Service Bus queue message based on a HTTP trigger:

use azure_functions::{
    bindings::{HttpRequest, ServiceBusMessage},
    func,
};

#[func]
#[binding(name = "$return", queue_name = "example", connection = "connection")]
pub fn create_queue_message(req: HttpRequest) -> ServiceBusMessage {
    format!(
        "Hello from Rust, {}!\n",
        req.query_params().get("name").map_or("stranger", |x| x)
    )
    .into()
}

An example that creates a Service Bus topic message based on a HTTP trigger:

use azure_functions::{
    bindings::{HttpRequest, ServiceBusMessage},
    func,
};

#[func]
#[binding(
    name = "$return",
    topic_name = "mytopic",
    subscription_name = "mysubscription",
    connection = "connection"
)]
pub fn create_topic_message(req: HttpRequest) -> ServiceBusMessage {
    format!(
        "Hello from Rust, {}!\n",
        req.query_params().get("name").map_or("stranger", |x| x)
    )
    .into()
}

Methods

impl ServiceBusMessage[src]

pub fn as_str(&self) -> Option<&str>[src]

Gets the content of the message as a string.

Returns None if there is no valid string representation of the message.

pub fn as_bytes(&self) -> &[u8][src]

Gets the content of the message as a slice of bytes.

pub fn as_json<'b, T>(&'b self) -> Result<T> where
    T: Deserialize<'b>, 
[src]

Deserializes the message as JSON to the requested type.

Trait Implementations

impl Into<String> for ServiceBusMessage[src]

impl Into<Value> for ServiceBusMessage[src]

impl Into<Vec<u8>> for ServiceBusMessage[src]

impl<'a> Into<Body<'a>> for ServiceBusMessage[src]

impl<'a> From<&'a str> for ServiceBusMessage[src]

impl From<String> for ServiceBusMessage[src]

impl<'_> From<&'_ Value> for ServiceBusMessage[src]

impl From<Value> for ServiceBusMessage[src]

impl<'a> From<&'a [u8]> for ServiceBusMessage[src]

impl From<Vec<u8>> for ServiceBusMessage[src]

impl Clone for ServiceBusMessage[src]

impl Display for ServiceBusMessage[src]

impl Debug for ServiceBusMessage[src]

Auto Trait Implementations

Blanket Implementations

impl<T, U> Into<U> for T where
    U: From<T>, 
[src]

impl<T> From<T> for T[src]

impl<T> ToOwned for T where
    T: Clone
[src]

type Owned = T

The resulting type after obtaining ownership.

impl<T> ToString for T where
    T: Display + ?Sized
[src]

impl<T, U> TryFrom<U> for T where
    U: Into<T>, 
[src]

type Error = Infallible

The type returned in the event of a conversion error.

impl<T, U> TryInto<U> for T where
    U: TryFrom<T>, 
[src]

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.

impl<T> Borrow<T> for T where
    T: ?Sized
[src]

impl<T> BorrowMut<T> for T where
    T: ?Sized
[src]

impl<T> Any for T where
    T: 'static + ?Sized
[src]

impl<T> IntoRequest<T> for T[src]

impl<V, T> VZip<V> for T where
    V: MultiLane<T>,