zerodds_soap/lib.rs
1// SPDX-License-Identifier: Apache-2.0
2// Copyright 2026 ZeroDDS Contributors
3
4//! DDS SOAP-PSM — SOAP 1.2 + WSDL 1.1/2.0 + MTOM + WS-Addressing +
5//! WS-Security 1.1.
6//!
7//! Crate `zerodds-soap`. Safety classification: **STANDARD**.
8//!
9//! Liefert einen produktionsreifen SOAP-Stack zur Anbindung
10//! Java-2000er-Bestand-Clients und JEE-Web-Services an DDS-Topics.
11//!
12//! # Module
13//!
14//! * [`envelope`] — SOAP 1.2 Envelope/Header/Body (W3C SOAP 1.2 §5).
15//! * [`fault`] — SOAP-Fault-Codes (`Sender`/`Receiver`/`MustUnderstand`/
16//! `VersionMismatch`/`DataEncodingUnknown`).
17//! * [`wsdl`] — WSDL 1.1 (`http://schemas.xmlsoap.org/wsdl/`) + WSDL
18//! 2.0 (`http://www.w3.org/ns/wsdl`)-Generation aus IDL-Service-Defs.
19//! * [`mtom`] — MTOM/XOP-Attachments (W3C MTOM Rec.).
20//! * [`addressing`] — WS-Addressing 1.0 (W3C 2006).
21//! * [`security`] — WS-Security 1.1 (OASIS WSS-1.1) — UsernameToken,
22//! X.509-Token, Timestamp, BinarySecurityToken.
23
24#![no_std]
25#![forbid(unsafe_code)]
26#![warn(missing_docs)]
27
28extern crate alloc;
29
30#[cfg(feature = "std")]
31extern crate std;
32
33pub mod addressing;
34pub mod envelope;
35pub mod fault;
36pub mod mtom;
37pub mod security;
38pub mod wsdl;
39
40pub use addressing::{AddressingHeaders, build_addressing_header};
41pub use envelope::{Envelope, EnvelopeError, build_envelope, parse_envelope};
42pub use fault::{Fault, FaultCode};
43pub use mtom::{Attachment, MtomMessage, encode_mtom_packaging};
44pub use security::{SecurityHeader, Timestamp, UsernameToken, X509Token};
45pub use wsdl::{Operation, WsdlGenerator, WsdlVersion};