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
// 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 UpdateConsumableResourceInput {
/// <p>The name or ARN of the consumable resource to be updated.</p>
pub consumable_resource: ::std::option::Option<::std::string::String>,
/// <p>Indicates how the quantity of the consumable resource will be updated. Must be one of:</p>
/// <ul>
/// <li>
/// <p><code>SET</code></p>
/// <p>Sets the quantity of the resource to the value specified by the <code>quantity</code> parameter.</p></li>
/// <li>
/// <p><code>ADD</code></p>
/// <p>Increases the quantity of the resource by the value specified by the <code>quantity</code> parameter.</p></li>
/// <li>
/// <p><code>REMOVE</code></p>
/// <p>Reduces the quantity of the resource by the value specified by the <code>quantity</code> parameter.</p></li>
/// </ul>
pub operation: ::std::option::Option<::std::string::String>,
/// <p>The change in the total quantity of the consumable resource. The <code>operation</code> parameter determines whether the value specified here will be the new total quantity, or the amount by which the total quantity will be increased or reduced. Must be a non-negative value.</p>
pub quantity: ::std::option::Option<i64>,
/// <p>If this parameter is specified and two update requests with identical payloads and <code>clientToken</code>s are received, these requests are considered the same request. Both requests will succeed, but the update will only happen once. A <code>clientToken</code> is valid for 8 hours.</p>
pub client_token: ::std::option::Option<::std::string::String>,
}
impl UpdateConsumableResourceInput {
/// <p>The name or ARN of the consumable resource to be updated.</p>
pub fn consumable_resource(&self) -> ::std::option::Option<&str> {
self.consumable_resource.as_deref()
}
/// <p>Indicates how the quantity of the consumable resource will be updated. Must be one of:</p>
/// <ul>
/// <li>
/// <p><code>SET</code></p>
/// <p>Sets the quantity of the resource to the value specified by the <code>quantity</code> parameter.</p></li>
/// <li>
/// <p><code>ADD</code></p>
/// <p>Increases the quantity of the resource by the value specified by the <code>quantity</code> parameter.</p></li>
/// <li>
/// <p><code>REMOVE</code></p>
/// <p>Reduces the quantity of the resource by the value specified by the <code>quantity</code> parameter.</p></li>
/// </ul>
pub fn operation(&self) -> ::std::option::Option<&str> {
self.operation.as_deref()
}
/// <p>The change in the total quantity of the consumable resource. The <code>operation</code> parameter determines whether the value specified here will be the new total quantity, or the amount by which the total quantity will be increased or reduced. Must be a non-negative value.</p>
pub fn quantity(&self) -> ::std::option::Option<i64> {
self.quantity
}
/// <p>If this parameter is specified and two update requests with identical payloads and <code>clientToken</code>s are received, these requests are considered the same request. Both requests will succeed, but the update will only happen once. A <code>clientToken</code> is valid for 8 hours.</p>
pub fn client_token(&self) -> ::std::option::Option<&str> {
self.client_token.as_deref()
}
}
impl UpdateConsumableResourceInput {
/// Creates a new builder-style object to manufacture [`UpdateConsumableResourceInput`](crate::operation::update_consumable_resource::UpdateConsumableResourceInput).
pub fn builder() -> crate::operation::update_consumable_resource::builders::UpdateConsumableResourceInputBuilder {
crate::operation::update_consumable_resource::builders::UpdateConsumableResourceInputBuilder::default()
}
}
/// A builder for [`UpdateConsumableResourceInput`](crate::operation::update_consumable_resource::UpdateConsumableResourceInput).
#[derive(::std::clone::Clone, ::std::cmp::PartialEq, ::std::default::Default, ::std::fmt::Debug)]
#[non_exhaustive]
pub struct UpdateConsumableResourceInputBuilder {
pub(crate) consumable_resource: ::std::option::Option<::std::string::String>,
pub(crate) operation: ::std::option::Option<::std::string::String>,
pub(crate) quantity: ::std::option::Option<i64>,
pub(crate) client_token: ::std::option::Option<::std::string::String>,
}
impl UpdateConsumableResourceInputBuilder {
/// <p>The name or ARN of the consumable resource to be updated.</p>
/// This field is required.
pub fn consumable_resource(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
self.consumable_resource = ::std::option::Option::Some(input.into());
self
}
/// <p>The name or ARN of the consumable resource to be updated.</p>
pub fn set_consumable_resource(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
self.consumable_resource = input;
self
}
/// <p>The name or ARN of the consumable resource to be updated.</p>
pub fn get_consumable_resource(&self) -> &::std::option::Option<::std::string::String> {
&self.consumable_resource
}
/// <p>Indicates how the quantity of the consumable resource will be updated. Must be one of:</p>
/// <ul>
/// <li>
/// <p><code>SET</code></p>
/// <p>Sets the quantity of the resource to the value specified by the <code>quantity</code> parameter.</p></li>
/// <li>
/// <p><code>ADD</code></p>
/// <p>Increases the quantity of the resource by the value specified by the <code>quantity</code> parameter.</p></li>
/// <li>
/// <p><code>REMOVE</code></p>
/// <p>Reduces the quantity of the resource by the value specified by the <code>quantity</code> parameter.</p></li>
/// </ul>
pub fn operation(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
self.operation = ::std::option::Option::Some(input.into());
self
}
/// <p>Indicates how the quantity of the consumable resource will be updated. Must be one of:</p>
/// <ul>
/// <li>
/// <p><code>SET</code></p>
/// <p>Sets the quantity of the resource to the value specified by the <code>quantity</code> parameter.</p></li>
/// <li>
/// <p><code>ADD</code></p>
/// <p>Increases the quantity of the resource by the value specified by the <code>quantity</code> parameter.</p></li>
/// <li>
/// <p><code>REMOVE</code></p>
/// <p>Reduces the quantity of the resource by the value specified by the <code>quantity</code> parameter.</p></li>
/// </ul>
pub fn set_operation(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
self.operation = input;
self
}
/// <p>Indicates how the quantity of the consumable resource will be updated. Must be one of:</p>
/// <ul>
/// <li>
/// <p><code>SET</code></p>
/// <p>Sets the quantity of the resource to the value specified by the <code>quantity</code> parameter.</p></li>
/// <li>
/// <p><code>ADD</code></p>
/// <p>Increases the quantity of the resource by the value specified by the <code>quantity</code> parameter.</p></li>
/// <li>
/// <p><code>REMOVE</code></p>
/// <p>Reduces the quantity of the resource by the value specified by the <code>quantity</code> parameter.</p></li>
/// </ul>
pub fn get_operation(&self) -> &::std::option::Option<::std::string::String> {
&self.operation
}
/// <p>The change in the total quantity of the consumable resource. The <code>operation</code> parameter determines whether the value specified here will be the new total quantity, or the amount by which the total quantity will be increased or reduced. Must be a non-negative value.</p>
pub fn quantity(mut self, input: i64) -> Self {
self.quantity = ::std::option::Option::Some(input);
self
}
/// <p>The change in the total quantity of the consumable resource. The <code>operation</code> parameter determines whether the value specified here will be the new total quantity, or the amount by which the total quantity will be increased or reduced. Must be a non-negative value.</p>
pub fn set_quantity(mut self, input: ::std::option::Option<i64>) -> Self {
self.quantity = input;
self
}
/// <p>The change in the total quantity of the consumable resource. The <code>operation</code> parameter determines whether the value specified here will be the new total quantity, or the amount by which the total quantity will be increased or reduced. Must be a non-negative value.</p>
pub fn get_quantity(&self) -> &::std::option::Option<i64> {
&self.quantity
}
/// <p>If this parameter is specified and two update requests with identical payloads and <code>clientToken</code>s are received, these requests are considered the same request. Both requests will succeed, but the update will only happen once. A <code>clientToken</code> is valid for 8 hours.</p>
pub fn client_token(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
self.client_token = ::std::option::Option::Some(input.into());
self
}
/// <p>If this parameter is specified and two update requests with identical payloads and <code>clientToken</code>s are received, these requests are considered the same request. Both requests will succeed, but the update will only happen once. A <code>clientToken</code> is valid for 8 hours.</p>
pub fn set_client_token(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
self.client_token = input;
self
}
/// <p>If this parameter is specified and two update requests with identical payloads and <code>clientToken</code>s are received, these requests are considered the same request. Both requests will succeed, but the update will only happen once. A <code>clientToken</code> is valid for 8 hours.</p>
pub fn get_client_token(&self) -> &::std::option::Option<::std::string::String> {
&self.client_token
}
/// Consumes the builder and constructs a [`UpdateConsumableResourceInput`](crate::operation::update_consumable_resource::UpdateConsumableResourceInput).
pub fn build(
self,
) -> ::std::result::Result<
crate::operation::update_consumable_resource::UpdateConsumableResourceInput,
::aws_smithy_types::error::operation::BuildError,
> {
::std::result::Result::Ok(crate::operation::update_consumable_resource::UpdateConsumableResourceInput {
consumable_resource: self.consumable_resource,
operation: self.operation,
quantity: self.quantity,
client_token: self.client_token,
})
}
}