aws_sdk_sfn/operation/describe_execution/_describe_execution_output.rs
1// Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
2#[allow(missing_docs)] // documentation missing in model
3#[non_exhaustive]
4#[derive(::std::clone::Clone, ::std::cmp::PartialEq)]
5pub struct DescribeExecutionOutput {
6 /// <p>The Amazon Resource Name (ARN) that identifies the execution.</p>
7 pub execution_arn: ::std::string::String,
8 /// <p>The Amazon Resource Name (ARN) of the executed stated machine.</p>
9 pub state_machine_arn: ::std::string::String,
10 /// <p>The name of the execution.</p>
11 /// <p>A name must <i>not</i> contain:</p>
12 /// <ul>
13 /// <li>
14 /// <p>white space</p></li>
15 /// <li>
16 /// <p>brackets <code>< > { } \[ \]</code></p></li>
17 /// <li>
18 /// <p>wildcard characters <code>? *</code></p></li>
19 /// <li>
20 /// <p>special characters <code>" # % \ ^ | ~ ` $ & , ; : /</code></p></li>
21 /// <li>
22 /// <p>control characters (<code>U+0000-001F</code>, <code>U+007F-009F</code>, <code>U+FFFE-FFFF</code>)</p></li>
23 /// <li>
24 /// <p>surrogates (<code>U+D800-DFFF</code>)</p></li>
25 /// <li>
26 /// <p>invalid characters (<code> U+10FFFF</code>)</p></li>
27 /// </ul>
28 /// <p>To enable logging with CloudWatch Logs, the name should only contain 0-9, A-Z, a-z, - and _.</p>
29 pub name: ::std::option::Option<::std::string::String>,
30 /// <p>The current status of the execution.</p>
31 pub status: crate::types::ExecutionStatus,
32 /// <p>The date the execution is started.</p>
33 pub start_date: ::aws_smithy_types::DateTime,
34 /// <p>If the execution ended, the date the execution stopped.</p>
35 pub stop_date: ::std::option::Option<::aws_smithy_types::DateTime>,
36 /// <p>The string that contains the JSON input data of the execution. Length constraints apply to the payload size, and are expressed as bytes in UTF-8 encoding.</p>
37 pub input: ::std::option::Option<::std::string::String>,
38 /// <p>Provides details about execution input or output.</p>
39 pub input_details: ::std::option::Option<crate::types::CloudWatchEventsExecutionDataDetails>,
40 /// <p>The JSON output data of the execution. Length constraints apply to the payload size, and are expressed as bytes in UTF-8 encoding.</p><note>
41 /// <p>This field is set only if the execution succeeds. If the execution fails, this field is null.</p>
42 /// </note>
43 pub output: ::std::option::Option<::std::string::String>,
44 /// <p>Provides details about execution input or output.</p>
45 pub output_details: ::std::option::Option<crate::types::CloudWatchEventsExecutionDataDetails>,
46 /// <p>The X-Ray trace header that was passed to the execution.</p><note>
47 /// <p>For X-Ray traces, all Amazon Web Services services use the <code>X-Amzn-Trace-Id</code> header from the HTTP request. Using the header is the preferred mechanism to identify a trace. <code>StartExecution</code> and <code>StartSyncExecution</code> API operations can also use <code>traceHeader</code> from the body of the request payload. If <b>both</b> sources are provided, Step Functions will use the <b>header value</b> (preferred) over the value in the request body.</p>
48 /// </note>
49 pub trace_header: ::std::option::Option<::std::string::String>,
50 /// <p>The Amazon Resource Name (ARN) that identifies a Map Run, which dispatched this execution.</p>
51 pub map_run_arn: ::std::option::Option<::std::string::String>,
52 /// <p>The error string if the state machine execution failed.</p>
53 pub error: ::std::option::Option<::std::string::String>,
54 /// <p>The cause string if the state machine execution failed.</p>
55 pub cause: ::std::option::Option<::std::string::String>,
56 /// <p>The Amazon Resource Name (ARN) of the state machine version associated with the execution. The version ARN is a combination of state machine ARN and the version number separated by a colon (:). For example, <code>stateMachineARN:1</code>.</p>
57 /// <p>If you start an execution from a <code>StartExecution</code> request without specifying a state machine version or alias ARN, Step Functions returns a null value.</p>
58 pub state_machine_version_arn: ::std::option::Option<::std::string::String>,
59 /// <p>The Amazon Resource Name (ARN) of the state machine alias associated with the execution. The alias ARN is a combination of state machine ARN and the alias name separated by a colon (:). For example, <code>stateMachineARN:PROD</code>.</p>
60 /// <p>If you start an execution from a <code>StartExecution</code> request with a state machine version ARN, this field will be null.</p>
61 pub state_machine_alias_arn: ::std::option::Option<::std::string::String>,
62 /// <p>The number of times you've redriven an execution. If you have not yet redriven an execution, the <code>redriveCount</code> is 0. This count is only updated if you successfully redrive an execution.</p>
63 pub redrive_count: ::std::option::Option<i32>,
64 /// <p>The date the execution was last redriven. If you have not yet redriven an execution, the <code>redriveDate</code> is null.</p>
65 /// <p>The <code>redriveDate</code> is unavailable if you redrive a Map Run that starts child workflow executions of type <code>EXPRESS</code>.</p>
66 pub redrive_date: ::std::option::Option<::aws_smithy_types::DateTime>,
67 /// <p>Indicates whether or not an execution can be redriven at a given point in time.</p>
68 /// <ul>
69 /// <li>
70 /// <p>For executions of type <code>STANDARD</code>, <code>redriveStatus</code> is <code>NOT_REDRIVABLE</code> if calling the <code>RedriveExecution</code> API action would return the <code>ExecutionNotRedrivable</code> error.</p></li>
71 /// <li>
72 /// <p>For a Distributed Map that includes child workflows of type <code>STANDARD</code>, <code>redriveStatus</code> indicates whether or not the Map Run can redrive child workflow executions.</p></li>
73 /// <li>
74 /// <p>For a Distributed Map that includes child workflows of type <code>EXPRESS</code>, <code>redriveStatus</code> indicates whether or not the Map Run can redrive child workflow executions.</p>
75 /// <p>You can redrive failed or timed out <code>EXPRESS</code> workflows <i>only if</i> they're a part of a Map Run. When you <a href="https://docs.aws.amazon.com/step-functions/latest/dg/redrive-map-run.html">redrive</a> the Map Run, these workflows are restarted using the <code>StartExecution</code> API action.</p></li>
76 /// </ul>
77 pub redrive_status: ::std::option::Option<crate::types::ExecutionRedriveStatus>,
78 /// <p>When <code>redriveStatus</code> is <code>NOT_REDRIVABLE</code>, <code>redriveStatusReason</code> specifies the reason why an execution cannot be redriven.</p>
79 /// <ul>
80 /// <li>
81 /// <p>For executions of type <code>STANDARD</code>, or for a Distributed Map that includes child workflows of type <code>STANDARD</code>, <code>redriveStatusReason</code> can include one of the following reasons:</p>
82 /// <ul>
83 /// <li>
84 /// <p><code>State machine is in DELETING status</code>.</p></li>
85 /// <li>
86 /// <p><code>Execution is RUNNING and cannot be redriven</code>.</p></li>
87 /// <li>
88 /// <p><code>Execution is SUCCEEDED and cannot be redriven</code>.</p></li>
89 /// <li>
90 /// <p><code>Execution was started before the launch of RedriveExecution</code>.</p></li>
91 /// <li>
92 /// <p><code>Execution history event limit exceeded</code>.</p></li>
93 /// <li>
94 /// <p><code>Execution has exceeded the max execution time</code>.</p></li>
95 /// <li>
96 /// <p><code>Execution redrivable period exceeded</code>.</p></li>
97 /// </ul></li>
98 /// <li>
99 /// <p>For a Distributed Map that includes child workflows of type <code>EXPRESS</code>, <code>redriveStatusReason</code> is only returned if the child workflows are not redrivable. This happens when the child workflow executions have completed successfully.</p></li>
100 /// </ul>
101 pub redrive_status_reason: ::std::option::Option<::std::string::String>,
102 _request_id: Option<String>,
103}
104impl DescribeExecutionOutput {
105 /// <p>The Amazon Resource Name (ARN) that identifies the execution.</p>
106 pub fn execution_arn(&self) -> &str {
107 use std::ops::Deref;
108 self.execution_arn.deref()
109 }
110 /// <p>The Amazon Resource Name (ARN) of the executed stated machine.</p>
111 pub fn state_machine_arn(&self) -> &str {
112 use std::ops::Deref;
113 self.state_machine_arn.deref()
114 }
115 /// <p>The name of the execution.</p>
116 /// <p>A name must <i>not</i> contain:</p>
117 /// <ul>
118 /// <li>
119 /// <p>white space</p></li>
120 /// <li>
121 /// <p>brackets <code>< > { } \[ \]</code></p></li>
122 /// <li>
123 /// <p>wildcard characters <code>? *</code></p></li>
124 /// <li>
125 /// <p>special characters <code>" # % \ ^ | ~ ` $ & , ; : /</code></p></li>
126 /// <li>
127 /// <p>control characters (<code>U+0000-001F</code>, <code>U+007F-009F</code>, <code>U+FFFE-FFFF</code>)</p></li>
128 /// <li>
129 /// <p>surrogates (<code>U+D800-DFFF</code>)</p></li>
130 /// <li>
131 /// <p>invalid characters (<code> U+10FFFF</code>)</p></li>
132 /// </ul>
133 /// <p>To enable logging with CloudWatch Logs, the name should only contain 0-9, A-Z, a-z, - and _.</p>
134 pub fn name(&self) -> ::std::option::Option<&str> {
135 self.name.as_deref()
136 }
137 /// <p>The current status of the execution.</p>
138 pub fn status(&self) -> &crate::types::ExecutionStatus {
139 &self.status
140 }
141 /// <p>The date the execution is started.</p>
142 pub fn start_date(&self) -> &::aws_smithy_types::DateTime {
143 &self.start_date
144 }
145 /// <p>If the execution ended, the date the execution stopped.</p>
146 pub fn stop_date(&self) -> ::std::option::Option<&::aws_smithy_types::DateTime> {
147 self.stop_date.as_ref()
148 }
149 /// <p>The string that contains the JSON input data of the execution. Length constraints apply to the payload size, and are expressed as bytes in UTF-8 encoding.</p>
150 pub fn input(&self) -> ::std::option::Option<&str> {
151 self.input.as_deref()
152 }
153 /// <p>Provides details about execution input or output.</p>
154 pub fn input_details(&self) -> ::std::option::Option<&crate::types::CloudWatchEventsExecutionDataDetails> {
155 self.input_details.as_ref()
156 }
157 /// <p>The JSON output data of the execution. Length constraints apply to the payload size, and are expressed as bytes in UTF-8 encoding.</p><note>
158 /// <p>This field is set only if the execution succeeds. If the execution fails, this field is null.</p>
159 /// </note>
160 pub fn output(&self) -> ::std::option::Option<&str> {
161 self.output.as_deref()
162 }
163 /// <p>Provides details about execution input or output.</p>
164 pub fn output_details(&self) -> ::std::option::Option<&crate::types::CloudWatchEventsExecutionDataDetails> {
165 self.output_details.as_ref()
166 }
167 /// <p>The X-Ray trace header that was passed to the execution.</p><note>
168 /// <p>For X-Ray traces, all Amazon Web Services services use the <code>X-Amzn-Trace-Id</code> header from the HTTP request. Using the header is the preferred mechanism to identify a trace. <code>StartExecution</code> and <code>StartSyncExecution</code> API operations can also use <code>traceHeader</code> from the body of the request payload. If <b>both</b> sources are provided, Step Functions will use the <b>header value</b> (preferred) over the value in the request body.</p>
169 /// </note>
170 pub fn trace_header(&self) -> ::std::option::Option<&str> {
171 self.trace_header.as_deref()
172 }
173 /// <p>The Amazon Resource Name (ARN) that identifies a Map Run, which dispatched this execution.</p>
174 pub fn map_run_arn(&self) -> ::std::option::Option<&str> {
175 self.map_run_arn.as_deref()
176 }
177 /// <p>The error string if the state machine execution failed.</p>
178 pub fn error(&self) -> ::std::option::Option<&str> {
179 self.error.as_deref()
180 }
181 /// <p>The cause string if the state machine execution failed.</p>
182 pub fn cause(&self) -> ::std::option::Option<&str> {
183 self.cause.as_deref()
184 }
185 /// <p>The Amazon Resource Name (ARN) of the state machine version associated with the execution. The version ARN is a combination of state machine ARN and the version number separated by a colon (:). For example, <code>stateMachineARN:1</code>.</p>
186 /// <p>If you start an execution from a <code>StartExecution</code> request without specifying a state machine version or alias ARN, Step Functions returns a null value.</p>
187 pub fn state_machine_version_arn(&self) -> ::std::option::Option<&str> {
188 self.state_machine_version_arn.as_deref()
189 }
190 /// <p>The Amazon Resource Name (ARN) of the state machine alias associated with the execution. The alias ARN is a combination of state machine ARN and the alias name separated by a colon (:). For example, <code>stateMachineARN:PROD</code>.</p>
191 /// <p>If you start an execution from a <code>StartExecution</code> request with a state machine version ARN, this field will be null.</p>
192 pub fn state_machine_alias_arn(&self) -> ::std::option::Option<&str> {
193 self.state_machine_alias_arn.as_deref()
194 }
195 /// <p>The number of times you've redriven an execution. If you have not yet redriven an execution, the <code>redriveCount</code> is 0. This count is only updated if you successfully redrive an execution.</p>
196 pub fn redrive_count(&self) -> ::std::option::Option<i32> {
197 self.redrive_count
198 }
199 /// <p>The date the execution was last redriven. If you have not yet redriven an execution, the <code>redriveDate</code> is null.</p>
200 /// <p>The <code>redriveDate</code> is unavailable if you redrive a Map Run that starts child workflow executions of type <code>EXPRESS</code>.</p>
201 pub fn redrive_date(&self) -> ::std::option::Option<&::aws_smithy_types::DateTime> {
202 self.redrive_date.as_ref()
203 }
204 /// <p>Indicates whether or not an execution can be redriven at a given point in time.</p>
205 /// <ul>
206 /// <li>
207 /// <p>For executions of type <code>STANDARD</code>, <code>redriveStatus</code> is <code>NOT_REDRIVABLE</code> if calling the <code>RedriveExecution</code> API action would return the <code>ExecutionNotRedrivable</code> error.</p></li>
208 /// <li>
209 /// <p>For a Distributed Map that includes child workflows of type <code>STANDARD</code>, <code>redriveStatus</code> indicates whether or not the Map Run can redrive child workflow executions.</p></li>
210 /// <li>
211 /// <p>For a Distributed Map that includes child workflows of type <code>EXPRESS</code>, <code>redriveStatus</code> indicates whether or not the Map Run can redrive child workflow executions.</p>
212 /// <p>You can redrive failed or timed out <code>EXPRESS</code> workflows <i>only if</i> they're a part of a Map Run. When you <a href="https://docs.aws.amazon.com/step-functions/latest/dg/redrive-map-run.html">redrive</a> the Map Run, these workflows are restarted using the <code>StartExecution</code> API action.</p></li>
213 /// </ul>
214 pub fn redrive_status(&self) -> ::std::option::Option<&crate::types::ExecutionRedriveStatus> {
215 self.redrive_status.as_ref()
216 }
217 /// <p>When <code>redriveStatus</code> is <code>NOT_REDRIVABLE</code>, <code>redriveStatusReason</code> specifies the reason why an execution cannot be redriven.</p>
218 /// <ul>
219 /// <li>
220 /// <p>For executions of type <code>STANDARD</code>, or for a Distributed Map that includes child workflows of type <code>STANDARD</code>, <code>redriveStatusReason</code> can include one of the following reasons:</p>
221 /// <ul>
222 /// <li>
223 /// <p><code>State machine is in DELETING status</code>.</p></li>
224 /// <li>
225 /// <p><code>Execution is RUNNING and cannot be redriven</code>.</p></li>
226 /// <li>
227 /// <p><code>Execution is SUCCEEDED and cannot be redriven</code>.</p></li>
228 /// <li>
229 /// <p><code>Execution was started before the launch of RedriveExecution</code>.</p></li>
230 /// <li>
231 /// <p><code>Execution history event limit exceeded</code>.</p></li>
232 /// <li>
233 /// <p><code>Execution has exceeded the max execution time</code>.</p></li>
234 /// <li>
235 /// <p><code>Execution redrivable period exceeded</code>.</p></li>
236 /// </ul></li>
237 /// <li>
238 /// <p>For a Distributed Map that includes child workflows of type <code>EXPRESS</code>, <code>redriveStatusReason</code> is only returned if the child workflows are not redrivable. This happens when the child workflow executions have completed successfully.</p></li>
239 /// </ul>
240 pub fn redrive_status_reason(&self) -> ::std::option::Option<&str> {
241 self.redrive_status_reason.as_deref()
242 }
243}
244impl ::std::fmt::Debug for DescribeExecutionOutput {
245 fn fmt(&self, f: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
246 let mut formatter = f.debug_struct("DescribeExecutionOutput");
247 formatter.field("execution_arn", &self.execution_arn);
248 formatter.field("state_machine_arn", &self.state_machine_arn);
249 formatter.field("name", &self.name);
250 formatter.field("status", &self.status);
251 formatter.field("start_date", &self.start_date);
252 formatter.field("stop_date", &self.stop_date);
253 formatter.field("input", &"*** Sensitive Data Redacted ***");
254 formatter.field("input_details", &self.input_details);
255 formatter.field("output", &"*** Sensitive Data Redacted ***");
256 formatter.field("output_details", &self.output_details);
257 formatter.field("trace_header", &self.trace_header);
258 formatter.field("map_run_arn", &self.map_run_arn);
259 formatter.field("error", &"*** Sensitive Data Redacted ***");
260 formatter.field("cause", &"*** Sensitive Data Redacted ***");
261 formatter.field("state_machine_version_arn", &self.state_machine_version_arn);
262 formatter.field("state_machine_alias_arn", &self.state_machine_alias_arn);
263 formatter.field("redrive_count", &self.redrive_count);
264 formatter.field("redrive_date", &self.redrive_date);
265 formatter.field("redrive_status", &self.redrive_status);
266 formatter.field("redrive_status_reason", &"*** Sensitive Data Redacted ***");
267 formatter.field("_request_id", &self._request_id);
268 formatter.finish()
269 }
270}
271impl ::aws_types::request_id::RequestId for DescribeExecutionOutput {
272 fn request_id(&self) -> Option<&str> {
273 self._request_id.as_deref()
274 }
275}
276impl DescribeExecutionOutput {
277 /// Creates a new builder-style object to manufacture [`DescribeExecutionOutput`](crate::operation::describe_execution::DescribeExecutionOutput).
278 pub fn builder() -> crate::operation::describe_execution::builders::DescribeExecutionOutputBuilder {
279 crate::operation::describe_execution::builders::DescribeExecutionOutputBuilder::default()
280 }
281}
282
283/// A builder for [`DescribeExecutionOutput`](crate::operation::describe_execution::DescribeExecutionOutput).
284#[derive(::std::clone::Clone, ::std::cmp::PartialEq, ::std::default::Default)]
285#[non_exhaustive]
286pub struct DescribeExecutionOutputBuilder {
287 pub(crate) execution_arn: ::std::option::Option<::std::string::String>,
288 pub(crate) state_machine_arn: ::std::option::Option<::std::string::String>,
289 pub(crate) name: ::std::option::Option<::std::string::String>,
290 pub(crate) status: ::std::option::Option<crate::types::ExecutionStatus>,
291 pub(crate) start_date: ::std::option::Option<::aws_smithy_types::DateTime>,
292 pub(crate) stop_date: ::std::option::Option<::aws_smithy_types::DateTime>,
293 pub(crate) input: ::std::option::Option<::std::string::String>,
294 pub(crate) input_details: ::std::option::Option<crate::types::CloudWatchEventsExecutionDataDetails>,
295 pub(crate) output: ::std::option::Option<::std::string::String>,
296 pub(crate) output_details: ::std::option::Option<crate::types::CloudWatchEventsExecutionDataDetails>,
297 pub(crate) trace_header: ::std::option::Option<::std::string::String>,
298 pub(crate) map_run_arn: ::std::option::Option<::std::string::String>,
299 pub(crate) error: ::std::option::Option<::std::string::String>,
300 pub(crate) cause: ::std::option::Option<::std::string::String>,
301 pub(crate) state_machine_version_arn: ::std::option::Option<::std::string::String>,
302 pub(crate) state_machine_alias_arn: ::std::option::Option<::std::string::String>,
303 pub(crate) redrive_count: ::std::option::Option<i32>,
304 pub(crate) redrive_date: ::std::option::Option<::aws_smithy_types::DateTime>,
305 pub(crate) redrive_status: ::std::option::Option<crate::types::ExecutionRedriveStatus>,
306 pub(crate) redrive_status_reason: ::std::option::Option<::std::string::String>,
307 _request_id: Option<String>,
308}
309impl DescribeExecutionOutputBuilder {
310 /// <p>The Amazon Resource Name (ARN) that identifies the execution.</p>
311 /// This field is required.
312 pub fn execution_arn(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
313 self.execution_arn = ::std::option::Option::Some(input.into());
314 self
315 }
316 /// <p>The Amazon Resource Name (ARN) that identifies the execution.</p>
317 pub fn set_execution_arn(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
318 self.execution_arn = input;
319 self
320 }
321 /// <p>The Amazon Resource Name (ARN) that identifies the execution.</p>
322 pub fn get_execution_arn(&self) -> &::std::option::Option<::std::string::String> {
323 &self.execution_arn
324 }
325 /// <p>The Amazon Resource Name (ARN) of the executed stated machine.</p>
326 /// This field is required.
327 pub fn state_machine_arn(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
328 self.state_machine_arn = ::std::option::Option::Some(input.into());
329 self
330 }
331 /// <p>The Amazon Resource Name (ARN) of the executed stated machine.</p>
332 pub fn set_state_machine_arn(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
333 self.state_machine_arn = input;
334 self
335 }
336 /// <p>The Amazon Resource Name (ARN) of the executed stated machine.</p>
337 pub fn get_state_machine_arn(&self) -> &::std::option::Option<::std::string::String> {
338 &self.state_machine_arn
339 }
340 /// <p>The name of the execution.</p>
341 /// <p>A name must <i>not</i> contain:</p>
342 /// <ul>
343 /// <li>
344 /// <p>white space</p></li>
345 /// <li>
346 /// <p>brackets <code>< > { } \[ \]</code></p></li>
347 /// <li>
348 /// <p>wildcard characters <code>? *</code></p></li>
349 /// <li>
350 /// <p>special characters <code>" # % \ ^ | ~ ` $ & , ; : /</code></p></li>
351 /// <li>
352 /// <p>control characters (<code>U+0000-001F</code>, <code>U+007F-009F</code>, <code>U+FFFE-FFFF</code>)</p></li>
353 /// <li>
354 /// <p>surrogates (<code>U+D800-DFFF</code>)</p></li>
355 /// <li>
356 /// <p>invalid characters (<code> U+10FFFF</code>)</p></li>
357 /// </ul>
358 /// <p>To enable logging with CloudWatch Logs, the name should only contain 0-9, A-Z, a-z, - and _.</p>
359 pub fn name(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
360 self.name = ::std::option::Option::Some(input.into());
361 self
362 }
363 /// <p>The name of the execution.</p>
364 /// <p>A name must <i>not</i> contain:</p>
365 /// <ul>
366 /// <li>
367 /// <p>white space</p></li>
368 /// <li>
369 /// <p>brackets <code>< > { } \[ \]</code></p></li>
370 /// <li>
371 /// <p>wildcard characters <code>? *</code></p></li>
372 /// <li>
373 /// <p>special characters <code>" # % \ ^ | ~ ` $ & , ; : /</code></p></li>
374 /// <li>
375 /// <p>control characters (<code>U+0000-001F</code>, <code>U+007F-009F</code>, <code>U+FFFE-FFFF</code>)</p></li>
376 /// <li>
377 /// <p>surrogates (<code>U+D800-DFFF</code>)</p></li>
378 /// <li>
379 /// <p>invalid characters (<code> U+10FFFF</code>)</p></li>
380 /// </ul>
381 /// <p>To enable logging with CloudWatch Logs, the name should only contain 0-9, A-Z, a-z, - and _.</p>
382 pub fn set_name(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
383 self.name = input;
384 self
385 }
386 /// <p>The name of the execution.</p>
387 /// <p>A name must <i>not</i> contain:</p>
388 /// <ul>
389 /// <li>
390 /// <p>white space</p></li>
391 /// <li>
392 /// <p>brackets <code>< > { } \[ \]</code></p></li>
393 /// <li>
394 /// <p>wildcard characters <code>? *</code></p></li>
395 /// <li>
396 /// <p>special characters <code>" # % \ ^ | ~ ` $ & , ; : /</code></p></li>
397 /// <li>
398 /// <p>control characters (<code>U+0000-001F</code>, <code>U+007F-009F</code>, <code>U+FFFE-FFFF</code>)</p></li>
399 /// <li>
400 /// <p>surrogates (<code>U+D800-DFFF</code>)</p></li>
401 /// <li>
402 /// <p>invalid characters (<code> U+10FFFF</code>)</p></li>
403 /// </ul>
404 /// <p>To enable logging with CloudWatch Logs, the name should only contain 0-9, A-Z, a-z, - and _.</p>
405 pub fn get_name(&self) -> &::std::option::Option<::std::string::String> {
406 &self.name
407 }
408 /// <p>The current status of the execution.</p>
409 /// This field is required.
410 pub fn status(mut self, input: crate::types::ExecutionStatus) -> Self {
411 self.status = ::std::option::Option::Some(input);
412 self
413 }
414 /// <p>The current status of the execution.</p>
415 pub fn set_status(mut self, input: ::std::option::Option<crate::types::ExecutionStatus>) -> Self {
416 self.status = input;
417 self
418 }
419 /// <p>The current status of the execution.</p>
420 pub fn get_status(&self) -> &::std::option::Option<crate::types::ExecutionStatus> {
421 &self.status
422 }
423 /// <p>The date the execution is started.</p>
424 /// This field is required.
425 pub fn start_date(mut self, input: ::aws_smithy_types::DateTime) -> Self {
426 self.start_date = ::std::option::Option::Some(input);
427 self
428 }
429 /// <p>The date the execution is started.</p>
430 pub fn set_start_date(mut self, input: ::std::option::Option<::aws_smithy_types::DateTime>) -> Self {
431 self.start_date = input;
432 self
433 }
434 /// <p>The date the execution is started.</p>
435 pub fn get_start_date(&self) -> &::std::option::Option<::aws_smithy_types::DateTime> {
436 &self.start_date
437 }
438 /// <p>If the execution ended, the date the execution stopped.</p>
439 pub fn stop_date(mut self, input: ::aws_smithy_types::DateTime) -> Self {
440 self.stop_date = ::std::option::Option::Some(input);
441 self
442 }
443 /// <p>If the execution ended, the date the execution stopped.</p>
444 pub fn set_stop_date(mut self, input: ::std::option::Option<::aws_smithy_types::DateTime>) -> Self {
445 self.stop_date = input;
446 self
447 }
448 /// <p>If the execution ended, the date the execution stopped.</p>
449 pub fn get_stop_date(&self) -> &::std::option::Option<::aws_smithy_types::DateTime> {
450 &self.stop_date
451 }
452 /// <p>The string that contains the JSON input data of the execution. Length constraints apply to the payload size, and are expressed as bytes in UTF-8 encoding.</p>
453 pub fn input(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
454 self.input = ::std::option::Option::Some(input.into());
455 self
456 }
457 /// <p>The string that contains the JSON input data of the execution. Length constraints apply to the payload size, and are expressed as bytes in UTF-8 encoding.</p>
458 pub fn set_input(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
459 self.input = input;
460 self
461 }
462 /// <p>The string that contains the JSON input data of the execution. Length constraints apply to the payload size, and are expressed as bytes in UTF-8 encoding.</p>
463 pub fn get_input(&self) -> &::std::option::Option<::std::string::String> {
464 &self.input
465 }
466 /// <p>Provides details about execution input or output.</p>
467 pub fn input_details(mut self, input: crate::types::CloudWatchEventsExecutionDataDetails) -> Self {
468 self.input_details = ::std::option::Option::Some(input);
469 self
470 }
471 /// <p>Provides details about execution input or output.</p>
472 pub fn set_input_details(mut self, input: ::std::option::Option<crate::types::CloudWatchEventsExecutionDataDetails>) -> Self {
473 self.input_details = input;
474 self
475 }
476 /// <p>Provides details about execution input or output.</p>
477 pub fn get_input_details(&self) -> &::std::option::Option<crate::types::CloudWatchEventsExecutionDataDetails> {
478 &self.input_details
479 }
480 /// <p>The JSON output data of the execution. Length constraints apply to the payload size, and are expressed as bytes in UTF-8 encoding.</p><note>
481 /// <p>This field is set only if the execution succeeds. If the execution fails, this field is null.</p>
482 /// </note>
483 pub fn output(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
484 self.output = ::std::option::Option::Some(input.into());
485 self
486 }
487 /// <p>The JSON output data of the execution. Length constraints apply to the payload size, and are expressed as bytes in UTF-8 encoding.</p><note>
488 /// <p>This field is set only if the execution succeeds. If the execution fails, this field is null.</p>
489 /// </note>
490 pub fn set_output(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
491 self.output = input;
492 self
493 }
494 /// <p>The JSON output data of the execution. Length constraints apply to the payload size, and are expressed as bytes in UTF-8 encoding.</p><note>
495 /// <p>This field is set only if the execution succeeds. If the execution fails, this field is null.</p>
496 /// </note>
497 pub fn get_output(&self) -> &::std::option::Option<::std::string::String> {
498 &self.output
499 }
500 /// <p>Provides details about execution input or output.</p>
501 pub fn output_details(mut self, input: crate::types::CloudWatchEventsExecutionDataDetails) -> Self {
502 self.output_details = ::std::option::Option::Some(input);
503 self
504 }
505 /// <p>Provides details about execution input or output.</p>
506 pub fn set_output_details(mut self, input: ::std::option::Option<crate::types::CloudWatchEventsExecutionDataDetails>) -> Self {
507 self.output_details = input;
508 self
509 }
510 /// <p>Provides details about execution input or output.</p>
511 pub fn get_output_details(&self) -> &::std::option::Option<crate::types::CloudWatchEventsExecutionDataDetails> {
512 &self.output_details
513 }
514 /// <p>The X-Ray trace header that was passed to the execution.</p><note>
515 /// <p>For X-Ray traces, all Amazon Web Services services use the <code>X-Amzn-Trace-Id</code> header from the HTTP request. Using the header is the preferred mechanism to identify a trace. <code>StartExecution</code> and <code>StartSyncExecution</code> API operations can also use <code>traceHeader</code> from the body of the request payload. If <b>both</b> sources are provided, Step Functions will use the <b>header value</b> (preferred) over the value in the request body.</p>
516 /// </note>
517 pub fn trace_header(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
518 self.trace_header = ::std::option::Option::Some(input.into());
519 self
520 }
521 /// <p>The X-Ray trace header that was passed to the execution.</p><note>
522 /// <p>For X-Ray traces, all Amazon Web Services services use the <code>X-Amzn-Trace-Id</code> header from the HTTP request. Using the header is the preferred mechanism to identify a trace. <code>StartExecution</code> and <code>StartSyncExecution</code> API operations can also use <code>traceHeader</code> from the body of the request payload. If <b>both</b> sources are provided, Step Functions will use the <b>header value</b> (preferred) over the value in the request body.</p>
523 /// </note>
524 pub fn set_trace_header(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
525 self.trace_header = input;
526 self
527 }
528 /// <p>The X-Ray trace header that was passed to the execution.</p><note>
529 /// <p>For X-Ray traces, all Amazon Web Services services use the <code>X-Amzn-Trace-Id</code> header from the HTTP request. Using the header is the preferred mechanism to identify a trace. <code>StartExecution</code> and <code>StartSyncExecution</code> API operations can also use <code>traceHeader</code> from the body of the request payload. If <b>both</b> sources are provided, Step Functions will use the <b>header value</b> (preferred) over the value in the request body.</p>
530 /// </note>
531 pub fn get_trace_header(&self) -> &::std::option::Option<::std::string::String> {
532 &self.trace_header
533 }
534 /// <p>The Amazon Resource Name (ARN) that identifies a Map Run, which dispatched this execution.</p>
535 pub fn map_run_arn(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
536 self.map_run_arn = ::std::option::Option::Some(input.into());
537 self
538 }
539 /// <p>The Amazon Resource Name (ARN) that identifies a Map Run, which dispatched this execution.</p>
540 pub fn set_map_run_arn(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
541 self.map_run_arn = input;
542 self
543 }
544 /// <p>The Amazon Resource Name (ARN) that identifies a Map Run, which dispatched this execution.</p>
545 pub fn get_map_run_arn(&self) -> &::std::option::Option<::std::string::String> {
546 &self.map_run_arn
547 }
548 /// <p>The error string if the state machine execution failed.</p>
549 pub fn error(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
550 self.error = ::std::option::Option::Some(input.into());
551 self
552 }
553 /// <p>The error string if the state machine execution failed.</p>
554 pub fn set_error(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
555 self.error = input;
556 self
557 }
558 /// <p>The error string if the state machine execution failed.</p>
559 pub fn get_error(&self) -> &::std::option::Option<::std::string::String> {
560 &self.error
561 }
562 /// <p>The cause string if the state machine execution failed.</p>
563 pub fn cause(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
564 self.cause = ::std::option::Option::Some(input.into());
565 self
566 }
567 /// <p>The cause string if the state machine execution failed.</p>
568 pub fn set_cause(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
569 self.cause = input;
570 self
571 }
572 /// <p>The cause string if the state machine execution failed.</p>
573 pub fn get_cause(&self) -> &::std::option::Option<::std::string::String> {
574 &self.cause
575 }
576 /// <p>The Amazon Resource Name (ARN) of the state machine version associated with the execution. The version ARN is a combination of state machine ARN and the version number separated by a colon (:). For example, <code>stateMachineARN:1</code>.</p>
577 /// <p>If you start an execution from a <code>StartExecution</code> request without specifying a state machine version or alias ARN, Step Functions returns a null value.</p>
578 pub fn state_machine_version_arn(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
579 self.state_machine_version_arn = ::std::option::Option::Some(input.into());
580 self
581 }
582 /// <p>The Amazon Resource Name (ARN) of the state machine version associated with the execution. The version ARN is a combination of state machine ARN and the version number separated by a colon (:). For example, <code>stateMachineARN:1</code>.</p>
583 /// <p>If you start an execution from a <code>StartExecution</code> request without specifying a state machine version or alias ARN, Step Functions returns a null value.</p>
584 pub fn set_state_machine_version_arn(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
585 self.state_machine_version_arn = input;
586 self
587 }
588 /// <p>The Amazon Resource Name (ARN) of the state machine version associated with the execution. The version ARN is a combination of state machine ARN and the version number separated by a colon (:). For example, <code>stateMachineARN:1</code>.</p>
589 /// <p>If you start an execution from a <code>StartExecution</code> request without specifying a state machine version or alias ARN, Step Functions returns a null value.</p>
590 pub fn get_state_machine_version_arn(&self) -> &::std::option::Option<::std::string::String> {
591 &self.state_machine_version_arn
592 }
593 /// <p>The Amazon Resource Name (ARN) of the state machine alias associated with the execution. The alias ARN is a combination of state machine ARN and the alias name separated by a colon (:). For example, <code>stateMachineARN:PROD</code>.</p>
594 /// <p>If you start an execution from a <code>StartExecution</code> request with a state machine version ARN, this field will be null.</p>
595 pub fn state_machine_alias_arn(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
596 self.state_machine_alias_arn = ::std::option::Option::Some(input.into());
597 self
598 }
599 /// <p>The Amazon Resource Name (ARN) of the state machine alias associated with the execution. The alias ARN is a combination of state machine ARN and the alias name separated by a colon (:). For example, <code>stateMachineARN:PROD</code>.</p>
600 /// <p>If you start an execution from a <code>StartExecution</code> request with a state machine version ARN, this field will be null.</p>
601 pub fn set_state_machine_alias_arn(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
602 self.state_machine_alias_arn = input;
603 self
604 }
605 /// <p>The Amazon Resource Name (ARN) of the state machine alias associated with the execution. The alias ARN is a combination of state machine ARN and the alias name separated by a colon (:). For example, <code>stateMachineARN:PROD</code>.</p>
606 /// <p>If you start an execution from a <code>StartExecution</code> request with a state machine version ARN, this field will be null.</p>
607 pub fn get_state_machine_alias_arn(&self) -> &::std::option::Option<::std::string::String> {
608 &self.state_machine_alias_arn
609 }
610 /// <p>The number of times you've redriven an execution. If you have not yet redriven an execution, the <code>redriveCount</code> is 0. This count is only updated if you successfully redrive an execution.</p>
611 pub fn redrive_count(mut self, input: i32) -> Self {
612 self.redrive_count = ::std::option::Option::Some(input);
613 self
614 }
615 /// <p>The number of times you've redriven an execution. If you have not yet redriven an execution, the <code>redriveCount</code> is 0. This count is only updated if you successfully redrive an execution.</p>
616 pub fn set_redrive_count(mut self, input: ::std::option::Option<i32>) -> Self {
617 self.redrive_count = input;
618 self
619 }
620 /// <p>The number of times you've redriven an execution. If you have not yet redriven an execution, the <code>redriveCount</code> is 0. This count is only updated if you successfully redrive an execution.</p>
621 pub fn get_redrive_count(&self) -> &::std::option::Option<i32> {
622 &self.redrive_count
623 }
624 /// <p>The date the execution was last redriven. If you have not yet redriven an execution, the <code>redriveDate</code> is null.</p>
625 /// <p>The <code>redriveDate</code> is unavailable if you redrive a Map Run that starts child workflow executions of type <code>EXPRESS</code>.</p>
626 pub fn redrive_date(mut self, input: ::aws_smithy_types::DateTime) -> Self {
627 self.redrive_date = ::std::option::Option::Some(input);
628 self
629 }
630 /// <p>The date the execution was last redriven. If you have not yet redriven an execution, the <code>redriveDate</code> is null.</p>
631 /// <p>The <code>redriveDate</code> is unavailable if you redrive a Map Run that starts child workflow executions of type <code>EXPRESS</code>.</p>
632 pub fn set_redrive_date(mut self, input: ::std::option::Option<::aws_smithy_types::DateTime>) -> Self {
633 self.redrive_date = input;
634 self
635 }
636 /// <p>The date the execution was last redriven. If you have not yet redriven an execution, the <code>redriveDate</code> is null.</p>
637 /// <p>The <code>redriveDate</code> is unavailable if you redrive a Map Run that starts child workflow executions of type <code>EXPRESS</code>.</p>
638 pub fn get_redrive_date(&self) -> &::std::option::Option<::aws_smithy_types::DateTime> {
639 &self.redrive_date
640 }
641 /// <p>Indicates whether or not an execution can be redriven at a given point in time.</p>
642 /// <ul>
643 /// <li>
644 /// <p>For executions of type <code>STANDARD</code>, <code>redriveStatus</code> is <code>NOT_REDRIVABLE</code> if calling the <code>RedriveExecution</code> API action would return the <code>ExecutionNotRedrivable</code> error.</p></li>
645 /// <li>
646 /// <p>For a Distributed Map that includes child workflows of type <code>STANDARD</code>, <code>redriveStatus</code> indicates whether or not the Map Run can redrive child workflow executions.</p></li>
647 /// <li>
648 /// <p>For a Distributed Map that includes child workflows of type <code>EXPRESS</code>, <code>redriveStatus</code> indicates whether or not the Map Run can redrive child workflow executions.</p>
649 /// <p>You can redrive failed or timed out <code>EXPRESS</code> workflows <i>only if</i> they're a part of a Map Run. When you <a href="https://docs.aws.amazon.com/step-functions/latest/dg/redrive-map-run.html">redrive</a> the Map Run, these workflows are restarted using the <code>StartExecution</code> API action.</p></li>
650 /// </ul>
651 pub fn redrive_status(mut self, input: crate::types::ExecutionRedriveStatus) -> Self {
652 self.redrive_status = ::std::option::Option::Some(input);
653 self
654 }
655 /// <p>Indicates whether or not an execution can be redriven at a given point in time.</p>
656 /// <ul>
657 /// <li>
658 /// <p>For executions of type <code>STANDARD</code>, <code>redriveStatus</code> is <code>NOT_REDRIVABLE</code> if calling the <code>RedriveExecution</code> API action would return the <code>ExecutionNotRedrivable</code> error.</p></li>
659 /// <li>
660 /// <p>For a Distributed Map that includes child workflows of type <code>STANDARD</code>, <code>redriveStatus</code> indicates whether or not the Map Run can redrive child workflow executions.</p></li>
661 /// <li>
662 /// <p>For a Distributed Map that includes child workflows of type <code>EXPRESS</code>, <code>redriveStatus</code> indicates whether or not the Map Run can redrive child workflow executions.</p>
663 /// <p>You can redrive failed or timed out <code>EXPRESS</code> workflows <i>only if</i> they're a part of a Map Run. When you <a href="https://docs.aws.amazon.com/step-functions/latest/dg/redrive-map-run.html">redrive</a> the Map Run, these workflows are restarted using the <code>StartExecution</code> API action.</p></li>
664 /// </ul>
665 pub fn set_redrive_status(mut self, input: ::std::option::Option<crate::types::ExecutionRedriveStatus>) -> Self {
666 self.redrive_status = input;
667 self
668 }
669 /// <p>Indicates whether or not an execution can be redriven at a given point in time.</p>
670 /// <ul>
671 /// <li>
672 /// <p>For executions of type <code>STANDARD</code>, <code>redriveStatus</code> is <code>NOT_REDRIVABLE</code> if calling the <code>RedriveExecution</code> API action would return the <code>ExecutionNotRedrivable</code> error.</p></li>
673 /// <li>
674 /// <p>For a Distributed Map that includes child workflows of type <code>STANDARD</code>, <code>redriveStatus</code> indicates whether or not the Map Run can redrive child workflow executions.</p></li>
675 /// <li>
676 /// <p>For a Distributed Map that includes child workflows of type <code>EXPRESS</code>, <code>redriveStatus</code> indicates whether or not the Map Run can redrive child workflow executions.</p>
677 /// <p>You can redrive failed or timed out <code>EXPRESS</code> workflows <i>only if</i> they're a part of a Map Run. When you <a href="https://docs.aws.amazon.com/step-functions/latest/dg/redrive-map-run.html">redrive</a> the Map Run, these workflows are restarted using the <code>StartExecution</code> API action.</p></li>
678 /// </ul>
679 pub fn get_redrive_status(&self) -> &::std::option::Option<crate::types::ExecutionRedriveStatus> {
680 &self.redrive_status
681 }
682 /// <p>When <code>redriveStatus</code> is <code>NOT_REDRIVABLE</code>, <code>redriveStatusReason</code> specifies the reason why an execution cannot be redriven.</p>
683 /// <ul>
684 /// <li>
685 /// <p>For executions of type <code>STANDARD</code>, or for a Distributed Map that includes child workflows of type <code>STANDARD</code>, <code>redriveStatusReason</code> can include one of the following reasons:</p>
686 /// <ul>
687 /// <li>
688 /// <p><code>State machine is in DELETING status</code>.</p></li>
689 /// <li>
690 /// <p><code>Execution is RUNNING and cannot be redriven</code>.</p></li>
691 /// <li>
692 /// <p><code>Execution is SUCCEEDED and cannot be redriven</code>.</p></li>
693 /// <li>
694 /// <p><code>Execution was started before the launch of RedriveExecution</code>.</p></li>
695 /// <li>
696 /// <p><code>Execution history event limit exceeded</code>.</p></li>
697 /// <li>
698 /// <p><code>Execution has exceeded the max execution time</code>.</p></li>
699 /// <li>
700 /// <p><code>Execution redrivable period exceeded</code>.</p></li>
701 /// </ul></li>
702 /// <li>
703 /// <p>For a Distributed Map that includes child workflows of type <code>EXPRESS</code>, <code>redriveStatusReason</code> is only returned if the child workflows are not redrivable. This happens when the child workflow executions have completed successfully.</p></li>
704 /// </ul>
705 pub fn redrive_status_reason(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
706 self.redrive_status_reason = ::std::option::Option::Some(input.into());
707 self
708 }
709 /// <p>When <code>redriveStatus</code> is <code>NOT_REDRIVABLE</code>, <code>redriveStatusReason</code> specifies the reason why an execution cannot be redriven.</p>
710 /// <ul>
711 /// <li>
712 /// <p>For executions of type <code>STANDARD</code>, or for a Distributed Map that includes child workflows of type <code>STANDARD</code>, <code>redriveStatusReason</code> can include one of the following reasons:</p>
713 /// <ul>
714 /// <li>
715 /// <p><code>State machine is in DELETING status</code>.</p></li>
716 /// <li>
717 /// <p><code>Execution is RUNNING and cannot be redriven</code>.</p></li>
718 /// <li>
719 /// <p><code>Execution is SUCCEEDED and cannot be redriven</code>.</p></li>
720 /// <li>
721 /// <p><code>Execution was started before the launch of RedriveExecution</code>.</p></li>
722 /// <li>
723 /// <p><code>Execution history event limit exceeded</code>.</p></li>
724 /// <li>
725 /// <p><code>Execution has exceeded the max execution time</code>.</p></li>
726 /// <li>
727 /// <p><code>Execution redrivable period exceeded</code>.</p></li>
728 /// </ul></li>
729 /// <li>
730 /// <p>For a Distributed Map that includes child workflows of type <code>EXPRESS</code>, <code>redriveStatusReason</code> is only returned if the child workflows are not redrivable. This happens when the child workflow executions have completed successfully.</p></li>
731 /// </ul>
732 pub fn set_redrive_status_reason(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
733 self.redrive_status_reason = input;
734 self
735 }
736 /// <p>When <code>redriveStatus</code> is <code>NOT_REDRIVABLE</code>, <code>redriveStatusReason</code> specifies the reason why an execution cannot be redriven.</p>
737 /// <ul>
738 /// <li>
739 /// <p>For executions of type <code>STANDARD</code>, or for a Distributed Map that includes child workflows of type <code>STANDARD</code>, <code>redriveStatusReason</code> can include one of the following reasons:</p>
740 /// <ul>
741 /// <li>
742 /// <p><code>State machine is in DELETING status</code>.</p></li>
743 /// <li>
744 /// <p><code>Execution is RUNNING and cannot be redriven</code>.</p></li>
745 /// <li>
746 /// <p><code>Execution is SUCCEEDED and cannot be redriven</code>.</p></li>
747 /// <li>
748 /// <p><code>Execution was started before the launch of RedriveExecution</code>.</p></li>
749 /// <li>
750 /// <p><code>Execution history event limit exceeded</code>.</p></li>
751 /// <li>
752 /// <p><code>Execution has exceeded the max execution time</code>.</p></li>
753 /// <li>
754 /// <p><code>Execution redrivable period exceeded</code>.</p></li>
755 /// </ul></li>
756 /// <li>
757 /// <p>For a Distributed Map that includes child workflows of type <code>EXPRESS</code>, <code>redriveStatusReason</code> is only returned if the child workflows are not redrivable. This happens when the child workflow executions have completed successfully.</p></li>
758 /// </ul>
759 pub fn get_redrive_status_reason(&self) -> &::std::option::Option<::std::string::String> {
760 &self.redrive_status_reason
761 }
762 pub(crate) fn _request_id(mut self, request_id: impl Into<String>) -> Self {
763 self._request_id = Some(request_id.into());
764 self
765 }
766
767 pub(crate) fn _set_request_id(&mut self, request_id: Option<String>) -> &mut Self {
768 self._request_id = request_id;
769 self
770 }
771 /// Consumes the builder and constructs a [`DescribeExecutionOutput`](crate::operation::describe_execution::DescribeExecutionOutput).
772 /// This method will fail if any of the following fields are not set:
773 /// - [`execution_arn`](crate::operation::describe_execution::builders::DescribeExecutionOutputBuilder::execution_arn)
774 /// - [`state_machine_arn`](crate::operation::describe_execution::builders::DescribeExecutionOutputBuilder::state_machine_arn)
775 /// - [`status`](crate::operation::describe_execution::builders::DescribeExecutionOutputBuilder::status)
776 /// - [`start_date`](crate::operation::describe_execution::builders::DescribeExecutionOutputBuilder::start_date)
777 pub fn build(
778 self,
779 ) -> ::std::result::Result<crate::operation::describe_execution::DescribeExecutionOutput, ::aws_smithy_types::error::operation::BuildError> {
780 ::std::result::Result::Ok(crate::operation::describe_execution::DescribeExecutionOutput {
781 execution_arn: self.execution_arn.ok_or_else(|| {
782 ::aws_smithy_types::error::operation::BuildError::missing_field(
783 "execution_arn",
784 "execution_arn was not specified but it is required when building DescribeExecutionOutput",
785 )
786 })?,
787 state_machine_arn: self.state_machine_arn.ok_or_else(|| {
788 ::aws_smithy_types::error::operation::BuildError::missing_field(
789 "state_machine_arn",
790 "state_machine_arn was not specified but it is required when building DescribeExecutionOutput",
791 )
792 })?,
793 name: self.name,
794 status: self.status.ok_or_else(|| {
795 ::aws_smithy_types::error::operation::BuildError::missing_field(
796 "status",
797 "status was not specified but it is required when building DescribeExecutionOutput",
798 )
799 })?,
800 start_date: self.start_date.ok_or_else(|| {
801 ::aws_smithy_types::error::operation::BuildError::missing_field(
802 "start_date",
803 "start_date was not specified but it is required when building DescribeExecutionOutput",
804 )
805 })?,
806 stop_date: self.stop_date,
807 input: self.input,
808 input_details: self.input_details,
809 output: self.output,
810 output_details: self.output_details,
811 trace_header: self.trace_header,
812 map_run_arn: self.map_run_arn,
813 error: self.error,
814 cause: self.cause,
815 state_machine_version_arn: self.state_machine_version_arn,
816 state_machine_alias_arn: self.state_machine_alias_arn,
817 redrive_count: self.redrive_count,
818 redrive_date: self.redrive_date,
819 redrive_status: self.redrive_status,
820 redrive_status_reason: self.redrive_status_reason,
821 _request_id: self._request_id,
822 })
823 }
824}
825impl ::std::fmt::Debug for DescribeExecutionOutputBuilder {
826 fn fmt(&self, f: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
827 let mut formatter = f.debug_struct("DescribeExecutionOutputBuilder");
828 formatter.field("execution_arn", &self.execution_arn);
829 formatter.field("state_machine_arn", &self.state_machine_arn);
830 formatter.field("name", &self.name);
831 formatter.field("status", &self.status);
832 formatter.field("start_date", &self.start_date);
833 formatter.field("stop_date", &self.stop_date);
834 formatter.field("input", &"*** Sensitive Data Redacted ***");
835 formatter.field("input_details", &self.input_details);
836 formatter.field("output", &"*** Sensitive Data Redacted ***");
837 formatter.field("output_details", &self.output_details);
838 formatter.field("trace_header", &self.trace_header);
839 formatter.field("map_run_arn", &self.map_run_arn);
840 formatter.field("error", &"*** Sensitive Data Redacted ***");
841 formatter.field("cause", &"*** Sensitive Data Redacted ***");
842 formatter.field("state_machine_version_arn", &self.state_machine_version_arn);
843 formatter.field("state_machine_alias_arn", &self.state_machine_alias_arn);
844 formatter.field("redrive_count", &self.redrive_count);
845 formatter.field("redrive_date", &self.redrive_date);
846 formatter.field("redrive_status", &self.redrive_status);
847 formatter.field("redrive_status_reason", &"*** Sensitive Data Redacted ***");
848 formatter.field("_request_id", &self._request_id);
849 formatter.finish()
850 }
851}