Sha256: 4cbab2cc6c2a42dde4a5a309d405f50e2c435011fb256429191789c30ce37a54

Contents?: true

Size: 534 Bytes

Versions: 1

Compression:

Stored size: 534 Bytes

Contents

module ThinkingSphinx
  module Deltas
    class Job < Delayed::Job
      def self.enqueue(object, priority = 0)
        super unless duplicates_exist(object)
      end
      
      def self.cancel_thinking_sphinx_jobs
        delete_all("handler LIKE '--- !ruby/object:ThinkingSphinx::Deltas::%'")
      end

      private

      def self.duplicates_exist(object)
        count(
          :conditions => {
            :handler    => object.to_yaml,
            :locked_at  => nil
          }
        ) > 0
      end
    end
  end
end

Version data entries

1 entries across 1 versions & 1 rubygems

Version Path
freelancing-god-thinking-sphinx-1.1.0 lib/thinking_sphinx/deltas/delayed_delta/job.rb