1#[derive(Debug, Default)]
5pub struct Application {
6 properties: ApplicationProperties
7}
8
9#[derive(Debug, Default)]
11pub struct ApplicationProperties {
12 pub application_configuration: Option<::Value<self::application::ApplicationConfiguration>>,
17 pub application_description: Option<::Value<String>>,
22 pub application_mode: Option<::Value<String>>,
27 pub application_name: Option<::Value<String>>,
32 pub runtime_environment: ::Value<String>,
37 pub service_execution_role: ::Value<String>,
42 pub tags: Option<::ValueList<::Tag>>,
47}
48
49impl ::serde::Serialize for ApplicationProperties {
50 fn serialize<S: ::serde::Serializer>(&self, s: S) -> Result<S::Ok, S::Error> {
51 let mut map = ::serde::Serializer::serialize_map(s, None)?;
52 if let Some(ref application_configuration) = self.application_configuration {
53 ::serde::ser::SerializeMap::serialize_entry(&mut map, "ApplicationConfiguration", application_configuration)?;
54 }
55 if let Some(ref application_description) = self.application_description {
56 ::serde::ser::SerializeMap::serialize_entry(&mut map, "ApplicationDescription", application_description)?;
57 }
58 if let Some(ref application_mode) = self.application_mode {
59 ::serde::ser::SerializeMap::serialize_entry(&mut map, "ApplicationMode", application_mode)?;
60 }
61 if let Some(ref application_name) = self.application_name {
62 ::serde::ser::SerializeMap::serialize_entry(&mut map, "ApplicationName", application_name)?;
63 }
64 ::serde::ser::SerializeMap::serialize_entry(&mut map, "RuntimeEnvironment", &self.runtime_environment)?;
65 ::serde::ser::SerializeMap::serialize_entry(&mut map, "ServiceExecutionRole", &self.service_execution_role)?;
66 if let Some(ref tags) = self.tags {
67 ::serde::ser::SerializeMap::serialize_entry(&mut map, "Tags", tags)?;
68 }
69 ::serde::ser::SerializeMap::end(map)
70 }
71}
72
73impl<'de> ::serde::Deserialize<'de> for ApplicationProperties {
74 fn deserialize<D: ::serde::Deserializer<'de>>(d: D) -> Result<ApplicationProperties, D::Error> {
75 struct Visitor;
76
77 impl<'de> ::serde::de::Visitor<'de> for Visitor {
78 type Value = ApplicationProperties;
79
80 fn expecting(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
81 write!(f, "a struct of type ApplicationProperties")
82 }
83
84 fn visit_map<A: ::serde::de::MapAccess<'de>>(self, mut map: A) -> Result<Self::Value, A::Error> {
85 let mut application_configuration: Option<::Value<self::application::ApplicationConfiguration>> = None;
86 let mut application_description: Option<::Value<String>> = None;
87 let mut application_mode: Option<::Value<String>> = None;
88 let mut application_name: Option<::Value<String>> = None;
89 let mut runtime_environment: Option<::Value<String>> = None;
90 let mut service_execution_role: Option<::Value<String>> = None;
91 let mut tags: Option<::ValueList<::Tag>> = None;
92
93 while let Some(__cfn_key) = ::serde::de::MapAccess::next_key::<String>(&mut map)? {
94 match __cfn_key.as_ref() {
95 "ApplicationConfiguration" => {
96 application_configuration = ::serde::de::MapAccess::next_value(&mut map)?;
97 }
98 "ApplicationDescription" => {
99 application_description = ::serde::de::MapAccess::next_value(&mut map)?;
100 }
101 "ApplicationMode" => {
102 application_mode = ::serde::de::MapAccess::next_value(&mut map)?;
103 }
104 "ApplicationName" => {
105 application_name = ::serde::de::MapAccess::next_value(&mut map)?;
106 }
107 "RuntimeEnvironment" => {
108 runtime_environment = ::serde::de::MapAccess::next_value(&mut map)?;
109 }
110 "ServiceExecutionRole" => {
111 service_execution_role = ::serde::de::MapAccess::next_value(&mut map)?;
112 }
113 "Tags" => {
114 tags = ::serde::de::MapAccess::next_value(&mut map)?;
115 }
116 _ => {}
117 }
118 }
119
120 Ok(ApplicationProperties {
121 application_configuration: application_configuration,
122 application_description: application_description,
123 application_mode: application_mode,
124 application_name: application_name,
125 runtime_environment: runtime_environment.ok_or(::serde::de::Error::missing_field("RuntimeEnvironment"))?,
126 service_execution_role: service_execution_role.ok_or(::serde::de::Error::missing_field("ServiceExecutionRole"))?,
127 tags: tags,
128 })
129 }
130 }
131
132 d.deserialize_map(Visitor)
133 }
134}
135
136impl ::Resource for Application {
137 type Properties = ApplicationProperties;
138 const TYPE: &'static str = "AWS::KinesisAnalyticsV2::Application";
139 fn properties(&self) -> &ApplicationProperties {
140 &self.properties
141 }
142 fn properties_mut(&mut self) -> &mut ApplicationProperties {
143 &mut self.properties
144 }
145}
146
147impl ::private::Sealed for Application {}
148
149impl From<ApplicationProperties> for Application {
150 fn from(properties: ApplicationProperties) -> Application {
151 Application { properties }
152 }
153}
154
155#[derive(Debug, Default)]
157pub struct ApplicationCloudWatchLoggingOption {
158 properties: ApplicationCloudWatchLoggingOptionProperties
159}
160
161#[derive(Debug, Default)]
163pub struct ApplicationCloudWatchLoggingOptionProperties {
164 pub application_name: ::Value<String>,
169 pub cloud_watch_logging_option: ::Value<self::application_cloud_watch_logging_option::CloudWatchLoggingOption>,
174}
175
176impl ::serde::Serialize for ApplicationCloudWatchLoggingOptionProperties {
177 fn serialize<S: ::serde::Serializer>(&self, s: S) -> Result<S::Ok, S::Error> {
178 let mut map = ::serde::Serializer::serialize_map(s, None)?;
179 ::serde::ser::SerializeMap::serialize_entry(&mut map, "ApplicationName", &self.application_name)?;
180 ::serde::ser::SerializeMap::serialize_entry(&mut map, "CloudWatchLoggingOption", &self.cloud_watch_logging_option)?;
181 ::serde::ser::SerializeMap::end(map)
182 }
183}
184
185impl<'de> ::serde::Deserialize<'de> for ApplicationCloudWatchLoggingOptionProperties {
186 fn deserialize<D: ::serde::Deserializer<'de>>(d: D) -> Result<ApplicationCloudWatchLoggingOptionProperties, D::Error> {
187 struct Visitor;
188
189 impl<'de> ::serde::de::Visitor<'de> for Visitor {
190 type Value = ApplicationCloudWatchLoggingOptionProperties;
191
192 fn expecting(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
193 write!(f, "a struct of type ApplicationCloudWatchLoggingOptionProperties")
194 }
195
196 fn visit_map<A: ::serde::de::MapAccess<'de>>(self, mut map: A) -> Result<Self::Value, A::Error> {
197 let mut application_name: Option<::Value<String>> = None;
198 let mut cloud_watch_logging_option: Option<::Value<self::application_cloud_watch_logging_option::CloudWatchLoggingOption>> = None;
199
200 while let Some(__cfn_key) = ::serde::de::MapAccess::next_key::<String>(&mut map)? {
201 match __cfn_key.as_ref() {
202 "ApplicationName" => {
203 application_name = ::serde::de::MapAccess::next_value(&mut map)?;
204 }
205 "CloudWatchLoggingOption" => {
206 cloud_watch_logging_option = ::serde::de::MapAccess::next_value(&mut map)?;
207 }
208 _ => {}
209 }
210 }
211
212 Ok(ApplicationCloudWatchLoggingOptionProperties {
213 application_name: application_name.ok_or(::serde::de::Error::missing_field("ApplicationName"))?,
214 cloud_watch_logging_option: cloud_watch_logging_option.ok_or(::serde::de::Error::missing_field("CloudWatchLoggingOption"))?,
215 })
216 }
217 }
218
219 d.deserialize_map(Visitor)
220 }
221}
222
223impl ::Resource for ApplicationCloudWatchLoggingOption {
224 type Properties = ApplicationCloudWatchLoggingOptionProperties;
225 const TYPE: &'static str = "AWS::KinesisAnalyticsV2::ApplicationCloudWatchLoggingOption";
226 fn properties(&self) -> &ApplicationCloudWatchLoggingOptionProperties {
227 &self.properties
228 }
229 fn properties_mut(&mut self) -> &mut ApplicationCloudWatchLoggingOptionProperties {
230 &mut self.properties
231 }
232}
233
234impl ::private::Sealed for ApplicationCloudWatchLoggingOption {}
235
236impl From<ApplicationCloudWatchLoggingOptionProperties> for ApplicationCloudWatchLoggingOption {
237 fn from(properties: ApplicationCloudWatchLoggingOptionProperties) -> ApplicationCloudWatchLoggingOption {
238 ApplicationCloudWatchLoggingOption { properties }
239 }
240}
241
242#[derive(Debug, Default)]
244pub struct ApplicationOutput {
245 properties: ApplicationOutputProperties
246}
247
248#[derive(Debug, Default)]
250pub struct ApplicationOutputProperties {
251 pub application_name: ::Value<String>,
256 pub output: ::Value<self::application_output::Output>,
261}
262
263impl ::serde::Serialize for ApplicationOutputProperties {
264 fn serialize<S: ::serde::Serializer>(&self, s: S) -> Result<S::Ok, S::Error> {
265 let mut map = ::serde::Serializer::serialize_map(s, None)?;
266 ::serde::ser::SerializeMap::serialize_entry(&mut map, "ApplicationName", &self.application_name)?;
267 ::serde::ser::SerializeMap::serialize_entry(&mut map, "Output", &self.output)?;
268 ::serde::ser::SerializeMap::end(map)
269 }
270}
271
272impl<'de> ::serde::Deserialize<'de> for ApplicationOutputProperties {
273 fn deserialize<D: ::serde::Deserializer<'de>>(d: D) -> Result<ApplicationOutputProperties, D::Error> {
274 struct Visitor;
275
276 impl<'de> ::serde::de::Visitor<'de> for Visitor {
277 type Value = ApplicationOutputProperties;
278
279 fn expecting(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
280 write!(f, "a struct of type ApplicationOutputProperties")
281 }
282
283 fn visit_map<A: ::serde::de::MapAccess<'de>>(self, mut map: A) -> Result<Self::Value, A::Error> {
284 let mut application_name: Option<::Value<String>> = None;
285 let mut output: Option<::Value<self::application_output::Output>> = None;
286
287 while let Some(__cfn_key) = ::serde::de::MapAccess::next_key::<String>(&mut map)? {
288 match __cfn_key.as_ref() {
289 "ApplicationName" => {
290 application_name = ::serde::de::MapAccess::next_value(&mut map)?;
291 }
292 "Output" => {
293 output = ::serde::de::MapAccess::next_value(&mut map)?;
294 }
295 _ => {}
296 }
297 }
298
299 Ok(ApplicationOutputProperties {
300 application_name: application_name.ok_or(::serde::de::Error::missing_field("ApplicationName"))?,
301 output: output.ok_or(::serde::de::Error::missing_field("Output"))?,
302 })
303 }
304 }
305
306 d.deserialize_map(Visitor)
307 }
308}
309
310impl ::Resource for ApplicationOutput {
311 type Properties = ApplicationOutputProperties;
312 const TYPE: &'static str = "AWS::KinesisAnalyticsV2::ApplicationOutput";
313 fn properties(&self) -> &ApplicationOutputProperties {
314 &self.properties
315 }
316 fn properties_mut(&mut self) -> &mut ApplicationOutputProperties {
317 &mut self.properties
318 }
319}
320
321impl ::private::Sealed for ApplicationOutput {}
322
323impl From<ApplicationOutputProperties> for ApplicationOutput {
324 fn from(properties: ApplicationOutputProperties) -> ApplicationOutput {
325 ApplicationOutput { properties }
326 }
327}
328
329#[derive(Debug, Default)]
331pub struct ApplicationReferenceDataSource {
332 properties: ApplicationReferenceDataSourceProperties
333}
334
335#[derive(Debug, Default)]
337pub struct ApplicationReferenceDataSourceProperties {
338 pub application_name: ::Value<String>,
343 pub reference_data_source: ::Value<self::application_reference_data_source::ReferenceDataSource>,
348}
349
350impl ::serde::Serialize for ApplicationReferenceDataSourceProperties {
351 fn serialize<S: ::serde::Serializer>(&self, s: S) -> Result<S::Ok, S::Error> {
352 let mut map = ::serde::Serializer::serialize_map(s, None)?;
353 ::serde::ser::SerializeMap::serialize_entry(&mut map, "ApplicationName", &self.application_name)?;
354 ::serde::ser::SerializeMap::serialize_entry(&mut map, "ReferenceDataSource", &self.reference_data_source)?;
355 ::serde::ser::SerializeMap::end(map)
356 }
357}
358
359impl<'de> ::serde::Deserialize<'de> for ApplicationReferenceDataSourceProperties {
360 fn deserialize<D: ::serde::Deserializer<'de>>(d: D) -> Result<ApplicationReferenceDataSourceProperties, D::Error> {
361 struct Visitor;
362
363 impl<'de> ::serde::de::Visitor<'de> for Visitor {
364 type Value = ApplicationReferenceDataSourceProperties;
365
366 fn expecting(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
367 write!(f, "a struct of type ApplicationReferenceDataSourceProperties")
368 }
369
370 fn visit_map<A: ::serde::de::MapAccess<'de>>(self, mut map: A) -> Result<Self::Value, A::Error> {
371 let mut application_name: Option<::Value<String>> = None;
372 let mut reference_data_source: Option<::Value<self::application_reference_data_source::ReferenceDataSource>> = None;
373
374 while let Some(__cfn_key) = ::serde::de::MapAccess::next_key::<String>(&mut map)? {
375 match __cfn_key.as_ref() {
376 "ApplicationName" => {
377 application_name = ::serde::de::MapAccess::next_value(&mut map)?;
378 }
379 "ReferenceDataSource" => {
380 reference_data_source = ::serde::de::MapAccess::next_value(&mut map)?;
381 }
382 _ => {}
383 }
384 }
385
386 Ok(ApplicationReferenceDataSourceProperties {
387 application_name: application_name.ok_or(::serde::de::Error::missing_field("ApplicationName"))?,
388 reference_data_source: reference_data_source.ok_or(::serde::de::Error::missing_field("ReferenceDataSource"))?,
389 })
390 }
391 }
392
393 d.deserialize_map(Visitor)
394 }
395}
396
397impl ::Resource for ApplicationReferenceDataSource {
398 type Properties = ApplicationReferenceDataSourceProperties;
399 const TYPE: &'static str = "AWS::KinesisAnalyticsV2::ApplicationReferenceDataSource";
400 fn properties(&self) -> &ApplicationReferenceDataSourceProperties {
401 &self.properties
402 }
403 fn properties_mut(&mut self) -> &mut ApplicationReferenceDataSourceProperties {
404 &mut self.properties
405 }
406}
407
408impl ::private::Sealed for ApplicationReferenceDataSource {}
409
410impl From<ApplicationReferenceDataSourceProperties> for ApplicationReferenceDataSource {
411 fn from(properties: ApplicationReferenceDataSourceProperties) -> ApplicationReferenceDataSource {
412 ApplicationReferenceDataSource { properties }
413 }
414}
415
416pub mod application {
417 #[derive(Debug, Default)]
421 pub struct ApplicationCodeConfiguration {
422 pub code_content: ::Value<CodeContent>,
427 pub code_content_type: ::Value<String>,
432 }
433
434 impl ::codec::SerializeValue for ApplicationCodeConfiguration {
435 fn serialize<S: ::serde::Serializer>(&self, s: S) -> Result<S::Ok, S::Error> {
436 let mut map = ::serde::Serializer::serialize_map(s, None)?;
437 ::serde::ser::SerializeMap::serialize_entry(&mut map, "CodeContent", &self.code_content)?;
438 ::serde::ser::SerializeMap::serialize_entry(&mut map, "CodeContentType", &self.code_content_type)?;
439 ::serde::ser::SerializeMap::end(map)
440 }
441 }
442
443 impl ::codec::DeserializeValue for ApplicationCodeConfiguration {
444 fn deserialize<'de, D: ::serde::Deserializer<'de>>(d: D) -> Result<ApplicationCodeConfiguration, D::Error> {
445 struct Visitor;
446
447 impl<'de> ::serde::de::Visitor<'de> for Visitor {
448 type Value = ApplicationCodeConfiguration;
449
450 fn expecting(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
451 write!(f, "a struct of type ApplicationCodeConfiguration")
452 }
453
454 fn visit_map<A: ::serde::de::MapAccess<'de>>(self, mut map: A) -> Result<Self::Value, A::Error> {
455 let mut code_content: Option<::Value<CodeContent>> = None;
456 let mut code_content_type: Option<::Value<String>> = None;
457
458 while let Some(__cfn_key) = ::serde::de::MapAccess::next_key::<String>(&mut map)? {
459 match __cfn_key.as_ref() {
460 "CodeContent" => {
461 code_content = ::serde::de::MapAccess::next_value(&mut map)?;
462 }
463 "CodeContentType" => {
464 code_content_type = ::serde::de::MapAccess::next_value(&mut map)?;
465 }
466 _ => {}
467 }
468 }
469
470 Ok(ApplicationCodeConfiguration {
471 code_content: code_content.ok_or(::serde::de::Error::missing_field("CodeContent"))?,
472 code_content_type: code_content_type.ok_or(::serde::de::Error::missing_field("CodeContentType"))?,
473 })
474 }
475 }
476
477 d.deserialize_map(Visitor)
478 }
479 }
480
481 #[derive(Debug, Default)]
483 pub struct ApplicationConfiguration {
484 pub application_code_configuration: Option<::Value<ApplicationCodeConfiguration>>,
489 pub application_snapshot_configuration: Option<::Value<ApplicationSnapshotConfiguration>>,
494 pub environment_properties: Option<::Value<EnvironmentProperties>>,
499 pub flink_application_configuration: Option<::Value<FlinkApplicationConfiguration>>,
504 pub sql_application_configuration: Option<::Value<SqlApplicationConfiguration>>,
509 pub zeppelin_application_configuration: Option<::Value<ZeppelinApplicationConfiguration>>,
514 }
515
516 impl ::codec::SerializeValue for ApplicationConfiguration {
517 fn serialize<S: ::serde::Serializer>(&self, s: S) -> Result<S::Ok, S::Error> {
518 let mut map = ::serde::Serializer::serialize_map(s, None)?;
519 if let Some(ref application_code_configuration) = self.application_code_configuration {
520 ::serde::ser::SerializeMap::serialize_entry(&mut map, "ApplicationCodeConfiguration", application_code_configuration)?;
521 }
522 if let Some(ref application_snapshot_configuration) = self.application_snapshot_configuration {
523 ::serde::ser::SerializeMap::serialize_entry(&mut map, "ApplicationSnapshotConfiguration", application_snapshot_configuration)?;
524 }
525 if let Some(ref environment_properties) = self.environment_properties {
526 ::serde::ser::SerializeMap::serialize_entry(&mut map, "EnvironmentProperties", environment_properties)?;
527 }
528 if let Some(ref flink_application_configuration) = self.flink_application_configuration {
529 ::serde::ser::SerializeMap::serialize_entry(&mut map, "FlinkApplicationConfiguration", flink_application_configuration)?;
530 }
531 if let Some(ref sql_application_configuration) = self.sql_application_configuration {
532 ::serde::ser::SerializeMap::serialize_entry(&mut map, "SqlApplicationConfiguration", sql_application_configuration)?;
533 }
534 if let Some(ref zeppelin_application_configuration) = self.zeppelin_application_configuration {
535 ::serde::ser::SerializeMap::serialize_entry(&mut map, "ZeppelinApplicationConfiguration", zeppelin_application_configuration)?;
536 }
537 ::serde::ser::SerializeMap::end(map)
538 }
539 }
540
541 impl ::codec::DeserializeValue for ApplicationConfiguration {
542 fn deserialize<'de, D: ::serde::Deserializer<'de>>(d: D) -> Result<ApplicationConfiguration, D::Error> {
543 struct Visitor;
544
545 impl<'de> ::serde::de::Visitor<'de> for Visitor {
546 type Value = ApplicationConfiguration;
547
548 fn expecting(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
549 write!(f, "a struct of type ApplicationConfiguration")
550 }
551
552 fn visit_map<A: ::serde::de::MapAccess<'de>>(self, mut map: A) -> Result<Self::Value, A::Error> {
553 let mut application_code_configuration: Option<::Value<ApplicationCodeConfiguration>> = None;
554 let mut application_snapshot_configuration: Option<::Value<ApplicationSnapshotConfiguration>> = None;
555 let mut environment_properties: Option<::Value<EnvironmentProperties>> = None;
556 let mut flink_application_configuration: Option<::Value<FlinkApplicationConfiguration>> = None;
557 let mut sql_application_configuration: Option<::Value<SqlApplicationConfiguration>> = None;
558 let mut zeppelin_application_configuration: Option<::Value<ZeppelinApplicationConfiguration>> = None;
559
560 while let Some(__cfn_key) = ::serde::de::MapAccess::next_key::<String>(&mut map)? {
561 match __cfn_key.as_ref() {
562 "ApplicationCodeConfiguration" => {
563 application_code_configuration = ::serde::de::MapAccess::next_value(&mut map)?;
564 }
565 "ApplicationSnapshotConfiguration" => {
566 application_snapshot_configuration = ::serde::de::MapAccess::next_value(&mut map)?;
567 }
568 "EnvironmentProperties" => {
569 environment_properties = ::serde::de::MapAccess::next_value(&mut map)?;
570 }
571 "FlinkApplicationConfiguration" => {
572 flink_application_configuration = ::serde::de::MapAccess::next_value(&mut map)?;
573 }
574 "SqlApplicationConfiguration" => {
575 sql_application_configuration = ::serde::de::MapAccess::next_value(&mut map)?;
576 }
577 "ZeppelinApplicationConfiguration" => {
578 zeppelin_application_configuration = ::serde::de::MapAccess::next_value(&mut map)?;
579 }
580 _ => {}
581 }
582 }
583
584 Ok(ApplicationConfiguration {
585 application_code_configuration: application_code_configuration,
586 application_snapshot_configuration: application_snapshot_configuration,
587 environment_properties: environment_properties,
588 flink_application_configuration: flink_application_configuration,
589 sql_application_configuration: sql_application_configuration,
590 zeppelin_application_configuration: zeppelin_application_configuration,
591 })
592 }
593 }
594
595 d.deserialize_map(Visitor)
596 }
597 }
598
599 #[derive(Debug, Default)]
601 pub struct ApplicationSnapshotConfiguration {
602 pub snapshots_enabled: ::Value<bool>,
607 }
608
609 impl ::codec::SerializeValue for ApplicationSnapshotConfiguration {
610 fn serialize<S: ::serde::Serializer>(&self, s: S) -> Result<S::Ok, S::Error> {
611 let mut map = ::serde::Serializer::serialize_map(s, None)?;
612 ::serde::ser::SerializeMap::serialize_entry(&mut map, "SnapshotsEnabled", &self.snapshots_enabled)?;
613 ::serde::ser::SerializeMap::end(map)
614 }
615 }
616
617 impl ::codec::DeserializeValue for ApplicationSnapshotConfiguration {
618 fn deserialize<'de, D: ::serde::Deserializer<'de>>(d: D) -> Result<ApplicationSnapshotConfiguration, D::Error> {
619 struct Visitor;
620
621 impl<'de> ::serde::de::Visitor<'de> for Visitor {
622 type Value = ApplicationSnapshotConfiguration;
623
624 fn expecting(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
625 write!(f, "a struct of type ApplicationSnapshotConfiguration")
626 }
627
628 fn visit_map<A: ::serde::de::MapAccess<'de>>(self, mut map: A) -> Result<Self::Value, A::Error> {
629 let mut snapshots_enabled: Option<::Value<bool>> = None;
630
631 while let Some(__cfn_key) = ::serde::de::MapAccess::next_key::<String>(&mut map)? {
632 match __cfn_key.as_ref() {
633 "SnapshotsEnabled" => {
634 snapshots_enabled = ::serde::de::MapAccess::next_value(&mut map)?;
635 }
636 _ => {}
637 }
638 }
639
640 Ok(ApplicationSnapshotConfiguration {
641 snapshots_enabled: snapshots_enabled.ok_or(::serde::de::Error::missing_field("SnapshotsEnabled"))?,
642 })
643 }
644 }
645
646 d.deserialize_map(Visitor)
647 }
648 }
649
650 #[derive(Debug, Default)]
652 pub struct CSVMappingParameters {
653 pub record_column_delimiter: ::Value<String>,
658 pub record_row_delimiter: ::Value<String>,
663 }
664
665 impl ::codec::SerializeValue for CSVMappingParameters {
666 fn serialize<S: ::serde::Serializer>(&self, s: S) -> Result<S::Ok, S::Error> {
667 let mut map = ::serde::Serializer::serialize_map(s, None)?;
668 ::serde::ser::SerializeMap::serialize_entry(&mut map, "RecordColumnDelimiter", &self.record_column_delimiter)?;
669 ::serde::ser::SerializeMap::serialize_entry(&mut map, "RecordRowDelimiter", &self.record_row_delimiter)?;
670 ::serde::ser::SerializeMap::end(map)
671 }
672 }
673
674 impl ::codec::DeserializeValue for CSVMappingParameters {
675 fn deserialize<'de, D: ::serde::Deserializer<'de>>(d: D) -> Result<CSVMappingParameters, D::Error> {
676 struct Visitor;
677
678 impl<'de> ::serde::de::Visitor<'de> for Visitor {
679 type Value = CSVMappingParameters;
680
681 fn expecting(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
682 write!(f, "a struct of type CSVMappingParameters")
683 }
684
685 fn visit_map<A: ::serde::de::MapAccess<'de>>(self, mut map: A) -> Result<Self::Value, A::Error> {
686 let mut record_column_delimiter: Option<::Value<String>> = None;
687 let mut record_row_delimiter: Option<::Value<String>> = None;
688
689 while let Some(__cfn_key) = ::serde::de::MapAccess::next_key::<String>(&mut map)? {
690 match __cfn_key.as_ref() {
691 "RecordColumnDelimiter" => {
692 record_column_delimiter = ::serde::de::MapAccess::next_value(&mut map)?;
693 }
694 "RecordRowDelimiter" => {
695 record_row_delimiter = ::serde::de::MapAccess::next_value(&mut map)?;
696 }
697 _ => {}
698 }
699 }
700
701 Ok(CSVMappingParameters {
702 record_column_delimiter: record_column_delimiter.ok_or(::serde::de::Error::missing_field("RecordColumnDelimiter"))?,
703 record_row_delimiter: record_row_delimiter.ok_or(::serde::de::Error::missing_field("RecordRowDelimiter"))?,
704 })
705 }
706 }
707
708 d.deserialize_map(Visitor)
709 }
710 }
711
712 #[derive(Debug, Default)]
714 pub struct CatalogConfiguration {
715 pub glue_data_catalog_configuration: Option<::Value<GlueDataCatalogConfiguration>>,
720 }
721
722 impl ::codec::SerializeValue for CatalogConfiguration {
723 fn serialize<S: ::serde::Serializer>(&self, s: S) -> Result<S::Ok, S::Error> {
724 let mut map = ::serde::Serializer::serialize_map(s, None)?;
725 if let Some(ref glue_data_catalog_configuration) = self.glue_data_catalog_configuration {
726 ::serde::ser::SerializeMap::serialize_entry(&mut map, "GlueDataCatalogConfiguration", glue_data_catalog_configuration)?;
727 }
728 ::serde::ser::SerializeMap::end(map)
729 }
730 }
731
732 impl ::codec::DeserializeValue for CatalogConfiguration {
733 fn deserialize<'de, D: ::serde::Deserializer<'de>>(d: D) -> Result<CatalogConfiguration, D::Error> {
734 struct Visitor;
735
736 impl<'de> ::serde::de::Visitor<'de> for Visitor {
737 type Value = CatalogConfiguration;
738
739 fn expecting(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
740 write!(f, "a struct of type CatalogConfiguration")
741 }
742
743 fn visit_map<A: ::serde::de::MapAccess<'de>>(self, mut map: A) -> Result<Self::Value, A::Error> {
744 let mut glue_data_catalog_configuration: Option<::Value<GlueDataCatalogConfiguration>> = None;
745
746 while let Some(__cfn_key) = ::serde::de::MapAccess::next_key::<String>(&mut map)? {
747 match __cfn_key.as_ref() {
748 "GlueDataCatalogConfiguration" => {
749 glue_data_catalog_configuration = ::serde::de::MapAccess::next_value(&mut map)?;
750 }
751 _ => {}
752 }
753 }
754
755 Ok(CatalogConfiguration {
756 glue_data_catalog_configuration: glue_data_catalog_configuration,
757 })
758 }
759 }
760
761 d.deserialize_map(Visitor)
762 }
763 }
764
765 #[derive(Debug, Default)]
767 pub struct CheckpointConfiguration {
768 pub checkpoint_interval: Option<::Value<u32>>,
773 pub checkpointing_enabled: Option<::Value<bool>>,
778 pub configuration_type: ::Value<String>,
783 pub min_pause_between_checkpoints: Option<::Value<u32>>,
788 }
789
790 impl ::codec::SerializeValue for CheckpointConfiguration {
791 fn serialize<S: ::serde::Serializer>(&self, s: S) -> Result<S::Ok, S::Error> {
792 let mut map = ::serde::Serializer::serialize_map(s, None)?;
793 if let Some(ref checkpoint_interval) = self.checkpoint_interval {
794 ::serde::ser::SerializeMap::serialize_entry(&mut map, "CheckpointInterval", checkpoint_interval)?;
795 }
796 if let Some(ref checkpointing_enabled) = self.checkpointing_enabled {
797 ::serde::ser::SerializeMap::serialize_entry(&mut map, "CheckpointingEnabled", checkpointing_enabled)?;
798 }
799 ::serde::ser::SerializeMap::serialize_entry(&mut map, "ConfigurationType", &self.configuration_type)?;
800 if let Some(ref min_pause_between_checkpoints) = self.min_pause_between_checkpoints {
801 ::serde::ser::SerializeMap::serialize_entry(&mut map, "MinPauseBetweenCheckpoints", min_pause_between_checkpoints)?;
802 }
803 ::serde::ser::SerializeMap::end(map)
804 }
805 }
806
807 impl ::codec::DeserializeValue for CheckpointConfiguration {
808 fn deserialize<'de, D: ::serde::Deserializer<'de>>(d: D) -> Result<CheckpointConfiguration, D::Error> {
809 struct Visitor;
810
811 impl<'de> ::serde::de::Visitor<'de> for Visitor {
812 type Value = CheckpointConfiguration;
813
814 fn expecting(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
815 write!(f, "a struct of type CheckpointConfiguration")
816 }
817
818 fn visit_map<A: ::serde::de::MapAccess<'de>>(self, mut map: A) -> Result<Self::Value, A::Error> {
819 let mut checkpoint_interval: Option<::Value<u32>> = None;
820 let mut checkpointing_enabled: Option<::Value<bool>> = None;
821 let mut configuration_type: Option<::Value<String>> = None;
822 let mut min_pause_between_checkpoints: Option<::Value<u32>> = None;
823
824 while let Some(__cfn_key) = ::serde::de::MapAccess::next_key::<String>(&mut map)? {
825 match __cfn_key.as_ref() {
826 "CheckpointInterval" => {
827 checkpoint_interval = ::serde::de::MapAccess::next_value(&mut map)?;
828 }
829 "CheckpointingEnabled" => {
830 checkpointing_enabled = ::serde::de::MapAccess::next_value(&mut map)?;
831 }
832 "ConfigurationType" => {
833 configuration_type = ::serde::de::MapAccess::next_value(&mut map)?;
834 }
835 "MinPauseBetweenCheckpoints" => {
836 min_pause_between_checkpoints = ::serde::de::MapAccess::next_value(&mut map)?;
837 }
838 _ => {}
839 }
840 }
841
842 Ok(CheckpointConfiguration {
843 checkpoint_interval: checkpoint_interval,
844 checkpointing_enabled: checkpointing_enabled,
845 configuration_type: configuration_type.ok_or(::serde::de::Error::missing_field("ConfigurationType"))?,
846 min_pause_between_checkpoints: min_pause_between_checkpoints,
847 })
848 }
849 }
850
851 d.deserialize_map(Visitor)
852 }
853 }
854
855 #[derive(Debug, Default)]
857 pub struct CodeContent {
858 pub s3_content_location: Option<::Value<S3ContentLocation>>,
863 pub text_content: Option<::Value<String>>,
868 pub zip_file_content: Option<::Value<String>>,
873 }
874
875 impl ::codec::SerializeValue for CodeContent {
876 fn serialize<S: ::serde::Serializer>(&self, s: S) -> Result<S::Ok, S::Error> {
877 let mut map = ::serde::Serializer::serialize_map(s, None)?;
878 if let Some(ref s3_content_location) = self.s3_content_location {
879 ::serde::ser::SerializeMap::serialize_entry(&mut map, "S3ContentLocation", s3_content_location)?;
880 }
881 if let Some(ref text_content) = self.text_content {
882 ::serde::ser::SerializeMap::serialize_entry(&mut map, "TextContent", text_content)?;
883 }
884 if let Some(ref zip_file_content) = self.zip_file_content {
885 ::serde::ser::SerializeMap::serialize_entry(&mut map, "ZipFileContent", zip_file_content)?;
886 }
887 ::serde::ser::SerializeMap::end(map)
888 }
889 }
890
891 impl ::codec::DeserializeValue for CodeContent {
892 fn deserialize<'de, D: ::serde::Deserializer<'de>>(d: D) -> Result<CodeContent, D::Error> {
893 struct Visitor;
894
895 impl<'de> ::serde::de::Visitor<'de> for Visitor {
896 type Value = CodeContent;
897
898 fn expecting(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
899 write!(f, "a struct of type CodeContent")
900 }
901
902 fn visit_map<A: ::serde::de::MapAccess<'de>>(self, mut map: A) -> Result<Self::Value, A::Error> {
903 let mut s3_content_location: Option<::Value<S3ContentLocation>> = None;
904 let mut text_content: Option<::Value<String>> = None;
905 let mut zip_file_content: Option<::Value<String>> = None;
906
907 while let Some(__cfn_key) = ::serde::de::MapAccess::next_key::<String>(&mut map)? {
908 match __cfn_key.as_ref() {
909 "S3ContentLocation" => {
910 s3_content_location = ::serde::de::MapAccess::next_value(&mut map)?;
911 }
912 "TextContent" => {
913 text_content = ::serde::de::MapAccess::next_value(&mut map)?;
914 }
915 "ZipFileContent" => {
916 zip_file_content = ::serde::de::MapAccess::next_value(&mut map)?;
917 }
918 _ => {}
919 }
920 }
921
922 Ok(CodeContent {
923 s3_content_location: s3_content_location,
924 text_content: text_content,
925 zip_file_content: zip_file_content,
926 })
927 }
928 }
929
930 d.deserialize_map(Visitor)
931 }
932 }
933
934 #[derive(Debug, Default)]
936 pub struct CustomArtifactConfiguration {
937 pub artifact_type: ::Value<String>,
942 pub maven_reference: Option<::Value<MavenReference>>,
947 pub s3_content_location: Option<::Value<S3ContentLocation>>,
952 }
953
954 impl ::codec::SerializeValue for CustomArtifactConfiguration {
955 fn serialize<S: ::serde::Serializer>(&self, s: S) -> Result<S::Ok, S::Error> {
956 let mut map = ::serde::Serializer::serialize_map(s, None)?;
957 ::serde::ser::SerializeMap::serialize_entry(&mut map, "ArtifactType", &self.artifact_type)?;
958 if let Some(ref maven_reference) = self.maven_reference {
959 ::serde::ser::SerializeMap::serialize_entry(&mut map, "MavenReference", maven_reference)?;
960 }
961 if let Some(ref s3_content_location) = self.s3_content_location {
962 ::serde::ser::SerializeMap::serialize_entry(&mut map, "S3ContentLocation", s3_content_location)?;
963 }
964 ::serde::ser::SerializeMap::end(map)
965 }
966 }
967
968 impl ::codec::DeserializeValue for CustomArtifactConfiguration {
969 fn deserialize<'de, D: ::serde::Deserializer<'de>>(d: D) -> Result<CustomArtifactConfiguration, D::Error> {
970 struct Visitor;
971
972 impl<'de> ::serde::de::Visitor<'de> for Visitor {
973 type Value = CustomArtifactConfiguration;
974
975 fn expecting(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
976 write!(f, "a struct of type CustomArtifactConfiguration")
977 }
978
979 fn visit_map<A: ::serde::de::MapAccess<'de>>(self, mut map: A) -> Result<Self::Value, A::Error> {
980 let mut artifact_type: Option<::Value<String>> = None;
981 let mut maven_reference: Option<::Value<MavenReference>> = None;
982 let mut s3_content_location: Option<::Value<S3ContentLocation>> = None;
983
984 while let Some(__cfn_key) = ::serde::de::MapAccess::next_key::<String>(&mut map)? {
985 match __cfn_key.as_ref() {
986 "ArtifactType" => {
987 artifact_type = ::serde::de::MapAccess::next_value(&mut map)?;
988 }
989 "MavenReference" => {
990 maven_reference = ::serde::de::MapAccess::next_value(&mut map)?;
991 }
992 "S3ContentLocation" => {
993 s3_content_location = ::serde::de::MapAccess::next_value(&mut map)?;
994 }
995 _ => {}
996 }
997 }
998
999 Ok(CustomArtifactConfiguration {
1000 artifact_type: artifact_type.ok_or(::serde::de::Error::missing_field("ArtifactType"))?,
1001 maven_reference: maven_reference,
1002 s3_content_location: s3_content_location,
1003 })
1004 }
1005 }
1006
1007 d.deserialize_map(Visitor)
1008 }
1009 }
1010
1011 #[derive(Debug, Default)]
1013 pub struct CustomArtifactsConfiguration {
1014 }
1015
1016 impl ::codec::SerializeValue for CustomArtifactsConfiguration {
1017 fn serialize<S: ::serde::Serializer>(&self, s: S) -> Result<S::Ok, S::Error> {
1018 let map = ::serde::Serializer::serialize_map(s, None)?;
1019 ::serde::ser::SerializeMap::end(map)
1020 }
1021 }
1022
1023 impl ::codec::DeserializeValue for CustomArtifactsConfiguration {
1024 fn deserialize<'de, D: ::serde::Deserializer<'de>>(d: D) -> Result<CustomArtifactsConfiguration, D::Error> {
1025 struct Visitor;
1026
1027 impl<'de> ::serde::de::Visitor<'de> for Visitor {
1028 type Value = CustomArtifactsConfiguration;
1029
1030 fn expecting(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
1031 write!(f, "a struct of type CustomArtifactsConfiguration")
1032 }
1033
1034 fn visit_map<A: ::serde::de::MapAccess<'de>>(self, _map: A) -> Result<Self::Value, A::Error> {
1035 Ok(CustomArtifactsConfiguration {})
1036 }
1037 }
1038
1039 d.deserialize_map(Visitor)
1040 }
1041 }
1042
1043 #[derive(Debug, Default)]
1045 pub struct DeployAsApplicationConfiguration {
1046 pub s3_content_location: ::Value<S3ContentBaseLocation>,
1051 }
1052
1053 impl ::codec::SerializeValue for DeployAsApplicationConfiguration {
1054 fn serialize<S: ::serde::Serializer>(&self, s: S) -> Result<S::Ok, S::Error> {
1055 let mut map = ::serde::Serializer::serialize_map(s, None)?;
1056 ::serde::ser::SerializeMap::serialize_entry(&mut map, "S3ContentLocation", &self.s3_content_location)?;
1057 ::serde::ser::SerializeMap::end(map)
1058 }
1059 }
1060
1061 impl ::codec::DeserializeValue for DeployAsApplicationConfiguration {
1062 fn deserialize<'de, D: ::serde::Deserializer<'de>>(d: D) -> Result<DeployAsApplicationConfiguration, D::Error> {
1063 struct Visitor;
1064
1065 impl<'de> ::serde::de::Visitor<'de> for Visitor {
1066 type Value = DeployAsApplicationConfiguration;
1067
1068 fn expecting(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
1069 write!(f, "a struct of type DeployAsApplicationConfiguration")
1070 }
1071
1072 fn visit_map<A: ::serde::de::MapAccess<'de>>(self, mut map: A) -> Result<Self::Value, A::Error> {
1073 let mut s3_content_location: Option<::Value<S3ContentBaseLocation>> = None;
1074
1075 while let Some(__cfn_key) = ::serde::de::MapAccess::next_key::<String>(&mut map)? {
1076 match __cfn_key.as_ref() {
1077 "S3ContentLocation" => {
1078 s3_content_location = ::serde::de::MapAccess::next_value(&mut map)?;
1079 }
1080 _ => {}
1081 }
1082 }
1083
1084 Ok(DeployAsApplicationConfiguration {
1085 s3_content_location: s3_content_location.ok_or(::serde::de::Error::missing_field("S3ContentLocation"))?,
1086 })
1087 }
1088 }
1089
1090 d.deserialize_map(Visitor)
1091 }
1092 }
1093
1094 #[derive(Debug, Default)]
1096 pub struct EnvironmentProperties {
1097 pub property_groups: Option<::ValueList<PropertyGroup>>,
1102 }
1103
1104 impl ::codec::SerializeValue for EnvironmentProperties {
1105 fn serialize<S: ::serde::Serializer>(&self, s: S) -> Result<S::Ok, S::Error> {
1106 let mut map = ::serde::Serializer::serialize_map(s, None)?;
1107 if let Some(ref property_groups) = self.property_groups {
1108 ::serde::ser::SerializeMap::serialize_entry(&mut map, "PropertyGroups", property_groups)?;
1109 }
1110 ::serde::ser::SerializeMap::end(map)
1111 }
1112 }
1113
1114 impl ::codec::DeserializeValue for EnvironmentProperties {
1115 fn deserialize<'de, D: ::serde::Deserializer<'de>>(d: D) -> Result<EnvironmentProperties, D::Error> {
1116 struct Visitor;
1117
1118 impl<'de> ::serde::de::Visitor<'de> for Visitor {
1119 type Value = EnvironmentProperties;
1120
1121 fn expecting(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
1122 write!(f, "a struct of type EnvironmentProperties")
1123 }
1124
1125 fn visit_map<A: ::serde::de::MapAccess<'de>>(self, mut map: A) -> Result<Self::Value, A::Error> {
1126 let mut property_groups: Option<::ValueList<PropertyGroup>> = None;
1127
1128 while let Some(__cfn_key) = ::serde::de::MapAccess::next_key::<String>(&mut map)? {
1129 match __cfn_key.as_ref() {
1130 "PropertyGroups" => {
1131 property_groups = ::serde::de::MapAccess::next_value(&mut map)?;
1132 }
1133 _ => {}
1134 }
1135 }
1136
1137 Ok(EnvironmentProperties {
1138 property_groups: property_groups,
1139 })
1140 }
1141 }
1142
1143 d.deserialize_map(Visitor)
1144 }
1145 }
1146
1147 #[derive(Debug, Default)]
1149 pub struct FlinkApplicationConfiguration {
1150 pub checkpoint_configuration: Option<::Value<CheckpointConfiguration>>,
1155 pub monitoring_configuration: Option<::Value<MonitoringConfiguration>>,
1160 pub parallelism_configuration: Option<::Value<ParallelismConfiguration>>,
1165 }
1166
1167 impl ::codec::SerializeValue for FlinkApplicationConfiguration {
1168 fn serialize<S: ::serde::Serializer>(&self, s: S) -> Result<S::Ok, S::Error> {
1169 let mut map = ::serde::Serializer::serialize_map(s, None)?;
1170 if let Some(ref checkpoint_configuration) = self.checkpoint_configuration {
1171 ::serde::ser::SerializeMap::serialize_entry(&mut map, "CheckpointConfiguration", checkpoint_configuration)?;
1172 }
1173 if let Some(ref monitoring_configuration) = self.monitoring_configuration {
1174 ::serde::ser::SerializeMap::serialize_entry(&mut map, "MonitoringConfiguration", monitoring_configuration)?;
1175 }
1176 if let Some(ref parallelism_configuration) = self.parallelism_configuration {
1177 ::serde::ser::SerializeMap::serialize_entry(&mut map, "ParallelismConfiguration", parallelism_configuration)?;
1178 }
1179 ::serde::ser::SerializeMap::end(map)
1180 }
1181 }
1182
1183 impl ::codec::DeserializeValue for FlinkApplicationConfiguration {
1184 fn deserialize<'de, D: ::serde::Deserializer<'de>>(d: D) -> Result<FlinkApplicationConfiguration, D::Error> {
1185 struct Visitor;
1186
1187 impl<'de> ::serde::de::Visitor<'de> for Visitor {
1188 type Value = FlinkApplicationConfiguration;
1189
1190 fn expecting(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
1191 write!(f, "a struct of type FlinkApplicationConfiguration")
1192 }
1193
1194 fn visit_map<A: ::serde::de::MapAccess<'de>>(self, mut map: A) -> Result<Self::Value, A::Error> {
1195 let mut checkpoint_configuration: Option<::Value<CheckpointConfiguration>> = None;
1196 let mut monitoring_configuration: Option<::Value<MonitoringConfiguration>> = None;
1197 let mut parallelism_configuration: Option<::Value<ParallelismConfiguration>> = None;
1198
1199 while let Some(__cfn_key) = ::serde::de::MapAccess::next_key::<String>(&mut map)? {
1200 match __cfn_key.as_ref() {
1201 "CheckpointConfiguration" => {
1202 checkpoint_configuration = ::serde::de::MapAccess::next_value(&mut map)?;
1203 }
1204 "MonitoringConfiguration" => {
1205 monitoring_configuration = ::serde::de::MapAccess::next_value(&mut map)?;
1206 }
1207 "ParallelismConfiguration" => {
1208 parallelism_configuration = ::serde::de::MapAccess::next_value(&mut map)?;
1209 }
1210 _ => {}
1211 }
1212 }
1213
1214 Ok(FlinkApplicationConfiguration {
1215 checkpoint_configuration: checkpoint_configuration,
1216 monitoring_configuration: monitoring_configuration,
1217 parallelism_configuration: parallelism_configuration,
1218 })
1219 }
1220 }
1221
1222 d.deserialize_map(Visitor)
1223 }
1224 }
1225
1226 #[derive(Debug, Default)]
1228 pub struct GlueDataCatalogConfiguration {
1229 pub database_arn: Option<::Value<String>>,
1234 }
1235
1236 impl ::codec::SerializeValue for GlueDataCatalogConfiguration {
1237 fn serialize<S: ::serde::Serializer>(&self, s: S) -> Result<S::Ok, S::Error> {
1238 let mut map = ::serde::Serializer::serialize_map(s, None)?;
1239 if let Some(ref database_arn) = self.database_arn {
1240 ::serde::ser::SerializeMap::serialize_entry(&mut map, "DatabaseARN", database_arn)?;
1241 }
1242 ::serde::ser::SerializeMap::end(map)
1243 }
1244 }
1245
1246 impl ::codec::DeserializeValue for GlueDataCatalogConfiguration {
1247 fn deserialize<'de, D: ::serde::Deserializer<'de>>(d: D) -> Result<GlueDataCatalogConfiguration, D::Error> {
1248 struct Visitor;
1249
1250 impl<'de> ::serde::de::Visitor<'de> for Visitor {
1251 type Value = GlueDataCatalogConfiguration;
1252
1253 fn expecting(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
1254 write!(f, "a struct of type GlueDataCatalogConfiguration")
1255 }
1256
1257 fn visit_map<A: ::serde::de::MapAccess<'de>>(self, mut map: A) -> Result<Self::Value, A::Error> {
1258 let mut database_arn: Option<::Value<String>> = None;
1259
1260 while let Some(__cfn_key) = ::serde::de::MapAccess::next_key::<String>(&mut map)? {
1261 match __cfn_key.as_ref() {
1262 "DatabaseARN" => {
1263 database_arn = ::serde::de::MapAccess::next_value(&mut map)?;
1264 }
1265 _ => {}
1266 }
1267 }
1268
1269 Ok(GlueDataCatalogConfiguration {
1270 database_arn: database_arn,
1271 })
1272 }
1273 }
1274
1275 d.deserialize_map(Visitor)
1276 }
1277 }
1278
1279 #[derive(Debug, Default)]
1281 pub struct Input {
1282 pub input_parallelism: Option<::Value<InputParallelism>>,
1287 pub input_processing_configuration: Option<::Value<InputProcessingConfiguration>>,
1292 pub input_schema: ::Value<InputSchema>,
1297 pub kinesis_firehose_input: Option<::Value<KinesisFirehoseInput>>,
1302 pub kinesis_streams_input: Option<::Value<KinesisStreamsInput>>,
1307 pub name_prefix: ::Value<String>,
1312 }
1313
1314 impl ::codec::SerializeValue for Input {
1315 fn serialize<S: ::serde::Serializer>(&self, s: S) -> Result<S::Ok, S::Error> {
1316 let mut map = ::serde::Serializer::serialize_map(s, None)?;
1317 if let Some(ref input_parallelism) = self.input_parallelism {
1318 ::serde::ser::SerializeMap::serialize_entry(&mut map, "InputParallelism", input_parallelism)?;
1319 }
1320 if let Some(ref input_processing_configuration) = self.input_processing_configuration {
1321 ::serde::ser::SerializeMap::serialize_entry(&mut map, "InputProcessingConfiguration", input_processing_configuration)?;
1322 }
1323 ::serde::ser::SerializeMap::serialize_entry(&mut map, "InputSchema", &self.input_schema)?;
1324 if let Some(ref kinesis_firehose_input) = self.kinesis_firehose_input {
1325 ::serde::ser::SerializeMap::serialize_entry(&mut map, "KinesisFirehoseInput", kinesis_firehose_input)?;
1326 }
1327 if let Some(ref kinesis_streams_input) = self.kinesis_streams_input {
1328 ::serde::ser::SerializeMap::serialize_entry(&mut map, "KinesisStreamsInput", kinesis_streams_input)?;
1329 }
1330 ::serde::ser::SerializeMap::serialize_entry(&mut map, "NamePrefix", &self.name_prefix)?;
1331 ::serde::ser::SerializeMap::end(map)
1332 }
1333 }
1334
1335 impl ::codec::DeserializeValue for Input {
1336 fn deserialize<'de, D: ::serde::Deserializer<'de>>(d: D) -> Result<Input, D::Error> {
1337 struct Visitor;
1338
1339 impl<'de> ::serde::de::Visitor<'de> for Visitor {
1340 type Value = Input;
1341
1342 fn expecting(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
1343 write!(f, "a struct of type Input")
1344 }
1345
1346 fn visit_map<A: ::serde::de::MapAccess<'de>>(self, mut map: A) -> Result<Self::Value, A::Error> {
1347 let mut input_parallelism: Option<::Value<InputParallelism>> = None;
1348 let mut input_processing_configuration: Option<::Value<InputProcessingConfiguration>> = None;
1349 let mut input_schema: Option<::Value<InputSchema>> = None;
1350 let mut kinesis_firehose_input: Option<::Value<KinesisFirehoseInput>> = None;
1351 let mut kinesis_streams_input: Option<::Value<KinesisStreamsInput>> = None;
1352 let mut name_prefix: Option<::Value<String>> = None;
1353
1354 while let Some(__cfn_key) = ::serde::de::MapAccess::next_key::<String>(&mut map)? {
1355 match __cfn_key.as_ref() {
1356 "InputParallelism" => {
1357 input_parallelism = ::serde::de::MapAccess::next_value(&mut map)?;
1358 }
1359 "InputProcessingConfiguration" => {
1360 input_processing_configuration = ::serde::de::MapAccess::next_value(&mut map)?;
1361 }
1362 "InputSchema" => {
1363 input_schema = ::serde::de::MapAccess::next_value(&mut map)?;
1364 }
1365 "KinesisFirehoseInput" => {
1366 kinesis_firehose_input = ::serde::de::MapAccess::next_value(&mut map)?;
1367 }
1368 "KinesisStreamsInput" => {
1369 kinesis_streams_input = ::serde::de::MapAccess::next_value(&mut map)?;
1370 }
1371 "NamePrefix" => {
1372 name_prefix = ::serde::de::MapAccess::next_value(&mut map)?;
1373 }
1374 _ => {}
1375 }
1376 }
1377
1378 Ok(Input {
1379 input_parallelism: input_parallelism,
1380 input_processing_configuration: input_processing_configuration,
1381 input_schema: input_schema.ok_or(::serde::de::Error::missing_field("InputSchema"))?,
1382 kinesis_firehose_input: kinesis_firehose_input,
1383 kinesis_streams_input: kinesis_streams_input,
1384 name_prefix: name_prefix.ok_or(::serde::de::Error::missing_field("NamePrefix"))?,
1385 })
1386 }
1387 }
1388
1389 d.deserialize_map(Visitor)
1390 }
1391 }
1392
1393 #[derive(Debug, Default)]
1395 pub struct InputLambdaProcessor {
1396 pub resource_arn: ::Value<String>,
1401 }
1402
1403 impl ::codec::SerializeValue for InputLambdaProcessor {
1404 fn serialize<S: ::serde::Serializer>(&self, s: S) -> Result<S::Ok, S::Error> {
1405 let mut map = ::serde::Serializer::serialize_map(s, None)?;
1406 ::serde::ser::SerializeMap::serialize_entry(&mut map, "ResourceARN", &self.resource_arn)?;
1407 ::serde::ser::SerializeMap::end(map)
1408 }
1409 }
1410
1411 impl ::codec::DeserializeValue for InputLambdaProcessor {
1412 fn deserialize<'de, D: ::serde::Deserializer<'de>>(d: D) -> Result<InputLambdaProcessor, D::Error> {
1413 struct Visitor;
1414
1415 impl<'de> ::serde::de::Visitor<'de> for Visitor {
1416 type Value = InputLambdaProcessor;
1417
1418 fn expecting(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
1419 write!(f, "a struct of type InputLambdaProcessor")
1420 }
1421
1422 fn visit_map<A: ::serde::de::MapAccess<'de>>(self, mut map: A) -> Result<Self::Value, A::Error> {
1423 let mut resource_arn: Option<::Value<String>> = None;
1424
1425 while let Some(__cfn_key) = ::serde::de::MapAccess::next_key::<String>(&mut map)? {
1426 match __cfn_key.as_ref() {
1427 "ResourceARN" => {
1428 resource_arn = ::serde::de::MapAccess::next_value(&mut map)?;
1429 }
1430 _ => {}
1431 }
1432 }
1433
1434 Ok(InputLambdaProcessor {
1435 resource_arn: resource_arn.ok_or(::serde::de::Error::missing_field("ResourceARN"))?,
1436 })
1437 }
1438 }
1439
1440 d.deserialize_map(Visitor)
1441 }
1442 }
1443
1444 #[derive(Debug, Default)]
1446 pub struct InputParallelism {
1447 pub count: Option<::Value<u32>>,
1452 }
1453
1454 impl ::codec::SerializeValue for InputParallelism {
1455 fn serialize<S: ::serde::Serializer>(&self, s: S) -> Result<S::Ok, S::Error> {
1456 let mut map = ::serde::Serializer::serialize_map(s, None)?;
1457 if let Some(ref count) = self.count {
1458 ::serde::ser::SerializeMap::serialize_entry(&mut map, "Count", count)?;
1459 }
1460 ::serde::ser::SerializeMap::end(map)
1461 }
1462 }
1463
1464 impl ::codec::DeserializeValue for InputParallelism {
1465 fn deserialize<'de, D: ::serde::Deserializer<'de>>(d: D) -> Result<InputParallelism, D::Error> {
1466 struct Visitor;
1467
1468 impl<'de> ::serde::de::Visitor<'de> for Visitor {
1469 type Value = InputParallelism;
1470
1471 fn expecting(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
1472 write!(f, "a struct of type InputParallelism")
1473 }
1474
1475 fn visit_map<A: ::serde::de::MapAccess<'de>>(self, mut map: A) -> Result<Self::Value, A::Error> {
1476 let mut count: Option<::Value<u32>> = None;
1477
1478 while let Some(__cfn_key) = ::serde::de::MapAccess::next_key::<String>(&mut map)? {
1479 match __cfn_key.as_ref() {
1480 "Count" => {
1481 count = ::serde::de::MapAccess::next_value(&mut map)?;
1482 }
1483 _ => {}
1484 }
1485 }
1486
1487 Ok(InputParallelism {
1488 count: count,
1489 })
1490 }
1491 }
1492
1493 d.deserialize_map(Visitor)
1494 }
1495 }
1496
1497 #[derive(Debug, Default)]
1499 pub struct InputProcessingConfiguration {
1500 pub input_lambda_processor: Option<::Value<InputLambdaProcessor>>,
1505 }
1506
1507 impl ::codec::SerializeValue for InputProcessingConfiguration {
1508 fn serialize<S: ::serde::Serializer>(&self, s: S) -> Result<S::Ok, S::Error> {
1509 let mut map = ::serde::Serializer::serialize_map(s, None)?;
1510 if let Some(ref input_lambda_processor) = self.input_lambda_processor {
1511 ::serde::ser::SerializeMap::serialize_entry(&mut map, "InputLambdaProcessor", input_lambda_processor)?;
1512 }
1513 ::serde::ser::SerializeMap::end(map)
1514 }
1515 }
1516
1517 impl ::codec::DeserializeValue for InputProcessingConfiguration {
1518 fn deserialize<'de, D: ::serde::Deserializer<'de>>(d: D) -> Result<InputProcessingConfiguration, D::Error> {
1519 struct Visitor;
1520
1521 impl<'de> ::serde::de::Visitor<'de> for Visitor {
1522 type Value = InputProcessingConfiguration;
1523
1524 fn expecting(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
1525 write!(f, "a struct of type InputProcessingConfiguration")
1526 }
1527
1528 fn visit_map<A: ::serde::de::MapAccess<'de>>(self, mut map: A) -> Result<Self::Value, A::Error> {
1529 let mut input_lambda_processor: Option<::Value<InputLambdaProcessor>> = None;
1530
1531 while let Some(__cfn_key) = ::serde::de::MapAccess::next_key::<String>(&mut map)? {
1532 match __cfn_key.as_ref() {
1533 "InputLambdaProcessor" => {
1534 input_lambda_processor = ::serde::de::MapAccess::next_value(&mut map)?;
1535 }
1536 _ => {}
1537 }
1538 }
1539
1540 Ok(InputProcessingConfiguration {
1541 input_lambda_processor: input_lambda_processor,
1542 })
1543 }
1544 }
1545
1546 d.deserialize_map(Visitor)
1547 }
1548 }
1549
1550 #[derive(Debug, Default)]
1552 pub struct InputSchema {
1553 pub record_columns: ::ValueList<RecordColumn>,
1558 pub record_encoding: Option<::Value<String>>,
1563 pub record_format: ::Value<RecordFormat>,
1568 }
1569
1570 impl ::codec::SerializeValue for InputSchema {
1571 fn serialize<S: ::serde::Serializer>(&self, s: S) -> Result<S::Ok, S::Error> {
1572 let mut map = ::serde::Serializer::serialize_map(s, None)?;
1573 ::serde::ser::SerializeMap::serialize_entry(&mut map, "RecordColumns", &self.record_columns)?;
1574 if let Some(ref record_encoding) = self.record_encoding {
1575 ::serde::ser::SerializeMap::serialize_entry(&mut map, "RecordEncoding", record_encoding)?;
1576 }
1577 ::serde::ser::SerializeMap::serialize_entry(&mut map, "RecordFormat", &self.record_format)?;
1578 ::serde::ser::SerializeMap::end(map)
1579 }
1580 }
1581
1582 impl ::codec::DeserializeValue for InputSchema {
1583 fn deserialize<'de, D: ::serde::Deserializer<'de>>(d: D) -> Result<InputSchema, D::Error> {
1584 struct Visitor;
1585
1586 impl<'de> ::serde::de::Visitor<'de> for Visitor {
1587 type Value = InputSchema;
1588
1589 fn expecting(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
1590 write!(f, "a struct of type InputSchema")
1591 }
1592
1593 fn visit_map<A: ::serde::de::MapAccess<'de>>(self, mut map: A) -> Result<Self::Value, A::Error> {
1594 let mut record_columns: Option<::ValueList<RecordColumn>> = None;
1595 let mut record_encoding: Option<::Value<String>> = None;
1596 let mut record_format: Option<::Value<RecordFormat>> = None;
1597
1598 while let Some(__cfn_key) = ::serde::de::MapAccess::next_key::<String>(&mut map)? {
1599 match __cfn_key.as_ref() {
1600 "RecordColumns" => {
1601 record_columns = ::serde::de::MapAccess::next_value(&mut map)?;
1602 }
1603 "RecordEncoding" => {
1604 record_encoding = ::serde::de::MapAccess::next_value(&mut map)?;
1605 }
1606 "RecordFormat" => {
1607 record_format = ::serde::de::MapAccess::next_value(&mut map)?;
1608 }
1609 _ => {}
1610 }
1611 }
1612
1613 Ok(InputSchema {
1614 record_columns: record_columns.ok_or(::serde::de::Error::missing_field("RecordColumns"))?,
1615 record_encoding: record_encoding,
1616 record_format: record_format.ok_or(::serde::de::Error::missing_field("RecordFormat"))?,
1617 })
1618 }
1619 }
1620
1621 d.deserialize_map(Visitor)
1622 }
1623 }
1624
1625 #[derive(Debug, Default)]
1627 pub struct JSONMappingParameters {
1628 pub record_row_path: ::Value<String>,
1633 }
1634
1635 impl ::codec::SerializeValue for JSONMappingParameters {
1636 fn serialize<S: ::serde::Serializer>(&self, s: S) -> Result<S::Ok, S::Error> {
1637 let mut map = ::serde::Serializer::serialize_map(s, None)?;
1638 ::serde::ser::SerializeMap::serialize_entry(&mut map, "RecordRowPath", &self.record_row_path)?;
1639 ::serde::ser::SerializeMap::end(map)
1640 }
1641 }
1642
1643 impl ::codec::DeserializeValue for JSONMappingParameters {
1644 fn deserialize<'de, D: ::serde::Deserializer<'de>>(d: D) -> Result<JSONMappingParameters, D::Error> {
1645 struct Visitor;
1646
1647 impl<'de> ::serde::de::Visitor<'de> for Visitor {
1648 type Value = JSONMappingParameters;
1649
1650 fn expecting(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
1651 write!(f, "a struct of type JSONMappingParameters")
1652 }
1653
1654 fn visit_map<A: ::serde::de::MapAccess<'de>>(self, mut map: A) -> Result<Self::Value, A::Error> {
1655 let mut record_row_path: Option<::Value<String>> = None;
1656
1657 while let Some(__cfn_key) = ::serde::de::MapAccess::next_key::<String>(&mut map)? {
1658 match __cfn_key.as_ref() {
1659 "RecordRowPath" => {
1660 record_row_path = ::serde::de::MapAccess::next_value(&mut map)?;
1661 }
1662 _ => {}
1663 }
1664 }
1665
1666 Ok(JSONMappingParameters {
1667 record_row_path: record_row_path.ok_or(::serde::de::Error::missing_field("RecordRowPath"))?,
1668 })
1669 }
1670 }
1671
1672 d.deserialize_map(Visitor)
1673 }
1674 }
1675
1676 #[derive(Debug, Default)]
1678 pub struct KinesisFirehoseInput {
1679 pub resource_arn: ::Value<String>,
1684 }
1685
1686 impl ::codec::SerializeValue for KinesisFirehoseInput {
1687 fn serialize<S: ::serde::Serializer>(&self, s: S) -> Result<S::Ok, S::Error> {
1688 let mut map = ::serde::Serializer::serialize_map(s, None)?;
1689 ::serde::ser::SerializeMap::serialize_entry(&mut map, "ResourceARN", &self.resource_arn)?;
1690 ::serde::ser::SerializeMap::end(map)
1691 }
1692 }
1693
1694 impl ::codec::DeserializeValue for KinesisFirehoseInput {
1695 fn deserialize<'de, D: ::serde::Deserializer<'de>>(d: D) -> Result<KinesisFirehoseInput, D::Error> {
1696 struct Visitor;
1697
1698 impl<'de> ::serde::de::Visitor<'de> for Visitor {
1699 type Value = KinesisFirehoseInput;
1700
1701 fn expecting(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
1702 write!(f, "a struct of type KinesisFirehoseInput")
1703 }
1704
1705 fn visit_map<A: ::serde::de::MapAccess<'de>>(self, mut map: A) -> Result<Self::Value, A::Error> {
1706 let mut resource_arn: Option<::Value<String>> = None;
1707
1708 while let Some(__cfn_key) = ::serde::de::MapAccess::next_key::<String>(&mut map)? {
1709 match __cfn_key.as_ref() {
1710 "ResourceARN" => {
1711 resource_arn = ::serde::de::MapAccess::next_value(&mut map)?;
1712 }
1713 _ => {}
1714 }
1715 }
1716
1717 Ok(KinesisFirehoseInput {
1718 resource_arn: resource_arn.ok_or(::serde::de::Error::missing_field("ResourceARN"))?,
1719 })
1720 }
1721 }
1722
1723 d.deserialize_map(Visitor)
1724 }
1725 }
1726
1727 #[derive(Debug, Default)]
1729 pub struct KinesisStreamsInput {
1730 pub resource_arn: ::Value<String>,
1735 }
1736
1737 impl ::codec::SerializeValue for KinesisStreamsInput {
1738 fn serialize<S: ::serde::Serializer>(&self, s: S) -> Result<S::Ok, S::Error> {
1739 let mut map = ::serde::Serializer::serialize_map(s, None)?;
1740 ::serde::ser::SerializeMap::serialize_entry(&mut map, "ResourceARN", &self.resource_arn)?;
1741 ::serde::ser::SerializeMap::end(map)
1742 }
1743 }
1744
1745 impl ::codec::DeserializeValue for KinesisStreamsInput {
1746 fn deserialize<'de, D: ::serde::Deserializer<'de>>(d: D) -> Result<KinesisStreamsInput, D::Error> {
1747 struct Visitor;
1748
1749 impl<'de> ::serde::de::Visitor<'de> for Visitor {
1750 type Value = KinesisStreamsInput;
1751
1752 fn expecting(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
1753 write!(f, "a struct of type KinesisStreamsInput")
1754 }
1755
1756 fn visit_map<A: ::serde::de::MapAccess<'de>>(self, mut map: A) -> Result<Self::Value, A::Error> {
1757 let mut resource_arn: Option<::Value<String>> = None;
1758
1759 while let Some(__cfn_key) = ::serde::de::MapAccess::next_key::<String>(&mut map)? {
1760 match __cfn_key.as_ref() {
1761 "ResourceARN" => {
1762 resource_arn = ::serde::de::MapAccess::next_value(&mut map)?;
1763 }
1764 _ => {}
1765 }
1766 }
1767
1768 Ok(KinesisStreamsInput {
1769 resource_arn: resource_arn.ok_or(::serde::de::Error::missing_field("ResourceARN"))?,
1770 })
1771 }
1772 }
1773
1774 d.deserialize_map(Visitor)
1775 }
1776 }
1777
1778 #[derive(Debug, Default)]
1780 pub struct MappingParameters {
1781 pub csv_mapping_parameters: Option<::Value<CSVMappingParameters>>,
1786 pub json_mapping_parameters: Option<::Value<JSONMappingParameters>>,
1791 }
1792
1793 impl ::codec::SerializeValue for MappingParameters {
1794 fn serialize<S: ::serde::Serializer>(&self, s: S) -> Result<S::Ok, S::Error> {
1795 let mut map = ::serde::Serializer::serialize_map(s, None)?;
1796 if let Some(ref csv_mapping_parameters) = self.csv_mapping_parameters {
1797 ::serde::ser::SerializeMap::serialize_entry(&mut map, "CSVMappingParameters", csv_mapping_parameters)?;
1798 }
1799 if let Some(ref json_mapping_parameters) = self.json_mapping_parameters {
1800 ::serde::ser::SerializeMap::serialize_entry(&mut map, "JSONMappingParameters", json_mapping_parameters)?;
1801 }
1802 ::serde::ser::SerializeMap::end(map)
1803 }
1804 }
1805
1806 impl ::codec::DeserializeValue for MappingParameters {
1807 fn deserialize<'de, D: ::serde::Deserializer<'de>>(d: D) -> Result<MappingParameters, D::Error> {
1808 struct Visitor;
1809
1810 impl<'de> ::serde::de::Visitor<'de> for Visitor {
1811 type Value = MappingParameters;
1812
1813 fn expecting(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
1814 write!(f, "a struct of type MappingParameters")
1815 }
1816
1817 fn visit_map<A: ::serde::de::MapAccess<'de>>(self, mut map: A) -> Result<Self::Value, A::Error> {
1818 let mut csv_mapping_parameters: Option<::Value<CSVMappingParameters>> = None;
1819 let mut json_mapping_parameters: Option<::Value<JSONMappingParameters>> = None;
1820
1821 while let Some(__cfn_key) = ::serde::de::MapAccess::next_key::<String>(&mut map)? {
1822 match __cfn_key.as_ref() {
1823 "CSVMappingParameters" => {
1824 csv_mapping_parameters = ::serde::de::MapAccess::next_value(&mut map)?;
1825 }
1826 "JSONMappingParameters" => {
1827 json_mapping_parameters = ::serde::de::MapAccess::next_value(&mut map)?;
1828 }
1829 _ => {}
1830 }
1831 }
1832
1833 Ok(MappingParameters {
1834 csv_mapping_parameters: csv_mapping_parameters,
1835 json_mapping_parameters: json_mapping_parameters,
1836 })
1837 }
1838 }
1839
1840 d.deserialize_map(Visitor)
1841 }
1842 }
1843
1844 #[derive(Debug, Default)]
1846 pub struct MavenReference {
1847 pub artifact_id: ::Value<String>,
1852 pub group_id: ::Value<String>,
1857 pub version: ::Value<String>,
1862 }
1863
1864 impl ::codec::SerializeValue for MavenReference {
1865 fn serialize<S: ::serde::Serializer>(&self, s: S) -> Result<S::Ok, S::Error> {
1866 let mut map = ::serde::Serializer::serialize_map(s, None)?;
1867 ::serde::ser::SerializeMap::serialize_entry(&mut map, "ArtifactId", &self.artifact_id)?;
1868 ::serde::ser::SerializeMap::serialize_entry(&mut map, "GroupId", &self.group_id)?;
1869 ::serde::ser::SerializeMap::serialize_entry(&mut map, "Version", &self.version)?;
1870 ::serde::ser::SerializeMap::end(map)
1871 }
1872 }
1873
1874 impl ::codec::DeserializeValue for MavenReference {
1875 fn deserialize<'de, D: ::serde::Deserializer<'de>>(d: D) -> Result<MavenReference, D::Error> {
1876 struct Visitor;
1877
1878 impl<'de> ::serde::de::Visitor<'de> for Visitor {
1879 type Value = MavenReference;
1880
1881 fn expecting(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
1882 write!(f, "a struct of type MavenReference")
1883 }
1884
1885 fn visit_map<A: ::serde::de::MapAccess<'de>>(self, mut map: A) -> Result<Self::Value, A::Error> {
1886 let mut artifact_id: Option<::Value<String>> = None;
1887 let mut group_id: Option<::Value<String>> = None;
1888 let mut version: Option<::Value<String>> = None;
1889
1890 while let Some(__cfn_key) = ::serde::de::MapAccess::next_key::<String>(&mut map)? {
1891 match __cfn_key.as_ref() {
1892 "ArtifactId" => {
1893 artifact_id = ::serde::de::MapAccess::next_value(&mut map)?;
1894 }
1895 "GroupId" => {
1896 group_id = ::serde::de::MapAccess::next_value(&mut map)?;
1897 }
1898 "Version" => {
1899 version = ::serde::de::MapAccess::next_value(&mut map)?;
1900 }
1901 _ => {}
1902 }
1903 }
1904
1905 Ok(MavenReference {
1906 artifact_id: artifact_id.ok_or(::serde::de::Error::missing_field("ArtifactId"))?,
1907 group_id: group_id.ok_or(::serde::de::Error::missing_field("GroupId"))?,
1908 version: version.ok_or(::serde::de::Error::missing_field("Version"))?,
1909 })
1910 }
1911 }
1912
1913 d.deserialize_map(Visitor)
1914 }
1915 }
1916
1917 #[derive(Debug, Default)]
1919 pub struct MonitoringConfiguration {
1920 pub configuration_type: ::Value<String>,
1925 pub log_level: Option<::Value<String>>,
1930 pub metrics_level: Option<::Value<String>>,
1935 }
1936
1937 impl ::codec::SerializeValue for MonitoringConfiguration {
1938 fn serialize<S: ::serde::Serializer>(&self, s: S) -> Result<S::Ok, S::Error> {
1939 let mut map = ::serde::Serializer::serialize_map(s, None)?;
1940 ::serde::ser::SerializeMap::serialize_entry(&mut map, "ConfigurationType", &self.configuration_type)?;
1941 if let Some(ref log_level) = self.log_level {
1942 ::serde::ser::SerializeMap::serialize_entry(&mut map, "LogLevel", log_level)?;
1943 }
1944 if let Some(ref metrics_level) = self.metrics_level {
1945 ::serde::ser::SerializeMap::serialize_entry(&mut map, "MetricsLevel", metrics_level)?;
1946 }
1947 ::serde::ser::SerializeMap::end(map)
1948 }
1949 }
1950
1951 impl ::codec::DeserializeValue for MonitoringConfiguration {
1952 fn deserialize<'de, D: ::serde::Deserializer<'de>>(d: D) -> Result<MonitoringConfiguration, D::Error> {
1953 struct Visitor;
1954
1955 impl<'de> ::serde::de::Visitor<'de> for Visitor {
1956 type Value = MonitoringConfiguration;
1957
1958 fn expecting(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
1959 write!(f, "a struct of type MonitoringConfiguration")
1960 }
1961
1962 fn visit_map<A: ::serde::de::MapAccess<'de>>(self, mut map: A) -> Result<Self::Value, A::Error> {
1963 let mut configuration_type: Option<::Value<String>> = None;
1964 let mut log_level: Option<::Value<String>> = None;
1965 let mut metrics_level: Option<::Value<String>> = None;
1966
1967 while let Some(__cfn_key) = ::serde::de::MapAccess::next_key::<String>(&mut map)? {
1968 match __cfn_key.as_ref() {
1969 "ConfigurationType" => {
1970 configuration_type = ::serde::de::MapAccess::next_value(&mut map)?;
1971 }
1972 "LogLevel" => {
1973 log_level = ::serde::de::MapAccess::next_value(&mut map)?;
1974 }
1975 "MetricsLevel" => {
1976 metrics_level = ::serde::de::MapAccess::next_value(&mut map)?;
1977 }
1978 _ => {}
1979 }
1980 }
1981
1982 Ok(MonitoringConfiguration {
1983 configuration_type: configuration_type.ok_or(::serde::de::Error::missing_field("ConfigurationType"))?,
1984 log_level: log_level,
1985 metrics_level: metrics_level,
1986 })
1987 }
1988 }
1989
1990 d.deserialize_map(Visitor)
1991 }
1992 }
1993
1994 #[derive(Debug, Default)]
1996 pub struct ParallelismConfiguration {
1997 pub auto_scaling_enabled: Option<::Value<bool>>,
2002 pub configuration_type: ::Value<String>,
2007 pub parallelism: Option<::Value<u32>>,
2012 pub parallelism_per_kpu: Option<::Value<u32>>,
2017 }
2018
2019 impl ::codec::SerializeValue for ParallelismConfiguration {
2020 fn serialize<S: ::serde::Serializer>(&self, s: S) -> Result<S::Ok, S::Error> {
2021 let mut map = ::serde::Serializer::serialize_map(s, None)?;
2022 if let Some(ref auto_scaling_enabled) = self.auto_scaling_enabled {
2023 ::serde::ser::SerializeMap::serialize_entry(&mut map, "AutoScalingEnabled", auto_scaling_enabled)?;
2024 }
2025 ::serde::ser::SerializeMap::serialize_entry(&mut map, "ConfigurationType", &self.configuration_type)?;
2026 if let Some(ref parallelism) = self.parallelism {
2027 ::serde::ser::SerializeMap::serialize_entry(&mut map, "Parallelism", parallelism)?;
2028 }
2029 if let Some(ref parallelism_per_kpu) = self.parallelism_per_kpu {
2030 ::serde::ser::SerializeMap::serialize_entry(&mut map, "ParallelismPerKPU", parallelism_per_kpu)?;
2031 }
2032 ::serde::ser::SerializeMap::end(map)
2033 }
2034 }
2035
2036 impl ::codec::DeserializeValue for ParallelismConfiguration {
2037 fn deserialize<'de, D: ::serde::Deserializer<'de>>(d: D) -> Result<ParallelismConfiguration, D::Error> {
2038 struct Visitor;
2039
2040 impl<'de> ::serde::de::Visitor<'de> for Visitor {
2041 type Value = ParallelismConfiguration;
2042
2043 fn expecting(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
2044 write!(f, "a struct of type ParallelismConfiguration")
2045 }
2046
2047 fn visit_map<A: ::serde::de::MapAccess<'de>>(self, mut map: A) -> Result<Self::Value, A::Error> {
2048 let mut auto_scaling_enabled: Option<::Value<bool>> = None;
2049 let mut configuration_type: Option<::Value<String>> = None;
2050 let mut parallelism: Option<::Value<u32>> = None;
2051 let mut parallelism_per_kpu: Option<::Value<u32>> = None;
2052
2053 while let Some(__cfn_key) = ::serde::de::MapAccess::next_key::<String>(&mut map)? {
2054 match __cfn_key.as_ref() {
2055 "AutoScalingEnabled" => {
2056 auto_scaling_enabled = ::serde::de::MapAccess::next_value(&mut map)?;
2057 }
2058 "ConfigurationType" => {
2059 configuration_type = ::serde::de::MapAccess::next_value(&mut map)?;
2060 }
2061 "Parallelism" => {
2062 parallelism = ::serde::de::MapAccess::next_value(&mut map)?;
2063 }
2064 "ParallelismPerKPU" => {
2065 parallelism_per_kpu = ::serde::de::MapAccess::next_value(&mut map)?;
2066 }
2067 _ => {}
2068 }
2069 }
2070
2071 Ok(ParallelismConfiguration {
2072 auto_scaling_enabled: auto_scaling_enabled,
2073 configuration_type: configuration_type.ok_or(::serde::de::Error::missing_field("ConfigurationType"))?,
2074 parallelism: parallelism,
2075 parallelism_per_kpu: parallelism_per_kpu,
2076 })
2077 }
2078 }
2079
2080 d.deserialize_map(Visitor)
2081 }
2082 }
2083
2084 #[derive(Debug, Default)]
2086 pub struct PropertyGroup {
2087 pub property_group_id: Option<::Value<String>>,
2092 pub property_map: Option<::Value<::json::Value>>,
2097 }
2098
2099 impl ::codec::SerializeValue for PropertyGroup {
2100 fn serialize<S: ::serde::Serializer>(&self, s: S) -> Result<S::Ok, S::Error> {
2101 let mut map = ::serde::Serializer::serialize_map(s, None)?;
2102 if let Some(ref property_group_id) = self.property_group_id {
2103 ::serde::ser::SerializeMap::serialize_entry(&mut map, "PropertyGroupId", property_group_id)?;
2104 }
2105 if let Some(ref property_map) = self.property_map {
2106 ::serde::ser::SerializeMap::serialize_entry(&mut map, "PropertyMap", property_map)?;
2107 }
2108 ::serde::ser::SerializeMap::end(map)
2109 }
2110 }
2111
2112 impl ::codec::DeserializeValue for PropertyGroup {
2113 fn deserialize<'de, D: ::serde::Deserializer<'de>>(d: D) -> Result<PropertyGroup, D::Error> {
2114 struct Visitor;
2115
2116 impl<'de> ::serde::de::Visitor<'de> for Visitor {
2117 type Value = PropertyGroup;
2118
2119 fn expecting(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
2120 write!(f, "a struct of type PropertyGroup")
2121 }
2122
2123 fn visit_map<A: ::serde::de::MapAccess<'de>>(self, mut map: A) -> Result<Self::Value, A::Error> {
2124 let mut property_group_id: Option<::Value<String>> = None;
2125 let mut property_map: Option<::Value<::json::Value>> = None;
2126
2127 while let Some(__cfn_key) = ::serde::de::MapAccess::next_key::<String>(&mut map)? {
2128 match __cfn_key.as_ref() {
2129 "PropertyGroupId" => {
2130 property_group_id = ::serde::de::MapAccess::next_value(&mut map)?;
2131 }
2132 "PropertyMap" => {
2133 property_map = ::serde::de::MapAccess::next_value(&mut map)?;
2134 }
2135 _ => {}
2136 }
2137 }
2138
2139 Ok(PropertyGroup {
2140 property_group_id: property_group_id,
2141 property_map: property_map,
2142 })
2143 }
2144 }
2145
2146 d.deserialize_map(Visitor)
2147 }
2148 }
2149
2150 #[derive(Debug, Default)]
2152 pub struct RecordColumn {
2153 pub mapping: Option<::Value<String>>,
2158 pub name: ::Value<String>,
2163 pub sql_type: ::Value<String>,
2168 }
2169
2170 impl ::codec::SerializeValue for RecordColumn {
2171 fn serialize<S: ::serde::Serializer>(&self, s: S) -> Result<S::Ok, S::Error> {
2172 let mut map = ::serde::Serializer::serialize_map(s, None)?;
2173 if let Some(ref mapping) = self.mapping {
2174 ::serde::ser::SerializeMap::serialize_entry(&mut map, "Mapping", mapping)?;
2175 }
2176 ::serde::ser::SerializeMap::serialize_entry(&mut map, "Name", &self.name)?;
2177 ::serde::ser::SerializeMap::serialize_entry(&mut map, "SqlType", &self.sql_type)?;
2178 ::serde::ser::SerializeMap::end(map)
2179 }
2180 }
2181
2182 impl ::codec::DeserializeValue for RecordColumn {
2183 fn deserialize<'de, D: ::serde::Deserializer<'de>>(d: D) -> Result<RecordColumn, D::Error> {
2184 struct Visitor;
2185
2186 impl<'de> ::serde::de::Visitor<'de> for Visitor {
2187 type Value = RecordColumn;
2188
2189 fn expecting(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
2190 write!(f, "a struct of type RecordColumn")
2191 }
2192
2193 fn visit_map<A: ::serde::de::MapAccess<'de>>(self, mut map: A) -> Result<Self::Value, A::Error> {
2194 let mut mapping: Option<::Value<String>> = None;
2195 let mut name: Option<::Value<String>> = None;
2196 let mut sql_type: Option<::Value<String>> = None;
2197
2198 while let Some(__cfn_key) = ::serde::de::MapAccess::next_key::<String>(&mut map)? {
2199 match __cfn_key.as_ref() {
2200 "Mapping" => {
2201 mapping = ::serde::de::MapAccess::next_value(&mut map)?;
2202 }
2203 "Name" => {
2204 name = ::serde::de::MapAccess::next_value(&mut map)?;
2205 }
2206 "SqlType" => {
2207 sql_type = ::serde::de::MapAccess::next_value(&mut map)?;
2208 }
2209 _ => {}
2210 }
2211 }
2212
2213 Ok(RecordColumn {
2214 mapping: mapping,
2215 name: name.ok_or(::serde::de::Error::missing_field("Name"))?,
2216 sql_type: sql_type.ok_or(::serde::de::Error::missing_field("SqlType"))?,
2217 })
2218 }
2219 }
2220
2221 d.deserialize_map(Visitor)
2222 }
2223 }
2224
2225 #[derive(Debug, Default)]
2227 pub struct RecordFormat {
2228 pub mapping_parameters: Option<::Value<MappingParameters>>,
2233 pub record_format_type: ::Value<String>,
2238 }
2239
2240 impl ::codec::SerializeValue for RecordFormat {
2241 fn serialize<S: ::serde::Serializer>(&self, s: S) -> Result<S::Ok, S::Error> {
2242 let mut map = ::serde::Serializer::serialize_map(s, None)?;
2243 if let Some(ref mapping_parameters) = self.mapping_parameters {
2244 ::serde::ser::SerializeMap::serialize_entry(&mut map, "MappingParameters", mapping_parameters)?;
2245 }
2246 ::serde::ser::SerializeMap::serialize_entry(&mut map, "RecordFormatType", &self.record_format_type)?;
2247 ::serde::ser::SerializeMap::end(map)
2248 }
2249 }
2250
2251 impl ::codec::DeserializeValue for RecordFormat {
2252 fn deserialize<'de, D: ::serde::Deserializer<'de>>(d: D) -> Result<RecordFormat, D::Error> {
2253 struct Visitor;
2254
2255 impl<'de> ::serde::de::Visitor<'de> for Visitor {
2256 type Value = RecordFormat;
2257
2258 fn expecting(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
2259 write!(f, "a struct of type RecordFormat")
2260 }
2261
2262 fn visit_map<A: ::serde::de::MapAccess<'de>>(self, mut map: A) -> Result<Self::Value, A::Error> {
2263 let mut mapping_parameters: Option<::Value<MappingParameters>> = None;
2264 let mut record_format_type: Option<::Value<String>> = None;
2265
2266 while let Some(__cfn_key) = ::serde::de::MapAccess::next_key::<String>(&mut map)? {
2267 match __cfn_key.as_ref() {
2268 "MappingParameters" => {
2269 mapping_parameters = ::serde::de::MapAccess::next_value(&mut map)?;
2270 }
2271 "RecordFormatType" => {
2272 record_format_type = ::serde::de::MapAccess::next_value(&mut map)?;
2273 }
2274 _ => {}
2275 }
2276 }
2277
2278 Ok(RecordFormat {
2279 mapping_parameters: mapping_parameters,
2280 record_format_type: record_format_type.ok_or(::serde::de::Error::missing_field("RecordFormatType"))?,
2281 })
2282 }
2283 }
2284
2285 d.deserialize_map(Visitor)
2286 }
2287 }
2288
2289 #[derive(Debug, Default)]
2291 pub struct S3ContentBaseLocation {
2292 pub base_path: ::Value<String>,
2297 pub bucket_arn: ::Value<String>,
2302 }
2303
2304 impl ::codec::SerializeValue for S3ContentBaseLocation {
2305 fn serialize<S: ::serde::Serializer>(&self, s: S) -> Result<S::Ok, S::Error> {
2306 let mut map = ::serde::Serializer::serialize_map(s, None)?;
2307 ::serde::ser::SerializeMap::serialize_entry(&mut map, "BasePath", &self.base_path)?;
2308 ::serde::ser::SerializeMap::serialize_entry(&mut map, "BucketARN", &self.bucket_arn)?;
2309 ::serde::ser::SerializeMap::end(map)
2310 }
2311 }
2312
2313 impl ::codec::DeserializeValue for S3ContentBaseLocation {
2314 fn deserialize<'de, D: ::serde::Deserializer<'de>>(d: D) -> Result<S3ContentBaseLocation, D::Error> {
2315 struct Visitor;
2316
2317 impl<'de> ::serde::de::Visitor<'de> for Visitor {
2318 type Value = S3ContentBaseLocation;
2319
2320 fn expecting(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
2321 write!(f, "a struct of type S3ContentBaseLocation")
2322 }
2323
2324 fn visit_map<A: ::serde::de::MapAccess<'de>>(self, mut map: A) -> Result<Self::Value, A::Error> {
2325 let mut base_path: Option<::Value<String>> = None;
2326 let mut bucket_arn: Option<::Value<String>> = None;
2327
2328 while let Some(__cfn_key) = ::serde::de::MapAccess::next_key::<String>(&mut map)? {
2329 match __cfn_key.as_ref() {
2330 "BasePath" => {
2331 base_path = ::serde::de::MapAccess::next_value(&mut map)?;
2332 }
2333 "BucketARN" => {
2334 bucket_arn = ::serde::de::MapAccess::next_value(&mut map)?;
2335 }
2336 _ => {}
2337 }
2338 }
2339
2340 Ok(S3ContentBaseLocation {
2341 base_path: base_path.ok_or(::serde::de::Error::missing_field("BasePath"))?,
2342 bucket_arn: bucket_arn.ok_or(::serde::de::Error::missing_field("BucketARN"))?,
2343 })
2344 }
2345 }
2346
2347 d.deserialize_map(Visitor)
2348 }
2349 }
2350
2351 #[derive(Debug, Default)]
2353 pub struct S3ContentLocation {
2354 pub bucket_arn: Option<::Value<String>>,
2359 pub file_key: Option<::Value<String>>,
2364 pub object_version: Option<::Value<String>>,
2369 }
2370
2371 impl ::codec::SerializeValue for S3ContentLocation {
2372 fn serialize<S: ::serde::Serializer>(&self, s: S) -> Result<S::Ok, S::Error> {
2373 let mut map = ::serde::Serializer::serialize_map(s, None)?;
2374 if let Some(ref bucket_arn) = self.bucket_arn {
2375 ::serde::ser::SerializeMap::serialize_entry(&mut map, "BucketARN", bucket_arn)?;
2376 }
2377 if let Some(ref file_key) = self.file_key {
2378 ::serde::ser::SerializeMap::serialize_entry(&mut map, "FileKey", file_key)?;
2379 }
2380 if let Some(ref object_version) = self.object_version {
2381 ::serde::ser::SerializeMap::serialize_entry(&mut map, "ObjectVersion", object_version)?;
2382 }
2383 ::serde::ser::SerializeMap::end(map)
2384 }
2385 }
2386
2387 impl ::codec::DeserializeValue for S3ContentLocation {
2388 fn deserialize<'de, D: ::serde::Deserializer<'de>>(d: D) -> Result<S3ContentLocation, D::Error> {
2389 struct Visitor;
2390
2391 impl<'de> ::serde::de::Visitor<'de> for Visitor {
2392 type Value = S3ContentLocation;
2393
2394 fn expecting(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
2395 write!(f, "a struct of type S3ContentLocation")
2396 }
2397
2398 fn visit_map<A: ::serde::de::MapAccess<'de>>(self, mut map: A) -> Result<Self::Value, A::Error> {
2399 let mut bucket_arn: Option<::Value<String>> = None;
2400 let mut file_key: Option<::Value<String>> = None;
2401 let mut object_version: Option<::Value<String>> = None;
2402
2403 while let Some(__cfn_key) = ::serde::de::MapAccess::next_key::<String>(&mut map)? {
2404 match __cfn_key.as_ref() {
2405 "BucketARN" => {
2406 bucket_arn = ::serde::de::MapAccess::next_value(&mut map)?;
2407 }
2408 "FileKey" => {
2409 file_key = ::serde::de::MapAccess::next_value(&mut map)?;
2410 }
2411 "ObjectVersion" => {
2412 object_version = ::serde::de::MapAccess::next_value(&mut map)?;
2413 }
2414 _ => {}
2415 }
2416 }
2417
2418 Ok(S3ContentLocation {
2419 bucket_arn: bucket_arn,
2420 file_key: file_key,
2421 object_version: object_version,
2422 })
2423 }
2424 }
2425
2426 d.deserialize_map(Visitor)
2427 }
2428 }
2429
2430 #[derive(Debug, Default)]
2432 pub struct SqlApplicationConfiguration {
2433 pub inputs: Option<::ValueList<Input>>,
2438 }
2439
2440 impl ::codec::SerializeValue for SqlApplicationConfiguration {
2441 fn serialize<S: ::serde::Serializer>(&self, s: S) -> Result<S::Ok, S::Error> {
2442 let mut map = ::serde::Serializer::serialize_map(s, None)?;
2443 if let Some(ref inputs) = self.inputs {
2444 ::serde::ser::SerializeMap::serialize_entry(&mut map, "Inputs", inputs)?;
2445 }
2446 ::serde::ser::SerializeMap::end(map)
2447 }
2448 }
2449
2450 impl ::codec::DeserializeValue for SqlApplicationConfiguration {
2451 fn deserialize<'de, D: ::serde::Deserializer<'de>>(d: D) -> Result<SqlApplicationConfiguration, D::Error> {
2452 struct Visitor;
2453
2454 impl<'de> ::serde::de::Visitor<'de> for Visitor {
2455 type Value = SqlApplicationConfiguration;
2456
2457 fn expecting(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
2458 write!(f, "a struct of type SqlApplicationConfiguration")
2459 }
2460
2461 fn visit_map<A: ::serde::de::MapAccess<'de>>(self, mut map: A) -> Result<Self::Value, A::Error> {
2462 let mut inputs: Option<::ValueList<Input>> = None;
2463
2464 while let Some(__cfn_key) = ::serde::de::MapAccess::next_key::<String>(&mut map)? {
2465 match __cfn_key.as_ref() {
2466 "Inputs" => {
2467 inputs = ::serde::de::MapAccess::next_value(&mut map)?;
2468 }
2469 _ => {}
2470 }
2471 }
2472
2473 Ok(SqlApplicationConfiguration {
2474 inputs: inputs,
2475 })
2476 }
2477 }
2478
2479 d.deserialize_map(Visitor)
2480 }
2481 }
2482
2483 #[derive(Debug, Default)]
2485 pub struct ZeppelinApplicationConfiguration {
2486 pub catalog_configuration: Option<::Value<CatalogConfiguration>>,
2491 pub custom_artifacts_configuration: Option<::Value<CustomArtifactsConfiguration>>,
2496 pub deploy_as_application_configuration: Option<::Value<DeployAsApplicationConfiguration>>,
2501 pub monitoring_configuration: Option<::Value<ZeppelinMonitoringConfiguration>>,
2506 }
2507
2508 impl ::codec::SerializeValue for ZeppelinApplicationConfiguration {
2509 fn serialize<S: ::serde::Serializer>(&self, s: S) -> Result<S::Ok, S::Error> {
2510 let mut map = ::serde::Serializer::serialize_map(s, None)?;
2511 if let Some(ref catalog_configuration) = self.catalog_configuration {
2512 ::serde::ser::SerializeMap::serialize_entry(&mut map, "CatalogConfiguration", catalog_configuration)?;
2513 }
2514 if let Some(ref custom_artifacts_configuration) = self.custom_artifacts_configuration {
2515 ::serde::ser::SerializeMap::serialize_entry(&mut map, "CustomArtifactsConfiguration", custom_artifacts_configuration)?;
2516 }
2517 if let Some(ref deploy_as_application_configuration) = self.deploy_as_application_configuration {
2518 ::serde::ser::SerializeMap::serialize_entry(&mut map, "DeployAsApplicationConfiguration", deploy_as_application_configuration)?;
2519 }
2520 if let Some(ref monitoring_configuration) = self.monitoring_configuration {
2521 ::serde::ser::SerializeMap::serialize_entry(&mut map, "MonitoringConfiguration", monitoring_configuration)?;
2522 }
2523 ::serde::ser::SerializeMap::end(map)
2524 }
2525 }
2526
2527 impl ::codec::DeserializeValue for ZeppelinApplicationConfiguration {
2528 fn deserialize<'de, D: ::serde::Deserializer<'de>>(d: D) -> Result<ZeppelinApplicationConfiguration, D::Error> {
2529 struct Visitor;
2530
2531 impl<'de> ::serde::de::Visitor<'de> for Visitor {
2532 type Value = ZeppelinApplicationConfiguration;
2533
2534 fn expecting(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
2535 write!(f, "a struct of type ZeppelinApplicationConfiguration")
2536 }
2537
2538 fn visit_map<A: ::serde::de::MapAccess<'de>>(self, mut map: A) -> Result<Self::Value, A::Error> {
2539 let mut catalog_configuration: Option<::Value<CatalogConfiguration>> = None;
2540 let mut custom_artifacts_configuration: Option<::Value<CustomArtifactsConfiguration>> = None;
2541 let mut deploy_as_application_configuration: Option<::Value<DeployAsApplicationConfiguration>> = None;
2542 let mut monitoring_configuration: Option<::Value<ZeppelinMonitoringConfiguration>> = None;
2543
2544 while let Some(__cfn_key) = ::serde::de::MapAccess::next_key::<String>(&mut map)? {
2545 match __cfn_key.as_ref() {
2546 "CatalogConfiguration" => {
2547 catalog_configuration = ::serde::de::MapAccess::next_value(&mut map)?;
2548 }
2549 "CustomArtifactsConfiguration" => {
2550 custom_artifacts_configuration = ::serde::de::MapAccess::next_value(&mut map)?;
2551 }
2552 "DeployAsApplicationConfiguration" => {
2553 deploy_as_application_configuration = ::serde::de::MapAccess::next_value(&mut map)?;
2554 }
2555 "MonitoringConfiguration" => {
2556 monitoring_configuration = ::serde::de::MapAccess::next_value(&mut map)?;
2557 }
2558 _ => {}
2559 }
2560 }
2561
2562 Ok(ZeppelinApplicationConfiguration {
2563 catalog_configuration: catalog_configuration,
2564 custom_artifacts_configuration: custom_artifacts_configuration,
2565 deploy_as_application_configuration: deploy_as_application_configuration,
2566 monitoring_configuration: monitoring_configuration,
2567 })
2568 }
2569 }
2570
2571 d.deserialize_map(Visitor)
2572 }
2573 }
2574
2575 #[derive(Debug, Default)]
2577 pub struct ZeppelinMonitoringConfiguration {
2578 pub log_level: Option<::Value<String>>,
2583 }
2584
2585 impl ::codec::SerializeValue for ZeppelinMonitoringConfiguration {
2586 fn serialize<S: ::serde::Serializer>(&self, s: S) -> Result<S::Ok, S::Error> {
2587 let mut map = ::serde::Serializer::serialize_map(s, None)?;
2588 if let Some(ref log_level) = self.log_level {
2589 ::serde::ser::SerializeMap::serialize_entry(&mut map, "LogLevel", log_level)?;
2590 }
2591 ::serde::ser::SerializeMap::end(map)
2592 }
2593 }
2594
2595 impl ::codec::DeserializeValue for ZeppelinMonitoringConfiguration {
2596 fn deserialize<'de, D: ::serde::Deserializer<'de>>(d: D) -> Result<ZeppelinMonitoringConfiguration, D::Error> {
2597 struct Visitor;
2598
2599 impl<'de> ::serde::de::Visitor<'de> for Visitor {
2600 type Value = ZeppelinMonitoringConfiguration;
2601
2602 fn expecting(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
2603 write!(f, "a struct of type ZeppelinMonitoringConfiguration")
2604 }
2605
2606 fn visit_map<A: ::serde::de::MapAccess<'de>>(self, mut map: A) -> Result<Self::Value, A::Error> {
2607 let mut log_level: Option<::Value<String>> = None;
2608
2609 while let Some(__cfn_key) = ::serde::de::MapAccess::next_key::<String>(&mut map)? {
2610 match __cfn_key.as_ref() {
2611 "LogLevel" => {
2612 log_level = ::serde::de::MapAccess::next_value(&mut map)?;
2613 }
2614 _ => {}
2615 }
2616 }
2617
2618 Ok(ZeppelinMonitoringConfiguration {
2619 log_level: log_level,
2620 })
2621 }
2622 }
2623
2624 d.deserialize_map(Visitor)
2625 }
2626 }
2627}
2628
2629pub mod application_cloud_watch_logging_option {
2630 #[derive(Debug, Default)]
2634 pub struct CloudWatchLoggingOption {
2635 pub log_stream_arn: ::Value<String>,
2640 }
2641
2642 impl ::codec::SerializeValue for CloudWatchLoggingOption {
2643 fn serialize<S: ::serde::Serializer>(&self, s: S) -> Result<S::Ok, S::Error> {
2644 let mut map = ::serde::Serializer::serialize_map(s, None)?;
2645 ::serde::ser::SerializeMap::serialize_entry(&mut map, "LogStreamARN", &self.log_stream_arn)?;
2646 ::serde::ser::SerializeMap::end(map)
2647 }
2648 }
2649
2650 impl ::codec::DeserializeValue for CloudWatchLoggingOption {
2651 fn deserialize<'de, D: ::serde::Deserializer<'de>>(d: D) -> Result<CloudWatchLoggingOption, D::Error> {
2652 struct Visitor;
2653
2654 impl<'de> ::serde::de::Visitor<'de> for Visitor {
2655 type Value = CloudWatchLoggingOption;
2656
2657 fn expecting(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
2658 write!(f, "a struct of type CloudWatchLoggingOption")
2659 }
2660
2661 fn visit_map<A: ::serde::de::MapAccess<'de>>(self, mut map: A) -> Result<Self::Value, A::Error> {
2662 let mut log_stream_arn: Option<::Value<String>> = None;
2663
2664 while let Some(__cfn_key) = ::serde::de::MapAccess::next_key::<String>(&mut map)? {
2665 match __cfn_key.as_ref() {
2666 "LogStreamARN" => {
2667 log_stream_arn = ::serde::de::MapAccess::next_value(&mut map)?;
2668 }
2669 _ => {}
2670 }
2671 }
2672
2673 Ok(CloudWatchLoggingOption {
2674 log_stream_arn: log_stream_arn.ok_or(::serde::de::Error::missing_field("LogStreamARN"))?,
2675 })
2676 }
2677 }
2678
2679 d.deserialize_map(Visitor)
2680 }
2681 }
2682}
2683
2684pub mod application_output {
2685 #[derive(Debug, Default)]
2689 pub struct DestinationSchema {
2690 pub record_format_type: Option<::Value<String>>,
2695 }
2696
2697 impl ::codec::SerializeValue for DestinationSchema {
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 record_format_type) = self.record_format_type {
2701 ::serde::ser::SerializeMap::serialize_entry(&mut map, "RecordFormatType", record_format_type)?;
2702 }
2703 ::serde::ser::SerializeMap::end(map)
2704 }
2705 }
2706
2707 impl ::codec::DeserializeValue for DestinationSchema {
2708 fn deserialize<'de, D: ::serde::Deserializer<'de>>(d: D) -> Result<DestinationSchema, D::Error> {
2709 struct Visitor;
2710
2711 impl<'de> ::serde::de::Visitor<'de> for Visitor {
2712 type Value = DestinationSchema;
2713
2714 fn expecting(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
2715 write!(f, "a struct of type DestinationSchema")
2716 }
2717
2718 fn visit_map<A: ::serde::de::MapAccess<'de>>(self, mut map: A) -> Result<Self::Value, A::Error> {
2719 let mut record_format_type: Option<::Value<String>> = None;
2720
2721 while let Some(__cfn_key) = ::serde::de::MapAccess::next_key::<String>(&mut map)? {
2722 match __cfn_key.as_ref() {
2723 "RecordFormatType" => {
2724 record_format_type = ::serde::de::MapAccess::next_value(&mut map)?;
2725 }
2726 _ => {}
2727 }
2728 }
2729
2730 Ok(DestinationSchema {
2731 record_format_type: record_format_type,
2732 })
2733 }
2734 }
2735
2736 d.deserialize_map(Visitor)
2737 }
2738 }
2739
2740 #[derive(Debug, Default)]
2742 pub struct KinesisFirehoseOutput {
2743 pub resource_arn: ::Value<String>,
2748 }
2749
2750 impl ::codec::SerializeValue for KinesisFirehoseOutput {
2751 fn serialize<S: ::serde::Serializer>(&self, s: S) -> Result<S::Ok, S::Error> {
2752 let mut map = ::serde::Serializer::serialize_map(s, None)?;
2753 ::serde::ser::SerializeMap::serialize_entry(&mut map, "ResourceARN", &self.resource_arn)?;
2754 ::serde::ser::SerializeMap::end(map)
2755 }
2756 }
2757
2758 impl ::codec::DeserializeValue for KinesisFirehoseOutput {
2759 fn deserialize<'de, D: ::serde::Deserializer<'de>>(d: D) -> Result<KinesisFirehoseOutput, D::Error> {
2760 struct Visitor;
2761
2762 impl<'de> ::serde::de::Visitor<'de> for Visitor {
2763 type Value = KinesisFirehoseOutput;
2764
2765 fn expecting(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
2766 write!(f, "a struct of type KinesisFirehoseOutput")
2767 }
2768
2769 fn visit_map<A: ::serde::de::MapAccess<'de>>(self, mut map: A) -> Result<Self::Value, A::Error> {
2770 let mut resource_arn: Option<::Value<String>> = None;
2771
2772 while let Some(__cfn_key) = ::serde::de::MapAccess::next_key::<String>(&mut map)? {
2773 match __cfn_key.as_ref() {
2774 "ResourceARN" => {
2775 resource_arn = ::serde::de::MapAccess::next_value(&mut map)?;
2776 }
2777 _ => {}
2778 }
2779 }
2780
2781 Ok(KinesisFirehoseOutput {
2782 resource_arn: resource_arn.ok_or(::serde::de::Error::missing_field("ResourceARN"))?,
2783 })
2784 }
2785 }
2786
2787 d.deserialize_map(Visitor)
2788 }
2789 }
2790
2791 #[derive(Debug, Default)]
2793 pub struct KinesisStreamsOutput {
2794 pub resource_arn: ::Value<String>,
2799 }
2800
2801 impl ::codec::SerializeValue for KinesisStreamsOutput {
2802 fn serialize<S: ::serde::Serializer>(&self, s: S) -> Result<S::Ok, S::Error> {
2803 let mut map = ::serde::Serializer::serialize_map(s, None)?;
2804 ::serde::ser::SerializeMap::serialize_entry(&mut map, "ResourceARN", &self.resource_arn)?;
2805 ::serde::ser::SerializeMap::end(map)
2806 }
2807 }
2808
2809 impl ::codec::DeserializeValue for KinesisStreamsOutput {
2810 fn deserialize<'de, D: ::serde::Deserializer<'de>>(d: D) -> Result<KinesisStreamsOutput, D::Error> {
2811 struct Visitor;
2812
2813 impl<'de> ::serde::de::Visitor<'de> for Visitor {
2814 type Value = KinesisStreamsOutput;
2815
2816 fn expecting(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
2817 write!(f, "a struct of type KinesisStreamsOutput")
2818 }
2819
2820 fn visit_map<A: ::serde::de::MapAccess<'de>>(self, mut map: A) -> Result<Self::Value, A::Error> {
2821 let mut resource_arn: Option<::Value<String>> = None;
2822
2823 while let Some(__cfn_key) = ::serde::de::MapAccess::next_key::<String>(&mut map)? {
2824 match __cfn_key.as_ref() {
2825 "ResourceARN" => {
2826 resource_arn = ::serde::de::MapAccess::next_value(&mut map)?;
2827 }
2828 _ => {}
2829 }
2830 }
2831
2832 Ok(KinesisStreamsOutput {
2833 resource_arn: resource_arn.ok_or(::serde::de::Error::missing_field("ResourceARN"))?,
2834 })
2835 }
2836 }
2837
2838 d.deserialize_map(Visitor)
2839 }
2840 }
2841
2842 #[derive(Debug, Default)]
2844 pub struct LambdaOutput {
2845 pub resource_arn: ::Value<String>,
2850 }
2851
2852 impl ::codec::SerializeValue for LambdaOutput {
2853 fn serialize<S: ::serde::Serializer>(&self, s: S) -> Result<S::Ok, S::Error> {
2854 let mut map = ::serde::Serializer::serialize_map(s, None)?;
2855 ::serde::ser::SerializeMap::serialize_entry(&mut map, "ResourceARN", &self.resource_arn)?;
2856 ::serde::ser::SerializeMap::end(map)
2857 }
2858 }
2859
2860 impl ::codec::DeserializeValue for LambdaOutput {
2861 fn deserialize<'de, D: ::serde::Deserializer<'de>>(d: D) -> Result<LambdaOutput, D::Error> {
2862 struct Visitor;
2863
2864 impl<'de> ::serde::de::Visitor<'de> for Visitor {
2865 type Value = LambdaOutput;
2866
2867 fn expecting(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
2868 write!(f, "a struct of type LambdaOutput")
2869 }
2870
2871 fn visit_map<A: ::serde::de::MapAccess<'de>>(self, mut map: A) -> Result<Self::Value, A::Error> {
2872 let mut resource_arn: Option<::Value<String>> = None;
2873
2874 while let Some(__cfn_key) = ::serde::de::MapAccess::next_key::<String>(&mut map)? {
2875 match __cfn_key.as_ref() {
2876 "ResourceARN" => {
2877 resource_arn = ::serde::de::MapAccess::next_value(&mut map)?;
2878 }
2879 _ => {}
2880 }
2881 }
2882
2883 Ok(LambdaOutput {
2884 resource_arn: resource_arn.ok_or(::serde::de::Error::missing_field("ResourceARN"))?,
2885 })
2886 }
2887 }
2888
2889 d.deserialize_map(Visitor)
2890 }
2891 }
2892
2893 #[derive(Debug, Default)]
2895 pub struct Output {
2896 pub destination_schema: ::Value<DestinationSchema>,
2901 pub kinesis_firehose_output: Option<::Value<KinesisFirehoseOutput>>,
2906 pub kinesis_streams_output: Option<::Value<KinesisStreamsOutput>>,
2911 pub lambda_output: Option<::Value<LambdaOutput>>,
2916 pub name: Option<::Value<String>>,
2921 }
2922
2923 impl ::codec::SerializeValue for Output {
2924 fn serialize<S: ::serde::Serializer>(&self, s: S) -> Result<S::Ok, S::Error> {
2925 let mut map = ::serde::Serializer::serialize_map(s, None)?;
2926 ::serde::ser::SerializeMap::serialize_entry(&mut map, "DestinationSchema", &self.destination_schema)?;
2927 if let Some(ref kinesis_firehose_output) = self.kinesis_firehose_output {
2928 ::serde::ser::SerializeMap::serialize_entry(&mut map, "KinesisFirehoseOutput", kinesis_firehose_output)?;
2929 }
2930 if let Some(ref kinesis_streams_output) = self.kinesis_streams_output {
2931 ::serde::ser::SerializeMap::serialize_entry(&mut map, "KinesisStreamsOutput", kinesis_streams_output)?;
2932 }
2933 if let Some(ref lambda_output) = self.lambda_output {
2934 ::serde::ser::SerializeMap::serialize_entry(&mut map, "LambdaOutput", lambda_output)?;
2935 }
2936 if let Some(ref name) = self.name {
2937 ::serde::ser::SerializeMap::serialize_entry(&mut map, "Name", name)?;
2938 }
2939 ::serde::ser::SerializeMap::end(map)
2940 }
2941 }
2942
2943 impl ::codec::DeserializeValue for Output {
2944 fn deserialize<'de, D: ::serde::Deserializer<'de>>(d: D) -> Result<Output, D::Error> {
2945 struct Visitor;
2946
2947 impl<'de> ::serde::de::Visitor<'de> for Visitor {
2948 type Value = Output;
2949
2950 fn expecting(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
2951 write!(f, "a struct of type Output")
2952 }
2953
2954 fn visit_map<A: ::serde::de::MapAccess<'de>>(self, mut map: A) -> Result<Self::Value, A::Error> {
2955 let mut destination_schema: Option<::Value<DestinationSchema>> = None;
2956 let mut kinesis_firehose_output: Option<::Value<KinesisFirehoseOutput>> = None;
2957 let mut kinesis_streams_output: Option<::Value<KinesisStreamsOutput>> = None;
2958 let mut lambda_output: Option<::Value<LambdaOutput>> = None;
2959 let mut name: Option<::Value<String>> = None;
2960
2961 while let Some(__cfn_key) = ::serde::de::MapAccess::next_key::<String>(&mut map)? {
2962 match __cfn_key.as_ref() {
2963 "DestinationSchema" => {
2964 destination_schema = ::serde::de::MapAccess::next_value(&mut map)?;
2965 }
2966 "KinesisFirehoseOutput" => {
2967 kinesis_firehose_output = ::serde::de::MapAccess::next_value(&mut map)?;
2968 }
2969 "KinesisStreamsOutput" => {
2970 kinesis_streams_output = ::serde::de::MapAccess::next_value(&mut map)?;
2971 }
2972 "LambdaOutput" => {
2973 lambda_output = ::serde::de::MapAccess::next_value(&mut map)?;
2974 }
2975 "Name" => {
2976 name = ::serde::de::MapAccess::next_value(&mut map)?;
2977 }
2978 _ => {}
2979 }
2980 }
2981
2982 Ok(Output {
2983 destination_schema: destination_schema.ok_or(::serde::de::Error::missing_field("DestinationSchema"))?,
2984 kinesis_firehose_output: kinesis_firehose_output,
2985 kinesis_streams_output: kinesis_streams_output,
2986 lambda_output: lambda_output,
2987 name: name,
2988 })
2989 }
2990 }
2991
2992 d.deserialize_map(Visitor)
2993 }
2994 }
2995}
2996
2997pub mod application_reference_data_source {
2998 #[derive(Debug, Default)]
3002 pub struct CSVMappingParameters {
3003 pub record_column_delimiter: ::Value<String>,
3008 pub record_row_delimiter: ::Value<String>,
3013 }
3014
3015 impl ::codec::SerializeValue for CSVMappingParameters {
3016 fn serialize<S: ::serde::Serializer>(&self, s: S) -> Result<S::Ok, S::Error> {
3017 let mut map = ::serde::Serializer::serialize_map(s, None)?;
3018 ::serde::ser::SerializeMap::serialize_entry(&mut map, "RecordColumnDelimiter", &self.record_column_delimiter)?;
3019 ::serde::ser::SerializeMap::serialize_entry(&mut map, "RecordRowDelimiter", &self.record_row_delimiter)?;
3020 ::serde::ser::SerializeMap::end(map)
3021 }
3022 }
3023
3024 impl ::codec::DeserializeValue for CSVMappingParameters {
3025 fn deserialize<'de, D: ::serde::Deserializer<'de>>(d: D) -> Result<CSVMappingParameters, D::Error> {
3026 struct Visitor;
3027
3028 impl<'de> ::serde::de::Visitor<'de> for Visitor {
3029 type Value = CSVMappingParameters;
3030
3031 fn expecting(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
3032 write!(f, "a struct of type CSVMappingParameters")
3033 }
3034
3035 fn visit_map<A: ::serde::de::MapAccess<'de>>(self, mut map: A) -> Result<Self::Value, A::Error> {
3036 let mut record_column_delimiter: Option<::Value<String>> = None;
3037 let mut record_row_delimiter: Option<::Value<String>> = None;
3038
3039 while let Some(__cfn_key) = ::serde::de::MapAccess::next_key::<String>(&mut map)? {
3040 match __cfn_key.as_ref() {
3041 "RecordColumnDelimiter" => {
3042 record_column_delimiter = ::serde::de::MapAccess::next_value(&mut map)?;
3043 }
3044 "RecordRowDelimiter" => {
3045 record_row_delimiter = ::serde::de::MapAccess::next_value(&mut map)?;
3046 }
3047 _ => {}
3048 }
3049 }
3050
3051 Ok(CSVMappingParameters {
3052 record_column_delimiter: record_column_delimiter.ok_or(::serde::de::Error::missing_field("RecordColumnDelimiter"))?,
3053 record_row_delimiter: record_row_delimiter.ok_or(::serde::de::Error::missing_field("RecordRowDelimiter"))?,
3054 })
3055 }
3056 }
3057
3058 d.deserialize_map(Visitor)
3059 }
3060 }
3061
3062 #[derive(Debug, Default)]
3064 pub struct JSONMappingParameters {
3065 pub record_row_path: ::Value<String>,
3070 }
3071
3072 impl ::codec::SerializeValue for JSONMappingParameters {
3073 fn serialize<S: ::serde::Serializer>(&self, s: S) -> Result<S::Ok, S::Error> {
3074 let mut map = ::serde::Serializer::serialize_map(s, None)?;
3075 ::serde::ser::SerializeMap::serialize_entry(&mut map, "RecordRowPath", &self.record_row_path)?;
3076 ::serde::ser::SerializeMap::end(map)
3077 }
3078 }
3079
3080 impl ::codec::DeserializeValue for JSONMappingParameters {
3081 fn deserialize<'de, D: ::serde::Deserializer<'de>>(d: D) -> Result<JSONMappingParameters, D::Error> {
3082 struct Visitor;
3083
3084 impl<'de> ::serde::de::Visitor<'de> for Visitor {
3085 type Value = JSONMappingParameters;
3086
3087 fn expecting(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
3088 write!(f, "a struct of type JSONMappingParameters")
3089 }
3090
3091 fn visit_map<A: ::serde::de::MapAccess<'de>>(self, mut map: A) -> Result<Self::Value, A::Error> {
3092 let mut record_row_path: Option<::Value<String>> = None;
3093
3094 while let Some(__cfn_key) = ::serde::de::MapAccess::next_key::<String>(&mut map)? {
3095 match __cfn_key.as_ref() {
3096 "RecordRowPath" => {
3097 record_row_path = ::serde::de::MapAccess::next_value(&mut map)?;
3098 }
3099 _ => {}
3100 }
3101 }
3102
3103 Ok(JSONMappingParameters {
3104 record_row_path: record_row_path.ok_or(::serde::de::Error::missing_field("RecordRowPath"))?,
3105 })
3106 }
3107 }
3108
3109 d.deserialize_map(Visitor)
3110 }
3111 }
3112
3113 #[derive(Debug, Default)]
3115 pub struct MappingParameters {
3116 pub csv_mapping_parameters: Option<::Value<CSVMappingParameters>>,
3121 pub json_mapping_parameters: Option<::Value<JSONMappingParameters>>,
3126 }
3127
3128 impl ::codec::SerializeValue for MappingParameters {
3129 fn serialize<S: ::serde::Serializer>(&self, s: S) -> Result<S::Ok, S::Error> {
3130 let mut map = ::serde::Serializer::serialize_map(s, None)?;
3131 if let Some(ref csv_mapping_parameters) = self.csv_mapping_parameters {
3132 ::serde::ser::SerializeMap::serialize_entry(&mut map, "CSVMappingParameters", csv_mapping_parameters)?;
3133 }
3134 if let Some(ref json_mapping_parameters) = self.json_mapping_parameters {
3135 ::serde::ser::SerializeMap::serialize_entry(&mut map, "JSONMappingParameters", json_mapping_parameters)?;
3136 }
3137 ::serde::ser::SerializeMap::end(map)
3138 }
3139 }
3140
3141 impl ::codec::DeserializeValue for MappingParameters {
3142 fn deserialize<'de, D: ::serde::Deserializer<'de>>(d: D) -> Result<MappingParameters, D::Error> {
3143 struct Visitor;
3144
3145 impl<'de> ::serde::de::Visitor<'de> for Visitor {
3146 type Value = MappingParameters;
3147
3148 fn expecting(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
3149 write!(f, "a struct of type MappingParameters")
3150 }
3151
3152 fn visit_map<A: ::serde::de::MapAccess<'de>>(self, mut map: A) -> Result<Self::Value, A::Error> {
3153 let mut csv_mapping_parameters: Option<::Value<CSVMappingParameters>> = None;
3154 let mut json_mapping_parameters: Option<::Value<JSONMappingParameters>> = None;
3155
3156 while let Some(__cfn_key) = ::serde::de::MapAccess::next_key::<String>(&mut map)? {
3157 match __cfn_key.as_ref() {
3158 "CSVMappingParameters" => {
3159 csv_mapping_parameters = ::serde::de::MapAccess::next_value(&mut map)?;
3160 }
3161 "JSONMappingParameters" => {
3162 json_mapping_parameters = ::serde::de::MapAccess::next_value(&mut map)?;
3163 }
3164 _ => {}
3165 }
3166 }
3167
3168 Ok(MappingParameters {
3169 csv_mapping_parameters: csv_mapping_parameters,
3170 json_mapping_parameters: json_mapping_parameters,
3171 })
3172 }
3173 }
3174
3175 d.deserialize_map(Visitor)
3176 }
3177 }
3178
3179 #[derive(Debug, Default)]
3181 pub struct RecordColumn {
3182 pub mapping: Option<::Value<String>>,
3187 pub name: ::Value<String>,
3192 pub sql_type: ::Value<String>,
3197 }
3198
3199 impl ::codec::SerializeValue for RecordColumn {
3200 fn serialize<S: ::serde::Serializer>(&self, s: S) -> Result<S::Ok, S::Error> {
3201 let mut map = ::serde::Serializer::serialize_map(s, None)?;
3202 if let Some(ref mapping) = self.mapping {
3203 ::serde::ser::SerializeMap::serialize_entry(&mut map, "Mapping", mapping)?;
3204 }
3205 ::serde::ser::SerializeMap::serialize_entry(&mut map, "Name", &self.name)?;
3206 ::serde::ser::SerializeMap::serialize_entry(&mut map, "SqlType", &self.sql_type)?;
3207 ::serde::ser::SerializeMap::end(map)
3208 }
3209 }
3210
3211 impl ::codec::DeserializeValue for RecordColumn {
3212 fn deserialize<'de, D: ::serde::Deserializer<'de>>(d: D) -> Result<RecordColumn, D::Error> {
3213 struct Visitor;
3214
3215 impl<'de> ::serde::de::Visitor<'de> for Visitor {
3216 type Value = RecordColumn;
3217
3218 fn expecting(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
3219 write!(f, "a struct of type RecordColumn")
3220 }
3221
3222 fn visit_map<A: ::serde::de::MapAccess<'de>>(self, mut map: A) -> Result<Self::Value, A::Error> {
3223 let mut mapping: Option<::Value<String>> = None;
3224 let mut name: Option<::Value<String>> = None;
3225 let mut sql_type: Option<::Value<String>> = None;
3226
3227 while let Some(__cfn_key) = ::serde::de::MapAccess::next_key::<String>(&mut map)? {
3228 match __cfn_key.as_ref() {
3229 "Mapping" => {
3230 mapping = ::serde::de::MapAccess::next_value(&mut map)?;
3231 }
3232 "Name" => {
3233 name = ::serde::de::MapAccess::next_value(&mut map)?;
3234 }
3235 "SqlType" => {
3236 sql_type = ::serde::de::MapAccess::next_value(&mut map)?;
3237 }
3238 _ => {}
3239 }
3240 }
3241
3242 Ok(RecordColumn {
3243 mapping: mapping,
3244 name: name.ok_or(::serde::de::Error::missing_field("Name"))?,
3245 sql_type: sql_type.ok_or(::serde::de::Error::missing_field("SqlType"))?,
3246 })
3247 }
3248 }
3249
3250 d.deserialize_map(Visitor)
3251 }
3252 }
3253
3254 #[derive(Debug, Default)]
3256 pub struct RecordFormat {
3257 pub mapping_parameters: Option<::Value<MappingParameters>>,
3262 pub record_format_type: ::Value<String>,
3267 }
3268
3269 impl ::codec::SerializeValue for RecordFormat {
3270 fn serialize<S: ::serde::Serializer>(&self, s: S) -> Result<S::Ok, S::Error> {
3271 let mut map = ::serde::Serializer::serialize_map(s, None)?;
3272 if let Some(ref mapping_parameters) = self.mapping_parameters {
3273 ::serde::ser::SerializeMap::serialize_entry(&mut map, "MappingParameters", mapping_parameters)?;
3274 }
3275 ::serde::ser::SerializeMap::serialize_entry(&mut map, "RecordFormatType", &self.record_format_type)?;
3276 ::serde::ser::SerializeMap::end(map)
3277 }
3278 }
3279
3280 impl ::codec::DeserializeValue for RecordFormat {
3281 fn deserialize<'de, D: ::serde::Deserializer<'de>>(d: D) -> Result<RecordFormat, D::Error> {
3282 struct Visitor;
3283
3284 impl<'de> ::serde::de::Visitor<'de> for Visitor {
3285 type Value = RecordFormat;
3286
3287 fn expecting(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
3288 write!(f, "a struct of type RecordFormat")
3289 }
3290
3291 fn visit_map<A: ::serde::de::MapAccess<'de>>(self, mut map: A) -> Result<Self::Value, A::Error> {
3292 let mut mapping_parameters: Option<::Value<MappingParameters>> = None;
3293 let mut record_format_type: Option<::Value<String>> = None;
3294
3295 while let Some(__cfn_key) = ::serde::de::MapAccess::next_key::<String>(&mut map)? {
3296 match __cfn_key.as_ref() {
3297 "MappingParameters" => {
3298 mapping_parameters = ::serde::de::MapAccess::next_value(&mut map)?;
3299 }
3300 "RecordFormatType" => {
3301 record_format_type = ::serde::de::MapAccess::next_value(&mut map)?;
3302 }
3303 _ => {}
3304 }
3305 }
3306
3307 Ok(RecordFormat {
3308 mapping_parameters: mapping_parameters,
3309 record_format_type: record_format_type.ok_or(::serde::de::Error::missing_field("RecordFormatType"))?,
3310 })
3311 }
3312 }
3313
3314 d.deserialize_map(Visitor)
3315 }
3316 }
3317
3318 #[derive(Debug, Default)]
3320 pub struct ReferenceDataSource {
3321 pub reference_schema: ::Value<ReferenceSchema>,
3326 pub s3_reference_data_source: Option<::Value<S3ReferenceDataSource>>,
3331 pub table_name: Option<::Value<String>>,
3336 }
3337
3338 impl ::codec::SerializeValue for ReferenceDataSource {
3339 fn serialize<S: ::serde::Serializer>(&self, s: S) -> Result<S::Ok, S::Error> {
3340 let mut map = ::serde::Serializer::serialize_map(s, None)?;
3341 ::serde::ser::SerializeMap::serialize_entry(&mut map, "ReferenceSchema", &self.reference_schema)?;
3342 if let Some(ref s3_reference_data_source) = self.s3_reference_data_source {
3343 ::serde::ser::SerializeMap::serialize_entry(&mut map, "S3ReferenceDataSource", s3_reference_data_source)?;
3344 }
3345 if let Some(ref table_name) = self.table_name {
3346 ::serde::ser::SerializeMap::serialize_entry(&mut map, "TableName", table_name)?;
3347 }
3348 ::serde::ser::SerializeMap::end(map)
3349 }
3350 }
3351
3352 impl ::codec::DeserializeValue for ReferenceDataSource {
3353 fn deserialize<'de, D: ::serde::Deserializer<'de>>(d: D) -> Result<ReferenceDataSource, D::Error> {
3354 struct Visitor;
3355
3356 impl<'de> ::serde::de::Visitor<'de> for Visitor {
3357 type Value = ReferenceDataSource;
3358
3359 fn expecting(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
3360 write!(f, "a struct of type ReferenceDataSource")
3361 }
3362
3363 fn visit_map<A: ::serde::de::MapAccess<'de>>(self, mut map: A) -> Result<Self::Value, A::Error> {
3364 let mut reference_schema: Option<::Value<ReferenceSchema>> = None;
3365 let mut s3_reference_data_source: Option<::Value<S3ReferenceDataSource>> = None;
3366 let mut table_name: Option<::Value<String>> = None;
3367
3368 while let Some(__cfn_key) = ::serde::de::MapAccess::next_key::<String>(&mut map)? {
3369 match __cfn_key.as_ref() {
3370 "ReferenceSchema" => {
3371 reference_schema = ::serde::de::MapAccess::next_value(&mut map)?;
3372 }
3373 "S3ReferenceDataSource" => {
3374 s3_reference_data_source = ::serde::de::MapAccess::next_value(&mut map)?;
3375 }
3376 "TableName" => {
3377 table_name = ::serde::de::MapAccess::next_value(&mut map)?;
3378 }
3379 _ => {}
3380 }
3381 }
3382
3383 Ok(ReferenceDataSource {
3384 reference_schema: reference_schema.ok_or(::serde::de::Error::missing_field("ReferenceSchema"))?,
3385 s3_reference_data_source: s3_reference_data_source,
3386 table_name: table_name,
3387 })
3388 }
3389 }
3390
3391 d.deserialize_map(Visitor)
3392 }
3393 }
3394
3395 #[derive(Debug, Default)]
3397 pub struct ReferenceSchema {
3398 pub record_columns: ::ValueList<RecordColumn>,
3403 pub record_encoding: Option<::Value<String>>,
3408 pub record_format: ::Value<RecordFormat>,
3413 }
3414
3415 impl ::codec::SerializeValue for ReferenceSchema {
3416 fn serialize<S: ::serde::Serializer>(&self, s: S) -> Result<S::Ok, S::Error> {
3417 let mut map = ::serde::Serializer::serialize_map(s, None)?;
3418 ::serde::ser::SerializeMap::serialize_entry(&mut map, "RecordColumns", &self.record_columns)?;
3419 if let Some(ref record_encoding) = self.record_encoding {
3420 ::serde::ser::SerializeMap::serialize_entry(&mut map, "RecordEncoding", record_encoding)?;
3421 }
3422 ::serde::ser::SerializeMap::serialize_entry(&mut map, "RecordFormat", &self.record_format)?;
3423 ::serde::ser::SerializeMap::end(map)
3424 }
3425 }
3426
3427 impl ::codec::DeserializeValue for ReferenceSchema {
3428 fn deserialize<'de, D: ::serde::Deserializer<'de>>(d: D) -> Result<ReferenceSchema, D::Error> {
3429 struct Visitor;
3430
3431 impl<'de> ::serde::de::Visitor<'de> for Visitor {
3432 type Value = ReferenceSchema;
3433
3434 fn expecting(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
3435 write!(f, "a struct of type ReferenceSchema")
3436 }
3437
3438 fn visit_map<A: ::serde::de::MapAccess<'de>>(self, mut map: A) -> Result<Self::Value, A::Error> {
3439 let mut record_columns: Option<::ValueList<RecordColumn>> = None;
3440 let mut record_encoding: Option<::Value<String>> = None;
3441 let mut record_format: Option<::Value<RecordFormat>> = None;
3442
3443 while let Some(__cfn_key) = ::serde::de::MapAccess::next_key::<String>(&mut map)? {
3444 match __cfn_key.as_ref() {
3445 "RecordColumns" => {
3446 record_columns = ::serde::de::MapAccess::next_value(&mut map)?;
3447 }
3448 "RecordEncoding" => {
3449 record_encoding = ::serde::de::MapAccess::next_value(&mut map)?;
3450 }
3451 "RecordFormat" => {
3452 record_format = ::serde::de::MapAccess::next_value(&mut map)?;
3453 }
3454 _ => {}
3455 }
3456 }
3457
3458 Ok(ReferenceSchema {
3459 record_columns: record_columns.ok_or(::serde::de::Error::missing_field("RecordColumns"))?,
3460 record_encoding: record_encoding,
3461 record_format: record_format.ok_or(::serde::de::Error::missing_field("RecordFormat"))?,
3462 })
3463 }
3464 }
3465
3466 d.deserialize_map(Visitor)
3467 }
3468 }
3469
3470 #[derive(Debug, Default)]
3472 pub struct S3ReferenceDataSource {
3473 pub bucket_arn: ::Value<String>,
3478 pub file_key: ::Value<String>,
3483 }
3484
3485 impl ::codec::SerializeValue for S3ReferenceDataSource {
3486 fn serialize<S: ::serde::Serializer>(&self, s: S) -> Result<S::Ok, S::Error> {
3487 let mut map = ::serde::Serializer::serialize_map(s, None)?;
3488 ::serde::ser::SerializeMap::serialize_entry(&mut map, "BucketARN", &self.bucket_arn)?;
3489 ::serde::ser::SerializeMap::serialize_entry(&mut map, "FileKey", &self.file_key)?;
3490 ::serde::ser::SerializeMap::end(map)
3491 }
3492 }
3493
3494 impl ::codec::DeserializeValue for S3ReferenceDataSource {
3495 fn deserialize<'de, D: ::serde::Deserializer<'de>>(d: D) -> Result<S3ReferenceDataSource, D::Error> {
3496 struct Visitor;
3497
3498 impl<'de> ::serde::de::Visitor<'de> for Visitor {
3499 type Value = S3ReferenceDataSource;
3500
3501 fn expecting(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
3502 write!(f, "a struct of type S3ReferenceDataSource")
3503 }
3504
3505 fn visit_map<A: ::serde::de::MapAccess<'de>>(self, mut map: A) -> Result<Self::Value, A::Error> {
3506 let mut bucket_arn: Option<::Value<String>> = None;
3507 let mut file_key: Option<::Value<String>> = None;
3508
3509 while let Some(__cfn_key) = ::serde::de::MapAccess::next_key::<String>(&mut map)? {
3510 match __cfn_key.as_ref() {
3511 "BucketARN" => {
3512 bucket_arn = ::serde::de::MapAccess::next_value(&mut map)?;
3513 }
3514 "FileKey" => {
3515 file_key = ::serde::de::MapAccess::next_value(&mut map)?;
3516 }
3517 _ => {}
3518 }
3519 }
3520
3521 Ok(S3ReferenceDataSource {
3522 bucket_arn: bucket_arn.ok_or(::serde::de::Error::missing_field("BucketARN"))?,
3523 file_key: file_key.ok_or(::serde::de::Error::missing_field("FileKey"))?,
3524 })
3525 }
3526 }
3527
3528 d.deserialize_map(Visitor)
3529 }
3530 }
3531}