class Textris::Delay::Sidekiq::Proxy

Public Class Methods

new(texter, options = {}) click to toggle source
# File lib/textris/delay/sidekiq/proxy.rb, line 5
def initialize(texter, options = {})
  @texter     = texter
  @perform_in = options[:perform_in]
  @perform_at = options[:perform_at]
end

Public Instance Methods

method_missing(method_name, *args) click to toggle source
# File lib/textris/delay/sidekiq/proxy.rb, line 11
def method_missing(method_name, *args)
  args = ::Textris::Delay::Sidekiq::Serializer.serialize(args)
  args = [@texter, method_name, args]

  if @perform_in
    ::Textris::Delay::Sidekiq::Worker.perform_in(@perform_in, *args)
  elsif @perform_at
    ::Textris::Delay::Sidekiq::Worker.perform_at(@perform_at, *args)
  else
    ::Textris::Delay::Sidekiq::Worker.perform_async(*args)
  end
end