# File lib/transaction/simple.rb, line 521
521:     def transaction(action = nil, name = nil)
522:       case action
523:       when :start
524:         start_transaction(name)
525:       when :rewind
526:         rewind_transaction(name)
527:       when :abort
528:         abort_transaction(name)
529:       when :commit
530:         commit_transaction(name)
531:       when :name
532:         transaction_name
533:       when nil
534:         transaction_open?(name)
535:       end
536:     end