Class: AWSCDK::DynamoDB::CfnTable::ImportSourceSpecificationProperty

Inherits:
Jsii::Struct
  • Object
show all
Defined in:
dynamo_db/cfn_table.rb

Overview

Specifies the properties of data being imported from the S3 bucket source to the table.

Instance Attribute Summary collapse

Class Method Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(input_format:, s3_bucket_source:, input_compression_type: nil, input_format_options: nil) ⇒ ImportSourceSpecificationProperty

Returns a new instance of ImportSourceSpecificationProperty.

Parameters:



1070
1071
1072
1073
1074
1075
1076
1077
1078
1079
# File 'dynamo_db/cfn_table.rb', line 1070

def initialize(input_format:, s3_bucket_source:, input_compression_type: nil, input_format_options: nil)
  @input_format = input_format
  Jsii::Type.check_type(@input_format, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "inputFormat")
  @s3_bucket_source = s3_bucket_source.is_a?(Hash) ? ::AWSCDK::DynamoDB::CfnTable::S3BucketSourceProperty.new(**s3_bucket_source.transform_keys(&:to_sym)) : s3_bucket_source
  Jsii::Type.check_type(@s3_bucket_source, JSON.parse(Base64.strict_decode64("eyJ1bmlvbiI6eyJ0eXBlcyI6W3siZnFuIjoiYXdzLWNkay1saWIuSVJlc29sdmFibGUifSx7ImZxbiI6ImF3cy1jZGstbGliLmF3c19keW5hbW9kYi5DZm5UYWJsZS5TM0J1Y2tldFNvdXJjZVByb3BlcnR5In1dfX0=")), "s3BucketSource")
  @input_compression_type = input_compression_type
  Jsii::Type.check_type(@input_compression_type, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "inputCompressionType") unless @input_compression_type.nil?
  @input_format_options = input_format_options.is_a?(Hash) ? ::AWSCDK::DynamoDB::CfnTable::InputFormatOptionsProperty.new(**input_format_options.transform_keys(&:to_sym)) : input_format_options
  Jsii::Type.check_type(@input_format_options, JSON.parse(Base64.strict_decode64("eyJ1bmlvbiI6eyJ0eXBlcyI6W3siZnFuIjoiYXdzLWNkay1saWIuSVJlc29sdmFibGUifSx7ImZxbiI6ImF3cy1jZGstbGliLmF3c19keW5hbW9kYi5DZm5UYWJsZS5JbnB1dEZvcm1hdE9wdGlvbnNQcm9wZXJ0eSJ9XX19")), "inputFormatOptions") unless @input_format_options.nil?
end

Instance Attribute Details

#input_compression_typeString? (readonly)

Type of compression to be used on the input coming from the imported table.



1097
1098
1099
# File 'dynamo_db/cfn_table.rb', line 1097

def input_compression_type
  @input_compression_type
end

#input_formatString (readonly)

The format of the source data.

Valid values for ImportFormat are CSV , DYNAMODB_JSON or ION .



1087
1088
1089
# File 'dynamo_db/cfn_table.rb', line 1087

def input_format
  @input_format
end

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

Additional properties that specify how the input is formatted,.



1102
1103
1104
# File 'dynamo_db/cfn_table.rb', line 1102

def input_format_options
  @input_format_options
end

#s3_bucket_sourceAWSCDK::IResolvable, AWSCDK::DynamoDB::CfnTable::S3BucketSourceProperty (readonly)

The S3 bucket that provides the source for the import.



1092
1093
1094
# File 'dynamo_db/cfn_table.rb', line 1092

def s3_bucket_source
  @s3_bucket_source
end

Class Method Details

.jsii_propertiesObject



1104
1105
1106
1107
1108
1109
1110
1111
# File 'dynamo_db/cfn_table.rb', line 1104

def self.jsii_properties
  {
    :input_format => "inputFormat",
    :s3_bucket_source => "s3BucketSource",
    :input_compression_type => "inputCompressionType",
    :input_format_options => "inputFormatOptions",
  }
end

Instance Method Details

#to_jsiiObject



1113
1114
1115
1116
1117
1118
1119
1120
1121
1122
# File 'dynamo_db/cfn_table.rb', line 1113

def to_jsii
  result = {}
  result.merge!({
    "inputFormat" => @input_format,
    "s3BucketSource" => @s3_bucket_source,
    "inputCompressionType" => @input_compression_type,
    "inputFormatOptions" => @input_format_options,
  })
  result.compact
end