Class: AWSCDK::Glue::CfnIntegrationProps
- Inherits:
-
Jsii::Struct
- Object
- Jsii::Struct
- AWSCDK::Glue::CfnIntegrationProps
- Defined in:
- glue/cfn_integration_props.rb
Overview
Properties for defining a CfnIntegration.
Instance Attribute Summary collapse
-
#additional_encryption_context ⇒ AWSCDK::IResolvable, ...
readonly
An optional set of non-secret key–value pairs that contains additional contextual information for encryption.
-
#data_filter ⇒ String?
readonly
Selects source tables for the integration using Maxwell filter syntax.
-
#description ⇒ String?
readonly
A description for the integration.
-
#integration_config ⇒ AWSCDK::IResolvable, ...
readonly
The structure used to define properties associated with the zero-ETL integration.
-
#integration_name ⇒ String
readonly
A unique name for the integration.
-
#kms_key_id ⇒ String?
readonly
The ARN of a KMS key used for encrypting the channel.
-
#source_arn ⇒ String
readonly
The ARN for the source of the integration.
-
#tags ⇒ Array<AWSCDK::CfnTag>?
readonly
Metadata assigned to the resource consisting of a list of key-value pairs.
-
#target_arn ⇒ String
readonly
The ARN for the target of the integration.
Class Method Summary collapse
Instance Method Summary collapse
-
#initialize(integration_name:, source_arn:, target_arn:, additional_encryption_context: nil, data_filter: nil, description: nil, integration_config: nil, kms_key_id: nil, tags: nil) ⇒ CfnIntegrationProps
constructor
A new instance of CfnIntegrationProps.
- #to_jsii ⇒ Object
Constructor Details
#initialize(integration_name:, source_arn:, target_arn:, additional_encryption_context: nil, data_filter: nil, description: nil, integration_config: nil, kms_key_id: nil, tags: nil) ⇒ CfnIntegrationProps
Returns a new instance of CfnIntegrationProps.
18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 |
# File 'glue/cfn_integration_props.rb', line 18 def initialize(integration_name:, source_arn:, target_arn:, additional_encryption_context: nil, data_filter: nil, description: nil, integration_config: nil, kms_key_id: nil, tags: nil) @integration_name = integration_name Jsii::Type.check_type(@integration_name, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "integrationName") @source_arn = source_arn Jsii::Type.check_type(@source_arn, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "sourceArn") @target_arn = target_arn Jsii::Type.check_type(@target_arn, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "targetArn") @additional_encryption_context = additional_encryption_context Jsii::Type.check_type(@additional_encryption_context, JSON.parse(Base64.strict_decode64("eyJ1bmlvbiI6eyJ0eXBlcyI6W3siZnFuIjoiYXdzLWNkay1saWIuSVJlc29sdmFibGUifSx7ImNvbGxlY3Rpb24iOnsiZWxlbWVudHR5cGUiOnsicHJpbWl0aXZlIjoic3RyaW5nIn0sImtpbmQiOiJtYXAifX1dfX0=")), "additionalEncryptionContext") unless @additional_encryption_context.nil? @data_filter = data_filter Jsii::Type.check_type(@data_filter, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "dataFilter") unless @data_filter.nil? @description = description Jsii::Type.check_type(@description, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "description") unless @description.nil? @integration_config = integration_config.is_a?(Hash) ? ::AWSCDK::Glue::CfnIntegration::IntegrationConfigProperty.new(**integration_config.transform_keys(&:to_sym)) : integration_config Jsii::Type.check_type(@integration_config, JSON.parse(Base64.strict_decode64("eyJ1bmlvbiI6eyJ0eXBlcyI6W3siZnFuIjoiYXdzLWNkay1saWIuSVJlc29sdmFibGUifSx7ImZxbiI6ImF3cy1jZGstbGliLmF3c19nbHVlLkNmbkludGVncmF0aW9uLkludGVncmF0aW9uQ29uZmlnUHJvcGVydHkifV19fQ==")), "integrationConfig") unless @integration_config.nil? @kms_key_id = kms_key_id Jsii::Type.check_type(@kms_key_id, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "kmsKeyId") unless @kms_key_id.nil? @tags = .is_a?(Array) ? .map { |jsii_v0| jsii_v0.is_a?(Hash) ? ::AWSCDK::CfnTag.new(**jsii_v0.transform_keys(&:to_sym)) : jsii_v0 } : Jsii::Type.check_type(@tags, JSON.parse(Base64.strict_decode64("eyJjb2xsZWN0aW9uIjp7ImVsZW1lbnR0eXBlIjp7ImZxbiI6ImF3cy1jZGstbGliLkNmblRhZyJ9LCJraW5kIjoiYXJyYXkifX0=")), "tags") unless @tags.nil? end |
Instance Attribute Details
#additional_encryption_context ⇒ AWSCDK::IResolvable, ... (readonly)
An optional set of non-secret key–value pairs that contains additional contextual information for encryption.
This can only be provided if KMSKeyId is provided.
60 61 62 |
# File 'glue/cfn_integration_props.rb', line 60 def additional_encryption_context @additional_encryption_context end |
#data_filter ⇒ String? (readonly)
Selects source tables for the integration using Maxwell filter syntax.
65 66 67 |
# File 'glue/cfn_integration_props.rb', line 65 def data_filter @data_filter end |
#description ⇒ String? (readonly)
A description for the integration.
70 71 72 |
# File 'glue/cfn_integration_props.rb', line 70 def description @description end |
#integration_config ⇒ AWSCDK::IResolvable, ... (readonly)
The structure used to define properties associated with the zero-ETL integration.
For more information, see IntegrationConfig structure.
77 78 79 |
# File 'glue/cfn_integration_props.rb', line 77 def integration_config @integration_config end |
#integration_name ⇒ String (readonly)
A unique name for the integration.
43 44 45 |
# File 'glue/cfn_integration_props.rb', line 43 def integration_name @integration_name end |
#kms_key_id ⇒ String? (readonly)
The ARN of a KMS key used for encrypting the channel.
82 83 84 |
# File 'glue/cfn_integration_props.rb', line 82 def kms_key_id @kms_key_id end |
#source_arn ⇒ String (readonly)
The ARN for the source of the integration.
48 49 50 |
# File 'glue/cfn_integration_props.rb', line 48 def source_arn @source_arn end |
#tags ⇒ Array<AWSCDK::CfnTag>? (readonly)
Metadata assigned to the resource consisting of a list of key-value pairs.
87 88 89 |
# File 'glue/cfn_integration_props.rb', line 87 def @tags end |
#target_arn ⇒ String (readonly)
The ARN for the target of the integration.
53 54 55 |
# File 'glue/cfn_integration_props.rb', line 53 def target_arn @target_arn end |
Class Method Details
.jsii_properties ⇒ Object
89 90 91 92 93 94 95 96 97 98 99 100 101 |
# File 'glue/cfn_integration_props.rb', line 89 def self.jsii_properties { :integration_name => "integrationName", :source_arn => "sourceArn", :target_arn => "targetArn", :additional_encryption_context => "additionalEncryptionContext", :data_filter => "dataFilter", :description => "description", :integration_config => "integrationConfig", :kms_key_id => "kmsKeyId", :tags => "tags", } end |
Instance Method Details
#to_jsii ⇒ Object
103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 |
# File 'glue/cfn_integration_props.rb', line 103 def to_jsii result = {} result.merge!({ "integrationName" => @integration_name, "sourceArn" => @source_arn, "targetArn" => @target_arn, "additionalEncryptionContext" => @additional_encryption_context, "dataFilter" => @data_filter, "description" => @description, "integrationConfig" => @integration_config, "kmsKeyId" => @kms_key_id, "tags" => @tags, }) result.compact end |