module AfterTransactionCommit::Transaction

Public Class Methods

new(connection, **options) click to toggle source
Calls superclass method
# File lib/after_transaction_commit/transaction.rb, line 4
def initialize(connection, **options)
  super
  @after_commit_blocks = []
end

Public Instance Methods

add_after_commit(block) click to toggle source
# File lib/after_transaction_commit/transaction.rb, line 15
def add_after_commit(block)
  @after_commit_blocks << block
end
commit_records() click to toggle source
Calls superclass method
# File lib/after_transaction_commit/transaction.rb, line 19
def commit_records
  super
  if @run_commit_callbacks
    @after_commit_blocks.each(&:call)
  else
    connection.current_transaction.instance_variable_get(:@after_commit_blocks).concat(@after_commit_blocks)
  end
end