cyfs_lib/non/
processor.rs

1use super::output_request::*;
2use cyfs_base::*;
3
4use std::sync::Arc;
5
6
7#[async_trait::async_trait]
8pub trait NONOutputProcessor: Sync + Send + 'static {
9    async fn put_object(
10        &self,
11        req: NONPutObjectOutputRequest,
12    ) -> BuckyResult<NONPutObjectOutputResponse>;
13
14    async fn get_object(&self, req: NONGetObjectOutputRequest)
15        -> BuckyResult<NONGetObjectOutputResponse>;
16
17    async fn post_object(&self, req: NONPostObjectOutputRequest)
18        -> BuckyResult<NONPostObjectOutputResponse>;
19
20    async fn select_object(&self, req: NONSelectObjectOutputRequest)
21        -> BuckyResult<NONSelectObjectOutputResponse>;
22
23    async fn delete_object(&self, req: NONDeleteObjectOutputRequest)
24        -> BuckyResult<NONDeleteObjectOutputResponse>;
25}
26
27pub type NONOutputProcessorRef = Arc<Box<dyn NONOutputProcessor>>;
28