magent 0.5.0 → 0.5.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.
data/VERSION CHANGED
@@ -1 +1 @@
1
- 0.5.0
1
+ 0.5.1
@@ -1,14 +1,12 @@
1
1
  module Magent
2
2
  class WebSocketChannel < Magent::GenericChannel
3
3
  def self.push(message)
4
-
5
4
  self.instance.enqueue(message)
6
-
7
5
  self.instance
8
6
  end
9
7
 
10
- def self.next_message
11
- self.instance.next_message
8
+ def self.dequeue
9
+ self.instance.dequeue
12
10
  end
13
11
 
14
12
  def self.instance
@@ -12,14 +12,15 @@ module Magent
12
12
  @channel_ids = {}
13
13
  @sids = {}
14
14
 
15
+ EM.run do
15
16
  EventMachine.add_periodic_timer(options.delete(:interval)||10) do
16
- while v = Magent::WebSocketChannel.next_message
17
- message = v["message"]
18
- if message && (channel = @channels[message["channel_id"]])
17
+ while message = Magent::WebSocketChannel.dequeue
18
+ if (channel = @channels[message["channel_id"]])
19
19
  channel.push(message.to_json)
20
20
  end
21
21
  end
22
22
  end
23
+ end
23
24
 
24
25
  EventMachine::WebSocket.start(options) do |ws|
25
26
  ws.onopen do
@@ -92,4 +93,4 @@ module Magent
92
93
  "Guest #{sid}"
93
94
  end
94
95
  end # Class
95
- end
96
+ end
data/magent.gemspec CHANGED
@@ -5,11 +5,11 @@
5
5
 
6
6
  Gem::Specification.new do |s|
7
7
  s.name = %q{magent}
8
- s.version = "0.5.0"
8
+ s.version = "0.5.1"
9
9
 
10
10
  s.required_rubygems_version = Gem::Requirement.new(">= 0") if s.respond_to? :required_rubygems_version=
11
11
  s.authors = ["David A. Cuadrado"]
12
- s.date = %q{2010-10-15}
12
+ s.date = %q{2010-10-17}
13
13
  s.default_executable = %q{magent}
14
14
  s.description = %q{Simple job queue system based on mongodb}
15
15
  s.email = %q{krawek@gmail.com}
metadata CHANGED
@@ -1,13 +1,12 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: magent
3
3
  version: !ruby/object:Gem::Version
4
- hash: 11
5
4
  prerelease: false
6
5
  segments:
7
6
  - 0
8
7
  - 5
9
- - 0
10
- version: 0.5.0
8
+ - 1
9
+ version: 0.5.1
11
10
  platform: ruby
12
11
  authors:
13
12
  - David A. Cuadrado
@@ -15,7 +14,7 @@ autorequire:
15
14
  bindir: bin
16
15
  cert_chain: []
17
16
 
18
- date: 2010-10-15 00:00:00 -05:00
17
+ date: 2010-10-17 00:00:00 -05:00
19
18
  default_executable: magent
20
19
  dependencies:
21
20
  - !ruby/object:Gem::Dependency
@@ -26,7 +25,6 @@ dependencies:
26
25
  requirements:
27
26
  - - ">="
28
27
  - !ruby/object:Gem::Version
29
- hash: 3
30
28
  segments:
31
29
  - 0
32
30
  version: "0"
@@ -40,7 +38,6 @@ dependencies:
40
38
  requirements:
41
39
  - - ">="
42
40
  - !ruby/object:Gem::Version
43
- hash: 3
44
41
  segments:
45
42
  - 0
46
43
  version: "0"
@@ -54,7 +51,6 @@ dependencies:
54
51
  requirements:
55
52
  - - ">="
56
53
  - !ruby/object:Gem::Version
57
- hash: 3
58
54
  segments:
59
55
  - 0
60
56
  version: "0"
@@ -68,7 +64,6 @@ dependencies:
68
64
  requirements:
69
65
  - - ">="
70
66
  - !ruby/object:Gem::Version
71
- hash: 3
72
67
  segments:
73
68
  - 0
74
69
  version: "0"
@@ -134,7 +129,6 @@ required_ruby_version: !ruby/object:Gem::Requirement
134
129
  requirements:
135
130
  - - ">="
136
131
  - !ruby/object:Gem::Version
137
- hash: 3
138
132
  segments:
139
133
  - 0
140
134
  version: "0"
@@ -143,7 +137,6 @@ required_rubygems_version: !ruby/object:Gem::Requirement
143
137
  requirements:
144
138
  - - ">="
145
139
  - !ruby/object:Gem::Version
146
- hash: 3
147
140
  segments:
148
141
  - 0
149
142
  version: "0"