Trait wasmcloud_interface_messaging::Messaging[][src]

pub trait Messaging {
    fn publish<'life0, 'life1, 'life2, 'async_trait>(
        &'life0 self,
        ctx: &'life1 Context,
        arg: &'life2 PubMessage
    ) -> Pin<Box<dyn Future<Output = RpcResult<()>> + Send + 'async_trait>>
    where
        'life0: 'async_trait,
        'life1: 'async_trait,
        'life2: 'async_trait,
        Self: 'async_trait
;
fn request<'life0, 'life1, 'life2, 'async_trait>(
        &'life0 self,
        ctx: &'life1 Context,
        arg: &'life2 RequestMessage
    ) -> Pin<Box<dyn Future<Output = RpcResult<ReplyMessage>> + Send + 'async_trait>>
    where
        'life0: 'async_trait,
        'life1: 'async_trait,
        'life2: 'async_trait,
        Self: 'async_trait
; fn contract_id() -> &'static str { ... } }
Expand description

The Messaging interface describes a service that can deliver messages wasmbus.contractId: wasmcloud:messaging wasmbus.providerReceive

Required methods

Publish - send a message The function returns after the message has been sent. If the sender expects to receive an asynchronous reply, the replyTo field should be filled with the subject for the response.

Request - send a message in a request/reply pattern, waiting for a response.

Provided methods

returns the capability contract id for this interface

Implementors