aws_sdk_medialive/operation/update_channel/
_update_channel_input.rs1#[non_exhaustive]
5#[derive(::std::clone::Clone, ::std::cmp::PartialEq, ::std::fmt::Debug)]
6pub struct UpdateChannelInput {
7 pub cdi_input_specification: ::std::option::Option<crate::types::CdiInputSpecification>,
9 pub channel_id: ::std::option::Option<::std::string::String>,
11 pub destinations: ::std::option::Option<::std::vec::Vec<crate::types::OutputDestination>>,
13 pub encoder_settings: ::std::option::Option<crate::types::EncoderSettings>,
15 pub input_attachments: ::std::option::Option<::std::vec::Vec<crate::types::InputAttachment>>,
17 pub input_specification: ::std::option::Option<crate::types::InputSpecification>,
19 pub log_level: ::std::option::Option<crate::types::LogLevel>,
21 pub maintenance: ::std::option::Option<crate::types::MaintenanceUpdateSettings>,
23 pub name: ::std::option::Option<::std::string::String>,
25 pub role_arn: ::std::option::Option<::std::string::String>,
27 pub channel_engine_version: ::std::option::Option<crate::types::ChannelEngineVersionRequest>,
29 pub dry_run: ::std::option::Option<bool>,
31 pub anywhere_settings: ::std::option::Option<crate::types::AnywhereSettings>,
33}
34impl UpdateChannelInput {
35 pub fn cdi_input_specification(&self) -> ::std::option::Option<&crate::types::CdiInputSpecification> {
37 self.cdi_input_specification.as_ref()
38 }
39 pub fn channel_id(&self) -> ::std::option::Option<&str> {
41 self.channel_id.as_deref()
42 }
43 pub fn destinations(&self) -> &[crate::types::OutputDestination] {
47 self.destinations.as_deref().unwrap_or_default()
48 }
49 pub fn encoder_settings(&self) -> ::std::option::Option<&crate::types::EncoderSettings> {
51 self.encoder_settings.as_ref()
52 }
53 pub fn input_attachments(&self) -> &[crate::types::InputAttachment] {
57 self.input_attachments.as_deref().unwrap_or_default()
58 }
59 pub fn input_specification(&self) -> ::std::option::Option<&crate::types::InputSpecification> {
61 self.input_specification.as_ref()
62 }
63 pub fn log_level(&self) -> ::std::option::Option<&crate::types::LogLevel> {
65 self.log_level.as_ref()
66 }
67 pub fn maintenance(&self) -> ::std::option::Option<&crate::types::MaintenanceUpdateSettings> {
69 self.maintenance.as_ref()
70 }
71 pub fn name(&self) -> ::std::option::Option<&str> {
73 self.name.as_deref()
74 }
75 pub fn role_arn(&self) -> ::std::option::Option<&str> {
77 self.role_arn.as_deref()
78 }
79 pub fn channel_engine_version(&self) -> ::std::option::Option<&crate::types::ChannelEngineVersionRequest> {
81 self.channel_engine_version.as_ref()
82 }
83 pub fn dry_run(&self) -> ::std::option::Option<bool> {
85 self.dry_run
86 }
87 pub fn anywhere_settings(&self) -> ::std::option::Option<&crate::types::AnywhereSettings> {
89 self.anywhere_settings.as_ref()
90 }
91}
92impl UpdateChannelInput {
93 pub fn builder() -> crate::operation::update_channel::builders::UpdateChannelInputBuilder {
95 crate::operation::update_channel::builders::UpdateChannelInputBuilder::default()
96 }
97}
98
99#[derive(::std::clone::Clone, ::std::cmp::PartialEq, ::std::default::Default, ::std::fmt::Debug)]
101#[non_exhaustive]
102pub struct UpdateChannelInputBuilder {
103 pub(crate) cdi_input_specification: ::std::option::Option<crate::types::CdiInputSpecification>,
104 pub(crate) channel_id: ::std::option::Option<::std::string::String>,
105 pub(crate) destinations: ::std::option::Option<::std::vec::Vec<crate::types::OutputDestination>>,
106 pub(crate) encoder_settings: ::std::option::Option<crate::types::EncoderSettings>,
107 pub(crate) input_attachments: ::std::option::Option<::std::vec::Vec<crate::types::InputAttachment>>,
108 pub(crate) input_specification: ::std::option::Option<crate::types::InputSpecification>,
109 pub(crate) log_level: ::std::option::Option<crate::types::LogLevel>,
110 pub(crate) maintenance: ::std::option::Option<crate::types::MaintenanceUpdateSettings>,
111 pub(crate) name: ::std::option::Option<::std::string::String>,
112 pub(crate) role_arn: ::std::option::Option<::std::string::String>,
113 pub(crate) channel_engine_version: ::std::option::Option<crate::types::ChannelEngineVersionRequest>,
114 pub(crate) dry_run: ::std::option::Option<bool>,
115 pub(crate) anywhere_settings: ::std::option::Option<crate::types::AnywhereSettings>,
116}
117impl UpdateChannelInputBuilder {
118 pub fn cdi_input_specification(mut self, input: crate::types::CdiInputSpecification) -> Self {
120 self.cdi_input_specification = ::std::option::Option::Some(input);
121 self
122 }
123 pub fn set_cdi_input_specification(mut self, input: ::std::option::Option<crate::types::CdiInputSpecification>) -> Self {
125 self.cdi_input_specification = input;
126 self
127 }
128 pub fn get_cdi_input_specification(&self) -> &::std::option::Option<crate::types::CdiInputSpecification> {
130 &self.cdi_input_specification
131 }
132 pub fn channel_id(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
135 self.channel_id = ::std::option::Option::Some(input.into());
136 self
137 }
138 pub fn set_channel_id(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
140 self.channel_id = input;
141 self
142 }
143 pub fn get_channel_id(&self) -> &::std::option::Option<::std::string::String> {
145 &self.channel_id
146 }
147 pub fn destinations(mut self, input: crate::types::OutputDestination) -> Self {
153 let mut v = self.destinations.unwrap_or_default();
154 v.push(input);
155 self.destinations = ::std::option::Option::Some(v);
156 self
157 }
158 pub fn set_destinations(mut self, input: ::std::option::Option<::std::vec::Vec<crate::types::OutputDestination>>) -> Self {
160 self.destinations = input;
161 self
162 }
163 pub fn get_destinations(&self) -> &::std::option::Option<::std::vec::Vec<crate::types::OutputDestination>> {
165 &self.destinations
166 }
167 pub fn encoder_settings(mut self, input: crate::types::EncoderSettings) -> Self {
169 self.encoder_settings = ::std::option::Option::Some(input);
170 self
171 }
172 pub fn set_encoder_settings(mut self, input: ::std::option::Option<crate::types::EncoderSettings>) -> Self {
174 self.encoder_settings = input;
175 self
176 }
177 pub fn get_encoder_settings(&self) -> &::std::option::Option<crate::types::EncoderSettings> {
179 &self.encoder_settings
180 }
181 pub fn input_attachments(mut self, input: crate::types::InputAttachment) -> Self {
187 let mut v = self.input_attachments.unwrap_or_default();
188 v.push(input);
189 self.input_attachments = ::std::option::Option::Some(v);
190 self
191 }
192 pub fn set_input_attachments(mut self, input: ::std::option::Option<::std::vec::Vec<crate::types::InputAttachment>>) -> Self {
194 self.input_attachments = input;
195 self
196 }
197 pub fn get_input_attachments(&self) -> &::std::option::Option<::std::vec::Vec<crate::types::InputAttachment>> {
199 &self.input_attachments
200 }
201 pub fn input_specification(mut self, input: crate::types::InputSpecification) -> Self {
203 self.input_specification = ::std::option::Option::Some(input);
204 self
205 }
206 pub fn set_input_specification(mut self, input: ::std::option::Option<crate::types::InputSpecification>) -> Self {
208 self.input_specification = input;
209 self
210 }
211 pub fn get_input_specification(&self) -> &::std::option::Option<crate::types::InputSpecification> {
213 &self.input_specification
214 }
215 pub fn log_level(mut self, input: crate::types::LogLevel) -> Self {
217 self.log_level = ::std::option::Option::Some(input);
218 self
219 }
220 pub fn set_log_level(mut self, input: ::std::option::Option<crate::types::LogLevel>) -> Self {
222 self.log_level = input;
223 self
224 }
225 pub fn get_log_level(&self) -> &::std::option::Option<crate::types::LogLevel> {
227 &self.log_level
228 }
229 pub fn maintenance(mut self, input: crate::types::MaintenanceUpdateSettings) -> Self {
231 self.maintenance = ::std::option::Option::Some(input);
232 self
233 }
234 pub fn set_maintenance(mut self, input: ::std::option::Option<crate::types::MaintenanceUpdateSettings>) -> Self {
236 self.maintenance = input;
237 self
238 }
239 pub fn get_maintenance(&self) -> &::std::option::Option<crate::types::MaintenanceUpdateSettings> {
241 &self.maintenance
242 }
243 pub fn name(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
245 self.name = ::std::option::Option::Some(input.into());
246 self
247 }
248 pub fn set_name(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
250 self.name = input;
251 self
252 }
253 pub fn get_name(&self) -> &::std::option::Option<::std::string::String> {
255 &self.name
256 }
257 pub fn role_arn(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
259 self.role_arn = ::std::option::Option::Some(input.into());
260 self
261 }
262 pub fn set_role_arn(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
264 self.role_arn = input;
265 self
266 }
267 pub fn get_role_arn(&self) -> &::std::option::Option<::std::string::String> {
269 &self.role_arn
270 }
271 pub fn channel_engine_version(mut self, input: crate::types::ChannelEngineVersionRequest) -> Self {
273 self.channel_engine_version = ::std::option::Option::Some(input);
274 self
275 }
276 pub fn set_channel_engine_version(mut self, input: ::std::option::Option<crate::types::ChannelEngineVersionRequest>) -> Self {
278 self.channel_engine_version = input;
279 self
280 }
281 pub fn get_channel_engine_version(&self) -> &::std::option::Option<crate::types::ChannelEngineVersionRequest> {
283 &self.channel_engine_version
284 }
285 pub fn dry_run(mut self, input: bool) -> Self {
287 self.dry_run = ::std::option::Option::Some(input);
288 self
289 }
290 pub fn set_dry_run(mut self, input: ::std::option::Option<bool>) -> Self {
292 self.dry_run = input;
293 self
294 }
295 pub fn get_dry_run(&self) -> &::std::option::Option<bool> {
297 &self.dry_run
298 }
299 pub fn anywhere_settings(mut self, input: crate::types::AnywhereSettings) -> Self {
301 self.anywhere_settings = ::std::option::Option::Some(input);
302 self
303 }
304 pub fn set_anywhere_settings(mut self, input: ::std::option::Option<crate::types::AnywhereSettings>) -> Self {
306 self.anywhere_settings = input;
307 self
308 }
309 pub fn get_anywhere_settings(&self) -> &::std::option::Option<crate::types::AnywhereSettings> {
311 &self.anywhere_settings
312 }
313 pub fn build(
315 self,
316 ) -> ::std::result::Result<crate::operation::update_channel::UpdateChannelInput, ::aws_smithy_types::error::operation::BuildError> {
317 ::std::result::Result::Ok(crate::operation::update_channel::UpdateChannelInput {
318 cdi_input_specification: self.cdi_input_specification,
319 channel_id: self.channel_id,
320 destinations: self.destinations,
321 encoder_settings: self.encoder_settings,
322 input_attachments: self.input_attachments,
323 input_specification: self.input_specification,
324 log_level: self.log_level,
325 maintenance: self.maintenance,
326 name: self.name,
327 role_arn: self.role_arn,
328 channel_engine_version: self.channel_engine_version,
329 dry_run: self.dry_run,
330 anywhere_settings: self.anywhere_settings,
331 })
332 }
333}