atrium_api/tools/ozone/queue/
create_queue.rs1pub const NSID: &str = "tools.ozone.queue.createQueue";
4#[derive(serde::Serialize, serde::Deserialize, Debug, Clone, PartialEq, Eq)]
5#[serde(rename_all = "camelCase")]
6pub struct InputData {
7 #[serde(skip_serializing_if = "core::option::Option::is_none")]
9 pub collection: core::option::Option<crate::types::string::Nsid>,
10 #[serde(skip_serializing_if = "core::option::Option::is_none")]
12 pub description: core::option::Option<String>,
13 pub name: String,
15 #[serde(skip_serializing_if = "core::option::Option::is_none")]
17 pub recommended_policies: core::option::Option<Vec<String>>,
18 #[serde(skip_serializing_if = "core::option::Option::is_none")]
20 pub report_types: core::option::Option<Vec<String>>,
21 #[serde(skip_serializing_if = "core::option::Option::is_none")]
23 pub subject_types: core::option::Option<Vec<String>>,
24}
25pub type Input = crate::types::Object<InputData>;
26#[derive(serde::Serialize, serde::Deserialize, Debug, Clone, PartialEq, Eq)]
27#[serde(rename_all = "camelCase")]
28pub struct OutputData {
29 pub queue: crate::tools::ozone::queue::defs::QueueView,
30}
31pub type Output = crate::types::Object<OutputData>;
32#[derive(serde::Serialize, serde::Deserialize, Debug, Clone, PartialEq, Eq)]
33#[serde(tag = "error", content = "message")]
34pub enum Error {
35 InvalidRecommendedPolicies(Option<String>),
37 ConflictingQueue(Option<String>),
39}
40impl std::fmt::Display for Error {
41 fn fmt(&self, _f: &mut std::fmt::Formatter) -> std::fmt::Result {
42 match self {
43 Error::InvalidRecommendedPolicies(msg) => {
44 write!(_f, "InvalidRecommendedPolicies")?;
45 if let Some(msg) = msg {
46 write!(_f, ": {msg}")?;
47 }
48 }
49 Error::ConflictingQueue(msg) => {
50 write!(_f, "ConflictingQueue")?;
51 if let Some(msg) = msg {
52 write!(_f, ": {msg}")?;
53 }
54 }
55 }
56 Ok(())
57 }
58}