Sha256: 7c7062b42a7db9c977a0fdbaf776d577041a4e34a408aa7f7f740ac87e8e7f8d
Contents?: true
Size: 1.94 KB
Versions: 27
Compression:
Stored size: 1.94 KB
Contents
module Fog module AWS class DynamoDB class Real class DeprecatedAttributeUpdates < Exception; end # Update DynamoDB item # # ==== Parameters # * 'table_name'<~String> - name of table for item # * 'key'<~Hash> - list of elements to be updated and their value # { # "ForumName": {"S": "Amazon DynamoDB"}, # "Subject": {"S": "Maximum number of items?"} # } # # * 'options'<~Hash>: # * 'KeyConditionExpression'<~String> - the condition elements need to match # * 'ExpressionAttributeValues'<~Hash> - values to be used in the key condition expression # * 'ReturnValues'<~String> - data to return in %w{ALL_NEW ALL_OLD NONE UPDATED_NEW UPDATED_OLD}, defaults to NONE # # ==== Returns # * response<~Excon::Response>: # * body<~Hash>: # varies based on ReturnValues param, see: http://docs.amazonwebservices.com/amazondynamodb/latest/developerguide/API_UpdateItem.html # # See DynamoDB Documentation: http://docs.aws.amazon.com/amazondynamodb/latest/APIReference/API_UpdateItem.html # def update_item(table_name, key, options = {}, deprecated_attribute_updates = nil) if deprecated_attribute_updates raise DeprecatedAttributeUpdates, "The `20111205` DynamoDB API is deprecated. You need to use `ExpressionAttributeValues` instead of `AttributeUpdates`." attribute_updates = options options = deprecated_attribute_updates end body = { 'Key' => key, 'TableName' => table_name, 'AttributeUpdates' => attribute_updates, }.merge(options) request( :body => Fog::JSON.encode(body), :headers => {'x-amz-target' => 'DynamoDB_20120810.UpdateItem'} ) end end end end end
Version data entries
27 entries across 25 versions & 2 rubygems