Guest User

Untitled

a guest
Apr 20th, 2018
73
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.31 KB | None | 0 0
  1. module Adapters
  2.  
  3. module MockTransactions
  4. def begin_transaction
  5. DataMapper.logger.debug("BEGIN TRANSACTION (mock transaction!)")
  6. end
  7.  
  8. def commit_transaction
  9. DataMapper.logger.debug("COMMIT TRANSACTION (mock transaction!)")
  10. end
  11.  
  12. def rollback_transaction
  13. DataMapper.logger.debug("ROLLBACK TRANSACTION (mock transaction!)")
  14. end
  15. end
  16.  
  17. module StandardSqlTransactions
  18. def begin_transaction
  19. connection = create_connection
  20. Thread::current["doa_#{@uri.scheme}_transaction"] = connection
  21. DataMapper.logger.debug("BEGIN TRANSACTION")
  22. command = connection.create_command("BEGIN")
  23. command.execute_non_query
  24. end
  25.  
  26. def commit_transaction
  27. connection = create_connection
  28. Thread::current["doa_#{@uri.scheme}_transaction"] = nil
  29. DataMapper.logger.debug("COMMIT TRANSACTION")
  30. command = connection.create_command("COMMIT")
  31. command.execute_non_query
  32. end
  33.  
  34. def rollback_transaction
  35. connection = create_connection
  36. Thread::current["doa_#{@uri.scheme}_transaction"] = nil
  37. DataMapper.logger.debug("ROLLBACK TRANSACTION")
  38. command = connection.create_command("ROLLBACK")
  39. command.execute_non_query
  40. end
  41. end
Add Comment
Please, Sign In to add comment