Class: AWSCDK::MSK::CfnReplicator::ReplicationInfoProperty

Inherits:
Jsii::Struct
  • Object
show all
Defined in:
msk/cfn_replicator.rb

Overview

Specifies configuration for replication between a source and target Kafka cluster.

Instance Attribute Summary collapse

Class Method Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(consumer_group_replication:, target_compression_type:, topic_replication:, source_kafka_cluster_arn: nil, source_kafka_cluster_id: nil, target_kafka_cluster_arn: nil, target_kafka_cluster_id: nil) ⇒ ReplicationInfoProperty

Returns a new instance of ReplicationInfoProperty.

Parameters:

  • consumer_group_replication (AWSCDK::IResolvable, AWSCDK::MSK::CfnReplicator::ConsumerGroupReplicationProperty)

    Configuration relating to consumer group replication.

  • target_compression_type (String)

    The compression type to use when producing records to target cluster.

  • topic_replication (AWSCDK::IResolvable, AWSCDK::MSK::CfnReplicator::TopicReplicationProperty)

    Configuration relating to topic replication.

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

    The ARN of the source Kafka cluster.

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

    The ID of the source Kafka cluster.

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

    The ARN of the target Kafka cluster.

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

    The ID of the target Kafka cluster.



1158
1159
1160
1161
1162
1163
1164
1165
1166
1167
1168
1169
1170
1171
1172
1173
# File 'msk/cfn_replicator.rb', line 1158

def initialize(consumer_group_replication:, target_compression_type:, topic_replication:, source_kafka_cluster_arn: nil, source_kafka_cluster_id: nil, target_kafka_cluster_arn: nil, target_kafka_cluster_id: nil)
  @consumer_group_replication = consumer_group_replication.is_a?(Hash) ? ::AWSCDK::MSK::CfnReplicator::ConsumerGroupReplicationProperty.new(**consumer_group_replication.transform_keys(&:to_sym)) : consumer_group_replication
  Jsii::Type.check_type(@consumer_group_replication, JSON.parse(Base64.strict_decode64("eyJ1bmlvbiI6eyJ0eXBlcyI6W3siZnFuIjoiYXdzLWNkay1saWIuSVJlc29sdmFibGUifSx7ImZxbiI6ImF3cy1jZGstbGliLmF3c19tc2suQ2ZuUmVwbGljYXRvci5Db25zdW1lckdyb3VwUmVwbGljYXRpb25Qcm9wZXJ0eSJ9XX19")), "consumerGroupReplication")
  @target_compression_type = target_compression_type
  Jsii::Type.check_type(@target_compression_type, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "targetCompressionType")
  @topic_replication = topic_replication.is_a?(Hash) ? ::AWSCDK::MSK::CfnReplicator::TopicReplicationProperty.new(**topic_replication.transform_keys(&:to_sym)) : topic_replication
  Jsii::Type.check_type(@topic_replication, JSON.parse(Base64.strict_decode64("eyJ1bmlvbiI6eyJ0eXBlcyI6W3siZnFuIjoiYXdzLWNkay1saWIuSVJlc29sdmFibGUifSx7ImZxbiI6ImF3cy1jZGstbGliLmF3c19tc2suQ2ZuUmVwbGljYXRvci5Ub3BpY1JlcGxpY2F0aW9uUHJvcGVydHkifV19fQ==")), "topicReplication")
  @source_kafka_cluster_arn = source_kafka_cluster_arn
  Jsii::Type.check_type(@source_kafka_cluster_arn, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "sourceKafkaClusterArn") unless @source_kafka_cluster_arn.nil?
  @source_kafka_cluster_id = source_kafka_cluster_id
  Jsii::Type.check_type(@source_kafka_cluster_id, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "sourceKafkaClusterId") unless @source_kafka_cluster_id.nil?
  @target_kafka_cluster_arn = target_kafka_cluster_arn
  Jsii::Type.check_type(@target_kafka_cluster_arn, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "targetKafkaClusterArn") unless @target_kafka_cluster_arn.nil?
  @target_kafka_cluster_id = target_kafka_cluster_id
  Jsii::Type.check_type(@target_kafka_cluster_id, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "targetKafkaClusterId") unless @target_kafka_cluster_id.nil?
end

Instance Attribute Details

#consumer_group_replicationAWSCDK::IResolvable, AWSCDK::MSK::CfnReplicator::ConsumerGroupReplicationProperty (readonly)

Configuration relating to consumer group replication.



1179
1180
1181
# File 'msk/cfn_replicator.rb', line 1179

def consumer_group_replication
  @consumer_group_replication
end

#source_kafka_cluster_arnString? (readonly)

The ARN of the source Kafka cluster.



1194
1195
1196
# File 'msk/cfn_replicator.rb', line 1194

def source_kafka_cluster_arn
  @source_kafka_cluster_arn
end

#source_kafka_cluster_idString? (readonly)

The ID of the source Kafka cluster.



1199
1200
1201
# File 'msk/cfn_replicator.rb', line 1199

def source_kafka_cluster_id
  @source_kafka_cluster_id
end

#target_compression_typeString (readonly)

The compression type to use when producing records to target cluster.



1184
1185
1186
# File 'msk/cfn_replicator.rb', line 1184

def target_compression_type
  @target_compression_type
end

#target_kafka_cluster_arnString? (readonly)

The ARN of the target Kafka cluster.



1204
1205
1206
# File 'msk/cfn_replicator.rb', line 1204

def target_kafka_cluster_arn
  @target_kafka_cluster_arn
end

#target_kafka_cluster_idString? (readonly)

The ID of the target Kafka cluster.



1209
1210
1211
# File 'msk/cfn_replicator.rb', line 1209

def target_kafka_cluster_id
  @target_kafka_cluster_id
end

#topic_replicationAWSCDK::IResolvable, AWSCDK::MSK::CfnReplicator::TopicReplicationProperty (readonly)

Configuration relating to topic replication.



1189
1190
1191
# File 'msk/cfn_replicator.rb', line 1189

def topic_replication
  @topic_replication
end

Class Method Details

.jsii_propertiesObject



1211
1212
1213
1214
1215
1216
1217
1218
1219
1220
1221
# File 'msk/cfn_replicator.rb', line 1211

def self.jsii_properties
  {
    :consumer_group_replication => "consumerGroupReplication",
    :target_compression_type => "targetCompressionType",
    :topic_replication => "topicReplication",
    :source_kafka_cluster_arn => "sourceKafkaClusterArn",
    :source_kafka_cluster_id => "sourceKafkaClusterId",
    :target_kafka_cluster_arn => "targetKafkaClusterArn",
    :target_kafka_cluster_id => "targetKafkaClusterId",
  }
end

Instance Method Details

#to_jsiiObject



1223
1224
1225
1226
1227
1228
1229
1230
1231
1232
1233
1234
1235
# File 'msk/cfn_replicator.rb', line 1223

def to_jsii
  result = {}
  result.merge!({
    "consumerGroupReplication" => @consumer_group_replication,
    "targetCompressionType" => @target_compression_type,
    "topicReplication" => @topic_replication,
    "sourceKafkaClusterArn" => @source_kafka_cluster_arn,
    "sourceKafkaClusterId" => @source_kafka_cluster_id,
    "targetKafkaClusterArn" => @target_kafka_cluster_arn,
    "targetKafkaClusterId" => @target_kafka_cluster_id,
  })
  result.compact
end