1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
// SPDX-License-Identifier: Apache-2.0
// Copyright 2026 ZeroDDS Contributors
//! OMG DDS-WEB 1.0 — Web-Enabled DDS Object Model + REST PSM.
//!
//! Crate `zerodds-web`. Safety classification: **STANDARD**.
//! Spec `formal/2014-12-01` (`docs/standards/cache/omg/zerodds-web-1.0.pdf`).
//!
//! # Scope
//!
//! Wir implementieren das **WebDDS-Object-Model** (Spec §7) und das
//! **REST-PSM** (Spec §8.3) als pure-Rust no_std+alloc Library:
//!
//! * `WebDDS::Root` Singleton + `Application` + `Client` +
//! `AccessController` + `DomainParticipant` (§7.3 Object-Model).
//! * `ReturnStatus` mit allen Spec-Codes (§7.3.1 + §8.3.2 Mapping zu
//! HTTP-Status).
//! * `RestRoute` Parser fuer alle URI-Patterns aus Spec §8.3.1
//! Tab 4 + §8.3.3 Tab 5 (alle 30+ Routes mit Parameter-Extraktion).
//! * `Representation` XML-Element-Name-Registry (Spec §8.3.4 Tab 6).
//! * `Headers` HTTP-Request/Response-Header-Set (Spec §8.3.5 Tab 7+8).
//! * `SessionId` Authenticated-Session-Tracking (§7.3.1.1).
//!
//! # Was nicht abgedeckt ist
//!
//! * **HTTP-Server-Implementation** — Caller-Layer (typisch
//! `axum`/`hyper`); diese Crate liefert Routing-Tabellen + Status-
//! Mapping, der Caller bindet an HTTP-Stack.
//! * **XML-Body-Serialization** — Caller-Layer mit `crates/xml/`-
//! Loader + DDS-XTYPES-Type-Definition-Reader; das XML-Element-
//! Name-Registry hier liefert die Wire-Tags.
//! * **WebSocket-Push fuer DataReader-Notifications** — siehe
//! `crates/websocket-bridge/`; Caller wired das via Listener-
//! Callback aus `crates/dcps/`.
//! * **SOAP/WSDL-Platform** (Spec §8.4) — `n/a` (REST ist mandatory,
//! SOAP ist optional + selten verwendet).
extern crate alloc;
pub use ;
pub use ;
pub use ;
pub use ;
pub use ;
pub use ;
pub use ;
pub use SessionId;
pub use ;