1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
// Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
#[allow(missing_docs)] // documentation missing in model
#[non_exhaustive]
#[derive(::std::clone::Clone, ::std::cmp::PartialEq, ::std::fmt::Debug)]
pub struct GetParametersInput {
/// <p>The names or Amazon Resource Names (ARNs) of the parameters that you want to query. For parameters shared with you from another account, you must use the full ARNs.</p>
/// <p>To query by parameter label, use <code>"Name": "name:label"</code>. To query by parameter version, use <code>"Name": "name:version"</code>.</p><note>
/// <p>The results for <code>GetParameters</code> requests are listed in alphabetical order in query responses.</p>
/// </note>
/// <p>For information about shared parameters, see <a href="https://docs.aws.amazon.com/systems-manager/latest/userguide/parameter-store-shared-parameters.html">Working with shared parameters</a> in the <i>Amazon Web Services Systems Manager User Guide</i>.</p>
pub names: ::std::option::Option<::std::vec::Vec<::std::string::String>>,
/// <p>Return decrypted secure string value. Return decrypted values for secure string parameters. This flag is ignored for <code>String</code> and <code>StringList</code> parameter types.</p>
pub with_decryption: ::std::option::Option<bool>,
}
impl GetParametersInput {
/// <p>The names or Amazon Resource Names (ARNs) of the parameters that you want to query. For parameters shared with you from another account, you must use the full ARNs.</p>
/// <p>To query by parameter label, use <code>"Name": "name:label"</code>. To query by parameter version, use <code>"Name": "name:version"</code>.</p><note>
/// <p>The results for <code>GetParameters</code> requests are listed in alphabetical order in query responses.</p>
/// </note>
/// <p>For information about shared parameters, see <a href="https://docs.aws.amazon.com/systems-manager/latest/userguide/parameter-store-shared-parameters.html">Working with shared parameters</a> in the <i>Amazon Web Services Systems Manager User Guide</i>.</p>
///
/// If no value was sent for this field, a default will be set. If you want to determine if no value was sent, use `.names.is_none()`.
pub fn names(&self) -> &[::std::string::String] {
self.names.as_deref().unwrap_or_default()
}
/// <p>Return decrypted secure string value. Return decrypted values for secure string parameters. This flag is ignored for <code>String</code> and <code>StringList</code> parameter types.</p>
pub fn with_decryption(&self) -> ::std::option::Option<bool> {
self.with_decryption
}
}
static GETPARAMETERSINPUT_MEMBER_NAMES_MEMBER: ::aws_smithy_schema::Schema<'static> = ::aws_smithy_schema::Schema::new_member(
::aws_smithy_schema::ShapeId::from_parts("com.amazonaws.ssm#ParameterNameList$member", "com.amazonaws.ssm", "ParameterNameList"),
::aws_smithy_schema::ShapeType::String,
"member",
0,
);
static GETPARAMETERSINPUT_MEMBER_NAMES: ::aws_smithy_schema::Schema<'static> = ::aws_smithy_schema::Schema::new_member(
::aws_smithy_schema::ShapeId::from_parts(
"com.amazonaws.ssm.synthetic#GetParametersInput$Names",
"com.amazonaws.ssm.synthetic",
"GetParametersInput",
),
::aws_smithy_schema::ShapeType::List,
"Names",
0,
)
.with_list_member(&GETPARAMETERSINPUT_MEMBER_NAMES_MEMBER);
static GETPARAMETERSINPUT_MEMBER_WITH_DECRYPTION: ::aws_smithy_schema::Schema<'static> = ::aws_smithy_schema::Schema::new_member(
::aws_smithy_schema::ShapeId::from_parts(
"com.amazonaws.ssm.synthetic#GetParametersInput$WithDecryption",
"com.amazonaws.ssm.synthetic",
"GetParametersInput",
),
::aws_smithy_schema::ShapeType::Boolean,
"WithDecryption",
1,
);
static GETPARAMETERSINPUT_SCHEMA: ::aws_smithy_schema::Schema<'static> = ::aws_smithy_schema::Schema::new_struct(
::aws_smithy_schema::ShapeId::from_parts(
"com.amazonaws.ssm.synthetic#GetParametersInput",
"com.amazonaws.ssm.synthetic",
"GetParametersInput",
),
::aws_smithy_schema::ShapeType::Structure,
&[&GETPARAMETERSINPUT_MEMBER_NAMES, &GETPARAMETERSINPUT_MEMBER_WITH_DECRYPTION],
)
.with_payload_hint(::aws_smithy_schema::PayloadHint::NoStructPayload)
.with_original_name("GetParametersRequest");
impl GetParametersInput {
/// The schema for this shape.
pub const SCHEMA: &'static ::aws_smithy_schema::Schema<'static> = &GETPARAMETERSINPUT_SCHEMA;
}
impl ::aws_smithy_schema::serde::SerializableStruct for GetParametersInput {
fn schema(&self) -> &::aws_smithy_schema::Schema<'_> {
Self::SCHEMA
}
#[allow(unused_variables, clippy::diverging_sub_expression)]
fn serialize_members(
&self,
ser: &mut dyn ::aws_smithy_schema::serde::ShapeSerializer,
) -> ::std::result::Result<(), ::aws_smithy_schema::serde::SerdeError> {
if let Some(ref val) = self.names {
ser.write_list(
&GETPARAMETERSINPUT_MEMBER_NAMES,
&|ser: &mut dyn ::aws_smithy_schema::serde::ShapeSerializer| {
for item in val {
ser.write_string(&aws_smithy_schema::prelude::STRING, item)?;
}
Ok(())
},
)?;
}
if let Some(ref val) = self.with_decryption {
ser.write_boolean(&GETPARAMETERSINPUT_MEMBER_WITH_DECRYPTION, *val)?;
}
Ok(())
}
}
impl crate::operation::get_parameters::builders::GetParametersInputBuilder {
#[allow(
unused_variables,
unreachable_code,
clippy::single_match,
clippy::match_single_binding,
clippy::diverging_sub_expression
)]
pub(crate) fn deserialize_members(
&mut self,
deserializer: &mut dyn ::aws_smithy_schema::serde::ShapeDeserializer,
) -> ::std::result::Result<(), ::aws_smithy_schema::serde::SerdeError> {
deserializer.read_struct(&GETPARAMETERSINPUT_SCHEMA, &mut |member, deser| {
match member.member_index() {
Some(0) => {
if deser.is_null() {
deser.read_null()?;
} else {
self.names = Some(deser.read_string_list(member)?);
}
}
Some(1) => {
if deser.is_null() {
deser.read_null()?;
} else {
self.with_decryption = Some(deser.read_boolean(member)?);
}
}
_ => {}
}
Ok(())
})
}
}
impl GetParametersInput {
/// Deserializes this structure from a [`ShapeDeserializer`].
pub fn deserialize(
deserializer: &mut dyn ::aws_smithy_schema::serde::ShapeDeserializer,
) -> ::std::result::Result<Self, ::aws_smithy_schema::serde::SerdeError> {
let mut builder = Self::builder();
builder.deserialize_members(deserializer)?;
builder.names = builder.names.or(Some(Vec::new()));
builder.build().map_err(|e| aws_smithy_schema::serde::SerdeError::custom(e.to_string()))
}
}
impl GetParametersInput {
/// Creates a new builder-style object to manufacture [`GetParametersInput`](crate::operation::get_parameters::GetParametersInput).
pub fn builder() -> crate::operation::get_parameters::builders::GetParametersInputBuilder {
crate::operation::get_parameters::builders::GetParametersInputBuilder::default()
}
}
/// A builder for [`GetParametersInput`](crate::operation::get_parameters::GetParametersInput).
#[derive(::std::clone::Clone, ::std::cmp::PartialEq, ::std::default::Default, ::std::fmt::Debug)]
#[non_exhaustive]
pub struct GetParametersInputBuilder {
pub(crate) names: ::std::option::Option<::std::vec::Vec<::std::string::String>>,
pub(crate) with_decryption: ::std::option::Option<bool>,
}
impl GetParametersInputBuilder {
/// Appends an item to `names`.
///
/// To override the contents of this collection use [`set_names`](Self::set_names).
///
/// <p>The names or Amazon Resource Names (ARNs) of the parameters that you want to query. For parameters shared with you from another account, you must use the full ARNs.</p>
/// <p>To query by parameter label, use <code>"Name": "name:label"</code>. To query by parameter version, use <code>"Name": "name:version"</code>.</p><note>
/// <p>The results for <code>GetParameters</code> requests are listed in alphabetical order in query responses.</p>
/// </note>
/// <p>For information about shared parameters, see <a href="https://docs.aws.amazon.com/systems-manager/latest/userguide/parameter-store-shared-parameters.html">Working with shared parameters</a> in the <i>Amazon Web Services Systems Manager User Guide</i>.</p>
pub fn names(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
let mut v = self.names.unwrap_or_default();
v.push(input.into());
self.names = ::std::option::Option::Some(v);
self
}
/// <p>The names or Amazon Resource Names (ARNs) of the parameters that you want to query. For parameters shared with you from another account, you must use the full ARNs.</p>
/// <p>To query by parameter label, use <code>"Name": "name:label"</code>. To query by parameter version, use <code>"Name": "name:version"</code>.</p><note>
/// <p>The results for <code>GetParameters</code> requests are listed in alphabetical order in query responses.</p>
/// </note>
/// <p>For information about shared parameters, see <a href="https://docs.aws.amazon.com/systems-manager/latest/userguide/parameter-store-shared-parameters.html">Working with shared parameters</a> in the <i>Amazon Web Services Systems Manager User Guide</i>.</p>
pub fn set_names(mut self, input: ::std::option::Option<::std::vec::Vec<::std::string::String>>) -> Self {
self.names = input;
self
}
/// <p>The names or Amazon Resource Names (ARNs) of the parameters that you want to query. For parameters shared with you from another account, you must use the full ARNs.</p>
/// <p>To query by parameter label, use <code>"Name": "name:label"</code>. To query by parameter version, use <code>"Name": "name:version"</code>.</p><note>
/// <p>The results for <code>GetParameters</code> requests are listed in alphabetical order in query responses.</p>
/// </note>
/// <p>For information about shared parameters, see <a href="https://docs.aws.amazon.com/systems-manager/latest/userguide/parameter-store-shared-parameters.html">Working with shared parameters</a> in the <i>Amazon Web Services Systems Manager User Guide</i>.</p>
pub fn get_names(&self) -> &::std::option::Option<::std::vec::Vec<::std::string::String>> {
&self.names
}
/// <p>Return decrypted secure string value. Return decrypted values for secure string parameters. This flag is ignored for <code>String</code> and <code>StringList</code> parameter types.</p>
pub fn with_decryption(mut self, input: bool) -> Self {
self.with_decryption = ::std::option::Option::Some(input);
self
}
/// <p>Return decrypted secure string value. Return decrypted values for secure string parameters. This flag is ignored for <code>String</code> and <code>StringList</code> parameter types.</p>
pub fn set_with_decryption(mut self, input: ::std::option::Option<bool>) -> Self {
self.with_decryption = input;
self
}
/// <p>Return decrypted secure string value. Return decrypted values for secure string parameters. This flag is ignored for <code>String</code> and <code>StringList</code> parameter types.</p>
pub fn get_with_decryption(&self) -> &::std::option::Option<bool> {
&self.with_decryption
}
/// Consumes the builder and constructs a [`GetParametersInput`](crate::operation::get_parameters::GetParametersInput).
pub fn build(
self,
) -> ::std::result::Result<crate::operation::get_parameters::GetParametersInput, ::aws_smithy_types::error::operation::BuildError> {
::std::result::Result::Ok(crate::operation::get_parameters::GetParametersInput {
names: self.names,
with_decryption: self.with_decryption,
})
}
}