class ActiveRecord::ConnectionAdapters::SavepointTransaction

Public Instance Methods

commit() click to toggle source
Calls superclass method
# File lib/prefactory/active_record_integration.rb, line 82
def commit
  connection.release_savepoint(savepoint_name)
  super
  if @fake_commit
    @savepoint_already_released = true
    commit_records
  else
    parent = connection.transaction_manager.current_transaction
    records.each { |r| parent.add_record(r) }
  end
end
perform_commit() click to toggle source
# File lib/prefactory/active_record_integration.rb, line 103
def perform_commit
  connection.release_savepoint
  if @fake_commit
    @savepoint_already_released = true
    commit_records
  else
    records.each { |r| parent.add_record(r) }
  end
end
perform_rollback() click to toggle source
# File lib/prefactory/active_record_integration.rb, line 96
def perform_rollback
  unless @savepoint_already_released
    connection.rollback_to_savepoint
    rollback_records
  end
end
rollback() click to toggle source
Calls superclass method
# File lib/prefactory/active_record_integration.rb, line 74
def rollback
  unless @savepoint_already_released
    connection.rollback_to_savepoint(savepoint_name)
    super
    rollback_records
  end
end