module Neo4j::Core::TxMethods

Public Instance Methods

tx_methods(*methods) click to toggle source
   # File lib/neo4j/core/helpers.rb
 5 def tx_methods(*methods)
 6   methods.each do |method|
 7     tx_method = "#{method}_in_tx"
 8     send(:alias_method, tx_method, method)
 9     send(:define_method, method) do |*args, &block|
10       session = args.last.is_a?(Neo4j::Session) ? args.pop : Neo4j::Session.current!
11 
12       Neo4j::Transaction.run(session.auto_commit?) { send(tx_method, *args, &block) }
13     end
14   end
15 end