Skip to main content

proxmox_api/generated/nodes/node/
apt.rs

1pub mod changelog;
2pub mod repositories;
3pub mod update;
4pub mod versions;
5#[derive(Debug, Clone)]
6pub struct AptClient<T> {
7    client: T,
8    path: String,
9}
10impl<T> AptClient<T>
11where
12    T: crate::client::Client,
13{
14    pub fn new(client: T, parent_path: &str) -> Self {
15        Self {
16            client,
17            path: format!("{}{}", parent_path, "/apt"),
18        }
19    }
20}
21impl<T> AptClient<T>
22where
23    T: crate::client::Client,
24{
25    #[doc = "Directory index for apt (Advanced Package Tool)."]
26    #[doc = ""]
27    pub async fn get(&self) -> Result<Vec<GetOutputItems>, T::Error> {
28        let path = self.path.to_string();
29        let optional_vec: Option<Vec<GetOutputItems>> = self.client.get(&path, &()).await?;
30        Ok(optional_vec.unwrap_or_default())
31    }
32}
33impl GetOutputItems {
34    pub fn new(id: String) -> Self {
35        Self {
36            id,
37            additional_properties: ::std::default::Default::default(),
38        }
39    }
40}
41#[derive(Clone, Debug, :: serde :: Serialize, :: serde :: Deserialize)]
42pub struct GetOutputItems {
43    pub id: String,
44    #[serde(
45        flatten,
46        default,
47        skip_serializing_if = "::std::collections::HashMap::is_empty"
48    )]
49    pub additional_properties: ::std::collections::HashMap<String, ::serde_json::Value>,
50}
51impl<T> AptClient<T>
52where
53    T: crate::client::Client,
54{
55    pub fn update(&self) -> update::UpdateClient<T> {
56        update::UpdateClient::<T>::new(self.client.clone(), &self.path)
57    }
58}
59impl<T> AptClient<T>
60where
61    T: crate::client::Client,
62{
63    pub fn changelog(&self) -> changelog::ChangelogClient<T> {
64        changelog::ChangelogClient::<T>::new(self.client.clone(), &self.path)
65    }
66}
67impl<T> AptClient<T>
68where
69    T: crate::client::Client,
70{
71    pub fn repositories(&self) -> repositories::RepositoriesClient<T> {
72        repositories::RepositoriesClient::<T>::new(self.client.clone(), &self.path)
73    }
74}
75impl<T> AptClient<T>
76where
77    T: crate::client::Client,
78{
79    pub fn versions(&self) -> versions::VersionsClient<T> {
80        versions::VersionsClient::<T>::new(self.client.clone(), &self.path)
81    }
82}