proxmox_api/generated/nodes/node/hardware/
usb.rs

1pub struct UsbClient<T> {
2    client: T,
3    path: String,
4}
5impl<T> UsbClient<T>
6where
7    T: crate::client::Client,
8{
9    pub fn new(client: T, parent_path: &str) -> Self {
10        Self {
11            client,
12            path: format!("{}{}", parent_path, "/usb"),
13        }
14    }
15}
16impl<T> UsbClient<T>
17where
18    T: crate::client::Client,
19{
20    #[doc = "List local USB devices."]
21    pub fn get(&self) -> Result<Vec<GetOutputItems>, T::Error> {
22        let path = self.path.to_string();
23        self.client.get(&path, &())
24    }
25}
26impl GetOutputItems {
27    pub fn new(
28        busnum: u64,
29        class: u64,
30        devnum: u64,
31        level: u64,
32        port: u64,
33        prodid: String,
34        speed: String,
35        vendid: String,
36    ) -> Self {
37        Self {
38            busnum,
39            class,
40            devnum,
41            level,
42            port,
43            prodid,
44            speed,
45            vendid,
46            manufacturer: Default::default(),
47            product: Default::default(),
48            serial: Default::default(),
49            usbpath: Default::default(),
50            additional_properties: Default::default(),
51        }
52    }
53}
54#[derive(Clone, Debug, :: serde :: Serialize, :: serde :: Deserialize)]
55pub struct GetOutputItems {
56    #[serde(
57        serialize_with = "crate::types::serialize_int",
58        deserialize_with = "crate::types::deserialize_int"
59    )]
60    pub busnum: u64,
61    #[serde(
62        serialize_with = "crate::types::serialize_int",
63        deserialize_with = "crate::types::deserialize_int"
64    )]
65    pub class: u64,
66    #[serde(
67        serialize_with = "crate::types::serialize_int",
68        deserialize_with = "crate::types::deserialize_int"
69    )]
70    pub devnum: u64,
71    #[serde(
72        serialize_with = "crate::types::serialize_int",
73        deserialize_with = "crate::types::deserialize_int"
74    )]
75    pub level: u64,
76    #[serde(skip_serializing_if = "Option::is_none", default)]
77    pub manufacturer: Option<String>,
78    #[serde(
79        serialize_with = "crate::types::serialize_int",
80        deserialize_with = "crate::types::deserialize_int"
81    )]
82    pub port: u64,
83    pub prodid: String,
84    #[serde(skip_serializing_if = "Option::is_none", default)]
85    pub product: Option<String>,
86    #[serde(skip_serializing_if = "Option::is_none", default)]
87    pub serial: Option<String>,
88    pub speed: String,
89    #[serde(skip_serializing_if = "Option::is_none", default)]
90    pub usbpath: Option<String>,
91    pub vendid: String,
92    #[serde(
93        flatten,
94        default,
95        skip_serializing_if = "::std::collections::HashMap::is_empty"
96    )]
97    pub additional_properties: ::std::collections::HashMap<String, ::serde_json::Value>,
98}