aws_sdk_directconnect/operation/create_interconnect/
_create_interconnect_output.rs1#[non_exhaustive]
5#[derive(::std::clone::Clone, ::std::cmp::PartialEq, ::std::fmt::Debug)]
6pub struct CreateInterconnectOutput {
7 pub interconnect_id: ::std::option::Option<::std::string::String>,
9 pub interconnect_name: ::std::option::Option<::std::string::String>,
11 pub interconnect_state: ::std::option::Option<crate::types::InterconnectState>,
29 pub region: ::std::option::Option<::std::string::String>,
31 pub location: ::std::option::Option<::std::string::String>,
33 pub bandwidth: ::std::option::Option<::std::string::String>,
35 pub loa_issue_time: ::std::option::Option<::aws_smithy_types::DateTime>,
37 pub lag_id: ::std::option::Option<::std::string::String>,
39 pub aws_device: ::std::option::Option<::std::string::String>,
41 pub jumbo_frame_capable: ::std::option::Option<bool>,
43 pub aws_device_v2: ::std::option::Option<::std::string::String>,
45 pub aws_logical_device_id: ::std::option::Option<::std::string::String>,
47 pub has_logical_redundancy: ::std::option::Option<crate::types::HasLogicalRedundancy>,
49 pub tags: ::std::option::Option<::std::vec::Vec<crate::types::Tag>>,
51 pub provider_name: ::std::option::Option<::std::string::String>,
53 _request_id: Option<String>,
54}
55impl CreateInterconnectOutput {
56 pub fn interconnect_id(&self) -> ::std::option::Option<&str> {
58 self.interconnect_id.as_deref()
59 }
60 pub fn interconnect_name(&self) -> ::std::option::Option<&str> {
62 self.interconnect_name.as_deref()
63 }
64 pub fn interconnect_state(&self) -> ::std::option::Option<&crate::types::InterconnectState> {
82 self.interconnect_state.as_ref()
83 }
84 pub fn region(&self) -> ::std::option::Option<&str> {
86 self.region.as_deref()
87 }
88 pub fn location(&self) -> ::std::option::Option<&str> {
90 self.location.as_deref()
91 }
92 pub fn bandwidth(&self) -> ::std::option::Option<&str> {
94 self.bandwidth.as_deref()
95 }
96 pub fn loa_issue_time(&self) -> ::std::option::Option<&::aws_smithy_types::DateTime> {
98 self.loa_issue_time.as_ref()
99 }
100 pub fn lag_id(&self) -> ::std::option::Option<&str> {
102 self.lag_id.as_deref()
103 }
104 pub fn aws_device(&self) -> ::std::option::Option<&str> {
106 self.aws_device.as_deref()
107 }
108 pub fn jumbo_frame_capable(&self) -> ::std::option::Option<bool> {
110 self.jumbo_frame_capable
111 }
112 pub fn aws_device_v2(&self) -> ::std::option::Option<&str> {
114 self.aws_device_v2.as_deref()
115 }
116 pub fn aws_logical_device_id(&self) -> ::std::option::Option<&str> {
118 self.aws_logical_device_id.as_deref()
119 }
120 pub fn has_logical_redundancy(&self) -> ::std::option::Option<&crate::types::HasLogicalRedundancy> {
122 self.has_logical_redundancy.as_ref()
123 }
124 pub fn tags(&self) -> &[crate::types::Tag] {
128 self.tags.as_deref().unwrap_or_default()
129 }
130 pub fn provider_name(&self) -> ::std::option::Option<&str> {
132 self.provider_name.as_deref()
133 }
134}
135impl ::aws_types::request_id::RequestId for CreateInterconnectOutput {
136 fn request_id(&self) -> Option<&str> {
137 self._request_id.as_deref()
138 }
139}
140impl CreateInterconnectOutput {
141 pub fn builder() -> crate::operation::create_interconnect::builders::CreateInterconnectOutputBuilder {
143 crate::operation::create_interconnect::builders::CreateInterconnectOutputBuilder::default()
144 }
145}
146
147#[derive(::std::clone::Clone, ::std::cmp::PartialEq, ::std::default::Default, ::std::fmt::Debug)]
149#[non_exhaustive]
150pub struct CreateInterconnectOutputBuilder {
151 pub(crate) interconnect_id: ::std::option::Option<::std::string::String>,
152 pub(crate) interconnect_name: ::std::option::Option<::std::string::String>,
153 pub(crate) interconnect_state: ::std::option::Option<crate::types::InterconnectState>,
154 pub(crate) region: ::std::option::Option<::std::string::String>,
155 pub(crate) location: ::std::option::Option<::std::string::String>,
156 pub(crate) bandwidth: ::std::option::Option<::std::string::String>,
157 pub(crate) loa_issue_time: ::std::option::Option<::aws_smithy_types::DateTime>,
158 pub(crate) lag_id: ::std::option::Option<::std::string::String>,
159 pub(crate) aws_device: ::std::option::Option<::std::string::String>,
160 pub(crate) jumbo_frame_capable: ::std::option::Option<bool>,
161 pub(crate) aws_device_v2: ::std::option::Option<::std::string::String>,
162 pub(crate) aws_logical_device_id: ::std::option::Option<::std::string::String>,
163 pub(crate) has_logical_redundancy: ::std::option::Option<crate::types::HasLogicalRedundancy>,
164 pub(crate) tags: ::std::option::Option<::std::vec::Vec<crate::types::Tag>>,
165 pub(crate) provider_name: ::std::option::Option<::std::string::String>,
166 _request_id: Option<String>,
167}
168impl CreateInterconnectOutputBuilder {
169 pub fn interconnect_id(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
171 self.interconnect_id = ::std::option::Option::Some(input.into());
172 self
173 }
174 pub fn set_interconnect_id(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
176 self.interconnect_id = input;
177 self
178 }
179 pub fn get_interconnect_id(&self) -> &::std::option::Option<::std::string::String> {
181 &self.interconnect_id
182 }
183 pub fn interconnect_name(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
185 self.interconnect_name = ::std::option::Option::Some(input.into());
186 self
187 }
188 pub fn set_interconnect_name(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
190 self.interconnect_name = input;
191 self
192 }
193 pub fn get_interconnect_name(&self) -> &::std::option::Option<::std::string::String> {
195 &self.interconnect_name
196 }
197 pub fn interconnect_state(mut self, input: crate::types::InterconnectState) -> Self {
215 self.interconnect_state = ::std::option::Option::Some(input);
216 self
217 }
218 pub fn set_interconnect_state(mut self, input: ::std::option::Option<crate::types::InterconnectState>) -> Self {
236 self.interconnect_state = input;
237 self
238 }
239 pub fn get_interconnect_state(&self) -> &::std::option::Option<crate::types::InterconnectState> {
257 &self.interconnect_state
258 }
259 pub fn region(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
261 self.region = ::std::option::Option::Some(input.into());
262 self
263 }
264 pub fn set_region(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
266 self.region = input;
267 self
268 }
269 pub fn get_region(&self) -> &::std::option::Option<::std::string::String> {
271 &self.region
272 }
273 pub fn location(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
275 self.location = ::std::option::Option::Some(input.into());
276 self
277 }
278 pub fn set_location(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
280 self.location = input;
281 self
282 }
283 pub fn get_location(&self) -> &::std::option::Option<::std::string::String> {
285 &self.location
286 }
287 pub fn bandwidth(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
289 self.bandwidth = ::std::option::Option::Some(input.into());
290 self
291 }
292 pub fn set_bandwidth(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
294 self.bandwidth = input;
295 self
296 }
297 pub fn get_bandwidth(&self) -> &::std::option::Option<::std::string::String> {
299 &self.bandwidth
300 }
301 pub fn loa_issue_time(mut self, input: ::aws_smithy_types::DateTime) -> Self {
303 self.loa_issue_time = ::std::option::Option::Some(input);
304 self
305 }
306 pub fn set_loa_issue_time(mut self, input: ::std::option::Option<::aws_smithy_types::DateTime>) -> Self {
308 self.loa_issue_time = input;
309 self
310 }
311 pub fn get_loa_issue_time(&self) -> &::std::option::Option<::aws_smithy_types::DateTime> {
313 &self.loa_issue_time
314 }
315 pub fn lag_id(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
317 self.lag_id = ::std::option::Option::Some(input.into());
318 self
319 }
320 pub fn set_lag_id(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
322 self.lag_id = input;
323 self
324 }
325 pub fn get_lag_id(&self) -> &::std::option::Option<::std::string::String> {
327 &self.lag_id
328 }
329 pub fn aws_device(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
331 self.aws_device = ::std::option::Option::Some(input.into());
332 self
333 }
334 pub fn set_aws_device(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
336 self.aws_device = input;
337 self
338 }
339 pub fn get_aws_device(&self) -> &::std::option::Option<::std::string::String> {
341 &self.aws_device
342 }
343 pub fn jumbo_frame_capable(mut self, input: bool) -> Self {
345 self.jumbo_frame_capable = ::std::option::Option::Some(input);
346 self
347 }
348 pub fn set_jumbo_frame_capable(mut self, input: ::std::option::Option<bool>) -> Self {
350 self.jumbo_frame_capable = input;
351 self
352 }
353 pub fn get_jumbo_frame_capable(&self) -> &::std::option::Option<bool> {
355 &self.jumbo_frame_capable
356 }
357 pub fn aws_device_v2(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
359 self.aws_device_v2 = ::std::option::Option::Some(input.into());
360 self
361 }
362 pub fn set_aws_device_v2(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
364 self.aws_device_v2 = input;
365 self
366 }
367 pub fn get_aws_device_v2(&self) -> &::std::option::Option<::std::string::String> {
369 &self.aws_device_v2
370 }
371 pub fn aws_logical_device_id(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
373 self.aws_logical_device_id = ::std::option::Option::Some(input.into());
374 self
375 }
376 pub fn set_aws_logical_device_id(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
378 self.aws_logical_device_id = input;
379 self
380 }
381 pub fn get_aws_logical_device_id(&self) -> &::std::option::Option<::std::string::String> {
383 &self.aws_logical_device_id
384 }
385 pub fn has_logical_redundancy(mut self, input: crate::types::HasLogicalRedundancy) -> Self {
387 self.has_logical_redundancy = ::std::option::Option::Some(input);
388 self
389 }
390 pub fn set_has_logical_redundancy(mut self, input: ::std::option::Option<crate::types::HasLogicalRedundancy>) -> Self {
392 self.has_logical_redundancy = input;
393 self
394 }
395 pub fn get_has_logical_redundancy(&self) -> &::std::option::Option<crate::types::HasLogicalRedundancy> {
397 &self.has_logical_redundancy
398 }
399 pub fn tags(mut self, input: crate::types::Tag) -> Self {
405 let mut v = self.tags.unwrap_or_default();
406 v.push(input);
407 self.tags = ::std::option::Option::Some(v);
408 self
409 }
410 pub fn set_tags(mut self, input: ::std::option::Option<::std::vec::Vec<crate::types::Tag>>) -> Self {
412 self.tags = input;
413 self
414 }
415 pub fn get_tags(&self) -> &::std::option::Option<::std::vec::Vec<crate::types::Tag>> {
417 &self.tags
418 }
419 pub fn provider_name(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
421 self.provider_name = ::std::option::Option::Some(input.into());
422 self
423 }
424 pub fn set_provider_name(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
426 self.provider_name = input;
427 self
428 }
429 pub fn get_provider_name(&self) -> &::std::option::Option<::std::string::String> {
431 &self.provider_name
432 }
433 pub(crate) fn _request_id(mut self, request_id: impl Into<String>) -> Self {
434 self._request_id = Some(request_id.into());
435 self
436 }
437
438 pub(crate) fn _set_request_id(&mut self, request_id: Option<String>) -> &mut Self {
439 self._request_id = request_id;
440 self
441 }
442 pub fn build(self) -> crate::operation::create_interconnect::CreateInterconnectOutput {
444 crate::operation::create_interconnect::CreateInterconnectOutput {
445 interconnect_id: self.interconnect_id,
446 interconnect_name: self.interconnect_name,
447 interconnect_state: self.interconnect_state,
448 region: self.region,
449 location: self.location,
450 bandwidth: self.bandwidth,
451 loa_issue_time: self.loa_issue_time,
452 lag_id: self.lag_id,
453 aws_device: self.aws_device,
454 jumbo_frame_capable: self.jumbo_frame_capable,
455 aws_device_v2: self.aws_device_v2,
456 aws_logical_device_id: self.aws_logical_device_id,
457 has_logical_redundancy: self.has_logical_redundancy,
458 tags: self.tags,
459 provider_name: self.provider_name,
460 _request_id: self._request_id,
461 }
462 }
463}