pub trait RequestReplyConnection: Send + Sync { type RequestData; type ReplyData; type Error; // Required method fn request( &mut self, request: &Self::RequestData ) -> Result<Self::ReplyData, Self::Error>; }