eventmachine-maglev- 0.12.10

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.
Files changed (158) hide show
  1. data/.gitignore +14 -0
  2. data/README +82 -0
  3. data/Rakefile +374 -0
  4. data/docs/COPYING +60 -0
  5. data/docs/ChangeLog +211 -0
  6. data/docs/DEFERRABLES +133 -0
  7. data/docs/EPOLL +141 -0
  8. data/docs/GNU +281 -0
  9. data/docs/INSTALL +13 -0
  10. data/docs/KEYBOARD +38 -0
  11. data/docs/LEGAL +25 -0
  12. data/docs/LIGHTWEIGHT_CONCURRENCY +70 -0
  13. data/docs/PURE_RUBY +75 -0
  14. data/docs/RELEASE_NOTES +94 -0
  15. data/docs/SMTP +2 -0
  16. data/docs/SPAWNED_PROCESSES +89 -0
  17. data/docs/TODO +8 -0
  18. data/eventmachine.gemspec +40 -0
  19. data/examples/ex_channel.rb +43 -0
  20. data/examples/ex_queue.rb +2 -0
  21. data/examples/helper.rb +2 -0
  22. data/ext/binder.cpp +125 -0
  23. data/ext/binder.h +46 -0
  24. data/ext/cmain.cpp +827 -0
  25. data/ext/cplusplus.cpp +202 -0
  26. data/ext/ed.cpp +1893 -0
  27. data/ext/ed.h +424 -0
  28. data/ext/em.cpp +2282 -0
  29. data/ext/em.h +235 -0
  30. data/ext/emwin.cpp +300 -0
  31. data/ext/emwin.h +94 -0
  32. data/ext/epoll.cpp +26 -0
  33. data/ext/epoll.h +25 -0
  34. data/ext/eventmachine.h +122 -0
  35. data/ext/eventmachine_cpp.h +96 -0
  36. data/ext/extconf.rb +152 -0
  37. data/ext/fastfilereader/extconf.rb +83 -0
  38. data/ext/fastfilereader/mapper.cpp +214 -0
  39. data/ext/fastfilereader/mapper.h +59 -0
  40. data/ext/fastfilereader/rubymain.cpp +128 -0
  41. data/ext/files.cpp +94 -0
  42. data/ext/files.h +65 -0
  43. data/ext/kb.cpp +81 -0
  44. data/ext/page.cpp +107 -0
  45. data/ext/page.h +51 -0
  46. data/ext/pipe.cpp +349 -0
  47. data/ext/project.h +151 -0
  48. data/ext/rubymain.cpp +1166 -0
  49. data/ext/sigs.cpp +89 -0
  50. data/ext/sigs.h +32 -0
  51. data/ext/ssl.cpp +460 -0
  52. data/ext/ssl.h +94 -0
  53. data/java/.classpath +8 -0
  54. data/java/.project +17 -0
  55. data/java/src/com/rubyeventmachine/EmReactor.java +570 -0
  56. data/java/src/com/rubyeventmachine/EmReactorException.java +40 -0
  57. data/java/src/com/rubyeventmachine/EventableChannel.java +69 -0
  58. data/java/src/com/rubyeventmachine/EventableDatagramChannel.java +189 -0
  59. data/java/src/com/rubyeventmachine/EventableSocketChannel.java +364 -0
  60. data/java/src/com/rubyeventmachine/application/Application.java +194 -0
  61. data/java/src/com/rubyeventmachine/application/Connection.java +74 -0
  62. data/java/src/com/rubyeventmachine/application/ConnectionFactory.java +37 -0
  63. data/java/src/com/rubyeventmachine/application/DefaultConnectionFactory.java +46 -0
  64. data/java/src/com/rubyeventmachine/application/PeriodicTimer.java +38 -0
  65. data/java/src/com/rubyeventmachine/application/Timer.java +54 -0
  66. data/java/src/com/rubyeventmachine/tests/ApplicationTest.java +109 -0
  67. data/java/src/com/rubyeventmachine/tests/ConnectTest.java +148 -0
  68. data/java/src/com/rubyeventmachine/tests/EMTest.java +80 -0
  69. data/java/src/com/rubyeventmachine/tests/TestDatagrams.java +53 -0
  70. data/java/src/com/rubyeventmachine/tests/TestServers.java +75 -0
  71. data/java/src/com/rubyeventmachine/tests/TestTimers.java +90 -0
  72. data/lib/em/buftok.rb +138 -0
  73. data/lib/em/callback.rb +26 -0
  74. data/lib/em/channel.rb +57 -0
  75. data/lib/em/connection.rb +564 -0
  76. data/lib/em/deferrable.rb +192 -0
  77. data/lib/em/file_watch.rb +54 -0
  78. data/lib/em/future.rb +61 -0
  79. data/lib/em/messages.rb +66 -0
  80. data/lib/em/process_watch.rb +44 -0
  81. data/lib/em/processes.rb +119 -0
  82. data/lib/em/protocols/header_and_content.rb +138 -0
  83. data/lib/em/protocols/httpclient.rb +263 -0
  84. data/lib/em/protocols/httpclient2.rb +590 -0
  85. data/lib/em/protocols/line_and_text.rb +125 -0
  86. data/lib/em/protocols/linetext2.rb +161 -0
  87. data/lib/em/protocols/memcache.rb +323 -0
  88. data/lib/em/protocols/object_protocol.rb +45 -0
  89. data/lib/em/protocols/postgres3.rb +247 -0
  90. data/lib/em/protocols/saslauth.rb +175 -0
  91. data/lib/em/protocols/smtpclient.rb +357 -0
  92. data/lib/em/protocols/smtpserver.rb +547 -0
  93. data/lib/em/protocols/socks4.rb +66 -0
  94. data/lib/em/protocols/stomp.rb +200 -0
  95. data/lib/em/protocols/tcptest.rb +53 -0
  96. data/lib/em/protocols.rb +36 -0
  97. data/lib/em/queue.rb +61 -0
  98. data/lib/em/spawnable.rb +85 -0
  99. data/lib/em/streamer.rb +130 -0
  100. data/lib/em/timers.rb +56 -0
  101. data/lib/em/version.rb +3 -0
  102. data/lib/eventmachine.rb +1592 -0
  103. data/lib/evma/callback.rb +32 -0
  104. data/lib/evma/container.rb +75 -0
  105. data/lib/evma/factory.rb +77 -0
  106. data/lib/evma/protocol.rb +87 -0
  107. data/lib/evma/reactor.rb +48 -0
  108. data/lib/evma.rb +32 -0
  109. data/lib/jeventmachine.rb +257 -0
  110. data/lib/pr_eventmachine.rb +1022 -0
  111. data/setup.rb +1585 -0
  112. data/tasks/cpp.rake_example +77 -0
  113. data/tests/client.crt +31 -0
  114. data/tests/client.key +51 -0
  115. data/tests/test_attach.rb +126 -0
  116. data/tests/test_basic.rb +284 -0
  117. data/tests/test_channel.rb +63 -0
  118. data/tests/test_connection_count.rb +35 -0
  119. data/tests/test_defer.rb +47 -0
  120. data/tests/test_epoll.rb +160 -0
  121. data/tests/test_error_handler.rb +35 -0
  122. data/tests/test_errors.rb +82 -0
  123. data/tests/test_exc.rb +55 -0
  124. data/tests/test_file_watch.rb +49 -0
  125. data/tests/test_futures.rb +198 -0
  126. data/tests/test_get_sock_opt.rb +30 -0
  127. data/tests/test_handler_check.rb +37 -0
  128. data/tests/test_hc.rb +218 -0
  129. data/tests/test_httpclient.rb +218 -0
  130. data/tests/test_httpclient2.rb +153 -0
  131. data/tests/test_inactivity_timeout.rb +50 -0
  132. data/tests/test_kb.rb +60 -0
  133. data/tests/test_ltp.rb +182 -0
  134. data/tests/test_ltp2.rb +317 -0
  135. data/tests/test_next_tick.rb +133 -0
  136. data/tests/test_object_protocol.rb +37 -0
  137. data/tests/test_pause.rb +70 -0
  138. data/tests/test_pending_connect_timeout.rb +48 -0
  139. data/tests/test_process_watch.rb +48 -0
  140. data/tests/test_processes.rb +128 -0
  141. data/tests/test_proxy_connection.rb +92 -0
  142. data/tests/test_pure.rb +125 -0
  143. data/tests/test_queue.rb +44 -0
  144. data/tests/test_running.rb +42 -0
  145. data/tests/test_sasl.rb +72 -0
  146. data/tests/test_send_file.rb +242 -0
  147. data/tests/test_servers.rb +76 -0
  148. data/tests/test_smtpclient.rb +83 -0
  149. data/tests/test_smtpserver.rb +85 -0
  150. data/tests/test_spawn.rb +322 -0
  151. data/tests/test_ssl_args.rb +79 -0
  152. data/tests/test_ssl_methods.rb +50 -0
  153. data/tests/test_ssl_verify.rb +82 -0
  154. data/tests/test_timers.rb +162 -0
  155. data/tests/test_ud.rb +36 -0
  156. data/tests/testem.rb +31 -0
  157. data/web/whatis +7 -0
  158. metadata +239 -0
data/tests/test_ud.rb ADDED
@@ -0,0 +1,36 @@
1
+ # $Id$
2
+ #
3
+ # Author:: Francis Cianfrocca (gmail: blackhedd)
4
+ # Homepage:: http://rubyeventmachine.com
5
+ # Date:: 8 April 2006
6
+ #
7
+ # See EventMachine and EventMachine::Connection for documentation and
8
+ # usage examples.
9
+ #
10
+ #----------------------------------------------------------------------------
11
+ #
12
+ # Copyright (C) 2006-07 by Francis Cianfrocca. All Rights Reserved.
13
+ # Gmail: blackhedd
14
+ #
15
+ # This program is free software; you can redistribute it and/or modify
16
+ # it under the terms of either: 1) the GNU General Public License
17
+ # as published by the Free Software Foundation; either version 2 of the
18
+ # License, or (at your option) any later version; or 2) Ruby's License.
19
+ #
20
+ # See the file COPYING for complete licensing information.
21
+ #
22
+ #---------------------------------------------------------------------------
23
+ #
24
+ #
25
+ #
26
+
27
+ $:.unshift "../lib"
28
+ require 'eventmachine'
29
+ require 'test/unit'
30
+
31
+ class TestUserDefinedEvents < Test::Unit::TestCase
32
+
33
+ def test_a
34
+ end
35
+
36
+ end
data/tests/testem.rb ADDED
@@ -0,0 +1,31 @@
1
+ # $Id$
2
+
3
+ require 'test/unit'
4
+
5
+ module EmTestRunner
6
+ @em_root = File.expand_path(File.dirname(__FILE__) + '/../')
7
+ @lib_dir = File.join(@em_root, 'lib')
8
+ @ext_dir = File.join(@em_root, 'ext')
9
+ @java_dir = File.join(@em_root, 'java')
10
+
11
+ def self.run(glob = 'test_*.rb')
12
+ $:.unshift(@lib_dir)
13
+ $:.unshift(@ext_dir)
14
+ $:.unshift(@java_dir)
15
+
16
+ case glob
17
+ when Array
18
+ files = glob
19
+ else
20
+ files = Dir[File.dirname(__FILE__) + '/' + glob]
21
+ end
22
+
23
+ files.each do |tc|
24
+ require tc
25
+ end
26
+ end
27
+ end
28
+
29
+ if __FILE__ == $0
30
+ EmTestRunner.run
31
+ end
data/web/whatis ADDED
@@ -0,0 +1,7 @@
1
+ EventMachine is a library for Ruby, C++, and Java programs. It provides event-driven I/O using the Reactor pattern.
2
+
3
+ EventMachine is designed to simultaneously meet two key needs:
4
+ - Extremely high scalability, performance and stability for the most demanding production environments; and
5
+ - An API that <i>eliminates</i> the complexities of high-performance threaded network programming, allowing engineers to concentrate on their application logic.
6
+
7
+ This unique combination makes EventMachine a premier choice for designers of critical networked applications, including web servers and proxies, email and IM production systems, authentication/authorization processors, and many more.
metadata ADDED
@@ -0,0 +1,239 @@
1
+ --- !ruby/object:Gem::Specification
2
+ name: eventmachine-maglev-
3
+ version: !ruby/object:Gem::Version
4
+ version: 0.12.10
5
+ prerelease:
6
+ platform: ruby
7
+ authors:
8
+ - Francis Cianfrocca
9
+ autorequire:
10
+ bindir: bin
11
+ cert_chain: []
12
+ date: 2009-10-24 00:00:00.000000000 Z
13
+ dependencies: []
14
+ description: ! 'EventMachine implements a fast, single-threaded engine for arbitrary
15
+ network
16
+
17
+ communications. It''s extremely easy to use in Ruby. EventMachine wraps all
18
+
19
+ interactions with IP sockets, allowing programs to concentrate on the
20
+
21
+ implementation of network protocols. It can be used to create both network
22
+
23
+ servers and clients. To create a server or client, a Ruby program only needs
24
+
25
+ to specify the IP address and port, and provide a Module that implements the
26
+
27
+ communications protocol. Implementations of several standard network protocols
28
+
29
+ are provided with the package, primarily to serve as examples. The real goal
30
+
31
+ of EventMachine is to enable programs to easily interface with other programs
32
+
33
+ using TCP/IP, especially if custom protocols are required.
34
+
35
+ '
36
+ email: garbagecat10@gmail.com
37
+ executables: []
38
+ extensions:
39
+ - ext/extconf.rb
40
+ - ext/fastfilereader/extconf.rb
41
+ extra_rdoc_files: []
42
+ files:
43
+ - .gitignore
44
+ - README
45
+ - Rakefile
46
+ - docs/COPYING
47
+ - docs/ChangeLog
48
+ - docs/DEFERRABLES
49
+ - docs/EPOLL
50
+ - docs/GNU
51
+ - docs/INSTALL
52
+ - docs/KEYBOARD
53
+ - docs/LEGAL
54
+ - docs/LIGHTWEIGHT_CONCURRENCY
55
+ - docs/PURE_RUBY
56
+ - docs/RELEASE_NOTES
57
+ - docs/SMTP
58
+ - docs/SPAWNED_PROCESSES
59
+ - docs/TODO
60
+ - eventmachine.gemspec
61
+ - examples/ex_channel.rb
62
+ - examples/ex_queue.rb
63
+ - examples/helper.rb
64
+ - ext/binder.cpp
65
+ - ext/binder.h
66
+ - ext/cmain.cpp
67
+ - ext/cplusplus.cpp
68
+ - ext/ed.cpp
69
+ - ext/ed.h
70
+ - ext/em.cpp
71
+ - ext/em.h
72
+ - ext/emwin.cpp
73
+ - ext/emwin.h
74
+ - ext/epoll.cpp
75
+ - ext/epoll.h
76
+ - ext/eventmachine.h
77
+ - ext/eventmachine_cpp.h
78
+ - ext/extconf.rb
79
+ - ext/fastfilereader/extconf.rb
80
+ - ext/fastfilereader/mapper.cpp
81
+ - ext/fastfilereader/mapper.h
82
+ - ext/fastfilereader/rubymain.cpp
83
+ - ext/files.cpp
84
+ - ext/files.h
85
+ - ext/kb.cpp
86
+ - ext/page.cpp
87
+ - ext/page.h
88
+ - ext/pipe.cpp
89
+ - ext/project.h
90
+ - ext/rubymain.cpp
91
+ - ext/sigs.cpp
92
+ - ext/sigs.h
93
+ - ext/ssl.cpp
94
+ - ext/ssl.h
95
+ - java/.classpath
96
+ - java/.project
97
+ - java/src/com/rubyeventmachine/EmReactor.java
98
+ - java/src/com/rubyeventmachine/EmReactorException.java
99
+ - java/src/com/rubyeventmachine/EventableChannel.java
100
+ - java/src/com/rubyeventmachine/EventableDatagramChannel.java
101
+ - java/src/com/rubyeventmachine/EventableSocketChannel.java
102
+ - java/src/com/rubyeventmachine/application/Application.java
103
+ - java/src/com/rubyeventmachine/application/Connection.java
104
+ - java/src/com/rubyeventmachine/application/ConnectionFactory.java
105
+ - java/src/com/rubyeventmachine/application/DefaultConnectionFactory.java
106
+ - java/src/com/rubyeventmachine/application/PeriodicTimer.java
107
+ - java/src/com/rubyeventmachine/application/Timer.java
108
+ - java/src/com/rubyeventmachine/tests/ApplicationTest.java
109
+ - java/src/com/rubyeventmachine/tests/ConnectTest.java
110
+ - java/src/com/rubyeventmachine/tests/EMTest.java
111
+ - java/src/com/rubyeventmachine/tests/TestDatagrams.java
112
+ - java/src/com/rubyeventmachine/tests/TestServers.java
113
+ - java/src/com/rubyeventmachine/tests/TestTimers.java
114
+ - lib/em/buftok.rb
115
+ - lib/em/callback.rb
116
+ - lib/em/channel.rb
117
+ - lib/em/connection.rb
118
+ - lib/em/deferrable.rb
119
+ - lib/em/file_watch.rb
120
+ - lib/em/future.rb
121
+ - lib/em/messages.rb
122
+ - lib/em/process_watch.rb
123
+ - lib/em/processes.rb
124
+ - lib/em/protocols.rb
125
+ - lib/em/protocols/header_and_content.rb
126
+ - lib/em/protocols/httpclient.rb
127
+ - lib/em/protocols/httpclient2.rb
128
+ - lib/em/protocols/line_and_text.rb
129
+ - lib/em/protocols/linetext2.rb
130
+ - lib/em/protocols/memcache.rb
131
+ - lib/em/protocols/object_protocol.rb
132
+ - lib/em/protocols/postgres3.rb
133
+ - lib/em/protocols/saslauth.rb
134
+ - lib/em/protocols/smtpclient.rb
135
+ - lib/em/protocols/smtpserver.rb
136
+ - lib/em/protocols/socks4.rb
137
+ - lib/em/protocols/stomp.rb
138
+ - lib/em/protocols/tcptest.rb
139
+ - lib/em/queue.rb
140
+ - lib/em/spawnable.rb
141
+ - lib/em/streamer.rb
142
+ - lib/em/timers.rb
143
+ - lib/em/version.rb
144
+ - lib/eventmachine.rb
145
+ - lib/evma.rb
146
+ - lib/evma/callback.rb
147
+ - lib/evma/container.rb
148
+ - lib/evma/factory.rb
149
+ - lib/evma/protocol.rb
150
+ - lib/evma/reactor.rb
151
+ - lib/jeventmachine.rb
152
+ - lib/pr_eventmachine.rb
153
+ - setup.rb
154
+ - tasks/cpp.rake_example
155
+ - tests/client.crt
156
+ - tests/client.key
157
+ - tests/test_attach.rb
158
+ - tests/test_basic.rb
159
+ - tests/test_channel.rb
160
+ - tests/test_connection_count.rb
161
+ - tests/test_defer.rb
162
+ - tests/test_epoll.rb
163
+ - tests/test_error_handler.rb
164
+ - tests/test_errors.rb
165
+ - tests/test_exc.rb
166
+ - tests/test_file_watch.rb
167
+ - tests/test_futures.rb
168
+ - tests/test_get_sock_opt.rb
169
+ - tests/test_handler_check.rb
170
+ - tests/test_hc.rb
171
+ - tests/test_httpclient.rb
172
+ - tests/test_httpclient2.rb
173
+ - tests/test_inactivity_timeout.rb
174
+ - tests/test_kb.rb
175
+ - tests/test_ltp.rb
176
+ - tests/test_ltp2.rb
177
+ - tests/test_next_tick.rb
178
+ - tests/test_object_protocol.rb
179
+ - tests/test_pause.rb
180
+ - tests/test_pending_connect_timeout.rb
181
+ - tests/test_process_watch.rb
182
+ - tests/test_processes.rb
183
+ - tests/test_proxy_connection.rb
184
+ - tests/test_pure.rb
185
+ - tests/test_queue.rb
186
+ - tests/test_running.rb
187
+ - tests/test_sasl.rb
188
+ - tests/test_send_file.rb
189
+ - tests/test_servers.rb
190
+ - tests/test_smtpclient.rb
191
+ - tests/test_smtpserver.rb
192
+ - tests/test_spawn.rb
193
+ - tests/test_ssl_args.rb
194
+ - tests/test_ssl_methods.rb
195
+ - tests/test_ssl_verify.rb
196
+ - tests/test_timers.rb
197
+ - tests/test_ud.rb
198
+ - tests/testem.rb
199
+ - web/whatis
200
+ homepage: http://rubyeventmachine.com
201
+ licenses: []
202
+ post_install_message:
203
+ rdoc_options:
204
+ - --title
205
+ - EventMachine
206
+ - --main
207
+ - README
208
+ - --line-numbers
209
+ - -x
210
+ - lib/em/version
211
+ - -x
212
+ - lib/emva
213
+ - -x
214
+ - lib/evma/
215
+ - -x
216
+ - lib/pr_eventmachine
217
+ - -x
218
+ - lib/jeventmachine
219
+ require_paths:
220
+ - lib
221
+ required_ruby_version: !ruby/object:Gem::Requirement
222
+ none: false
223
+ requirements:
224
+ - - ! '>='
225
+ - !ruby/object:Gem::Version
226
+ version: '0'
227
+ required_rubygems_version: !ruby/object:Gem::Requirement
228
+ none: false
229
+ requirements:
230
+ - - ! '>='
231
+ - !ruby/object:Gem::Version
232
+ version: '0'
233
+ requirements: []
234
+ rubyforge_project: eventmachine
235
+ rubygems_version: 1.8.11
236
+ signing_key:
237
+ specification_version: 3
238
+ summary: Ruby/EventMachine library
239
+ test_files: []