zerodds_webdds_bridge/lib.rs
1// SPDX-License-Identifier: Apache-2.0
2// Copyright 2026 ZeroDDS Contributors
3
4//! `zerodds-webdds-bridge` — the DDS-WEB 1.0 gateway daemon
5//! `zerodds-webdds-bridged`.
6//!
7//! Crate `zerodds-webdds-bridge`. Safety classification: **STANDARD**.
8//!
9//! Spec: OMG Web-Enabled DDS 1.0, `formal/2014-12-01`. §7-§8.3 (the
10//! WebDDS object model + REST PSM) are implemented as a library in
11//! `zerodds-web`; §8.4 (the SIMPLE-WSDL-SOAP PSM) as a library in
12//! `zerodds-soap`. Neither crate implements a `DdsBackend`, an HTTP
13//! server, or a body codec — `zerodds-web`'s own crate doc says so in as
14//! many words ("HTTP-Server-Implementation + XML-Body-Serialization sind
15//! Caller-Layer"). This crate is that caller layer, and the one process
16//! that serves both PSMs — REST under `/dds/rest1`, SOAP under
17//! `/soap/<binding>`, WSDL under `/wsdl/<binding>` — because they are two
18//! platform mappings of the *same* object model (Spec §1.5), not two
19//! unrelated protocols.
20//!
21//! # Modules
22//!
23//! * [`types_registry`] — resolves the wire type behind a topic, from a
24//! config-named IDL file or from TypeLookup discovery, into a
25//! [`zerodds_dcps::serialized_type::SerializedTypeSupport`] plus a
26//! [`zerodds_types::dynamic::DynamicType`] reflective view.
27
28pub mod contained_entities;
29pub mod daemon;
30pub mod dynamic_rpc;
31pub mod dynxml;
32pub mod gateway;
33pub mod http1;
34pub mod metadata;
35pub mod qos_update;
36pub mod rest_service;
37pub mod rpc_dispatch;
38pub mod soap_service;
39pub mod types_registry;
40pub mod wsdl_bridge;
41pub mod xmlfields;