aws_sdk_eventbridge/operation/create_endpoint/
_create_endpoint_output.rs1#[allow(missing_docs)] #[non_exhaustive]
4#[derive(::std::clone::Clone, ::std::cmp::PartialEq, ::std::fmt::Debug)]
5pub struct CreateEndpointOutput {
6 pub name: ::std::option::Option<::std::string::String>,
8 pub arn: ::std::option::Option<::std::string::String>,
10 pub routing_config: ::std::option::Option<crate::types::RoutingConfig>,
12 pub replication_config: ::std::option::Option<crate::types::ReplicationConfig>,
14 pub event_buses: ::std::option::Option<::std::vec::Vec<crate::types::EndpointEventBus>>,
16 pub role_arn: ::std::option::Option<::std::string::String>,
18 pub state: ::std::option::Option<crate::types::EndpointState>,
20 _request_id: Option<String>,
21}
22impl CreateEndpointOutput {
23 pub fn name(&self) -> ::std::option::Option<&str> {
25 self.name.as_deref()
26 }
27 pub fn arn(&self) -> ::std::option::Option<&str> {
29 self.arn.as_deref()
30 }
31 pub fn routing_config(&self) -> ::std::option::Option<&crate::types::RoutingConfig> {
33 self.routing_config.as_ref()
34 }
35 pub fn replication_config(&self) -> ::std::option::Option<&crate::types::ReplicationConfig> {
37 self.replication_config.as_ref()
38 }
39 pub fn event_buses(&self) -> &[crate::types::EndpointEventBus] {
43 self.event_buses.as_deref().unwrap_or_default()
44 }
45 pub fn role_arn(&self) -> ::std::option::Option<&str> {
47 self.role_arn.as_deref()
48 }
49 pub fn state(&self) -> ::std::option::Option<&crate::types::EndpointState> {
51 self.state.as_ref()
52 }
53}
54impl ::aws_types::request_id::RequestId for CreateEndpointOutput {
55 fn request_id(&self) -> Option<&str> {
56 self._request_id.as_deref()
57 }
58}
59impl CreateEndpointOutput {
60 pub fn builder() -> crate::operation::create_endpoint::builders::CreateEndpointOutputBuilder {
62 crate::operation::create_endpoint::builders::CreateEndpointOutputBuilder::default()
63 }
64}
65
66#[derive(::std::clone::Clone, ::std::cmp::PartialEq, ::std::default::Default, ::std::fmt::Debug)]
68#[non_exhaustive]
69pub struct CreateEndpointOutputBuilder {
70 pub(crate) name: ::std::option::Option<::std::string::String>,
71 pub(crate) arn: ::std::option::Option<::std::string::String>,
72 pub(crate) routing_config: ::std::option::Option<crate::types::RoutingConfig>,
73 pub(crate) replication_config: ::std::option::Option<crate::types::ReplicationConfig>,
74 pub(crate) event_buses: ::std::option::Option<::std::vec::Vec<crate::types::EndpointEventBus>>,
75 pub(crate) role_arn: ::std::option::Option<::std::string::String>,
76 pub(crate) state: ::std::option::Option<crate::types::EndpointState>,
77 _request_id: Option<String>,
78}
79impl CreateEndpointOutputBuilder {
80 pub fn name(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
82 self.name = ::std::option::Option::Some(input.into());
83 self
84 }
85 pub fn set_name(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
87 self.name = input;
88 self
89 }
90 pub fn get_name(&self) -> &::std::option::Option<::std::string::String> {
92 &self.name
93 }
94 pub fn arn(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
96 self.arn = ::std::option::Option::Some(input.into());
97 self
98 }
99 pub fn set_arn(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
101 self.arn = input;
102 self
103 }
104 pub fn get_arn(&self) -> &::std::option::Option<::std::string::String> {
106 &self.arn
107 }
108 pub fn routing_config(mut self, input: crate::types::RoutingConfig) -> Self {
110 self.routing_config = ::std::option::Option::Some(input);
111 self
112 }
113 pub fn set_routing_config(mut self, input: ::std::option::Option<crate::types::RoutingConfig>) -> Self {
115 self.routing_config = input;
116 self
117 }
118 pub fn get_routing_config(&self) -> &::std::option::Option<crate::types::RoutingConfig> {
120 &self.routing_config
121 }
122 pub fn replication_config(mut self, input: crate::types::ReplicationConfig) -> Self {
124 self.replication_config = ::std::option::Option::Some(input);
125 self
126 }
127 pub fn set_replication_config(mut self, input: ::std::option::Option<crate::types::ReplicationConfig>) -> Self {
129 self.replication_config = input;
130 self
131 }
132 pub fn get_replication_config(&self) -> &::std::option::Option<crate::types::ReplicationConfig> {
134 &self.replication_config
135 }
136 pub fn event_buses(mut self, input: crate::types::EndpointEventBus) -> Self {
142 let mut v = self.event_buses.unwrap_or_default();
143 v.push(input);
144 self.event_buses = ::std::option::Option::Some(v);
145 self
146 }
147 pub fn set_event_buses(mut self, input: ::std::option::Option<::std::vec::Vec<crate::types::EndpointEventBus>>) -> Self {
149 self.event_buses = input;
150 self
151 }
152 pub fn get_event_buses(&self) -> &::std::option::Option<::std::vec::Vec<crate::types::EndpointEventBus>> {
154 &self.event_buses
155 }
156 pub fn role_arn(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
158 self.role_arn = ::std::option::Option::Some(input.into());
159 self
160 }
161 pub fn set_role_arn(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
163 self.role_arn = input;
164 self
165 }
166 pub fn get_role_arn(&self) -> &::std::option::Option<::std::string::String> {
168 &self.role_arn
169 }
170 pub fn state(mut self, input: crate::types::EndpointState) -> Self {
172 self.state = ::std::option::Option::Some(input);
173 self
174 }
175 pub fn set_state(mut self, input: ::std::option::Option<crate::types::EndpointState>) -> Self {
177 self.state = input;
178 self
179 }
180 pub fn get_state(&self) -> &::std::option::Option<crate::types::EndpointState> {
182 &self.state
183 }
184 pub(crate) fn _request_id(mut self, request_id: impl Into<String>) -> Self {
185 self._request_id = Some(request_id.into());
186 self
187 }
188
189 pub(crate) fn _set_request_id(&mut self, request_id: Option<String>) -> &mut Self {
190 self._request_id = request_id;
191 self
192 }
193 pub fn build(self) -> crate::operation::create_endpoint::CreateEndpointOutput {
195 crate::operation::create_endpoint::CreateEndpointOutput {
196 name: self.name,
197 arn: self.arn,
198 routing_config: self.routing_config,
199 replication_config: self.replication_config,
200 event_buses: self.event_buses,
201 role_arn: self.role_arn,
202 state: self.state,
203 _request_id: self._request_id,
204 }
205 }
206}