nominal_api/conjure/objects/scout/asset/api/
update_asset_request.rs1#[derive(
2 Debug,
3 Clone,
4 conjure_object::serde::Serialize,
5 conjure_object::serde::Deserialize,
6 PartialEq,
7 Eq,
8 PartialOrd,
9 Ord,
10 Hash
11)]
12#[serde(crate = "conjure_object::serde")]
13#[conjure_object::private::staged_builder::staged_builder]
14#[builder(crate = conjure_object::private::staged_builder, update, inline)]
15pub struct UpdateAssetRequest {
16 #[builder(default, into)]
17 #[serde(rename = "title", skip_serializing_if = "Option::is_none", default)]
18 title: Option<String>,
19 #[builder(default, into)]
20 #[serde(rename = "description", skip_serializing_if = "Option::is_none", default)]
21 description: Option<String>,
22 #[builder(default, into)]
23 #[serde(rename = "properties", skip_serializing_if = "Option::is_none", default)]
24 properties: Option<
25 std::collections::BTreeMap<
26 super::super::super::super::api::PropertyName,
27 super::super::super::super::api::PropertyValue,
28 >,
29 >,
30 #[builder(default, into)]
31 #[serde(rename = "labels", skip_serializing_if = "Option::is_none", default)]
32 labels: Option<std::collections::BTreeSet<super::super::super::super::api::Label>>,
33 #[builder(default, into)]
34 #[serde(rename = "links", skip_serializing_if = "Option::is_none", default)]
35 links: Option<Vec<super::super::super::run::api::Link>>,
36 #[builder(default, into)]
37 #[serde(rename = "dataScopes", skip_serializing_if = "Option::is_none", default)]
38 data_scopes: Option<std::collections::BTreeSet<super::CreateAssetDataScope>>,
39 #[builder(
40 default,
41 custom(
42 type = impl
43 Into<Option<super::UpdateOrRemoveAssetType>>,
44 convert = |v|v.into().map(Box::new)
45 )
46 )]
47 #[serde(rename = "type", skip_serializing_if = "Option::is_none", default)]
48 type_: Option<Box<super::UpdateOrRemoveAssetType>>,
49 #[builder(default, into)]
50 #[serde(rename = "isStaged", skip_serializing_if = "Option::is_none", default)]
51 is_staged: Option<bool>,
52}
53impl UpdateAssetRequest {
54 #[inline]
56 pub fn new() -> Self {
57 Self::builder().build()
58 }
59 #[inline]
60 pub fn title(&self) -> Option<&str> {
61 self.title.as_ref().map(|o| &**o)
62 }
63 #[inline]
64 pub fn description(&self) -> Option<&str> {
65 self.description.as_ref().map(|o| &**o)
66 }
67 #[inline]
68 pub fn properties(
69 &self,
70 ) -> Option<
71 &std::collections::BTreeMap<
72 super::super::super::super::api::PropertyName,
73 super::super::super::super::api::PropertyValue,
74 >,
75 > {
76 self.properties.as_ref().map(|o| &*o)
77 }
78 #[inline]
79 pub fn labels(
80 &self,
81 ) -> Option<&std::collections::BTreeSet<super::super::super::super::api::Label>> {
82 self.labels.as_ref().map(|o| &*o)
83 }
84 #[inline]
85 pub fn links(&self) -> Option<&[super::super::super::run::api::Link]> {
86 self.links.as_ref().map(|o| &**o)
87 }
88 #[inline]
90 pub fn data_scopes(
91 &self,
92 ) -> Option<&std::collections::BTreeSet<super::CreateAssetDataScope>> {
93 self.data_scopes.as_ref().map(|o| &*o)
94 }
95 #[inline]
96 pub fn type_(&self) -> Option<&super::UpdateOrRemoveAssetType> {
97 self.type_.as_ref().map(|o| &**o)
98 }
99 #[inline]
100 pub fn is_staged(&self) -> Option<bool> {
101 self.is_staged.as_ref().map(|o| *o)
102 }
103}