Sha256: 768aebe6b9b7fbacc5a2ba3fad6f49794e1fad7419f35e1309bb9956f2d54b9b

Contents?: true

Size: 936 Bytes

Versions: 3

Compression:

Stored size: 936 Bytes

Contents

require 'recommendable/engine'
require 'recommendable/helpers'
require 'recommendable/acts_as_recommended_to'
require 'recommendable/acts_as_recommendable'
require 'recommendable/exceptions'
require 'recommendable/railtie' if defined?(Rails)
require 'recommendable/version'
require 'hooks'

module Recommendable
  mattr_accessor :redis, :user_class
  mattr_writer :recommendable_classes
  
  def self.recommendable_classes
    @@recommendable_classes ||= []
  end

  def self.enqueue(user_id)
    if defined? Sidekiq
      SidekiqWorker.perform_async user_id
    elsif defined? Resque
      Resque.enqueue ResqueWorker, user_id
    elsif defined? Delayed::Job
      Delayed::Job.enqueue DelayedJobWorker.new(user_id)
    elsif defined? Rails::Queueing
      unless Rails.queue.any? { |w| w.user_id == user_id }
        Rails.queue.push RailsWorker.new(user_id)
        Rails.application.queue_consumer.start
      end
    end
  end
end

Version data entries

3 entries across 3 versions & 1 rubygems

Version Path
recommendable-1.1.3 lib/recommendable.rb
recommendable-1.1.2 lib/recommendable.rb
recommendable-1.1.1 lib/recommendable.rb