rufus-scheduler 2.0.2 → 2.0.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
data/CHANGELOG.txt CHANGED
@@ -2,7 +2,13 @@
2
2
  = rufus-scheduler CHANGELOG.txt
3
3
 
4
4
 
5
- == rufus-scheduler - 2.0.2 not yet released
5
+ == rufus-scheduler - 2.0.3 not yet released
6
+
7
+ - made sure Schedulables with a call(job) method were OK when passed as second
8
+ parameter (thanks Nate Wiger)
9
+
10
+
11
+ == rufus-scheduler - 2.0.2 released 2009/10/31
6
12
 
7
13
  - unified JobQueue and CronJobQueue, and handed @last_second management to the
8
14
  latter
data/CREDITS.txt CHANGED
@@ -10,6 +10,7 @@
10
10
 
11
11
  == Feedback
12
12
 
13
+ - Nate Wiger (Schedulable call/trigger issue)
13
14
  - Aldric (readme errors)
14
15
  - Kenneth Kalmer (daemon-kit)
15
16
  - Chris Evans, :timeout tests on JRuby
data/README.rdoc CHANGED
@@ -21,7 +21,7 @@ http://github.com/hpoydar/chronic_duration
21
21
 
22
22
  == installation
23
23
 
24
- sudo gem install rufus-scheduler
24
+ sudo gem install rufus-scheduler --source http://gemcutter.org
25
25
 
26
26
 
27
27
  == usage
@@ -69,6 +69,29 @@ Note that is there is EventMachine present and running,
69
69
  will return an instance of Rufus::Scheduler::EmScheduler (leveraging EventMachine).
70
70
 
71
71
 
72
+ == scheduler.join
73
+
74
+ Note that if you have a tiny script like this one :
75
+
76
+ require 'rubygems'; require 'rufus-scheduler'
77
+
78
+ scheduler = Rufus::Scheduler.start_new
79
+
80
+ scheduler.at 'Thu Mar 26 07:31:43 +0900 2009' do
81
+ puts 'order pizza'
82
+ end
83
+
84
+ And you run it, it will exit immediately.
85
+
86
+ If you place
87
+
88
+ scheduler.join
89
+
90
+ at then end of it will make the current (main) thread join the scheduler and prevent the Ruby runtime from exiting.
91
+
92
+ You shouldn't be exposed to this issue when using EventMachine, since while running EM, your runtime won't exit.
93
+
94
+
72
95
  == block parameters
73
96
 
74
97
  Scheduled blocks accept 0 or 1 parameter (this unique parameter is the job
@@ -179,6 +202,16 @@ Sometimes passing a block isn't that convenient :
179
202
 
180
203
  rufus-scheduler accepts anything that responds to a call method with a unique parameter (it will pass the job) as a 'schedulable'.
181
204
 
205
+ For compatibility with older (1.x) versions, schedulables with a trigger methods are accepted :
206
+
207
+ class JobThing
208
+ def trigger (params)
209
+ job = params[:job]
210
+ end
211
+ end
212
+
213
+ The 'params' correspond to the scheduler job params, and the key :job points to the rufus-scheduler job for the schedulable that is passed to a 'call schedulable'.
214
+
182
215
 
183
216
  == looking up jobs
184
217
 
data/lib/rufus/sc/jobs.rb CHANGED
@@ -41,7 +41,6 @@ module Scheduler
41
41
 
42
42
  # When the job is actually running, this attribute will hold the
43
43
  # thread in which the job is running.
44
- # Can be used to determine if a job is actually running.
45
44
  #
46
45
  attr_reader :job_thread
47
46
 
@@ -33,7 +33,7 @@ module Rufus::Scheduler
33
33
 
34
34
  # This gem's version
35
35
  #
36
- VERSION = '2.0.2'
36
+ VERSION = '2.0.3'
37
37
 
38
38
  #
39
39
  # It's OK to pass an object responding to :trigger when scheduling a job
@@ -265,7 +265,7 @@ module Rufus::Scheduler
265
265
 
266
266
  def combine_opts (schedulable, opts)
267
267
 
268
- if schedulable.respond_to?(:trigger)
268
+ if schedulable.respond_to?(:trigger) || schedulable.respond_to?(:call)
269
269
 
270
270
  opts[:schedulable] = schedulable
271
271
 
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: rufus-scheduler
3
3
  version: !ruby/object:Gem::Version
4
- version: 2.0.2
4
+ version: 2.0.3
5
5
  platform: ruby
6
6
  authors:
7
7
  - John Mettraux
@@ -9,11 +9,11 @@ autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
11
 
12
- date: 2009-10-28 00:00:00 +09:00
12
+ date: 2009-11-05 00:00:00 +09:00
13
13
  default_executable:
14
14
  dependencies: []
15
15
 
16
- description:
16
+ description: "\n job scheduler for Ruby (at, cron, in and every jobs).\n\n By default uses a Ruby thread, if EventMachine is present, it will rely on it.\n "
17
17
  email: jmettraux@gmail.com
18
18
  executables: []
19
19
 
@@ -39,7 +39,7 @@ files:
39
39
  - TODO.txt
40
40
  - README.rdoc
41
41
  has_rdoc: true
42
- homepage: http://rufus.rubyforge.org/
42
+ homepage: http://github.com/jmettraux/rufus-scheduler
43
43
  licenses: []
44
44
 
45
45
  post_install_message: