aws_sdk_sso/operation/logout/
_logout_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, ::std::fmt::Debug)]
5pub struct LogoutOutput  {
6    _request_id: Option<String>,
7}
8static LOGOUTOUTPUT_SCHEMA_ID: ::aws_smithy_schema::ShapeId = ::aws_smithy_schema::ShapeId::from_static("com.amazonaws.sso.synthetic#LogoutOutput", "com.amazonaws.sso.synthetic", "LogoutOutput");
9static LOGOUTOUTPUT_MEMBER__REQUEST_ID: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_member(
10                            ::aws_smithy_schema::ShapeId::from_static(
11                                "synthetic#request_id",
12                                "synthetic",
13                                "request_id",
14                            ),
15                            ::aws_smithy_schema::ShapeType::String,
16                            "request_id",
17                            0,
18                        ).with_http_header("x-amzn-requestid");
19static LOGOUTOUTPUT_SCHEMA: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_struct(
20                            LOGOUTOUTPUT_SCHEMA_ID,
21                            ::aws_smithy_schema::ShapeType::Structure,
22                            &[&LOGOUTOUTPUT_MEMBER__REQUEST_ID],
23                        );
24impl LogoutOutput {
25                /// The schema for this shape.
26                pub const SCHEMA: &'static ::aws_smithy_schema::Schema = &LOGOUTOUTPUT_SCHEMA;
27            }
28impl ::aws_smithy_schema::serde::SerializableStruct for LogoutOutput {
29                #[allow(unused_variables, clippy::diverging_sub_expression)]
30                fn serialize_members(&self, ser: &mut dyn ::aws_smithy_schema::serde::ShapeSerializer) -> ::std::result::Result<(), ::aws_smithy_schema::serde::SerdeError> {
31                    
32                    Ok(())
33                }
34            }
35impl LogoutOutput {
36                /// Deserializes this structure from a [`ShapeDeserializer`].
37                pub fn deserialize(deserializer: &mut dyn ::aws_smithy_schema::serde::ShapeDeserializer) -> ::std::result::Result<Self, ::aws_smithy_schema::serde::SerdeError> {
38                    #[allow(unused_variables, unused_mut)]
39                    let mut builder = Self::builder();
40                    #[allow(unused_variables, unreachable_code, clippy::single_match, clippy::match_single_binding, clippy::diverging_sub_expression)]
41                    deserializer.read_struct(&LOGOUTOUTPUT_SCHEMA, &mut |member, deser| {
42                        match member.member_index() {
43                            Some(0) => {
44                                builder._request_id = Some(deser.read_string(member)?);
45                            }
46                            _ => {}
47                        }
48                        Ok(())
49                    })?;
50                    Ok(builder.build())
51                }
52            }
53impl LogoutOutput {
54                /// Deserializes this structure from a body deserializer and HTTP response headers.
55                /// Header-bound members are read directly from headers, avoiding runtime
56                /// member iteration overhead. Body members are read via the deserializer.
57                pub fn deserialize_with_response(
58                    _deserializer: &mut dyn ::aws_smithy_schema::serde::ShapeDeserializer,
59                    headers: &::aws_smithy_runtime_api::http::Headers,
60                    _status: u16,
61                    _body: &[u8],
62                ) -> ::std::result::Result<Self, ::aws_smithy_schema::serde::SerdeError> {
63                    #[allow(unused_variables, unused_mut)]
64                    let mut builder = Self::builder();
65if let Some(val) = headers.get("x-amzn-requestid") {
66                    builder._request_id = Some(val.to_string());
67                }
68Ok(builder.build())
69                    }
70                    }
71impl ::aws_types::request_id::RequestId for LogoutOutput {
72                                    fn request_id(&self) -> Option<&str> {
73                                        self._request_id.as_deref()
74                                    }
75                                }
76impl LogoutOutput {
77    /// Creates a new builder-style object to manufacture [`LogoutOutput`](crate::operation::logout::LogoutOutput).
78    pub fn builder() -> crate::operation::logout::builders::LogoutOutputBuilder {
79        crate::operation::logout::builders::LogoutOutputBuilder::default()
80    }
81}
82
83/// A builder for [`LogoutOutput`](crate::operation::logout::LogoutOutput).
84#[derive(::std::clone::Clone, ::std::cmp::PartialEq, ::std::default::Default, ::std::fmt::Debug)]
85#[non_exhaustive]
86pub struct LogoutOutputBuilder {
87    _request_id: Option<String>,
88}
89impl LogoutOutputBuilder {
90    pub(crate) fn _request_id(mut self, request_id: impl Into<String>) -> Self {
91                                        self._request_id = Some(request_id.into());
92                                        self
93                                    }
94    
95                                    pub(crate) fn _set_request_id(&mut self, request_id: Option<String>) -> &mut Self {
96                                        self._request_id = request_id;
97                                        self
98                                    }
99    /// Consumes the builder and constructs a [`LogoutOutput`](crate::operation::logout::LogoutOutput).
100    pub fn build(self) -> crate::operation::logout::LogoutOutput {
101        crate::operation::logout::LogoutOutput {
102            _request_id: self._request_id,
103        }
104    }
105}
106