Expand description
DDS-WEB Bridge zur DDS-DCPS Public API — Spec §7.4.
Implementiert §7.4 §7.4 Class-Operationen Application + Participant + Topic + Pub/Sub + Writer/Reader von partial auf done.
Spec-Quelle: OMG DDS-WEB 1.0 §7.4 (S. 17-58) — alle CRUD- Operationen des Web-Object-Models, das auf die DDS-Public-API abgebildet wird.
§Schicht-Disziplin
Wir definieren hier ein Trait DdsBackend, das die zwei
Schichten entkoppelt:
crates/web/definiert REST-Routes (sieherest.rs) und Web-Object-Model (siehemodel.rs).- Eine konkrete Backend-Implementation in einer hoeheren Schicht
(z.B. einem Daemon-Crate) implementiert
DdsBackendund ruft die DDS-Public-API auf (crates/dcps/).
Das Trait halten wir bewusst minimal — eine Method pro Operation,
keine versteckte Async-Runtime. Caller, die async-Backends
brauchen, koennen via tokio::task::spawn_blocking adaptieren.
Cross-Ref: Spec §7.4 Tab 5 + §8.3.3 (PIM-zu-REST-Mapping).
Enums§
- Backend
Error - Backend-Fehler.
- Backend
Result - Operations-Resultat: entweder ein neu erzeugter Resource-Identifier, eine Liste oder ein opaker Body.
Traits§
- DdsBackend
- Bridge-Trait — konkrete Backend-Implementation routet diese
Method-Calls auf
crates/dcps/-Public-API.
Functions§
- enforce
- Decision-Wrapper, der vor jedem Backend-Call die AccessController-Permission prueft.