class ActiveRecord::ConnectionAdapters::TransactionState
Public Class Methods
new(state = nil)
click to toggle source
# File activerecord/lib/active_record/connection_adapters/abstract/transaction.rb, line 6 def initialize(state = nil) @state = state @children = [] end
Public Instance Methods
add_child(state)
click to toggle source
# File activerecord/lib/active_record/connection_adapters/abstract/transaction.rb, line 11 def add_child(state) @children << state end
commit!()
click to toggle source
# File activerecord/lib/active_record/connection_adapters/abstract/transaction.rb, line 58 def commit! @state = :committed end
committed?()
click to toggle source
# File activerecord/lib/active_record/connection_adapters/abstract/transaction.rb, line 19 def committed? @state == :committed end
completed?()
click to toggle source
# File activerecord/lib/active_record/connection_adapters/abstract/transaction.rb, line 31 def completed? committed? || rolledback? end
finalized?()
click to toggle source
# File activerecord/lib/active_record/connection_adapters/abstract/transaction.rb, line 15 def finalized? @state end
fully_completed?()
click to toggle source
# File activerecord/lib/active_record/connection_adapters/abstract/transaction.rb, line 27 def fully_completed? completed? end
nullify!()
click to toggle source
# File activerecord/lib/active_record/connection_adapters/abstract/transaction.rb, line 62 def nullify! @state = nil end
rollback!()
click to toggle source
# File activerecord/lib/active_record/connection_adapters/abstract/transaction.rb, line 53 def rollback! @children.each { |c| c.rollback! } @state = :rolledback end
rolledback?()
click to toggle source
# File activerecord/lib/active_record/connection_adapters/abstract/transaction.rb, line 23 def rolledback? @state == :rolledback end
set_state(state)
click to toggle source
# File activerecord/lib/active_record/connection_adapters/abstract/transaction.rb, line 35 def set_state(state) ActiveSupport::Deprecation.warn(<<-MSG.squish) The set_state method is deprecated and will be removed in Quails 6.0. Please use rollback! or commit! to set transaction state directly. MSG case state when :rolledback rollback! when :committed commit! when nil nullify! else raise ArgumentError, "Invalid transaction state: #{state}" end end