aws_sdk_sagemaker/operation/describe_cluster/
_describe_cluster_output.rs1#[allow(missing_docs)] #[non_exhaustive]
4#[derive(::std::clone::Clone, ::std::cmp::PartialEq, ::std::fmt::Debug)]
5pub struct DescribeClusterOutput {
6 pub cluster_arn: ::std::option::Option<::std::string::String>,
8 pub cluster_name: ::std::option::Option<::std::string::String>,
10 pub cluster_status: ::std::option::Option<crate::types::ClusterStatus>,
12 pub creation_time: ::std::option::Option<::aws_smithy_types::DateTime>,
14 pub failure_message: ::std::option::Option<::std::string::String>,
16 pub instance_groups: ::std::option::Option<::std::vec::Vec<crate::types::ClusterInstanceGroupDetails>>,
18 pub restricted_instance_groups: ::std::option::Option<::std::vec::Vec<crate::types::ClusterRestrictedInstanceGroupDetails>>,
20 pub vpc_config: ::std::option::Option<crate::types::VpcConfig>,
22 pub orchestrator: ::std::option::Option<crate::types::ClusterOrchestrator>,
24 pub tiered_storage_config: ::std::option::Option<crate::types::ClusterTieredStorageConfig>,
26 pub node_recovery: ::std::option::Option<crate::types::ClusterNodeRecovery>,
28 pub node_provisioning_mode: ::std::option::Option<crate::types::ClusterNodeProvisioningMode>,
30 pub cluster_role: ::std::option::Option<::std::string::String>,
32 pub auto_scaling: ::std::option::Option<crate::types::ClusterAutoScalingConfigOutput>,
34 _request_id: Option<String>,
35}
36impl DescribeClusterOutput {
37 pub fn cluster_arn(&self) -> ::std::option::Option<&str> {
39 self.cluster_arn.as_deref()
40 }
41 pub fn cluster_name(&self) -> ::std::option::Option<&str> {
43 self.cluster_name.as_deref()
44 }
45 pub fn cluster_status(&self) -> ::std::option::Option<&crate::types::ClusterStatus> {
47 self.cluster_status.as_ref()
48 }
49 pub fn creation_time(&self) -> ::std::option::Option<&::aws_smithy_types::DateTime> {
51 self.creation_time.as_ref()
52 }
53 pub fn failure_message(&self) -> ::std::option::Option<&str> {
55 self.failure_message.as_deref()
56 }
57 pub fn instance_groups(&self) -> &[crate::types::ClusterInstanceGroupDetails] {
61 self.instance_groups.as_deref().unwrap_or_default()
62 }
63 pub fn restricted_instance_groups(&self) -> &[crate::types::ClusterRestrictedInstanceGroupDetails] {
67 self.restricted_instance_groups.as_deref().unwrap_or_default()
68 }
69 pub fn vpc_config(&self) -> ::std::option::Option<&crate::types::VpcConfig> {
71 self.vpc_config.as_ref()
72 }
73 pub fn orchestrator(&self) -> ::std::option::Option<&crate::types::ClusterOrchestrator> {
75 self.orchestrator.as_ref()
76 }
77 pub fn tiered_storage_config(&self) -> ::std::option::Option<&crate::types::ClusterTieredStorageConfig> {
79 self.tiered_storage_config.as_ref()
80 }
81 pub fn node_recovery(&self) -> ::std::option::Option<&crate::types::ClusterNodeRecovery> {
83 self.node_recovery.as_ref()
84 }
85 pub fn node_provisioning_mode(&self) -> ::std::option::Option<&crate::types::ClusterNodeProvisioningMode> {
87 self.node_provisioning_mode.as_ref()
88 }
89 pub fn cluster_role(&self) -> ::std::option::Option<&str> {
91 self.cluster_role.as_deref()
92 }
93 pub fn auto_scaling(&self) -> ::std::option::Option<&crate::types::ClusterAutoScalingConfigOutput> {
95 self.auto_scaling.as_ref()
96 }
97}
98impl ::aws_types::request_id::RequestId for DescribeClusterOutput {
99 fn request_id(&self) -> Option<&str> {
100 self._request_id.as_deref()
101 }
102}
103impl DescribeClusterOutput {
104 pub fn builder() -> crate::operation::describe_cluster::builders::DescribeClusterOutputBuilder {
106 crate::operation::describe_cluster::builders::DescribeClusterOutputBuilder::default()
107 }
108}
109
110#[derive(::std::clone::Clone, ::std::cmp::PartialEq, ::std::default::Default, ::std::fmt::Debug)]
112#[non_exhaustive]
113pub struct DescribeClusterOutputBuilder {
114 pub(crate) cluster_arn: ::std::option::Option<::std::string::String>,
115 pub(crate) cluster_name: ::std::option::Option<::std::string::String>,
116 pub(crate) cluster_status: ::std::option::Option<crate::types::ClusterStatus>,
117 pub(crate) creation_time: ::std::option::Option<::aws_smithy_types::DateTime>,
118 pub(crate) failure_message: ::std::option::Option<::std::string::String>,
119 pub(crate) instance_groups: ::std::option::Option<::std::vec::Vec<crate::types::ClusterInstanceGroupDetails>>,
120 pub(crate) restricted_instance_groups: ::std::option::Option<::std::vec::Vec<crate::types::ClusterRestrictedInstanceGroupDetails>>,
121 pub(crate) vpc_config: ::std::option::Option<crate::types::VpcConfig>,
122 pub(crate) orchestrator: ::std::option::Option<crate::types::ClusterOrchestrator>,
123 pub(crate) tiered_storage_config: ::std::option::Option<crate::types::ClusterTieredStorageConfig>,
124 pub(crate) node_recovery: ::std::option::Option<crate::types::ClusterNodeRecovery>,
125 pub(crate) node_provisioning_mode: ::std::option::Option<crate::types::ClusterNodeProvisioningMode>,
126 pub(crate) cluster_role: ::std::option::Option<::std::string::String>,
127 pub(crate) auto_scaling: ::std::option::Option<crate::types::ClusterAutoScalingConfigOutput>,
128 _request_id: Option<String>,
129}
130impl DescribeClusterOutputBuilder {
131 pub fn cluster_arn(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
134 self.cluster_arn = ::std::option::Option::Some(input.into());
135 self
136 }
137 pub fn set_cluster_arn(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
139 self.cluster_arn = input;
140 self
141 }
142 pub fn get_cluster_arn(&self) -> &::std::option::Option<::std::string::String> {
144 &self.cluster_arn
145 }
146 pub fn cluster_name(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
148 self.cluster_name = ::std::option::Option::Some(input.into());
149 self
150 }
151 pub fn set_cluster_name(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
153 self.cluster_name = input;
154 self
155 }
156 pub fn get_cluster_name(&self) -> &::std::option::Option<::std::string::String> {
158 &self.cluster_name
159 }
160 pub fn cluster_status(mut self, input: crate::types::ClusterStatus) -> Self {
163 self.cluster_status = ::std::option::Option::Some(input);
164 self
165 }
166 pub fn set_cluster_status(mut self, input: ::std::option::Option<crate::types::ClusterStatus>) -> Self {
168 self.cluster_status = input;
169 self
170 }
171 pub fn get_cluster_status(&self) -> &::std::option::Option<crate::types::ClusterStatus> {
173 &self.cluster_status
174 }
175 pub fn creation_time(mut self, input: ::aws_smithy_types::DateTime) -> Self {
177 self.creation_time = ::std::option::Option::Some(input);
178 self
179 }
180 pub fn set_creation_time(mut self, input: ::std::option::Option<::aws_smithy_types::DateTime>) -> Self {
182 self.creation_time = input;
183 self
184 }
185 pub fn get_creation_time(&self) -> &::std::option::Option<::aws_smithy_types::DateTime> {
187 &self.creation_time
188 }
189 pub fn failure_message(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
191 self.failure_message = ::std::option::Option::Some(input.into());
192 self
193 }
194 pub fn set_failure_message(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
196 self.failure_message = input;
197 self
198 }
199 pub fn get_failure_message(&self) -> &::std::option::Option<::std::string::String> {
201 &self.failure_message
202 }
203 pub fn instance_groups(mut self, input: crate::types::ClusterInstanceGroupDetails) -> Self {
209 let mut v = self.instance_groups.unwrap_or_default();
210 v.push(input);
211 self.instance_groups = ::std::option::Option::Some(v);
212 self
213 }
214 pub fn set_instance_groups(mut self, input: ::std::option::Option<::std::vec::Vec<crate::types::ClusterInstanceGroupDetails>>) -> Self {
216 self.instance_groups = input;
217 self
218 }
219 pub fn get_instance_groups(&self) -> &::std::option::Option<::std::vec::Vec<crate::types::ClusterInstanceGroupDetails>> {
221 &self.instance_groups
222 }
223 pub fn restricted_instance_groups(mut self, input: crate::types::ClusterRestrictedInstanceGroupDetails) -> Self {
229 let mut v = self.restricted_instance_groups.unwrap_or_default();
230 v.push(input);
231 self.restricted_instance_groups = ::std::option::Option::Some(v);
232 self
233 }
234 pub fn set_restricted_instance_groups(
236 mut self,
237 input: ::std::option::Option<::std::vec::Vec<crate::types::ClusterRestrictedInstanceGroupDetails>>,
238 ) -> Self {
239 self.restricted_instance_groups = input;
240 self
241 }
242 pub fn get_restricted_instance_groups(&self) -> &::std::option::Option<::std::vec::Vec<crate::types::ClusterRestrictedInstanceGroupDetails>> {
244 &self.restricted_instance_groups
245 }
246 pub fn vpc_config(mut self, input: crate::types::VpcConfig) -> Self {
248 self.vpc_config = ::std::option::Option::Some(input);
249 self
250 }
251 pub fn set_vpc_config(mut self, input: ::std::option::Option<crate::types::VpcConfig>) -> Self {
253 self.vpc_config = input;
254 self
255 }
256 pub fn get_vpc_config(&self) -> &::std::option::Option<crate::types::VpcConfig> {
258 &self.vpc_config
259 }
260 pub fn orchestrator(mut self, input: crate::types::ClusterOrchestrator) -> Self {
262 self.orchestrator = ::std::option::Option::Some(input);
263 self
264 }
265 pub fn set_orchestrator(mut self, input: ::std::option::Option<crate::types::ClusterOrchestrator>) -> Self {
267 self.orchestrator = input;
268 self
269 }
270 pub fn get_orchestrator(&self) -> &::std::option::Option<crate::types::ClusterOrchestrator> {
272 &self.orchestrator
273 }
274 pub fn tiered_storage_config(mut self, input: crate::types::ClusterTieredStorageConfig) -> Self {
276 self.tiered_storage_config = ::std::option::Option::Some(input);
277 self
278 }
279 pub fn set_tiered_storage_config(mut self, input: ::std::option::Option<crate::types::ClusterTieredStorageConfig>) -> Self {
281 self.tiered_storage_config = input;
282 self
283 }
284 pub fn get_tiered_storage_config(&self) -> &::std::option::Option<crate::types::ClusterTieredStorageConfig> {
286 &self.tiered_storage_config
287 }
288 pub fn node_recovery(mut self, input: crate::types::ClusterNodeRecovery) -> Self {
290 self.node_recovery = ::std::option::Option::Some(input);
291 self
292 }
293 pub fn set_node_recovery(mut self, input: ::std::option::Option<crate::types::ClusterNodeRecovery>) -> Self {
295 self.node_recovery = input;
296 self
297 }
298 pub fn get_node_recovery(&self) -> &::std::option::Option<crate::types::ClusterNodeRecovery> {
300 &self.node_recovery
301 }
302 pub fn node_provisioning_mode(mut self, input: crate::types::ClusterNodeProvisioningMode) -> Self {
304 self.node_provisioning_mode = ::std::option::Option::Some(input);
305 self
306 }
307 pub fn set_node_provisioning_mode(mut self, input: ::std::option::Option<crate::types::ClusterNodeProvisioningMode>) -> Self {
309 self.node_provisioning_mode = input;
310 self
311 }
312 pub fn get_node_provisioning_mode(&self) -> &::std::option::Option<crate::types::ClusterNodeProvisioningMode> {
314 &self.node_provisioning_mode
315 }
316 pub fn cluster_role(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
318 self.cluster_role = ::std::option::Option::Some(input.into());
319 self
320 }
321 pub fn set_cluster_role(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
323 self.cluster_role = input;
324 self
325 }
326 pub fn get_cluster_role(&self) -> &::std::option::Option<::std::string::String> {
328 &self.cluster_role
329 }
330 pub fn auto_scaling(mut self, input: crate::types::ClusterAutoScalingConfigOutput) -> Self {
332 self.auto_scaling = ::std::option::Option::Some(input);
333 self
334 }
335 pub fn set_auto_scaling(mut self, input: ::std::option::Option<crate::types::ClusterAutoScalingConfigOutput>) -> Self {
337 self.auto_scaling = input;
338 self
339 }
340 pub fn get_auto_scaling(&self) -> &::std::option::Option<crate::types::ClusterAutoScalingConfigOutput> {
342 &self.auto_scaling
343 }
344 pub(crate) fn _request_id(mut self, request_id: impl Into<String>) -> Self {
345 self._request_id = Some(request_id.into());
346 self
347 }
348
349 pub(crate) fn _set_request_id(&mut self, request_id: Option<String>) -> &mut Self {
350 self._request_id = request_id;
351 self
352 }
353 pub fn build(self) -> crate::operation::describe_cluster::DescribeClusterOutput {
355 crate::operation::describe_cluster::DescribeClusterOutput {
356 cluster_arn: self.cluster_arn,
357 cluster_name: self.cluster_name,
358 cluster_status: self.cluster_status,
359 creation_time: self.creation_time,
360 failure_message: self.failure_message,
361 instance_groups: self.instance_groups,
362 restricted_instance_groups: self.restricted_instance_groups,
363 vpc_config: self.vpc_config,
364 orchestrator: self.orchestrator,
365 tiered_storage_config: self.tiered_storage_config,
366 node_recovery: self.node_recovery,
367 node_provisioning_mode: self.node_provisioning_mode,
368 cluster_role: self.cluster_role,
369 auto_scaling: self.auto_scaling,
370 _request_id: self._request_id,
371 }
372 }
373}