Skip to main content

Module bridge

Module bridge 

Source
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 (siehe rest.rs) und Web-Object-Model (siehe model.rs).
  • Eine konkrete Backend-Implementation in einer hoeheren Schicht (z.B. einem Daemon-Crate) implementiert DdsBackend und 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§

BackendError
Backend-Fehler.
BackendResult
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.