跳到內容 跳到搜尋

Active Record 連線適配器交易狀態

方法
A
C
F
I
N
R

類別公開方法

new(state = nil)

# File activerecord/lib/active_record/connection_adapters/abstract/transaction.rb, line 7
def initialize(state = nil)
  @state = state
  @children = nil
end

實例公開方法

add_child(state)

# File activerecord/lib/active_record/connection_adapters/abstract/transaction.rb, line 12
def add_child(state)
  @children ||= []
  @children << state
end

commit!()

# File activerecord/lib/active_record/connection_adapters/abstract/transaction.rb, line 64
def commit!
  @state = :committed
end

已提交?()

# File activerecord/lib/active_record/connection_adapters/abstract/transaction.rb, line 21
def committed?
  @state == :committed || @state == :fully_committed
end

已完成?()

# File activerecord/lib/active_record/connection_adapters/abstract/transaction.rb, line 45
def completed?
  committed? || rolledback?
end

已完成?()

# File activerecord/lib/active_record/connection_adapters/abstract/transaction.rb, line 17
def finalized?
  @state
end

完全提交!()

# File activerecord/lib/active_record/connection_adapters/abstract/transaction.rb, line 68
def full_commit!
  @state = :fully_committed
end

完全回滾!()

# File activerecord/lib/active_record/connection_adapters/abstract/transaction.rb, line 54
def full_rollback!
  @children&.each { |c| c.rollback! }
  @state = :fully_rolledback
end

已完全提交?()

# File activerecord/lib/active_record/connection_adapters/abstract/transaction.rb, line 25
def fully_committed?
  @state == :fully_committed
end

已完全完成?()

# File activerecord/lib/active_record/connection_adapters/abstract/transaction.rb, line 41
def fully_completed?
  completed?
end

已完全回滾?()

# File activerecord/lib/active_record/connection_adapters/abstract/transaction.rb, line 33
def fully_rolledback?
  @state == :fully_rolledback
end

invalidate!()

# File activerecord/lib/active_record/connection_adapters/abstract/transaction.rb, line 59
def invalidate!
  @children&.each { |c| c.invalidate! }
  @state = :invalidated
end

invalidated?()

# File activerecord/lib/active_record/connection_adapters/abstract/transaction.rb, line 37
def invalidated?
  @state == :invalidated
end

nullify!()

# File activerecord/lib/active_record/connection_adapters/abstract/transaction.rb, line 72
def nullify!
  @state = nil
end

rollback!()

# File activerecord/lib/active_record/connection_adapters/abstract/transaction.rb, line 49
def rollback!
  @children&.each { |c| c.rollback! }
  @state = :rolledback
end

rolledback?()

# File activerecord/lib/active_record/connection_adapters/abstract/transaction.rb, line 29
def rolledback?
  @state == :rolledback || @state == :fully_rolledback
end