kungfuig 0.11.1 → 0.11.2
Sign up to get free protection for your applications and to get access to all the features.
- 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