zk-eventmachine 0.9.0 → 1.0.0
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/.gitignore +1 -1
- data/Gemfile +2 -1
- data/Rakefile +38 -13
- data/lib/z_k/z_k_event_machine/client.rb +9 -0
- data/lib/z_k/z_k_event_machine/event_handler_e_m.rb +0 -11
- data/lib/z_k/z_k_event_machine/version.rb +1 -1
- data/spec/z_k/z_k_event_machine/event_handler_e_m_spec.rb +3 -1
- data/zk-eventmachine.gemspec +2 -2
- metadata +12 -12
data/.gitignore
CHANGED
data/Gemfile
CHANGED
data/Rakefile
CHANGED
@@ -12,26 +12,51 @@ task :yard do
|
|
12
12
|
Rake::Task[:run_yardoc].invoke
|
13
13
|
end
|
14
14
|
|
15
|
-
|
16
|
-
|
17
|
-
|
18
|
-
|
19
|
-
|
20
|
-
|
21
|
-
|
22
|
-
|
15
|
+
gemset_name = 'zk-em'
|
16
|
+
|
17
|
+
%w[1.8.7 1.9.2 jruby rbx 1.9.3].each do |ns_name|
|
18
|
+
rvm_ruby = (ns_name == 'rbx') ? "rbx-2.0.testing" : ns_name
|
19
|
+
|
20
|
+
ruby_with_gemset = "#{rvm_ruby}@#{gemset_name}"
|
21
|
+
create_gemset_task_name = "mb:#{ns_name}:create_gemset"
|
22
|
+
bundle_task_name = "mb:#{ns_name}:bundle_install"
|
23
|
+
rspec_task_name = "mb:#{ns_name}:run_rspec"
|
24
|
+
|
25
|
+
phony_gemfile_link_name = "Gemfile.#{ns_name}"
|
26
|
+
phony_gemfile_lock_name = "#{phony_gemfile_link_name}.lock"
|
27
|
+
|
28
|
+
file phony_gemfile_link_name do
|
29
|
+
# apparently, rake doesn't deal with symlinks intelligently :P
|
30
|
+
ln_s('Gemfile', phony_gemfile_link_name) unless File.symlink?(phony_gemfile_link_name)
|
31
|
+
end
|
32
|
+
|
33
|
+
task :clean do
|
34
|
+
rm_rf [phony_gemfile_lock_name, phony_gemfile_lock_name]
|
35
|
+
end
|
36
|
+
|
37
|
+
task create_gemset_task_name do
|
23
38
|
sh "rvm #{rvm_ruby} do rvm gemset create #{gemset_name}"
|
24
39
|
end
|
25
40
|
|
26
|
-
task bundle_task_name =>
|
27
|
-
|
28
|
-
sh "rvm #{ruby_with_gemset} do bundle install"
|
41
|
+
task bundle_task_name => [phony_gemfile_link_name, create_gemset_task_name] do
|
42
|
+
sh "rvm #{ruby_with_gemset} do bundle install --gemfile #{phony_gemfile_link_name}"
|
29
43
|
end
|
30
44
|
|
31
45
|
task rspec_task_name => bundle_task_name do
|
32
|
-
sh "rvm #{ruby_with_gemset} do bundle exec rspec spec --fail-fast"
|
46
|
+
sh "rvm #{ruby_with_gemset} do env BUNDLE_GEMFILE=#{phony_gemfile_link_name} bundle exec rspec spec --fail-fast"
|
47
|
+
end
|
48
|
+
|
49
|
+
task "mb:#{ns_name}" => rspec_task_name
|
50
|
+
|
51
|
+
task "mb:test_all_rubies" => rspec_task_name
|
52
|
+
end
|
53
|
+
|
54
|
+
task 'mb:test_all' do
|
55
|
+
require 'benchmark'
|
56
|
+
tm = Benchmark.realtime do
|
57
|
+
Rake::Task['mb:test_all_rubies'].invoke
|
33
58
|
end
|
34
59
|
|
35
|
-
|
60
|
+
$stderr.puts "Test run took: #{tm}"
|
36
61
|
end
|
37
62
|
|
@@ -192,6 +192,15 @@ module ZK
|
|
192
192
|
@cnx.session_passwd
|
193
193
|
end
|
194
194
|
|
195
|
+
# Used by the event_handler to deliver callbacks. This hopefully won't
|
196
|
+
# have any other side-effects, as it's not happening on a separate
|
197
|
+
# thread, rather just in the next reactor tick.
|
198
|
+
#
|
199
|
+
# @private
|
200
|
+
def defer
|
201
|
+
EM.next_tick { yield }
|
202
|
+
end
|
203
|
+
|
195
204
|
protected
|
196
205
|
# @private
|
197
206
|
def register_default_event_handlers!
|
@@ -6,17 +6,6 @@ module ZK
|
|
6
6
|
class EventHandlerEM < ZK::EventHandler
|
7
7
|
include ZK::Logging
|
8
8
|
|
9
|
-
def register(path, &block)
|
10
|
-
# use the supplied block, but ensure that it gets called on the reactor
|
11
|
-
# thread
|
12
|
-
new_blk = lambda do |*a|
|
13
|
-
EM.schedule { block.call(*a) }
|
14
|
-
end
|
15
|
-
|
16
|
-
super(path, &new_blk)
|
17
|
-
end
|
18
|
-
alias :subscribe :register
|
19
|
-
|
20
9
|
def process(event)
|
21
10
|
EM.schedule { super(event) }
|
22
11
|
end
|
data/zk-eventmachine.gemspec
CHANGED
@@ -12,10 +12,10 @@ Gem::Specification.new do |s|
|
|
12
12
|
s.summary = %q{ZK client for EventMachine-based (async) applications}
|
13
13
|
s.description = s.description
|
14
14
|
|
15
|
-
s.add_dependency 'zk', '~> 0.
|
15
|
+
s.add_dependency 'zk', '~> 1.0.0'
|
16
16
|
|
17
17
|
# zk depends on slyphon-zookeeper, but we need at least this version
|
18
|
-
s.add_dependency 'slyphon-zookeeper', '~> 0.
|
18
|
+
s.add_dependency 'slyphon-zookeeper', '~> 0.9.2'
|
19
19
|
s.add_dependency 'eventmachine', '~> 1.0.0.beta.4'
|
20
20
|
s.add_dependency 'deferred', '~> 0.5.3'
|
21
21
|
|
metadata
CHANGED
@@ -1,13 +1,13 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: zk-eventmachine
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
hash:
|
4
|
+
hash: 23
|
5
5
|
prerelease:
|
6
6
|
segments:
|
7
|
+
- 1
|
7
8
|
- 0
|
8
|
-
- 9
|
9
9
|
- 0
|
10
|
-
version: 0.
|
10
|
+
version: 1.0.0
|
11
11
|
platform: ruby
|
12
12
|
authors:
|
13
13
|
- Jonathan D. Simms
|
@@ -15,7 +15,7 @@ autorequire:
|
|
15
15
|
bindir: bin
|
16
16
|
cert_chain: []
|
17
17
|
|
18
|
-
date: 2012-04-
|
18
|
+
date: 2012-04-30 00:00:00 Z
|
19
19
|
dependencies:
|
20
20
|
- !ruby/object:Gem::Dependency
|
21
21
|
name: zk
|
@@ -25,12 +25,12 @@ dependencies:
|
|
25
25
|
requirements:
|
26
26
|
- - ~>
|
27
27
|
- !ruby/object:Gem::Version
|
28
|
-
hash:
|
28
|
+
hash: 23
|
29
29
|
segments:
|
30
|
+
- 1
|
30
31
|
- 0
|
31
|
-
- 9
|
32
32
|
- 0
|
33
|
-
version: 0.
|
33
|
+
version: 1.0.0
|
34
34
|
type: :runtime
|
35
35
|
version_requirements: *id001
|
36
36
|
- !ruby/object:Gem::Dependency
|
@@ -41,12 +41,12 @@ dependencies:
|
|
41
41
|
requirements:
|
42
42
|
- - ~>
|
43
43
|
- !ruby/object:Gem::Version
|
44
|
-
hash:
|
44
|
+
hash: 63
|
45
45
|
segments:
|
46
46
|
- 0
|
47
|
-
-
|
48
|
-
-
|
49
|
-
version: 0.
|
47
|
+
- 9
|
48
|
+
- 2
|
49
|
+
version: 0.9.2
|
50
50
|
type: :runtime
|
51
51
|
version_requirements: *id002
|
52
52
|
- !ruby/object:Gem::Dependency
|
@@ -57,7 +57,7 @@ dependencies:
|
|
57
57
|
requirements:
|
58
58
|
- - ~>
|
59
59
|
- !ruby/object:Gem::Version
|
60
|
-
hash:
|
60
|
+
hash: 2603058889
|
61
61
|
segments:
|
62
62
|
- 1
|
63
63
|
- 0
|