sonixlabs-eventmachine-java 1.0.0.rc.7-java → 1.0.3.1-java
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.
- checksums.yaml +4 -12
- data/.travis.yml +12 -0
- data/CHANGELOG.md +33 -0
- data/Gemfile +0 -1
- data/README.md +2 -2
- data/README_JP.md +10 -2
- data/eventmachine.gemspec +10 -7
- data/ext/binder.cpp +1 -1
- data/ext/cmain.cpp +11 -0
- data/ext/ed.cpp +22 -7
- data/ext/ed.h +5 -5
- data/ext/em.cpp +64 -66
- data/ext/em.h +10 -5
- data/ext/eventmachine.h +1 -0
- data/ext/extconf.rb +4 -3
- data/ext/fastfilereader/extconf.rb +1 -1
- data/ext/rubymain.cpp +22 -1
- data/ext/ssl.cpp +1 -1
- data/java/.classpath +1 -3
- data/java/.gitignore +1 -0
- data/java/src/com/rubyeventmachine/DatagramPacket.java +13 -0
- data/java/src/com/rubyeventmachine/EmReactor.java +502 -561
- data/java/src/com/rubyeventmachine/EventCallback.java +7 -0
- data/java/src/com/rubyeventmachine/EventCode.java +26 -0
- data/java/src/com/rubyeventmachine/EventableChannel.java +102 -42
- data/java/src/com/rubyeventmachine/EventableDatagramChannel.java +146 -161
- data/java/src/com/rubyeventmachine/EventableSocketChannel.java +371 -334
- data/java/src/com/rubyeventmachine/SslBox.java +310 -0
- data/lib/em/iterator.rb +5 -44
- data/lib/em/processes.rb +1 -1
- data/lib/em/protocols/httpclient.rb +2 -2
- data/lib/em/protocols/line_protocol.rb +2 -2
- data/lib/em/protocols/smtpclient.rb +1 -1
- data/lib/em/protocols/smtpserver.rb +10 -7
- data/lib/em/protocols/stomp.rb +5 -2
- data/lib/em/protocols.rb +1 -0
- data/lib/em/version.rb +1 -1
- data/lib/eventmachine.rb +35 -14
- data/lib/jeventmachine.rb +65 -18
- data/rakelib/package.rake +15 -18
- data/tests/server.crt +36 -0
- data/tests/server.key +51 -0
- data/tests/test_attach.rb +24 -0
- data/tests/test_connection_count.rb +21 -1
- data/tests/test_epoll.rb +15 -0
- data/tests/test_httpclient2.rb +5 -0
- data/tests/test_idle_connection.rb +6 -4
- data/tests/test_iterator.rb +97 -0
- data/tests/test_line_protocol.rb +33 -0
- data/tests/test_pause.rb +24 -0
- data/tests/test_set_sock_opt.rb +1 -1
- data/tests/test_ssl_echo_data.rb +60 -0
- data/tests/test_ssl_methods.rb +15 -7
- data/tests/test_ssl_verify.rb +4 -4
- data/tests/test_stomp.rb +37 -0
- data/tests/test_system.rb +42 -0
- metadata +45 -42
- data/lib/rubyeventmachine.jar +0 -0
data/tests/test_ssl_methods.rb
CHANGED
@@ -1,29 +1,37 @@
|
|
1
1
|
require 'em_test_helper'
|
2
2
|
|
3
3
|
class TestSSLMethods < Test::Unit::TestCase
|
4
|
+
def setup
|
5
|
+
$dir = File.dirname(File.expand_path(__FILE__)) + '/'
|
6
|
+
$client_cert_from_file = File.read($dir+'client.crt')
|
7
|
+
$server_cert_from_file = File.read($dir+'server.crt')
|
8
|
+
end
|
4
9
|
|
5
10
|
module ServerHandler
|
6
11
|
|
7
12
|
def post_init
|
8
|
-
start_tls
|
13
|
+
start_tls(:private_key_file => $dir+'server.key', :cert_chain_file => $dir+'server.crt', :verify_peer => true)
|
9
14
|
end
|
10
15
|
|
11
16
|
def ssl_handshake_completed
|
12
17
|
$server_called_back = true
|
13
|
-
$
|
18
|
+
$client_cert_value = get_peer_cert
|
14
19
|
end
|
15
20
|
|
21
|
+
def ssl_verify_peer cert
|
22
|
+
true
|
23
|
+
end
|
16
24
|
end
|
17
25
|
|
18
26
|
module ClientHandler
|
19
27
|
|
20
28
|
def post_init
|
21
|
-
start_tls
|
29
|
+
start_tls(:private_key_file => $dir+'client.key', :cert_chain_file => $dir+'client.crt')
|
22
30
|
end
|
23
31
|
|
24
32
|
def ssl_handshake_completed
|
25
33
|
$client_called_back = true
|
26
|
-
$
|
34
|
+
$server_cert_value = get_peer_cert
|
27
35
|
EM.stop_event_loop
|
28
36
|
end
|
29
37
|
|
@@ -41,8 +49,8 @@ class TestSSLMethods < Test::Unit::TestCase
|
|
41
49
|
assert($server_called_back)
|
42
50
|
assert($client_called_back)
|
43
51
|
|
44
|
-
|
45
|
-
|
52
|
+
assert_equal($server_cert_from_file, $server_cert_value.gsub("\r", ""))
|
53
|
+
assert_equal($client_cert_from_file, $client_cert_value.gsub("\r", ""))
|
46
54
|
end
|
47
55
|
|
48
|
-
end if EM.ssl?
|
56
|
+
end if EM.ssl?
|
data/tests/test_ssl_verify.rb
CHANGED
@@ -24,7 +24,7 @@ if EM.ssl?
|
|
24
24
|
|
25
25
|
module AcceptServer
|
26
26
|
def post_init
|
27
|
-
start_tls(:verify_peer => true)
|
27
|
+
start_tls(:private_key_file => $dir+'server.key', :cert_chain_file => $dir+'server.crt', :verify_peer => true)
|
28
28
|
end
|
29
29
|
|
30
30
|
def ssl_verify_peer(cert)
|
@@ -39,7 +39,7 @@ if EM.ssl?
|
|
39
39
|
|
40
40
|
module DenyServer
|
41
41
|
def post_init
|
42
|
-
start_tls(:verify_peer => true)
|
42
|
+
start_tls(:private_key_file => $dir+'server.key', :cert_chain_file => $dir+'server.crt', :verify_peer => true)
|
43
43
|
end
|
44
44
|
|
45
45
|
def ssl_verify_peer(cert)
|
@@ -60,7 +60,7 @@ if EM.ssl?
|
|
60
60
|
EM.connect("127.0.0.1", 16784, Client).instance_variable_get("@signature")
|
61
61
|
}
|
62
62
|
|
63
|
-
assert_equal($cert_from_file, $cert_from_server)
|
63
|
+
assert_equal($cert_from_file, $cert_from_server.gsub("\r", ""))
|
64
64
|
assert($client_handshake_completed)
|
65
65
|
assert($server_handshake_completed)
|
66
66
|
end
|
@@ -72,7 +72,7 @@ if EM.ssl?
|
|
72
72
|
EM.connect("127.0.0.1", 16784, Client)
|
73
73
|
}
|
74
74
|
|
75
|
-
assert_equal($cert_from_file, $cert_from_server)
|
75
|
+
assert_equal($cert_from_file, $cert_from_server.gsub("\r", ""))
|
76
76
|
assert(!$client_handshake_completed)
|
77
77
|
assert(!$server_handshake_completed)
|
78
78
|
end
|
data/tests/test_stomp.rb
ADDED
@@ -0,0 +1,37 @@
|
|
1
|
+
require 'em_test_helper'
|
2
|
+
|
3
|
+
class TestStomp < Test::Unit::TestCase
|
4
|
+
CONTENT_LENGTH_REGEX = /^content-length: (\d+)$/
|
5
|
+
|
6
|
+
def bytesize(str)
|
7
|
+
str = str.to_s
|
8
|
+
size = str.bytesize if str.respond_to?(:bytesize) # bytesize added in 1.9
|
9
|
+
size || str.size
|
10
|
+
end
|
11
|
+
|
12
|
+
def test_content_length_in_bytes
|
13
|
+
connection = Object.new
|
14
|
+
connection.instance_eval do
|
15
|
+
extend EM::P::Stomp
|
16
|
+
|
17
|
+
def last_sent_content_length
|
18
|
+
@sent && Integer(@sent[CONTENT_LENGTH_REGEX, 1])
|
19
|
+
end
|
20
|
+
|
21
|
+
def send_data(string)
|
22
|
+
@sent = string
|
23
|
+
end
|
24
|
+
end
|
25
|
+
|
26
|
+
queue = "queue"
|
27
|
+
failure_message = "header content-length is not the byte size of last sent body"
|
28
|
+
|
29
|
+
body = "test"
|
30
|
+
connection.send queue, body
|
31
|
+
assert_equal bytesize(body), connection.last_sent_content_length, failure_message
|
32
|
+
|
33
|
+
body = "test\u221A"
|
34
|
+
connection.send queue, body
|
35
|
+
assert_equal bytesize(body), connection.last_sent_content_length, failure_message
|
36
|
+
end
|
37
|
+
end
|
@@ -0,0 +1,42 @@
|
|
1
|
+
# coding: utf-8
|
2
|
+
require 'em_test_helper'
|
3
|
+
|
4
|
+
class TestSystem < Test::Unit::TestCase
|
5
|
+
def setup
|
6
|
+
@filename = File.expand_path("../я манал dump.txt", __FILE__)
|
7
|
+
@test_data = 'a' * 100
|
8
|
+
File.open(@filename, 'w'){|f| f.write(@test_data)}
|
9
|
+
end
|
10
|
+
|
11
|
+
def test_system
|
12
|
+
result = nil
|
13
|
+
status = nil
|
14
|
+
EM.run {
|
15
|
+
EM.system('cat', @filename){|out, state|
|
16
|
+
result = out
|
17
|
+
status = state.exitstatus
|
18
|
+
EM.stop
|
19
|
+
}
|
20
|
+
}
|
21
|
+
assert_equal(0, status)
|
22
|
+
assert_equal(@test_data, result)
|
23
|
+
end
|
24
|
+
|
25
|
+
def test_system_with_string
|
26
|
+
result = nil
|
27
|
+
status = nil
|
28
|
+
EM.run {
|
29
|
+
EM.system("cat '#@filename'"){|out, state|
|
30
|
+
result = out
|
31
|
+
status = state.exitstatus
|
32
|
+
EM.stop
|
33
|
+
}
|
34
|
+
}
|
35
|
+
assert_equal(0, status)
|
36
|
+
assert_equal(@test_data, result)
|
37
|
+
end
|
38
|
+
|
39
|
+
def teardown
|
40
|
+
File.unlink(@filename)
|
41
|
+
end
|
42
|
+
end
|
metadata
CHANGED
@@ -1,55 +1,42 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: sonixlabs-eventmachine-java
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 1.0.
|
4
|
+
version: 1.0.3.1
|
5
5
|
platform: java
|
6
6
|
authors:
|
7
|
-
-
|
7
|
+
- Francis Cianfrocca
|
8
|
+
- Aman Gupta
|
8
9
|
autorequire:
|
9
10
|
bindir: bin
|
10
11
|
cert_chain: []
|
11
|
-
date:
|
12
|
+
date: 2014-07-22 00:00:00.000000000 Z
|
12
13
|
dependencies:
|
13
14
|
- !ruby/object:Gem::Dependency
|
14
15
|
name: rake-compiler
|
15
16
|
version_requirements: !ruby/object:Gem::Requirement
|
16
17
|
requirements:
|
17
|
-
- -
|
18
|
+
- - ~>
|
18
19
|
- !ruby/object:Gem::Version
|
19
|
-
version: 0.8.
|
20
|
+
version: 0.8.3
|
20
21
|
requirement: !ruby/object:Gem::Requirement
|
21
22
|
requirements:
|
22
|
-
- -
|
23
|
+
- - ~>
|
23
24
|
- !ruby/object:Gem::Version
|
24
|
-
version: 0.8.
|
25
|
+
version: 0.8.3
|
25
26
|
prerelease: false
|
26
27
|
type: :development
|
27
28
|
- !ruby/object:Gem::Dependency
|
28
29
|
name: yard
|
29
30
|
version_requirements: !ruby/object:Gem::Requirement
|
30
31
|
requirements:
|
31
|
-
- -
|
32
|
+
- - '>='
|
32
33
|
- !ruby/object:Gem::Version
|
33
|
-
version: 0.
|
34
|
+
version: 0.8.5.2
|
34
35
|
requirement: !ruby/object:Gem::Requirement
|
35
36
|
requirements:
|
36
|
-
- -
|
37
|
+
- - '>='
|
37
38
|
- !ruby/object:Gem::Version
|
38
|
-
version: 0.
|
39
|
-
prerelease: false
|
40
|
-
type: :development
|
41
|
-
- !ruby/object:Gem::Dependency
|
42
|
-
name: bluecloth
|
43
|
-
version_requirements: !ruby/object:Gem::Requirement
|
44
|
-
requirements:
|
45
|
-
- - ">="
|
46
|
-
- !ruby/object:Gem::Version
|
47
|
-
version: '0'
|
48
|
-
requirement: !ruby/object:Gem::Requirement
|
49
|
-
requirements:
|
50
|
-
- - ">="
|
51
|
-
- !ruby/object:Gem::Version
|
52
|
-
version: '0'
|
39
|
+
version: 0.8.5.2
|
53
40
|
prerelease: false
|
54
41
|
type: :development
|
55
42
|
description: |-
|
@@ -64,10 +51,12 @@ description: |-
|
|
64
51
|
of EventMachine is to enable programs to easily interface with other programs
|
65
52
|
using TCP/IP, especially if custom protocols are required.
|
66
53
|
email:
|
67
|
-
-
|
68
|
-
-
|
54
|
+
- garbagecat10@gmail.com
|
55
|
+
- aman@tmm1.net
|
69
56
|
executables: []
|
70
|
-
extensions:
|
57
|
+
extensions:
|
58
|
+
- ext/extconf.rb
|
59
|
+
- ext/fastfilereader/extconf.rb
|
71
60
|
extra_rdoc_files:
|
72
61
|
- README.md
|
73
62
|
- docs/DocumentationGuidesIndex.md
|
@@ -85,8 +74,10 @@ extra_rdoc_files:
|
|
85
74
|
- docs/old/SPAWNED_PROCESSES
|
86
75
|
- docs/old/TODO
|
87
76
|
files:
|
88
|
-
-
|
89
|
-
-
|
77
|
+
- .gitignore
|
78
|
+
- .travis.yml
|
79
|
+
- .yardopts
|
80
|
+
- CHANGELOG.md
|
90
81
|
- GNU
|
91
82
|
- Gemfile
|
92
83
|
- LICENSE
|
@@ -143,12 +134,17 @@ files:
|
|
143
134
|
- ext/ssl.cpp
|
144
135
|
- ext/ssl.h
|
145
136
|
- java/.classpath
|
137
|
+
- java/.gitignore
|
146
138
|
- java/.project
|
139
|
+
- java/src/com/rubyeventmachine/DatagramPacket.java
|
147
140
|
- java/src/com/rubyeventmachine/EmReactor.java
|
148
141
|
- java/src/com/rubyeventmachine/EmReactorException.java
|
142
|
+
- java/src/com/rubyeventmachine/EventCallback.java
|
143
|
+
- java/src/com/rubyeventmachine/EventCode.java
|
149
144
|
- java/src/com/rubyeventmachine/EventableChannel.java
|
150
145
|
- java/src/com/rubyeventmachine/EventableDatagramChannel.java
|
151
146
|
- java/src/com/rubyeventmachine/EventableSocketChannel.java
|
147
|
+
- java/src/com/rubyeventmachine/SslBox.java
|
152
148
|
- lib/em/buftok.rb
|
153
149
|
- lib/em/callback.rb
|
154
150
|
- lib/em/channel.rb
|
@@ -197,6 +193,8 @@ files:
|
|
197
193
|
- tests/client.crt
|
198
194
|
- tests/client.key
|
199
195
|
- tests/em_test_helper.rb
|
196
|
+
- tests/server.crt
|
197
|
+
- tests/server.key
|
200
198
|
- tests/test_attach.rb
|
201
199
|
- tests/test_basic.rb
|
202
200
|
- tests/test_channel.rb
|
@@ -216,7 +214,9 @@ files:
|
|
216
214
|
- tests/test_httpclient2.rb
|
217
215
|
- tests/test_idle_connection.rb
|
218
216
|
- tests/test_inactivity_timeout.rb
|
217
|
+
- tests/test_iterator.rb
|
219
218
|
- tests/test_kb.rb
|
219
|
+
- tests/test_line_protocol.rb
|
220
220
|
- tests/test_ltp.rb
|
221
221
|
- tests/test_ltp2.rb
|
222
222
|
- tests/test_next_tick.rb
|
@@ -240,43 +240,46 @@ files:
|
|
240
240
|
- tests/test_smtpserver.rb
|
241
241
|
- tests/test_spawn.rb
|
242
242
|
- tests/test_ssl_args.rb
|
243
|
+
- tests/test_ssl_echo_data.rb
|
243
244
|
- tests/test_ssl_methods.rb
|
244
245
|
- tests/test_ssl_verify.rb
|
246
|
+
- tests/test_stomp.rb
|
247
|
+
- tests/test_system.rb
|
245
248
|
- tests/test_threaded_resource.rb
|
246
249
|
- tests/test_tick_loop.rb
|
247
250
|
- tests/test_timers.rb
|
248
251
|
- tests/test_ud.rb
|
249
252
|
- tests/test_unbind_reason.rb
|
250
|
-
|
251
|
-
|
252
|
-
|
253
|
+
homepage: http://rubyeventmachine.com
|
254
|
+
licenses:
|
255
|
+
- Ruby
|
256
|
+
- GPL
|
253
257
|
metadata: {}
|
254
258
|
post_install_message:
|
255
259
|
rdoc_options:
|
256
|
-
-
|
260
|
+
- --title
|
257
261
|
- EventMachine
|
258
|
-
-
|
262
|
+
- --main
|
259
263
|
- README.md
|
260
|
-
-
|
264
|
+
- -x
|
261
265
|
- lib/em/version
|
262
|
-
-
|
266
|
+
- -x
|
263
267
|
- lib/jeventmachine
|
264
268
|
require_paths:
|
265
269
|
- lib
|
266
270
|
required_ruby_version: !ruby/object:Gem::Requirement
|
267
271
|
requirements:
|
268
|
-
- -
|
272
|
+
- - '>='
|
269
273
|
- !ruby/object:Gem::Version
|
270
274
|
version: '0'
|
271
275
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
272
276
|
requirements:
|
273
|
-
- -
|
274
|
-
Pg==
|
277
|
+
- - '>='
|
275
278
|
- !ruby/object:Gem::Version
|
276
|
-
version:
|
279
|
+
version: '0'
|
277
280
|
requirements: []
|
278
281
|
rubyforge_project: eventmachine
|
279
|
-
rubygems_version: 2.1.
|
282
|
+
rubygems_version: 2.1.9
|
280
283
|
signing_key:
|
281
284
|
specification_version: 4
|
282
285
|
summary: Ruby/EventMachine library
|
data/lib/rubyeventmachine.jar
DELETED
Binary file
|