cyfs_lib/rmeta/
input_request.rs

1use super::def::*;
2use super::output_request::*;
3use crate::base::*;
4use cyfs_base::*;
5
6#[derive(Clone, Debug)]
7pub struct MetaInputRequestCommon {
8    // 来源
9    pub source: RequestSourceInfo,
10
11    // 目标DEC,如果为空,则默认等价于source-dec-id
12    pub target_dec_id: Option<ObjectId>,
13
14    // 用以默认行为
15    pub target: Option<ObjectId>,
16
17    pub flags: u32,
18}
19
20impl std::fmt::Display for MetaInputRequestCommon {
21    fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
22        write!(f, "{}", self.source)?;
23
24        if let Some(target_dec_id) = &self.target_dec_id {
25            write!(f, ", target_dec_id: {}", target_dec_id)?;
26        }
27
28        if let Some(target) = &self.target {
29            write!(f, ", target: {}", target)?;
30        }
31
32        write!(f, ", flags: {}", self.flags)?;
33
34        Ok(())
35    }
36}
37
38#[derive(Clone, Debug)]
39pub struct GlobalStateMetaAddAccessInputRequest {
40    pub common: MetaInputRequestCommon,
41
42    pub item: GlobalStatePathAccessItem,
43}
44
45pub type GlobalStateMetaAddAccessInputResponse = GlobalStateMetaAddAccessOutputResponse;
46
47pub type GlobalStateMetaRemoveAccessInputRequest = GlobalStateMetaAddAccessInputRequest;
48pub type GlobalStateMetaRemoveAccessInputResponse = GlobalStateMetaRemoveAccessOutputResponse;
49
50#[derive(Clone, Debug)]
51pub struct GlobalStateMetaClearAccessInputRequest {
52    pub common: MetaInputRequestCommon,
53}
54
55pub type GlobalStateMetaClearAccessInputResponse = GlobalStateMetaClearAccessOutputResponse;
56
57#[derive(Clone, Debug)]
58pub struct GlobalStateMetaAddLinkInputRequest {
59    pub common: MetaInputRequestCommon,
60
61    pub source: String,
62    pub target: String,
63}
64
65pub type GlobalStateMetaAddLinkInputResponse = GlobalStateMetaAddLinkOutputResponse;
66
67#[derive(Clone, Debug)]
68pub struct GlobalStateMetaRemoveLinkInputRequest {
69    pub common: MetaInputRequestCommon,
70
71    pub source: String,
72}
73
74pub type GlobalStateMetaRemoveLinkInputResponse = GlobalStateMetaRemoveLinkOutputResponse;
75
76#[derive(Clone, Debug)]
77pub struct GlobalStateMetaClearLinkInputRequest {
78    pub common: MetaInputRequestCommon,
79}
80
81pub type GlobalStateMetaClearLinkInputResponse = GlobalStateMetaClearLinkOutputResponse;
82
83// object meta 
84#[derive(Clone, Debug)]
85pub struct GlobalStateMetaAddObjectMetaInputRequest {
86    pub common: MetaInputRequestCommon,
87
88    pub item: GlobalStateObjectMetaItem,
89}
90
91pub type GlobalStateMetaAddObjectMetaInputResponse = GlobalStateMetaAddObjectMetaOutputResponse;
92
93pub type GlobalStateMetaRemoveObjectMetaInputRequest = GlobalStateMetaAddObjectMetaInputRequest;
94pub type GlobalStateMetaRemoveObjectMetaInputResponse = GlobalStateMetaRemoveObjectMetaOutputResponse;
95
96#[derive(Clone, Debug)]
97pub struct GlobalStateMetaClearObjectMetaInputRequest {
98    pub common: MetaInputRequestCommon,
99}
100
101pub type GlobalStateMetaClearObjectMetaInputResponse = GlobalStateMetaClearObjectMetaOutputResponse;
102
103
104// path config
105#[derive(Clone, Debug)]
106pub struct GlobalStateMetaAddPathConfigInputRequest {
107    pub common: MetaInputRequestCommon,
108
109    pub item: GlobalStatePathConfigItem,
110}
111
112pub type GlobalStateMetaAddPathConfigInputResponse = GlobalStateMetaAddPathConfigOutputResponse;
113
114pub type GlobalStateMetaRemovePathConfigInputRequest = GlobalStateMetaAddPathConfigInputRequest;
115pub type GlobalStateMetaRemovePathConfigInputResponse = GlobalStateMetaRemovePathConfigOutputResponse;
116
117#[derive(Clone, Debug)]
118pub struct GlobalStateMetaClearPathConfigInputRequest {
119    pub common: MetaInputRequestCommon,
120}
121
122pub type GlobalStateMetaClearPathConfigInputResponse = GlobalStateMetaClearPathConfigOutputResponse;