proxmox_api/generated/nodes/node/
tasks.rs

1pub mod upid;
2pub struct TasksClient<T> {
3    client: T,
4    path: String,
5}
6impl<T> TasksClient<T>
7where
8    T: crate::client::Client,
9{
10    pub fn new(client: T, parent_path: &str) -> Self {
11        Self {
12            client,
13            path: format!("{}{}", parent_path, "/tasks"),
14        }
15    }
16}
17impl<T> TasksClient<T>
18where
19    T: crate::client::Client,
20{
21    #[doc = "Read task list for one node (finished tasks)."]
22    pub fn get(&self, params: GetParams) -> Result<Vec<GetOutputItems>, T::Error> {
23        let path = self.path.to_string();
24        self.client.get(&path, &params)
25    }
26}
27impl GetOutputItems {
28    pub fn new(
29        id: String,
30        node: String,
31        pid: u64,
32        pstart: u64,
33        starttime: u64,
34        ty: String,
35        upid: String,
36        user: String,
37    ) -> Self {
38        Self {
39            id,
40            node,
41            pid,
42            pstart,
43            starttime,
44            ty,
45            upid,
46            user,
47            endtime: Default::default(),
48            status: Default::default(),
49            additional_properties: Default::default(),
50        }
51    }
52}
53#[derive(Clone, Debug, :: serde :: Serialize, :: serde :: Deserialize)]
54pub struct GetOutputItems {
55    #[serde(
56        serialize_with = "crate::types::serialize_int_optional",
57        deserialize_with = "crate::types::deserialize_int_optional"
58    )]
59    #[serde(skip_serializing_if = "Option::is_none", default)]
60    pub endtime: Option<u64>,
61    pub id: String,
62    pub node: String,
63    #[serde(
64        serialize_with = "crate::types::serialize_int",
65        deserialize_with = "crate::types::deserialize_int"
66    )]
67    pub pid: u64,
68    #[serde(
69        serialize_with = "crate::types::serialize_int",
70        deserialize_with = "crate::types::deserialize_int"
71    )]
72    pub pstart: u64,
73    #[serde(
74        serialize_with = "crate::types::serialize_int",
75        deserialize_with = "crate::types::deserialize_int"
76    )]
77    pub starttime: u64,
78    #[serde(skip_serializing_if = "Option::is_none", default)]
79    pub status: Option<String>,
80    #[serde(rename = "type")]
81    pub ty: String,
82    pub upid: String,
83    pub user: String,
84    #[serde(
85        flatten,
86        default,
87        skip_serializing_if = "::std::collections::HashMap::is_empty"
88    )]
89    pub additional_properties: ::std::collections::HashMap<String, ::serde_json::Value>,
90}
91#[derive(Clone, Debug, :: serde :: Serialize, :: serde :: Deserialize, Default)]
92pub struct GetParams {
93    #[serde(
94        serialize_with = "crate::types::serialize_bool_optional",
95        deserialize_with = "crate::types::deserialize_bool_optional"
96    )]
97    #[serde(skip_serializing_if = "Option::is_none", default)]
98    #[doc = "Only list tasks with a status of ERROR."]
99    pub errors: Option<bool>,
100    #[serde(
101        serialize_with = "crate::types::serialize_int_optional",
102        deserialize_with = "crate::types::deserialize_int_optional"
103    )]
104    #[serde(skip_serializing_if = "Option::is_none", default)]
105    #[doc = "Only list this amount of tasks."]
106    pub limit: Option<u64>,
107    #[serde(
108        serialize_with = "crate::types::serialize_int_optional",
109        deserialize_with = "crate::types::deserialize_int_optional"
110    )]
111    #[serde(skip_serializing_if = "Option::is_none", default)]
112    #[doc = "Only list tasks since this UNIX epoch."]
113    pub since: Option<u64>,
114    #[serde(skip_serializing_if = "Option::is_none", default)]
115    #[doc = "List archived, active or all tasks."]
116    pub source: Option<Source>,
117    #[serde(
118        serialize_with = "crate::types::serialize_int_optional",
119        deserialize_with = "crate::types::deserialize_int_optional"
120    )]
121    #[serde(skip_serializing_if = "Option::is_none", default)]
122    #[doc = "List tasks beginning from this offset."]
123    pub start: Option<u64>,
124    #[serde(skip_serializing_if = "Option::is_none", default)]
125    #[doc = "List of Task States that should be returned."]
126    pub statusfilter: Option<String>,
127    #[serde(skip_serializing_if = "Option::is_none", default)]
128    #[doc = "Only list tasks of this type (e.g., vzstart, vzdump)."]
129    pub typefilter: Option<String>,
130    #[serde(
131        serialize_with = "crate::types::serialize_int_optional",
132        deserialize_with = "crate::types::deserialize_int_optional"
133    )]
134    #[serde(skip_serializing_if = "Option::is_none", default)]
135    #[doc = "Only list tasks until this UNIX epoch."]
136    pub until: Option<u64>,
137    #[serde(skip_serializing_if = "Option::is_none", default)]
138    #[doc = "Only list tasks from this user."]
139    pub userfilter: Option<String>,
140    #[serde(skip_serializing_if = "Option::is_none", default)]
141    #[doc = "Only list tasks for this VM."]
142    pub vmid: Option<crate::types::VmId>,
143    #[serde(
144        flatten,
145        default,
146        skip_serializing_if = "::std::collections::HashMap::is_empty"
147    )]
148    pub additional_properties: ::std::collections::HashMap<String, ::serde_json::Value>,
149}
150#[derive(Clone, Debug, :: serde :: Serialize, :: serde :: Deserialize)]
151pub enum Source {
152    #[serde(rename = "active")]
153    Active,
154    #[serde(rename = "all")]
155    All,
156    #[serde(rename = "archive")]
157    Archive,
158}
159impl Default for Source {
160    fn default() -> Self {
161        Self::Archive
162    }
163}
164impl<T> TasksClient<T>
165where
166    T: crate::client::Client,
167{
168    pub fn upid(&self, upid: &str) -> upid::UpidClient<T> {
169        upid::UpidClient::<T>::new(self.client.clone(), &self.path, upid)
170    }
171}