stomp-agnostic 0.8.0

A transport agnostic, asynchronous, STOMP client
Documentation

STOMP Agnostic

crates.io docs.rs

A transport and async agnostic STOMP library for Rust.

This is a fork of async-stomp.

Overview

This library contains an implementation of the STOMP 1.2 protocol, but does not mandate any specific transport method.

(Non-) Performance

This crate does not have a specific focus on performance.

Transport agnostic

Other STOMP libraries, like async-stomp, wstomp, etc. focus on one, or a few, specific transport methods such as TCP or WebSockets. This crate on the other hand, exposes a trait Transport and the implementor is responsible for the transport. This makes this crate compatible with e.g. tokio-tungstenite, but you have to implement the Transport trait yourself, there is nothing implemented for tokio-tungstenite out-of-the box.

Async agnostic

This crate does not depend on a specific async stack. Bring your own.

Features

  • Async STOMP client for Rust
  • Support for all STOMP operations:
    • Connection management (connect, disconnect)
    • Message publishing
    • Subscriptions
    • Acknowledgments (auto, client, client-individual modes)
    • Transactions
  • Custom headers support for advanced configurations

License

Licensed under the EUPL.