Class: AWSCDK::KinesisAnalyticsv2::CfnApplication::InputProperty

Inherits:
Jsii::Struct
  • Object
show all
Defined in:
kinesis_analyticsv2/cfn_application.rb

Overview

When you configure the application input for a SQL-based Kinesis Data Analytics application, you specify the streaming source, the in-application stream name that is created, and the mapping between the two.

Instance Attribute Summary collapse

Class Method Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(input_schema:, name_prefix:, input_parallelism: nil, input_processing_configuration: nil, kinesis_firehose_input: nil, kinesis_streams_input: nil) ⇒ InputProperty

Returns a new instance of InputProperty.

Parameters:



1554
1555
1556
1557
1558
1559
1560
1561
1562
1563
1564
1565
1566
1567
# File 'kinesis_analyticsv2/cfn_application.rb', line 1554

def initialize(input_schema:, name_prefix:, input_parallelism: nil, input_processing_configuration: nil, kinesis_firehose_input: nil, kinesis_streams_input: nil)
  @input_schema = input_schema.is_a?(Hash) ? ::AWSCDK::KinesisAnalyticsv2::CfnApplication::InputSchemaProperty.new(**input_schema.transform_keys(&:to_sym)) : input_schema
  Jsii::Type.check_type(@input_schema, JSON.parse(Base64.strict_decode64("eyJ1bmlvbiI6eyJ0eXBlcyI6W3siZnFuIjoiYXdzLWNkay1saWIuSVJlc29sdmFibGUifSx7ImZxbiI6ImF3cy1jZGstbGliLmF3c19raW5lc2lzYW5hbHl0aWNzdjIuQ2ZuQXBwbGljYXRpb24uSW5wdXRTY2hlbWFQcm9wZXJ0eSJ9XX19")), "inputSchema")
  @name_prefix = name_prefix
  Jsii::Type.check_type(@name_prefix, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "namePrefix")
  @input_parallelism = input_parallelism.is_a?(Hash) ? ::AWSCDK::KinesisAnalyticsv2::CfnApplication::InputParallelismProperty.new(**input_parallelism.transform_keys(&:to_sym)) : input_parallelism
  Jsii::Type.check_type(@input_parallelism, JSON.parse(Base64.strict_decode64("eyJ1bmlvbiI6eyJ0eXBlcyI6W3siZnFuIjoiYXdzLWNkay1saWIuSVJlc29sdmFibGUifSx7ImZxbiI6ImF3cy1jZGstbGliLmF3c19raW5lc2lzYW5hbHl0aWNzdjIuQ2ZuQXBwbGljYXRpb24uSW5wdXRQYXJhbGxlbGlzbVByb3BlcnR5In1dfX0=")), "inputParallelism") unless @input_parallelism.nil?
  @input_processing_configuration = input_processing_configuration.is_a?(Hash) ? ::AWSCDK::KinesisAnalyticsv2::CfnApplication::InputProcessingConfigurationProperty.new(**input_processing_configuration.transform_keys(&:to_sym)) : input_processing_configuration
  Jsii::Type.check_type(@input_processing_configuration, JSON.parse(Base64.strict_decode64("eyJ1bmlvbiI6eyJ0eXBlcyI6W3siZnFuIjoiYXdzLWNkay1saWIuSVJlc29sdmFibGUifSx7ImZxbiI6ImF3cy1jZGstbGliLmF3c19raW5lc2lzYW5hbHl0aWNzdjIuQ2ZuQXBwbGljYXRpb24uSW5wdXRQcm9jZXNzaW5nQ29uZmlndXJhdGlvblByb3BlcnR5In1dfX0=")), "inputProcessingConfiguration") unless @input_processing_configuration.nil?
  @kinesis_firehose_input = kinesis_firehose_input.is_a?(Hash) ? ::AWSCDK::KinesisAnalyticsv2::CfnApplication::KinesisFirehoseInputProperty.new(**kinesis_firehose_input.transform_keys(&:to_sym)) : kinesis_firehose_input
  Jsii::Type.check_type(@kinesis_firehose_input, JSON.parse(Base64.strict_decode64("eyJ1bmlvbiI6eyJ0eXBlcyI6W3siZnFuIjoiYXdzLWNkay1saWIuSVJlc29sdmFibGUifSx7ImZxbiI6ImF3cy1jZGstbGliLmF3c19raW5lc2lzYW5hbHl0aWNzdjIuQ2ZuQXBwbGljYXRpb24uS2luZXNpc0ZpcmVob3NlSW5wdXRQcm9wZXJ0eSJ9XX19")), "kinesisFirehoseInput") unless @kinesis_firehose_input.nil?
  @kinesis_streams_input = kinesis_streams_input.is_a?(Hash) ? ::AWSCDK::KinesisAnalyticsv2::CfnApplication::KinesisStreamsInputProperty.new(**kinesis_streams_input.transform_keys(&:to_sym)) : kinesis_streams_input
  Jsii::Type.check_type(@kinesis_streams_input, JSON.parse(Base64.strict_decode64("eyJ1bmlvbiI6eyJ0eXBlcyI6W3siZnFuIjoiYXdzLWNkay1saWIuSVJlc29sdmFibGUifSx7ImZxbiI6ImF3cy1jZGstbGliLmF3c19raW5lc2lzYW5hbHl0aWNzdjIuQ2ZuQXBwbGljYXRpb24uS2luZXNpc1N0cmVhbXNJbnB1dFByb3BlcnR5In1dfX0=")), "kinesisStreamsInput") unless @kinesis_streams_input.nil?
end

Instance Attribute Details

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

Describes the number of in-application streams to create.



1587
1588
1589
# File 'kinesis_analyticsv2/cfn_application.rb', line 1587

def input_parallelism
  @input_parallelism
end

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

The InputProcessingConfiguration for the input. An input processor transforms records as they are received from the stream, before the application's SQL code executes. Currently, the only input processing configuration available is InputLambdaProcessor .



1592
1593
1594
# File 'kinesis_analyticsv2/cfn_application.rb', line 1592

def input_processing_configuration
  @input_processing_configuration
end

#input_schemaAWSCDK::IResolvable, AWSCDK::KinesisAnalyticsv2::CfnApplication::InputSchemaProperty (readonly)

Describes the format of the data in the streaming source, and how each data element maps to corresponding columns in the in-application stream that is being created.

Also used to describe the format of the reference data source.



1575
1576
1577
# File 'kinesis_analyticsv2/cfn_application.rb', line 1575

def input_schema
  @input_schema
end

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

If the streaming source is an Amazon Kinesis Data Firehose delivery stream, identifies the delivery stream's ARN.



1597
1598
1599
# File 'kinesis_analyticsv2/cfn_application.rb', line 1597

def kinesis_firehose_input
  @kinesis_firehose_input
end

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

If the streaming source is an Amazon Kinesis data stream, identifies the stream's Amazon Resource Name (ARN).



1602
1603
1604
# File 'kinesis_analyticsv2/cfn_application.rb', line 1602

def kinesis_streams_input
  @kinesis_streams_input
end

#name_prefixString (readonly)

The name prefix to use when creating an in-application stream.

Suppose that you specify a prefix " MyInApplicationStream ." Kinesis Data Analytics then creates one or more (as per the InputParallelism count you specified) in-application streams with the names " MyInApplicationStream_001 ," " MyInApplicationStream_002 ," and so on.



1582
1583
1584
# File 'kinesis_analyticsv2/cfn_application.rb', line 1582

def name_prefix
  @name_prefix
end

Class Method Details

.jsii_propertiesObject



1604
1605
1606
1607
1608
1609
1610
1611
1612
1613
# File 'kinesis_analyticsv2/cfn_application.rb', line 1604

def self.jsii_properties
  {
    :input_schema => "inputSchema",
    :name_prefix => "namePrefix",
    :input_parallelism => "inputParallelism",
    :input_processing_configuration => "inputProcessingConfiguration",
    :kinesis_firehose_input => "kinesisFirehoseInput",
    :kinesis_streams_input => "kinesisStreamsInput",
  }
end

Instance Method Details

#to_jsiiObject



1615
1616
1617
1618
1619
1620
1621
1622
1623
1624
1625
1626
# File 'kinesis_analyticsv2/cfn_application.rb', line 1615

def to_jsii
  result = {}
  result.merge!({
    "inputSchema" => @input_schema,
    "namePrefix" => @name_prefix,
    "inputParallelism" => @input_parallelism,
    "inputProcessingConfiguration" => @input_processing_configuration,
    "kinesisFirehoseInput" => @kinesis_firehose_input,
    "kinesisStreamsInput" => @kinesis_streams_input,
  })
  result.compact
end