Class: AWSCDK::KinesisAnalytics::CfnApplicationV2::RecordFormatProperty

Inherits:
Jsii::Struct
  • Object
show all
Defined in:
kinesis_analytics/cfn_application_v2.rb

Overview

For a SQL-based Kinesis Data Analytics application, describes the record format and relevant mapping information that should be applied to schematize the records on the stream.

Instance Attribute Summary collapse

Class Method Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(record_format_type:, mapping_parameters: nil) ⇒ RecordFormatProperty

Returns a new instance of RecordFormatProperty.

Parameters:

  • record_format_type (String)

    The type of record format.

  • mapping_parameters (AWSCDK::IResolvable, AWSCDK::KinesisAnalytics::CfnApplicationV2::MappingParametersProperty, nil) (defaults to: nil)

    When you configure application input at the time of creating or updating an application, provides additional mapping information specific to the record format (such as JSON, CSV, or record fields delimited by some delimiter) on the streaming source.



2122
2123
2124
2125
2126
2127
# File 'kinesis_analytics/cfn_application_v2.rb', line 2122

def initialize(record_format_type:, mapping_parameters: nil)
  @record_format_type = record_format_type
  Jsii::Type.check_type(@record_format_type, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "recordFormatType")
  @mapping_parameters = mapping_parameters.is_a?(Hash) ? ::AWSCDK::KinesisAnalytics::CfnApplicationV2::MappingParametersProperty.new(**mapping_parameters.transform_keys(&:to_sym)) : mapping_parameters
  Jsii::Type.check_type(@mapping_parameters, JSON.parse(Base64.strict_decode64("eyJ1bmlvbiI6eyJ0eXBlcyI6W3siZnFuIjoiYXdzLWNkay1saWIuSVJlc29sdmFibGUifSx7ImZxbiI6ImF3cy1jZGstbGliLmF3c19raW5lc2lzYW5hbHl0aWNzLkNmbkFwcGxpY2F0aW9uVjIuTWFwcGluZ1BhcmFtZXRlcnNQcm9wZXJ0eSJ9XX19")), "mappingParameters") unless @mapping_parameters.nil?
end

Instance Attribute Details

#mapping_parametersAWSCDK::IResolvable, ... (readonly)

When you configure application input at the time of creating or updating an application, provides additional mapping information specific to the record format (such as JSON, CSV, or record fields delimited by some delimiter) on the streaming source.



2138
2139
2140
# File 'kinesis_analytics/cfn_application_v2.rb', line 2138

def mapping_parameters
  @mapping_parameters
end

#record_format_typeString (readonly)

The type of record format.



2133
2134
2135
# File 'kinesis_analytics/cfn_application_v2.rb', line 2133

def record_format_type
  @record_format_type
end

Class Method Details

.jsii_propertiesObject



2140
2141
2142
2143
2144
2145
# File 'kinesis_analytics/cfn_application_v2.rb', line 2140

def self.jsii_properties
  {
    :record_format_type => "recordFormatType",
    :mapping_parameters => "mappingParameters",
  }
end

Instance Method Details

#to_jsiiObject



2147
2148
2149
2150
2151
2152
2153
2154
# File 'kinesis_analytics/cfn_application_v2.rb', line 2147

def to_jsii
  result = {}
  result.merge!({
    "recordFormatType" => @record_format_type,
    "mappingParameters" => @mapping_parameters,
  })
  result.compact
end