after_commit 1.0.5 → 1.0.6

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -4,8 +4,9 @@ module AfterCommit
4
4
  base.class_eval do
5
5
  class << self
6
6
  def establish_connection_with_after_commit(spec = nil)
7
- establish_connection_without_after_commit spec
7
+ result = establish_connection_without_after_commit spec
8
8
  include_after_commit_extensions
9
+ result
9
10
  end
10
11
  alias_method_chain :establish_connection, :after_commit
11
12
 
@@ -10,21 +10,23 @@ module AfterCommit
10
10
  def commit_db_transaction_with_callback
11
11
  increment_transaction_pointer
12
12
  committed = false
13
+ result = nil
13
14
  begin
14
15
  trigger_before_commit_callbacks
15
16
  trigger_before_commit_on_create_callbacks
16
17
  trigger_before_commit_on_update_callbacks
17
18
  trigger_before_commit_on_destroy_callbacks
18
19
 
19
- commit_db_transaction_without_callback
20
+ result = commit_db_transaction_without_callback
20
21
  committed = true
21
22
 
22
23
  trigger_after_commit_callbacks
23
24
  trigger_after_commit_on_create_callbacks
24
25
  trigger_after_commit_on_update_callbacks
25
26
  trigger_after_commit_on_destroy_callbacks
27
+ result
26
28
  rescue
27
- rollback_db_transaction unless committed
29
+ committed ? result : rollback_db_transaction
28
30
  ensure
29
31
  AfterCommit.cleanup(self)
30
32
  decrement_transaction_pointer
@@ -37,9 +39,11 @@ module AfterCommit
37
39
  # callback for each record that failed to be committed.
38
40
  def rollback_db_transaction_with_callback
39
41
  begin
42
+ result = nil
40
43
  trigger_before_rollback_callbacks
41
- rollback_db_transaction_without_callback
44
+ result = rollback_db_transaction_without_callback
42
45
  trigger_after_rollback_callbacks
46
+ result
43
47
  ensure
44
48
  AfterCommit.cleanup(self)
45
49
  end
@@ -1,4 +1,4 @@
1
- require File.dirname(__FILE__) + '/test_helper'
1
+ require 'test_helper'
2
2
 
3
3
  class MockRecord < ActiveRecord::Base
4
4
  attr_accessor :before_commit_on_create_called
@@ -1,4 +1,4 @@
1
- require File.dirname(__FILE__) + '/test_helper'
1
+ require 'test_helper'
2
2
 
3
3
  class ObservableMockRecord < ActiveRecord::Base
4
4
  set_table_name 'mock_records'
@@ -1,7 +1,7 @@
1
1
  $LOAD_PATH.unshift(File.dirname(__FILE__) + '/../lib')
2
2
  require 'test/unit'
3
3
  require 'rubygems'
4
- require 'activerecord'
4
+ require 'active_record'
5
5
 
6
6
  begin
7
7
  require 'sqlite3'
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: after_commit
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.0.5
4
+ version: 1.0.6
5
5
  platform: ruby
6
6
  authors:
7
7
  - Nick Muerdter
@@ -11,7 +11,7 @@ autorequire:
11
11
  bindir: bin
12
12
  cert_chain: []
13
13
 
14
- date: 2009-11-26 00:00:00 +11:00
14
+ date: 2010-02-16 00:00:00 +11:00
15
15
  default_executable:
16
16
  dependencies:
17
17
  - !ruby/object:Gem::Dependency