maitredee 0.8.1 → 0.8.2

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: dcaaab9f2642725bbbabcf1f78a82ba8d07ee24ecee0982e942ae9244e1e2ef0
4
- data.tar.gz: a40fc3344552f698944488f0d1465a739225206db1ab237bf6c6a79657195c3d
3
+ metadata.gz: 61c90edbaf57c2a995ee3f92ee780235bb8af4421a446fa9bd10286101c80949
4
+ data.tar.gz: d118a9ee6cf0d03b22e46bdb8d271930ec444806a6aac071e27d496b1d952d22
5
5
  SHA512:
6
- metadata.gz: f60c6204d002100161ad73deedcabcce630f5731a1a2fa764f4e3308b15472db8a384fd1c977d8cefb80138a146d457006109f5ee64f1e841fa59b596caf2c50
7
- data.tar.gz: 82bc48a8f7b7c11c74f0a57e6d91a08eba96c03d053d278e84475f38d3dd77fd2a3233c7e5c1a92e680b97251383499d879e4b0a7025f691817015db5de4fba4
6
+ metadata.gz: 024331eff27c916156ad6d878647e527a8fa50da23b451f8fe853b18e4b73b481bb6e65cf0dbd385dfd151b9b7d0f15c2d194a2c4ec16b36f6c3d59566b93334
7
+ data.tar.gz: 28b6af8d263162cb2ea0eff4bccb46671f5ccd173d7251fa2429c3d637aaec9ce643f993f1678d9c70738c71a78a6b20182327f879eb0d36c39d336a2c122185
@@ -1,8 +1,7 @@
1
1
  PATH
2
2
  remote: .
3
3
  specs:
4
- maitredee (0.8.1)
5
- activejob
4
+ maitredee (0.8.2)
6
5
  activesupport
7
6
  aws-sdk-sns
8
7
  aws-sdk-sqs
@@ -13,6 +12,19 @@ PATH
13
12
  GEM
14
13
  remote: https://rubygems.org/
15
14
  specs:
15
+ actionpack (5.2.2)
16
+ actionview (= 5.2.2)
17
+ activesupport (= 5.2.2)
18
+ rack (~> 2.0)
19
+ rack-test (>= 0.6.3)
20
+ rails-dom-testing (~> 2.0)
21
+ rails-html-sanitizer (~> 1.0, >= 1.0.2)
22
+ actionview (5.2.2)
23
+ activesupport (= 5.2.2)
24
+ builder (~> 3.1)
25
+ erubi (~> 1.4)
26
+ rails-dom-testing (~> 2.0)
27
+ rails-html-sanitizer (~> 1.0, >= 1.0.3)
16
28
  activejob (5.2.2)
17
29
  activesupport (= 5.2.2)
18
30
  globalid (>= 0.3.6)
@@ -23,7 +35,7 @@ GEM
23
35
  tzinfo (~> 1.1)
24
36
  aws-eventstream (1.0.1)
25
37
  aws-partitions (1.122.0)
26
- aws-sdk-core (3.43.0)
38
+ aws-sdk-core (3.44.0)
27
39
  aws-eventstream (~> 1.0)
28
40
  aws-partitions (~> 1.0)
29
41
  aws-sigv4 (~> 1.0)
@@ -35,13 +47,16 @@ GEM
35
47
  aws-sdk-core (~> 3, >= 3.39.0)
36
48
  aws-sigv4 (~> 1.0)
37
49
  aws-sigv4 (1.0.3)
50
+ builder (3.2.3)
38
51
  byebug (10.0.2)
39
52
  coderay (1.1.2)
40
53
  concurrent-ruby (1.1.3)
54
+ crass (1.0.4)
41
55
  diff-lcs (1.3)
42
56
  dotenv (2.5.0)
43
57
  ecma-re-validator (0.2.0)
44
58
  regexp_parser (~> 1.2)
59
+ erubi (1.7.1)
45
60
  globalid (0.4.1)
46
61
  activesupport (>= 4.2.0)
47
62
  hana (1.3.4)
@@ -53,14 +68,34 @@ GEM
53
68
  hana (~> 1.3.3)
54
69
  regexp_parser (~> 1.2.0)
55
70
  uri_template (~> 0.7.0)
71
+ loofah (2.2.3)
72
+ crass (~> 1.0.2)
73
+ nokogiri (>= 1.5.9)
56
74
  method_source (0.9.2)
75
+ mini_portile2 (2.3.0)
57
76
  minitest (5.11.3)
77
+ nokogiri (1.8.5)
78
+ mini_portile2 (~> 2.3.0)
58
79
  pry (0.12.2)
59
80
  coderay (~> 1.1.0)
60
81
  method_source (~> 0.9.0)
61
82
  pry-byebug (3.6.0)
62
83
  byebug (~> 10.0)
63
84
  pry (~> 0.10)
85
+ rack (2.0.6)
86
+ rack-test (1.1.0)
87
+ rack (>= 1.0, < 3)
88
+ rails-dom-testing (2.0.3)
89
+ activesupport (>= 4.2.0)
90
+ nokogiri (>= 1.6)
91
+ rails-html-sanitizer (1.0.4)
92
+ loofah (~> 2.2, >= 2.2.2)
93
+ railties (5.2.2)
94
+ actionpack (= 5.2.2)
95
+ activesupport (= 5.2.2)
96
+ method_source
97
+ rake (>= 0.8.7)
98
+ thor (>= 0.19.0, < 2.0)
64
99
  rake (10.5.0)
65
100
  regexp_parser (1.2.0)
66
101
  rspec (3.8.0)
@@ -90,11 +125,13 @@ PLATFORMS
90
125
  ruby
91
126
 
92
127
  DEPENDENCIES
128
+ activejob
93
129
  bundler (~> 1.17)
94
130
  dotenv
95
131
  maitredee!
96
132
  pry
97
133
  pry-byebug
134
+ railties
98
135
  rake (~> 10.0)
99
136
  rspec (~> 3.0)
100
137
  rspec-mocks (~> 3.0)
@@ -10,6 +10,7 @@ require "maitredee/publisher"
10
10
  require "maitredee/subscriber"
11
11
  require "maitredee/version"
12
12
  require "maitredee/adapters/sns_sqs_adapter"
13
+ require "maitredee/railtie" if defined? ::Rails::Railtie
13
14
 
14
15
  module Maitredee
15
16
  class << self
@@ -0,0 +1,44 @@
1
+ require "active_support/core_ext/class/subclasses"
2
+ require "active_job"
3
+
4
+ module Maitredee
5
+ module ActiveJob
6
+ def self.extended(mod)
7
+ mod.descendants.each do |klass|
8
+ create_publisher_job(klass)
9
+ end
10
+ end
11
+
12
+ def self.create_publisher_job(subclass)
13
+ subclass.const_set("PublisherJob", Class.new(BasePublisherJob))
14
+ subclass::PublisherJob.service_class = subclass
15
+ end
16
+
17
+ def call_later(*args)
18
+ self::PublisherJob.perform_later(*args)
19
+ end
20
+
21
+ private
22
+
23
+ def inherited(subclass)
24
+ create_publisher_job(subclass)
25
+ super
26
+ end
27
+
28
+ def create_publisher_job(subclass)
29
+ Maitredee::ActiveJob.create_publisher_job(subclass)
30
+ end
31
+
32
+ class BasePublisherJob < ::ActiveJob::Base
33
+ class << self
34
+ attr_accessor :service_class
35
+ end
36
+
37
+ def perform(*args)
38
+ self.class.service_class.call(*args)
39
+ end
40
+ end
41
+
42
+ ::Maitredee::Publisher.extend(self)
43
+ end
44
+ end
@@ -1,17 +1,6 @@
1
- require "active_job"
2
-
3
1
  module Maitredee
4
2
  class Publisher
5
3
  class << self
6
- def inherited(subclass)
7
- subclass.const_set("PublisherJob", Class.new(PublisherJob))
8
- subclass::PublisherJob.service_class = subclass
9
- end
10
-
11
- def call_later(*args)
12
- self::PublisherJob.perform_later(*args)
13
- end
14
-
15
4
  def call(*args)
16
5
  publisher = new(*args)
17
6
  publisher.process
@@ -45,15 +34,5 @@ module Maitredee
45
34
  body: body
46
35
  )
47
36
  end
48
-
49
- class PublisherJob < ::ActiveJob::Base
50
- class << self
51
- attr_accessor :service_class
52
- end
53
-
54
- def perform(*args)
55
- self.class.service_class.call(*args)
56
- end
57
- end
58
37
  end
59
38
  end
@@ -0,0 +1,11 @@
1
+ require "rails"
2
+
3
+ module Maitredee
4
+ class Railtie < Rails::Railtie
5
+ initializer "maitredee.initialization" do |app|
6
+ if defined? ActiveJob
7
+ require "maitredee/active_job"
8
+ end
9
+ end
10
+ end
11
+ end
@@ -1,3 +1,3 @@
1
1
  module Maitredee
2
- VERSION = "0.8.1"
2
+ VERSION = "0.8.2"
3
3
  end
@@ -23,7 +23,6 @@ Gem::Specification.new do |spec|
23
23
  spec.executables = spec.files.grep(%r{^exe/}) { |f| File.basename(f) }
24
24
  spec.require_paths = ["lib"]
25
25
 
26
- spec.add_dependency "activejob"
27
26
  spec.add_dependency "activesupport"
28
27
  spec.add_dependency "aws-sdk-sns"
29
28
  spec.add_dependency "aws-sdk-sqs"
@@ -38,4 +37,6 @@ Gem::Specification.new do |spec|
38
37
  spec.add_development_dependency "rake", "~> 10.0"
39
38
  spec.add_development_dependency "rspec", "~> 3.0"
40
39
  spec.add_development_dependency "rspec-mocks", "~> 3.0"
40
+ spec.add_development_dependency "railties"
41
+ spec.add_development_dependency "activejob"
41
42
  end
metadata CHANGED
@@ -1,29 +1,15 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: maitredee
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.8.1
4
+ version: 0.8.2
5
5
  platform: ruby
6
6
  authors:
7
7
  - Plated Devs
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2018-12-07 00:00:00.000000000 Z
11
+ date: 2018-12-10 00:00:00.000000000 Z
12
12
  dependencies:
13
- - !ruby/object:Gem::Dependency
14
- name: activejob
15
- requirement: !ruby/object:Gem::Requirement
16
- requirements:
17
- - - ">="
18
- - !ruby/object:Gem::Version
19
- version: '0'
20
- type: :runtime
21
- prerelease: false
22
- version_requirements: !ruby/object:Gem::Requirement
23
- requirements:
24
- - - ">="
25
- - !ruby/object:Gem::Version
26
- version: '0'
27
13
  - !ruby/object:Gem::Dependency
28
14
  name: activesupport
29
15
  requirement: !ruby/object:Gem::Requirement
@@ -206,6 +192,34 @@ dependencies:
206
192
  - - "~>"
207
193
  - !ruby/object:Gem::Version
208
194
  version: '3.0'
195
+ - !ruby/object:Gem::Dependency
196
+ name: railties
197
+ requirement: !ruby/object:Gem::Requirement
198
+ requirements:
199
+ - - ">="
200
+ - !ruby/object:Gem::Version
201
+ version: '0'
202
+ type: :development
203
+ prerelease: false
204
+ version_requirements: !ruby/object:Gem::Requirement
205
+ requirements:
206
+ - - ">="
207
+ - !ruby/object:Gem::Version
208
+ version: '0'
209
+ - !ruby/object:Gem::Dependency
210
+ name: activejob
211
+ requirement: !ruby/object:Gem::Requirement
212
+ requirements:
213
+ - - ">="
214
+ - !ruby/object:Gem::Version
215
+ version: '0'
216
+ type: :development
217
+ prerelease: false
218
+ version_requirements: !ruby/object:Gem::Requirement
219
+ requirements:
220
+ - - ">="
221
+ - !ruby/object:Gem::Version
222
+ version: '0'
209
223
  description:
210
224
  email:
211
225
  - dev@plated.com
@@ -228,10 +242,12 @@ files:
228
242
  - bin/setup
229
243
  - exe/maitredee
230
244
  - lib/maitredee.rb
245
+ - lib/maitredee/active_job.rb
231
246
  - lib/maitredee/adapters/sns_sqs_adapter.rb
232
247
  - lib/maitredee/adapters/test_adapter.rb
233
248
  - lib/maitredee/cli/runner.rb
234
249
  - lib/maitredee/publisher.rb
250
+ - lib/maitredee/railtie.rb
235
251
  - lib/maitredee/subscriber.rb
236
252
  - lib/maitredee/version.rb
237
253
  - maitredee.gemspec