aws_sdk_codepipeline/protocol_serde/
shape_create_pipeline.rs

1// Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
2#[allow(clippy::unnecessary_wraps)]
3pub fn de_create_pipeline_http_error(
4    _response_status: u16,
5    _response_headers: &::aws_smithy_runtime_api::http::Headers,
6    _response_body: &[u8],
7) -> std::result::Result<crate::operation::create_pipeline::CreatePipelineOutput, crate::operation::create_pipeline::CreatePipelineError> {
8    #[allow(unused_mut)]
9    let mut generic_builder = crate::protocol_serde::parse_http_error_metadata(_response_status, _response_headers, _response_body)
10        .map_err(crate::operation::create_pipeline::CreatePipelineError::unhandled)?;
11    generic_builder = ::aws_types::request_id::apply_request_id(generic_builder, _response_headers);
12    let generic = generic_builder.build();
13    let error_code = match generic.code() {
14        Some(code) => code,
15        None => return Err(crate::operation::create_pipeline::CreatePipelineError::unhandled(generic)),
16    };
17
18    let _error_message = generic.message().map(|msg| msg.to_owned());
19    Err(match error_code {
20        "ConcurrentModificationException" => crate::operation::create_pipeline::CreatePipelineError::ConcurrentModificationException({
21            #[allow(unused_mut)]
22            let mut tmp = {
23                #[allow(unused_mut)]
24                let mut output = crate::types::error::builders::ConcurrentModificationExceptionBuilder::default();
25                output = crate::protocol_serde::shape_concurrent_modification_exception::de_concurrent_modification_exception_json_err(
26                    _response_body,
27                    output,
28                )
29                .map_err(crate::operation::create_pipeline::CreatePipelineError::unhandled)?;
30                let output = output.meta(generic);
31                output.build()
32            };
33            if tmp.message.is_none() {
34                tmp.message = _error_message;
35            }
36            tmp
37        }),
38        "InvalidActionDeclarationException" => crate::operation::create_pipeline::CreatePipelineError::InvalidActionDeclarationException({
39            #[allow(unused_mut)]
40            let mut tmp = {
41                #[allow(unused_mut)]
42                let mut output = crate::types::error::builders::InvalidActionDeclarationExceptionBuilder::default();
43                output = crate::protocol_serde::shape_invalid_action_declaration_exception::de_invalid_action_declaration_exception_json_err(
44                    _response_body,
45                    output,
46                )
47                .map_err(crate::operation::create_pipeline::CreatePipelineError::unhandled)?;
48                let output = output.meta(generic);
49                output.build()
50            };
51            if tmp.message.is_none() {
52                tmp.message = _error_message;
53            }
54            tmp
55        }),
56        "InvalidBlockerDeclarationException" => crate::operation::create_pipeline::CreatePipelineError::InvalidBlockerDeclarationException({
57            #[allow(unused_mut)]
58            let mut tmp = {
59                #[allow(unused_mut)]
60                let mut output = crate::types::error::builders::InvalidBlockerDeclarationExceptionBuilder::default();
61                output = crate::protocol_serde::shape_invalid_blocker_declaration_exception::de_invalid_blocker_declaration_exception_json_err(
62                    _response_body,
63                    output,
64                )
65                .map_err(crate::operation::create_pipeline::CreatePipelineError::unhandled)?;
66                let output = output.meta(generic);
67                output.build()
68            };
69            if tmp.message.is_none() {
70                tmp.message = _error_message;
71            }
72            tmp
73        }),
74        "InvalidStageDeclarationException" => crate::operation::create_pipeline::CreatePipelineError::InvalidStageDeclarationException({
75            #[allow(unused_mut)]
76            let mut tmp = {
77                #[allow(unused_mut)]
78                let mut output = crate::types::error::builders::InvalidStageDeclarationExceptionBuilder::default();
79                output = crate::protocol_serde::shape_invalid_stage_declaration_exception::de_invalid_stage_declaration_exception_json_err(
80                    _response_body,
81                    output,
82                )
83                .map_err(crate::operation::create_pipeline::CreatePipelineError::unhandled)?;
84                let output = output.meta(generic);
85                output.build()
86            };
87            if tmp.message.is_none() {
88                tmp.message = _error_message;
89            }
90            tmp
91        }),
92        "InvalidStructureException" => crate::operation::create_pipeline::CreatePipelineError::InvalidStructureException({
93            #[allow(unused_mut)]
94            let mut tmp = {
95                #[allow(unused_mut)]
96                let mut output = crate::types::error::builders::InvalidStructureExceptionBuilder::default();
97                output = crate::protocol_serde::shape_invalid_structure_exception::de_invalid_structure_exception_json_err(_response_body, output)
98                    .map_err(crate::operation::create_pipeline::CreatePipelineError::unhandled)?;
99                let output = output.meta(generic);
100                output.build()
101            };
102            if tmp.message.is_none() {
103                tmp.message = _error_message;
104            }
105            tmp
106        }),
107        "InvalidTagsException" => crate::operation::create_pipeline::CreatePipelineError::InvalidTagsException({
108            #[allow(unused_mut)]
109            let mut tmp = {
110                #[allow(unused_mut)]
111                let mut output = crate::types::error::builders::InvalidTagsExceptionBuilder::default();
112                output = crate::protocol_serde::shape_invalid_tags_exception::de_invalid_tags_exception_json_err(_response_body, output)
113                    .map_err(crate::operation::create_pipeline::CreatePipelineError::unhandled)?;
114                let output = output.meta(generic);
115                output.build()
116            };
117            if tmp.message.is_none() {
118                tmp.message = _error_message;
119            }
120            tmp
121        }),
122        "LimitExceededException" => crate::operation::create_pipeline::CreatePipelineError::LimitExceededException({
123            #[allow(unused_mut)]
124            let mut tmp = {
125                #[allow(unused_mut)]
126                let mut output = crate::types::error::builders::LimitExceededExceptionBuilder::default();
127                output = crate::protocol_serde::shape_limit_exceeded_exception::de_limit_exceeded_exception_json_err(_response_body, output)
128                    .map_err(crate::operation::create_pipeline::CreatePipelineError::unhandled)?;
129                let output = output.meta(generic);
130                output.build()
131            };
132            if tmp.message.is_none() {
133                tmp.message = _error_message;
134            }
135            tmp
136        }),
137        "PipelineNameInUseException" => crate::operation::create_pipeline::CreatePipelineError::PipelineNameInUseException({
138            #[allow(unused_mut)]
139            let mut tmp = {
140                #[allow(unused_mut)]
141                let mut output = crate::types::error::builders::PipelineNameInUseExceptionBuilder::default();
142                output =
143                    crate::protocol_serde::shape_pipeline_name_in_use_exception::de_pipeline_name_in_use_exception_json_err(_response_body, output)
144                        .map_err(crate::operation::create_pipeline::CreatePipelineError::unhandled)?;
145                let output = output.meta(generic);
146                output.build()
147            };
148            if tmp.message.is_none() {
149                tmp.message = _error_message;
150            }
151            tmp
152        }),
153        "TooManyTagsException" => crate::operation::create_pipeline::CreatePipelineError::TooManyTagsException({
154            #[allow(unused_mut)]
155            let mut tmp = {
156                #[allow(unused_mut)]
157                let mut output = crate::types::error::builders::TooManyTagsExceptionBuilder::default();
158                output = crate::protocol_serde::shape_too_many_tags_exception::de_too_many_tags_exception_json_err(_response_body, output)
159                    .map_err(crate::operation::create_pipeline::CreatePipelineError::unhandled)?;
160                let output = output.meta(generic);
161                output.build()
162            };
163            if tmp.message.is_none() {
164                tmp.message = _error_message;
165            }
166            tmp
167        }),
168        "ValidationException" => crate::operation::create_pipeline::CreatePipelineError::ValidationException({
169            #[allow(unused_mut)]
170            let mut tmp = {
171                #[allow(unused_mut)]
172                let mut output = crate::types::error::builders::ValidationExceptionBuilder::default();
173                output = crate::protocol_serde::shape_validation_exception::de_validation_exception_json_err(_response_body, output)
174                    .map_err(crate::operation::create_pipeline::CreatePipelineError::unhandled)?;
175                let output = output.meta(generic);
176                output.build()
177            };
178            if tmp.message.is_none() {
179                tmp.message = _error_message;
180            }
181            tmp
182        }),
183        _ => crate::operation::create_pipeline::CreatePipelineError::generic(generic),
184    })
185}
186
187#[allow(clippy::unnecessary_wraps)]
188pub fn de_create_pipeline_http_response(
189    _response_status: u16,
190    _response_headers: &::aws_smithy_runtime_api::http::Headers,
191    _response_body: &[u8],
192) -> std::result::Result<crate::operation::create_pipeline::CreatePipelineOutput, crate::operation::create_pipeline::CreatePipelineError> {
193    Ok({
194        #[allow(unused_mut)]
195        let mut output = crate::operation::create_pipeline::builders::CreatePipelineOutputBuilder::default();
196        output = crate::protocol_serde::shape_create_pipeline::de_create_pipeline(_response_body, output)
197            .map_err(crate::operation::create_pipeline::CreatePipelineError::unhandled)?;
198        output._set_request_id(::aws_types::request_id::RequestId::request_id(_response_headers).map(str::to_string));
199        output.build()
200    })
201}
202
203pub fn ser_create_pipeline_input(
204    input: &crate::operation::create_pipeline::CreatePipelineInput,
205) -> ::std::result::Result<::aws_smithy_types::body::SdkBody, ::aws_smithy_types::error::operation::SerializationError> {
206    let mut out = String::new();
207    let mut object = ::aws_smithy_json::serialize::JsonObjectWriter::new(&mut out);
208    crate::protocol_serde::shape_create_pipeline_input::ser_create_pipeline_input_input(&mut object, input)?;
209    object.finish();
210    Ok(::aws_smithy_types::body::SdkBody::from(out))
211}
212
213pub(crate) fn de_create_pipeline(
214    value: &[u8],
215    mut builder: crate::operation::create_pipeline::builders::CreatePipelineOutputBuilder,
216) -> ::std::result::Result<
217    crate::operation::create_pipeline::builders::CreatePipelineOutputBuilder,
218    ::aws_smithy_json::deserialize::error::DeserializeError,
219> {
220    let mut tokens_owned = ::aws_smithy_json::deserialize::json_token_iter(crate::protocol_serde::or_empty_doc(value)).peekable();
221    let tokens = &mut tokens_owned;
222    ::aws_smithy_json::deserialize::token::expect_start_object(tokens.next())?;
223    loop {
224        match tokens.next().transpose()? {
225            Some(::aws_smithy_json::deserialize::Token::EndObject { .. }) => break,
226            Some(::aws_smithy_json::deserialize::Token::ObjectKey { key, .. }) => match key.to_unescaped()?.as_ref() {
227                "pipeline" => {
228                    builder = builder.set_pipeline(crate::protocol_serde::shape_pipeline_declaration::de_pipeline_declaration(tokens)?);
229                }
230                "tags" => {
231                    builder = builder.set_tags(crate::protocol_serde::shape_tag_list::de_tag_list(tokens)?);
232                }
233                _ => ::aws_smithy_json::deserialize::token::skip_value(tokens)?,
234            },
235            other => {
236                return Err(::aws_smithy_json::deserialize::error::DeserializeError::custom(format!(
237                    "expected object key or end object, found: {:?}",
238                    other
239                )))
240            }
241        }
242    }
243    if tokens.next().is_some() {
244        return Err(::aws_smithy_json::deserialize::error::DeserializeError::custom(
245            "found more JSON tokens after completing parsing",
246        ));
247    }
248    Ok(builder)
249}