em-resque 1.0.0.beta3 → 1.0.0.beta4

Sign up to get free protection for your applications and to get access to all the features.
@@ -1,5 +1,5 @@
1
1
  module EventMachine
2
2
  module Resque
3
- Version = VERSION = '1.0.0.beta3'
3
+ Version = VERSION = '1.0.0.beta4'
4
4
  end
5
5
  end
@@ -33,7 +33,7 @@ module EventMachine
33
33
  @verbose = opts[:logging] || opts[:verbose] || false
34
34
  @very_verbose = opts[:vverbose] || false
35
35
  @pidfile = opts[:pidfile]
36
- @redis = opts[:redis].split('/', 3).last.split(':') if opts[:redis]
36
+ @redis = opts[:redis]
37
37
 
38
38
  raise(ArgumentError, "Should have at least one fiber") if @fibers_count.to_i < 1
39
39
 
@@ -47,7 +47,7 @@ module EventMachine
47
47
  # Start the machine and start polling queues.
48
48
  def start
49
49
  EM.synchrony do
50
- EM::Resque.redis = EM::Protocols::Redis.connect(:host => @redis[0], :port => @redis[1])
50
+ EM::Resque.redis = redis_instance(@redis)
51
51
  @fibers.each(&:resume)
52
52
  system_monitor.resume
53
53
  end
@@ -116,6 +116,28 @@ module EventMachine
116
116
  def create_pidfile
117
117
  File.open(@pidfile, 'w') { |f| f << @workers.first.pid } if @pidfile
118
118
  end
119
+
120
+ def redis_instance(server)
121
+ case server
122
+ when String
123
+ if server =~ /redis\:\/\//
124
+ host, port = server.split('/', 3).last.split(':')
125
+ redis = EM::Protocols::Redis.connect(:host => host, :port => port, :thread_safe => true)
126
+ else
127
+ server, namespace = server.split('/', 2)
128
+ host, port, db = server.split(':')
129
+ redis = EM::Protocols::Redis.new(:host => host, :port => port,
130
+ :thread_safe => true, :db => db)
131
+ end
132
+ namespace ||= :resque
133
+
134
+ Redis::Namespace.new(namespace, :redis => redis)
135
+ when Redis::Namespace
136
+ server
137
+ else
138
+ Redis::Namespace.new(:resque, :redis => server)
139
+ end
140
+ end
119
141
  end
120
142
  end
121
143
  end
data/lib/em-resque.rb CHANGED
@@ -3,25 +3,4 @@ require 'em-synchrony/em-redis'
3
3
 
4
4
  module EM::Resque
5
5
  extend Resque
6
- def redis=(server)
7
- case server
8
- when String
9
- if server =~ /redis\:\/\//
10
- host, port = server.split('/', 3).last.split(':')
11
- redis = EM::Protocols::Redis.connect(:host => host, :port => port)
12
- else
13
- server, namespace = server.split('/', 2)
14
- host, port, db = server.split(':')
15
- redis = EM::Protocols::Redis.new(:host => host, :port => port,
16
- :thread_safe => true, :db => db)
17
- end
18
- namespace ||= :resque
19
-
20
- @redis = Redis::Namespace.new(namespace, :redis => redis)
21
- when Redis::Namespace
22
- @redis = server
23
- else
24
- @redis = Redis::Namespace.new(:resque, :redis => server)
25
- end
26
- end
27
6
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: em-resque
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.0.0.beta3
4
+ version: 1.0.0.beta4
5
5
  prerelease: 6
6
6
  platform: ruby
7
7
  authors:
@@ -13,7 +13,7 @@ date: 2012-01-12 00:00:00.000000000 Z
13
13
  dependencies:
14
14
  - !ruby/object:Gem::Dependency
15
15
  name: resque
16
- requirement: &13289380 !ruby/object:Gem::Requirement
16
+ requirement: &19367640 !ruby/object:Gem::Requirement
17
17
  none: false
18
18
  requirements:
19
19
  - - ~>
@@ -21,10 +21,10 @@ dependencies:
21
21
  version: 1.19.0
22
22
  type: :runtime
23
23
  prerelease: false
24
- version_requirements: *13289380
24
+ version_requirements: *19367640
25
25
  - !ruby/object:Gem::Dependency
26
26
  name: em-synchrony
27
- requirement: &13288720 !ruby/object:Gem::Requirement
27
+ requirement: &19366960 !ruby/object:Gem::Requirement
28
28
  none: false
29
29
  requirements:
30
30
  - - ~>
@@ -32,10 +32,10 @@ dependencies:
32
32
  version: 1.0.0
33
33
  type: :runtime
34
34
  prerelease: false
35
- version_requirements: *13288720
35
+ version_requirements: *19366960
36
36
  - !ruby/object:Gem::Dependency
37
37
  name: em-redis
38
- requirement: &13288200 !ruby/object:Gem::Requirement
38
+ requirement: &19366480 !ruby/object:Gem::Requirement
39
39
  none: false
40
40
  requirements:
41
41
  - - ! '>='
@@ -43,7 +43,7 @@ dependencies:
43
43
  version: '0'
44
44
  type: :runtime
45
45
  prerelease: false
46
- version_requirements: *13288200
46
+ version_requirements: *19366480
47
47
  description: ! " Em-resque is a version of Resque, which offers non-blocking and
48
48
  non-forking\n workers. The idea is to have fast as possible workers for tasks
49
49
  with lots of\n IO like pinging third party servers or hitting the database.\n\n