1#[allow(missing_docs)] #[non_exhaustive]
4#[derive(::std::clone::Clone, ::std::cmp::PartialEq)]
5pub struct GetSessionOutput {
6 pub session_arn: ::std::option::Option<::std::string::String>,
8 pub approval_team_arn: ::std::option::Option<::std::string::String>,
10 pub approval_team_name: ::std::option::Option<::std::string::String>,
12 pub protected_resource_arn: ::std::option::Option<::std::string::String>,
14 pub approval_strategy: ::std::option::Option<crate::types::ApprovalStrategyResponse>,
16 pub number_of_approvers: ::std::option::Option<i32>,
18 pub initiation_time: ::std::option::Option<::aws_smithy_types::DateTime>,
20 pub expiration_time: ::std::option::Option<::aws_smithy_types::DateTime>,
22 pub completion_time: ::std::option::Option<::aws_smithy_types::DateTime>,
24 pub description: ::std::option::Option<::std::string::String>,
26 pub metadata: ::std::option::Option<::std::collections::HashMap<::std::string::String, ::std::string::String>>,
28 pub status: ::std::option::Option<crate::types::SessionStatus>,
30 pub status_code: ::std::option::Option<crate::types::SessionStatusCode>,
32 pub status_message: ::std::option::Option<::std::string::String>,
34 pub execution_status: ::std::option::Option<crate::types::SessionExecutionStatus>,
36 pub action_name: ::std::option::Option<::std::string::String>,
38 pub requester_service_principal: ::std::option::Option<::std::string::String>,
40 pub requester_principal_arn: ::std::option::Option<::std::string::String>,
42 pub requester_account_id: ::std::option::Option<::std::string::String>,
44 pub requester_region: ::std::option::Option<::std::string::String>,
46 pub requester_comment: ::std::option::Option<::std::string::String>,
48 pub action_completion_strategy: ::std::option::Option<crate::types::ActionCompletionStrategy>,
50 pub approver_responses: ::std::option::Option<::std::vec::Vec<crate::types::GetSessionResponseApproverResponse>>,
52 _request_id: Option<String>,
53}
54impl GetSessionOutput {
55 pub fn session_arn(&self) -> ::std::option::Option<&str> {
57 self.session_arn.as_deref()
58 }
59 pub fn approval_team_arn(&self) -> ::std::option::Option<&str> {
61 self.approval_team_arn.as_deref()
62 }
63 pub fn approval_team_name(&self) -> ::std::option::Option<&str> {
65 self.approval_team_name.as_deref()
66 }
67 pub fn protected_resource_arn(&self) -> ::std::option::Option<&str> {
69 self.protected_resource_arn.as_deref()
70 }
71 pub fn approval_strategy(&self) -> ::std::option::Option<&crate::types::ApprovalStrategyResponse> {
73 self.approval_strategy.as_ref()
74 }
75 pub fn number_of_approvers(&self) -> ::std::option::Option<i32> {
77 self.number_of_approvers
78 }
79 pub fn initiation_time(&self) -> ::std::option::Option<&::aws_smithy_types::DateTime> {
81 self.initiation_time.as_ref()
82 }
83 pub fn expiration_time(&self) -> ::std::option::Option<&::aws_smithy_types::DateTime> {
85 self.expiration_time.as_ref()
86 }
87 pub fn completion_time(&self) -> ::std::option::Option<&::aws_smithy_types::DateTime> {
89 self.completion_time.as_ref()
90 }
91 pub fn description(&self) -> ::std::option::Option<&str> {
93 self.description.as_deref()
94 }
95 pub fn metadata(&self) -> ::std::option::Option<&::std::collections::HashMap<::std::string::String, ::std::string::String>> {
97 self.metadata.as_ref()
98 }
99 pub fn status(&self) -> ::std::option::Option<&crate::types::SessionStatus> {
101 self.status.as_ref()
102 }
103 pub fn status_code(&self) -> ::std::option::Option<&crate::types::SessionStatusCode> {
105 self.status_code.as_ref()
106 }
107 pub fn status_message(&self) -> ::std::option::Option<&str> {
109 self.status_message.as_deref()
110 }
111 pub fn execution_status(&self) -> ::std::option::Option<&crate::types::SessionExecutionStatus> {
113 self.execution_status.as_ref()
114 }
115 pub fn action_name(&self) -> ::std::option::Option<&str> {
117 self.action_name.as_deref()
118 }
119 pub fn requester_service_principal(&self) -> ::std::option::Option<&str> {
121 self.requester_service_principal.as_deref()
122 }
123 pub fn requester_principal_arn(&self) -> ::std::option::Option<&str> {
125 self.requester_principal_arn.as_deref()
126 }
127 pub fn requester_account_id(&self) -> ::std::option::Option<&str> {
129 self.requester_account_id.as_deref()
130 }
131 pub fn requester_region(&self) -> ::std::option::Option<&str> {
133 self.requester_region.as_deref()
134 }
135 pub fn requester_comment(&self) -> ::std::option::Option<&str> {
137 self.requester_comment.as_deref()
138 }
139 pub fn action_completion_strategy(&self) -> ::std::option::Option<&crate::types::ActionCompletionStrategy> {
141 self.action_completion_strategy.as_ref()
142 }
143 pub fn approver_responses(&self) -> &[crate::types::GetSessionResponseApproverResponse] {
147 self.approver_responses.as_deref().unwrap_or_default()
148 }
149}
150impl ::std::fmt::Debug for GetSessionOutput {
151 fn fmt(&self, f: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
152 let mut formatter = f.debug_struct("GetSessionOutput");
153 formatter.field("session_arn", &self.session_arn);
154 formatter.field("approval_team_arn", &self.approval_team_arn);
155 formatter.field("approval_team_name", &self.approval_team_name);
156 formatter.field("protected_resource_arn", &self.protected_resource_arn);
157 formatter.field("approval_strategy", &self.approval_strategy);
158 formatter.field("number_of_approvers", &self.number_of_approvers);
159 formatter.field("initiation_time", &self.initiation_time);
160 formatter.field("expiration_time", &self.expiration_time);
161 formatter.field("completion_time", &self.completion_time);
162 formatter.field("description", &"*** Sensitive Data Redacted ***");
163 formatter.field("metadata", &"*** Sensitive Data Redacted ***");
164 formatter.field("status", &self.status);
165 formatter.field("status_code", &self.status_code);
166 formatter.field("status_message", &self.status_message);
167 formatter.field("execution_status", &self.execution_status);
168 formatter.field("action_name", &self.action_name);
169 formatter.field("requester_service_principal", &self.requester_service_principal);
170 formatter.field("requester_principal_arn", &self.requester_principal_arn);
171 formatter.field("requester_account_id", &self.requester_account_id);
172 formatter.field("requester_region", &self.requester_region);
173 formatter.field("requester_comment", &"*** Sensitive Data Redacted ***");
174 formatter.field("action_completion_strategy", &self.action_completion_strategy);
175 formatter.field("approver_responses", &self.approver_responses);
176 formatter.field("_request_id", &self._request_id);
177 formatter.finish()
178 }
179}
180impl ::aws_types::request_id::RequestId for GetSessionOutput {
181 fn request_id(&self) -> Option<&str> {
182 self._request_id.as_deref()
183 }
184}
185impl GetSessionOutput {
186 pub fn builder() -> crate::operation::get_session::builders::GetSessionOutputBuilder {
188 crate::operation::get_session::builders::GetSessionOutputBuilder::default()
189 }
190}
191
192#[derive(::std::clone::Clone, ::std::cmp::PartialEq, ::std::default::Default)]
194#[non_exhaustive]
195pub struct GetSessionOutputBuilder {
196 pub(crate) session_arn: ::std::option::Option<::std::string::String>,
197 pub(crate) approval_team_arn: ::std::option::Option<::std::string::String>,
198 pub(crate) approval_team_name: ::std::option::Option<::std::string::String>,
199 pub(crate) protected_resource_arn: ::std::option::Option<::std::string::String>,
200 pub(crate) approval_strategy: ::std::option::Option<crate::types::ApprovalStrategyResponse>,
201 pub(crate) number_of_approvers: ::std::option::Option<i32>,
202 pub(crate) initiation_time: ::std::option::Option<::aws_smithy_types::DateTime>,
203 pub(crate) expiration_time: ::std::option::Option<::aws_smithy_types::DateTime>,
204 pub(crate) completion_time: ::std::option::Option<::aws_smithy_types::DateTime>,
205 pub(crate) description: ::std::option::Option<::std::string::String>,
206 pub(crate) metadata: ::std::option::Option<::std::collections::HashMap<::std::string::String, ::std::string::String>>,
207 pub(crate) status: ::std::option::Option<crate::types::SessionStatus>,
208 pub(crate) status_code: ::std::option::Option<crate::types::SessionStatusCode>,
209 pub(crate) status_message: ::std::option::Option<::std::string::String>,
210 pub(crate) execution_status: ::std::option::Option<crate::types::SessionExecutionStatus>,
211 pub(crate) action_name: ::std::option::Option<::std::string::String>,
212 pub(crate) requester_service_principal: ::std::option::Option<::std::string::String>,
213 pub(crate) requester_principal_arn: ::std::option::Option<::std::string::String>,
214 pub(crate) requester_account_id: ::std::option::Option<::std::string::String>,
215 pub(crate) requester_region: ::std::option::Option<::std::string::String>,
216 pub(crate) requester_comment: ::std::option::Option<::std::string::String>,
217 pub(crate) action_completion_strategy: ::std::option::Option<crate::types::ActionCompletionStrategy>,
218 pub(crate) approver_responses: ::std::option::Option<::std::vec::Vec<crate::types::GetSessionResponseApproverResponse>>,
219 _request_id: Option<String>,
220}
221impl GetSessionOutputBuilder {
222 pub fn session_arn(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
224 self.session_arn = ::std::option::Option::Some(input.into());
225 self
226 }
227 pub fn set_session_arn(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
229 self.session_arn = input;
230 self
231 }
232 pub fn get_session_arn(&self) -> &::std::option::Option<::std::string::String> {
234 &self.session_arn
235 }
236 pub fn approval_team_arn(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
238 self.approval_team_arn = ::std::option::Option::Some(input.into());
239 self
240 }
241 pub fn set_approval_team_arn(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
243 self.approval_team_arn = input;
244 self
245 }
246 pub fn get_approval_team_arn(&self) -> &::std::option::Option<::std::string::String> {
248 &self.approval_team_arn
249 }
250 pub fn approval_team_name(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
252 self.approval_team_name = ::std::option::Option::Some(input.into());
253 self
254 }
255 pub fn set_approval_team_name(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
257 self.approval_team_name = input;
258 self
259 }
260 pub fn get_approval_team_name(&self) -> &::std::option::Option<::std::string::String> {
262 &self.approval_team_name
263 }
264 pub fn protected_resource_arn(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
266 self.protected_resource_arn = ::std::option::Option::Some(input.into());
267 self
268 }
269 pub fn set_protected_resource_arn(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
271 self.protected_resource_arn = input;
272 self
273 }
274 pub fn get_protected_resource_arn(&self) -> &::std::option::Option<::std::string::String> {
276 &self.protected_resource_arn
277 }
278 pub fn approval_strategy(mut self, input: crate::types::ApprovalStrategyResponse) -> Self {
280 self.approval_strategy = ::std::option::Option::Some(input);
281 self
282 }
283 pub fn set_approval_strategy(mut self, input: ::std::option::Option<crate::types::ApprovalStrategyResponse>) -> Self {
285 self.approval_strategy = input;
286 self
287 }
288 pub fn get_approval_strategy(&self) -> &::std::option::Option<crate::types::ApprovalStrategyResponse> {
290 &self.approval_strategy
291 }
292 pub fn number_of_approvers(mut self, input: i32) -> Self {
294 self.number_of_approvers = ::std::option::Option::Some(input);
295 self
296 }
297 pub fn set_number_of_approvers(mut self, input: ::std::option::Option<i32>) -> Self {
299 self.number_of_approvers = input;
300 self
301 }
302 pub fn get_number_of_approvers(&self) -> &::std::option::Option<i32> {
304 &self.number_of_approvers
305 }
306 pub fn initiation_time(mut self, input: ::aws_smithy_types::DateTime) -> Self {
308 self.initiation_time = ::std::option::Option::Some(input);
309 self
310 }
311 pub fn set_initiation_time(mut self, input: ::std::option::Option<::aws_smithy_types::DateTime>) -> Self {
313 self.initiation_time = input;
314 self
315 }
316 pub fn get_initiation_time(&self) -> &::std::option::Option<::aws_smithy_types::DateTime> {
318 &self.initiation_time
319 }
320 pub fn expiration_time(mut self, input: ::aws_smithy_types::DateTime) -> Self {
322 self.expiration_time = ::std::option::Option::Some(input);
323 self
324 }
325 pub fn set_expiration_time(mut self, input: ::std::option::Option<::aws_smithy_types::DateTime>) -> Self {
327 self.expiration_time = input;
328 self
329 }
330 pub fn get_expiration_time(&self) -> &::std::option::Option<::aws_smithy_types::DateTime> {
332 &self.expiration_time
333 }
334 pub fn completion_time(mut self, input: ::aws_smithy_types::DateTime) -> Self {
336 self.completion_time = ::std::option::Option::Some(input);
337 self
338 }
339 pub fn set_completion_time(mut self, input: ::std::option::Option<::aws_smithy_types::DateTime>) -> Self {
341 self.completion_time = input;
342 self
343 }
344 pub fn get_completion_time(&self) -> &::std::option::Option<::aws_smithy_types::DateTime> {
346 &self.completion_time
347 }
348 pub fn description(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
350 self.description = ::std::option::Option::Some(input.into());
351 self
352 }
353 pub fn set_description(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
355 self.description = input;
356 self
357 }
358 pub fn get_description(&self) -> &::std::option::Option<::std::string::String> {
360 &self.description
361 }
362 pub fn metadata(mut self, k: impl ::std::convert::Into<::std::string::String>, v: impl ::std::convert::Into<::std::string::String>) -> Self {
368 let mut hash_map = self.metadata.unwrap_or_default();
369 hash_map.insert(k.into(), v.into());
370 self.metadata = ::std::option::Option::Some(hash_map);
371 self
372 }
373 pub fn set_metadata(mut self, input: ::std::option::Option<::std::collections::HashMap<::std::string::String, ::std::string::String>>) -> Self {
375 self.metadata = input;
376 self
377 }
378 pub fn get_metadata(&self) -> &::std::option::Option<::std::collections::HashMap<::std::string::String, ::std::string::String>> {
380 &self.metadata
381 }
382 pub fn status(mut self, input: crate::types::SessionStatus) -> Self {
384 self.status = ::std::option::Option::Some(input);
385 self
386 }
387 pub fn set_status(mut self, input: ::std::option::Option<crate::types::SessionStatus>) -> Self {
389 self.status = input;
390 self
391 }
392 pub fn get_status(&self) -> &::std::option::Option<crate::types::SessionStatus> {
394 &self.status
395 }
396 pub fn status_code(mut self, input: crate::types::SessionStatusCode) -> Self {
398 self.status_code = ::std::option::Option::Some(input);
399 self
400 }
401 pub fn set_status_code(mut self, input: ::std::option::Option<crate::types::SessionStatusCode>) -> Self {
403 self.status_code = input;
404 self
405 }
406 pub fn get_status_code(&self) -> &::std::option::Option<crate::types::SessionStatusCode> {
408 &self.status_code
409 }
410 pub fn status_message(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
412 self.status_message = ::std::option::Option::Some(input.into());
413 self
414 }
415 pub fn set_status_message(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
417 self.status_message = input;
418 self
419 }
420 pub fn get_status_message(&self) -> &::std::option::Option<::std::string::String> {
422 &self.status_message
423 }
424 pub fn execution_status(mut self, input: crate::types::SessionExecutionStatus) -> Self {
426 self.execution_status = ::std::option::Option::Some(input);
427 self
428 }
429 pub fn set_execution_status(mut self, input: ::std::option::Option<crate::types::SessionExecutionStatus>) -> Self {
431 self.execution_status = input;
432 self
433 }
434 pub fn get_execution_status(&self) -> &::std::option::Option<crate::types::SessionExecutionStatus> {
436 &self.execution_status
437 }
438 pub fn action_name(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
440 self.action_name = ::std::option::Option::Some(input.into());
441 self
442 }
443 pub fn set_action_name(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
445 self.action_name = input;
446 self
447 }
448 pub fn get_action_name(&self) -> &::std::option::Option<::std::string::String> {
450 &self.action_name
451 }
452 pub fn requester_service_principal(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
454 self.requester_service_principal = ::std::option::Option::Some(input.into());
455 self
456 }
457 pub fn set_requester_service_principal(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
459 self.requester_service_principal = input;
460 self
461 }
462 pub fn get_requester_service_principal(&self) -> &::std::option::Option<::std::string::String> {
464 &self.requester_service_principal
465 }
466 pub fn requester_principal_arn(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
468 self.requester_principal_arn = ::std::option::Option::Some(input.into());
469 self
470 }
471 pub fn set_requester_principal_arn(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
473 self.requester_principal_arn = input;
474 self
475 }
476 pub fn get_requester_principal_arn(&self) -> &::std::option::Option<::std::string::String> {
478 &self.requester_principal_arn
479 }
480 pub fn requester_account_id(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
482 self.requester_account_id = ::std::option::Option::Some(input.into());
483 self
484 }
485 pub fn set_requester_account_id(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
487 self.requester_account_id = input;
488 self
489 }
490 pub fn get_requester_account_id(&self) -> &::std::option::Option<::std::string::String> {
492 &self.requester_account_id
493 }
494 pub fn requester_region(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
496 self.requester_region = ::std::option::Option::Some(input.into());
497 self
498 }
499 pub fn set_requester_region(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
501 self.requester_region = input;
502 self
503 }
504 pub fn get_requester_region(&self) -> &::std::option::Option<::std::string::String> {
506 &self.requester_region
507 }
508 pub fn requester_comment(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
510 self.requester_comment = ::std::option::Option::Some(input.into());
511 self
512 }
513 pub fn set_requester_comment(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
515 self.requester_comment = input;
516 self
517 }
518 pub fn get_requester_comment(&self) -> &::std::option::Option<::std::string::String> {
520 &self.requester_comment
521 }
522 pub fn action_completion_strategy(mut self, input: crate::types::ActionCompletionStrategy) -> Self {
524 self.action_completion_strategy = ::std::option::Option::Some(input);
525 self
526 }
527 pub fn set_action_completion_strategy(mut self, input: ::std::option::Option<crate::types::ActionCompletionStrategy>) -> Self {
529 self.action_completion_strategy = input;
530 self
531 }
532 pub fn get_action_completion_strategy(&self) -> &::std::option::Option<crate::types::ActionCompletionStrategy> {
534 &self.action_completion_strategy
535 }
536 pub fn approver_responses(mut self, input: crate::types::GetSessionResponseApproverResponse) -> Self {
542 let mut v = self.approver_responses.unwrap_or_default();
543 v.push(input);
544 self.approver_responses = ::std::option::Option::Some(v);
545 self
546 }
547 pub fn set_approver_responses(mut self, input: ::std::option::Option<::std::vec::Vec<crate::types::GetSessionResponseApproverResponse>>) -> Self {
549 self.approver_responses = input;
550 self
551 }
552 pub fn get_approver_responses(&self) -> &::std::option::Option<::std::vec::Vec<crate::types::GetSessionResponseApproverResponse>> {
554 &self.approver_responses
555 }
556 pub(crate) fn _request_id(mut self, request_id: impl Into<String>) -> Self {
557 self._request_id = Some(request_id.into());
558 self
559 }
560
561 pub(crate) fn _set_request_id(&mut self, request_id: Option<String>) -> &mut Self {
562 self._request_id = request_id;
563 self
564 }
565 pub fn build(self) -> crate::operation::get_session::GetSessionOutput {
567 crate::operation::get_session::GetSessionOutput {
568 session_arn: self.session_arn,
569 approval_team_arn: self.approval_team_arn,
570 approval_team_name: self.approval_team_name,
571 protected_resource_arn: self.protected_resource_arn,
572 approval_strategy: self.approval_strategy,
573 number_of_approvers: self.number_of_approvers,
574 initiation_time: self.initiation_time,
575 expiration_time: self.expiration_time,
576 completion_time: self.completion_time,
577 description: self.description,
578 metadata: self.metadata,
579 status: self.status,
580 status_code: self.status_code,
581 status_message: self.status_message,
582 execution_status: self.execution_status,
583 action_name: self.action_name,
584 requester_service_principal: self.requester_service_principal,
585 requester_principal_arn: self.requester_principal_arn,
586 requester_account_id: self.requester_account_id,
587 requester_region: self.requester_region,
588 requester_comment: self.requester_comment,
589 action_completion_strategy: self.action_completion_strategy,
590 approver_responses: self.approver_responses,
591 _request_id: self._request_id,
592 }
593 }
594}
595impl ::std::fmt::Debug for GetSessionOutputBuilder {
596 fn fmt(&self, f: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
597 let mut formatter = f.debug_struct("GetSessionOutputBuilder");
598 formatter.field("session_arn", &self.session_arn);
599 formatter.field("approval_team_arn", &self.approval_team_arn);
600 formatter.field("approval_team_name", &self.approval_team_name);
601 formatter.field("protected_resource_arn", &self.protected_resource_arn);
602 formatter.field("approval_strategy", &self.approval_strategy);
603 formatter.field("number_of_approvers", &self.number_of_approvers);
604 formatter.field("initiation_time", &self.initiation_time);
605 formatter.field("expiration_time", &self.expiration_time);
606 formatter.field("completion_time", &self.completion_time);
607 formatter.field("description", &"*** Sensitive Data Redacted ***");
608 formatter.field("metadata", &"*** Sensitive Data Redacted ***");
609 formatter.field("status", &self.status);
610 formatter.field("status_code", &self.status_code);
611 formatter.field("status_message", &self.status_message);
612 formatter.field("execution_status", &self.execution_status);
613 formatter.field("action_name", &self.action_name);
614 formatter.field("requester_service_principal", &self.requester_service_principal);
615 formatter.field("requester_principal_arn", &self.requester_principal_arn);
616 formatter.field("requester_account_id", &self.requester_account_id);
617 formatter.field("requester_region", &self.requester_region);
618 formatter.field("requester_comment", &"*** Sensitive Data Redacted ***");
619 formatter.field("action_completion_strategy", &self.action_completion_strategy);
620 formatter.field("approver_responses", &self.approver_responses);
621 formatter.field("_request_id", &self._request_id);
622 formatter.finish()
623 }
624}