1#[derive(Debug, Default)]
5pub struct Api {
6 properties: ApiProperties
7}
8
9#[derive(Debug, Default)]
11pub struct ApiProperties {
12 pub api_key_selection_expression: Option<::Value<String>>,
17 pub base_path: Option<::Value<String>>,
22 pub body: Option<::Value<::json::Value>>,
27 pub body_s3_location: Option<::Value<self::api::BodyS3Location>>,
32 pub cors_configuration: Option<::Value<self::api::Cors>>,
37 pub credentials_arn: Option<::Value<String>>,
42 pub description: Option<::Value<String>>,
47 pub disable_execute_api_endpoint: Option<::Value<bool>>,
52 pub disable_schema_validation: Option<::Value<bool>>,
57 pub fail_on_warnings: Option<::Value<bool>>,
62 pub name: Option<::Value<String>>,
67 pub protocol_type: Option<::Value<String>>,
72 pub route_key: Option<::Value<String>>,
77 pub route_selection_expression: Option<::Value<String>>,
82 pub tags: Option<::Value<::json::Value>>,
87 pub target: Option<::Value<String>>,
92 pub version: Option<::Value<String>>,
97}
98
99impl ::serde::Serialize for ApiProperties {
100 fn serialize<S: ::serde::Serializer>(&self, s: S) -> Result<S::Ok, S::Error> {
101 let mut map = ::serde::Serializer::serialize_map(s, None)?;
102 if let Some(ref api_key_selection_expression) = self.api_key_selection_expression {
103 ::serde::ser::SerializeMap::serialize_entry(&mut map, "ApiKeySelectionExpression", api_key_selection_expression)?;
104 }
105 if let Some(ref base_path) = self.base_path {
106 ::serde::ser::SerializeMap::serialize_entry(&mut map, "BasePath", base_path)?;
107 }
108 if let Some(ref body) = self.body {
109 ::serde::ser::SerializeMap::serialize_entry(&mut map, "Body", body)?;
110 }
111 if let Some(ref body_s3_location) = self.body_s3_location {
112 ::serde::ser::SerializeMap::serialize_entry(&mut map, "BodyS3Location", body_s3_location)?;
113 }
114 if let Some(ref cors_configuration) = self.cors_configuration {
115 ::serde::ser::SerializeMap::serialize_entry(&mut map, "CorsConfiguration", cors_configuration)?;
116 }
117 if let Some(ref credentials_arn) = self.credentials_arn {
118 ::serde::ser::SerializeMap::serialize_entry(&mut map, "CredentialsArn", credentials_arn)?;
119 }
120 if let Some(ref description) = self.description {
121 ::serde::ser::SerializeMap::serialize_entry(&mut map, "Description", description)?;
122 }
123 if let Some(ref disable_execute_api_endpoint) = self.disable_execute_api_endpoint {
124 ::serde::ser::SerializeMap::serialize_entry(&mut map, "DisableExecuteApiEndpoint", disable_execute_api_endpoint)?;
125 }
126 if let Some(ref disable_schema_validation) = self.disable_schema_validation {
127 ::serde::ser::SerializeMap::serialize_entry(&mut map, "DisableSchemaValidation", disable_schema_validation)?;
128 }
129 if let Some(ref fail_on_warnings) = self.fail_on_warnings {
130 ::serde::ser::SerializeMap::serialize_entry(&mut map, "FailOnWarnings", fail_on_warnings)?;
131 }
132 if let Some(ref name) = self.name {
133 ::serde::ser::SerializeMap::serialize_entry(&mut map, "Name", name)?;
134 }
135 if let Some(ref protocol_type) = self.protocol_type {
136 ::serde::ser::SerializeMap::serialize_entry(&mut map, "ProtocolType", protocol_type)?;
137 }
138 if let Some(ref route_key) = self.route_key {
139 ::serde::ser::SerializeMap::serialize_entry(&mut map, "RouteKey", route_key)?;
140 }
141 if let Some(ref route_selection_expression) = self.route_selection_expression {
142 ::serde::ser::SerializeMap::serialize_entry(&mut map, "RouteSelectionExpression", route_selection_expression)?;
143 }
144 if let Some(ref tags) = self.tags {
145 ::serde::ser::SerializeMap::serialize_entry(&mut map, "Tags", tags)?;
146 }
147 if let Some(ref target) = self.target {
148 ::serde::ser::SerializeMap::serialize_entry(&mut map, "Target", target)?;
149 }
150 if let Some(ref version) = self.version {
151 ::serde::ser::SerializeMap::serialize_entry(&mut map, "Version", version)?;
152 }
153 ::serde::ser::SerializeMap::end(map)
154 }
155}
156
157impl<'de> ::serde::Deserialize<'de> for ApiProperties {
158 fn deserialize<D: ::serde::Deserializer<'de>>(d: D) -> Result<ApiProperties, D::Error> {
159 struct Visitor;
160
161 impl<'de> ::serde::de::Visitor<'de> for Visitor {
162 type Value = ApiProperties;
163
164 fn expecting(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
165 write!(f, "a struct of type ApiProperties")
166 }
167
168 fn visit_map<A: ::serde::de::MapAccess<'de>>(self, mut map: A) -> Result<Self::Value, A::Error> {
169 let mut api_key_selection_expression: Option<::Value<String>> = None;
170 let mut base_path: Option<::Value<String>> = None;
171 let mut body: Option<::Value<::json::Value>> = None;
172 let mut body_s3_location: Option<::Value<self::api::BodyS3Location>> = None;
173 let mut cors_configuration: Option<::Value<self::api::Cors>> = None;
174 let mut credentials_arn: Option<::Value<String>> = None;
175 let mut description: Option<::Value<String>> = None;
176 let mut disable_execute_api_endpoint: Option<::Value<bool>> = None;
177 let mut disable_schema_validation: Option<::Value<bool>> = None;
178 let mut fail_on_warnings: Option<::Value<bool>> = None;
179 let mut name: Option<::Value<String>> = None;
180 let mut protocol_type: Option<::Value<String>> = None;
181 let mut route_key: Option<::Value<String>> = None;
182 let mut route_selection_expression: Option<::Value<String>> = None;
183 let mut tags: Option<::Value<::json::Value>> = None;
184 let mut target: Option<::Value<String>> = None;
185 let mut version: Option<::Value<String>> = None;
186
187 while let Some(__cfn_key) = ::serde::de::MapAccess::next_key::<String>(&mut map)? {
188 match __cfn_key.as_ref() {
189 "ApiKeySelectionExpression" => {
190 api_key_selection_expression = ::serde::de::MapAccess::next_value(&mut map)?;
191 }
192 "BasePath" => {
193 base_path = ::serde::de::MapAccess::next_value(&mut map)?;
194 }
195 "Body" => {
196 body = ::serde::de::MapAccess::next_value(&mut map)?;
197 }
198 "BodyS3Location" => {
199 body_s3_location = ::serde::de::MapAccess::next_value(&mut map)?;
200 }
201 "CorsConfiguration" => {
202 cors_configuration = ::serde::de::MapAccess::next_value(&mut map)?;
203 }
204 "CredentialsArn" => {
205 credentials_arn = ::serde::de::MapAccess::next_value(&mut map)?;
206 }
207 "Description" => {
208 description = ::serde::de::MapAccess::next_value(&mut map)?;
209 }
210 "DisableExecuteApiEndpoint" => {
211 disable_execute_api_endpoint = ::serde::de::MapAccess::next_value(&mut map)?;
212 }
213 "DisableSchemaValidation" => {
214 disable_schema_validation = ::serde::de::MapAccess::next_value(&mut map)?;
215 }
216 "FailOnWarnings" => {
217 fail_on_warnings = ::serde::de::MapAccess::next_value(&mut map)?;
218 }
219 "Name" => {
220 name = ::serde::de::MapAccess::next_value(&mut map)?;
221 }
222 "ProtocolType" => {
223 protocol_type = ::serde::de::MapAccess::next_value(&mut map)?;
224 }
225 "RouteKey" => {
226 route_key = ::serde::de::MapAccess::next_value(&mut map)?;
227 }
228 "RouteSelectionExpression" => {
229 route_selection_expression = ::serde::de::MapAccess::next_value(&mut map)?;
230 }
231 "Tags" => {
232 tags = ::serde::de::MapAccess::next_value(&mut map)?;
233 }
234 "Target" => {
235 target = ::serde::de::MapAccess::next_value(&mut map)?;
236 }
237 "Version" => {
238 version = ::serde::de::MapAccess::next_value(&mut map)?;
239 }
240 _ => {}
241 }
242 }
243
244 Ok(ApiProperties {
245 api_key_selection_expression: api_key_selection_expression,
246 base_path: base_path,
247 body: body,
248 body_s3_location: body_s3_location,
249 cors_configuration: cors_configuration,
250 credentials_arn: credentials_arn,
251 description: description,
252 disable_execute_api_endpoint: disable_execute_api_endpoint,
253 disable_schema_validation: disable_schema_validation,
254 fail_on_warnings: fail_on_warnings,
255 name: name,
256 protocol_type: protocol_type,
257 route_key: route_key,
258 route_selection_expression: route_selection_expression,
259 tags: tags,
260 target: target,
261 version: version,
262 })
263 }
264 }
265
266 d.deserialize_map(Visitor)
267 }
268}
269
270impl ::Resource for Api {
271 type Properties = ApiProperties;
272 const TYPE: &'static str = "AWS::ApiGatewayV2::Api";
273 fn properties(&self) -> &ApiProperties {
274 &self.properties
275 }
276 fn properties_mut(&mut self) -> &mut ApiProperties {
277 &mut self.properties
278 }
279}
280
281impl ::private::Sealed for Api {}
282
283impl From<ApiProperties> for Api {
284 fn from(properties: ApiProperties) -> Api {
285 Api { properties }
286 }
287}
288
289#[derive(Debug, Default)]
291pub struct ApiGatewayManagedOverrides {
292 properties: ApiGatewayManagedOverridesProperties
293}
294
295#[derive(Debug, Default)]
297pub struct ApiGatewayManagedOverridesProperties {
298 pub api_id: ::Value<String>,
303 pub integration: Option<::Value<self::api_gateway_managed_overrides::IntegrationOverrides>>,
308 pub route: Option<::Value<self::api_gateway_managed_overrides::RouteOverrides>>,
313 pub stage: Option<::Value<self::api_gateway_managed_overrides::StageOverrides>>,
318}
319
320impl ::serde::Serialize for ApiGatewayManagedOverridesProperties {
321 fn serialize<S: ::serde::Serializer>(&self, s: S) -> Result<S::Ok, S::Error> {
322 let mut map = ::serde::Serializer::serialize_map(s, None)?;
323 ::serde::ser::SerializeMap::serialize_entry(&mut map, "ApiId", &self.api_id)?;
324 if let Some(ref integration) = self.integration {
325 ::serde::ser::SerializeMap::serialize_entry(&mut map, "Integration", integration)?;
326 }
327 if let Some(ref route) = self.route {
328 ::serde::ser::SerializeMap::serialize_entry(&mut map, "Route", route)?;
329 }
330 if let Some(ref stage) = self.stage {
331 ::serde::ser::SerializeMap::serialize_entry(&mut map, "Stage", stage)?;
332 }
333 ::serde::ser::SerializeMap::end(map)
334 }
335}
336
337impl<'de> ::serde::Deserialize<'de> for ApiGatewayManagedOverridesProperties {
338 fn deserialize<D: ::serde::Deserializer<'de>>(d: D) -> Result<ApiGatewayManagedOverridesProperties, D::Error> {
339 struct Visitor;
340
341 impl<'de> ::serde::de::Visitor<'de> for Visitor {
342 type Value = ApiGatewayManagedOverridesProperties;
343
344 fn expecting(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
345 write!(f, "a struct of type ApiGatewayManagedOverridesProperties")
346 }
347
348 fn visit_map<A: ::serde::de::MapAccess<'de>>(self, mut map: A) -> Result<Self::Value, A::Error> {
349 let mut api_id: Option<::Value<String>> = None;
350 let mut integration: Option<::Value<self::api_gateway_managed_overrides::IntegrationOverrides>> = None;
351 let mut route: Option<::Value<self::api_gateway_managed_overrides::RouteOverrides>> = None;
352 let mut stage: Option<::Value<self::api_gateway_managed_overrides::StageOverrides>> = None;
353
354 while let Some(__cfn_key) = ::serde::de::MapAccess::next_key::<String>(&mut map)? {
355 match __cfn_key.as_ref() {
356 "ApiId" => {
357 api_id = ::serde::de::MapAccess::next_value(&mut map)?;
358 }
359 "Integration" => {
360 integration = ::serde::de::MapAccess::next_value(&mut map)?;
361 }
362 "Route" => {
363 route = ::serde::de::MapAccess::next_value(&mut map)?;
364 }
365 "Stage" => {
366 stage = ::serde::de::MapAccess::next_value(&mut map)?;
367 }
368 _ => {}
369 }
370 }
371
372 Ok(ApiGatewayManagedOverridesProperties {
373 api_id: api_id.ok_or(::serde::de::Error::missing_field("ApiId"))?,
374 integration: integration,
375 route: route,
376 stage: stage,
377 })
378 }
379 }
380
381 d.deserialize_map(Visitor)
382 }
383}
384
385impl ::Resource for ApiGatewayManagedOverrides {
386 type Properties = ApiGatewayManagedOverridesProperties;
387 const TYPE: &'static str = "AWS::ApiGatewayV2::ApiGatewayManagedOverrides";
388 fn properties(&self) -> &ApiGatewayManagedOverridesProperties {
389 &self.properties
390 }
391 fn properties_mut(&mut self) -> &mut ApiGatewayManagedOverridesProperties {
392 &mut self.properties
393 }
394}
395
396impl ::private::Sealed for ApiGatewayManagedOverrides {}
397
398impl From<ApiGatewayManagedOverridesProperties> for ApiGatewayManagedOverrides {
399 fn from(properties: ApiGatewayManagedOverridesProperties) -> ApiGatewayManagedOverrides {
400 ApiGatewayManagedOverrides { properties }
401 }
402}
403
404#[derive(Debug, Default)]
406pub struct ApiMapping {
407 properties: ApiMappingProperties
408}
409
410#[derive(Debug, Default)]
412pub struct ApiMappingProperties {
413 pub api_id: ::Value<String>,
418 pub api_mapping_key: Option<::Value<String>>,
423 pub domain_name: ::Value<String>,
428 pub stage: ::Value<String>,
433}
434
435impl ::serde::Serialize for ApiMappingProperties {
436 fn serialize<S: ::serde::Serializer>(&self, s: S) -> Result<S::Ok, S::Error> {
437 let mut map = ::serde::Serializer::serialize_map(s, None)?;
438 ::serde::ser::SerializeMap::serialize_entry(&mut map, "ApiId", &self.api_id)?;
439 if let Some(ref api_mapping_key) = self.api_mapping_key {
440 ::serde::ser::SerializeMap::serialize_entry(&mut map, "ApiMappingKey", api_mapping_key)?;
441 }
442 ::serde::ser::SerializeMap::serialize_entry(&mut map, "DomainName", &self.domain_name)?;
443 ::serde::ser::SerializeMap::serialize_entry(&mut map, "Stage", &self.stage)?;
444 ::serde::ser::SerializeMap::end(map)
445 }
446}
447
448impl<'de> ::serde::Deserialize<'de> for ApiMappingProperties {
449 fn deserialize<D: ::serde::Deserializer<'de>>(d: D) -> Result<ApiMappingProperties, D::Error> {
450 struct Visitor;
451
452 impl<'de> ::serde::de::Visitor<'de> for Visitor {
453 type Value = ApiMappingProperties;
454
455 fn expecting(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
456 write!(f, "a struct of type ApiMappingProperties")
457 }
458
459 fn visit_map<A: ::serde::de::MapAccess<'de>>(self, mut map: A) -> Result<Self::Value, A::Error> {
460 let mut api_id: Option<::Value<String>> = None;
461 let mut api_mapping_key: Option<::Value<String>> = None;
462 let mut domain_name: Option<::Value<String>> = None;
463 let mut stage: Option<::Value<String>> = None;
464
465 while let Some(__cfn_key) = ::serde::de::MapAccess::next_key::<String>(&mut map)? {
466 match __cfn_key.as_ref() {
467 "ApiId" => {
468 api_id = ::serde::de::MapAccess::next_value(&mut map)?;
469 }
470 "ApiMappingKey" => {
471 api_mapping_key = ::serde::de::MapAccess::next_value(&mut map)?;
472 }
473 "DomainName" => {
474 domain_name = ::serde::de::MapAccess::next_value(&mut map)?;
475 }
476 "Stage" => {
477 stage = ::serde::de::MapAccess::next_value(&mut map)?;
478 }
479 _ => {}
480 }
481 }
482
483 Ok(ApiMappingProperties {
484 api_id: api_id.ok_or(::serde::de::Error::missing_field("ApiId"))?,
485 api_mapping_key: api_mapping_key,
486 domain_name: domain_name.ok_or(::serde::de::Error::missing_field("DomainName"))?,
487 stage: stage.ok_or(::serde::de::Error::missing_field("Stage"))?,
488 })
489 }
490 }
491
492 d.deserialize_map(Visitor)
493 }
494}
495
496impl ::Resource for ApiMapping {
497 type Properties = ApiMappingProperties;
498 const TYPE: &'static str = "AWS::ApiGatewayV2::ApiMapping";
499 fn properties(&self) -> &ApiMappingProperties {
500 &self.properties
501 }
502 fn properties_mut(&mut self) -> &mut ApiMappingProperties {
503 &mut self.properties
504 }
505}
506
507impl ::private::Sealed for ApiMapping {}
508
509impl From<ApiMappingProperties> for ApiMapping {
510 fn from(properties: ApiMappingProperties) -> ApiMapping {
511 ApiMapping { properties }
512 }
513}
514
515#[derive(Debug, Default)]
517pub struct Authorizer {
518 properties: AuthorizerProperties
519}
520
521#[derive(Debug, Default)]
523pub struct AuthorizerProperties {
524 pub api_id: ::Value<String>,
529 pub authorizer_credentials_arn: Option<::Value<String>>,
534 pub authorizer_payload_format_version: Option<::Value<String>>,
539 pub authorizer_result_ttl_in_seconds: Option<::Value<u32>>,
544 pub authorizer_type: ::Value<String>,
549 pub authorizer_uri: Option<::Value<String>>,
554 pub enable_simple_responses: Option<::Value<bool>>,
559 pub identity_source: Option<::ValueList<String>>,
564 pub identity_validation_expression: Option<::Value<String>>,
569 pub jwt_configuration: Option<::Value<self::authorizer::JWTConfiguration>>,
574 pub name: ::Value<String>,
579}
580
581impl ::serde::Serialize for AuthorizerProperties {
582 fn serialize<S: ::serde::Serializer>(&self, s: S) -> Result<S::Ok, S::Error> {
583 let mut map = ::serde::Serializer::serialize_map(s, None)?;
584 ::serde::ser::SerializeMap::serialize_entry(&mut map, "ApiId", &self.api_id)?;
585 if let Some(ref authorizer_credentials_arn) = self.authorizer_credentials_arn {
586 ::serde::ser::SerializeMap::serialize_entry(&mut map, "AuthorizerCredentialsArn", authorizer_credentials_arn)?;
587 }
588 if let Some(ref authorizer_payload_format_version) = self.authorizer_payload_format_version {
589 ::serde::ser::SerializeMap::serialize_entry(&mut map, "AuthorizerPayloadFormatVersion", authorizer_payload_format_version)?;
590 }
591 if let Some(ref authorizer_result_ttl_in_seconds) = self.authorizer_result_ttl_in_seconds {
592 ::serde::ser::SerializeMap::serialize_entry(&mut map, "AuthorizerResultTtlInSeconds", authorizer_result_ttl_in_seconds)?;
593 }
594 ::serde::ser::SerializeMap::serialize_entry(&mut map, "AuthorizerType", &self.authorizer_type)?;
595 if let Some(ref authorizer_uri) = self.authorizer_uri {
596 ::serde::ser::SerializeMap::serialize_entry(&mut map, "AuthorizerUri", authorizer_uri)?;
597 }
598 if let Some(ref enable_simple_responses) = self.enable_simple_responses {
599 ::serde::ser::SerializeMap::serialize_entry(&mut map, "EnableSimpleResponses", enable_simple_responses)?;
600 }
601 if let Some(ref identity_source) = self.identity_source {
602 ::serde::ser::SerializeMap::serialize_entry(&mut map, "IdentitySource", identity_source)?;
603 }
604 if let Some(ref identity_validation_expression) = self.identity_validation_expression {
605 ::serde::ser::SerializeMap::serialize_entry(&mut map, "IdentityValidationExpression", identity_validation_expression)?;
606 }
607 if let Some(ref jwt_configuration) = self.jwt_configuration {
608 ::serde::ser::SerializeMap::serialize_entry(&mut map, "JwtConfiguration", jwt_configuration)?;
609 }
610 ::serde::ser::SerializeMap::serialize_entry(&mut map, "Name", &self.name)?;
611 ::serde::ser::SerializeMap::end(map)
612 }
613}
614
615impl<'de> ::serde::Deserialize<'de> for AuthorizerProperties {
616 fn deserialize<D: ::serde::Deserializer<'de>>(d: D) -> Result<AuthorizerProperties, D::Error> {
617 struct Visitor;
618
619 impl<'de> ::serde::de::Visitor<'de> for Visitor {
620 type Value = AuthorizerProperties;
621
622 fn expecting(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
623 write!(f, "a struct of type AuthorizerProperties")
624 }
625
626 fn visit_map<A: ::serde::de::MapAccess<'de>>(self, mut map: A) -> Result<Self::Value, A::Error> {
627 let mut api_id: Option<::Value<String>> = None;
628 let mut authorizer_credentials_arn: Option<::Value<String>> = None;
629 let mut authorizer_payload_format_version: Option<::Value<String>> = None;
630 let mut authorizer_result_ttl_in_seconds: Option<::Value<u32>> = None;
631 let mut authorizer_type: Option<::Value<String>> = None;
632 let mut authorizer_uri: Option<::Value<String>> = None;
633 let mut enable_simple_responses: Option<::Value<bool>> = None;
634 let mut identity_source: Option<::ValueList<String>> = None;
635 let mut identity_validation_expression: Option<::Value<String>> = None;
636 let mut jwt_configuration: Option<::Value<self::authorizer::JWTConfiguration>> = None;
637 let mut name: Option<::Value<String>> = None;
638
639 while let Some(__cfn_key) = ::serde::de::MapAccess::next_key::<String>(&mut map)? {
640 match __cfn_key.as_ref() {
641 "ApiId" => {
642 api_id = ::serde::de::MapAccess::next_value(&mut map)?;
643 }
644 "AuthorizerCredentialsArn" => {
645 authorizer_credentials_arn = ::serde::de::MapAccess::next_value(&mut map)?;
646 }
647 "AuthorizerPayloadFormatVersion" => {
648 authorizer_payload_format_version = ::serde::de::MapAccess::next_value(&mut map)?;
649 }
650 "AuthorizerResultTtlInSeconds" => {
651 authorizer_result_ttl_in_seconds = ::serde::de::MapAccess::next_value(&mut map)?;
652 }
653 "AuthorizerType" => {
654 authorizer_type = ::serde::de::MapAccess::next_value(&mut map)?;
655 }
656 "AuthorizerUri" => {
657 authorizer_uri = ::serde::de::MapAccess::next_value(&mut map)?;
658 }
659 "EnableSimpleResponses" => {
660 enable_simple_responses = ::serde::de::MapAccess::next_value(&mut map)?;
661 }
662 "IdentitySource" => {
663 identity_source = ::serde::de::MapAccess::next_value(&mut map)?;
664 }
665 "IdentityValidationExpression" => {
666 identity_validation_expression = ::serde::de::MapAccess::next_value(&mut map)?;
667 }
668 "JwtConfiguration" => {
669 jwt_configuration = ::serde::de::MapAccess::next_value(&mut map)?;
670 }
671 "Name" => {
672 name = ::serde::de::MapAccess::next_value(&mut map)?;
673 }
674 _ => {}
675 }
676 }
677
678 Ok(AuthorizerProperties {
679 api_id: api_id.ok_or(::serde::de::Error::missing_field("ApiId"))?,
680 authorizer_credentials_arn: authorizer_credentials_arn,
681 authorizer_payload_format_version: authorizer_payload_format_version,
682 authorizer_result_ttl_in_seconds: authorizer_result_ttl_in_seconds,
683 authorizer_type: authorizer_type.ok_or(::serde::de::Error::missing_field("AuthorizerType"))?,
684 authorizer_uri: authorizer_uri,
685 enable_simple_responses: enable_simple_responses,
686 identity_source: identity_source,
687 identity_validation_expression: identity_validation_expression,
688 jwt_configuration: jwt_configuration,
689 name: name.ok_or(::serde::de::Error::missing_field("Name"))?,
690 })
691 }
692 }
693
694 d.deserialize_map(Visitor)
695 }
696}
697
698impl ::Resource for Authorizer {
699 type Properties = AuthorizerProperties;
700 const TYPE: &'static str = "AWS::ApiGatewayV2::Authorizer";
701 fn properties(&self) -> &AuthorizerProperties {
702 &self.properties
703 }
704 fn properties_mut(&mut self) -> &mut AuthorizerProperties {
705 &mut self.properties
706 }
707}
708
709impl ::private::Sealed for Authorizer {}
710
711impl From<AuthorizerProperties> for Authorizer {
712 fn from(properties: AuthorizerProperties) -> Authorizer {
713 Authorizer { properties }
714 }
715}
716
717#[derive(Debug, Default)]
719pub struct Deployment {
720 properties: DeploymentProperties
721}
722
723#[derive(Debug, Default)]
725pub struct DeploymentProperties {
726 pub api_id: ::Value<String>,
731 pub description: Option<::Value<String>>,
736 pub stage_name: Option<::Value<String>>,
741}
742
743impl ::serde::Serialize for DeploymentProperties {
744 fn serialize<S: ::serde::Serializer>(&self, s: S) -> Result<S::Ok, S::Error> {
745 let mut map = ::serde::Serializer::serialize_map(s, None)?;
746 ::serde::ser::SerializeMap::serialize_entry(&mut map, "ApiId", &self.api_id)?;
747 if let Some(ref description) = self.description {
748 ::serde::ser::SerializeMap::serialize_entry(&mut map, "Description", description)?;
749 }
750 if let Some(ref stage_name) = self.stage_name {
751 ::serde::ser::SerializeMap::serialize_entry(&mut map, "StageName", stage_name)?;
752 }
753 ::serde::ser::SerializeMap::end(map)
754 }
755}
756
757impl<'de> ::serde::Deserialize<'de> for DeploymentProperties {
758 fn deserialize<D: ::serde::Deserializer<'de>>(d: D) -> Result<DeploymentProperties, D::Error> {
759 struct Visitor;
760
761 impl<'de> ::serde::de::Visitor<'de> for Visitor {
762 type Value = DeploymentProperties;
763
764 fn expecting(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
765 write!(f, "a struct of type DeploymentProperties")
766 }
767
768 fn visit_map<A: ::serde::de::MapAccess<'de>>(self, mut map: A) -> Result<Self::Value, A::Error> {
769 let mut api_id: Option<::Value<String>> = None;
770 let mut description: Option<::Value<String>> = None;
771 let mut stage_name: Option<::Value<String>> = None;
772
773 while let Some(__cfn_key) = ::serde::de::MapAccess::next_key::<String>(&mut map)? {
774 match __cfn_key.as_ref() {
775 "ApiId" => {
776 api_id = ::serde::de::MapAccess::next_value(&mut map)?;
777 }
778 "Description" => {
779 description = ::serde::de::MapAccess::next_value(&mut map)?;
780 }
781 "StageName" => {
782 stage_name = ::serde::de::MapAccess::next_value(&mut map)?;
783 }
784 _ => {}
785 }
786 }
787
788 Ok(DeploymentProperties {
789 api_id: api_id.ok_or(::serde::de::Error::missing_field("ApiId"))?,
790 description: description,
791 stage_name: stage_name,
792 })
793 }
794 }
795
796 d.deserialize_map(Visitor)
797 }
798}
799
800impl ::Resource for Deployment {
801 type Properties = DeploymentProperties;
802 const TYPE: &'static str = "AWS::ApiGatewayV2::Deployment";
803 fn properties(&self) -> &DeploymentProperties {
804 &self.properties
805 }
806 fn properties_mut(&mut self) -> &mut DeploymentProperties {
807 &mut self.properties
808 }
809}
810
811impl ::private::Sealed for Deployment {}
812
813impl From<DeploymentProperties> for Deployment {
814 fn from(properties: DeploymentProperties) -> Deployment {
815 Deployment { properties }
816 }
817}
818
819#[derive(Debug, Default)]
821pub struct DomainName {
822 properties: DomainNameProperties
823}
824
825#[derive(Debug, Default)]
827pub struct DomainNameProperties {
828 pub domain_name: ::Value<String>,
833 pub domain_name_configurations: Option<::ValueList<self::domain_name::DomainNameConfiguration>>,
838 pub mutual_tls_authentication: Option<::Value<self::domain_name::MutualTlsAuthentication>>,
843 pub tags: Option<::Value<::json::Value>>,
848}
849
850impl ::serde::Serialize for DomainNameProperties {
851 fn serialize<S: ::serde::Serializer>(&self, s: S) -> Result<S::Ok, S::Error> {
852 let mut map = ::serde::Serializer::serialize_map(s, None)?;
853 ::serde::ser::SerializeMap::serialize_entry(&mut map, "DomainName", &self.domain_name)?;
854 if let Some(ref domain_name_configurations) = self.domain_name_configurations {
855 ::serde::ser::SerializeMap::serialize_entry(&mut map, "DomainNameConfigurations", domain_name_configurations)?;
856 }
857 if let Some(ref mutual_tls_authentication) = self.mutual_tls_authentication {
858 ::serde::ser::SerializeMap::serialize_entry(&mut map, "MutualTlsAuthentication", mutual_tls_authentication)?;
859 }
860 if let Some(ref tags) = self.tags {
861 ::serde::ser::SerializeMap::serialize_entry(&mut map, "Tags", tags)?;
862 }
863 ::serde::ser::SerializeMap::end(map)
864 }
865}
866
867impl<'de> ::serde::Deserialize<'de> for DomainNameProperties {
868 fn deserialize<D: ::serde::Deserializer<'de>>(d: D) -> Result<DomainNameProperties, D::Error> {
869 struct Visitor;
870
871 impl<'de> ::serde::de::Visitor<'de> for Visitor {
872 type Value = DomainNameProperties;
873
874 fn expecting(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
875 write!(f, "a struct of type DomainNameProperties")
876 }
877
878 fn visit_map<A: ::serde::de::MapAccess<'de>>(self, mut map: A) -> Result<Self::Value, A::Error> {
879 let mut domain_name: Option<::Value<String>> = None;
880 let mut domain_name_configurations: Option<::ValueList<self::domain_name::DomainNameConfiguration>> = None;
881 let mut mutual_tls_authentication: Option<::Value<self::domain_name::MutualTlsAuthentication>> = None;
882 let mut tags: Option<::Value<::json::Value>> = None;
883
884 while let Some(__cfn_key) = ::serde::de::MapAccess::next_key::<String>(&mut map)? {
885 match __cfn_key.as_ref() {
886 "DomainName" => {
887 domain_name = ::serde::de::MapAccess::next_value(&mut map)?;
888 }
889 "DomainNameConfigurations" => {
890 domain_name_configurations = ::serde::de::MapAccess::next_value(&mut map)?;
891 }
892 "MutualTlsAuthentication" => {
893 mutual_tls_authentication = ::serde::de::MapAccess::next_value(&mut map)?;
894 }
895 "Tags" => {
896 tags = ::serde::de::MapAccess::next_value(&mut map)?;
897 }
898 _ => {}
899 }
900 }
901
902 Ok(DomainNameProperties {
903 domain_name: domain_name.ok_or(::serde::de::Error::missing_field("DomainName"))?,
904 domain_name_configurations: domain_name_configurations,
905 mutual_tls_authentication: mutual_tls_authentication,
906 tags: tags,
907 })
908 }
909 }
910
911 d.deserialize_map(Visitor)
912 }
913}
914
915impl ::Resource for DomainName {
916 type Properties = DomainNameProperties;
917 const TYPE: &'static str = "AWS::ApiGatewayV2::DomainName";
918 fn properties(&self) -> &DomainNameProperties {
919 &self.properties
920 }
921 fn properties_mut(&mut self) -> &mut DomainNameProperties {
922 &mut self.properties
923 }
924}
925
926impl ::private::Sealed for DomainName {}
927
928impl From<DomainNameProperties> for DomainName {
929 fn from(properties: DomainNameProperties) -> DomainName {
930 DomainName { properties }
931 }
932}
933
934#[derive(Debug, Default)]
936pub struct Integration {
937 properties: IntegrationProperties
938}
939
940#[derive(Debug, Default)]
942pub struct IntegrationProperties {
943 pub api_id: ::Value<String>,
948 pub connection_id: Option<::Value<String>>,
953 pub connection_type: Option<::Value<String>>,
958 pub content_handling_strategy: Option<::Value<String>>,
963 pub credentials_arn: Option<::Value<String>>,
968 pub description: Option<::Value<String>>,
973 pub integration_method: Option<::Value<String>>,
978 pub integration_subtype: Option<::Value<String>>,
983 pub integration_type: ::Value<String>,
988 pub integration_uri: Option<::Value<String>>,
993 pub passthrough_behavior: Option<::Value<String>>,
998 pub payload_format_version: Option<::Value<String>>,
1003 pub request_parameters: Option<::Value<::json::Value>>,
1008 pub request_templates: Option<::Value<::json::Value>>,
1013 pub response_parameters: Option<::Value<::json::Value>>,
1018 pub template_selection_expression: Option<::Value<String>>,
1023 pub timeout_in_millis: Option<::Value<u32>>,
1028 pub tls_config: Option<::Value<self::integration::TlsConfig>>,
1033}
1034
1035impl ::serde::Serialize for IntegrationProperties {
1036 fn serialize<S: ::serde::Serializer>(&self, s: S) -> Result<S::Ok, S::Error> {
1037 let mut map = ::serde::Serializer::serialize_map(s, None)?;
1038 ::serde::ser::SerializeMap::serialize_entry(&mut map, "ApiId", &self.api_id)?;
1039 if let Some(ref connection_id) = self.connection_id {
1040 ::serde::ser::SerializeMap::serialize_entry(&mut map, "ConnectionId", connection_id)?;
1041 }
1042 if let Some(ref connection_type) = self.connection_type {
1043 ::serde::ser::SerializeMap::serialize_entry(&mut map, "ConnectionType", connection_type)?;
1044 }
1045 if let Some(ref content_handling_strategy) = self.content_handling_strategy {
1046 ::serde::ser::SerializeMap::serialize_entry(&mut map, "ContentHandlingStrategy", content_handling_strategy)?;
1047 }
1048 if let Some(ref credentials_arn) = self.credentials_arn {
1049 ::serde::ser::SerializeMap::serialize_entry(&mut map, "CredentialsArn", credentials_arn)?;
1050 }
1051 if let Some(ref description) = self.description {
1052 ::serde::ser::SerializeMap::serialize_entry(&mut map, "Description", description)?;
1053 }
1054 if let Some(ref integration_method) = self.integration_method {
1055 ::serde::ser::SerializeMap::serialize_entry(&mut map, "IntegrationMethod", integration_method)?;
1056 }
1057 if let Some(ref integration_subtype) = self.integration_subtype {
1058 ::serde::ser::SerializeMap::serialize_entry(&mut map, "IntegrationSubtype", integration_subtype)?;
1059 }
1060 ::serde::ser::SerializeMap::serialize_entry(&mut map, "IntegrationType", &self.integration_type)?;
1061 if let Some(ref integration_uri) = self.integration_uri {
1062 ::serde::ser::SerializeMap::serialize_entry(&mut map, "IntegrationUri", integration_uri)?;
1063 }
1064 if let Some(ref passthrough_behavior) = self.passthrough_behavior {
1065 ::serde::ser::SerializeMap::serialize_entry(&mut map, "PassthroughBehavior", passthrough_behavior)?;
1066 }
1067 if let Some(ref payload_format_version) = self.payload_format_version {
1068 ::serde::ser::SerializeMap::serialize_entry(&mut map, "PayloadFormatVersion", payload_format_version)?;
1069 }
1070 if let Some(ref request_parameters) = self.request_parameters {
1071 ::serde::ser::SerializeMap::serialize_entry(&mut map, "RequestParameters", request_parameters)?;
1072 }
1073 if let Some(ref request_templates) = self.request_templates {
1074 ::serde::ser::SerializeMap::serialize_entry(&mut map, "RequestTemplates", request_templates)?;
1075 }
1076 if let Some(ref response_parameters) = self.response_parameters {
1077 ::serde::ser::SerializeMap::serialize_entry(&mut map, "ResponseParameters", response_parameters)?;
1078 }
1079 if let Some(ref template_selection_expression) = self.template_selection_expression {
1080 ::serde::ser::SerializeMap::serialize_entry(&mut map, "TemplateSelectionExpression", template_selection_expression)?;
1081 }
1082 if let Some(ref timeout_in_millis) = self.timeout_in_millis {
1083 ::serde::ser::SerializeMap::serialize_entry(&mut map, "TimeoutInMillis", timeout_in_millis)?;
1084 }
1085 if let Some(ref tls_config) = self.tls_config {
1086 ::serde::ser::SerializeMap::serialize_entry(&mut map, "TlsConfig", tls_config)?;
1087 }
1088 ::serde::ser::SerializeMap::end(map)
1089 }
1090}
1091
1092impl<'de> ::serde::Deserialize<'de> for IntegrationProperties {
1093 fn deserialize<D: ::serde::Deserializer<'de>>(d: D) -> Result<IntegrationProperties, D::Error> {
1094 struct Visitor;
1095
1096 impl<'de> ::serde::de::Visitor<'de> for Visitor {
1097 type Value = IntegrationProperties;
1098
1099 fn expecting(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
1100 write!(f, "a struct of type IntegrationProperties")
1101 }
1102
1103 fn visit_map<A: ::serde::de::MapAccess<'de>>(self, mut map: A) -> Result<Self::Value, A::Error> {
1104 let mut api_id: Option<::Value<String>> = None;
1105 let mut connection_id: Option<::Value<String>> = None;
1106 let mut connection_type: Option<::Value<String>> = None;
1107 let mut content_handling_strategy: Option<::Value<String>> = None;
1108 let mut credentials_arn: Option<::Value<String>> = None;
1109 let mut description: Option<::Value<String>> = None;
1110 let mut integration_method: Option<::Value<String>> = None;
1111 let mut integration_subtype: Option<::Value<String>> = None;
1112 let mut integration_type: Option<::Value<String>> = None;
1113 let mut integration_uri: Option<::Value<String>> = None;
1114 let mut passthrough_behavior: Option<::Value<String>> = None;
1115 let mut payload_format_version: Option<::Value<String>> = None;
1116 let mut request_parameters: Option<::Value<::json::Value>> = None;
1117 let mut request_templates: Option<::Value<::json::Value>> = None;
1118 let mut response_parameters: Option<::Value<::json::Value>> = None;
1119 let mut template_selection_expression: Option<::Value<String>> = None;
1120 let mut timeout_in_millis: Option<::Value<u32>> = None;
1121 let mut tls_config: Option<::Value<self::integration::TlsConfig>> = None;
1122
1123 while let Some(__cfn_key) = ::serde::de::MapAccess::next_key::<String>(&mut map)? {
1124 match __cfn_key.as_ref() {
1125 "ApiId" => {
1126 api_id = ::serde::de::MapAccess::next_value(&mut map)?;
1127 }
1128 "ConnectionId" => {
1129 connection_id = ::serde::de::MapAccess::next_value(&mut map)?;
1130 }
1131 "ConnectionType" => {
1132 connection_type = ::serde::de::MapAccess::next_value(&mut map)?;
1133 }
1134 "ContentHandlingStrategy" => {
1135 content_handling_strategy = ::serde::de::MapAccess::next_value(&mut map)?;
1136 }
1137 "CredentialsArn" => {
1138 credentials_arn = ::serde::de::MapAccess::next_value(&mut map)?;
1139 }
1140 "Description" => {
1141 description = ::serde::de::MapAccess::next_value(&mut map)?;
1142 }
1143 "IntegrationMethod" => {
1144 integration_method = ::serde::de::MapAccess::next_value(&mut map)?;
1145 }
1146 "IntegrationSubtype" => {
1147 integration_subtype = ::serde::de::MapAccess::next_value(&mut map)?;
1148 }
1149 "IntegrationType" => {
1150 integration_type = ::serde::de::MapAccess::next_value(&mut map)?;
1151 }
1152 "IntegrationUri" => {
1153 integration_uri = ::serde::de::MapAccess::next_value(&mut map)?;
1154 }
1155 "PassthroughBehavior" => {
1156 passthrough_behavior = ::serde::de::MapAccess::next_value(&mut map)?;
1157 }
1158 "PayloadFormatVersion" => {
1159 payload_format_version = ::serde::de::MapAccess::next_value(&mut map)?;
1160 }
1161 "RequestParameters" => {
1162 request_parameters = ::serde::de::MapAccess::next_value(&mut map)?;
1163 }
1164 "RequestTemplates" => {
1165 request_templates = ::serde::de::MapAccess::next_value(&mut map)?;
1166 }
1167 "ResponseParameters" => {
1168 response_parameters = ::serde::de::MapAccess::next_value(&mut map)?;
1169 }
1170 "TemplateSelectionExpression" => {
1171 template_selection_expression = ::serde::de::MapAccess::next_value(&mut map)?;
1172 }
1173 "TimeoutInMillis" => {
1174 timeout_in_millis = ::serde::de::MapAccess::next_value(&mut map)?;
1175 }
1176 "TlsConfig" => {
1177 tls_config = ::serde::de::MapAccess::next_value(&mut map)?;
1178 }
1179 _ => {}
1180 }
1181 }
1182
1183 Ok(IntegrationProperties {
1184 api_id: api_id.ok_or(::serde::de::Error::missing_field("ApiId"))?,
1185 connection_id: connection_id,
1186 connection_type: connection_type,
1187 content_handling_strategy: content_handling_strategy,
1188 credentials_arn: credentials_arn,
1189 description: description,
1190 integration_method: integration_method,
1191 integration_subtype: integration_subtype,
1192 integration_type: integration_type.ok_or(::serde::de::Error::missing_field("IntegrationType"))?,
1193 integration_uri: integration_uri,
1194 passthrough_behavior: passthrough_behavior,
1195 payload_format_version: payload_format_version,
1196 request_parameters: request_parameters,
1197 request_templates: request_templates,
1198 response_parameters: response_parameters,
1199 template_selection_expression: template_selection_expression,
1200 timeout_in_millis: timeout_in_millis,
1201 tls_config: tls_config,
1202 })
1203 }
1204 }
1205
1206 d.deserialize_map(Visitor)
1207 }
1208}
1209
1210impl ::Resource for Integration {
1211 type Properties = IntegrationProperties;
1212 const TYPE: &'static str = "AWS::ApiGatewayV2::Integration";
1213 fn properties(&self) -> &IntegrationProperties {
1214 &self.properties
1215 }
1216 fn properties_mut(&mut self) -> &mut IntegrationProperties {
1217 &mut self.properties
1218 }
1219}
1220
1221impl ::private::Sealed for Integration {}
1222
1223impl From<IntegrationProperties> for Integration {
1224 fn from(properties: IntegrationProperties) -> Integration {
1225 Integration { properties }
1226 }
1227}
1228
1229#[derive(Debug, Default)]
1231pub struct IntegrationResponse {
1232 properties: IntegrationResponseProperties
1233}
1234
1235#[derive(Debug, Default)]
1237pub struct IntegrationResponseProperties {
1238 pub api_id: ::Value<String>,
1243 pub content_handling_strategy: Option<::Value<String>>,
1248 pub integration_id: ::Value<String>,
1253 pub integration_response_key: ::Value<String>,
1258 pub response_parameters: Option<::Value<::json::Value>>,
1263 pub response_templates: Option<::Value<::json::Value>>,
1268 pub template_selection_expression: Option<::Value<String>>,
1273}
1274
1275impl ::serde::Serialize for IntegrationResponseProperties {
1276 fn serialize<S: ::serde::Serializer>(&self, s: S) -> Result<S::Ok, S::Error> {
1277 let mut map = ::serde::Serializer::serialize_map(s, None)?;
1278 ::serde::ser::SerializeMap::serialize_entry(&mut map, "ApiId", &self.api_id)?;
1279 if let Some(ref content_handling_strategy) = self.content_handling_strategy {
1280 ::serde::ser::SerializeMap::serialize_entry(&mut map, "ContentHandlingStrategy", content_handling_strategy)?;
1281 }
1282 ::serde::ser::SerializeMap::serialize_entry(&mut map, "IntegrationId", &self.integration_id)?;
1283 ::serde::ser::SerializeMap::serialize_entry(&mut map, "IntegrationResponseKey", &self.integration_response_key)?;
1284 if let Some(ref response_parameters) = self.response_parameters {
1285 ::serde::ser::SerializeMap::serialize_entry(&mut map, "ResponseParameters", response_parameters)?;
1286 }
1287 if let Some(ref response_templates) = self.response_templates {
1288 ::serde::ser::SerializeMap::serialize_entry(&mut map, "ResponseTemplates", response_templates)?;
1289 }
1290 if let Some(ref template_selection_expression) = self.template_selection_expression {
1291 ::serde::ser::SerializeMap::serialize_entry(&mut map, "TemplateSelectionExpression", template_selection_expression)?;
1292 }
1293 ::serde::ser::SerializeMap::end(map)
1294 }
1295}
1296
1297impl<'de> ::serde::Deserialize<'de> for IntegrationResponseProperties {
1298 fn deserialize<D: ::serde::Deserializer<'de>>(d: D) -> Result<IntegrationResponseProperties, D::Error> {
1299 struct Visitor;
1300
1301 impl<'de> ::serde::de::Visitor<'de> for Visitor {
1302 type Value = IntegrationResponseProperties;
1303
1304 fn expecting(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
1305 write!(f, "a struct of type IntegrationResponseProperties")
1306 }
1307
1308 fn visit_map<A: ::serde::de::MapAccess<'de>>(self, mut map: A) -> Result<Self::Value, A::Error> {
1309 let mut api_id: Option<::Value<String>> = None;
1310 let mut content_handling_strategy: Option<::Value<String>> = None;
1311 let mut integration_id: Option<::Value<String>> = None;
1312 let mut integration_response_key: Option<::Value<String>> = None;
1313 let mut response_parameters: Option<::Value<::json::Value>> = None;
1314 let mut response_templates: Option<::Value<::json::Value>> = None;
1315 let mut template_selection_expression: Option<::Value<String>> = None;
1316
1317 while let Some(__cfn_key) = ::serde::de::MapAccess::next_key::<String>(&mut map)? {
1318 match __cfn_key.as_ref() {
1319 "ApiId" => {
1320 api_id = ::serde::de::MapAccess::next_value(&mut map)?;
1321 }
1322 "ContentHandlingStrategy" => {
1323 content_handling_strategy = ::serde::de::MapAccess::next_value(&mut map)?;
1324 }
1325 "IntegrationId" => {
1326 integration_id = ::serde::de::MapAccess::next_value(&mut map)?;
1327 }
1328 "IntegrationResponseKey" => {
1329 integration_response_key = ::serde::de::MapAccess::next_value(&mut map)?;
1330 }
1331 "ResponseParameters" => {
1332 response_parameters = ::serde::de::MapAccess::next_value(&mut map)?;
1333 }
1334 "ResponseTemplates" => {
1335 response_templates = ::serde::de::MapAccess::next_value(&mut map)?;
1336 }
1337 "TemplateSelectionExpression" => {
1338 template_selection_expression = ::serde::de::MapAccess::next_value(&mut map)?;
1339 }
1340 _ => {}
1341 }
1342 }
1343
1344 Ok(IntegrationResponseProperties {
1345 api_id: api_id.ok_or(::serde::de::Error::missing_field("ApiId"))?,
1346 content_handling_strategy: content_handling_strategy,
1347 integration_id: integration_id.ok_or(::serde::de::Error::missing_field("IntegrationId"))?,
1348 integration_response_key: integration_response_key.ok_or(::serde::de::Error::missing_field("IntegrationResponseKey"))?,
1349 response_parameters: response_parameters,
1350 response_templates: response_templates,
1351 template_selection_expression: template_selection_expression,
1352 })
1353 }
1354 }
1355
1356 d.deserialize_map(Visitor)
1357 }
1358}
1359
1360impl ::Resource for IntegrationResponse {
1361 type Properties = IntegrationResponseProperties;
1362 const TYPE: &'static str = "AWS::ApiGatewayV2::IntegrationResponse";
1363 fn properties(&self) -> &IntegrationResponseProperties {
1364 &self.properties
1365 }
1366 fn properties_mut(&mut self) -> &mut IntegrationResponseProperties {
1367 &mut self.properties
1368 }
1369}
1370
1371impl ::private::Sealed for IntegrationResponse {}
1372
1373impl From<IntegrationResponseProperties> for IntegrationResponse {
1374 fn from(properties: IntegrationResponseProperties) -> IntegrationResponse {
1375 IntegrationResponse { properties }
1376 }
1377}
1378
1379#[derive(Debug, Default)]
1381pub struct Model {
1382 properties: ModelProperties
1383}
1384
1385#[derive(Debug, Default)]
1387pub struct ModelProperties {
1388 pub api_id: ::Value<String>,
1393 pub content_type: Option<::Value<String>>,
1398 pub description: Option<::Value<String>>,
1403 pub name: ::Value<String>,
1408 pub schema: ::Value<::json::Value>,
1413}
1414
1415impl ::serde::Serialize for ModelProperties {
1416 fn serialize<S: ::serde::Serializer>(&self, s: S) -> Result<S::Ok, S::Error> {
1417 let mut map = ::serde::Serializer::serialize_map(s, None)?;
1418 ::serde::ser::SerializeMap::serialize_entry(&mut map, "ApiId", &self.api_id)?;
1419 if let Some(ref content_type) = self.content_type {
1420 ::serde::ser::SerializeMap::serialize_entry(&mut map, "ContentType", content_type)?;
1421 }
1422 if let Some(ref description) = self.description {
1423 ::serde::ser::SerializeMap::serialize_entry(&mut map, "Description", description)?;
1424 }
1425 ::serde::ser::SerializeMap::serialize_entry(&mut map, "Name", &self.name)?;
1426 ::serde::ser::SerializeMap::serialize_entry(&mut map, "Schema", &self.schema)?;
1427 ::serde::ser::SerializeMap::end(map)
1428 }
1429}
1430
1431impl<'de> ::serde::Deserialize<'de> for ModelProperties {
1432 fn deserialize<D: ::serde::Deserializer<'de>>(d: D) -> Result<ModelProperties, D::Error> {
1433 struct Visitor;
1434
1435 impl<'de> ::serde::de::Visitor<'de> for Visitor {
1436 type Value = ModelProperties;
1437
1438 fn expecting(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
1439 write!(f, "a struct of type ModelProperties")
1440 }
1441
1442 fn visit_map<A: ::serde::de::MapAccess<'de>>(self, mut map: A) -> Result<Self::Value, A::Error> {
1443 let mut api_id: Option<::Value<String>> = None;
1444 let mut content_type: Option<::Value<String>> = None;
1445 let mut description: Option<::Value<String>> = None;
1446 let mut name: Option<::Value<String>> = None;
1447 let mut schema: Option<::Value<::json::Value>> = None;
1448
1449 while let Some(__cfn_key) = ::serde::de::MapAccess::next_key::<String>(&mut map)? {
1450 match __cfn_key.as_ref() {
1451 "ApiId" => {
1452 api_id = ::serde::de::MapAccess::next_value(&mut map)?;
1453 }
1454 "ContentType" => {
1455 content_type = ::serde::de::MapAccess::next_value(&mut map)?;
1456 }
1457 "Description" => {
1458 description = ::serde::de::MapAccess::next_value(&mut map)?;
1459 }
1460 "Name" => {
1461 name = ::serde::de::MapAccess::next_value(&mut map)?;
1462 }
1463 "Schema" => {
1464 schema = ::serde::de::MapAccess::next_value(&mut map)?;
1465 }
1466 _ => {}
1467 }
1468 }
1469
1470 Ok(ModelProperties {
1471 api_id: api_id.ok_or(::serde::de::Error::missing_field("ApiId"))?,
1472 content_type: content_type,
1473 description: description,
1474 name: name.ok_or(::serde::de::Error::missing_field("Name"))?,
1475 schema: schema.ok_or(::serde::de::Error::missing_field("Schema"))?,
1476 })
1477 }
1478 }
1479
1480 d.deserialize_map(Visitor)
1481 }
1482}
1483
1484impl ::Resource for Model {
1485 type Properties = ModelProperties;
1486 const TYPE: &'static str = "AWS::ApiGatewayV2::Model";
1487 fn properties(&self) -> &ModelProperties {
1488 &self.properties
1489 }
1490 fn properties_mut(&mut self) -> &mut ModelProperties {
1491 &mut self.properties
1492 }
1493}
1494
1495impl ::private::Sealed for Model {}
1496
1497impl From<ModelProperties> for Model {
1498 fn from(properties: ModelProperties) -> Model {
1499 Model { properties }
1500 }
1501}
1502
1503#[derive(Debug, Default)]
1505pub struct Route {
1506 properties: RouteProperties
1507}
1508
1509#[derive(Debug, Default)]
1511pub struct RouteProperties {
1512 pub api_id: ::Value<String>,
1517 pub api_key_required: Option<::Value<bool>>,
1522 pub authorization_scopes: Option<::ValueList<String>>,
1527 pub authorization_type: Option<::Value<String>>,
1532 pub authorizer_id: Option<::Value<String>>,
1537 pub model_selection_expression: Option<::Value<String>>,
1542 pub operation_name: Option<::Value<String>>,
1547 pub request_models: Option<::Value<::json::Value>>,
1552 pub request_parameters: Option<::Value<::json::Value>>,
1557 pub route_key: ::Value<String>,
1562 pub route_response_selection_expression: Option<::Value<String>>,
1567 pub target: Option<::Value<String>>,
1572}
1573
1574impl ::serde::Serialize for RouteProperties {
1575 fn serialize<S: ::serde::Serializer>(&self, s: S) -> Result<S::Ok, S::Error> {
1576 let mut map = ::serde::Serializer::serialize_map(s, None)?;
1577 ::serde::ser::SerializeMap::serialize_entry(&mut map, "ApiId", &self.api_id)?;
1578 if let Some(ref api_key_required) = self.api_key_required {
1579 ::serde::ser::SerializeMap::serialize_entry(&mut map, "ApiKeyRequired", api_key_required)?;
1580 }
1581 if let Some(ref authorization_scopes) = self.authorization_scopes {
1582 ::serde::ser::SerializeMap::serialize_entry(&mut map, "AuthorizationScopes", authorization_scopes)?;
1583 }
1584 if let Some(ref authorization_type) = self.authorization_type {
1585 ::serde::ser::SerializeMap::serialize_entry(&mut map, "AuthorizationType", authorization_type)?;
1586 }
1587 if let Some(ref authorizer_id) = self.authorizer_id {
1588 ::serde::ser::SerializeMap::serialize_entry(&mut map, "AuthorizerId", authorizer_id)?;
1589 }
1590 if let Some(ref model_selection_expression) = self.model_selection_expression {
1591 ::serde::ser::SerializeMap::serialize_entry(&mut map, "ModelSelectionExpression", model_selection_expression)?;
1592 }
1593 if let Some(ref operation_name) = self.operation_name {
1594 ::serde::ser::SerializeMap::serialize_entry(&mut map, "OperationName", operation_name)?;
1595 }
1596 if let Some(ref request_models) = self.request_models {
1597 ::serde::ser::SerializeMap::serialize_entry(&mut map, "RequestModels", request_models)?;
1598 }
1599 if let Some(ref request_parameters) = self.request_parameters {
1600 ::serde::ser::SerializeMap::serialize_entry(&mut map, "RequestParameters", request_parameters)?;
1601 }
1602 ::serde::ser::SerializeMap::serialize_entry(&mut map, "RouteKey", &self.route_key)?;
1603 if let Some(ref route_response_selection_expression) = self.route_response_selection_expression {
1604 ::serde::ser::SerializeMap::serialize_entry(&mut map, "RouteResponseSelectionExpression", route_response_selection_expression)?;
1605 }
1606 if let Some(ref target) = self.target {
1607 ::serde::ser::SerializeMap::serialize_entry(&mut map, "Target", target)?;
1608 }
1609 ::serde::ser::SerializeMap::end(map)
1610 }
1611}
1612
1613impl<'de> ::serde::Deserialize<'de> for RouteProperties {
1614 fn deserialize<D: ::serde::Deserializer<'de>>(d: D) -> Result<RouteProperties, D::Error> {
1615 struct Visitor;
1616
1617 impl<'de> ::serde::de::Visitor<'de> for Visitor {
1618 type Value = RouteProperties;
1619
1620 fn expecting(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
1621 write!(f, "a struct of type RouteProperties")
1622 }
1623
1624 fn visit_map<A: ::serde::de::MapAccess<'de>>(self, mut map: A) -> Result<Self::Value, A::Error> {
1625 let mut api_id: Option<::Value<String>> = None;
1626 let mut api_key_required: Option<::Value<bool>> = None;
1627 let mut authorization_scopes: Option<::ValueList<String>> = None;
1628 let mut authorization_type: Option<::Value<String>> = None;
1629 let mut authorizer_id: Option<::Value<String>> = None;
1630 let mut model_selection_expression: Option<::Value<String>> = None;
1631 let mut operation_name: Option<::Value<String>> = None;
1632 let mut request_models: Option<::Value<::json::Value>> = None;
1633 let mut request_parameters: Option<::Value<::json::Value>> = None;
1634 let mut route_key: Option<::Value<String>> = None;
1635 let mut route_response_selection_expression: Option<::Value<String>> = None;
1636 let mut target: Option<::Value<String>> = None;
1637
1638 while let Some(__cfn_key) = ::serde::de::MapAccess::next_key::<String>(&mut map)? {
1639 match __cfn_key.as_ref() {
1640 "ApiId" => {
1641 api_id = ::serde::de::MapAccess::next_value(&mut map)?;
1642 }
1643 "ApiKeyRequired" => {
1644 api_key_required = ::serde::de::MapAccess::next_value(&mut map)?;
1645 }
1646 "AuthorizationScopes" => {
1647 authorization_scopes = ::serde::de::MapAccess::next_value(&mut map)?;
1648 }
1649 "AuthorizationType" => {
1650 authorization_type = ::serde::de::MapAccess::next_value(&mut map)?;
1651 }
1652 "AuthorizerId" => {
1653 authorizer_id = ::serde::de::MapAccess::next_value(&mut map)?;
1654 }
1655 "ModelSelectionExpression" => {
1656 model_selection_expression = ::serde::de::MapAccess::next_value(&mut map)?;
1657 }
1658 "OperationName" => {
1659 operation_name = ::serde::de::MapAccess::next_value(&mut map)?;
1660 }
1661 "RequestModels" => {
1662 request_models = ::serde::de::MapAccess::next_value(&mut map)?;
1663 }
1664 "RequestParameters" => {
1665 request_parameters = ::serde::de::MapAccess::next_value(&mut map)?;
1666 }
1667 "RouteKey" => {
1668 route_key = ::serde::de::MapAccess::next_value(&mut map)?;
1669 }
1670 "RouteResponseSelectionExpression" => {
1671 route_response_selection_expression = ::serde::de::MapAccess::next_value(&mut map)?;
1672 }
1673 "Target" => {
1674 target = ::serde::de::MapAccess::next_value(&mut map)?;
1675 }
1676 _ => {}
1677 }
1678 }
1679
1680 Ok(RouteProperties {
1681 api_id: api_id.ok_or(::serde::de::Error::missing_field("ApiId"))?,
1682 api_key_required: api_key_required,
1683 authorization_scopes: authorization_scopes,
1684 authorization_type: authorization_type,
1685 authorizer_id: authorizer_id,
1686 model_selection_expression: model_selection_expression,
1687 operation_name: operation_name,
1688 request_models: request_models,
1689 request_parameters: request_parameters,
1690 route_key: route_key.ok_or(::serde::de::Error::missing_field("RouteKey"))?,
1691 route_response_selection_expression: route_response_selection_expression,
1692 target: target,
1693 })
1694 }
1695 }
1696
1697 d.deserialize_map(Visitor)
1698 }
1699}
1700
1701impl ::Resource for Route {
1702 type Properties = RouteProperties;
1703 const TYPE: &'static str = "AWS::ApiGatewayV2::Route";
1704 fn properties(&self) -> &RouteProperties {
1705 &self.properties
1706 }
1707 fn properties_mut(&mut self) -> &mut RouteProperties {
1708 &mut self.properties
1709 }
1710}
1711
1712impl ::private::Sealed for Route {}
1713
1714impl From<RouteProperties> for Route {
1715 fn from(properties: RouteProperties) -> Route {
1716 Route { properties }
1717 }
1718}
1719
1720#[derive(Debug, Default)]
1722pub struct RouteResponse {
1723 properties: RouteResponseProperties
1724}
1725
1726#[derive(Debug, Default)]
1728pub struct RouteResponseProperties {
1729 pub api_id: ::Value<String>,
1734 pub model_selection_expression: Option<::Value<String>>,
1739 pub response_models: Option<::Value<::json::Value>>,
1744 pub response_parameters: Option<::Value<::json::Value>>,
1749 pub route_id: ::Value<String>,
1754 pub route_response_key: ::Value<String>,
1759}
1760
1761impl ::serde::Serialize for RouteResponseProperties {
1762 fn serialize<S: ::serde::Serializer>(&self, s: S) -> Result<S::Ok, S::Error> {
1763 let mut map = ::serde::Serializer::serialize_map(s, None)?;
1764 ::serde::ser::SerializeMap::serialize_entry(&mut map, "ApiId", &self.api_id)?;
1765 if let Some(ref model_selection_expression) = self.model_selection_expression {
1766 ::serde::ser::SerializeMap::serialize_entry(&mut map, "ModelSelectionExpression", model_selection_expression)?;
1767 }
1768 if let Some(ref response_models) = self.response_models {
1769 ::serde::ser::SerializeMap::serialize_entry(&mut map, "ResponseModels", response_models)?;
1770 }
1771 if let Some(ref response_parameters) = self.response_parameters {
1772 ::serde::ser::SerializeMap::serialize_entry(&mut map, "ResponseParameters", response_parameters)?;
1773 }
1774 ::serde::ser::SerializeMap::serialize_entry(&mut map, "RouteId", &self.route_id)?;
1775 ::serde::ser::SerializeMap::serialize_entry(&mut map, "RouteResponseKey", &self.route_response_key)?;
1776 ::serde::ser::SerializeMap::end(map)
1777 }
1778}
1779
1780impl<'de> ::serde::Deserialize<'de> for RouteResponseProperties {
1781 fn deserialize<D: ::serde::Deserializer<'de>>(d: D) -> Result<RouteResponseProperties, D::Error> {
1782 struct Visitor;
1783
1784 impl<'de> ::serde::de::Visitor<'de> for Visitor {
1785 type Value = RouteResponseProperties;
1786
1787 fn expecting(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
1788 write!(f, "a struct of type RouteResponseProperties")
1789 }
1790
1791 fn visit_map<A: ::serde::de::MapAccess<'de>>(self, mut map: A) -> Result<Self::Value, A::Error> {
1792 let mut api_id: Option<::Value<String>> = None;
1793 let mut model_selection_expression: Option<::Value<String>> = None;
1794 let mut response_models: Option<::Value<::json::Value>> = None;
1795 let mut response_parameters: Option<::Value<::json::Value>> = None;
1796 let mut route_id: Option<::Value<String>> = None;
1797 let mut route_response_key: Option<::Value<String>> = None;
1798
1799 while let Some(__cfn_key) = ::serde::de::MapAccess::next_key::<String>(&mut map)? {
1800 match __cfn_key.as_ref() {
1801 "ApiId" => {
1802 api_id = ::serde::de::MapAccess::next_value(&mut map)?;
1803 }
1804 "ModelSelectionExpression" => {
1805 model_selection_expression = ::serde::de::MapAccess::next_value(&mut map)?;
1806 }
1807 "ResponseModels" => {
1808 response_models = ::serde::de::MapAccess::next_value(&mut map)?;
1809 }
1810 "ResponseParameters" => {
1811 response_parameters = ::serde::de::MapAccess::next_value(&mut map)?;
1812 }
1813 "RouteId" => {
1814 route_id = ::serde::de::MapAccess::next_value(&mut map)?;
1815 }
1816 "RouteResponseKey" => {
1817 route_response_key = ::serde::de::MapAccess::next_value(&mut map)?;
1818 }
1819 _ => {}
1820 }
1821 }
1822
1823 Ok(RouteResponseProperties {
1824 api_id: api_id.ok_or(::serde::de::Error::missing_field("ApiId"))?,
1825 model_selection_expression: model_selection_expression,
1826 response_models: response_models,
1827 response_parameters: response_parameters,
1828 route_id: route_id.ok_or(::serde::de::Error::missing_field("RouteId"))?,
1829 route_response_key: route_response_key.ok_or(::serde::de::Error::missing_field("RouteResponseKey"))?,
1830 })
1831 }
1832 }
1833
1834 d.deserialize_map(Visitor)
1835 }
1836}
1837
1838impl ::Resource for RouteResponse {
1839 type Properties = RouteResponseProperties;
1840 const TYPE: &'static str = "AWS::ApiGatewayV2::RouteResponse";
1841 fn properties(&self) -> &RouteResponseProperties {
1842 &self.properties
1843 }
1844 fn properties_mut(&mut self) -> &mut RouteResponseProperties {
1845 &mut self.properties
1846 }
1847}
1848
1849impl ::private::Sealed for RouteResponse {}
1850
1851impl From<RouteResponseProperties> for RouteResponse {
1852 fn from(properties: RouteResponseProperties) -> RouteResponse {
1853 RouteResponse { properties }
1854 }
1855}
1856
1857#[derive(Debug, Default)]
1859pub struct Stage {
1860 properties: StageProperties
1861}
1862
1863#[derive(Debug, Default)]
1865pub struct StageProperties {
1866 pub access_log_settings: Option<::Value<self::stage::AccessLogSettings>>,
1871 pub access_policy_id: Option<::Value<String>>,
1876 pub api_id: ::Value<String>,
1881 pub auto_deploy: Option<::Value<bool>>,
1886 pub client_certificate_id: Option<::Value<String>>,
1891 pub default_route_settings: Option<::Value<self::stage::RouteSettings>>,
1896 pub deployment_id: Option<::Value<String>>,
1901 pub description: Option<::Value<String>>,
1906 pub route_settings: Option<::Value<::json::Value>>,
1911 pub stage_name: ::Value<String>,
1916 pub stage_variables: Option<::Value<::json::Value>>,
1921 pub tags: Option<::Value<::json::Value>>,
1926}
1927
1928impl ::serde::Serialize for StageProperties {
1929 fn serialize<S: ::serde::Serializer>(&self, s: S) -> Result<S::Ok, S::Error> {
1930 let mut map = ::serde::Serializer::serialize_map(s, None)?;
1931 if let Some(ref access_log_settings) = self.access_log_settings {
1932 ::serde::ser::SerializeMap::serialize_entry(&mut map, "AccessLogSettings", access_log_settings)?;
1933 }
1934 if let Some(ref access_policy_id) = self.access_policy_id {
1935 ::serde::ser::SerializeMap::serialize_entry(&mut map, "AccessPolicyId", access_policy_id)?;
1936 }
1937 ::serde::ser::SerializeMap::serialize_entry(&mut map, "ApiId", &self.api_id)?;
1938 if let Some(ref auto_deploy) = self.auto_deploy {
1939 ::serde::ser::SerializeMap::serialize_entry(&mut map, "AutoDeploy", auto_deploy)?;
1940 }
1941 if let Some(ref client_certificate_id) = self.client_certificate_id {
1942 ::serde::ser::SerializeMap::serialize_entry(&mut map, "ClientCertificateId", client_certificate_id)?;
1943 }
1944 if let Some(ref default_route_settings) = self.default_route_settings {
1945 ::serde::ser::SerializeMap::serialize_entry(&mut map, "DefaultRouteSettings", default_route_settings)?;
1946 }
1947 if let Some(ref deployment_id) = self.deployment_id {
1948 ::serde::ser::SerializeMap::serialize_entry(&mut map, "DeploymentId", deployment_id)?;
1949 }
1950 if let Some(ref description) = self.description {
1951 ::serde::ser::SerializeMap::serialize_entry(&mut map, "Description", description)?;
1952 }
1953 if let Some(ref route_settings) = self.route_settings {
1954 ::serde::ser::SerializeMap::serialize_entry(&mut map, "RouteSettings", route_settings)?;
1955 }
1956 ::serde::ser::SerializeMap::serialize_entry(&mut map, "StageName", &self.stage_name)?;
1957 if let Some(ref stage_variables) = self.stage_variables {
1958 ::serde::ser::SerializeMap::serialize_entry(&mut map, "StageVariables", stage_variables)?;
1959 }
1960 if let Some(ref tags) = self.tags {
1961 ::serde::ser::SerializeMap::serialize_entry(&mut map, "Tags", tags)?;
1962 }
1963 ::serde::ser::SerializeMap::end(map)
1964 }
1965}
1966
1967impl<'de> ::serde::Deserialize<'de> for StageProperties {
1968 fn deserialize<D: ::serde::Deserializer<'de>>(d: D) -> Result<StageProperties, D::Error> {
1969 struct Visitor;
1970
1971 impl<'de> ::serde::de::Visitor<'de> for Visitor {
1972 type Value = StageProperties;
1973
1974 fn expecting(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
1975 write!(f, "a struct of type StageProperties")
1976 }
1977
1978 fn visit_map<A: ::serde::de::MapAccess<'de>>(self, mut map: A) -> Result<Self::Value, A::Error> {
1979 let mut access_log_settings: Option<::Value<self::stage::AccessLogSettings>> = None;
1980 let mut access_policy_id: Option<::Value<String>> = None;
1981 let mut api_id: Option<::Value<String>> = None;
1982 let mut auto_deploy: Option<::Value<bool>> = None;
1983 let mut client_certificate_id: Option<::Value<String>> = None;
1984 let mut default_route_settings: Option<::Value<self::stage::RouteSettings>> = None;
1985 let mut deployment_id: Option<::Value<String>> = None;
1986 let mut description: Option<::Value<String>> = None;
1987 let mut route_settings: Option<::Value<::json::Value>> = None;
1988 let mut stage_name: Option<::Value<String>> = None;
1989 let mut stage_variables: Option<::Value<::json::Value>> = None;
1990 let mut tags: Option<::Value<::json::Value>> = None;
1991
1992 while let Some(__cfn_key) = ::serde::de::MapAccess::next_key::<String>(&mut map)? {
1993 match __cfn_key.as_ref() {
1994 "AccessLogSettings" => {
1995 access_log_settings = ::serde::de::MapAccess::next_value(&mut map)?;
1996 }
1997 "AccessPolicyId" => {
1998 access_policy_id = ::serde::de::MapAccess::next_value(&mut map)?;
1999 }
2000 "ApiId" => {
2001 api_id = ::serde::de::MapAccess::next_value(&mut map)?;
2002 }
2003 "AutoDeploy" => {
2004 auto_deploy = ::serde::de::MapAccess::next_value(&mut map)?;
2005 }
2006 "ClientCertificateId" => {
2007 client_certificate_id = ::serde::de::MapAccess::next_value(&mut map)?;
2008 }
2009 "DefaultRouteSettings" => {
2010 default_route_settings = ::serde::de::MapAccess::next_value(&mut map)?;
2011 }
2012 "DeploymentId" => {
2013 deployment_id = ::serde::de::MapAccess::next_value(&mut map)?;
2014 }
2015 "Description" => {
2016 description = ::serde::de::MapAccess::next_value(&mut map)?;
2017 }
2018 "RouteSettings" => {
2019 route_settings = ::serde::de::MapAccess::next_value(&mut map)?;
2020 }
2021 "StageName" => {
2022 stage_name = ::serde::de::MapAccess::next_value(&mut map)?;
2023 }
2024 "StageVariables" => {
2025 stage_variables = ::serde::de::MapAccess::next_value(&mut map)?;
2026 }
2027 "Tags" => {
2028 tags = ::serde::de::MapAccess::next_value(&mut map)?;
2029 }
2030 _ => {}
2031 }
2032 }
2033
2034 Ok(StageProperties {
2035 access_log_settings: access_log_settings,
2036 access_policy_id: access_policy_id,
2037 api_id: api_id.ok_or(::serde::de::Error::missing_field("ApiId"))?,
2038 auto_deploy: auto_deploy,
2039 client_certificate_id: client_certificate_id,
2040 default_route_settings: default_route_settings,
2041 deployment_id: deployment_id,
2042 description: description,
2043 route_settings: route_settings,
2044 stage_name: stage_name.ok_or(::serde::de::Error::missing_field("StageName"))?,
2045 stage_variables: stage_variables,
2046 tags: tags,
2047 })
2048 }
2049 }
2050
2051 d.deserialize_map(Visitor)
2052 }
2053}
2054
2055impl ::Resource for Stage {
2056 type Properties = StageProperties;
2057 const TYPE: &'static str = "AWS::ApiGatewayV2::Stage";
2058 fn properties(&self) -> &StageProperties {
2059 &self.properties
2060 }
2061 fn properties_mut(&mut self) -> &mut StageProperties {
2062 &mut self.properties
2063 }
2064}
2065
2066impl ::private::Sealed for Stage {}
2067
2068impl From<StageProperties> for Stage {
2069 fn from(properties: StageProperties) -> Stage {
2070 Stage { properties }
2071 }
2072}
2073
2074#[derive(Debug, Default)]
2076pub struct VpcLink {
2077 properties: VpcLinkProperties
2078}
2079
2080#[derive(Debug, Default)]
2082pub struct VpcLinkProperties {
2083 pub name: ::Value<String>,
2088 pub security_group_ids: Option<::ValueList<String>>,
2093 pub subnet_ids: ::ValueList<String>,
2098 pub tags: Option<::Value<::json::Value>>,
2103}
2104
2105impl ::serde::Serialize for VpcLinkProperties {
2106 fn serialize<S: ::serde::Serializer>(&self, s: S) -> Result<S::Ok, S::Error> {
2107 let mut map = ::serde::Serializer::serialize_map(s, None)?;
2108 ::serde::ser::SerializeMap::serialize_entry(&mut map, "Name", &self.name)?;
2109 if let Some(ref security_group_ids) = self.security_group_ids {
2110 ::serde::ser::SerializeMap::serialize_entry(&mut map, "SecurityGroupIds", security_group_ids)?;
2111 }
2112 ::serde::ser::SerializeMap::serialize_entry(&mut map, "SubnetIds", &self.subnet_ids)?;
2113 if let Some(ref tags) = self.tags {
2114 ::serde::ser::SerializeMap::serialize_entry(&mut map, "Tags", tags)?;
2115 }
2116 ::serde::ser::SerializeMap::end(map)
2117 }
2118}
2119
2120impl<'de> ::serde::Deserialize<'de> for VpcLinkProperties {
2121 fn deserialize<D: ::serde::Deserializer<'de>>(d: D) -> Result<VpcLinkProperties, D::Error> {
2122 struct Visitor;
2123
2124 impl<'de> ::serde::de::Visitor<'de> for Visitor {
2125 type Value = VpcLinkProperties;
2126
2127 fn expecting(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
2128 write!(f, "a struct of type VpcLinkProperties")
2129 }
2130
2131 fn visit_map<A: ::serde::de::MapAccess<'de>>(self, mut map: A) -> Result<Self::Value, A::Error> {
2132 let mut name: Option<::Value<String>> = None;
2133 let mut security_group_ids: Option<::ValueList<String>> = None;
2134 let mut subnet_ids: Option<::ValueList<String>> = None;
2135 let mut tags: Option<::Value<::json::Value>> = None;
2136
2137 while let Some(__cfn_key) = ::serde::de::MapAccess::next_key::<String>(&mut map)? {
2138 match __cfn_key.as_ref() {
2139 "Name" => {
2140 name = ::serde::de::MapAccess::next_value(&mut map)?;
2141 }
2142 "SecurityGroupIds" => {
2143 security_group_ids = ::serde::de::MapAccess::next_value(&mut map)?;
2144 }
2145 "SubnetIds" => {
2146 subnet_ids = ::serde::de::MapAccess::next_value(&mut map)?;
2147 }
2148 "Tags" => {
2149 tags = ::serde::de::MapAccess::next_value(&mut map)?;
2150 }
2151 _ => {}
2152 }
2153 }
2154
2155 Ok(VpcLinkProperties {
2156 name: name.ok_or(::serde::de::Error::missing_field("Name"))?,
2157 security_group_ids: security_group_ids,
2158 subnet_ids: subnet_ids.ok_or(::serde::de::Error::missing_field("SubnetIds"))?,
2159 tags: tags,
2160 })
2161 }
2162 }
2163
2164 d.deserialize_map(Visitor)
2165 }
2166}
2167
2168impl ::Resource for VpcLink {
2169 type Properties = VpcLinkProperties;
2170 const TYPE: &'static str = "AWS::ApiGatewayV2::VpcLink";
2171 fn properties(&self) -> &VpcLinkProperties {
2172 &self.properties
2173 }
2174 fn properties_mut(&mut self) -> &mut VpcLinkProperties {
2175 &mut self.properties
2176 }
2177}
2178
2179impl ::private::Sealed for VpcLink {}
2180
2181impl From<VpcLinkProperties> for VpcLink {
2182 fn from(properties: VpcLinkProperties) -> VpcLink {
2183 VpcLink { properties }
2184 }
2185}
2186
2187pub mod api {
2188 #[derive(Debug, Default)]
2192 pub struct BodyS3Location {
2193 pub bucket: Option<::Value<String>>,
2198 pub etag: Option<::Value<String>>,
2203 pub key: Option<::Value<String>>,
2208 pub version: Option<::Value<String>>,
2213 }
2214
2215 impl ::codec::SerializeValue for BodyS3Location {
2216 fn serialize<S: ::serde::Serializer>(&self, s: S) -> Result<S::Ok, S::Error> {
2217 let mut map = ::serde::Serializer::serialize_map(s, None)?;
2218 if let Some(ref bucket) = self.bucket {
2219 ::serde::ser::SerializeMap::serialize_entry(&mut map, "Bucket", bucket)?;
2220 }
2221 if let Some(ref etag) = self.etag {
2222 ::serde::ser::SerializeMap::serialize_entry(&mut map, "Etag", etag)?;
2223 }
2224 if let Some(ref key) = self.key {
2225 ::serde::ser::SerializeMap::serialize_entry(&mut map, "Key", key)?;
2226 }
2227 if let Some(ref version) = self.version {
2228 ::serde::ser::SerializeMap::serialize_entry(&mut map, "Version", version)?;
2229 }
2230 ::serde::ser::SerializeMap::end(map)
2231 }
2232 }
2233
2234 impl ::codec::DeserializeValue for BodyS3Location {
2235 fn deserialize<'de, D: ::serde::Deserializer<'de>>(d: D) -> Result<BodyS3Location, D::Error> {
2236 struct Visitor;
2237
2238 impl<'de> ::serde::de::Visitor<'de> for Visitor {
2239 type Value = BodyS3Location;
2240
2241 fn expecting(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
2242 write!(f, "a struct of type BodyS3Location")
2243 }
2244
2245 fn visit_map<A: ::serde::de::MapAccess<'de>>(self, mut map: A) -> Result<Self::Value, A::Error> {
2246 let mut bucket: Option<::Value<String>> = None;
2247 let mut etag: Option<::Value<String>> = None;
2248 let mut key: Option<::Value<String>> = None;
2249 let mut version: Option<::Value<String>> = None;
2250
2251 while let Some(__cfn_key) = ::serde::de::MapAccess::next_key::<String>(&mut map)? {
2252 match __cfn_key.as_ref() {
2253 "Bucket" => {
2254 bucket = ::serde::de::MapAccess::next_value(&mut map)?;
2255 }
2256 "Etag" => {
2257 etag = ::serde::de::MapAccess::next_value(&mut map)?;
2258 }
2259 "Key" => {
2260 key = ::serde::de::MapAccess::next_value(&mut map)?;
2261 }
2262 "Version" => {
2263 version = ::serde::de::MapAccess::next_value(&mut map)?;
2264 }
2265 _ => {}
2266 }
2267 }
2268
2269 Ok(BodyS3Location {
2270 bucket: bucket,
2271 etag: etag,
2272 key: key,
2273 version: version,
2274 })
2275 }
2276 }
2277
2278 d.deserialize_map(Visitor)
2279 }
2280 }
2281
2282 #[derive(Debug, Default)]
2284 pub struct Cors {
2285 pub allow_credentials: Option<::Value<bool>>,
2290 pub allow_headers: Option<::ValueList<String>>,
2295 pub allow_methods: Option<::ValueList<String>>,
2300 pub allow_origins: Option<::ValueList<String>>,
2305 pub expose_headers: Option<::ValueList<String>>,
2310 pub max_age: Option<::Value<u32>>,
2315 }
2316
2317 impl ::codec::SerializeValue for Cors {
2318 fn serialize<S: ::serde::Serializer>(&self, s: S) -> Result<S::Ok, S::Error> {
2319 let mut map = ::serde::Serializer::serialize_map(s, None)?;
2320 if let Some(ref allow_credentials) = self.allow_credentials {
2321 ::serde::ser::SerializeMap::serialize_entry(&mut map, "AllowCredentials", allow_credentials)?;
2322 }
2323 if let Some(ref allow_headers) = self.allow_headers {
2324 ::serde::ser::SerializeMap::serialize_entry(&mut map, "AllowHeaders", allow_headers)?;
2325 }
2326 if let Some(ref allow_methods) = self.allow_methods {
2327 ::serde::ser::SerializeMap::serialize_entry(&mut map, "AllowMethods", allow_methods)?;
2328 }
2329 if let Some(ref allow_origins) = self.allow_origins {
2330 ::serde::ser::SerializeMap::serialize_entry(&mut map, "AllowOrigins", allow_origins)?;
2331 }
2332 if let Some(ref expose_headers) = self.expose_headers {
2333 ::serde::ser::SerializeMap::serialize_entry(&mut map, "ExposeHeaders", expose_headers)?;
2334 }
2335 if let Some(ref max_age) = self.max_age {
2336 ::serde::ser::SerializeMap::serialize_entry(&mut map, "MaxAge", max_age)?;
2337 }
2338 ::serde::ser::SerializeMap::end(map)
2339 }
2340 }
2341
2342 impl ::codec::DeserializeValue for Cors {
2343 fn deserialize<'de, D: ::serde::Deserializer<'de>>(d: D) -> Result<Cors, D::Error> {
2344 struct Visitor;
2345
2346 impl<'de> ::serde::de::Visitor<'de> for Visitor {
2347 type Value = Cors;
2348
2349 fn expecting(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
2350 write!(f, "a struct of type Cors")
2351 }
2352
2353 fn visit_map<A: ::serde::de::MapAccess<'de>>(self, mut map: A) -> Result<Self::Value, A::Error> {
2354 let mut allow_credentials: Option<::Value<bool>> = None;
2355 let mut allow_headers: Option<::ValueList<String>> = None;
2356 let mut allow_methods: Option<::ValueList<String>> = None;
2357 let mut allow_origins: Option<::ValueList<String>> = None;
2358 let mut expose_headers: Option<::ValueList<String>> = None;
2359 let mut max_age: Option<::Value<u32>> = None;
2360
2361 while let Some(__cfn_key) = ::serde::de::MapAccess::next_key::<String>(&mut map)? {
2362 match __cfn_key.as_ref() {
2363 "AllowCredentials" => {
2364 allow_credentials = ::serde::de::MapAccess::next_value(&mut map)?;
2365 }
2366 "AllowHeaders" => {
2367 allow_headers = ::serde::de::MapAccess::next_value(&mut map)?;
2368 }
2369 "AllowMethods" => {
2370 allow_methods = ::serde::de::MapAccess::next_value(&mut map)?;
2371 }
2372 "AllowOrigins" => {
2373 allow_origins = ::serde::de::MapAccess::next_value(&mut map)?;
2374 }
2375 "ExposeHeaders" => {
2376 expose_headers = ::serde::de::MapAccess::next_value(&mut map)?;
2377 }
2378 "MaxAge" => {
2379 max_age = ::serde::de::MapAccess::next_value(&mut map)?;
2380 }
2381 _ => {}
2382 }
2383 }
2384
2385 Ok(Cors {
2386 allow_credentials: allow_credentials,
2387 allow_headers: allow_headers,
2388 allow_methods: allow_methods,
2389 allow_origins: allow_origins,
2390 expose_headers: expose_headers,
2391 max_age: max_age,
2392 })
2393 }
2394 }
2395
2396 d.deserialize_map(Visitor)
2397 }
2398 }
2399}
2400
2401pub mod api_gateway_managed_overrides {
2402 #[derive(Debug, Default)]
2406 pub struct AccessLogSettings {
2407 pub destination_arn: Option<::Value<String>>,
2412 pub format: Option<::Value<String>>,
2417 }
2418
2419 impl ::codec::SerializeValue for AccessLogSettings {
2420 fn serialize<S: ::serde::Serializer>(&self, s: S) -> Result<S::Ok, S::Error> {
2421 let mut map = ::serde::Serializer::serialize_map(s, None)?;
2422 if let Some(ref destination_arn) = self.destination_arn {
2423 ::serde::ser::SerializeMap::serialize_entry(&mut map, "DestinationArn", destination_arn)?;
2424 }
2425 if let Some(ref format) = self.format {
2426 ::serde::ser::SerializeMap::serialize_entry(&mut map, "Format", format)?;
2427 }
2428 ::serde::ser::SerializeMap::end(map)
2429 }
2430 }
2431
2432 impl ::codec::DeserializeValue for AccessLogSettings {
2433 fn deserialize<'de, D: ::serde::Deserializer<'de>>(d: D) -> Result<AccessLogSettings, D::Error> {
2434 struct Visitor;
2435
2436 impl<'de> ::serde::de::Visitor<'de> for Visitor {
2437 type Value = AccessLogSettings;
2438
2439 fn expecting(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
2440 write!(f, "a struct of type AccessLogSettings")
2441 }
2442
2443 fn visit_map<A: ::serde::de::MapAccess<'de>>(self, mut map: A) -> Result<Self::Value, A::Error> {
2444 let mut destination_arn: Option<::Value<String>> = None;
2445 let mut format: Option<::Value<String>> = None;
2446
2447 while let Some(__cfn_key) = ::serde::de::MapAccess::next_key::<String>(&mut map)? {
2448 match __cfn_key.as_ref() {
2449 "DestinationArn" => {
2450 destination_arn = ::serde::de::MapAccess::next_value(&mut map)?;
2451 }
2452 "Format" => {
2453 format = ::serde::de::MapAccess::next_value(&mut map)?;
2454 }
2455 _ => {}
2456 }
2457 }
2458
2459 Ok(AccessLogSettings {
2460 destination_arn: destination_arn,
2461 format: format,
2462 })
2463 }
2464 }
2465
2466 d.deserialize_map(Visitor)
2467 }
2468 }
2469
2470 #[derive(Debug, Default)]
2472 pub struct IntegrationOverrides {
2473 pub description: Option<::Value<String>>,
2478 pub integration_method: Option<::Value<String>>,
2483 pub payload_format_version: Option<::Value<String>>,
2488 pub timeout_in_millis: Option<::Value<u32>>,
2493 }
2494
2495 impl ::codec::SerializeValue for IntegrationOverrides {
2496 fn serialize<S: ::serde::Serializer>(&self, s: S) -> Result<S::Ok, S::Error> {
2497 let mut map = ::serde::Serializer::serialize_map(s, None)?;
2498 if let Some(ref description) = self.description {
2499 ::serde::ser::SerializeMap::serialize_entry(&mut map, "Description", description)?;
2500 }
2501 if let Some(ref integration_method) = self.integration_method {
2502 ::serde::ser::SerializeMap::serialize_entry(&mut map, "IntegrationMethod", integration_method)?;
2503 }
2504 if let Some(ref payload_format_version) = self.payload_format_version {
2505 ::serde::ser::SerializeMap::serialize_entry(&mut map, "PayloadFormatVersion", payload_format_version)?;
2506 }
2507 if let Some(ref timeout_in_millis) = self.timeout_in_millis {
2508 ::serde::ser::SerializeMap::serialize_entry(&mut map, "TimeoutInMillis", timeout_in_millis)?;
2509 }
2510 ::serde::ser::SerializeMap::end(map)
2511 }
2512 }
2513
2514 impl ::codec::DeserializeValue for IntegrationOverrides {
2515 fn deserialize<'de, D: ::serde::Deserializer<'de>>(d: D) -> Result<IntegrationOverrides, D::Error> {
2516 struct Visitor;
2517
2518 impl<'de> ::serde::de::Visitor<'de> for Visitor {
2519 type Value = IntegrationOverrides;
2520
2521 fn expecting(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
2522 write!(f, "a struct of type IntegrationOverrides")
2523 }
2524
2525 fn visit_map<A: ::serde::de::MapAccess<'de>>(self, mut map: A) -> Result<Self::Value, A::Error> {
2526 let mut description: Option<::Value<String>> = None;
2527 let mut integration_method: Option<::Value<String>> = None;
2528 let mut payload_format_version: Option<::Value<String>> = None;
2529 let mut timeout_in_millis: Option<::Value<u32>> = None;
2530
2531 while let Some(__cfn_key) = ::serde::de::MapAccess::next_key::<String>(&mut map)? {
2532 match __cfn_key.as_ref() {
2533 "Description" => {
2534 description = ::serde::de::MapAccess::next_value(&mut map)?;
2535 }
2536 "IntegrationMethod" => {
2537 integration_method = ::serde::de::MapAccess::next_value(&mut map)?;
2538 }
2539 "PayloadFormatVersion" => {
2540 payload_format_version = ::serde::de::MapAccess::next_value(&mut map)?;
2541 }
2542 "TimeoutInMillis" => {
2543 timeout_in_millis = ::serde::de::MapAccess::next_value(&mut map)?;
2544 }
2545 _ => {}
2546 }
2547 }
2548
2549 Ok(IntegrationOverrides {
2550 description: description,
2551 integration_method: integration_method,
2552 payload_format_version: payload_format_version,
2553 timeout_in_millis: timeout_in_millis,
2554 })
2555 }
2556 }
2557
2558 d.deserialize_map(Visitor)
2559 }
2560 }
2561
2562 #[derive(Debug, Default)]
2564 pub struct RouteOverrides {
2565 pub authorization_scopes: Option<::ValueList<String>>,
2570 pub authorization_type: Option<::Value<String>>,
2575 pub authorizer_id: Option<::Value<String>>,
2580 pub operation_name: Option<::Value<String>>,
2585 pub target: Option<::Value<String>>,
2590 }
2591
2592 impl ::codec::SerializeValue for RouteOverrides {
2593 fn serialize<S: ::serde::Serializer>(&self, s: S) -> Result<S::Ok, S::Error> {
2594 let mut map = ::serde::Serializer::serialize_map(s, None)?;
2595 if let Some(ref authorization_scopes) = self.authorization_scopes {
2596 ::serde::ser::SerializeMap::serialize_entry(&mut map, "AuthorizationScopes", authorization_scopes)?;
2597 }
2598 if let Some(ref authorization_type) = self.authorization_type {
2599 ::serde::ser::SerializeMap::serialize_entry(&mut map, "AuthorizationType", authorization_type)?;
2600 }
2601 if let Some(ref authorizer_id) = self.authorizer_id {
2602 ::serde::ser::SerializeMap::serialize_entry(&mut map, "AuthorizerId", authorizer_id)?;
2603 }
2604 if let Some(ref operation_name) = self.operation_name {
2605 ::serde::ser::SerializeMap::serialize_entry(&mut map, "OperationName", operation_name)?;
2606 }
2607 if let Some(ref target) = self.target {
2608 ::serde::ser::SerializeMap::serialize_entry(&mut map, "Target", target)?;
2609 }
2610 ::serde::ser::SerializeMap::end(map)
2611 }
2612 }
2613
2614 impl ::codec::DeserializeValue for RouteOverrides {
2615 fn deserialize<'de, D: ::serde::Deserializer<'de>>(d: D) -> Result<RouteOverrides, D::Error> {
2616 struct Visitor;
2617
2618 impl<'de> ::serde::de::Visitor<'de> for Visitor {
2619 type Value = RouteOverrides;
2620
2621 fn expecting(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
2622 write!(f, "a struct of type RouteOverrides")
2623 }
2624
2625 fn visit_map<A: ::serde::de::MapAccess<'de>>(self, mut map: A) -> Result<Self::Value, A::Error> {
2626 let mut authorization_scopes: Option<::ValueList<String>> = None;
2627 let mut authorization_type: Option<::Value<String>> = None;
2628 let mut authorizer_id: Option<::Value<String>> = None;
2629 let mut operation_name: Option<::Value<String>> = None;
2630 let mut target: Option<::Value<String>> = None;
2631
2632 while let Some(__cfn_key) = ::serde::de::MapAccess::next_key::<String>(&mut map)? {
2633 match __cfn_key.as_ref() {
2634 "AuthorizationScopes" => {
2635 authorization_scopes = ::serde::de::MapAccess::next_value(&mut map)?;
2636 }
2637 "AuthorizationType" => {
2638 authorization_type = ::serde::de::MapAccess::next_value(&mut map)?;
2639 }
2640 "AuthorizerId" => {
2641 authorizer_id = ::serde::de::MapAccess::next_value(&mut map)?;
2642 }
2643 "OperationName" => {
2644 operation_name = ::serde::de::MapAccess::next_value(&mut map)?;
2645 }
2646 "Target" => {
2647 target = ::serde::de::MapAccess::next_value(&mut map)?;
2648 }
2649 _ => {}
2650 }
2651 }
2652
2653 Ok(RouteOverrides {
2654 authorization_scopes: authorization_scopes,
2655 authorization_type: authorization_type,
2656 authorizer_id: authorizer_id,
2657 operation_name: operation_name,
2658 target: target,
2659 })
2660 }
2661 }
2662
2663 d.deserialize_map(Visitor)
2664 }
2665 }
2666
2667 #[derive(Debug, Default)]
2669 pub struct RouteSettings {
2670 pub data_trace_enabled: Option<::Value<bool>>,
2675 pub detailed_metrics_enabled: Option<::Value<bool>>,
2680 pub logging_level: Option<::Value<String>>,
2685 pub throttling_burst_limit: Option<::Value<u32>>,
2690 pub throttling_rate_limit: Option<::Value<f64>>,
2695 }
2696
2697 impl ::codec::SerializeValue for RouteSettings {
2698 fn serialize<S: ::serde::Serializer>(&self, s: S) -> Result<S::Ok, S::Error> {
2699 let mut map = ::serde::Serializer::serialize_map(s, None)?;
2700 if let Some(ref data_trace_enabled) = self.data_trace_enabled {
2701 ::serde::ser::SerializeMap::serialize_entry(&mut map, "DataTraceEnabled", data_trace_enabled)?;
2702 }
2703 if let Some(ref detailed_metrics_enabled) = self.detailed_metrics_enabled {
2704 ::serde::ser::SerializeMap::serialize_entry(&mut map, "DetailedMetricsEnabled", detailed_metrics_enabled)?;
2705 }
2706 if let Some(ref logging_level) = self.logging_level {
2707 ::serde::ser::SerializeMap::serialize_entry(&mut map, "LoggingLevel", logging_level)?;
2708 }
2709 if let Some(ref throttling_burst_limit) = self.throttling_burst_limit {
2710 ::serde::ser::SerializeMap::serialize_entry(&mut map, "ThrottlingBurstLimit", throttling_burst_limit)?;
2711 }
2712 if let Some(ref throttling_rate_limit) = self.throttling_rate_limit {
2713 ::serde::ser::SerializeMap::serialize_entry(&mut map, "ThrottlingRateLimit", throttling_rate_limit)?;
2714 }
2715 ::serde::ser::SerializeMap::end(map)
2716 }
2717 }
2718
2719 impl ::codec::DeserializeValue for RouteSettings {
2720 fn deserialize<'de, D: ::serde::Deserializer<'de>>(d: D) -> Result<RouteSettings, D::Error> {
2721 struct Visitor;
2722
2723 impl<'de> ::serde::de::Visitor<'de> for Visitor {
2724 type Value = RouteSettings;
2725
2726 fn expecting(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
2727 write!(f, "a struct of type RouteSettings")
2728 }
2729
2730 fn visit_map<A: ::serde::de::MapAccess<'de>>(self, mut map: A) -> Result<Self::Value, A::Error> {
2731 let mut data_trace_enabled: Option<::Value<bool>> = None;
2732 let mut detailed_metrics_enabled: Option<::Value<bool>> = None;
2733 let mut logging_level: Option<::Value<String>> = None;
2734 let mut throttling_burst_limit: Option<::Value<u32>> = None;
2735 let mut throttling_rate_limit: Option<::Value<f64>> = None;
2736
2737 while let Some(__cfn_key) = ::serde::de::MapAccess::next_key::<String>(&mut map)? {
2738 match __cfn_key.as_ref() {
2739 "DataTraceEnabled" => {
2740 data_trace_enabled = ::serde::de::MapAccess::next_value(&mut map)?;
2741 }
2742 "DetailedMetricsEnabled" => {
2743 detailed_metrics_enabled = ::serde::de::MapAccess::next_value(&mut map)?;
2744 }
2745 "LoggingLevel" => {
2746 logging_level = ::serde::de::MapAccess::next_value(&mut map)?;
2747 }
2748 "ThrottlingBurstLimit" => {
2749 throttling_burst_limit = ::serde::de::MapAccess::next_value(&mut map)?;
2750 }
2751 "ThrottlingRateLimit" => {
2752 throttling_rate_limit = ::serde::de::MapAccess::next_value(&mut map)?;
2753 }
2754 _ => {}
2755 }
2756 }
2757
2758 Ok(RouteSettings {
2759 data_trace_enabled: data_trace_enabled,
2760 detailed_metrics_enabled: detailed_metrics_enabled,
2761 logging_level: logging_level,
2762 throttling_burst_limit: throttling_burst_limit,
2763 throttling_rate_limit: throttling_rate_limit,
2764 })
2765 }
2766 }
2767
2768 d.deserialize_map(Visitor)
2769 }
2770 }
2771
2772 #[derive(Debug, Default)]
2774 pub struct StageOverrides {
2775 pub access_log_settings: Option<::Value<AccessLogSettings>>,
2780 pub auto_deploy: Option<::Value<bool>>,
2785 pub default_route_settings: Option<::Value<RouteSettings>>,
2790 pub description: Option<::Value<String>>,
2795 pub route_settings: Option<::Value<::json::Value>>,
2800 pub stage_variables: Option<::Value<::json::Value>>,
2805 }
2806
2807 impl ::codec::SerializeValue for StageOverrides {
2808 fn serialize<S: ::serde::Serializer>(&self, s: S) -> Result<S::Ok, S::Error> {
2809 let mut map = ::serde::Serializer::serialize_map(s, None)?;
2810 if let Some(ref access_log_settings) = self.access_log_settings {
2811 ::serde::ser::SerializeMap::serialize_entry(&mut map, "AccessLogSettings", access_log_settings)?;
2812 }
2813 if let Some(ref auto_deploy) = self.auto_deploy {
2814 ::serde::ser::SerializeMap::serialize_entry(&mut map, "AutoDeploy", auto_deploy)?;
2815 }
2816 if let Some(ref default_route_settings) = self.default_route_settings {
2817 ::serde::ser::SerializeMap::serialize_entry(&mut map, "DefaultRouteSettings", default_route_settings)?;
2818 }
2819 if let Some(ref description) = self.description {
2820 ::serde::ser::SerializeMap::serialize_entry(&mut map, "Description", description)?;
2821 }
2822 if let Some(ref route_settings) = self.route_settings {
2823 ::serde::ser::SerializeMap::serialize_entry(&mut map, "RouteSettings", route_settings)?;
2824 }
2825 if let Some(ref stage_variables) = self.stage_variables {
2826 ::serde::ser::SerializeMap::serialize_entry(&mut map, "StageVariables", stage_variables)?;
2827 }
2828 ::serde::ser::SerializeMap::end(map)
2829 }
2830 }
2831
2832 impl ::codec::DeserializeValue for StageOverrides {
2833 fn deserialize<'de, D: ::serde::Deserializer<'de>>(d: D) -> Result<StageOverrides, D::Error> {
2834 struct Visitor;
2835
2836 impl<'de> ::serde::de::Visitor<'de> for Visitor {
2837 type Value = StageOverrides;
2838
2839 fn expecting(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
2840 write!(f, "a struct of type StageOverrides")
2841 }
2842
2843 fn visit_map<A: ::serde::de::MapAccess<'de>>(self, mut map: A) -> Result<Self::Value, A::Error> {
2844 let mut access_log_settings: Option<::Value<AccessLogSettings>> = None;
2845 let mut auto_deploy: Option<::Value<bool>> = None;
2846 let mut default_route_settings: Option<::Value<RouteSettings>> = None;
2847 let mut description: Option<::Value<String>> = None;
2848 let mut route_settings: Option<::Value<::json::Value>> = None;
2849 let mut stage_variables: Option<::Value<::json::Value>> = None;
2850
2851 while let Some(__cfn_key) = ::serde::de::MapAccess::next_key::<String>(&mut map)? {
2852 match __cfn_key.as_ref() {
2853 "AccessLogSettings" => {
2854 access_log_settings = ::serde::de::MapAccess::next_value(&mut map)?;
2855 }
2856 "AutoDeploy" => {
2857 auto_deploy = ::serde::de::MapAccess::next_value(&mut map)?;
2858 }
2859 "DefaultRouteSettings" => {
2860 default_route_settings = ::serde::de::MapAccess::next_value(&mut map)?;
2861 }
2862 "Description" => {
2863 description = ::serde::de::MapAccess::next_value(&mut map)?;
2864 }
2865 "RouteSettings" => {
2866 route_settings = ::serde::de::MapAccess::next_value(&mut map)?;
2867 }
2868 "StageVariables" => {
2869 stage_variables = ::serde::de::MapAccess::next_value(&mut map)?;
2870 }
2871 _ => {}
2872 }
2873 }
2874
2875 Ok(StageOverrides {
2876 access_log_settings: access_log_settings,
2877 auto_deploy: auto_deploy,
2878 default_route_settings: default_route_settings,
2879 description: description,
2880 route_settings: route_settings,
2881 stage_variables: stage_variables,
2882 })
2883 }
2884 }
2885
2886 d.deserialize_map(Visitor)
2887 }
2888 }
2889}
2890
2891pub mod authorizer {
2892 #[derive(Debug, Default)]
2896 pub struct JWTConfiguration {
2897 pub audience: Option<::ValueList<String>>,
2902 pub issuer: Option<::Value<String>>,
2907 }
2908
2909 impl ::codec::SerializeValue for JWTConfiguration {
2910 fn serialize<S: ::serde::Serializer>(&self, s: S) -> Result<S::Ok, S::Error> {
2911 let mut map = ::serde::Serializer::serialize_map(s, None)?;
2912 if let Some(ref audience) = self.audience {
2913 ::serde::ser::SerializeMap::serialize_entry(&mut map, "Audience", audience)?;
2914 }
2915 if let Some(ref issuer) = self.issuer {
2916 ::serde::ser::SerializeMap::serialize_entry(&mut map, "Issuer", issuer)?;
2917 }
2918 ::serde::ser::SerializeMap::end(map)
2919 }
2920 }
2921
2922 impl ::codec::DeserializeValue for JWTConfiguration {
2923 fn deserialize<'de, D: ::serde::Deserializer<'de>>(d: D) -> Result<JWTConfiguration, D::Error> {
2924 struct Visitor;
2925
2926 impl<'de> ::serde::de::Visitor<'de> for Visitor {
2927 type Value = JWTConfiguration;
2928
2929 fn expecting(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
2930 write!(f, "a struct of type JWTConfiguration")
2931 }
2932
2933 fn visit_map<A: ::serde::de::MapAccess<'de>>(self, mut map: A) -> Result<Self::Value, A::Error> {
2934 let mut audience: Option<::ValueList<String>> = None;
2935 let mut issuer: Option<::Value<String>> = None;
2936
2937 while let Some(__cfn_key) = ::serde::de::MapAccess::next_key::<String>(&mut map)? {
2938 match __cfn_key.as_ref() {
2939 "Audience" => {
2940 audience = ::serde::de::MapAccess::next_value(&mut map)?;
2941 }
2942 "Issuer" => {
2943 issuer = ::serde::de::MapAccess::next_value(&mut map)?;
2944 }
2945 _ => {}
2946 }
2947 }
2948
2949 Ok(JWTConfiguration {
2950 audience: audience,
2951 issuer: issuer,
2952 })
2953 }
2954 }
2955
2956 d.deserialize_map(Visitor)
2957 }
2958 }
2959}
2960
2961pub mod domain_name {
2962 #[derive(Debug, Default)]
2966 pub struct DomainNameConfiguration {
2967 pub certificate_arn: Option<::Value<String>>,
2972 pub certificate_name: Option<::Value<String>>,
2977 pub endpoint_type: Option<::Value<String>>,
2982 pub security_policy: Option<::Value<String>>,
2987 }
2988
2989 impl ::codec::SerializeValue for DomainNameConfiguration {
2990 fn serialize<S: ::serde::Serializer>(&self, s: S) -> Result<S::Ok, S::Error> {
2991 let mut map = ::serde::Serializer::serialize_map(s, None)?;
2992 if let Some(ref certificate_arn) = self.certificate_arn {
2993 ::serde::ser::SerializeMap::serialize_entry(&mut map, "CertificateArn", certificate_arn)?;
2994 }
2995 if let Some(ref certificate_name) = self.certificate_name {
2996 ::serde::ser::SerializeMap::serialize_entry(&mut map, "CertificateName", certificate_name)?;
2997 }
2998 if let Some(ref endpoint_type) = self.endpoint_type {
2999 ::serde::ser::SerializeMap::serialize_entry(&mut map, "EndpointType", endpoint_type)?;
3000 }
3001 if let Some(ref security_policy) = self.security_policy {
3002 ::serde::ser::SerializeMap::serialize_entry(&mut map, "SecurityPolicy", security_policy)?;
3003 }
3004 ::serde::ser::SerializeMap::end(map)
3005 }
3006 }
3007
3008 impl ::codec::DeserializeValue for DomainNameConfiguration {
3009 fn deserialize<'de, D: ::serde::Deserializer<'de>>(d: D) -> Result<DomainNameConfiguration, D::Error> {
3010 struct Visitor;
3011
3012 impl<'de> ::serde::de::Visitor<'de> for Visitor {
3013 type Value = DomainNameConfiguration;
3014
3015 fn expecting(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
3016 write!(f, "a struct of type DomainNameConfiguration")
3017 }
3018
3019 fn visit_map<A: ::serde::de::MapAccess<'de>>(self, mut map: A) -> Result<Self::Value, A::Error> {
3020 let mut certificate_arn: Option<::Value<String>> = None;
3021 let mut certificate_name: Option<::Value<String>> = None;
3022 let mut endpoint_type: Option<::Value<String>> = None;
3023 let mut security_policy: Option<::Value<String>> = None;
3024
3025 while let Some(__cfn_key) = ::serde::de::MapAccess::next_key::<String>(&mut map)? {
3026 match __cfn_key.as_ref() {
3027 "CertificateArn" => {
3028 certificate_arn = ::serde::de::MapAccess::next_value(&mut map)?;
3029 }
3030 "CertificateName" => {
3031 certificate_name = ::serde::de::MapAccess::next_value(&mut map)?;
3032 }
3033 "EndpointType" => {
3034 endpoint_type = ::serde::de::MapAccess::next_value(&mut map)?;
3035 }
3036 "SecurityPolicy" => {
3037 security_policy = ::serde::de::MapAccess::next_value(&mut map)?;
3038 }
3039 _ => {}
3040 }
3041 }
3042
3043 Ok(DomainNameConfiguration {
3044 certificate_arn: certificate_arn,
3045 certificate_name: certificate_name,
3046 endpoint_type: endpoint_type,
3047 security_policy: security_policy,
3048 })
3049 }
3050 }
3051
3052 d.deserialize_map(Visitor)
3053 }
3054 }
3055
3056 #[derive(Debug, Default)]
3058 pub struct MutualTlsAuthentication {
3059 pub truststore_uri: Option<::Value<String>>,
3064 pub truststore_version: Option<::Value<String>>,
3069 }
3070
3071 impl ::codec::SerializeValue for MutualTlsAuthentication {
3072 fn serialize<S: ::serde::Serializer>(&self, s: S) -> Result<S::Ok, S::Error> {
3073 let mut map = ::serde::Serializer::serialize_map(s, None)?;
3074 if let Some(ref truststore_uri) = self.truststore_uri {
3075 ::serde::ser::SerializeMap::serialize_entry(&mut map, "TruststoreUri", truststore_uri)?;
3076 }
3077 if let Some(ref truststore_version) = self.truststore_version {
3078 ::serde::ser::SerializeMap::serialize_entry(&mut map, "TruststoreVersion", truststore_version)?;
3079 }
3080 ::serde::ser::SerializeMap::end(map)
3081 }
3082 }
3083
3084 impl ::codec::DeserializeValue for MutualTlsAuthentication {
3085 fn deserialize<'de, D: ::serde::Deserializer<'de>>(d: D) -> Result<MutualTlsAuthentication, D::Error> {
3086 struct Visitor;
3087
3088 impl<'de> ::serde::de::Visitor<'de> for Visitor {
3089 type Value = MutualTlsAuthentication;
3090
3091 fn expecting(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
3092 write!(f, "a struct of type MutualTlsAuthentication")
3093 }
3094
3095 fn visit_map<A: ::serde::de::MapAccess<'de>>(self, mut map: A) -> Result<Self::Value, A::Error> {
3096 let mut truststore_uri: Option<::Value<String>> = None;
3097 let mut truststore_version: Option<::Value<String>> = None;
3098
3099 while let Some(__cfn_key) = ::serde::de::MapAccess::next_key::<String>(&mut map)? {
3100 match __cfn_key.as_ref() {
3101 "TruststoreUri" => {
3102 truststore_uri = ::serde::de::MapAccess::next_value(&mut map)?;
3103 }
3104 "TruststoreVersion" => {
3105 truststore_version = ::serde::de::MapAccess::next_value(&mut map)?;
3106 }
3107 _ => {}
3108 }
3109 }
3110
3111 Ok(MutualTlsAuthentication {
3112 truststore_uri: truststore_uri,
3113 truststore_version: truststore_version,
3114 })
3115 }
3116 }
3117
3118 d.deserialize_map(Visitor)
3119 }
3120 }
3121}
3122
3123pub mod integration {
3124 #[derive(Debug, Default)]
3128 pub struct ResponseParameter {
3129 pub destination: ::Value<String>,
3134 pub source: ::Value<String>,
3139 }
3140
3141 impl ::codec::SerializeValue for ResponseParameter {
3142 fn serialize<S: ::serde::Serializer>(&self, s: S) -> Result<S::Ok, S::Error> {
3143 let mut map = ::serde::Serializer::serialize_map(s, None)?;
3144 ::serde::ser::SerializeMap::serialize_entry(&mut map, "Destination", &self.destination)?;
3145 ::serde::ser::SerializeMap::serialize_entry(&mut map, "Source", &self.source)?;
3146 ::serde::ser::SerializeMap::end(map)
3147 }
3148 }
3149
3150 impl ::codec::DeserializeValue for ResponseParameter {
3151 fn deserialize<'de, D: ::serde::Deserializer<'de>>(d: D) -> Result<ResponseParameter, D::Error> {
3152 struct Visitor;
3153
3154 impl<'de> ::serde::de::Visitor<'de> for Visitor {
3155 type Value = ResponseParameter;
3156
3157 fn expecting(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
3158 write!(f, "a struct of type ResponseParameter")
3159 }
3160
3161 fn visit_map<A: ::serde::de::MapAccess<'de>>(self, mut map: A) -> Result<Self::Value, A::Error> {
3162 let mut destination: Option<::Value<String>> = None;
3163 let mut source: Option<::Value<String>> = None;
3164
3165 while let Some(__cfn_key) = ::serde::de::MapAccess::next_key::<String>(&mut map)? {
3166 match __cfn_key.as_ref() {
3167 "Destination" => {
3168 destination = ::serde::de::MapAccess::next_value(&mut map)?;
3169 }
3170 "Source" => {
3171 source = ::serde::de::MapAccess::next_value(&mut map)?;
3172 }
3173 _ => {}
3174 }
3175 }
3176
3177 Ok(ResponseParameter {
3178 destination: destination.ok_or(::serde::de::Error::missing_field("Destination"))?,
3179 source: source.ok_or(::serde::de::Error::missing_field("Source"))?,
3180 })
3181 }
3182 }
3183
3184 d.deserialize_map(Visitor)
3185 }
3186 }
3187
3188 #[derive(Debug, Default)]
3190 pub struct ResponseParameterList {
3191 pub response_parameters: Option<::ValueList<ResponseParameter>>,
3196 }
3197
3198 impl ::codec::SerializeValue for ResponseParameterList {
3199 fn serialize<S: ::serde::Serializer>(&self, s: S) -> Result<S::Ok, S::Error> {
3200 let mut map = ::serde::Serializer::serialize_map(s, None)?;
3201 if let Some(ref response_parameters) = self.response_parameters {
3202 ::serde::ser::SerializeMap::serialize_entry(&mut map, "ResponseParameters", response_parameters)?;
3203 }
3204 ::serde::ser::SerializeMap::end(map)
3205 }
3206 }
3207
3208 impl ::codec::DeserializeValue for ResponseParameterList {
3209 fn deserialize<'de, D: ::serde::Deserializer<'de>>(d: D) -> Result<ResponseParameterList, D::Error> {
3210 struct Visitor;
3211
3212 impl<'de> ::serde::de::Visitor<'de> for Visitor {
3213 type Value = ResponseParameterList;
3214
3215 fn expecting(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
3216 write!(f, "a struct of type ResponseParameterList")
3217 }
3218
3219 fn visit_map<A: ::serde::de::MapAccess<'de>>(self, mut map: A) -> Result<Self::Value, A::Error> {
3220 let mut response_parameters: Option<::ValueList<ResponseParameter>> = None;
3221
3222 while let Some(__cfn_key) = ::serde::de::MapAccess::next_key::<String>(&mut map)? {
3223 match __cfn_key.as_ref() {
3224 "ResponseParameters" => {
3225 response_parameters = ::serde::de::MapAccess::next_value(&mut map)?;
3226 }
3227 _ => {}
3228 }
3229 }
3230
3231 Ok(ResponseParameterList {
3232 response_parameters: response_parameters,
3233 })
3234 }
3235 }
3236
3237 d.deserialize_map(Visitor)
3238 }
3239 }
3240
3241 #[derive(Debug, Default)]
3243 pub struct TlsConfig {
3244 pub server_name_to_verify: Option<::Value<String>>,
3249 }
3250
3251 impl ::codec::SerializeValue for TlsConfig {
3252 fn serialize<S: ::serde::Serializer>(&self, s: S) -> Result<S::Ok, S::Error> {
3253 let mut map = ::serde::Serializer::serialize_map(s, None)?;
3254 if let Some(ref server_name_to_verify) = self.server_name_to_verify {
3255 ::serde::ser::SerializeMap::serialize_entry(&mut map, "ServerNameToVerify", server_name_to_verify)?;
3256 }
3257 ::serde::ser::SerializeMap::end(map)
3258 }
3259 }
3260
3261 impl ::codec::DeserializeValue for TlsConfig {
3262 fn deserialize<'de, D: ::serde::Deserializer<'de>>(d: D) -> Result<TlsConfig, D::Error> {
3263 struct Visitor;
3264
3265 impl<'de> ::serde::de::Visitor<'de> for Visitor {
3266 type Value = TlsConfig;
3267
3268 fn expecting(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
3269 write!(f, "a struct of type TlsConfig")
3270 }
3271
3272 fn visit_map<A: ::serde::de::MapAccess<'de>>(self, mut map: A) -> Result<Self::Value, A::Error> {
3273 let mut server_name_to_verify: Option<::Value<String>> = None;
3274
3275 while let Some(__cfn_key) = ::serde::de::MapAccess::next_key::<String>(&mut map)? {
3276 match __cfn_key.as_ref() {
3277 "ServerNameToVerify" => {
3278 server_name_to_verify = ::serde::de::MapAccess::next_value(&mut map)?;
3279 }
3280 _ => {}
3281 }
3282 }
3283
3284 Ok(TlsConfig {
3285 server_name_to_verify: server_name_to_verify,
3286 })
3287 }
3288 }
3289
3290 d.deserialize_map(Visitor)
3291 }
3292 }
3293}
3294
3295pub mod route {
3296 #[derive(Debug, Default)]
3300 pub struct ParameterConstraints {
3301 pub required: ::Value<bool>,
3306 }
3307
3308 impl ::codec::SerializeValue for ParameterConstraints {
3309 fn serialize<S: ::serde::Serializer>(&self, s: S) -> Result<S::Ok, S::Error> {
3310 let mut map = ::serde::Serializer::serialize_map(s, None)?;
3311 ::serde::ser::SerializeMap::serialize_entry(&mut map, "Required", &self.required)?;
3312 ::serde::ser::SerializeMap::end(map)
3313 }
3314 }
3315
3316 impl ::codec::DeserializeValue for ParameterConstraints {
3317 fn deserialize<'de, D: ::serde::Deserializer<'de>>(d: D) -> Result<ParameterConstraints, D::Error> {
3318 struct Visitor;
3319
3320 impl<'de> ::serde::de::Visitor<'de> for Visitor {
3321 type Value = ParameterConstraints;
3322
3323 fn expecting(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
3324 write!(f, "a struct of type ParameterConstraints")
3325 }
3326
3327 fn visit_map<A: ::serde::de::MapAccess<'de>>(self, mut map: A) -> Result<Self::Value, A::Error> {
3328 let mut required: Option<::Value<bool>> = None;
3329
3330 while let Some(__cfn_key) = ::serde::de::MapAccess::next_key::<String>(&mut map)? {
3331 match __cfn_key.as_ref() {
3332 "Required" => {
3333 required = ::serde::de::MapAccess::next_value(&mut map)?;
3334 }
3335 _ => {}
3336 }
3337 }
3338
3339 Ok(ParameterConstraints {
3340 required: required.ok_or(::serde::de::Error::missing_field("Required"))?,
3341 })
3342 }
3343 }
3344
3345 d.deserialize_map(Visitor)
3346 }
3347 }
3348}
3349
3350pub mod route_response {
3351 #[derive(Debug, Default)]
3355 pub struct ParameterConstraints {
3356 pub required: ::Value<bool>,
3361 }
3362
3363 impl ::codec::SerializeValue for ParameterConstraints {
3364 fn serialize<S: ::serde::Serializer>(&self, s: S) -> Result<S::Ok, S::Error> {
3365 let mut map = ::serde::Serializer::serialize_map(s, None)?;
3366 ::serde::ser::SerializeMap::serialize_entry(&mut map, "Required", &self.required)?;
3367 ::serde::ser::SerializeMap::end(map)
3368 }
3369 }
3370
3371 impl ::codec::DeserializeValue for ParameterConstraints {
3372 fn deserialize<'de, D: ::serde::Deserializer<'de>>(d: D) -> Result<ParameterConstraints, D::Error> {
3373 struct Visitor;
3374
3375 impl<'de> ::serde::de::Visitor<'de> for Visitor {
3376 type Value = ParameterConstraints;
3377
3378 fn expecting(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
3379 write!(f, "a struct of type ParameterConstraints")
3380 }
3381
3382 fn visit_map<A: ::serde::de::MapAccess<'de>>(self, mut map: A) -> Result<Self::Value, A::Error> {
3383 let mut required: Option<::Value<bool>> = None;
3384
3385 while let Some(__cfn_key) = ::serde::de::MapAccess::next_key::<String>(&mut map)? {
3386 match __cfn_key.as_ref() {
3387 "Required" => {
3388 required = ::serde::de::MapAccess::next_value(&mut map)?;
3389 }
3390 _ => {}
3391 }
3392 }
3393
3394 Ok(ParameterConstraints {
3395 required: required.ok_or(::serde::de::Error::missing_field("Required"))?,
3396 })
3397 }
3398 }
3399
3400 d.deserialize_map(Visitor)
3401 }
3402 }
3403}
3404
3405pub mod stage {
3406 #[derive(Debug, Default)]
3410 pub struct AccessLogSettings {
3411 pub destination_arn: Option<::Value<String>>,
3416 pub format: Option<::Value<String>>,
3421 }
3422
3423 impl ::codec::SerializeValue for AccessLogSettings {
3424 fn serialize<S: ::serde::Serializer>(&self, s: S) -> Result<S::Ok, S::Error> {
3425 let mut map = ::serde::Serializer::serialize_map(s, None)?;
3426 if let Some(ref destination_arn) = self.destination_arn {
3427 ::serde::ser::SerializeMap::serialize_entry(&mut map, "DestinationArn", destination_arn)?;
3428 }
3429 if let Some(ref format) = self.format {
3430 ::serde::ser::SerializeMap::serialize_entry(&mut map, "Format", format)?;
3431 }
3432 ::serde::ser::SerializeMap::end(map)
3433 }
3434 }
3435
3436 impl ::codec::DeserializeValue for AccessLogSettings {
3437 fn deserialize<'de, D: ::serde::Deserializer<'de>>(d: D) -> Result<AccessLogSettings, D::Error> {
3438 struct Visitor;
3439
3440 impl<'de> ::serde::de::Visitor<'de> for Visitor {
3441 type Value = AccessLogSettings;
3442
3443 fn expecting(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
3444 write!(f, "a struct of type AccessLogSettings")
3445 }
3446
3447 fn visit_map<A: ::serde::de::MapAccess<'de>>(self, mut map: A) -> Result<Self::Value, A::Error> {
3448 let mut destination_arn: Option<::Value<String>> = None;
3449 let mut format: Option<::Value<String>> = None;
3450
3451 while let Some(__cfn_key) = ::serde::de::MapAccess::next_key::<String>(&mut map)? {
3452 match __cfn_key.as_ref() {
3453 "DestinationArn" => {
3454 destination_arn = ::serde::de::MapAccess::next_value(&mut map)?;
3455 }
3456 "Format" => {
3457 format = ::serde::de::MapAccess::next_value(&mut map)?;
3458 }
3459 _ => {}
3460 }
3461 }
3462
3463 Ok(AccessLogSettings {
3464 destination_arn: destination_arn,
3465 format: format,
3466 })
3467 }
3468 }
3469
3470 d.deserialize_map(Visitor)
3471 }
3472 }
3473
3474 #[derive(Debug, Default)]
3476 pub struct RouteSettings {
3477 pub data_trace_enabled: Option<::Value<bool>>,
3482 pub detailed_metrics_enabled: Option<::Value<bool>>,
3487 pub logging_level: Option<::Value<String>>,
3492 pub throttling_burst_limit: Option<::Value<u32>>,
3497 pub throttling_rate_limit: Option<::Value<f64>>,
3502 }
3503
3504 impl ::codec::SerializeValue for RouteSettings {
3505 fn serialize<S: ::serde::Serializer>(&self, s: S) -> Result<S::Ok, S::Error> {
3506 let mut map = ::serde::Serializer::serialize_map(s, None)?;
3507 if let Some(ref data_trace_enabled) = self.data_trace_enabled {
3508 ::serde::ser::SerializeMap::serialize_entry(&mut map, "DataTraceEnabled", data_trace_enabled)?;
3509 }
3510 if let Some(ref detailed_metrics_enabled) = self.detailed_metrics_enabled {
3511 ::serde::ser::SerializeMap::serialize_entry(&mut map, "DetailedMetricsEnabled", detailed_metrics_enabled)?;
3512 }
3513 if let Some(ref logging_level) = self.logging_level {
3514 ::serde::ser::SerializeMap::serialize_entry(&mut map, "LoggingLevel", logging_level)?;
3515 }
3516 if let Some(ref throttling_burst_limit) = self.throttling_burst_limit {
3517 ::serde::ser::SerializeMap::serialize_entry(&mut map, "ThrottlingBurstLimit", throttling_burst_limit)?;
3518 }
3519 if let Some(ref throttling_rate_limit) = self.throttling_rate_limit {
3520 ::serde::ser::SerializeMap::serialize_entry(&mut map, "ThrottlingRateLimit", throttling_rate_limit)?;
3521 }
3522 ::serde::ser::SerializeMap::end(map)
3523 }
3524 }
3525
3526 impl ::codec::DeserializeValue for RouteSettings {
3527 fn deserialize<'de, D: ::serde::Deserializer<'de>>(d: D) -> Result<RouteSettings, D::Error> {
3528 struct Visitor;
3529
3530 impl<'de> ::serde::de::Visitor<'de> for Visitor {
3531 type Value = RouteSettings;
3532
3533 fn expecting(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
3534 write!(f, "a struct of type RouteSettings")
3535 }
3536
3537 fn visit_map<A: ::serde::de::MapAccess<'de>>(self, mut map: A) -> Result<Self::Value, A::Error> {
3538 let mut data_trace_enabled: Option<::Value<bool>> = None;
3539 let mut detailed_metrics_enabled: Option<::Value<bool>> = None;
3540 let mut logging_level: Option<::Value<String>> = None;
3541 let mut throttling_burst_limit: Option<::Value<u32>> = None;
3542 let mut throttling_rate_limit: Option<::Value<f64>> = None;
3543
3544 while let Some(__cfn_key) = ::serde::de::MapAccess::next_key::<String>(&mut map)? {
3545 match __cfn_key.as_ref() {
3546 "DataTraceEnabled" => {
3547 data_trace_enabled = ::serde::de::MapAccess::next_value(&mut map)?;
3548 }
3549 "DetailedMetricsEnabled" => {
3550 detailed_metrics_enabled = ::serde::de::MapAccess::next_value(&mut map)?;
3551 }
3552 "LoggingLevel" => {
3553 logging_level = ::serde::de::MapAccess::next_value(&mut map)?;
3554 }
3555 "ThrottlingBurstLimit" => {
3556 throttling_burst_limit = ::serde::de::MapAccess::next_value(&mut map)?;
3557 }
3558 "ThrottlingRateLimit" => {
3559 throttling_rate_limit = ::serde::de::MapAccess::next_value(&mut map)?;
3560 }
3561 _ => {}
3562 }
3563 }
3564
3565 Ok(RouteSettings {
3566 data_trace_enabled: data_trace_enabled,
3567 detailed_metrics_enabled: detailed_metrics_enabled,
3568 logging_level: logging_level,
3569 throttling_burst_limit: throttling_burst_limit,
3570 throttling_rate_limit: throttling_rate_limit,
3571 })
3572 }
3573 }
3574
3575 d.deserialize_map(Visitor)
3576 }
3577 }
3578}