pub struct StatelessMessageReader { /* private fields */ }Expand description
Stateless-Message-Reader (Spec §7.4.4 + §10.3.4).
Decoded eingehende DATA-Submessages, die an den
BUILTIN_PARTICIPANT_STATELESS_MESSAGE_READER adressiert sind.
Stateless: kein History-Cache, kein ACKNACK, kein Heartbeat-State.
Ein bekannter Writer-Proxy ist fuer Source-Authenticity-Checks
optional — der Reader liefert die Message immer, der Auth-Plugin-
Hook entscheidet nach dem source_guid-Feld.
Implementations§
Source§impl StatelessMessageReader
impl StatelessMessageReader
Sourcepub fn new(participant_prefix: GuidPrefix, vendor_id: VendorId) -> Self
pub fn new(participant_prefix: GuidPrefix, vendor_id: VendorId) -> Self
Erzeugt einen Reader fuer den lokalen Participant.
Sourcepub fn writer_proxy_count(&self) -> usize
pub fn writer_proxy_count(&self) -> usize
Anzahl registrierter Writer-Proxies.
Sourcepub fn writer_proxies(&self) -> &[WriterProxy]
pub fn writer_proxies(&self) -> &[WriterProxy]
Read-only-Slice der registrierten Writer-Proxies.
Sourcepub fn add_writer_proxy(&mut self, proxy: WriterProxy)
pub fn add_writer_proxy(&mut self, proxy: WriterProxy)
Fuegt einen Writer-Proxy hinzu (idempotent).
Sourcepub fn remove_writer_proxy(&mut self, guid: Guid) -> Option<WriterProxy>
pub fn remove_writer_proxy(&mut self, guid: Guid) -> Option<WriterProxy>
Entfernt einen Writer-Proxy.
Sourcepub fn handle_data(
&mut self,
data: &DataSubmessage,
) -> SecurityResult<ParticipantGenericMessage>
pub fn handle_data( &mut self, data: &DataSubmessage, ) -> SecurityResult<ParticipantGenericMessage>
Verarbeitet eine eingehende DATA-Submessage und decoded sie zu
einer ParticipantGenericMessage.
§Errors
BadArgument wenn die Encapsulation/CDR-Decode scheitert.
Sourcepub fn handle_datagram(
&mut self,
datagram: &[u8],
) -> SecurityResult<Vec<ParticipantGenericMessage>>
pub fn handle_datagram( &mut self, datagram: &[u8], ) -> SecurityResult<Vec<ParticipantGenericMessage>>
Verarbeitet ein vollstaendiges RTPS-Datagram. Liefert alle dekodierten Stateless-Messages aus diesem Datagramm.
§Errors
BadArgumentwenn das Datagram nicht parst (Wire-Decoder- Fehler) oder eine relevante DATA-Submessage einen kaputten Generic-Message-Body hat.