From 58c4faf4b48043e6faef972703608aba064a09c7 Mon Sep 17 00:00:00 2001 From: Hakan Ensari Date: Mon, 4 Apr 2011 21:25:11 +0100 Subject: [PATCH] Clean up whitespace --- lib/resque-ext/job.rb | 12 +++++----- lib/resque-ext/resque.rb | 22 +++++++++---------- lib/resque-loner/helpers.rb | 10 ++++----- lib/resque-loner/unique_job.rb | 13 ++++++----- resque-loner.gemspec | 12 +++++----- spec/loner_spec.rb | 40 +++++++++++++++++----------------- 6 files changed, 55 insertions(+), 54 deletions(-) diff --git a/lib/resque-ext/job.rb b/lib/resque-ext/job.rb index 10c54e0..68db273 100644 --- a/lib/resque-ext/job.rb +++ b/lib/resque-ext/job.rb @@ -5,8 +5,8 @@ # module Resque class Job - - + + # # Overwriting original create method to mark an item as queued # after Resque::Job.create has called Resque.push @@ -18,7 +18,7 @@ def self.create_with_loner(queue, klass, *args) Resque::Plugins::Loner::Helpers.mark_loner_as_queued(queue, item) job end - + # # Overwriting original reserve method to mark an item as unqueued # @@ -27,7 +27,7 @@ def self.reserve_with_loner(queue) Resque::Plugins::Loner::Helpers.mark_loner_as_unqueued( queue, item ) if item item end - + # # Overwriting original destroy method to mark all destroyed jobs as unqueued. # Because the original method only returns the amount of jobs destroyed, but not @@ -38,7 +38,7 @@ def self.destroy_with_loner(queue, klass, *args) Resque::Plugins::Loner::Helpers.job_destroy(queue, klass, *args) destroy_without_loner(queue, klass, *args) end - + # # Chain.. # @@ -51,4 +51,4 @@ class << self alias_method :destroy, :destroy_with_loner end end -end \ No newline at end of file +end diff --git a/lib/resque-ext/resque.rb b/lib/resque-ext/resque.rb index 643a664..c01d238 100644 --- a/lib/resque-ext/resque.rb +++ b/lib/resque-ext/resque.rb @@ -1,37 +1,37 @@ module Resque - + # # Why force one job type into one queue? # def self.enqueue_to( queue, klass, *args ) Job.create(queue, klass, *args) end - + def self.dequeue_from( queue, klass, *args) Job.destroy(queue, klass, *args) end - + def self.enqueued?( klass, *args) enqueued_in?(queue_from_class(klass), klass, *args ) end - + def self.enqueued_in?(queue, klass, *args) item = { :class => klass.to_s, :args => args } return nil unless Resque::Plugins::Loner::Helpers.item_is_a_unique_job?(item) Resque::Plugins::Loner::Helpers.loner_queued?(queue, item) end - + def self.remove_queue_with_loner_cleanup(queue) self.remove_queue_without_loner_cleanup(queue) Resque::Plugins::Loner::Helpers.cleanup_loners(queue) end - - + + class << self - + alias_method :remove_queue_without_loner_cleanup, :remove_queue alias_method :remove_queue, :remove_queue_with_loner_cleanup - + end - -end \ No newline at end of file + +end diff --git a/lib/resque-loner/helpers.rb b/lib/resque-loner/helpers.rb index df64ab8..746b383 100644 --- a/lib/resque-loner/helpers.rb +++ b/lib/resque-loner/helpers.rb @@ -8,7 +8,7 @@ def self.loner_queued?(queue, item) return false unless item_is_a_unique_job?(item) redis.get(unique_job_queue_key(queue, item)) == "1" end - + def self.mark_loner_as_queued(queue, item) return unless item_is_a_unique_job?(item) redis.set(unique_job_queue_key(queue, item), 1) @@ -24,7 +24,7 @@ def self.unique_job_queue_key(queue, item) job_key = constantize(item[:class] || item["class"]).redis_key(item) "loners:queue:#{queue}:job:#{job_key}" end - + def self.item_is_a_unique_job?(item) begin klass = constantize(item[:class] || item["class"]) @@ -33,7 +33,7 @@ def self.item_is_a_unique_job?(item) false # Resque testsuite also submits strings as job classes while Resque.enqueue'ing, end # so resque-loner should not start throwing up when that happens. end - + def self.job_destroy(queue, klass, *args) klass = klass.to_s redis_queue = "queue:#{queue}" @@ -49,11 +49,11 @@ def self.job_destroy(queue, klass, *args) end end end - + def self.cleanup_loners(queue) redis.del(*redis.keys("loners:queue:#{queue}:job:*")) end - + end end end diff --git a/lib/resque-loner/unique_job.rb b/lib/resque-loner/unique_job.rb index f7ecfc8..cf5406d 100644 --- a/lib/resque-loner/unique_job.rb +++ b/lib/resque-loner/unique_job.rb @@ -7,16 +7,16 @@ module Resque module Plugins module UniqueJob - + def self.included(base) base.extend ClassMethods base.class_eval do base.send(:extend, Resque::Helpers) end end # self.included - + module ClassMethods - + # # Payload is what Resque stored for this job along with the job's class name. @@ -34,16 +34,17 @@ def redis_key(payload) digest end end # ClassMethods - - + + end end end + module Resque module Plugins module Loner class UniqueJob - + include Resque::Plugins::UniqueJob def self.inherited(host) diff --git a/resque-loner.gemspec b/resque-loner.gemspec index e94b30a..b962bcd 100644 --- a/resque-loner.gemspec +++ b/resque-loner.gemspec @@ -1,9 +1,9 @@ # -*- encoding: utf-8 -*- lib = File.expand_path('../lib/', __FILE__) $:.unshift lib unless $:.include?(lib) - + require 'resque-loner/version' - + Gem::Specification.new do |s| s.name = "resque-loner" s.version = Resque::Plugins::Loner::VERSION @@ -13,11 +13,11 @@ Gem::Specification.new do |s| s.homepage = "http://github.com/jayniz/resque-loner" s.summary = "Adds unique jobs to resque" s.has_rdoc = false - + s.rubyforge_project = "resque-loner" s.add_dependency 'resque', '~>1.0' s.add_development_dependency "rspec" - + s.files = Dir.glob("{lib}/**/*") + %w(README.markdown) s.require_path = 'lib' @@ -26,11 +26,11 @@ Makes sure that for special jobs, there can be only one job with the same worklo Example: class CacheSweeper - + include Resque::Plugins::UniqueJob @queue = :cache_sweeps - + def self.perform(article_id) # Cache Me If You Can... end diff --git a/spec/loner_spec.rb b/spec/loner_spec.rb index 1a03a18..91edbed 100644 --- a/spec/loner_spec.rb +++ b/spec/loner_spec.rb @@ -12,7 +12,7 @@ class SomeJob end class SomeUniqueJob - + include Resque::Plugins::UniqueJob @queue = :other_queue @@ -40,14 +40,14 @@ def self.perform(foo); end Resque.size(:other_queue).should == 0 Resque.size(:some_queue).should == 0 end - + describe "Jobs" do it "can put multiple normal jobs on a queue" do Resque.enqueue SomeJob, "foo" Resque.enqueue SomeJob, "foo" Resque.size(:some_queue).should == 2 end - + it "only one of the same job sits in a queue" do Resque.enqueue SomeUniqueJob, "foo" Resque.enqueue SomeUniqueJob, "foo" @@ -59,7 +59,7 @@ def self.perform(foo); end Resque.enqueue DeprecatedUniqueJob, "foo" Resque.size(:other_queue).should == 1 end - + it "should allow the same jobs to be executed one after the other" do Resque.enqueue SomeUniqueJob, "foo" Resque.enqueue SomeUniqueJob, "foo" @@ -72,19 +72,19 @@ def self.perform(foo); end Resque.enqueue SomeUniqueJob, "foo" Resque.size(:other_queue).should == 1 end - + it "should be robust regarding hash attributes" do Resque.enqueue SomeUniqueJob, :bar => 1, :foo => 2 Resque.enqueue SomeUniqueJob, :foo => 2, :bar => 1 Resque.size(:other_queue).should == 1 end - + it "should be robust regarding hash attributes (JSON does not distinguish between string and symbol)" do Resque.enqueue SomeUniqueJob, :bar => 1, :foo => 1 Resque.enqueue SomeUniqueJob, :bar => 1, "foo" => 1 Resque.size(:other_queue).should == 1 end - + it "should mark jobs as unqueued, when Job.destroy is killing them" do Resque.enqueue SomeUniqueJob, "foo" Resque.enqueue SomeUniqueJob, "foo" @@ -97,7 +97,7 @@ def self.perform(foo); end Resque.enqueue SomeUniqueJob, "foo" Resque.size(:other_queue).should == 1 end - + it "should mark jobs as unqueued, when they raise an exception during #perform" do Resque.enqueue( FailingUniqueJob, "foo" ).should == 1 Resque.enqueue( FailingUniqueJob, "foo" ).should == "EXISTED" @@ -111,7 +111,7 @@ def self.perform(foo); end Resque.enqueue( FailingUniqueJob, "foo" ).should == "EXISTED" Resque.size(:other_queue).should == 1 end - + it "should report if a job is queued or not" do Resque.enqueue SomeUniqueJob, "foo" Resque.enqueued?(SomeUniqueJob, "foo").should be_true @@ -127,36 +127,36 @@ def self.perform(foo); end it "should not be able to report if a non-unique job was enqueued" do Resque.enqueued?(SomeJob).should be_nil end - + it "should cleanup all loners when a queue is destroyed" do Resque.enqueue SomeUniqueJob, "foo" Resque.enqueue FailingUniqueJob, "foo" - + Resque.remove_queue(:other_queue) - + Resque.enqueue(SomeUniqueJob, "foo").should == 1 end - + end - + describe "Queues" do - + it "should allow for jobs to be queued in other queues than their default" do Resque.enqueue_to :yet_another_queue, SomeJob, 22 - + Resque.size(:some_queue).should == 0 Resque.size(:yet_another_queue).should ==1 end - + it "should allow for jobs to be dequeued from other queues than their default" do Resque.enqueue_to :yet_another_queue, SomeJob, 22 Resque.enqueue SomeJob, 22 - + Resque.size(:yet_another_queue).should == 1 Resque.size(:some_queue).should == 1 - + Resque.dequeue_from :yet_another_queue, SomeJob, 22 - + Resque.size(:yet_another_queue).should == 0 Resque.size(:some_queue).should == 1 end