cyfs_lib/util/
input_request.rs

1use super::output_request::*;
2use crate::{base::*, TransPublishChunkMethod};
3use cyfs_base::*;
4use std::path::PathBuf;
5
6pub struct UtilInputRequestCommon {
7    // 请求路径,可为空
8    pub req_path: Option<String>,
9
10    pub source: RequestSourceInfo,
11
12    // 用以默认行为
13    pub target: Option<ObjectId>,
14
15    pub flags: u32,
16}
17
18// get device
19pub struct UtilGetDeviceInputRequest {
20    pub common: UtilInputRequestCommon,
21}
22
23pub type UtilGetDeviceInputResponse = UtilGetDeviceOutputResponse;
24
25// get zone
26pub struct UtilGetZoneInputRequest {
27    pub common: UtilInputRequestCommon,
28
29    pub object_id: Option<ObjectId>,
30    pub object_raw: Option<Vec<u8>>,
31}
32
33pub type UtilGetZoneInputResponse = UtilGetZoneOutputResponse;
34
35// resolve_ood
36pub struct UtilResolveOODInputRequest {
37    pub common: UtilInputRequestCommon,
38
39    pub object_id: ObjectId,
40    pub owner_id: Option<ObjectId>,
41}
42
43pub type UtilResolveOODInputResponse = UtilResolveOODOutputResponse;
44
45// get_ood_status
46pub struct UtilGetOODStatusInputRequest {
47    pub common: UtilInputRequestCommon,
48}
49
50pub type UtilGetOODStatusInputResponse = UtilGetOODStatusOutputResponse;
51
52// get_noc_stat
53pub struct UtilGetNOCInfoInputRequest {
54    pub common: UtilInputRequestCommon,
55}
56
57pub type UtilGetNOCInfoInputResponse = UtilGetNOCInfoOutputResponse;
58
59// get_device_static_info
60pub struct UtilGetDeviceStaticInfoInputRequest {
61    pub common: UtilInputRequestCommon,
62}
63
64pub type UtilGetDeviceStaticInfoInputResponse = UtilGetDeviceStaticInfoOutputResponse;
65
66// get_network_access_info
67pub struct UtilGetNetworkAccessInfoInputRequest {
68    pub common: UtilInputRequestCommon,
69}
70
71pub type UtilGetNetworkAccessInfoInputResponse = UtilGetNetworkAccessInfoOutputResponse;
72
73// get_system_info
74pub struct UtilGetSystemInfoInputRequest {
75    pub common: UtilInputRequestCommon,
76}
77
78pub type UtilGetSystemInfoInputResponse = UtilGetSystemInfoOutputResponse;
79
80// get_version_info
81pub struct UtilGetVersionInfoInputRequest {
82    pub common: UtilInputRequestCommon,
83}
84
85pub type UtilGetVersionInfoInputResponse = UtilGetVersionInfoOutputResponse;
86
87pub struct UtilBuildFileInputRequest {
88    pub common: UtilInputRequestCommon,
89    pub local_path: PathBuf,
90    pub owner: ObjectId,
91    pub chunk_size: u32, 
92    pub chunk_method: TransPublishChunkMethod, 
93    pub access: Option<AccessString>,
94}
95
96pub type UtilBuildFileInputResponse = UtilBuildFileOutputResponse;
97
98pub struct UtilBuildDirFromObjectMapInputRequest {
99    pub common: UtilInputRequestCommon,
100    pub object_map_id: ObjectId,
101    pub dir_type: BuildDirType,
102}
103
104pub type UtilBuildDirFromObjectMapInputResponse = UtilBuildDirFromObjectMapOutputResponse;