dynarex-events 0.1.10 → 0.2.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- checksums.yaml.gz.sig +2 -3
- data.tar.gz.sig +0 -0
- data/lib/dynarex-events.rb +22 -58
- metadata +35 -23
- 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: f23a3c18f13d4788548dcdd3284d3cd97eda37be
|
4
|
+
data.tar.gz: 5cd2fd02d8fa0357c2385fc965b50db3272a0e58
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: d9c5525f740c8803c125a4bc23b67eb161fc58ae86b0b892ebf0fefacd41fabeb9806fa5911f681160530f7237e53ad76d271b4008ee579c2adb00ec85618d99
|
7
|
+
data.tar.gz: 1e6c7dfc77c61f97666670f6b1cdab31ee331b02a54bed5caf1248c589ca7a1b12bff01b04bff2cbcc2d4dc513c16b05d197763e8016aded643b334ec65b9754
|
checksums.yaml.gz.sig
CHANGED
@@ -1,3 +1,2 @@
|
|
1
|
-
|
2
|
-
�
|
3
|
-
Y1&�����.V��b��`�-(t��v"+;�1�
|
1
|
+
����]����Ɗ맧X>òQA���P�w�P��?A�H;R)��U���2N~kkeO$��{~��#қ��c#&�y�ϔ}�~m���3�k}
|
2
|
+
�f~��p����u�W\xA@�&�6�������/TP�8��;{@���D��K�?eg�W�Yx4�}B$�h�x%�"��?����4�\nڨ��Z����Ë�yA� �����&_(����U��.� N��&��n���O4]r�,Pdn���҈��g�
|
data.tar.gz.sig
CHANGED
Binary file
|
data/lib/dynarex-events.rb
CHANGED
@@ -10,48 +10,25 @@ class DynarexEvents < DynarexCron
|
|
10
10
|
|
11
11
|
attr_reader :to_a
|
12
12
|
|
13
|
-
# options: e.g. sps_address: 'sps', drb_port: 58000
|
14
|
-
#
|
15
13
|
def initialize(dynarex_file=nil, options={})
|
16
14
|
|
17
|
-
opt = {sps_address: nil,
|
18
|
-
|
19
|
-
@
|
20
|
-
@
|
21
|
-
|
22
|
-
@
|
15
|
+
opt = {sps_address: nil, time_offset: 0}.merge options
|
16
|
+
|
17
|
+
@time_offset = opt[:time_offset]
|
18
|
+
@cron_events = []
|
19
|
+
|
20
|
+
@dynarex_file = dynarex_file
|
23
21
|
load_events()
|
24
22
|
|
25
|
-
@sps_address
|
23
|
+
@sps_address = opt[:sps_address]
|
26
24
|
|
27
|
-
if opt[:drb_port] then
|
28
|
-
|
29
|
-
Thread.new {
|
30
|
-
|
31
|
-
# start up the DRb service
|
32
|
-
DRb.start_service 'druby://:' + opt[:drb_port], self
|
33
|
-
|
34
|
-
# wait for the DRb service to finish before exiting
|
35
|
-
DRb.thread.join
|
36
|
-
}
|
37
|
-
end
|
38
25
|
end
|
39
26
|
|
40
|
-
def add_entry(h)
|
41
|
-
# if the entry already exists delete it
|
42
|
-
@other_entries.delete @other_entries.find {|x| x[:job] == h[:job]}
|
43
|
-
@other_entries << h
|
44
|
-
self.refresh
|
45
|
-
'updated and refreshed'
|
46
|
-
end
|
47
|
-
|
48
27
|
def load_events()
|
49
28
|
|
50
|
-
dynarex =
|
51
|
-
@entries =
|
52
|
-
|
53
|
-
@cron_events = self.to_a if @entries
|
54
|
-
'events loaded and refreshed'
|
29
|
+
dynarex = Dynarex.new @dynarex_file
|
30
|
+
@entries = dynarex.to_h
|
31
|
+
@cron_events = self.to_a
|
55
32
|
end
|
56
33
|
|
57
34
|
alias refresh load_events
|
@@ -62,36 +39,23 @@ class DynarexEvents < DynarexCron
|
|
62
39
|
puts '[' + Time.now.strftime(DF) + '] DynarexEvents started'
|
63
40
|
params = {uri: "ws://%s:%s" % [@sps_address, @sps_port]}
|
64
41
|
|
65
|
-
|
66
|
-
|
67
|
-
|
68
|
-
EventMachine.run do
|
69
|
-
|
70
|
-
@ws = c.connect(params)
|
71
|
-
|
72
|
-
EM.add_periodic_timer(60) do
|
73
|
-
iterate @cron_events
|
74
|
-
end
|
75
|
-
|
76
|
-
end
|
77
|
-
end
|
42
|
+
RunEvery.new(seconds: 60) { iterate @cron_events }
|
43
|
+
|
44
|
+
end
|
78
45
|
|
79
46
|
def to_a()
|
80
|
-
|
81
|
-
return unless @entries
|
82
|
-
|
47
|
+
|
83
48
|
@entries.inject([]) do |r,h|
|
84
49
|
|
85
|
-
|
86
|
-
|
87
|
-
|
88
|
-
h[:cron] = ChronicCron.new(s)
|
89
|
-
h[:job] ||= 'pub event: ' + h[:title]
|
50
|
+
time = Time.now + @time_offset
|
51
|
+
h[:cron] = ChronicCron.new(h[:date], time)
|
52
|
+
h[:fqm] = 'event: ' + h[:title]
|
90
53
|
|
91
|
-
if h[:reminder].
|
54
|
+
if h[:reminder].length > 0 then
|
92
55
|
rmndr = {}
|
93
|
-
rmndr[:cron] = ChronicCron.new((Chronic.parse(h[:date]) -
|
94
|
-
|
56
|
+
rmndr[:cron] = ChronicCron.new((Chronic.parse(h[:date]) -
|
57
|
+
ChronicDuration.parse(h[:reminder])).to_s, time)
|
58
|
+
rmndr[:fqm] = 'event: reminder ' + h[:title]
|
95
59
|
r << rmndr
|
96
60
|
end
|
97
61
|
|
@@ -99,4 +63,4 @@ class DynarexEvents < DynarexCron
|
|
99
63
|
end
|
100
64
|
|
101
65
|
end
|
102
|
-
end
|
66
|
+
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.
|
4
|
+
version: 0.2.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- James Robertson
|
@@ -12,55 +12,67 @@ cert_chain:
|
|
12
12
|
-----BEGIN CERTIFICATE-----
|
13
13
|
MIIDljCCAn6gAwIBAgIBATANBgkqhkiG9w0BAQUFADBIMRIwEAYDVQQDDAlnZW1t
|
14
14
|
YXN0ZXIxHjAcBgoJkiaJk/IsZAEZFg5qYW1lc3JvYmVydHNvbjESMBAGCgmSJomT
|
15
|
-
|
15
|
+
8ixkARkWAmV1MB4XDTE1MDMwNzE0MzQ0MVoXDTE2MDMwNjE0MzQ0MVowSDESMBAG
|
16
16
|
A1UEAwwJZ2VtbWFzdGVyMR4wHAYKCZImiZPyLGQBGRYOamFtZXNyb2JlcnRzb24x
|
17
17
|
EjAQBgoJkiaJk/IsZAEZFgJldTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoC
|
18
|
-
|
19
|
-
|
20
|
-
|
21
|
-
|
22
|
-
|
23
|
-
|
24
|
-
|
18
|
+
ggEBAN1MIH3J0SuaLObRLKy0rUhhbuTYsdELDt/H0ZWGJfTJ8wrOnJyFnpsq2U6l
|
19
|
+
0Wp+wNHtr8/sPquHsx0YR5iLjfWd8fekgu5imdgu99wss3m/o0uz2c7K5JfdMbED
|
20
|
+
SZZBYE+oQ0gsyI+2EJTv+aoZ7h3qDFe6ijNjZgUPnnJ7C57Zz9DbEFa7JTMLKQOU
|
21
|
+
qP/yNuvkYZRLDEYC8hl9rmt+1RK/q5+o1aj31ZyJk/iUc7uBY72VFIojG/AeggcT
|
22
|
+
dz9G77oiKZNheP+aTyn5dUMR3vbxbv6EX0mvYCam7hC43ltL6LstrWk1U88OMwjU
|
23
|
+
0zcb7LbDIPYnqsMlRkHdRwHX9iMCAwEAAaOBijCBhzAJBgNVHRMEAjAAMAsGA1Ud
|
24
|
+
DwQEAwIEsDAdBgNVHQ4EFgQUn7hwdiAW/RHf6NNw1qKB/YTuEIkwJgYDVR0RBB8w
|
25
25
|
HYEbZ2VtbWFzdGVyQGphbWVzcm9iZXJ0c29uLmV1MCYGA1UdEgQfMB2BG2dlbW1h
|
26
|
-
|
27
|
-
|
28
|
-
|
29
|
-
|
30
|
-
|
31
|
-
|
32
|
-
|
26
|
+
c3RlckBqYW1lc3JvYmVydHNvbi5ldTANBgkqhkiG9w0BAQUFAAOCAQEAZKFJoC9b
|
27
|
+
+VZ8vZRqqjTEFCxu2PNwJ8cABLF8gKWM3fOz6CPMITc+7xowrd+Wtb431YHSsdXi
|
28
|
+
/BuYR5sH03P3EDJyYhD4gyeNok8vOvFKMqzHpGcjFXTvzvNWHXOXEUhHNbcHcsYr
|
29
|
+
isqH/60S0As85Ztl6bXZs5Ei4r3j2lRTEdnERiwRz8UAVB3MGWxf0ViCp92zUn+7
|
30
|
+
061OkGXcpG3HyNMRm2bgN0QxAfhPuaIQdV1aH9W9pl3iDykvV5gMZ3qMZFBHnUJa
|
31
|
+
Lhu2O91sSTZY1VrPbu7LmXJn0ukb1vBaqY9Lm/jkTIMIDsZLrYqpwifvoeuJRVwT
|
32
|
+
4XYKZsUT0eBjuA==
|
33
33
|
-----END CERTIFICATE-----
|
34
|
-
date:
|
34
|
+
date: 2015-03-07 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
|
+
- - "~>"
|
41
|
+
- !ruby/object:Gem::Version
|
42
|
+
version: '0.5'
|
40
43
|
- - ">="
|
41
44
|
- !ruby/object:Gem::Version
|
42
|
-
version:
|
45
|
+
version: 0.5.3
|
43
46
|
type: :runtime
|
44
47
|
prerelease: false
|
45
48
|
version_requirements: !ruby/object:Gem::Requirement
|
46
49
|
requirements:
|
50
|
+
- - "~>"
|
51
|
+
- !ruby/object:Gem::Version
|
52
|
+
version: '0.5'
|
47
53
|
- - ">="
|
48
54
|
- !ruby/object:Gem::Version
|
49
|
-
version:
|
55
|
+
version: 0.5.3
|
50
56
|
- !ruby/object:Gem::Dependency
|
51
57
|
name: chronic_duration
|
52
58
|
requirement: !ruby/object:Gem::Requirement
|
53
59
|
requirements:
|
60
|
+
- - "~>"
|
61
|
+
- !ruby/object:Gem::Version
|
62
|
+
version: '0.10'
|
54
63
|
- - ">="
|
55
64
|
- !ruby/object:Gem::Version
|
56
|
-
version:
|
65
|
+
version: 0.10.4
|
57
66
|
type: :runtime
|
58
67
|
prerelease: false
|
59
68
|
version_requirements: !ruby/object:Gem::Requirement
|
60
69
|
requirements:
|
70
|
+
- - "~>"
|
71
|
+
- !ruby/object:Gem::Version
|
72
|
+
version: '0.10'
|
61
73
|
- - ">="
|
62
74
|
- !ruby/object:Gem::Version
|
63
|
-
version:
|
75
|
+
version: 0.10.4
|
64
76
|
description:
|
65
77
|
email: james@r0bertson.co.uk
|
66
78
|
executables: []
|
@@ -80,7 +92,7 @@ required_ruby_version: !ruby/object:Gem::Requirement
|
|
80
92
|
requirements:
|
81
93
|
- - ">="
|
82
94
|
- !ruby/object:Gem::Version
|
83
|
-
version:
|
95
|
+
version: 2.1.2
|
84
96
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
85
97
|
requirements:
|
86
98
|
- - ">="
|
@@ -88,7 +100,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
88
100
|
version: '0'
|
89
101
|
requirements: []
|
90
102
|
rubyforge_project:
|
91
|
-
rubygems_version: 2.
|
103
|
+
rubygems_version: 2.2.2
|
92
104
|
signing_key:
|
93
105
|
specification_version: 4
|
94
106
|
summary: dynarex-events
|
metadata.gz.sig
CHANGED
Binary file
|