Class: AWSCDK::IoT::CfnTopicRule::KafkaActionProperty

Inherits:
Jsii::Struct
  • Object
show all
Defined in:
io_t/cfn_topic_rule.rb

Overview

Send messages to an Amazon Managed Streaming for Apache Kafka (Amazon MSK) or self-managed Apache Kafka cluster.

Instance Attribute Summary collapse

Class Method Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(client_properties:, destination_arn:, topic:, headers: nil, key: nil, partition: nil) ⇒ KafkaActionProperty

Returns a new instance of KafkaActionProperty.

Parameters:

  • client_properties (AWSCDK::IResolvable, Hash{String => String})

    Properties of the Apache Kafka producer client.

  • destination_arn (String)

    The ARN of Kafka action's VPC TopicRuleDestination .

  • topic (String)

    The Kafka topic for messages to be sent to the Kafka broker.

  • headers (AWSCDK::IResolvable, Array<AWSCDK::IResolvable, AWSCDK::IoT::CfnTopicRule::KafkaActionHeaderProperty>, nil) (defaults to: nil)

    The list of Kafka headers that you specify.

  • key (String, nil) (defaults to: nil)

    The Kafka message key.

  • partition (String, nil) (defaults to: nil)

    The Kafka message partition.



1956
1957
1958
1959
1960
1961
1962
1963
1964
1965
1966
1967
1968
1969
# File 'io_t/cfn_topic_rule.rb', line 1956

def initialize(client_properties:, destination_arn:, topic:, headers: nil, key: nil, partition: nil)
  @client_properties = client_properties
  Jsii::Type.check_type(@client_properties, JSON.parse(Base64.strict_decode64("eyJ1bmlvbiI6eyJ0eXBlcyI6W3siZnFuIjoiYXdzLWNkay1saWIuSVJlc29sdmFibGUifSx7ImNvbGxlY3Rpb24iOnsiZWxlbWVudHR5cGUiOnsicHJpbWl0aXZlIjoic3RyaW5nIn0sImtpbmQiOiJtYXAifX1dfX0=")), "clientProperties")
  @destination_arn = destination_arn
  Jsii::Type.check_type(@destination_arn, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "destinationArn")
  @topic = topic
  Jsii::Type.check_type(@topic, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "topic")
  @headers = headers
  Jsii::Type.check_type(@headers, JSON.parse(Base64.strict_decode64("eyJ1bmlvbiI6eyJ0eXBlcyI6W3siZnFuIjoiYXdzLWNkay1saWIuSVJlc29sdmFibGUifSx7ImNvbGxlY3Rpb24iOnsiZWxlbWVudHR5cGUiOnsidW5pb24iOnsidHlwZXMiOlt7ImZxbiI6ImF3cy1jZGstbGliLklSZXNvbHZhYmxlIn0seyJmcW4iOiJhd3MtY2RrLWxpYi5hd3NfaW90LkNmblRvcGljUnVsZS5LYWZrYUFjdGlvbkhlYWRlclByb3BlcnR5In1dfX0sImtpbmQiOiJhcnJheSJ9fV19fQ==")), "headers") unless @headers.nil?
  @key = key
  Jsii::Type.check_type(@key, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "key") unless @key.nil?
  @partition = partition
  Jsii::Type.check_type(@partition, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "partition") unless @partition.nil?
end

Instance Attribute Details

#client_propertiesAWSCDK::IResolvable, Hash{String => String} (readonly)

Properties of the Apache Kafka producer client.



1975
1976
1977
# File 'io_t/cfn_topic_rule.rb', line 1975

def client_properties
  @client_properties
end

#destination_arnString (readonly)

The ARN of Kafka action's VPC TopicRuleDestination .



1980
1981
1982
# File 'io_t/cfn_topic_rule.rb', line 1980

def destination_arn
  @destination_arn
end

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

The list of Kafka headers that you specify.



1990
1991
1992
# File 'io_t/cfn_topic_rule.rb', line 1990

def headers
  @headers
end

#keyString? (readonly)

The Kafka message key.



1995
1996
1997
# File 'io_t/cfn_topic_rule.rb', line 1995

def key
  @key
end

#partitionString? (readonly)

The Kafka message partition.



2000
2001
2002
# File 'io_t/cfn_topic_rule.rb', line 2000

def partition
  @partition
end

#topicString (readonly)

The Kafka topic for messages to be sent to the Kafka broker.



1985
1986
1987
# File 'io_t/cfn_topic_rule.rb', line 1985

def topic
  @topic
end

Class Method Details

.jsii_propertiesObject



2002
2003
2004
2005
2006
2007
2008
2009
2010
2011
# File 'io_t/cfn_topic_rule.rb', line 2002

def self.jsii_properties
  {
    :client_properties => "clientProperties",
    :destination_arn => "destinationArn",
    :topic => "topic",
    :headers => "headers",
    :key => "key",
    :partition => "partition",
  }
end

Instance Method Details

#to_jsiiObject



2013
2014
2015
2016
2017
2018
2019
2020
2021
2022
2023
2024
# File 'io_t/cfn_topic_rule.rb', line 2013

def to_jsii
  result = {}
  result.merge!({
    "clientProperties" => @client_properties,
    "destinationArn" => @destination_arn,
    "topic" => @topic,
    "headers" => @headers,
    "key" => @key,
    "partition" => @partition,
  })
  result.compact
end