use { crate::{ ei::{ ei_client::{EiClient, EiClientError}, ei_object::{EiObject, EiVersion}, }, leaks::Tracker, wire_ei::{ ei_pingpong::{Done, EiPingpongRequestHandler}, EiPingpongId, }, }, std::rc::Rc, thiserror::Error, }; #[allow(dead_code)] pub struct EiPingpong { pub id: EiPingpongId, pub client: Rc, pub tracker: Tracker, pub version: EiVersion, } impl EiPingpongRequestHandler for EiPingpong { type Error = EiPingpongError; fn done(&self, _req: Done, _slf: &Rc) -> Result<(), Self::Error> { Ok(()) } } ei_object_base! { self = EiPingpong; version = self.version; } impl EiObject for EiPingpong {} #[derive(Debug, Error)] pub enum EiPingpongError { #[error(transparent)] EiClientError(Box), } efrom!(EiPingpongError, EiClientError);