em-jack 0.0.6 → 0.0.7

Sign up to get free protection for your applications and to get access to all the features.
data/lib/em-jack.rb CHANGED
@@ -11,6 +11,6 @@ end
11
11
 
12
12
  module EMJack
13
13
  module VERSION
14
- STRING = '0.0.6'
14
+ STRING = '0.0.7'
15
15
  end
16
16
  end
@@ -17,37 +17,37 @@ module EMJack
17
17
  def self.handlers
18
18
  @@handlers
19
19
  end
20
-
20
+
21
21
  def initialize(opts = {})
22
22
  @host = opts[:host] || 'localhost'
23
23
  @port = opts[:port] || 11300
24
24
  @tube = opts[:tube]
25
-
25
+
26
26
  @used_tube = 'default'
27
27
  @watched_tubes = ['default']
28
-
28
+
29
29
  @data = ""
30
30
  @retries = 0
31
31
  @in_reserve = false
32
32
  @deferrables = []
33
-
33
+
34
34
  @conn = EM::connect(host, port, EMJack::BeanstalkConnection) do |conn|
35
35
  conn.client = self
36
36
  end
37
-
37
+
38
38
  unless @tube.nil?
39
39
  use(@tube)
40
40
  watch(@tube)
41
41
  end
42
42
  end
43
-
43
+
44
44
  def use(tube, &blk)
45
45
  return if @used_tube == tube
46
46
  @used_tube = tube
47
47
  @conn.send(:use, tube)
48
48
  add_deferrable(&blk)
49
49
  end
50
-
50
+
51
51
  def watch(tube, &blk)
52
52
  return if @watched_tubes.include?(tube)
53
53
  @conn.send(:watch, tube)
@@ -55,7 +55,7 @@ module EMJack
55
55
  df.callback { @watched_tubes.push(tube) }
56
56
  df
57
57
  end
58
-
58
+
59
59
  def ignore(tube, &blk)
60
60
  return unless @watched_tubes.include?(tube)
61
61
  @conn.send(:ignore, tube)
@@ -114,15 +114,15 @@ module EMJack
114
114
  pri = (opts[:priority] || 65536).to_i
115
115
  pri = 65536 if pri< 0
116
116
  pri = 2 ** 32 if pri > (2 ** 32)
117
-
117
+
118
118
  delay = (opts[:delay] || 0).to_i
119
119
  delay = 0 if delay < 0
120
-
120
+
121
121
  ttr = (opts[:ttr] || 300).to_i
122
122
  ttr = 300 if ttr < 0
123
-
123
+
124
124
  m = msg.to_s
125
-
125
+
126
126
  @conn.send_with_data(:put, m, pri, delay, ttr, m.length)
127
127
  add_deferrable(&blk)
128
128
  end
@@ -160,13 +160,13 @@ module EMJack
160
160
  puts "ERROR: #{err}"
161
161
  end
162
162
  end
163
-
163
+
164
164
  df.callback &blk if block_given?
165
165
 
166
166
  @deferrables.push(df)
167
167
  df
168
168
  end
169
-
169
+
170
170
  def on_error(&blk)
171
171
  @error_callback = blk
172
172
  end
@@ -194,7 +194,7 @@ module EMJack
194
194
  body, @data = extract_body(bytes, @data) unless bytes <= 0
195
195
  break if body.nil? && bytes > 0
196
196
 
197
- handled = h.handle(df, first, body)
197
+ handled = h.handle(df, first, body, self)
198
198
  break if handled
199
199
  end
200
200
 
@@ -203,7 +203,7 @@ module EMJack
203
203
  # not handled means there wasn't enough data to process a complete response
204
204
  break unless handled
205
205
  next unless @data.index(/\r\n/)
206
-
206
+
207
207
  @data = @data[(@data.index(/\r\n/) + 2)..-1]
208
208
  @data = "" if @data.nil?
209
209
  end
@@ -219,5 +219,5 @@ module EMJack
219
219
 
220
220
  [body, data]
221
221
  end
222
- end
222
+ end
223
223
  end
@@ -7,7 +7,7 @@ module EMJack
7
7
  response =~ RESPONSE
8
8
  end
9
9
 
10
- def self.handle(deferrable, response, body)
10
+ def self.handle(deferrable, response, body, conn=nil)
11
11
  return false unless response =~ RESPONSE
12
12
 
13
13
  deferrable.fail(:buried, $1.to_i)
@@ -7,7 +7,7 @@ module EMJack
7
7
  response =~ RESPONSE
8
8
  end
9
9
 
10
- def self.handle(deferrable, response, body)
10
+ def self.handle(deferrable, response, body, conn=nil)
11
11
  return false unless response =~ RESPONSE
12
12
 
13
13
  deferrable.succeed
@@ -7,7 +7,7 @@ module EMJack
7
7
  response =~ RESPONSE
8
8
  end
9
9
 
10
- def self.handle(deferrable, response, body)
10
+ def self.handle(deferrable, response, body, conn=nil)
11
11
  return false unless response =~ RESPONSE
12
12
  deferrable.fail($1.downcase.to_sym)
13
13
  true
@@ -7,13 +7,13 @@ module EMJack
7
7
  response =~ RESPONSE
8
8
  end
9
9
 
10
- def self.handle(deferrable, response, body)
10
+ def self.handle(deferrable, response, body, conn=nil)
11
11
  return false unless response =~ RESPONSE
12
12
 
13
13
  deferrable.succeed($1.to_i)
14
14
  true
15
15
  end
16
-
16
+
17
17
  EMJack::Connection.register_handler(EMJack::Handler::Inserted)
18
18
  end
19
19
  end
@@ -6,8 +6,8 @@ module EMJack
6
6
  def self.handles?(response)
7
7
  response =~ RESPONSE
8
8
  end
9
-
10
- def self.handle(deferrable, response, body)
9
+
10
+ def self.handle(deferrable, response, body, conn=nil)
11
11
  return false unless response =~ RESPONSE
12
12
 
13
13
  deferrable.fail("Can't ignore only watched tube")
@@ -11,7 +11,7 @@ module EMJack
11
11
  end
12
12
  end
13
13
 
14
- def self.handle(deferrable, response, body)
14
+ def self.handle(deferrable, response, body, conn=nil)
15
15
  return false unless response =~ RESPONSE
16
16
  bytes = $1.to_i
17
17
 
@@ -7,13 +7,13 @@ module EMJack
7
7
  response =~ RESPONSE
8
8
  end
9
9
 
10
- def self.handle(deferrable, response, body)
10
+ def self.handle(deferrable, response, body, conn=nil)
11
11
  return false unless response =~ RESPONSE
12
12
 
13
13
  deferrable.succeed
14
14
  true
15
15
  end
16
-
16
+
17
17
  EMJack::Connection.register_handler(EMJack::Handler::Released)
18
18
  end
19
19
  end
@@ -11,12 +11,12 @@ module EMJack
11
11
  end
12
12
  end
13
13
 
14
- def self.handle(deferrable, response, body)
14
+ def self.handle(deferrable, response, body, conn)
15
15
  return false unless response =~ RESPONSE
16
16
  id = $1.to_i
17
17
  bytes = $2.to_i
18
18
 
19
- job = EMJack::Job.new(self, id, body)
19
+ job = EMJack::Job.new(conn, id, body)
20
20
  deferrable.succeed(job)
21
21
 
22
22
  true
@@ -7,7 +7,7 @@ module EMJack
7
7
  response =~ RESPONSE
8
8
  end
9
9
 
10
- def self.handle(deferrable, response, body)
10
+ def self.handle(deferrable, response, body, conn=nil)
11
11
  return false unless response =~ RESPONSE
12
12
 
13
13
  deferrable.succeed($1)
@@ -7,7 +7,7 @@ module EMJack
7
7
  response =~ RESPONSE
8
8
  end
9
9
 
10
- def self.handle(deferrable, response, body)
10
+ def self.handle(deferrable, response, body, conn=nil)
11
11
  return false unless response =~ RESPONSE
12
12
 
13
13
  deferrable.succeed($1.to_i)
metadata CHANGED
@@ -5,8 +5,8 @@ version: !ruby/object:Gem::Version
5
5
  segments:
6
6
  - 0
7
7
  - 0
8
- - 6
9
- version: 0.0.6
8
+ - 7
9
+ version: 0.0.7
10
10
  platform: ruby
11
11
  authors:
12
12
  - dan sinclair