Method: Yapper::DB::Transaction#run
- Defined in:
- lib/yapper/db.rb
#run(&block) ⇒ Object
234 235 236 237 238 239 240 241 242 243 244 245 246 247 248 249 |
# File 'lib/yapper/db.rb', line 234 def run(&block) result = nil txn_proc = proc do |_txn| @txn = _txn begin result = block.call(@txn) rescue Exception => e @txn.rollback result = e end end @db.connection.readWriteWithBlock(txn_proc) raise result if result.is_a?(Exception) result end |