nominal_api/conjure/objects/security/api/workspace/
workspace.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 Workspace {
16 #[builder(into)]
17 #[serde(rename = "id")]
18 id: String,
19 #[serde(rename = "rid")]
20 rid: conjure_object::ResourceIdentifier,
21 #[serde(rename = "org")]
22 org: conjure_object::ResourceIdentifier,
23 #[builder(default, into)]
24 #[serde(rename = "displayName", skip_serializing_if = "Option::is_none", default)]
25 display_name: Option<String>,
26 #[builder(
27 default,
28 custom(
29 type = impl
30 Into<Option<super::WorkspaceSymbol>>,
31 convert = |v|v.into().map(Box::new)
32 )
33 )]
34 #[serde(rename = "symbol", skip_serializing_if = "Option::is_none", default)]
35 symbol: Option<Box<super::WorkspaceSymbol>>,
36 #[builder(custom(type = super::WorkspaceSettings, convert = Box::new))]
37 #[serde(rename = "settings")]
38 settings: Box<super::WorkspaceSettings>,
39}
40impl Workspace {
41 #[inline]
43 pub fn id(&self) -> &str {
44 &*self.id
45 }
46 #[inline]
47 pub fn rid(&self) -> &conjure_object::ResourceIdentifier {
48 &self.rid
49 }
50 #[inline]
51 pub fn org(&self) -> &conjure_object::ResourceIdentifier {
52 &self.org
53 }
54 #[inline]
55 pub fn display_name(&self) -> Option<&str> {
56 self.display_name.as_ref().map(|o| &**o)
57 }
58 #[inline]
59 pub fn symbol(&self) -> Option<&super::WorkspaceSymbol> {
60 self.symbol.as_ref().map(|o| &**o)
61 }
62 #[inline]
63 pub fn settings(&self) -> &super::WorkspaceSettings {
64 &*self.settings
65 }
66}