zaikio-webhooks 0.0.3 → 0.0.4
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:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 27fbeb3ce67b0e03b8215f4cd2344d30b3df01630ce95ccaa14b2d511be033c7
|
4
|
+
data.tar.gz: a980c357f59e5466edca94db1128aac9c8f0188dea3de2a733fef3dcf145e6f0
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 84738f12afd7bb68e76cc82526c406c1aeb63f4ae57312a31f5ed7abc49ff9f52c7fc0391271ea1cba921dae0b6d80c3b63d379fc39a96fb4811ca7c88481cd3
|
7
|
+
data.tar.gz: 89c6e95be27de8d33c6e6b9aaef7ebe6d9bc8d732142ba5f27ec78e96dac461447aeb9c98eeae26e2f9aa5b321c2086d9cb3e83232d9a6b9a246494e92151ef8
|
@@ -5,9 +5,10 @@ module Zaikio
|
|
5
5
|
before_action :verify_signature
|
6
6
|
|
7
7
|
def receive_event
|
8
|
-
Zaikio::Webhooks.webhooks_for(params[:client_name], event_params[:name])
|
9
|
-
|
10
|
-
|
8
|
+
Zaikio::Webhooks.webhooks_for(params[:client_name], event_params[:name])
|
9
|
+
.each do |job_klass, options|
|
10
|
+
job_klass.public_send(options[:perform_now] ? :perform_now : :perform_later,
|
11
|
+
Zaikio::Webhooks::Event.new(event_params))
|
11
12
|
end
|
12
13
|
|
13
14
|
head :ok
|
data/lib/zaikio/webhooks.rb
CHANGED
@@ -30,7 +30,7 @@ module Zaikio
|
|
30
30
|
end
|
31
31
|
|
32
32
|
def webhooks_for(client_name, event_name)
|
33
|
-
(@webhooks.dig(client_name.to_s, event_name.to_s) ||
|
33
|
+
(@webhooks.dig(client_name.to_s, event_name.to_s) || {})
|
34
34
|
end
|
35
35
|
|
36
36
|
def on(event_name, job_klass, client_name: nil, perform_now: false)
|
@@ -40,10 +40,9 @@ module Zaikio
|
|
40
40
|
client_names = Array(client_name || configuration.all_client_names).map(&:to_s)
|
41
41
|
client_names.each do |name|
|
42
42
|
@webhooks[name] ||= {}
|
43
|
-
@webhooks[name][event_name.to_s] ||=
|
44
|
-
@webhooks[name][event_name.to_s]
|
45
|
-
perform_now: perform_now
|
46
|
-
job_klass: job_klass
|
43
|
+
@webhooks[name][event_name.to_s] ||= {}
|
44
|
+
@webhooks[name][event_name.to_s][job_klass] = {
|
45
|
+
perform_now: perform_now
|
47
46
|
}
|
48
47
|
end
|
49
48
|
end
|