class Xronor::AWS::DynamoDB
Constants
- BATCH_WRITE_ITEM_MAX
Public Class Methods
new(client: Aws::DynamoDB::Client.new)
click to toggle source
# File lib/xronor/aws/dynamo_db.rb, line 6 def initialize(client: Aws::DynamoDB::Client.new) @client = client end
Public Instance Methods
sync_rule_arns(table, add_rule_arns, delete_rule_arns)
click to toggle source
# File lib/xronor/aws/dynamo_db.rb, line 10 def sync_rule_arns(table, add_rule_arns, delete_rule_arns) put_requests = add_rule_arns.map do |arn| { put_request: { item: { "ARN" => arn, "InvokedAt" => "0" }, }, } end delete_requests = delete_rule_arns.map do |arn| { delete_request: { key: { "ARN" => arn, }, }, } end requests = put_requests + delete_requests requests.each_slice(BATCH_WRITE_ITEM_MAX) do |reqs| @client.batch_write_item({ request_items: { table => reqs, }, }) end end