Skip to content

Commit

Permalink
[fix] using perform_async instead of delay
Browse files Browse the repository at this point in the history
  • Loading branch information
movstox committed Nov 18, 2015
1 parent fc5a529 commit a0b34a5
Show file tree
Hide file tree
Showing 2 changed files with 11 additions and 1 deletion.
7 changes: 6 additions & 1 deletion lib/wisper/sidekiq.rb
Expand Up @@ -6,7 +6,12 @@
module Wisper
class SidekiqBroadcaster
def broadcast(subscriber, publisher, event, args)
subscriber.delay.public_send(event, *args)
if subscriber.method_defined?(:perform)
subscriber.perform_async(event, args)
else
method = subscriber.respond_to?(:sidekiq_delay) ? :sidekiq_delay : :delay
subscriber.send(method).public_send(event, *args)
end
end

def self.register
Expand Down
5 changes: 5 additions & 0 deletions spec/dummy_app/subscriber.rb
@@ -1,7 +1,12 @@
class Subscriber
include Sidekiq::Worker
def self.it_happened(message)
File.open('/tmp/shared', 'w') do |file|
file.puts "pid: #{Process.pid}"
end
end

def perform(event_name, *args)
self.class.send(event_name, args)
end
end

0 comments on commit a0b34a5

Please sign in to comment.