# Copyright (c) 2012-2022, Mark Peek <mark@peek.org>
# All rights reserved.
#
# See LICENSE file for full license.
#
# *** Do not modify - this file is autogenerated ***
from . import AWSObject, AWSProperty, PropsDictType
from .validators import integer
[docs]class RecordColumn(AWSProperty):
"""
`RecordColumn <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalytics-applicationreferencedatasource-recordcolumn.html>`__
"""
props: PropsDictType = {
"Mapping": (str, False),
"Name": (str, True),
"SqlType": (str, True),
}
[docs]class CSVMappingParameters(AWSProperty):
"""
`CSVMappingParameters <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalytics-applicationreferencedatasource-csvmappingparameters.html>`__
"""
props: PropsDictType = {
"RecordColumnDelimiter": (str, True),
"RecordRowDelimiter": (str, True),
}
[docs]class JSONMappingParameters(AWSProperty):
"""
`JSONMappingParameters <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalytics-applicationreferencedatasource-jsonmappingparameters.html>`__
"""
props: PropsDictType = {
"RecordRowPath": (str, True),
}
[docs]class MappingParameters(AWSProperty):
"""
`MappingParameters <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalytics-applicationreferencedatasource-mappingparameters.html>`__
"""
props: PropsDictType = {
"CSVMappingParameters": (CSVMappingParameters, False),
"JSONMappingParameters": (JSONMappingParameters, False),
}
[docs]class Application(AWSObject):
"""
`Application <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-kinesisanalytics-application.html>`__
"""
resource_type = "AWS::KinesisAnalytics::Application"
props: PropsDictType = {
"ApplicationCode": (str, False),
"ApplicationDescription": (str, False),
"ApplicationName": (str, False),
"Inputs": ([Input], True),
}
[docs]class DestinationSchema(AWSProperty):
"""
`DestinationSchema <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalytics-applicationoutput-destinationschema.html>`__
"""
props: PropsDictType = {
"RecordFormatType": (str, False),
}
[docs]class KinesisFirehoseOutput(AWSProperty):
"""
`KinesisFirehoseOutput <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalytics-applicationoutput-kinesisfirehoseoutput.html>`__
"""
props: PropsDictType = {
"ResourceARN": (str, True),
"RoleARN": (str, True),
}
[docs]class KinesisStreamsOutput(AWSProperty):
"""
`KinesisStreamsOutput <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalytics-applicationoutput-kinesisstreamsoutput.html>`__
"""
props: PropsDictType = {
"ResourceARN": (str, True),
"RoleARN": (str, True),
}
[docs]class LambdaOutput(AWSProperty):
"""
`LambdaOutput <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalytics-applicationoutput-lambdaoutput.html>`__
"""
props: PropsDictType = {
"ResourceARN": (str, True),
"RoleARN": (str, True),
}
[docs]class Output(AWSProperty):
"""
`Output <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalytics-applicationoutput-output.html>`__
"""
props: PropsDictType = {
"DestinationSchema": (DestinationSchema, True),
"KinesisFirehoseOutput": (KinesisFirehoseOutput, False),
"KinesisStreamsOutput": (KinesisStreamsOutput, False),
"LambdaOutput": (LambdaOutput, False),
"Name": (str, False),
}
[docs]class ApplicationOutput(AWSObject):
"""
`ApplicationOutput <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-kinesisanalytics-applicationoutput.html>`__
"""
resource_type = "AWS::KinesisAnalytics::ApplicationOutput"
props: PropsDictType = {
"ApplicationName": (str, True),
"Output": (Output, True),
}
[docs]class ReferenceSchema(AWSProperty):
"""
`ReferenceSchema <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalytics-applicationreferencedatasource-referenceschema.html>`__
"""
props: PropsDictType = {
"RecordColumns": ([RecordColumn], True),
"RecordEncoding": (str, False),
"RecordFormat": (RecordFormat, True),
}
[docs]class S3ReferenceDataSource(AWSProperty):
"""
`S3ReferenceDataSource <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalytics-applicationreferencedatasource-s3referencedatasource.html>`__
"""
props: PropsDictType = {
"BucketARN": (str, True),
"FileKey": (str, True),
"ReferenceRoleARN": (str, True),
}
[docs]class ReferenceDataSource(AWSProperty):
"""
`ReferenceDataSource <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalytics-applicationreferencedatasource-referencedatasource.html>`__
"""
props: PropsDictType = {
"ReferenceSchema": (ReferenceSchema, True),
"S3ReferenceDataSource": (S3ReferenceDataSource, False),
"TableName": (str, False),
}
[docs]class ApplicationReferenceDataSource(AWSObject):
"""
`ApplicationReferenceDataSource <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-kinesisanalytics-applicationreferencedatasource.html>`__
"""
resource_type = "AWS::KinesisAnalytics::ApplicationReferenceDataSource"
props: PropsDictType = {
"ApplicationName": (str, True),
"ReferenceDataSource": (ReferenceDataSource, True),
}