module ArCache::ActiveRecord::ConnectionAdapters::TransactionManager
Public Class Methods
new(...)
click to toggle source
Calls superclass method
# File lib/ar_cache/active_record/connection_adapters/abstract/transaction.rb, line 70 def initialize(...) super @transaction_tables = {} end
Public Instance Methods
add_transaction_table(table_name)
click to toggle source
# File lib/ar_cache/active_record/connection_adapters/abstract/transaction.rb, line 75 def add_transaction_table(table_name) @transaction_tables[table_name] = true if fully_joinable? && @stack.any? end
fully_joinable?()
click to toggle source
# File lib/ar_cache/active_record/connection_adapters/abstract/transaction.rb, line 83 def fully_joinable? @stack.all?(&:joinable?) end
transaction_table?(table_name)
click to toggle source
# File lib/ar_cache/active_record/connection_adapters/abstract/transaction.rb, line 79 def transaction_table?(table_name) @transaction_tables.key?(table_name) end
within_new_transaction(...)
click to toggle source
Calls superclass method
# File lib/ar_cache/active_record/connection_adapters/abstract/transaction.rb, line 87 def within_new_transaction(...) super ensure @transaction_tables.clear if @stack.count(&:joinable?).zero? end