Class: Sequent::Core::Transactions::ActiveRecordTransactionProvider

Inherits:
Object
  • Object
show all
Defined in:
lib/sequent/core/transactions/active_record_transaction_provider.rb

Instance Method Summary collapse

Instance Method Details

#after_commit(&block) ⇒ Object



15
16
17
# File 'lib/sequent/core/transactions/active_record_transaction_provider.rb', line 15

def after_commit(&block)
  after_commit_queue << block
end

#transactionalObject



6
7
8
9
10
11
12
13
# File 'lib/sequent/core/transactions/active_record_transaction_provider.rb', line 6

def transactional
  Sequent::ApplicationRecord.transaction(requires_new: true) do
    yield
  end
  after_commit_queue.each &:call
ensure
  clear_after_commit_queue
end