cascade 0.0.6 → 0.0.7

Sign up to get free protection for your applications and to get access to all the features.
data/lib/cascade/job.rb CHANGED
@@ -20,7 +20,7 @@ module Cascade
20
20
  include Callbacks::ClassMethods
21
21
 
22
22
  def enqueue(*args)
23
- Worker.enqueue(name, *args)
23
+ Worker.enqueue(self, *args)
24
24
  end
25
25
  end
26
26
  end
@@ -92,11 +92,21 @@ module Cascade
92
92
  completed_successully
93
93
  end
94
94
 
95
- def self.enqueue(class_name, *args)
96
- job_spec = JobSpec.new(:class_name => class_name,
95
+ def self.enqueue(job_class, *args)
96
+ priority = 1
97
+ run_at = Time.now.utc
98
+
99
+ options = args[-1]
100
+ if options.respond_to?(:keys)
101
+ priority = options.delete(:priority)
102
+ run_at = options.delete(:run_at)
103
+ args.pop if options.size == 0
104
+ end
105
+
106
+ job_spec = JobSpec.new(:class_name => job_class.name,
97
107
  :arguments => args,
98
- :run_at => Time.now.utc,
99
- :priority => 1)
108
+ :run_at => run_at,
109
+ :priority => priority)
100
110
 
101
111
  job = job_spec.job
102
112
  job.run_callbacks(:before_queue, job_spec)
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: cascade
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.6
4
+ version: 0.0.7
5
5
  prerelease:
6
6
  platform: ruby
7
7
  authors:
@@ -14,7 +14,7 @@ default_executable:
14
14
  dependencies:
15
15
  - !ruby/object:Gem::Dependency
16
16
  name: bundler
17
- requirement: &2152937380 !ruby/object:Gem::Requirement
17
+ requirement: &2157435440 !ruby/object:Gem::Requirement
18
18
  none: false
19
19
  requirements:
20
20
  - - ! '>='
@@ -22,7 +22,7 @@ dependencies:
22
22
  version: '1.0'
23
23
  type: :development
24
24
  prerelease: false
25
- version_requirements: *2152937380
25
+ version_requirements: *2157435440
26
26
  description: ''
27
27
  email: andrew@andrewtimberlake.com
28
28
  executables: []