aws_sdk_codedeploy/protocol_serde/
shape_create_deployment_group.rs

1// Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
2#[allow(clippy::unnecessary_wraps)]
3pub fn de_create_deployment_group_http_error(
4    _response_status: u16,
5    _response_headers: &::aws_smithy_runtime_api::http::Headers,
6    _response_body: &[u8],
7) -> std::result::Result<
8    crate::operation::create_deployment_group::CreateDeploymentGroupOutput,
9    crate::operation::create_deployment_group::CreateDeploymentGroupError,
10> {
11    #[allow(unused_mut)]
12    let mut generic_builder = crate::protocol_serde::parse_http_error_metadata(_response_status, _response_headers, _response_body)
13        .map_err(crate::operation::create_deployment_group::CreateDeploymentGroupError::unhandled)?;
14    generic_builder = ::aws_types::request_id::apply_request_id(generic_builder, _response_headers);
15    let generic = generic_builder.build();
16    let error_code = match generic.code() {
17        Some(code) => code,
18        None => return Err(crate::operation::create_deployment_group::CreateDeploymentGroupError::unhandled(generic)),
19    };
20
21    let _error_message = generic.message().map(|msg| msg.to_owned());
22    Err(match error_code {
23        "AlarmsLimitExceededException" => crate::operation::create_deployment_group::CreateDeploymentGroupError::AlarmsLimitExceededException({
24            #[allow(unused_mut)]
25            let mut tmp = {
26                #[allow(unused_mut)]
27                let mut output = crate::types::error::builders::AlarmsLimitExceededExceptionBuilder::default();
28                output =
29                    crate::protocol_serde::shape_alarms_limit_exceeded_exception::de_alarms_limit_exceeded_exception_json_err(_response_body, output)
30                        .map_err(crate::operation::create_deployment_group::CreateDeploymentGroupError::unhandled)?;
31                let output = output.meta(generic);
32                output.build()
33            };
34            if tmp.message.is_none() {
35                tmp.message = _error_message;
36            }
37            tmp
38        }),
39        "ApplicationDoesNotExistException" => {
40            crate::operation::create_deployment_group::CreateDeploymentGroupError::ApplicationDoesNotExistException({
41                #[allow(unused_mut)]
42                let mut tmp = {
43                    #[allow(unused_mut)]
44                    let mut output = crate::types::error::builders::ApplicationDoesNotExistExceptionBuilder::default();
45                    output = crate::protocol_serde::shape_application_does_not_exist_exception::de_application_does_not_exist_exception_json_err(
46                        _response_body,
47                        output,
48                    )
49                    .map_err(crate::operation::create_deployment_group::CreateDeploymentGroupError::unhandled)?;
50                    let output = output.meta(generic);
51                    output.build()
52                };
53                if tmp.message.is_none() {
54                    tmp.message = _error_message;
55                }
56                tmp
57            })
58        }
59        "ApplicationNameRequiredException" => {
60            crate::operation::create_deployment_group::CreateDeploymentGroupError::ApplicationNameRequiredException({
61                #[allow(unused_mut)]
62                let mut tmp = {
63                    #[allow(unused_mut)]
64                    let mut output = crate::types::error::builders::ApplicationNameRequiredExceptionBuilder::default();
65                    output = crate::protocol_serde::shape_application_name_required_exception::de_application_name_required_exception_json_err(
66                        _response_body,
67                        output,
68                    )
69                    .map_err(crate::operation::create_deployment_group::CreateDeploymentGroupError::unhandled)?;
70                    let output = output.meta(generic);
71                    output.build()
72                };
73                if tmp.message.is_none() {
74                    tmp.message = _error_message;
75                }
76                tmp
77            })
78        }
79        "DeploymentConfigDoesNotExistException" => {
80            crate::operation::create_deployment_group::CreateDeploymentGroupError::DeploymentConfigDoesNotExistException({
81                #[allow(unused_mut)]
82                let mut tmp = {
83                    #[allow(unused_mut)]
84                    let mut output = crate::types::error::builders::DeploymentConfigDoesNotExistExceptionBuilder::default();
85                    output = crate::protocol_serde::shape_deployment_config_does_not_exist_exception::de_deployment_config_does_not_exist_exception_json_err(_response_body, output).map_err(crate::operation::create_deployment_group::CreateDeploymentGroupError::unhandled)?;
86                    let output = output.meta(generic);
87                    output.build()
88                };
89                if tmp.message.is_none() {
90                    tmp.message = _error_message;
91                }
92                tmp
93            })
94        }
95        "DeploymentGroupAlreadyExistsException" => {
96            crate::operation::create_deployment_group::CreateDeploymentGroupError::DeploymentGroupAlreadyExistsException({
97                #[allow(unused_mut)]
98                let mut tmp = {
99                    #[allow(unused_mut)]
100                    let mut output = crate::types::error::builders::DeploymentGroupAlreadyExistsExceptionBuilder::default();
101                    output = crate::protocol_serde::shape_deployment_group_already_exists_exception::de_deployment_group_already_exists_exception_json_err(_response_body, output).map_err(crate::operation::create_deployment_group::CreateDeploymentGroupError::unhandled)?;
102                    let output = output.meta(generic);
103                    output.build()
104                };
105                if tmp.message.is_none() {
106                    tmp.message = _error_message;
107                }
108                tmp
109            })
110        }
111        "DeploymentGroupLimitExceededException" => {
112            crate::operation::create_deployment_group::CreateDeploymentGroupError::DeploymentGroupLimitExceededException({
113                #[allow(unused_mut)]
114                let mut tmp = {
115                    #[allow(unused_mut)]
116                    let mut output = crate::types::error::builders::DeploymentGroupLimitExceededExceptionBuilder::default();
117                    output = crate::protocol_serde::shape_deployment_group_limit_exceeded_exception::de_deployment_group_limit_exceeded_exception_json_err(_response_body, output).map_err(crate::operation::create_deployment_group::CreateDeploymentGroupError::unhandled)?;
118                    let output = output.meta(generic);
119                    output.build()
120                };
121                if tmp.message.is_none() {
122                    tmp.message = _error_message;
123                }
124                tmp
125            })
126        }
127        "DeploymentGroupNameRequiredException" => {
128            crate::operation::create_deployment_group::CreateDeploymentGroupError::DeploymentGroupNameRequiredException({
129                #[allow(unused_mut)]
130                let mut tmp = {
131                    #[allow(unused_mut)]
132                    let mut output = crate::types::error::builders::DeploymentGroupNameRequiredExceptionBuilder::default();
133                    output =
134                        crate::protocol_serde::shape_deployment_group_name_required_exception::de_deployment_group_name_required_exception_json_err(
135                            _response_body,
136                            output,
137                        )
138                        .map_err(crate::operation::create_deployment_group::CreateDeploymentGroupError::unhandled)?;
139                    let output = output.meta(generic);
140                    output.build()
141                };
142                if tmp.message.is_none() {
143                    tmp.message = _error_message;
144                }
145                tmp
146            })
147        }
148        "ECSServiceMappingLimitExceededException" => {
149            crate::operation::create_deployment_group::CreateDeploymentGroupError::EcsServiceMappingLimitExceededException({
150                #[allow(unused_mut)]
151                let mut tmp = {
152                    #[allow(unused_mut)]
153                    let mut output = crate::types::error::builders::EcsServiceMappingLimitExceededExceptionBuilder::default();
154                    output = crate::protocol_serde::shape_ecs_service_mapping_limit_exceeded_exception::de_ecs_service_mapping_limit_exceeded_exception_json_err(_response_body, output).map_err(crate::operation::create_deployment_group::CreateDeploymentGroupError::unhandled)?;
155                    let output = output.meta(generic);
156                    output.build()
157                };
158                if tmp.message.is_none() {
159                    tmp.message = _error_message;
160                }
161                tmp
162            })
163        }
164        "InvalidAlarmConfigException" => crate::operation::create_deployment_group::CreateDeploymentGroupError::InvalidAlarmConfigException({
165            #[allow(unused_mut)]
166            let mut tmp = {
167                #[allow(unused_mut)]
168                let mut output = crate::types::error::builders::InvalidAlarmConfigExceptionBuilder::default();
169                output =
170                    crate::protocol_serde::shape_invalid_alarm_config_exception::de_invalid_alarm_config_exception_json_err(_response_body, output)
171                        .map_err(crate::operation::create_deployment_group::CreateDeploymentGroupError::unhandled)?;
172                let output = output.meta(generic);
173                output.build()
174            };
175            if tmp.message.is_none() {
176                tmp.message = _error_message;
177            }
178            tmp
179        }),
180        "InvalidApplicationNameException" => {
181            crate::operation::create_deployment_group::CreateDeploymentGroupError::InvalidApplicationNameException({
182                #[allow(unused_mut)]
183                let mut tmp = {
184                    #[allow(unused_mut)]
185                    let mut output = crate::types::error::builders::InvalidApplicationNameExceptionBuilder::default();
186                    output = crate::protocol_serde::shape_invalid_application_name_exception::de_invalid_application_name_exception_json_err(
187                        _response_body,
188                        output,
189                    )
190                    .map_err(crate::operation::create_deployment_group::CreateDeploymentGroupError::unhandled)?;
191                    let output = output.meta(generic);
192                    output.build()
193                };
194                if tmp.message.is_none() {
195                    tmp.message = _error_message;
196                }
197                tmp
198            })
199        }
200        "InvalidAutoRollbackConfigException" => {
201            crate::operation::create_deployment_group::CreateDeploymentGroupError::InvalidAutoRollbackConfigException({
202                #[allow(unused_mut)]
203                let mut tmp = {
204                    #[allow(unused_mut)]
205                    let mut output = crate::types::error::builders::InvalidAutoRollbackConfigExceptionBuilder::default();
206                    output = crate::protocol_serde::shape_invalid_auto_rollback_config_exception::de_invalid_auto_rollback_config_exception_json_err(
207                        _response_body,
208                        output,
209                    )
210                    .map_err(crate::operation::create_deployment_group::CreateDeploymentGroupError::unhandled)?;
211                    let output = output.meta(generic);
212                    output.build()
213                };
214                if tmp.message.is_none() {
215                    tmp.message = _error_message;
216                }
217                tmp
218            })
219        }
220        "InvalidAutoScalingGroupException" => {
221            crate::operation::create_deployment_group::CreateDeploymentGroupError::InvalidAutoScalingGroupException({
222                #[allow(unused_mut)]
223                let mut tmp = {
224                    #[allow(unused_mut)]
225                    let mut output = crate::types::error::builders::InvalidAutoScalingGroupExceptionBuilder::default();
226                    output = crate::protocol_serde::shape_invalid_auto_scaling_group_exception::de_invalid_auto_scaling_group_exception_json_err(
227                        _response_body,
228                        output,
229                    )
230                    .map_err(crate::operation::create_deployment_group::CreateDeploymentGroupError::unhandled)?;
231                    let output = output.meta(generic);
232                    output.build()
233                };
234                if tmp.message.is_none() {
235                    tmp.message = _error_message;
236                }
237                tmp
238            })
239        }
240        "InvalidBlueGreenDeploymentConfigurationException" => {
241            crate::operation::create_deployment_group::CreateDeploymentGroupError::InvalidBlueGreenDeploymentConfigurationException({
242                #[allow(unused_mut)]
243                let mut tmp = {
244                    #[allow(unused_mut)]
245                    let mut output = crate::types::error::builders::InvalidBlueGreenDeploymentConfigurationExceptionBuilder::default();
246                    output = crate::protocol_serde::shape_invalid_blue_green_deployment_configuration_exception::de_invalid_blue_green_deployment_configuration_exception_json_err(_response_body, output).map_err(crate::operation::create_deployment_group::CreateDeploymentGroupError::unhandled)?;
247                    let output = output.meta(generic);
248                    output.build()
249                };
250                if tmp.message.is_none() {
251                    tmp.message = _error_message;
252                }
253                tmp
254            })
255        }
256        "InvalidDeploymentConfigNameException" => {
257            crate::operation::create_deployment_group::CreateDeploymentGroupError::InvalidDeploymentConfigNameException({
258                #[allow(unused_mut)]
259                let mut tmp = {
260                    #[allow(unused_mut)]
261                    let mut output = crate::types::error::builders::InvalidDeploymentConfigNameExceptionBuilder::default();
262                    output =
263                        crate::protocol_serde::shape_invalid_deployment_config_name_exception::de_invalid_deployment_config_name_exception_json_err(
264                            _response_body,
265                            output,
266                        )
267                        .map_err(crate::operation::create_deployment_group::CreateDeploymentGroupError::unhandled)?;
268                    let output = output.meta(generic);
269                    output.build()
270                };
271                if tmp.message.is_none() {
272                    tmp.message = _error_message;
273                }
274                tmp
275            })
276        }
277        "InvalidDeploymentGroupNameException" => {
278            crate::operation::create_deployment_group::CreateDeploymentGroupError::InvalidDeploymentGroupNameException({
279                #[allow(unused_mut)]
280                let mut tmp = {
281                    #[allow(unused_mut)]
282                    let mut output = crate::types::error::builders::InvalidDeploymentGroupNameExceptionBuilder::default();
283                    output =
284                        crate::protocol_serde::shape_invalid_deployment_group_name_exception::de_invalid_deployment_group_name_exception_json_err(
285                            _response_body,
286                            output,
287                        )
288                        .map_err(crate::operation::create_deployment_group::CreateDeploymentGroupError::unhandled)?;
289                    let output = output.meta(generic);
290                    output.build()
291                };
292                if tmp.message.is_none() {
293                    tmp.message = _error_message;
294                }
295                tmp
296            })
297        }
298        "InvalidDeploymentStyleException" => {
299            crate::operation::create_deployment_group::CreateDeploymentGroupError::InvalidDeploymentStyleException({
300                #[allow(unused_mut)]
301                let mut tmp = {
302                    #[allow(unused_mut)]
303                    let mut output = crate::types::error::builders::InvalidDeploymentStyleExceptionBuilder::default();
304                    output = crate::protocol_serde::shape_invalid_deployment_style_exception::de_invalid_deployment_style_exception_json_err(
305                        _response_body,
306                        output,
307                    )
308                    .map_err(crate::operation::create_deployment_group::CreateDeploymentGroupError::unhandled)?;
309                    let output = output.meta(generic);
310                    output.build()
311                };
312                if tmp.message.is_none() {
313                    tmp.message = _error_message;
314                }
315                tmp
316            })
317        }
318        "InvalidEC2TagCombinationException" => {
319            crate::operation::create_deployment_group::CreateDeploymentGroupError::InvalidEc2TagCombinationException({
320                #[allow(unused_mut)]
321                let mut tmp = {
322                    #[allow(unused_mut)]
323                    let mut output = crate::types::error::builders::InvalidEc2TagCombinationExceptionBuilder::default();
324                    output = crate::protocol_serde::shape_invalid_ec2_tag_combination_exception::de_invalid_ec2_tag_combination_exception_json_err(
325                        _response_body,
326                        output,
327                    )
328                    .map_err(crate::operation::create_deployment_group::CreateDeploymentGroupError::unhandled)?;
329                    let output = output.meta(generic);
330                    output.build()
331                };
332                if tmp.message.is_none() {
333                    tmp.message = _error_message;
334                }
335                tmp
336            })
337        }
338        "InvalidEC2TagException" => crate::operation::create_deployment_group::CreateDeploymentGroupError::InvalidEc2TagException({
339            #[allow(unused_mut)]
340            let mut tmp = {
341                #[allow(unused_mut)]
342                let mut output = crate::types::error::builders::InvalidEc2TagExceptionBuilder::default();
343                output = crate::protocol_serde::shape_invalid_ec2_tag_exception::de_invalid_ec2_tag_exception_json_err(_response_body, output)
344                    .map_err(crate::operation::create_deployment_group::CreateDeploymentGroupError::unhandled)?;
345                let output = output.meta(generic);
346                output.build()
347            };
348            if tmp.message.is_none() {
349                tmp.message = _error_message;
350            }
351            tmp
352        }),
353        "InvalidECSServiceException" => crate::operation::create_deployment_group::CreateDeploymentGroupError::InvalidEcsServiceException({
354            #[allow(unused_mut)]
355            let mut tmp = {
356                #[allow(unused_mut)]
357                let mut output = crate::types::error::builders::InvalidEcsServiceExceptionBuilder::default();
358                output =
359                    crate::protocol_serde::shape_invalid_ecs_service_exception::de_invalid_ecs_service_exception_json_err(_response_body, output)
360                        .map_err(crate::operation::create_deployment_group::CreateDeploymentGroupError::unhandled)?;
361                let output = output.meta(generic);
362                output.build()
363            };
364            if tmp.message.is_none() {
365                tmp.message = _error_message;
366            }
367            tmp
368        }),
369        "InvalidInputException" => crate::operation::create_deployment_group::CreateDeploymentGroupError::InvalidInputException({
370            #[allow(unused_mut)]
371            let mut tmp = {
372                #[allow(unused_mut)]
373                let mut output = crate::types::error::builders::InvalidInputExceptionBuilder::default();
374                output = crate::protocol_serde::shape_invalid_input_exception::de_invalid_input_exception_json_err(_response_body, output)
375                    .map_err(crate::operation::create_deployment_group::CreateDeploymentGroupError::unhandled)?;
376                let output = output.meta(generic);
377                output.build()
378            };
379            if tmp.message.is_none() {
380                tmp.message = _error_message;
381            }
382            tmp
383        }),
384        "InvalidLoadBalancerInfoException" => {
385            crate::operation::create_deployment_group::CreateDeploymentGroupError::InvalidLoadBalancerInfoException({
386                #[allow(unused_mut)]
387                let mut tmp = {
388                    #[allow(unused_mut)]
389                    let mut output = crate::types::error::builders::InvalidLoadBalancerInfoExceptionBuilder::default();
390                    output = crate::protocol_serde::shape_invalid_load_balancer_info_exception::de_invalid_load_balancer_info_exception_json_err(
391                        _response_body,
392                        output,
393                    )
394                    .map_err(crate::operation::create_deployment_group::CreateDeploymentGroupError::unhandled)?;
395                    let output = output.meta(generic);
396                    output.build()
397                };
398                if tmp.message.is_none() {
399                    tmp.message = _error_message;
400                }
401                tmp
402            })
403        }
404        "InvalidOnPremisesTagCombinationException" => {
405            crate::operation::create_deployment_group::CreateDeploymentGroupError::InvalidOnPremisesTagCombinationException({
406                #[allow(unused_mut)]
407                let mut tmp = {
408                    #[allow(unused_mut)]
409                    let mut output = crate::types::error::builders::InvalidOnPremisesTagCombinationExceptionBuilder::default();
410                    output = crate::protocol_serde::shape_invalid_on_premises_tag_combination_exception::de_invalid_on_premises_tag_combination_exception_json_err(_response_body, output).map_err(crate::operation::create_deployment_group::CreateDeploymentGroupError::unhandled)?;
411                    let output = output.meta(generic);
412                    output.build()
413                };
414                if tmp.message.is_none() {
415                    tmp.message = _error_message;
416                }
417                tmp
418            })
419        }
420        "InvalidRoleException" => crate::operation::create_deployment_group::CreateDeploymentGroupError::InvalidRoleException({
421            #[allow(unused_mut)]
422            let mut tmp = {
423                #[allow(unused_mut)]
424                let mut output = crate::types::error::builders::InvalidRoleExceptionBuilder::default();
425                output = crate::protocol_serde::shape_invalid_role_exception::de_invalid_role_exception_json_err(_response_body, output)
426                    .map_err(crate::operation::create_deployment_group::CreateDeploymentGroupError::unhandled)?;
427                let output = output.meta(generic);
428                output.build()
429            };
430            if tmp.message.is_none() {
431                tmp.message = _error_message;
432            }
433            tmp
434        }),
435        "InvalidTagException" => crate::operation::create_deployment_group::CreateDeploymentGroupError::InvalidTagException({
436            #[allow(unused_mut)]
437            let mut tmp = {
438                #[allow(unused_mut)]
439                let mut output = crate::types::error::builders::InvalidTagExceptionBuilder::default();
440                output = crate::protocol_serde::shape_invalid_tag_exception::de_invalid_tag_exception_json_err(_response_body, output)
441                    .map_err(crate::operation::create_deployment_group::CreateDeploymentGroupError::unhandled)?;
442                let output = output.meta(generic);
443                output.build()
444            };
445            if tmp.message.is_none() {
446                tmp.message = _error_message;
447            }
448            tmp
449        }),
450        "InvalidTagsToAddException" => crate::operation::create_deployment_group::CreateDeploymentGroupError::InvalidTagsToAddException({
451            #[allow(unused_mut)]
452            let mut tmp = {
453                #[allow(unused_mut)]
454                let mut output = crate::types::error::builders::InvalidTagsToAddExceptionBuilder::default();
455                output =
456                    crate::protocol_serde::shape_invalid_tags_to_add_exception::de_invalid_tags_to_add_exception_json_err(_response_body, output)
457                        .map_err(crate::operation::create_deployment_group::CreateDeploymentGroupError::unhandled)?;
458                let output = output.meta(generic);
459                output.build()
460            };
461            if tmp.message.is_none() {
462                tmp.message = _error_message;
463            }
464            tmp
465        }),
466        "InvalidTargetGroupPairException" => {
467            crate::operation::create_deployment_group::CreateDeploymentGroupError::InvalidTargetGroupPairException({
468                #[allow(unused_mut)]
469                let mut tmp = {
470                    #[allow(unused_mut)]
471                    let mut output = crate::types::error::builders::InvalidTargetGroupPairExceptionBuilder::default();
472                    output = crate::protocol_serde::shape_invalid_target_group_pair_exception::de_invalid_target_group_pair_exception_json_err(
473                        _response_body,
474                        output,
475                    )
476                    .map_err(crate::operation::create_deployment_group::CreateDeploymentGroupError::unhandled)?;
477                    let output = output.meta(generic);
478                    output.build()
479                };
480                if tmp.message.is_none() {
481                    tmp.message = _error_message;
482                }
483                tmp
484            })
485        }
486        "InvalidTrafficRoutingConfigurationException" => {
487            crate::operation::create_deployment_group::CreateDeploymentGroupError::InvalidTrafficRoutingConfigurationException({
488                #[allow(unused_mut)]
489                let mut tmp = {
490                    #[allow(unused_mut)]
491                    let mut output = crate::types::error::builders::InvalidTrafficRoutingConfigurationExceptionBuilder::default();
492                    output = crate::protocol_serde::shape_invalid_traffic_routing_configuration_exception::de_invalid_traffic_routing_configuration_exception_json_err(_response_body, output).map_err(crate::operation::create_deployment_group::CreateDeploymentGroupError::unhandled)?;
493                    let output = output.meta(generic);
494                    output.build()
495                };
496                if tmp.message.is_none() {
497                    tmp.message = _error_message;
498                }
499                tmp
500            })
501        }
502        "InvalidTriggerConfigException" => crate::operation::create_deployment_group::CreateDeploymentGroupError::InvalidTriggerConfigException({
503            #[allow(unused_mut)]
504            let mut tmp = {
505                #[allow(unused_mut)]
506                let mut output = crate::types::error::builders::InvalidTriggerConfigExceptionBuilder::default();
507                output = crate::protocol_serde::shape_invalid_trigger_config_exception::de_invalid_trigger_config_exception_json_err(
508                    _response_body,
509                    output,
510                )
511                .map_err(crate::operation::create_deployment_group::CreateDeploymentGroupError::unhandled)?;
512                let output = output.meta(generic);
513                output.build()
514            };
515            if tmp.message.is_none() {
516                tmp.message = _error_message;
517            }
518            tmp
519        }),
520        "LifecycleHookLimitExceededException" => {
521            crate::operation::create_deployment_group::CreateDeploymentGroupError::LifecycleHookLimitExceededException({
522                #[allow(unused_mut)]
523                let mut tmp = {
524                    #[allow(unused_mut)]
525                    let mut output = crate::types::error::builders::LifecycleHookLimitExceededExceptionBuilder::default();
526                    output =
527                        crate::protocol_serde::shape_lifecycle_hook_limit_exceeded_exception::de_lifecycle_hook_limit_exceeded_exception_json_err(
528                            _response_body,
529                            output,
530                        )
531                        .map_err(crate::operation::create_deployment_group::CreateDeploymentGroupError::unhandled)?;
532                    let output = output.meta(generic);
533                    output.build()
534                };
535                if tmp.message.is_none() {
536                    tmp.message = _error_message;
537                }
538                tmp
539            })
540        }
541        "RoleRequiredException" => crate::operation::create_deployment_group::CreateDeploymentGroupError::RoleRequiredException({
542            #[allow(unused_mut)]
543            let mut tmp = {
544                #[allow(unused_mut)]
545                let mut output = crate::types::error::builders::RoleRequiredExceptionBuilder::default();
546                output = crate::protocol_serde::shape_role_required_exception::de_role_required_exception_json_err(_response_body, output)
547                    .map_err(crate::operation::create_deployment_group::CreateDeploymentGroupError::unhandled)?;
548                let output = output.meta(generic);
549                output.build()
550            };
551            if tmp.message.is_none() {
552                tmp.message = _error_message;
553            }
554            tmp
555        }),
556        "TagSetListLimitExceededException" => {
557            crate::operation::create_deployment_group::CreateDeploymentGroupError::TagSetListLimitExceededException({
558                #[allow(unused_mut)]
559                let mut tmp = {
560                    #[allow(unused_mut)]
561                    let mut output = crate::types::error::builders::TagSetListLimitExceededExceptionBuilder::default();
562                    output = crate::protocol_serde::shape_tag_set_list_limit_exceeded_exception::de_tag_set_list_limit_exceeded_exception_json_err(
563                        _response_body,
564                        output,
565                    )
566                    .map_err(crate::operation::create_deployment_group::CreateDeploymentGroupError::unhandled)?;
567                    let output = output.meta(generic);
568                    output.build()
569                };
570                if tmp.message.is_none() {
571                    tmp.message = _error_message;
572                }
573                tmp
574            })
575        }
576        "ThrottlingException" => crate::operation::create_deployment_group::CreateDeploymentGroupError::ThrottlingException({
577            #[allow(unused_mut)]
578            let mut tmp = {
579                #[allow(unused_mut)]
580                let mut output = crate::types::error::builders::ThrottlingExceptionBuilder::default();
581                output = crate::protocol_serde::shape_throttling_exception::de_throttling_exception_json_err(_response_body, output)
582                    .map_err(crate::operation::create_deployment_group::CreateDeploymentGroupError::unhandled)?;
583                let output = output.meta(generic);
584                output.build()
585            };
586            if tmp.message.is_none() {
587                tmp.message = _error_message;
588            }
589            tmp
590        }),
591        "TriggerTargetsLimitExceededException" => {
592            crate::operation::create_deployment_group::CreateDeploymentGroupError::TriggerTargetsLimitExceededException({
593                #[allow(unused_mut)]
594                let mut tmp = {
595                    #[allow(unused_mut)]
596                    let mut output = crate::types::error::builders::TriggerTargetsLimitExceededExceptionBuilder::default();
597                    output =
598                        crate::protocol_serde::shape_trigger_targets_limit_exceeded_exception::de_trigger_targets_limit_exceeded_exception_json_err(
599                            _response_body,
600                            output,
601                        )
602                        .map_err(crate::operation::create_deployment_group::CreateDeploymentGroupError::unhandled)?;
603                    let output = output.meta(generic);
604                    output.build()
605                };
606                if tmp.message.is_none() {
607                    tmp.message = _error_message;
608                }
609                tmp
610            })
611        }
612        _ => crate::operation::create_deployment_group::CreateDeploymentGroupError::generic(generic),
613    })
614}
615
616#[allow(clippy::unnecessary_wraps)]
617pub fn de_create_deployment_group_http_response(
618    _response_status: u16,
619    _response_headers: &::aws_smithy_runtime_api::http::Headers,
620    _response_body: &[u8],
621) -> std::result::Result<
622    crate::operation::create_deployment_group::CreateDeploymentGroupOutput,
623    crate::operation::create_deployment_group::CreateDeploymentGroupError,
624> {
625    Ok({
626        #[allow(unused_mut)]
627        let mut output = crate::operation::create_deployment_group::builders::CreateDeploymentGroupOutputBuilder::default();
628        output = crate::protocol_serde::shape_create_deployment_group::de_create_deployment_group(_response_body, output)
629            .map_err(crate::operation::create_deployment_group::CreateDeploymentGroupError::unhandled)?;
630        output._set_request_id(::aws_types::request_id::RequestId::request_id(_response_headers).map(str::to_string));
631        output.build()
632    })
633}
634
635pub fn ser_create_deployment_group_input(
636    input: &crate::operation::create_deployment_group::CreateDeploymentGroupInput,
637) -> ::std::result::Result<::aws_smithy_types::body::SdkBody, ::aws_smithy_types::error::operation::SerializationError> {
638    let mut out = String::new();
639    let mut object = ::aws_smithy_json::serialize::JsonObjectWriter::new(&mut out);
640    crate::protocol_serde::shape_create_deployment_group_input::ser_create_deployment_group_input_input(&mut object, input)?;
641    object.finish();
642    Ok(::aws_smithy_types::body::SdkBody::from(out))
643}
644
645pub(crate) fn de_create_deployment_group(
646    value: &[u8],
647    mut builder: crate::operation::create_deployment_group::builders::CreateDeploymentGroupOutputBuilder,
648) -> ::std::result::Result<
649    crate::operation::create_deployment_group::builders::CreateDeploymentGroupOutputBuilder,
650    ::aws_smithy_json::deserialize::error::DeserializeError,
651> {
652    let mut tokens_owned = ::aws_smithy_json::deserialize::json_token_iter(crate::protocol_serde::or_empty_doc(value)).peekable();
653    let tokens = &mut tokens_owned;
654    ::aws_smithy_json::deserialize::token::expect_start_object(tokens.next())?;
655    loop {
656        match tokens.next().transpose()? {
657            Some(::aws_smithy_json::deserialize::Token::EndObject { .. }) => break,
658            Some(::aws_smithy_json::deserialize::Token::ObjectKey { key, .. }) => match key.to_unescaped()?.as_ref() {
659                "deploymentGroupId" => {
660                    builder = builder.set_deployment_group_id(
661                        ::aws_smithy_json::deserialize::token::expect_string_or_null(tokens.next())?
662                            .map(|s| s.to_unescaped().map(|u| u.into_owned()))
663                            .transpose()?,
664                    );
665                }
666                _ => ::aws_smithy_json::deserialize::token::skip_value(tokens)?,
667            },
668            other => {
669                return Err(::aws_smithy_json::deserialize::error::DeserializeError::custom(format!(
670                    "expected object key or end object, found: {:?}",
671                    other
672                )))
673            }
674        }
675    }
676    if tokens.next().is_some() {
677        return Err(::aws_smithy_json::deserialize::error::DeserializeError::custom(
678            "found more JSON tokens after completing parsing",
679        ));
680    }
681    Ok(builder)
682}