zerodds-java-omgdds
Native Java DDS-PSM (org.omg.dds.*) — implementiert das
OMG DDS Java PSM 1.0, die spec-definierte Java-API-Form.
Teil von ZeroDDS. Safety-Klasse STANDARD.
OMG-DDS-Java-PSM 1.0 Spec-Audit (K15) abgeschlossen 2026-04-28: 156 done / 0 partial / 0 open / 15 n/a. Voll spec-konform.
Beziehung zur JNI-Bridge
Zwei orthogonale Java-Pfade:
zerodds-java-jni— JNI-Bridge ueber die Rust-Runtime. Nutztzerodds-dcpsdirekt, idiomatischer Java-Wrapper ohne strikte Spec-Treue.zerodds-java-omgdds— diese Crate. Native Java-Klassen die exakt demorg.omg.dds.*-PSM folgen. Drop-in fuer Anwendungen, die heute auf RTI Connext, OpenSplice oder Cyclone DDS Java-API laufen.
Beide Pfade nutzen unter der Haube den gleichen Wire-Stack
(crates/rtps via JNI). Der Unterschied liegt nur in der
Java-API-Form.
Build
# Maven-Build (Standard-Java):
# JAR landet in:
Quickstart (OMG-PSM-Form)
;
;
;
;
DomainParticipantFactory factory ;
DomainParticipant dp ;
Topic topic ;
Publisher pub ;
DataWriter writer ;
writer.;
Pose ist generiert via zerodds-idlc Robot.idl --java.
Struktur
crates/java-omgdds/
├── Cargo.toml Workspace-Member, Build-Glue zur JNI-Schicht
├── src/lib.rs Architektur-Doc + JNI-Hooks
├── src/main/java/ Java-Sources (Maven-Layout)
│ └── org/omg/dds/
│ ├── core/ Time, Duration, Status, Exception, Listener
│ ├── core/policy/ alle 21 QoS-Policies, immutable Builder
│ ├── domain/ DomainParticipantFactory, DomainParticipant
│ ├── topic/ Topic, ContentFilteredTopic, MultiTopic
│ ├── pub/ Publisher, DataWriter, PublisherListener
│ ├── sub/ Subscriber, DataReader, Sample, SampleSelector
│ ├── type/ TypeSupport, dynamic, builtin
│ └── rtps/ Konvertierungs-Helper (delegiert an Rust-Stack)
└── pom.xml Maven Build
Documentation Trail
Fuer den User-Guide siehe Documentation Trail Station 05 → Java.
Spec-Referenzen
- OMG DDS Java PSM 1.0
- OMG DDS 1.4 §2.2 — DCPS
docs/spec-coverage/zerodds-java-psm-1.0.md— Per-Section-Auditdocs/architecture/05_java_jni_bridge.md— interne Bridge-Architektur