class Aws::Record::BatchWrite
def complete?
-
(Boolean)
- +true+ if +unprocessed_items+ is empty, +false+
def complete? unprocessed_items.values.none? end
def delete(record)
-
record
(Aws::Record
) -- a model class that includes {Aws::Record}.
def delete(record) table_name, params = record_delete_params(record) operations[table_name] ||= [] operations[table_name] << { delete_request: params } end
def execute!
-
(Aws::Record::BatchWrite)
- an instance that provides access to
def execute! result = @client.batch_write_item(request_items: operations) @operations = result.unprocessed_items self end
def initialize(opts = {})
(**opts)
-
client
(Aws::DynamoDB::Client
) -- the DynamoDB SDK client.
Parameters:
-
opts
(Hash
) --
def initialize(opts = {}) @client = opts[:client] end
def operations
def operations @operations ||= {} end
def put(record)
-
record
(Aws::Record
) -- a model class that includes {Aws::Record}.
def put(record) table_name, params = record_put_params(record) operations[table_name] ||= [] operations[table_name] << { put_request: params } end
def record_delete_params(record)
def record_delete_params(record) [record.class.table_name, { key: record.key_values }] end
def record_put_params(record)
def record_put_params(record) [record.class.table_name, { item: record.save_values }] end
def unprocessed_items
-
(Hash)
- All operations that have not yet successfully completed.
def unprocessed_items operations end