dynarex-events 0.1.3 → 0.1.5
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
- checksums.yaml.gz.sig +2 -4
- data.tar.gz.sig +0 -0
- data/lib/dynarex-events.rb +24 -14
- metadata +8 -8
- metadata.gz.sig +0 -0
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 61cdec1f0220d10ebb2eb5668ed9503d59d84b65
|
4
|
+
data.tar.gz: e80cc0cbd8f430f523193cce5bf731796bb61546
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 57a2a8d8b9c1e7ca56420ffec0b182cd74086bc5031337e6dcf077e00df0c31e80752ab0322b79bd2da39d29efed6b47ab753158c0a6e4c52f8175fe7d8ae836
|
7
|
+
data.tar.gz: bcefdb12dbeab3d261c3d4662a738ff318ce0d15aa8ae852b7bc8fa51b6f7dd0e526e2f1a4249e93458700cee06f3b2c0ff7bd7b08a368478006eaadd9c36c95
|
checksums.yaml.gz.sig
CHANGED
@@ -1,4 +1,2 @@
|
|
1
|
-
|
2
|
-
|
3
|
-
($Y�w��#P%ӕ f��Kȱ��A��|2b}�^[�����C�ݘ:��
|
4
|
-
�'��St���%��Q8ER�@�0�za9B�T:������6qI��(K8�?}�:uu�o��f{ȱ��;��M��4�=�2ʚ�~��'ǢS���GR'
|
1
|
+
r*U �E
|
2
|
+
A�i�bpm蟪V���K,�k�hw�¬�z��Z[݈lM1ht����I������灳����H���a��\a��K �<�z
|
data.tar.gz.sig
CHANGED
Binary file
|
data/lib/dynarex-events.rb
CHANGED
@@ -9,23 +9,25 @@ class DynarexEvents < DynarexCron
|
|
9
9
|
|
10
10
|
attr_reader :to_a
|
11
11
|
|
12
|
+
# options: e.g. sps_address, 'sps', drb_server: 58000
|
13
|
+
#
|
12
14
|
def initialize(dynarex_file=nil, options={})
|
13
15
|
|
14
|
-
opt = {sps_address: nil, drb_server:
|
15
|
-
|
16
|
-
@cron_events = []
|
16
|
+
opt = {sps_address: nil, drb_server: nil}.merge options
|
17
17
|
|
18
|
+
@entries, @cron_events = [], []
|
19
|
+
|
18
20
|
@dynarex_file = dynarex_file
|
19
21
|
load_events()
|
20
22
|
|
21
23
|
@sps_address = opt[:sps_address]
|
22
24
|
|
23
|
-
if opt[:drb_server]
|
24
|
-
|
25
|
+
if opt[:drb_server] then
|
26
|
+
|
25
27
|
Thread.new {
|
26
28
|
|
27
29
|
# start up the DRb service
|
28
|
-
DRb.start_service 'druby://:
|
30
|
+
DRb.start_service 'druby://:' + opt[:drb_server], self
|
29
31
|
|
30
32
|
# wait for the DRb service to finish before exiting
|
31
33
|
DRb.thread.join
|
@@ -33,11 +35,18 @@ class DynarexEvents < DynarexCron
|
|
33
35
|
end
|
34
36
|
end
|
35
37
|
|
38
|
+
def add_entry(h)
|
39
|
+
# if the entry already exists delete it
|
40
|
+
@entries.delete @entries.find {|x| x[:job] == h[:job]}
|
41
|
+
@entries << h
|
42
|
+
end
|
43
|
+
|
36
44
|
def load_events()
|
37
45
|
|
38
46
|
dynarex = Dynarex.new @dynarex_file
|
39
|
-
@entries = dynarex.to_h
|
40
|
-
@cron_events = self.to_a
|
47
|
+
@entries = dynarex.to_h || @entries
|
48
|
+
@cron_events = self.to_a if @entries
|
49
|
+
'events loaded and refreshed'
|
41
50
|
end
|
42
51
|
|
43
52
|
alias refresh load_events
|
@@ -53,13 +62,15 @@ class DynarexEvents < DynarexCron
|
|
53
62
|
end
|
54
63
|
|
55
64
|
def to_a()
|
56
|
-
|
65
|
+
|
66
|
+
return unless @entries
|
67
|
+
|
57
68
|
@entries.inject([]) do |r,h|
|
58
69
|
|
59
|
-
h[:cron] = ChronicCron.new(h[:date] + ' ' + h[:recurring])
|
60
|
-
h[:job]
|
70
|
+
h[:cron] = ChronicCron.new(h[:date] + ' ' + h[:recurring].to_s )
|
71
|
+
h[:job] ||= 'pub event: ' + h[:title]
|
61
72
|
|
62
|
-
if h[:reminder].length > 0 then
|
73
|
+
if h[:reminder].to_s.length > 0 then
|
63
74
|
rmndr = {}
|
64
75
|
rmndr[:cron] = ChronicCron.new((Chronic.parse(h[:date]) - ChronicDuration.parse(h[:reminder])).to_s)
|
65
76
|
rmndr[:job] = 'pub event: reminder ' + h[:title]
|
@@ -70,5 +81,4 @@ class DynarexEvents < DynarexCron
|
|
70
81
|
end
|
71
82
|
|
72
83
|
end
|
73
|
-
end
|
74
|
-
|
84
|
+
end
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: dynarex-events
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.1.
|
4
|
+
version: 0.1.5
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- James Robertson
|
@@ -31,34 +31,34 @@ cert_chain:
|
|
31
31
|
wC9cuVCUDZfVJ5fj3LNV2ZYGD4xDEqRa7w7DJluVaQSyYKIUqTFf7yOG5D2hu/OR
|
32
32
|
5cbgqBz0i1h9/Q==
|
33
33
|
-----END CERTIFICATE-----
|
34
|
-
date: 2013-
|
34
|
+
date: 2013-10-26 00:00:00.000000000 Z
|
35
35
|
dependencies:
|
36
36
|
- !ruby/object:Gem::Dependency
|
37
37
|
name: dynarex_cron
|
38
38
|
requirement: !ruby/object:Gem::Requirement
|
39
39
|
requirements:
|
40
|
-
- -
|
40
|
+
- - ">="
|
41
41
|
- !ruby/object:Gem::Version
|
42
42
|
version: '0'
|
43
43
|
type: :runtime
|
44
44
|
prerelease: false
|
45
45
|
version_requirements: !ruby/object:Gem::Requirement
|
46
46
|
requirements:
|
47
|
-
- -
|
47
|
+
- - ">="
|
48
48
|
- !ruby/object:Gem::Version
|
49
49
|
version: '0'
|
50
50
|
- !ruby/object:Gem::Dependency
|
51
51
|
name: chronic_duration
|
52
52
|
requirement: !ruby/object:Gem::Requirement
|
53
53
|
requirements:
|
54
|
-
- -
|
54
|
+
- - ">="
|
55
55
|
- !ruby/object:Gem::Version
|
56
56
|
version: '0'
|
57
57
|
type: :runtime
|
58
58
|
prerelease: false
|
59
59
|
version_requirements: !ruby/object:Gem::Requirement
|
60
60
|
requirements:
|
61
|
-
- -
|
61
|
+
- - ">="
|
62
62
|
- !ruby/object:Gem::Version
|
63
63
|
version: '0'
|
64
64
|
description:
|
@@ -78,12 +78,12 @@ require_paths:
|
|
78
78
|
- lib
|
79
79
|
required_ruby_version: !ruby/object:Gem::Requirement
|
80
80
|
requirements:
|
81
|
-
- -
|
81
|
+
- - ">="
|
82
82
|
- !ruby/object:Gem::Version
|
83
83
|
version: '0'
|
84
84
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
85
85
|
requirements:
|
86
|
-
- -
|
86
|
+
- - ">="
|
87
87
|
- !ruby/object:Gem::Version
|
88
88
|
version: '0'
|
89
89
|
requirements: []
|
metadata.gz.sig
CHANGED
Binary file
|