class AwsTestDump::DynamoTableDump
Attributes
data_dump_definition[RW]
table_name[RW]
Public Class Methods
new(data_dump_definition=nil, dump_dir=nil, table_name=nil)
click to toggle source
Calls superclass method
AwsTestDump::BaseDynamoProcessor::new
# File lib/aws_test_dump.rb, line 172 def initialize(data_dump_definition=nil, dump_dir=nil, table_name=nil) super nil @data_dump_definition = data_dump_definition @data_dump_definition ||= {} @table_name = table_name @table_name ||= @data_dump_definition[:table_name] @dump_dir = dump_dir @dump_dir ||= DEFAULT_DATA_DUMP_DIR @dump_file = File.join(@dump_dir, "#{@table_name}.yml") @query_results = nil end
Public Instance Methods
_query()
click to toggle source
# File lib/aws_test_dump.rb, line 196 def _query @dynamo_client.query({ :table_name => @table_name, :select => 'ALL_ATTRIBUTES', :key_conditions => @data_dump_definition[:key_conditions] }) end
_scan()
click to toggle source
# File lib/aws_test_dump.rb, line 204 def _scan @dynamo_client.scan({table_name: @table_name}) end
dump_data()
click to toggle source
# File lib/aws_test_dump.rb, line 188 def dump_data data = {table_name: @table_name, data: query_results} unless File.directory?(@dump_dir) FileUtils.mkdir_p(@dump_dir) end File.open(@dump_file, 'w') { |file| file.write data.to_yaml } end
query_results()
click to toggle source
# File lib/aws_test_dump.rb, line 208 def query_results if @query_results.nil? response = !@data_dump_definition[:key_conditions].nil? ? _query : _scan @query_results = response.items end @query_results end
run()
click to toggle source
# File lib/aws_test_dump.rb, line 184 def run dump_data end