class ActiveRecord::ConnectionAdapters::TransactionState
Public Class Methods
new(state = nil)
click to toggle source
# File lib/active_record/connection_adapters/abstract/transaction.rb, line 5 def initialize(state = nil) @state = state @children = [] end
Public Instance Methods
add_child(state)
click to toggle source
# File lib/active_record/connection_adapters/abstract/transaction.rb, line 10 def add_child(state) @children << state end
commit!()
click to toggle source
# File lib/active_record/connection_adapters/abstract/transaction.rb, line 70 def commit! @state = :committed end
committed?()
click to toggle source
# File lib/active_record/connection_adapters/abstract/transaction.rb, line 18 def committed? @state == :committed || @state == :fully_committed end
completed?()
click to toggle source
# File lib/active_record/connection_adapters/abstract/transaction.rb, line 38 def completed? committed? || rolledback? end
finalized?()
click to toggle source
# File lib/active_record/connection_adapters/abstract/transaction.rb, line 14 def finalized? @state end
full_commit!()
click to toggle source
# File lib/active_record/connection_adapters/abstract/transaction.rb, line 74 def full_commit! @state = :fully_committed end
full_rollback!()
click to toggle source
# File lib/active_record/connection_adapters/abstract/transaction.rb, line 65 def full_rollback! @children.each { |c| c.rollback! } @state = :fully_rolledback end
fully_committed?()
click to toggle source
# File lib/active_record/connection_adapters/abstract/transaction.rb, line 22 def fully_committed? @state == :fully_committed end
fully_completed?()
click to toggle source
# File lib/active_record/connection_adapters/abstract/transaction.rb, line 34 def fully_completed? completed? end
fully_rolledback?()
click to toggle source
# File lib/active_record/connection_adapters/abstract/transaction.rb, line 30 def fully_rolledback? @state == :fully_rolledback end
nullify!()
click to toggle source
# File lib/active_record/connection_adapters/abstract/transaction.rb, line 78 def nullify! @state = nil end
rollback!()
click to toggle source
# File lib/active_record/connection_adapters/abstract/transaction.rb, line 60 def rollback! @children.each { |c| c.rollback! } @state = :rolledback end
rolledback?()
click to toggle source
# File lib/active_record/connection_adapters/abstract/transaction.rb, line 26 def rolledback? @state == :rolledback || @state == :fully_rolledback end
set_state(state)
click to toggle source
# File lib/active_record/connection_adapters/abstract/transaction.rb, line 42 def set_state(state) ActiveSupport::Deprecation.warn(<<-MSG.squish) The set_state method is deprecated and will be removed in Rails 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