after_commit_state 0.0.3

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.
checksums.yaml ADDED
@@ -0,0 +1,7 @@
1
+ ---
2
+ SHA1:
3
+ metadata.gz: dde7a904381a6ec939ea12348de2e147e09c94cc
4
+ data.tar.gz: 831dd5fe60c059e02f08c8670a606a8edfd3d173
5
+ SHA512:
6
+ metadata.gz: 58f6a626571a08f150d33037eae8ffa6c6fc3448dbd3ed195dd44489ffd3fe95c22e83ad5d9746ca446b8afd0e8ba67901ab41d38f277ee841ce16d76abf0fb0
7
+ data.tar.gz: 80fbe3c52e8c68bcc0d529479e0330c8fd6fd69f45c8f69fd8c240026e5d1c076759162a68e90dd522348abc75de37e500095fd5c3a0ceb0c91045581e602050
data/README.md ADDED
@@ -0,0 +1,19 @@
1
+ # after_commit_state
2
+
3
+ Use this module to check model state in after_commit callback, if it was created or updated.
4
+
5
+ ## Usage
6
+
7
+ Add the following to your Gemfile:
8
+ ```ruby
9
+ gem 'after_commit_state'
10
+ ```
11
+
12
+ Now you can use it in ActiveRecord model after_commit callback
13
+ ```ruby
14
+ after_commit :after_commit_hook
15
+ def after_commit_hook
16
+ puts 'Created' if created?
17
+ puts 'Updated' if updated?
18
+ end
19
+ ```
@@ -0,0 +1,25 @@
1
+ require 'active_support/concern'
2
+
3
+ module AfterCommitState
4
+ module Base
5
+ extend ActiveSupport::Concern
6
+
7
+ included do
8
+ after_create do
9
+ @after_callback_state = :created
10
+ end
11
+
12
+ after_update do
13
+ @after_callback_state = :updated
14
+ end
15
+
16
+ def created?
17
+ @after_callback_state == :created
18
+ end
19
+
20
+ def updated?
21
+ @after_callback_state == :updated
22
+ end
23
+ end
24
+ end
25
+ end
@@ -0,0 +1,3 @@
1
+ module AfterCommitState
2
+ VERSION = '0.0.3'
3
+ end
@@ -0,0 +1,7 @@
1
+ require 'active_record'
2
+
3
+ if defined?(ActiveRecord::Base)
4
+ ActiveRecord::Base.raise_in_transactional_callbacks = true
5
+ require 'after_commit_state/base'
6
+ ActiveRecord::Base.include AfterCommitState::Base
7
+ end
metadata ADDED
@@ -0,0 +1,75 @@
1
+ --- !ruby/object:Gem::Specification
2
+ name: after_commit_state
3
+ version: !ruby/object:Gem::Version
4
+ version: 0.0.3
5
+ platform: ruby
6
+ authors:
7
+ - vitalinfo
8
+ autorequire:
9
+ bindir: bin
10
+ cert_chain: []
11
+ date: 2016-06-03 00:00:00.000000000 Z
12
+ dependencies:
13
+ - !ruby/object:Gem::Dependency
14
+ name: activerecord
15
+ requirement: !ruby/object:Gem::Requirement
16
+ requirements:
17
+ - - ">="
18
+ - !ruby/object:Gem::Version
19
+ version: 3.0.0
20
+ type: :runtime
21
+ prerelease: false
22
+ version_requirements: !ruby/object:Gem::Requirement
23
+ requirements:
24
+ - - ">="
25
+ - !ruby/object:Gem::Version
26
+ version: 3.0.0
27
+ - !ruby/object:Gem::Dependency
28
+ name: activesupport
29
+ requirement: !ruby/object:Gem::Requirement
30
+ requirements:
31
+ - - ">="
32
+ - !ruby/object:Gem::Version
33
+ version: 3.0.0
34
+ type: :runtime
35
+ prerelease: false
36
+ version_requirements: !ruby/object:Gem::Requirement
37
+ requirements:
38
+ - - ">="
39
+ - !ruby/object:Gem::Version
40
+ version: 3.0.0
41
+ description: Easy way to check model state in after_commit callback
42
+ email: vital.ryabchinskiy@gmail.com
43
+ executables: []
44
+ extensions: []
45
+ extra_rdoc_files: []
46
+ files:
47
+ - README.md
48
+ - lib/after_commit_state.rb
49
+ - lib/after_commit_state/base.rb
50
+ - lib/after_commit_state/version.rb
51
+ homepage: https://github.com/vitalinfo/after_commit_state
52
+ licenses:
53
+ - MIT
54
+ metadata: {}
55
+ post_install_message:
56
+ rdoc_options: []
57
+ require_paths:
58
+ - lib
59
+ required_ruby_version: !ruby/object:Gem::Requirement
60
+ requirements:
61
+ - - ">="
62
+ - !ruby/object:Gem::Version
63
+ version: '0'
64
+ required_rubygems_version: !ruby/object:Gem::Requirement
65
+ requirements:
66
+ - - ">="
67
+ - !ruby/object:Gem::Version
68
+ version: '0'
69
+ requirements: []
70
+ rubyforge_project:
71
+ rubygems_version: 2.5.1
72
+ signing_key:
73
+ specification_version: 4
74
+ summary: Check model state in after_commit callback
75
+ test_files: []