hab_rs_api_client/models/
config_description_parameter.rs1use crate::models;
12use serde::{Deserialize, Serialize};
13
14#[derive(Clone, Default, Debug, PartialEq, Serialize, Deserialize)]
15pub struct ConfigDescriptionParameter {
16 #[serde(rename = "advanced", skip_serializing_if = "Option::is_none")]
17 pub advanced: Option<bool>,
18 #[serde(rename = "context", skip_serializing_if = "Option::is_none")]
19 pub context: Option<String>,
20 #[serde(rename = "default", skip_serializing_if = "Option::is_none")]
21 pub default: Option<String>,
22 #[serde(rename = "description", skip_serializing_if = "Option::is_none")]
23 pub description: Option<String>,
24 #[serde(rename = "filterCriteria", skip_serializing_if = "Option::is_none")]
25 pub filter_criteria: Option<Vec<models::FilterCriteria>>,
26 #[serde(rename = "groupName", skip_serializing_if = "Option::is_none")]
27 pub group_name: Option<String>,
28 #[serde(rename = "label", skip_serializing_if = "Option::is_none")]
29 pub label: Option<String>,
30 #[serde(rename = "limitToOptions", skip_serializing_if = "Option::is_none")]
31 pub limit_to_options: Option<bool>,
32 #[serde(rename = "maximum", skip_serializing_if = "Option::is_none")]
33 pub maximum: Option<f64>,
34 #[serde(rename = "minimum", skip_serializing_if = "Option::is_none")]
35 pub minimum: Option<f64>,
36 #[serde(rename = "multiple", skip_serializing_if = "Option::is_none")]
37 pub multiple: Option<bool>,
38 #[serde(rename = "multipleLimit", skip_serializing_if = "Option::is_none")]
39 pub multiple_limit: Option<i32>,
40 #[serde(rename = "name", skip_serializing_if = "Option::is_none")]
41 pub name: Option<String>,
42 #[serde(rename = "options", skip_serializing_if = "Option::is_none")]
43 pub options: Option<Vec<models::ParameterOption>>,
44 #[serde(rename = "pattern", skip_serializing_if = "Option::is_none")]
45 pub pattern: Option<String>,
46 #[serde(rename = "readOnly", skip_serializing_if = "Option::is_none")]
47 pub read_only: Option<bool>,
48 #[serde(rename = "required", skip_serializing_if = "Option::is_none")]
49 pub required: Option<bool>,
50 #[serde(rename = "stepSize", skip_serializing_if = "Option::is_none")]
51 pub step_size: Option<f64>,
52 #[serde(rename = "type", skip_serializing_if = "Option::is_none")]
53 pub r#type: Option<Type>,
54 #[serde(rename = "unit", skip_serializing_if = "Option::is_none")]
55 pub unit: Option<String>,
56 #[serde(rename = "unitLabel", skip_serializing_if = "Option::is_none")]
57 pub unit_label: Option<String>,
58 #[serde(rename = "verifyable", skip_serializing_if = "Option::is_none")]
59 pub verifyable: Option<bool>,
60}
61
62impl ConfigDescriptionParameter {
63 pub fn new() -> ConfigDescriptionParameter {
64 ConfigDescriptionParameter {
65 advanced: None,
66 context: None,
67 default: None,
68 description: None,
69 filter_criteria: None,
70 group_name: None,
71 label: None,
72 limit_to_options: None,
73 maximum: None,
74 minimum: None,
75 multiple: None,
76 multiple_limit: None,
77 name: None,
78 options: None,
79 pattern: None,
80 read_only: None,
81 required: None,
82 step_size: None,
83 r#type: None,
84 unit: None,
85 unit_label: None,
86 verifyable: None,
87 }
88 }
89}
90#[derive(Clone, Copy, Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Serialize, Deserialize)]
92pub enum Type {
93 #[serde(rename = "TEXT")]
94 Text,
95 #[serde(rename = "INTEGER")]
96 Integer,
97 #[serde(rename = "DECIMAL")]
98 Decimal,
99 #[serde(rename = "BOOLEAN")]
100 Boolean,
101}
102
103impl Default for Type {
104 fn default() -> Type {
105 Self::Text
106 }
107}