Active Record Connection Adapters Transaction State
Methods
Class Public methods
new(state = nil)
📝 Source code
# File activerecord/lib/active_record/connection_adapters/abstract/transaction.rb, line 7
def initialize(state = nil)
@state = state
@children = nil
end
🔎 See on GitHub
Instance Public methods
add_child(state)
📝 Source code
# File activerecord/lib/active_record/connection_adapters/abstract/transaction.rb, line 12
def add_child(state)
@children ||= []
@children << state
end
🔎 See on GitHub
commit!()
📝 Source code
# File activerecord/lib/active_record/connection_adapters/abstract/transaction.rb, line 64
def commit!
@state = :committed
end
🔎 See on GitHub
committed?()
📝 Source code
# File activerecord/lib/active_record/connection_adapters/abstract/transaction.rb, line 21
def committed?
@state == :committed || @state == :fully_committed
end
🔎 See on GitHub
completed?()
📝 Source code
# File activerecord/lib/active_record/connection_adapters/abstract/transaction.rb, line 45
def completed?
committed? || rolledback?
end
🔎 See on GitHub
finalized?()
📝 Source code
# File activerecord/lib/active_record/connection_adapters/abstract/transaction.rb, line 17
def finalized?
@state
end
🔎 See on GitHub
full_commit!()
📝 Source code
# File activerecord/lib/active_record/connection_adapters/abstract/transaction.rb, line 68
def full_commit!
@state = :fully_committed
end
🔎 See on GitHub
full_rollback!()
📝 Source code
# File activerecord/lib/active_record/connection_adapters/abstract/transaction.rb, line 54
def full_rollback!
@children&.each { |c| c.rollback! }
@state = :fully_rolledback
end
🔎 See on GitHub
fully_committed?()
📝 Source code
# File activerecord/lib/active_record/connection_adapters/abstract/transaction.rb, line 25
def fully_committed?
@state == :fully_committed
end
🔎 See on GitHub
fully_completed?()
📝 Source code
# File activerecord/lib/active_record/connection_adapters/abstract/transaction.rb, line 41
def fully_completed?
completed?
end
🔎 See on GitHub
fully_rolledback?()
📝 Source code
# File activerecord/lib/active_record/connection_adapters/abstract/transaction.rb, line 33
def fully_rolledback?
@state == :fully_rolledback
end
🔎 See on GitHub
invalidate!()
📝 Source code
# File activerecord/lib/active_record/connection_adapters/abstract/transaction.rb, line 59
def invalidate!
@children&.each { |c| c.invalidate! }
@state = :invalidated
end
🔎 See on GitHub
invalidated?()
📝 Source code
# File activerecord/lib/active_record/connection_adapters/abstract/transaction.rb, line 37
def invalidated?
@state == :invalidated
end
🔎 See on GitHub
nullify!()
📝 Source code
# File activerecord/lib/active_record/connection_adapters/abstract/transaction.rb, line 72
def nullify!
@state = nil
end
🔎 See on GitHub
rollback!()
📝 Source code
# File activerecord/lib/active_record/connection_adapters/abstract/transaction.rb, line 49
def rollback!
@children&.each { |c| c.rollback! }
@state = :rolledback
end
🔎 See on GitHub
rolledback?()
📝 Source code
# File activerecord/lib/active_record/connection_adapters/abstract/transaction.rb, line 29
def rolledback?
@state == :rolledback || @state == :fully_rolledback
end
🔎 See on GitHub