kungfuig 0.11.1 → 0.11.2
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 +4 -4
- data/lib/kungfuig/jobber.rb +13 -14
- data/lib/kungfuig/version.rb +1 -1
- metadata +1 -1
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 842d5f641c6ad83a76f2be8e4054a6f590853894
|
4
|
+
data.tar.gz: 52f463498173565cd6e244b8f0d6c6edf86e9d55
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 28c5f9fd458596e49889d3bbc61590ac0eb237f32ebcb55916b2ed0812f8a1842fb628e9a8bb58ad8950fcd2c8337ce00755fb4651d00551c7e7f45837c71c25
|
7
|
+
data.tar.gz: 47476caa2e1477bcaf33071a0b472ca493193cd4bc66d3cadfed3d6fdf322e1c4e02d9d12fb525f83ecd7bb97b005fc37ef8adcd8a7394f1e58143d23d4c3b45
|
data/lib/kungfuig/jobber.rb
CHANGED
@@ -51,7 +51,7 @@ module Kungfuig
|
|
51
51
|
redis.del(digest)
|
52
52
|
end
|
53
53
|
end
|
54
|
-
Kernel.const_get(worker).perform_async(
|
54
|
+
Kernel.const_get(worker).perform_async(atomize_keys(params.first)) if params.last > 0
|
55
55
|
end
|
56
56
|
|
57
57
|
private
|
@@ -79,13 +79,13 @@ module Kungfuig
|
|
79
79
|
@hash[c.name] && @hash[c.name][method]
|
80
80
|
end)
|
81
81
|
|
82
|
-
|
83
|
-
worker_params = { receiver:
|
82
|
+
receiver, worker = patch_receiver(receiver, receiver_class.name, method)
|
83
|
+
worker_params = { receiver: receiver, method: method, result: result, **params }
|
84
84
|
if (delay = delay(receiver_class.name, method))
|
85
85
|
Dummy.perform_async(
|
86
86
|
digest: digest(result, receiver_class.name, method),
|
87
87
|
delay: delay,
|
88
|
-
worker:
|
88
|
+
worker: worker.to_s,
|
89
89
|
worker_params: worker_params
|
90
90
|
)
|
91
91
|
else
|
@@ -101,22 +101,21 @@ module Kungfuig
|
|
101
101
|
|
102
102
|
##########################################################################
|
103
103
|
|
104
|
-
def
|
105
|
-
case receiver
|
106
|
-
|
107
|
-
|
108
|
-
|
109
|
-
|
110
|
-
|
111
|
-
end
|
104
|
+
def patch_receiver(receiver, target, name)
|
105
|
+
r = case receiver
|
106
|
+
when Hash, Array, String then receiver
|
107
|
+
when RESPOND_TO.curry[:to_hash] then receiver.to_hash
|
108
|
+
when RESPOND_TO.curry[:to_h] then receiver.to_h
|
109
|
+
else receiver
|
110
|
+
end
|
112
111
|
|
113
|
-
def patch_receiver target, name
|
114
112
|
klazz = case @hash[target][name]
|
115
113
|
when String, Symbol then @hash[target][name]
|
116
114
|
when Hash then @hash[target][name]['class']
|
117
115
|
else return
|
118
116
|
end
|
119
|
-
|
117
|
+
|
118
|
+
[r, Kernel.const_get(klazz).tap do |c|
|
120
119
|
c.send(:prepend, Kungfuig::Worker) unless c.ancestors.include? Kungfuig::Worker
|
121
120
|
end]
|
122
121
|
end
|
data/lib/kungfuig/version.rb
CHANGED