class AWS::DynamoDB::BatchGet
def convert_unprocessed_keys response
def convert_unprocessed_keys response return nil if response.data['UnprocessedKeys'].empty? # convert the json response keys into symbolized keys str2sym = lambda do |key_desc| type, value = key_desc.to_a.flatten case type when "S" then { :s => value } when "N" then { :n => value } else raise "unhandled key type: #{type}" end end request_items = {} response.data['UnprocessedKeys'].each_pair do |table,keys| request_items[table] = {} request_items[table][:attributes_to_get] = keys['AttributesToGet'] if keys['AttributesToGet'] request_items[table][:keys] = keys['Keys'].collect do |desc| key = {} key[:hash_key_element] = str2sym.call(desc['HashKeyElement']) key[:range_key_element] = str2sym.call(desc['RangeKeyElement']) if desc['RangeKeyElement'] key end end request_items end