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