aws_sdk_iotwireless/types/
_f_ports.rs1#[non_exhaustive]
5#[derive(::std::clone::Clone, ::std::cmp::PartialEq, ::std::fmt::Debug)]
6pub struct FPorts {
7 pub fuota: ::std::option::Option<i32>,
9 pub multicast: ::std::option::Option<i32>,
11 pub clock_sync: ::std::option::Option<i32>,
13 pub positioning: ::std::option::Option<crate::types::Positioning>,
15 pub applications: ::std::option::Option<::std::vec::Vec<crate::types::ApplicationConfig>>,
17}
18impl FPorts {
19 pub fn fuota(&self) -> ::std::option::Option<i32> {
21 self.fuota
22 }
23 pub fn multicast(&self) -> ::std::option::Option<i32> {
25 self.multicast
26 }
27 pub fn clock_sync(&self) -> ::std::option::Option<i32> {
29 self.clock_sync
30 }
31 pub fn positioning(&self) -> ::std::option::Option<&crate::types::Positioning> {
33 self.positioning.as_ref()
34 }
35 pub fn applications(&self) -> &[crate::types::ApplicationConfig] {
39 self.applications.as_deref().unwrap_or_default()
40 }
41}
42impl FPorts {
43 pub fn builder() -> crate::types::builders::FPortsBuilder {
45 crate::types::builders::FPortsBuilder::default()
46 }
47}
48
49#[derive(::std::clone::Clone, ::std::cmp::PartialEq, ::std::default::Default, ::std::fmt::Debug)]
51#[non_exhaustive]
52pub struct FPortsBuilder {
53 pub(crate) fuota: ::std::option::Option<i32>,
54 pub(crate) multicast: ::std::option::Option<i32>,
55 pub(crate) clock_sync: ::std::option::Option<i32>,
56 pub(crate) positioning: ::std::option::Option<crate::types::Positioning>,
57 pub(crate) applications: ::std::option::Option<::std::vec::Vec<crate::types::ApplicationConfig>>,
58}
59impl FPortsBuilder {
60 pub fn fuota(mut self, input: i32) -> Self {
62 self.fuota = ::std::option::Option::Some(input);
63 self
64 }
65 pub fn set_fuota(mut self, input: ::std::option::Option<i32>) -> Self {
67 self.fuota = input;
68 self
69 }
70 pub fn get_fuota(&self) -> &::std::option::Option<i32> {
72 &self.fuota
73 }
74 pub fn multicast(mut self, input: i32) -> Self {
76 self.multicast = ::std::option::Option::Some(input);
77 self
78 }
79 pub fn set_multicast(mut self, input: ::std::option::Option<i32>) -> Self {
81 self.multicast = input;
82 self
83 }
84 pub fn get_multicast(&self) -> &::std::option::Option<i32> {
86 &self.multicast
87 }
88 pub fn clock_sync(mut self, input: i32) -> Self {
90 self.clock_sync = ::std::option::Option::Some(input);
91 self
92 }
93 pub fn set_clock_sync(mut self, input: ::std::option::Option<i32>) -> Self {
95 self.clock_sync = input;
96 self
97 }
98 pub fn get_clock_sync(&self) -> &::std::option::Option<i32> {
100 &self.clock_sync
101 }
102 pub fn positioning(mut self, input: crate::types::Positioning) -> Self {
104 self.positioning = ::std::option::Option::Some(input);
105 self
106 }
107 pub fn set_positioning(mut self, input: ::std::option::Option<crate::types::Positioning>) -> Self {
109 self.positioning = input;
110 self
111 }
112 pub fn get_positioning(&self) -> &::std::option::Option<crate::types::Positioning> {
114 &self.positioning
115 }
116 pub fn applications(mut self, input: crate::types::ApplicationConfig) -> Self {
122 let mut v = self.applications.unwrap_or_default();
123 v.push(input);
124 self.applications = ::std::option::Option::Some(v);
125 self
126 }
127 pub fn set_applications(mut self, input: ::std::option::Option<::std::vec::Vec<crate::types::ApplicationConfig>>) -> Self {
129 self.applications = input;
130 self
131 }
132 pub fn get_applications(&self) -> &::std::option::Option<::std::vec::Vec<crate::types::ApplicationConfig>> {
134 &self.applications
135 }
136 pub fn build(self) -> crate::types::FPorts {
138 crate::types::FPorts {
139 fuota: self.fuota,
140 multicast: self.multicast,
141 clock_sync: self.clock_sync,
142 positioning: self.positioning,
143 applications: self.applications,
144 }
145 }
146}