rustdds 0.3.0

Rust DDS implementation with RTPS
Documentation
use serde::de::DeserializeOwned;
use mio_extras::channel as mio_channel;

use crate::{
  dds::{With_Key_DataReader as DataReader},
  dds::error::StatusChange,
  dds::traits::Keyed,
  serialization::DeserializerAdapter,
  dds::with_key::ReaderCommand,
};

#[cfg(test)]
pub(crate) trait DataReaderTestUtil {
  fn set_status_change_receiver(&mut self, receiver: mio_channel::Receiver<StatusChange>);
  fn set_reader_commander(&mut self, commander: mio_channel::SyncSender<ReaderCommand>);
}

#[cfg(test)]
impl<D, DA> DataReaderTestUtil for DataReader<D, DA>
where
  D: Keyed + DeserializeOwned,
  DA: DeserializerAdapter<D>,
{
  fn set_status_change_receiver(&mut self, receiver: mio_channel::Receiver<StatusChange>) {
    self.status_receiver = receiver;
  }

  fn set_reader_commander(&mut self, commander: mio_channel::SyncSender<ReaderCommand>) {
    self.reader_command = commander;
  }
}