Skip to main content

aws_sdk_codecatalyst/operation/
list_workflow_runs.rs

1// Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
2/// Orchestration and serialization glue logic for `ListWorkflowRuns`.
3#[derive(::std::clone::Clone, ::std::default::Default, ::std::fmt::Debug)]
4#[non_exhaustive]
5pub struct ListWorkflowRuns;
6impl ListWorkflowRuns {
7    /// Creates a new `ListWorkflowRuns`
8    pub fn new() -> Self {
9        Self
10    }
11    pub(crate) async fn orchestrate(
12        runtime_plugins: &::aws_smithy_runtime_api::client::runtime_plugin::RuntimePlugins,
13        input: crate::operation::list_workflow_runs::ListWorkflowRunsInput,
14    ) -> ::std::result::Result<
15        crate::operation::list_workflow_runs::ListWorkflowRunsOutput,
16        ::aws_smithy_runtime_api::client::result::SdkError<
17            crate::operation::list_workflow_runs::ListWorkflowRunsError,
18            ::aws_smithy_runtime_api::client::orchestrator::HttpResponse,
19        >,
20    > {
21        let map_err = |err: ::aws_smithy_runtime_api::client::result::SdkError<
22            ::aws_smithy_runtime_api::client::interceptors::context::Error,
23            ::aws_smithy_runtime_api::client::orchestrator::HttpResponse,
24        >| {
25            err.map_service_error(|err| {
26                err.downcast::<crate::operation::list_workflow_runs::ListWorkflowRunsError>()
27                    .expect("correct error type")
28            })
29        };
30        let context = Self::orchestrate_with_stop_point(runtime_plugins, input, ::aws_smithy_runtime::client::orchestrator::StopPoint::None)
31            .await
32            .map_err(map_err)?;
33        let output = context.finalize().map_err(map_err)?;
34        ::std::result::Result::Ok(
35            output
36                .downcast::<crate::operation::list_workflow_runs::ListWorkflowRunsOutput>()
37                .expect("correct output type"),
38        )
39    }
40
41    pub(crate) async fn orchestrate_with_stop_point(
42        runtime_plugins: &::aws_smithy_runtime_api::client::runtime_plugin::RuntimePlugins,
43        input: crate::operation::list_workflow_runs::ListWorkflowRunsInput,
44        stop_point: ::aws_smithy_runtime::client::orchestrator::StopPoint,
45    ) -> ::std::result::Result<
46        ::aws_smithy_runtime_api::client::interceptors::context::InterceptorContext,
47        ::aws_smithy_runtime_api::client::result::SdkError<
48            ::aws_smithy_runtime_api::client::interceptors::context::Error,
49            ::aws_smithy_runtime_api::client::orchestrator::HttpResponse,
50        >,
51    > {
52        let input = ::aws_smithy_runtime_api::client::interceptors::context::Input::erase(input);
53        use ::tracing::Instrument;
54        ::aws_smithy_runtime::client::orchestrator::invoke_with_stop_point("CodeCatalyst", "ListWorkflowRuns", input, runtime_plugins, stop_point)
55            // Create a parent span for the entire operation. Includes a random, internal-only,
56            // seven-digit ID for the operation orchestration so that it can be correlated in the logs.
57            .instrument(::tracing::debug_span!(
58                "CodeCatalyst.ListWorkflowRuns",
59                "rpc.service" = "CodeCatalyst",
60                "rpc.method" = "ListWorkflowRuns",
61                "sdk_invocation_id" = ::fastrand::u32(1_000_000..10_000_000),
62                "rpc.system" = "aws-api",
63            ))
64            .await
65    }
66
67    pub(crate) fn operation_runtime_plugins(
68        client_runtime_plugins: ::aws_smithy_runtime_api::client::runtime_plugin::RuntimePlugins,
69        client_config: &crate::config::Config,
70        config_override: ::std::option::Option<crate::config::Builder>,
71    ) -> ::aws_smithy_runtime_api::client::runtime_plugin::RuntimePlugins {
72        let mut runtime_plugins = client_runtime_plugins.with_operation_plugin(Self::new());
73
74        if let ::std::option::Option::Some(config_override) = config_override {
75            for plugin in config_override.runtime_plugins.iter().cloned() {
76                runtime_plugins = runtime_plugins.with_operation_plugin(plugin);
77            }
78            runtime_plugins = runtime_plugins.with_operation_plugin(crate::config::ConfigOverrideRuntimePlugin::new(
79                config_override,
80                client_config.config.clone(),
81                &client_config.runtime_components,
82            ));
83        }
84        runtime_plugins
85    }
86}
87impl ::aws_smithy_runtime_api::client::runtime_plugin::RuntimePlugin for ListWorkflowRuns {
88    fn config(&self) -> ::std::option::Option<::aws_smithy_types::config_bag::FrozenLayer> {
89        let mut cfg = ::aws_smithy_types::config_bag::Layer::new("ListWorkflowRuns");
90
91        cfg.store_put(::aws_smithy_runtime_api::client::ser_de::SharedRequestSerializer::new(
92            ListWorkflowRunsRequestSerializer,
93        ));
94        cfg.store_put(::aws_smithy_runtime_api::client::ser_de::SharedResponseDeserializer::new(
95            ListWorkflowRunsResponseDeserializer,
96        ));
97
98        cfg.store_put(::aws_smithy_runtime_api::client::auth::AuthSchemeOptionResolverParams::new(
99            crate::config::auth::Params::builder()
100                .operation_name("ListWorkflowRuns")
101                .build()
102                .expect("required fields set"),
103        ));
104
105        cfg.store_put(::aws_smithy_runtime_api::client::orchestrator::Metadata::new(
106            "ListWorkflowRuns",
107            "CodeCatalyst",
108        ));
109
110        ::std::option::Option::Some(cfg.freeze())
111    }
112
113    fn runtime_components(
114        &self,
115        _: &::aws_smithy_runtime_api::client::runtime_components::RuntimeComponentsBuilder,
116    ) -> ::std::borrow::Cow<'_, ::aws_smithy_runtime_api::client::runtime_components::RuntimeComponentsBuilder> {
117        #[allow(unused_mut)]
118        let mut rcb = ::aws_smithy_runtime_api::client::runtime_components::RuntimeComponentsBuilder::new("ListWorkflowRuns")
119            .with_interceptor(::aws_smithy_runtime_api::client::interceptors::SharedInterceptor::permanent(
120                ::aws_smithy_runtime::client::stalled_stream_protection::StalledStreamProtectionInterceptor::default(),
121            ))
122            .with_interceptor(::aws_smithy_runtime_api::client::interceptors::SharedInterceptor::permanent(
123                ListWorkflowRunsEndpointParamsInterceptor,
124            ))
125            .with_retry_classifier(::aws_smithy_runtime::client::retries::classifiers::TransientErrorClassifier::<
126                crate::operation::list_workflow_runs::ListWorkflowRunsError,
127            >::new())
128            .with_retry_classifier(::aws_smithy_runtime::client::retries::classifiers::ModeledAsRetryableClassifier::<
129                crate::operation::list_workflow_runs::ListWorkflowRunsError,
130            >::new())
131            .with_retry_classifier(::aws_runtime::retries::classifiers::AwsErrorCodeClassifier::<
132                crate::operation::list_workflow_runs::ListWorkflowRunsError,
133            >::new());
134
135        ::std::borrow::Cow::Owned(rcb)
136    }
137}
138
139#[derive(Debug)]
140struct ListWorkflowRunsResponseDeserializer;
141impl ::aws_smithy_runtime_api::client::ser_de::DeserializeResponse for ListWorkflowRunsResponseDeserializer {
142    fn deserialize_nonstreaming_with_config(
143        &self,
144        response: &::aws_smithy_runtime_api::client::orchestrator::HttpResponse,
145        _cfg: &::aws_smithy_types::config_bag::ConfigBag,
146    ) -> ::aws_smithy_runtime_api::client::interceptors::context::OutputOrError {
147        let (success, status) = (response.status().is_success(), response.status().as_u16());
148        let headers = response.headers();
149        let body = response.body().bytes().expect("body loaded");
150        #[allow(unused_mut)]
151        let mut force_error = false;
152        ::tracing::debug!(request_id = ?::aws_types::request_id::RequestId::request_id(response));
153        let parse_result = if !success && status != 200 || force_error {
154            crate::protocol_serde::shape_list_workflow_runs::de_list_workflow_runs_http_error(status, headers, body)
155        } else {
156            crate::protocol_serde::shape_list_workflow_runs::de_list_workflow_runs_http_response(status, headers, body)
157        };
158        crate::protocol_serde::type_erase_result(parse_result)
159    }
160}
161#[derive(Debug)]
162struct ListWorkflowRunsRequestSerializer;
163impl ::aws_smithy_runtime_api::client::ser_de::SerializeRequest for ListWorkflowRunsRequestSerializer {
164    #[allow(unused_mut, clippy::let_and_return, clippy::needless_borrow, clippy::useless_conversion)]
165    fn serialize_input(
166        &self,
167        input: ::aws_smithy_runtime_api::client::interceptors::context::Input,
168        _cfg: &mut ::aws_smithy_types::config_bag::ConfigBag,
169    ) -> ::std::result::Result<::aws_smithy_runtime_api::client::orchestrator::HttpRequest, ::aws_smithy_runtime_api::box_error::BoxError> {
170        let input = input
171            .downcast::<crate::operation::list_workflow_runs::ListWorkflowRunsInput>()
172            .expect("correct type");
173        let _header_serialization_settings = _cfg
174            .load::<crate::serialization_settings::HeaderSerializationSettings>()
175            .cloned()
176            .unwrap_or_default();
177        let mut request_builder = {
178            #[allow(clippy::uninlined_format_args)]
179            fn uri_base(
180                _input: &crate::operation::list_workflow_runs::ListWorkflowRunsInput,
181                output: &mut ::std::string::String,
182            ) -> ::std::result::Result<(), ::aws_smithy_types::error::operation::BuildError> {
183                use ::std::fmt::Write as _;
184                let input_1 = &_input.space_name;
185                let input_1 = input_1
186                    .as_ref()
187                    .ok_or_else(|| ::aws_smithy_types::error::operation::BuildError::missing_field("space_name", "cannot be empty or unset"))?;
188                let space_name = ::aws_smithy_http::label::fmt_string(input_1, ::aws_smithy_http::label::EncodingStrategy::Default);
189                if space_name.is_empty() {
190                    return ::std::result::Result::Err(::aws_smithy_types::error::operation::BuildError::missing_field(
191                        "space_name",
192                        "cannot be empty or unset",
193                    ));
194                }
195                let input_2 = &_input.project_name;
196                let input_2 = input_2
197                    .as_ref()
198                    .ok_or_else(|| ::aws_smithy_types::error::operation::BuildError::missing_field("project_name", "cannot be empty or unset"))?;
199                let project_name = ::aws_smithy_http::label::fmt_string(input_2, ::aws_smithy_http::label::EncodingStrategy::Default);
200                if project_name.is_empty() {
201                    return ::std::result::Result::Err(::aws_smithy_types::error::operation::BuildError::missing_field(
202                        "project_name",
203                        "cannot be empty or unset",
204                    ));
205                }
206                ::std::write!(
207                    output,
208                    "/v1/spaces/{spaceName}/projects/{projectName}/workflowRuns",
209                    spaceName = space_name,
210                    projectName = project_name
211                )
212                .expect("formatting should succeed");
213                ::std::result::Result::Ok(())
214            }
215            fn uri_query(
216                _input: &crate::operation::list_workflow_runs::ListWorkflowRunsInput,
217                mut output: &mut ::std::string::String,
218            ) -> ::std::result::Result<(), ::aws_smithy_types::error::operation::BuildError> {
219                let mut query = ::aws_smithy_http::query::Writer::new(output);
220                if let ::std::option::Option::Some(inner_3) = &_input.workflow_id {
221                    {
222                        query.push_kv("workflowId", &::aws_smithy_http::query::fmt_string(inner_3));
223                    }
224                }
225                if let ::std::option::Option::Some(inner_4) = &_input.next_token {
226                    {
227                        query.push_kv("nextToken", &::aws_smithy_http::query::fmt_string(inner_4));
228                    }
229                }
230                if let ::std::option::Option::Some(inner_5) = &_input.max_results {
231                    {
232                        query.push_kv("maxResults", ::aws_smithy_types::primitive::Encoder::from(*inner_5).encode());
233                    }
234                }
235                ::std::result::Result::Ok(())
236            }
237            #[allow(clippy::unnecessary_wraps)]
238            fn update_http_builder(
239                input: &crate::operation::list_workflow_runs::ListWorkflowRunsInput,
240                builder: ::http_1x::request::Builder,
241            ) -> ::std::result::Result<::http_1x::request::Builder, ::aws_smithy_types::error::operation::BuildError> {
242                let mut uri = ::std::string::String::new();
243                uri_base(input, &mut uri)?;
244                uri_query(input, &mut uri)?;
245                ::std::result::Result::Ok(builder.method("POST").uri(uri))
246            }
247            let mut builder = update_http_builder(&input, ::http_1x::request::Builder::new())?;
248            builder = _header_serialization_settings.set_default_header(builder, ::http_1x::header::CONTENT_TYPE, "application/json");
249            builder
250        };
251        let body = ::aws_smithy_types::body::SdkBody::from(crate::protocol_serde::shape_list_workflow_runs::ser_list_workflow_runs_input(&input)?);
252        if let Some(content_length) = body.content_length() {
253            let content_length = content_length.to_string();
254            request_builder = _header_serialization_settings.set_default_header(request_builder, ::http_1x::header::CONTENT_LENGTH, &content_length);
255        }
256        ::std::result::Result::Ok(request_builder.body(body).expect("valid request").try_into().unwrap())
257    }
258}
259#[derive(Debug)]
260struct ListWorkflowRunsEndpointParamsInterceptor;
261
262#[::aws_smithy_runtime_api::client::interceptors::dyn_dispatch_hint]
263impl ::aws_smithy_runtime_api::client::interceptors::Intercept for ListWorkflowRunsEndpointParamsInterceptor {
264    fn name(&self) -> &'static str {
265        "ListWorkflowRunsEndpointParamsInterceptor"
266    }
267
268    fn read_before_execution(
269        &self,
270        context: &::aws_smithy_runtime_api::client::interceptors::context::BeforeSerializationInterceptorContextRef<
271            '_,
272            ::aws_smithy_runtime_api::client::interceptors::context::Input,
273            ::aws_smithy_runtime_api::client::interceptors::context::Output,
274            ::aws_smithy_runtime_api::client::interceptors::context::Error,
275        >,
276        cfg: &mut ::aws_smithy_types::config_bag::ConfigBag,
277    ) -> ::std::result::Result<(), ::aws_smithy_runtime_api::box_error::BoxError> {
278        let _input = context
279            .input()
280            .downcast_ref::<ListWorkflowRunsInput>()
281            .ok_or("failed to downcast to ListWorkflowRunsInput")?;
282
283        let params = crate::config::endpoint::Params::builder()
284            .set_use_fips(cfg.load::<::aws_types::endpoint_config::UseFips>().map(|ty| ty.0))
285            .set_region(cfg.load::<::aws_types::region::Region>().map(|r| r.as_ref().to_owned()))
286            .set_endpoint(cfg.load::<::aws_types::endpoint_config::EndpointUrl>().map(|ty| ty.0.clone()))
287            .build()
288            .map_err(|err| {
289                ::aws_smithy_runtime_api::client::interceptors::error::ContextAttachedError::new("endpoint params could not be built", err)
290            })?;
291        cfg.interceptor_state()
292            .store_put(::aws_smithy_runtime_api::client::endpoint::EndpointResolverParams::new(params));
293        ::std::result::Result::Ok(())
294    }
295}
296
297// The get_* functions below are generated from JMESPath expressions in the
298// operationContextParams trait. They target the operation's input shape.
299
300/// Error type for the `ListWorkflowRunsError` operation.
301#[non_exhaustive]
302#[derive(::std::fmt::Debug)]
303pub enum ListWorkflowRunsError {
304    /// <p>The request was denied because you don't have sufficient access to perform this action. Verify that you are a member of a role that allows this action.</p>
305    AccessDeniedException(crate::types::error::AccessDeniedException),
306    /// <p>The request was denied because the requested operation would cause a conflict with the current state of a service resource associated with the request. Another user might have updated the resource. Reload, make sure you have the latest data, and then try again.</p>
307    ConflictException(crate::types::error::ConflictException),
308    /// <p>The request was denied because the specified resource was not found. Verify that the spelling is correct and that you have access to the resource.</p>
309    ResourceNotFoundException(crate::types::error::ResourceNotFoundException),
310    /// <p>The request was denied because one or more resources has reached its limits for the tier the space belongs to. Either reduce the number of resources, or change the tier if applicable.</p>
311    ServiceQuotaExceededException(crate::types::error::ServiceQuotaExceededException),
312    /// <p>The request was denied due to request throttling.</p>
313    ThrottlingException(crate::types::error::ThrottlingException),
314    /// <p>The request was denied because an input failed to satisfy the constraints specified by the service. Check the spelling and input requirements, and then try again.</p>
315    ValidationException(crate::types::error::ValidationException),
316    /// An unexpected error occurred (e.g., invalid JSON returned by the service or an unknown error code).
317    #[deprecated(note = "Matching `Unhandled` directly is not forwards compatible. Instead, match using a \
318    variable wildcard pattern and check `.code()`:
319     \
320    &nbsp;&nbsp;&nbsp;`err if err.code() == Some(\"SpecificExceptionCode\") => { /* handle the error */ }`
321     \
322    See [`ProvideErrorMetadata`](#impl-ProvideErrorMetadata-for-ListWorkflowRunsError) for what information is available for the error.")]
323    Unhandled(crate::error::sealed_unhandled::Unhandled),
324}
325impl ListWorkflowRunsError {
326    /// Creates the `ListWorkflowRunsError::Unhandled` variant from any error type.
327    pub fn unhandled(
328        err: impl ::std::convert::Into<::std::boxed::Box<dyn ::std::error::Error + ::std::marker::Send + ::std::marker::Sync + 'static>>,
329    ) -> Self {
330        Self::Unhandled(crate::error::sealed_unhandled::Unhandled {
331            source: err.into(),
332            meta: ::std::default::Default::default(),
333        })
334    }
335
336    /// Creates the `ListWorkflowRunsError::Unhandled` variant from an [`ErrorMetadata`](::aws_smithy_types::error::ErrorMetadata).
337    pub fn generic(err: ::aws_smithy_types::error::ErrorMetadata) -> Self {
338        Self::Unhandled(crate::error::sealed_unhandled::Unhandled {
339            source: err.clone().into(),
340            meta: err,
341        })
342    }
343    ///
344    /// Returns error metadata, which includes the error code, message,
345    /// request ID, and potentially additional information.
346    ///
347    pub fn meta(&self) -> &::aws_smithy_types::error::ErrorMetadata {
348        match self {
349            Self::AccessDeniedException(e) => ::aws_smithy_types::error::metadata::ProvideErrorMetadata::meta(e),
350            Self::ConflictException(e) => ::aws_smithy_types::error::metadata::ProvideErrorMetadata::meta(e),
351            Self::ResourceNotFoundException(e) => ::aws_smithy_types::error::metadata::ProvideErrorMetadata::meta(e),
352            Self::ServiceQuotaExceededException(e) => ::aws_smithy_types::error::metadata::ProvideErrorMetadata::meta(e),
353            Self::ThrottlingException(e) => ::aws_smithy_types::error::metadata::ProvideErrorMetadata::meta(e),
354            Self::ValidationException(e) => ::aws_smithy_types::error::metadata::ProvideErrorMetadata::meta(e),
355            Self::Unhandled(e) => &e.meta,
356        }
357    }
358    /// Returns `true` if the error kind is `ListWorkflowRunsError::AccessDeniedException`.
359    pub fn is_access_denied_exception(&self) -> bool {
360        matches!(self, Self::AccessDeniedException(_))
361    }
362    /// Returns `true` if the error kind is `ListWorkflowRunsError::ConflictException`.
363    pub fn is_conflict_exception(&self) -> bool {
364        matches!(self, Self::ConflictException(_))
365    }
366    /// Returns `true` if the error kind is `ListWorkflowRunsError::ResourceNotFoundException`.
367    pub fn is_resource_not_found_exception(&self) -> bool {
368        matches!(self, Self::ResourceNotFoundException(_))
369    }
370    /// Returns `true` if the error kind is `ListWorkflowRunsError::ServiceQuotaExceededException`.
371    pub fn is_service_quota_exceeded_exception(&self) -> bool {
372        matches!(self, Self::ServiceQuotaExceededException(_))
373    }
374    /// Returns `true` if the error kind is `ListWorkflowRunsError::ThrottlingException`.
375    pub fn is_throttling_exception(&self) -> bool {
376        matches!(self, Self::ThrottlingException(_))
377    }
378    /// Returns `true` if the error kind is `ListWorkflowRunsError::ValidationException`.
379    pub fn is_validation_exception(&self) -> bool {
380        matches!(self, Self::ValidationException(_))
381    }
382}
383impl ::std::error::Error for ListWorkflowRunsError {
384    fn source(&self) -> ::std::option::Option<&(dyn ::std::error::Error + 'static)> {
385        match self {
386            Self::AccessDeniedException(_inner) => ::std::option::Option::Some(_inner),
387            Self::ConflictException(_inner) => ::std::option::Option::Some(_inner),
388            Self::ResourceNotFoundException(_inner) => ::std::option::Option::Some(_inner),
389            Self::ServiceQuotaExceededException(_inner) => ::std::option::Option::Some(_inner),
390            Self::ThrottlingException(_inner) => ::std::option::Option::Some(_inner),
391            Self::ValidationException(_inner) => ::std::option::Option::Some(_inner),
392            Self::Unhandled(_inner) => ::std::option::Option::Some(&*_inner.source),
393        }
394    }
395}
396impl ::std::fmt::Display for ListWorkflowRunsError {
397    fn fmt(&self, f: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
398        match self {
399            Self::AccessDeniedException(_inner) => _inner.fmt(f),
400            Self::ConflictException(_inner) => _inner.fmt(f),
401            Self::ResourceNotFoundException(_inner) => _inner.fmt(f),
402            Self::ServiceQuotaExceededException(_inner) => _inner.fmt(f),
403            Self::ThrottlingException(_inner) => _inner.fmt(f),
404            Self::ValidationException(_inner) => _inner.fmt(f),
405            Self::Unhandled(_inner) => {
406                if let ::std::option::Option::Some(code) = ::aws_smithy_types::error::metadata::ProvideErrorMetadata::code(self) {
407                    write!(f, "unhandled error ({code})")
408                } else {
409                    f.write_str("unhandled error")
410                }
411            }
412        }
413    }
414}
415impl ::aws_smithy_types::retry::ProvideErrorKind for ListWorkflowRunsError {
416    fn code(&self) -> ::std::option::Option<&str> {
417        ::aws_smithy_types::error::metadata::ProvideErrorMetadata::code(self)
418    }
419    fn retryable_error_kind(&self) -> ::std::option::Option<::aws_smithy_types::retry::ErrorKind> {
420        match self {
421            Self::ThrottlingException(inner) => ::std::option::Option::Some(inner.retryable_error_kind()),
422            _ => ::std::option::Option::None,
423        }
424    }
425}
426impl ::aws_smithy_types::error::metadata::ProvideErrorMetadata for ListWorkflowRunsError {
427    fn meta(&self) -> &::aws_smithy_types::error::ErrorMetadata {
428        match self {
429            Self::AccessDeniedException(_inner) => ::aws_smithy_types::error::metadata::ProvideErrorMetadata::meta(_inner),
430            Self::ConflictException(_inner) => ::aws_smithy_types::error::metadata::ProvideErrorMetadata::meta(_inner),
431            Self::ResourceNotFoundException(_inner) => ::aws_smithy_types::error::metadata::ProvideErrorMetadata::meta(_inner),
432            Self::ServiceQuotaExceededException(_inner) => ::aws_smithy_types::error::metadata::ProvideErrorMetadata::meta(_inner),
433            Self::ThrottlingException(_inner) => ::aws_smithy_types::error::metadata::ProvideErrorMetadata::meta(_inner),
434            Self::ValidationException(_inner) => ::aws_smithy_types::error::metadata::ProvideErrorMetadata::meta(_inner),
435            Self::Unhandled(_inner) => &_inner.meta,
436        }
437    }
438}
439impl ::aws_smithy_runtime_api::client::result::CreateUnhandledError for ListWorkflowRunsError {
440    fn create_unhandled_error(
441        source: ::std::boxed::Box<dyn ::std::error::Error + ::std::marker::Send + ::std::marker::Sync + 'static>,
442        meta: ::std::option::Option<::aws_smithy_types::error::ErrorMetadata>,
443    ) -> Self {
444        Self::Unhandled(crate::error::sealed_unhandled::Unhandled {
445            source,
446            meta: meta.unwrap_or_default(),
447        })
448    }
449}
450impl ::aws_types::request_id::RequestId for crate::operation::list_workflow_runs::ListWorkflowRunsError {
451    fn request_id(&self) -> Option<&str> {
452        self.meta().request_id()
453    }
454}
455
456pub use crate::operation::list_workflow_runs::_list_workflow_runs_input::ListWorkflowRunsInput;
457
458pub use crate::operation::list_workflow_runs::_list_workflow_runs_output::ListWorkflowRunsOutput;
459
460mod _list_workflow_runs_input;
461
462mod _list_workflow_runs_output;
463
464/// Builders
465pub mod builders;
466
467/// Paginator for this operation
468pub mod paginator;