Transaction
Source: show | on GitHub
# File activerecord/lib/active_record/connection_adapters/abstract/transaction.rb, line 9 def initialize(state = nil) @state = state @children = nil end
# File activerecord/lib/active_record/connection_adapters/abstract/transaction.rb, line 14 def add_child(state) @children ||= [] @children << state end
# File activerecord/lib/active_record/connection_adapters/abstract/transaction.rb, line 66 def commit! @state = :committed end
# File activerecord/lib/active_record/connection_adapters/abstract/transaction.rb, line 23 def committed? @state == :committed || @state == :fully_committed end
# File activerecord/lib/active_record/connection_adapters/abstract/transaction.rb, line 47 def completed? committed? || rolledback? end
# File activerecord/lib/active_record/connection_adapters/abstract/transaction.rb, line 19 def finalized? @state end
# File activerecord/lib/active_record/connection_adapters/abstract/transaction.rb, line 70 def full_commit! @state = :fully_committed end
# File activerecord/lib/active_record/connection_adapters/abstract/transaction.rb, line 56 def full_rollback! @children&.each { |c| c.rollback! } @state = :fully_rolledback end
# File activerecord/lib/active_record/connection_adapters/abstract/transaction.rb, line 27 def fully_committed? @state == :fully_committed end
# File activerecord/lib/active_record/connection_adapters/abstract/transaction.rb, line 43 def fully_completed? completed? end
# File activerecord/lib/active_record/connection_adapters/abstract/transaction.rb, line 35 def fully_rolledback? @state == :fully_rolledback end
# File activerecord/lib/active_record/connection_adapters/abstract/transaction.rb, line 61 def invalidate! @children&.each { |c| c.invalidate! } @state = :invalidated end
# File activerecord/lib/active_record/connection_adapters/abstract/transaction.rb, line 39 def invalidated? @state == :invalidated end
# File activerecord/lib/active_record/connection_adapters/abstract/transaction.rb, line 74 def nullify! @state = nil end
# File activerecord/lib/active_record/connection_adapters/abstract/transaction.rb, line 51 def rollback! @children&.each { |c| c.rollback! } @state = :rolledback end
# File activerecord/lib/active_record/connection_adapters/abstract/transaction.rb, line 31 def rolledback? @state == :rolledback || @state == :fully_rolledback end