ice_t 0.0.3 → 0.0.4
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.
- checksums.yaml +4 -4
- data/README.md +47 -7
- data/lib/ice_t/rule/weekly.rb +10 -0
- data/lib/ice_t/rule.rb +1 -0
- data/lib/ice_t/version.rb +1 -1
- data/spec/rules/weekly_rule_spec.rb +6 -0
- metadata +4 -1
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 4f45183041524f2add8f09a2a163212717bd35ca
|
4
|
+
data.tar.gz: a4aff30ce9adff183d1b5542e97cb6779fa46d99
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: e7a0453d29ab8baadd22ab916b3306c8da871d27d26aee24ec4ee8a8f7db496400f5a12f1433e6aac8e54b7da237df37f41499af71c1a0a2d26568970089fb27
|
7
|
+
data.tar.gz: ca7784d2b5274e61409d60dda498071889631629c92babada557d4d13f5b4e3703f3504cad534ef5a35f71d6311db01b7cf09dbe5861389270f08c83e94485b9
|
data/README.md
CHANGED
@@ -1,9 +1,11 @@
|
|
1
1
|
# IceT
|
2
2
|
|
3
|
+
[](http://badge.fury.io/rb/ice_t)
|
3
4
|
[](https://codeclimate.com/github/XORwell/ice_t)
|
4
5
|
[](https://travis-ci.org/XORwell/ice_t)
|
6
|
+
[](https://gemnasium.com/XORwell/ice_t)
|
5
7
|
|
6
|
-
|
8
|
+
IceT is a ruby library for handling repeated events.
|
7
9
|
|
8
10
|
## Installation
|
9
11
|
|
@@ -21,17 +23,55 @@ Or install it yourself as:
|
|
21
23
|
|
22
24
|
## Usage
|
23
25
|
|
24
|
-
|
26
|
+
### Creating rules
|
25
27
|
|
28
|
+
```ruby
|
29
|
+
rule = IceT::Rule::Secondly.new(42) # => step by 42 seconds
|
30
|
+
rule = IceT::Rule::Minutely.new(42) # => step by 42 minutes
|
31
|
+
rule = IceT::Rule::Hourly.new(42) # => step by 42 hours
|
32
|
+
rule = IceT::Rule::Daily.new(42) # => step by 42 days
|
33
|
+
rule = IceT::Rule::Weekly.new(42) # => step by 42 weeks
|
34
|
+
rule = IceT::Rule::Monthly.new(42) # => step by 42 months
|
35
|
+
rule = IceT::Rule::Yearly.new(42) # => step by 42 years
|
36
|
+
```
|
26
37
|
|
27
|
-
|
38
|
+
### Get time occurrences
|
28
39
|
|
29
|
-
|
40
|
+
```ruby
|
41
|
+
rule.occurrences # => Array of times
|
42
|
+
```
|
30
43
|
|
31
|
-
|
44
|
+
### Schedule
|
45
|
+
The Schedule helps on dealing with multiple rules.
|
32
46
|
|
33
|
-
|
47
|
+
```ruby
|
48
|
+
schedule = IceT::Schedule.new(start_time: Time.now, end_time: Time.now + 4.months)
|
49
|
+
schedule.add_rule my_daily_rule
|
50
|
+
schedule.add_rule my_monthly_rule
|
34
51
|
|
35
|
-
|
52
|
+
schedule.rules # => Array of rules
|
53
|
+
schedule.occurrences # => Merged occurrences
|
54
|
+
```
|
36
55
|
|
56
|
+
### Persistence
|
57
|
+
|
58
|
+
Lets say you want to your Schedule in your database
|
59
|
+
and use it later again. You can do this:
|
60
|
+
|
61
|
+
```ruby
|
62
|
+
json = schedule.to_json
|
63
|
+
schedule = IceT::Schedule.from_json(json)
|
64
|
+
```
|
65
|
+
|
66
|
+
## Tipps - doc in development
|
67
|
+
|
68
|
+
### Sorting rules:
|
69
|
+
|
70
|
+
[r2,r1,r3].sort.collect(&:interval)
|
71
|
+
|
72
|
+
### Comparing rules:
|
73
|
+
|
74
|
+
```ruby
|
75
|
+
IceT::Rule::Daily.new(1) < IceT::Rule::Monthly.new(1) # => true
|
76
|
+
```
|
37
77
|
r2.between?(r1, r3)
|
data/lib/ice_t/rule.rb
CHANGED
data/lib/ice_t/version.rb
CHANGED
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: ice_t
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.0.
|
4
|
+
version: 0.0.4
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Christian Nennemann
|
@@ -136,6 +136,7 @@ files:
|
|
136
136
|
- lib/ice_t/rule/monthly.rb
|
137
137
|
- lib/ice_t/rule/repository.rb
|
138
138
|
- lib/ice_t/rule/secondly.rb
|
139
|
+
- lib/ice_t/rule/weekly.rb
|
139
140
|
- lib/ice_t/rule/yearly.rb
|
140
141
|
- lib/ice_t/schedule.rb
|
141
142
|
- lib/ice_t/time_helper.rb
|
@@ -149,6 +150,7 @@ files:
|
|
149
150
|
- spec/rules/monthly_rule_spec.rb
|
150
151
|
- spec/rules/rules_repository_spec.rb
|
151
152
|
- spec/rules/secondly_rule_spec.rb
|
153
|
+
- spec/rules/weekly_rule_spec.rb
|
152
154
|
- spec/rules/yearly_rule_spec.rb
|
153
155
|
- spec/schedule_spec.rb
|
154
156
|
- spec/spec_helper.rb
|
@@ -186,6 +188,7 @@ test_files:
|
|
186
188
|
- spec/rules/monthly_rule_spec.rb
|
187
189
|
- spec/rules/rules_repository_spec.rb
|
188
190
|
- spec/rules/secondly_rule_spec.rb
|
191
|
+
- spec/rules/weekly_rule_spec.rb
|
189
192
|
- spec/rules/yearly_rule_spec.rb
|
190
193
|
- spec/schedule_spec.rb
|
191
194
|
- spec/spec_helper.rb
|