Class: AWSCDK::KinesisAnalyticsv2::CfnApplication::RecordFormatProperty

Inherits:
Jsii::Struct
  • Object
show all
Defined in:
kinesis_analyticsv2/cfn_application.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::KinesisAnalyticsv2::CfnApplication::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.



2121
2122
2123
2124
2125
2126
# File 'kinesis_analyticsv2/cfn_application.rb', line 2121

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::KinesisAnalyticsv2::CfnApplication::MappingParametersProperty.new(**mapping_parameters.transform_keys(&:to_sym)) : mapping_parameters
  Jsii::Type.check_type(@mapping_parameters, JSON.parse(Base64.strict_decode64("eyJ1bmlvbiI6eyJ0eXBlcyI6W3siZnFuIjoiYXdzLWNkay1saWIuSVJlc29sdmFibGUifSx7ImZxbiI6ImF3cy1jZGstbGliLmF3c19raW5lc2lzYW5hbHl0aWNzdjIuQ2ZuQXBwbGljYXRpb24uTWFwcGluZ1BhcmFtZXRlcnNQcm9wZXJ0eSJ9XX19")), "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.



2137
2138
2139
# File 'kinesis_analyticsv2/cfn_application.rb', line 2137

def mapping_parameters
  @mapping_parameters
end

#record_format_typeString (readonly)

The type of record format.



2132
2133
2134
# File 'kinesis_analyticsv2/cfn_application.rb', line 2132

def record_format_type
  @record_format_type
end

Class Method Details

.jsii_propertiesObject



2139
2140
2141
2142
2143
2144
# File 'kinesis_analyticsv2/cfn_application.rb', line 2139

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

Instance Method Details

#to_jsiiObject



2146
2147
2148
2149
2150
2151
2152
2153
# File 'kinesis_analyticsv2/cfn_application.rb', line 2146

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