aws_sdk_bedrockagent/operation/get_flow/
_get_flow_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 GetFlowOutput {
6    /// <p>The name of the flow.</p>
7    pub name: ::std::string::String,
8    /// <p>The description of the flow.</p>
9    pub description: ::std::option::Option<::std::string::String>,
10    /// <p>The Amazon Resource Name (ARN) of the service role with permissions to create a flow. For more information, see <a href="https://docs.aws.amazon.com/bedrock/latest/userguide/flows-permissions.html">Create a service row for flows</a> in the Amazon Bedrock User Guide.</p>
11    pub execution_role_arn: ::std::string::String,
12    /// <p>The Amazon Resource Name (ARN) of the KMS key that the flow is encrypted with.</p>
13    pub customer_encryption_key_arn: ::std::option::Option<::std::string::String>,
14    /// <p>The unique identifier of the flow.</p>
15    pub id: ::std::string::String,
16    /// <p>The Amazon Resource Name (ARN) of the flow.</p>
17    pub arn: ::std::string::String,
18    /// <p>The status of the flow. The following statuses are possible:</p>
19    /// <ul>
20    /// <li>
21    /// <p>NotPrepared – The flow has been created or updated, but hasn't been prepared. If you just created the flow, you can't test it. If you updated the flow, the <code>DRAFT</code> version won't contain the latest changes for testing. Send a <a href="https://docs.aws.amazon.com/bedrock/latest/APIReference/API_agent_PrepareFlow.html">PrepareFlow</a> request to package the latest changes into the <code>DRAFT</code> version.</p></li>
22    /// <li>
23    /// <p>Preparing – The flow is being prepared so that the <code>DRAFT</code> version contains the latest changes for testing.</p></li>
24    /// <li>
25    /// <p>Prepared – The flow is prepared and the <code>DRAFT</code> version contains the latest changes for testing.</p></li>
26    /// <li>
27    /// <p>Failed – The last API operation that you invoked on the flow failed. Send a <a href="https://docs.aws.amazon.com/bedrock/latest/APIReference/API_agent_GetFlow.html">GetFlow</a> request and check the error message in the <code>validations</code> field.</p></li>
28    /// </ul>
29    pub status: crate::types::FlowStatus,
30    /// <p>The time at which the flow was created.</p>
31    pub created_at: ::aws_smithy_types::DateTime,
32    /// <p>The time at which the flow was last updated.</p>
33    pub updated_at: ::aws_smithy_types::DateTime,
34    /// <p>The version of the flow for which information was retrieved.</p>
35    pub version: ::std::string::String,
36    /// <p>The definition of the nodes and connections between the nodes in the flow.</p>
37    pub definition: ::std::option::Option<crate::types::FlowDefinition>,
38    /// <p>A list of validation error messages related to the last failed operation on the flow.</p>
39    pub validations: ::std::option::Option<::std::vec::Vec<crate::types::FlowValidation>>,
40    _request_id: Option<String>,
41}
42impl GetFlowOutput {
43    /// <p>The name of the flow.</p>
44    pub fn name(&self) -> &str {
45        use std::ops::Deref;
46        self.name.deref()
47    }
48    /// <p>The description of the flow.</p>
49    pub fn description(&self) -> ::std::option::Option<&str> {
50        self.description.as_deref()
51    }
52    /// <p>The Amazon Resource Name (ARN) of the service role with permissions to create a flow. For more information, see <a href="https://docs.aws.amazon.com/bedrock/latest/userguide/flows-permissions.html">Create a service row for flows</a> in the Amazon Bedrock User Guide.</p>
53    pub fn execution_role_arn(&self) -> &str {
54        use std::ops::Deref;
55        self.execution_role_arn.deref()
56    }
57    /// <p>The Amazon Resource Name (ARN) of the KMS key that the flow is encrypted with.</p>
58    pub fn customer_encryption_key_arn(&self) -> ::std::option::Option<&str> {
59        self.customer_encryption_key_arn.as_deref()
60    }
61    /// <p>The unique identifier of the flow.</p>
62    pub fn id(&self) -> &str {
63        use std::ops::Deref;
64        self.id.deref()
65    }
66    /// <p>The Amazon Resource Name (ARN) of the flow.</p>
67    pub fn arn(&self) -> &str {
68        use std::ops::Deref;
69        self.arn.deref()
70    }
71    /// <p>The status of the flow. The following statuses are possible:</p>
72    /// <ul>
73    /// <li>
74    /// <p>NotPrepared – The flow has been created or updated, but hasn't been prepared. If you just created the flow, you can't test it. If you updated the flow, the <code>DRAFT</code> version won't contain the latest changes for testing. Send a <a href="https://docs.aws.amazon.com/bedrock/latest/APIReference/API_agent_PrepareFlow.html">PrepareFlow</a> request to package the latest changes into the <code>DRAFT</code> version.</p></li>
75    /// <li>
76    /// <p>Preparing – The flow is being prepared so that the <code>DRAFT</code> version contains the latest changes for testing.</p></li>
77    /// <li>
78    /// <p>Prepared – The flow is prepared and the <code>DRAFT</code> version contains the latest changes for testing.</p></li>
79    /// <li>
80    /// <p>Failed – The last API operation that you invoked on the flow failed. Send a <a href="https://docs.aws.amazon.com/bedrock/latest/APIReference/API_agent_GetFlow.html">GetFlow</a> request and check the error message in the <code>validations</code> field.</p></li>
81    /// </ul>
82    pub fn status(&self) -> &crate::types::FlowStatus {
83        &self.status
84    }
85    /// <p>The time at which the flow was created.</p>
86    pub fn created_at(&self) -> &::aws_smithy_types::DateTime {
87        &self.created_at
88    }
89    /// <p>The time at which the flow was last updated.</p>
90    pub fn updated_at(&self) -> &::aws_smithy_types::DateTime {
91        &self.updated_at
92    }
93    /// <p>The version of the flow for which information was retrieved.</p>
94    pub fn version(&self) -> &str {
95        use std::ops::Deref;
96        self.version.deref()
97    }
98    /// <p>The definition of the nodes and connections between the nodes in the flow.</p>
99    pub fn definition(&self) -> ::std::option::Option<&crate::types::FlowDefinition> {
100        self.definition.as_ref()
101    }
102    /// <p>A list of validation error messages related to the last failed operation on the flow.</p>
103    ///
104    /// If no value was sent for this field, a default will be set. If you want to determine if no value was sent, use `.validations.is_none()`.
105    pub fn validations(&self) -> &[crate::types::FlowValidation] {
106        self.validations.as_deref().unwrap_or_default()
107    }
108}
109impl ::std::fmt::Debug for GetFlowOutput {
110    fn fmt(&self, f: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
111        let mut formatter = f.debug_struct("GetFlowOutput");
112        formatter.field("name", &self.name);
113        formatter.field("description", &self.description);
114        formatter.field("execution_role_arn", &self.execution_role_arn);
115        formatter.field("customer_encryption_key_arn", &self.customer_encryption_key_arn);
116        formatter.field("id", &self.id);
117        formatter.field("arn", &self.arn);
118        formatter.field("status", &self.status);
119        formatter.field("created_at", &self.created_at);
120        formatter.field("updated_at", &self.updated_at);
121        formatter.field("version", &self.version);
122        formatter.field("definition", &"*** Sensitive Data Redacted ***");
123        formatter.field("validations", &self.validations);
124        formatter.field("_request_id", &self._request_id);
125        formatter.finish()
126    }
127}
128impl ::aws_types::request_id::RequestId for GetFlowOutput {
129    fn request_id(&self) -> Option<&str> {
130        self._request_id.as_deref()
131    }
132}
133impl GetFlowOutput {
134    /// Creates a new builder-style object to manufacture [`GetFlowOutput`](crate::operation::get_flow::GetFlowOutput).
135    pub fn builder() -> crate::operation::get_flow::builders::GetFlowOutputBuilder {
136        crate::operation::get_flow::builders::GetFlowOutputBuilder::default()
137    }
138}
139
140/// A builder for [`GetFlowOutput`](crate::operation::get_flow::GetFlowOutput).
141#[derive(::std::clone::Clone, ::std::cmp::PartialEq, ::std::default::Default)]
142#[non_exhaustive]
143pub struct GetFlowOutputBuilder {
144    pub(crate) name: ::std::option::Option<::std::string::String>,
145    pub(crate) description: ::std::option::Option<::std::string::String>,
146    pub(crate) execution_role_arn: ::std::option::Option<::std::string::String>,
147    pub(crate) customer_encryption_key_arn: ::std::option::Option<::std::string::String>,
148    pub(crate) id: ::std::option::Option<::std::string::String>,
149    pub(crate) arn: ::std::option::Option<::std::string::String>,
150    pub(crate) status: ::std::option::Option<crate::types::FlowStatus>,
151    pub(crate) created_at: ::std::option::Option<::aws_smithy_types::DateTime>,
152    pub(crate) updated_at: ::std::option::Option<::aws_smithy_types::DateTime>,
153    pub(crate) version: ::std::option::Option<::std::string::String>,
154    pub(crate) definition: ::std::option::Option<crate::types::FlowDefinition>,
155    pub(crate) validations: ::std::option::Option<::std::vec::Vec<crate::types::FlowValidation>>,
156    _request_id: Option<String>,
157}
158impl GetFlowOutputBuilder {
159    /// <p>The name of the flow.</p>
160    /// This field is required.
161    pub fn name(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
162        self.name = ::std::option::Option::Some(input.into());
163        self
164    }
165    /// <p>The name of the flow.</p>
166    pub fn set_name(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
167        self.name = input;
168        self
169    }
170    /// <p>The name of the flow.</p>
171    pub fn get_name(&self) -> &::std::option::Option<::std::string::String> {
172        &self.name
173    }
174    /// <p>The description of the flow.</p>
175    pub fn description(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
176        self.description = ::std::option::Option::Some(input.into());
177        self
178    }
179    /// <p>The description of the flow.</p>
180    pub fn set_description(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
181        self.description = input;
182        self
183    }
184    /// <p>The description of the flow.</p>
185    pub fn get_description(&self) -> &::std::option::Option<::std::string::String> {
186        &self.description
187    }
188    /// <p>The Amazon Resource Name (ARN) of the service role with permissions to create a flow. For more information, see <a href="https://docs.aws.amazon.com/bedrock/latest/userguide/flows-permissions.html">Create a service row for flows</a> in the Amazon Bedrock User Guide.</p>
189    /// This field is required.
190    pub fn execution_role_arn(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
191        self.execution_role_arn = ::std::option::Option::Some(input.into());
192        self
193    }
194    /// <p>The Amazon Resource Name (ARN) of the service role with permissions to create a flow. For more information, see <a href="https://docs.aws.amazon.com/bedrock/latest/userguide/flows-permissions.html">Create a service row for flows</a> in the Amazon Bedrock User Guide.</p>
195    pub fn set_execution_role_arn(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
196        self.execution_role_arn = input;
197        self
198    }
199    /// <p>The Amazon Resource Name (ARN) of the service role with permissions to create a flow. For more information, see <a href="https://docs.aws.amazon.com/bedrock/latest/userguide/flows-permissions.html">Create a service row for flows</a> in the Amazon Bedrock User Guide.</p>
200    pub fn get_execution_role_arn(&self) -> &::std::option::Option<::std::string::String> {
201        &self.execution_role_arn
202    }
203    /// <p>The Amazon Resource Name (ARN) of the KMS key that the flow is encrypted with.</p>
204    pub fn customer_encryption_key_arn(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
205        self.customer_encryption_key_arn = ::std::option::Option::Some(input.into());
206        self
207    }
208    /// <p>The Amazon Resource Name (ARN) of the KMS key that the flow is encrypted with.</p>
209    pub fn set_customer_encryption_key_arn(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
210        self.customer_encryption_key_arn = input;
211        self
212    }
213    /// <p>The Amazon Resource Name (ARN) of the KMS key that the flow is encrypted with.</p>
214    pub fn get_customer_encryption_key_arn(&self) -> &::std::option::Option<::std::string::String> {
215        &self.customer_encryption_key_arn
216    }
217    /// <p>The unique identifier of the flow.</p>
218    /// This field is required.
219    pub fn id(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
220        self.id = ::std::option::Option::Some(input.into());
221        self
222    }
223    /// <p>The unique identifier of the flow.</p>
224    pub fn set_id(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
225        self.id = input;
226        self
227    }
228    /// <p>The unique identifier of the flow.</p>
229    pub fn get_id(&self) -> &::std::option::Option<::std::string::String> {
230        &self.id
231    }
232    /// <p>The Amazon Resource Name (ARN) of the flow.</p>
233    /// This field is required.
234    pub fn arn(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
235        self.arn = ::std::option::Option::Some(input.into());
236        self
237    }
238    /// <p>The Amazon Resource Name (ARN) of the flow.</p>
239    pub fn set_arn(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
240        self.arn = input;
241        self
242    }
243    /// <p>The Amazon Resource Name (ARN) of the flow.</p>
244    pub fn get_arn(&self) -> &::std::option::Option<::std::string::String> {
245        &self.arn
246    }
247    /// <p>The status of the flow. The following statuses are possible:</p>
248    /// <ul>
249    /// <li>
250    /// <p>NotPrepared – The flow has been created or updated, but hasn't been prepared. If you just created the flow, you can't test it. If you updated the flow, the <code>DRAFT</code> version won't contain the latest changes for testing. Send a <a href="https://docs.aws.amazon.com/bedrock/latest/APIReference/API_agent_PrepareFlow.html">PrepareFlow</a> request to package the latest changes into the <code>DRAFT</code> version.</p></li>
251    /// <li>
252    /// <p>Preparing – The flow is being prepared so that the <code>DRAFT</code> version contains the latest changes for testing.</p></li>
253    /// <li>
254    /// <p>Prepared – The flow is prepared and the <code>DRAFT</code> version contains the latest changes for testing.</p></li>
255    /// <li>
256    /// <p>Failed – The last API operation that you invoked on the flow failed. Send a <a href="https://docs.aws.amazon.com/bedrock/latest/APIReference/API_agent_GetFlow.html">GetFlow</a> request and check the error message in the <code>validations</code> field.</p></li>
257    /// </ul>
258    /// This field is required.
259    pub fn status(mut self, input: crate::types::FlowStatus) -> Self {
260        self.status = ::std::option::Option::Some(input);
261        self
262    }
263    /// <p>The status of the flow. The following statuses are possible:</p>
264    /// <ul>
265    /// <li>
266    /// <p>NotPrepared – The flow has been created or updated, but hasn't been prepared. If you just created the flow, you can't test it. If you updated the flow, the <code>DRAFT</code> version won't contain the latest changes for testing. Send a <a href="https://docs.aws.amazon.com/bedrock/latest/APIReference/API_agent_PrepareFlow.html">PrepareFlow</a> request to package the latest changes into the <code>DRAFT</code> version.</p></li>
267    /// <li>
268    /// <p>Preparing – The flow is being prepared so that the <code>DRAFT</code> version contains the latest changes for testing.</p></li>
269    /// <li>
270    /// <p>Prepared – The flow is prepared and the <code>DRAFT</code> version contains the latest changes for testing.</p></li>
271    /// <li>
272    /// <p>Failed – The last API operation that you invoked on the flow failed. Send a <a href="https://docs.aws.amazon.com/bedrock/latest/APIReference/API_agent_GetFlow.html">GetFlow</a> request and check the error message in the <code>validations</code> field.</p></li>
273    /// </ul>
274    pub fn set_status(mut self, input: ::std::option::Option<crate::types::FlowStatus>) -> Self {
275        self.status = input;
276        self
277    }
278    /// <p>The status of the flow. The following statuses are possible:</p>
279    /// <ul>
280    /// <li>
281    /// <p>NotPrepared – The flow has been created or updated, but hasn't been prepared. If you just created the flow, you can't test it. If you updated the flow, the <code>DRAFT</code> version won't contain the latest changes for testing. Send a <a href="https://docs.aws.amazon.com/bedrock/latest/APIReference/API_agent_PrepareFlow.html">PrepareFlow</a> request to package the latest changes into the <code>DRAFT</code> version.</p></li>
282    /// <li>
283    /// <p>Preparing – The flow is being prepared so that the <code>DRAFT</code> version contains the latest changes for testing.</p></li>
284    /// <li>
285    /// <p>Prepared – The flow is prepared and the <code>DRAFT</code> version contains the latest changes for testing.</p></li>
286    /// <li>
287    /// <p>Failed – The last API operation that you invoked on the flow failed. Send a <a href="https://docs.aws.amazon.com/bedrock/latest/APIReference/API_agent_GetFlow.html">GetFlow</a> request and check the error message in the <code>validations</code> field.</p></li>
288    /// </ul>
289    pub fn get_status(&self) -> &::std::option::Option<crate::types::FlowStatus> {
290        &self.status
291    }
292    /// <p>The time at which the flow was created.</p>
293    /// This field is required.
294    pub fn created_at(mut self, input: ::aws_smithy_types::DateTime) -> Self {
295        self.created_at = ::std::option::Option::Some(input);
296        self
297    }
298    /// <p>The time at which the flow was created.</p>
299    pub fn set_created_at(mut self, input: ::std::option::Option<::aws_smithy_types::DateTime>) -> Self {
300        self.created_at = input;
301        self
302    }
303    /// <p>The time at which the flow was created.</p>
304    pub fn get_created_at(&self) -> &::std::option::Option<::aws_smithy_types::DateTime> {
305        &self.created_at
306    }
307    /// <p>The time at which the flow was last updated.</p>
308    /// This field is required.
309    pub fn updated_at(mut self, input: ::aws_smithy_types::DateTime) -> Self {
310        self.updated_at = ::std::option::Option::Some(input);
311        self
312    }
313    /// <p>The time at which the flow was last updated.</p>
314    pub fn set_updated_at(mut self, input: ::std::option::Option<::aws_smithy_types::DateTime>) -> Self {
315        self.updated_at = input;
316        self
317    }
318    /// <p>The time at which the flow was last updated.</p>
319    pub fn get_updated_at(&self) -> &::std::option::Option<::aws_smithy_types::DateTime> {
320        &self.updated_at
321    }
322    /// <p>The version of the flow for which information was retrieved.</p>
323    /// This field is required.
324    pub fn version(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
325        self.version = ::std::option::Option::Some(input.into());
326        self
327    }
328    /// <p>The version of the flow for which information was retrieved.</p>
329    pub fn set_version(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
330        self.version = input;
331        self
332    }
333    /// <p>The version of the flow for which information was retrieved.</p>
334    pub fn get_version(&self) -> &::std::option::Option<::std::string::String> {
335        &self.version
336    }
337    /// <p>The definition of the nodes and connections between the nodes in the flow.</p>
338    pub fn definition(mut self, input: crate::types::FlowDefinition) -> Self {
339        self.definition = ::std::option::Option::Some(input);
340        self
341    }
342    /// <p>The definition of the nodes and connections between the nodes in the flow.</p>
343    pub fn set_definition(mut self, input: ::std::option::Option<crate::types::FlowDefinition>) -> Self {
344        self.definition = input;
345        self
346    }
347    /// <p>The definition of the nodes and connections between the nodes in the flow.</p>
348    pub fn get_definition(&self) -> &::std::option::Option<crate::types::FlowDefinition> {
349        &self.definition
350    }
351    /// Appends an item to `validations`.
352    ///
353    /// To override the contents of this collection use [`set_validations`](Self::set_validations).
354    ///
355    /// <p>A list of validation error messages related to the last failed operation on the flow.</p>
356    pub fn validations(mut self, input: crate::types::FlowValidation) -> Self {
357        let mut v = self.validations.unwrap_or_default();
358        v.push(input);
359        self.validations = ::std::option::Option::Some(v);
360        self
361    }
362    /// <p>A list of validation error messages related to the last failed operation on the flow.</p>
363    pub fn set_validations(mut self, input: ::std::option::Option<::std::vec::Vec<crate::types::FlowValidation>>) -> Self {
364        self.validations = input;
365        self
366    }
367    /// <p>A list of validation error messages related to the last failed operation on the flow.</p>
368    pub fn get_validations(&self) -> &::std::option::Option<::std::vec::Vec<crate::types::FlowValidation>> {
369        &self.validations
370    }
371    pub(crate) fn _request_id(mut self, request_id: impl Into<String>) -> Self {
372        self._request_id = Some(request_id.into());
373        self
374    }
375
376    pub(crate) fn _set_request_id(&mut self, request_id: Option<String>) -> &mut Self {
377        self._request_id = request_id;
378        self
379    }
380    /// Consumes the builder and constructs a [`GetFlowOutput`](crate::operation::get_flow::GetFlowOutput).
381    /// This method will fail if any of the following fields are not set:
382    /// - [`name`](crate::operation::get_flow::builders::GetFlowOutputBuilder::name)
383    /// - [`execution_role_arn`](crate::operation::get_flow::builders::GetFlowOutputBuilder::execution_role_arn)
384    /// - [`id`](crate::operation::get_flow::builders::GetFlowOutputBuilder::id)
385    /// - [`arn`](crate::operation::get_flow::builders::GetFlowOutputBuilder::arn)
386    /// - [`status`](crate::operation::get_flow::builders::GetFlowOutputBuilder::status)
387    /// - [`created_at`](crate::operation::get_flow::builders::GetFlowOutputBuilder::created_at)
388    /// - [`updated_at`](crate::operation::get_flow::builders::GetFlowOutputBuilder::updated_at)
389    /// - [`version`](crate::operation::get_flow::builders::GetFlowOutputBuilder::version)
390    pub fn build(self) -> ::std::result::Result<crate::operation::get_flow::GetFlowOutput, ::aws_smithy_types::error::operation::BuildError> {
391        ::std::result::Result::Ok(crate::operation::get_flow::GetFlowOutput {
392            name: self.name.ok_or_else(|| {
393                ::aws_smithy_types::error::operation::BuildError::missing_field(
394                    "name",
395                    "name was not specified but it is required when building GetFlowOutput",
396                )
397            })?,
398            description: self.description,
399            execution_role_arn: self.execution_role_arn.ok_or_else(|| {
400                ::aws_smithy_types::error::operation::BuildError::missing_field(
401                    "execution_role_arn",
402                    "execution_role_arn was not specified but it is required when building GetFlowOutput",
403                )
404            })?,
405            customer_encryption_key_arn: self.customer_encryption_key_arn,
406            id: self.id.ok_or_else(|| {
407                ::aws_smithy_types::error::operation::BuildError::missing_field(
408                    "id",
409                    "id was not specified but it is required when building GetFlowOutput",
410                )
411            })?,
412            arn: self.arn.ok_or_else(|| {
413                ::aws_smithy_types::error::operation::BuildError::missing_field(
414                    "arn",
415                    "arn was not specified but it is required when building GetFlowOutput",
416                )
417            })?,
418            status: self.status.ok_or_else(|| {
419                ::aws_smithy_types::error::operation::BuildError::missing_field(
420                    "status",
421                    "status was not specified but it is required when building GetFlowOutput",
422                )
423            })?,
424            created_at: self.created_at.ok_or_else(|| {
425                ::aws_smithy_types::error::operation::BuildError::missing_field(
426                    "created_at",
427                    "created_at was not specified but it is required when building GetFlowOutput",
428                )
429            })?,
430            updated_at: self.updated_at.ok_or_else(|| {
431                ::aws_smithy_types::error::operation::BuildError::missing_field(
432                    "updated_at",
433                    "updated_at was not specified but it is required when building GetFlowOutput",
434                )
435            })?,
436            version: self.version.ok_or_else(|| {
437                ::aws_smithy_types::error::operation::BuildError::missing_field(
438                    "version",
439                    "version was not specified but it is required when building GetFlowOutput",
440                )
441            })?,
442            definition: self.definition,
443            validations: self.validations,
444            _request_id: self._request_id,
445        })
446    }
447}
448impl ::std::fmt::Debug for GetFlowOutputBuilder {
449    fn fmt(&self, f: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
450        let mut formatter = f.debug_struct("GetFlowOutputBuilder");
451        formatter.field("name", &self.name);
452        formatter.field("description", &self.description);
453        formatter.field("execution_role_arn", &self.execution_role_arn);
454        formatter.field("customer_encryption_key_arn", &self.customer_encryption_key_arn);
455        formatter.field("id", &self.id);
456        formatter.field("arn", &self.arn);
457        formatter.field("status", &self.status);
458        formatter.field("created_at", &self.created_at);
459        formatter.field("updated_at", &self.updated_at);
460        formatter.field("version", &self.version);
461        formatter.field("definition", &"*** Sensitive Data Redacted ***");
462        formatter.field("validations", &self.validations);
463        formatter.field("_request_id", &self._request_id);
464        formatter.finish()
465    }
466}