Expand description
DDS-WEB bridge to the DDS-DCPS public API — Spec §7.4.
Implements §7.4 §7.4 class operations Application + Participant + Topic + Pub/Sub + Writer/Reader from partial to done.
Spec source: OMG DDS-WEB 1.0 §7.4 (pp. 17-58) — all CRUD operations of the web object model that is mapped to the DDS public API.
§Layer discipline
Here we define a trait DdsBackend that decouples the two
layers:
crates/web/defines REST routes (seerest.rs) and the web object model (seemodel.rs).- A concrete backend implementation in a higher layer
(e.g. a daemon crate) implements
DdsBackendand calls the DDS public API (crates/dcps/).
We keep the trait deliberately minimal — one method per operation,
no hidden async runtime. Callers that need async backends
can adapt via tokio::task::spawn_blocking.
Cross-Ref: Spec §7.4 Tab 5 + §8.3.3 (PIM-zu-REST-Mapping).
Enums§
- Backend
Error - Backend error.
- Backend
Result - Operation result: either a newly created resource identifier, a list, or an opaque body.
Traits§
- DdsBackend
- Bridge trait — a concrete backend implementation routes these
method calls to the
crates/dcps/public API.
Functions§
- enforce
- Decision wrapper that checks the AccessController permission before every backend call.