say_when 0.2.0 → 0.2.1

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.
@@ -19,7 +19,7 @@ module SayWhen #:nodoc:
19
19
 
20
20
  def schedule_instance(next_at_method, job={})
21
21
  options = job_options(job)
22
- options[:trigger_strategy] = :scheduled
22
+ options[:trigger_strategy] = :instance
23
23
  options[:trigger_options] = {:next_at_method => next_at_method}
24
24
  Scheduler.schedule(options)
25
25
  end
@@ -0,0 +1,23 @@
1
+ require 'say_when/triggers/base'
2
+
3
+ module SayWhen
4
+ module Triggers
5
+ class InstanceStrategy
6
+
7
+ include SayWhen::Triggers::Base
8
+
9
+ attr_accessor :instance, :next_at_method
10
+
11
+ def initialize(options={})
12
+ super
13
+ @instance = @job.scheduled
14
+ @next_at_method = options[:next_at_method] || 'next_fire_at'
15
+ end
16
+
17
+ def next_fire_at(time=Time.now)
18
+ instance.send(next_at_method, time)
19
+ end
20
+
21
+ end
22
+ end
23
+ end
@@ -1,3 +1,3 @@
1
1
  module SayWhen
2
- VERSION = "0.2.0"
2
+ VERSION = "0.2.1"
3
3
  end
metadata CHANGED
@@ -1,13 +1,13 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: say_when
3
3
  version: !ruby/object:Gem::Version
4
- hash: 23
4
+ hash: 21
5
5
  prerelease:
6
6
  segments:
7
7
  - 0
8
8
  - 2
9
- - 0
10
- version: 0.2.0
9
+ - 1
10
+ version: 0.2.1
11
11
  platform: ruby
12
12
  authors:
13
13
  - Andrew Kuklewicz
@@ -19,8 +19,7 @@ date: 2012-08-15 00:00:00 Z
19
19
  dependencies:
20
20
  - !ruby/object:Gem::Dependency
21
21
  name: activemessaging
22
- prerelease: false
23
- requirement: &id001 !ruby/object:Gem::Requirement
22
+ version_requirements: &id001 !ruby/object:Gem::Requirement
24
23
  none: false
25
24
  requirements:
26
25
  - - ~>
@@ -32,11 +31,11 @@ dependencies:
32
31
  - 0
33
32
  version: 0.9.0
34
33
  type: :development
35
- version_requirements: *id001
34
+ prerelease: false
35
+ requirement: *id001
36
36
  - !ruby/object:Gem::Dependency
37
37
  name: activesupport
38
- prerelease: false
39
- requirement: &id002 !ruby/object:Gem::Requirement
38
+ version_requirements: &id002 !ruby/object:Gem::Requirement
40
39
  none: false
41
40
  requirements:
42
41
  - - ~>
@@ -48,11 +47,11 @@ dependencies:
48
47
  - 14
49
48
  version: 2.3.14
50
49
  type: :development
51
- version_requirements: *id002
50
+ prerelease: false
51
+ requirement: *id002
52
52
  - !ruby/object:Gem::Dependency
53
53
  name: activerecord
54
- prerelease: false
55
- requirement: &id003 !ruby/object:Gem::Requirement
54
+ version_requirements: &id003 !ruby/object:Gem::Requirement
56
55
  none: false
57
56
  requirements:
58
57
  - - ~>
@@ -64,11 +63,11 @@ dependencies:
64
63
  - 14
65
64
  version: 2.3.14
66
65
  type: :development
67
- version_requirements: *id003
66
+ prerelease: false
67
+ requirement: *id003
68
68
  - !ruby/object:Gem::Dependency
69
69
  name: mongoid
70
- prerelease: false
71
- requirement: &id004 !ruby/object:Gem::Requirement
70
+ version_requirements: &id004 !ruby/object:Gem::Requirement
72
71
  none: false
73
72
  requirements:
74
73
  - - ~>
@@ -80,11 +79,11 @@ dependencies:
80
79
  - 5
81
80
  version: 1.9.5
82
81
  type: :development
83
- version_requirements: *id004
82
+ prerelease: false
83
+ requirement: *id004
84
84
  - !ruby/object:Gem::Dependency
85
85
  name: rspec
86
- prerelease: false
87
- requirement: &id005 !ruby/object:Gem::Requirement
86
+ version_requirements: &id005 !ruby/object:Gem::Requirement
88
87
  none: false
89
88
  requirements:
90
89
  - - ~>
@@ -95,11 +94,11 @@ dependencies:
95
94
  - 3
96
95
  version: "1.3"
97
96
  type: :development
98
- version_requirements: *id005
97
+ prerelease: false
98
+ requirement: *id005
99
99
  - !ruby/object:Gem::Dependency
100
100
  name: sqlite3
101
- prerelease: false
102
- requirement: &id006 !ruby/object:Gem::Requirement
101
+ version_requirements: &id006 !ruby/object:Gem::Requirement
103
102
  none: false
104
103
  requirements:
105
104
  - - ">="
@@ -109,11 +108,11 @@ dependencies:
109
108
  - 0
110
109
  version: "0"
111
110
  type: :development
112
- version_requirements: *id006
111
+ prerelease: false
112
+ requirement: *id006
113
113
  - !ruby/object:Gem::Dependency
114
114
  name: rake
115
- prerelease: false
116
- requirement: &id007 !ruby/object:Gem::Requirement
115
+ version_requirements: &id007 !ruby/object:Gem::Requirement
117
116
  none: false
118
117
  requirements:
119
118
  - - ">="
@@ -123,7 +122,8 @@ dependencies:
123
122
  - 0
124
123
  version: "0"
125
124
  type: :development
126
- version_requirements: *id007
125
+ prerelease: false
126
+ requirement: *id007
127
127
  description:
128
128
  email:
129
129
  - andrew@prx.org
@@ -158,8 +158,8 @@ files:
158
158
  - lib/say_when/tasks.rb
159
159
  - lib/say_when/triggers/base.rb
160
160
  - lib/say_when/triggers/cron_strategy.rb
161
+ - lib/say_when/triggers/instance_strategy.rb
161
162
  - lib/say_when/triggers/once_strategy.rb
162
- - lib/say_when/triggers/scheduled_strategy.rb
163
163
  - lib/say_when/version.rb
164
164
  - lib/tasks/say_when.rake
165
165
  - say_when.gemspec
@@ -1,22 +0,0 @@
1
- require 'say_when/triggers/base'
2
-
3
- module SayWhen
4
- module Triggers
5
- class ScheduledStrategy
6
-
7
- include SayWhen::Triggers::Base
8
-
9
- attr_accessor :scheduled, :next_at_method
10
-
11
- def initialize(options={})
12
- @scheduled = @job.scheduled
13
- @next_at_method = options[:next_at_method] || 'next_fire_at'
14
- end
15
-
16
- def next_fire_at(time=Time.now)
17
- scheduled.send(next_at_method, time)
18
- end
19
-
20
- end
21
- end
22
- end