cyfs_lib/util/
processor.rs

1use super::output_request::*;
2use cyfs_base::*;
3
4use std::sync::Arc;
5
6
7
8#[async_trait::async_trait]
9pub trait UtilOutputProcessor: Sync + Send + 'static {
10    async fn get_device(
11        &self,
12        req: UtilGetDeviceOutputRequest,
13    ) -> BuckyResult<UtilGetDeviceOutputResponse>;
14
15    async fn get_zone(&self, req: UtilGetZoneOutputRequest)
16        -> BuckyResult<UtilGetZoneOutputResponse>;
17
18    async fn resolve_ood(&self, req: UtilResolveOODOutputRequest)
19        -> BuckyResult<UtilResolveOODOutputResponse>;
20
21    async fn get_ood_status(&self, req: UtilGetOODStatusOutputRequest)
22        -> BuckyResult<UtilGetOODStatusOutputResponse>;
23
24    async fn get_noc_info(&self, req: UtilGetNOCInfoOutputRequest)
25        -> BuckyResult<UtilGetNOCInfoOutputResponse>;
26
27    async fn get_network_access_info(&self, req: UtilGetNetworkAccessInfoOutputRequest)
28        -> BuckyResult<UtilGetNetworkAccessInfoOutputResponse>;
29
30    async fn get_device_static_info(&self, req: UtilGetDeviceStaticInfoOutputRequest)
31        -> BuckyResult<UtilGetDeviceStaticInfoOutputResponse>;
32
33    async fn get_system_info(&self, req: UtilGetSystemInfoOutputRequest)
34        -> BuckyResult<UtilGetSystemInfoOutputResponse>;
35
36    async fn get_version_info(&self, req: UtilGetVersionInfoOutputRequest)
37        -> BuckyResult<UtilGetVersionInfoOutputResponse>;
38
39    async fn build_file_object(&self, req: UtilBuildFileOutputRequest)
40        -> BuckyResult<UtilBuildFileOutputResponse>;
41
42    async fn build_dir_from_object_map(&self, req: UtilBuildDirFromObjectMapOutputRequest)
43                                       -> BuckyResult<UtilBuildDirFromObjectMapOutputResponse>;
44}
45
46pub type UtilOutputProcessorRef = Arc<Box<dyn UtilOutputProcessor>>;
47