Module: AfterTransactionCommit::Transaction

Defined in:
lib/after_transaction_commit/transaction.rb

Instance Method Summary collapse

Instance Method Details

#add_after_commit(block) ⇒ Object



8
9
10
# File 'lib/after_transaction_commit/transaction.rb', line 8

def add_after_commit(block)
  @after_commit_blocks << block
end

#commit_recordsObject



12
13
14
15
16
17
18
19
# File 'lib/after_transaction_commit/transaction.rb', line 12

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

#initializeObject



3
4
5
6
# File 'lib/after_transaction_commit/transaction.rb', line 3

def initialize(*)
  super
  @after_commit_blocks = []
end