cyfs_lib/ndn/
processor.rs1use super::output_request::*;
2use cyfs_base::*;
3
4use std::sync::Arc;
5
6#[async_trait::async_trait]
7pub trait NDNOutputProcessor: Sync + Send + 'static {
8 async fn put_data(&self, req: NDNPutDataOutputRequest)
9 -> BuckyResult<NDNPutDataOutputResponse>;
10
11 async fn get_data(&self, req: NDNGetDataOutputRequest)
12 -> BuckyResult<NDNGetDataOutputResponse>;
13
14 async fn put_shared_data(&self, req: NDNPutDataOutputRequest)
15 -> BuckyResult<NDNPutDataOutputResponse>;
16
17 async fn get_shared_data(&self, req: NDNGetDataOutputRequest)
18 -> BuckyResult<NDNGetDataOutputResponse>;
19
20 async fn delete_data(
21 &self,
22 req: NDNDeleteDataOutputRequest,
23 ) -> BuckyResult<NDNDeleteDataOutputResponse>;
24
25 async fn query_file(
26 &self,
27 req: NDNQueryFileOutputRequest,
28 ) -> BuckyResult<NDNQueryFileOutputResponse>;
29}
30
31pub type NDNOutputProcessorRef = Arc<Box<dyn NDNOutputProcessor>>;