Method: Dynamini::TestClient#batch_write_item
- Defined in:
- lib/dynamini/test_client.rb
#batch_write_item(request_options) ⇒ Object
TODO add range key support for delete, not currently implemented batch_operations.batch_delete
88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 |
# File 'lib/dynamini/test_client.rb', line 88 def batch_write_item() [:request_items].each do |table_name, requests| table = get_table(table_name) requests.each do |request_hash| if request_hash[:put_request] item = request_hash[:put_request][:item].symbolize_keys hash_key_value = item[hash_key_attr] if range_key_attr.present? range_key_value = item[range_key_attr] table[hash_key_value] = {} if table[hash_key_value].nil? table[hash_key_value][range_key_value] = item else table[hash_key_value] = item end else item = request_hash[:delete_request][:key] id = item[hash_key_attr] table.delete(id) end end end end |