sidekick-client 0.1.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.
Files changed (247) hide show
  1. data/.document +5 -0
  2. data/.gitignore +21 -0
  3. data/LICENSE +20 -0
  4. data/README.rdoc +17 -0
  5. data/Rakefile +52 -0
  6. data/VERSION +1 -0
  7. data/lib/ext/README +1 -0
  8. data/lib/ext/bunny-0.6.0/LICENSE +20 -0
  9. data/lib/ext/bunny-0.6.0/README.rdoc +66 -0
  10. data/lib/ext/bunny-0.6.0/Rakefile +24 -0
  11. data/lib/ext/bunny-0.6.0/bunny.gemspec +65 -0
  12. data/lib/ext/bunny-0.6.0/examples/simple_08.rb +30 -0
  13. data/lib/ext/bunny-0.6.0/examples/simple_09.rb +30 -0
  14. data/lib/ext/bunny-0.6.0/examples/simple_ack_08.rb +33 -0
  15. data/lib/ext/bunny-0.6.0/examples/simple_ack_09.rb +33 -0
  16. data/lib/ext/bunny-0.6.0/examples/simple_consumer_08.rb +53 -0
  17. data/lib/ext/bunny-0.6.0/examples/simple_consumer_09.rb +53 -0
  18. data/lib/ext/bunny-0.6.0/examples/simple_fanout_08.rb +39 -0
  19. data/lib/ext/bunny-0.6.0/examples/simple_fanout_09.rb +39 -0
  20. data/lib/ext/bunny-0.6.0/examples/simple_headers_08.rb +40 -0
  21. data/lib/ext/bunny-0.6.0/examples/simple_headers_09.rb +40 -0
  22. data/lib/ext/bunny-0.6.0/examples/simple_publisher_08.rb +27 -0
  23. data/lib/ext/bunny-0.6.0/examples/simple_publisher_09.rb +27 -0
  24. data/lib/ext/bunny-0.6.0/examples/simple_topic_08.rb +59 -0
  25. data/lib/ext/bunny-0.6.0/examples/simple_topic_09.rb +59 -0
  26. data/lib/ext/bunny-0.6.0/lib/bunny/channel08.rb +39 -0
  27. data/lib/ext/bunny-0.6.0/lib/bunny/channel09.rb +39 -0
  28. data/lib/ext/bunny-0.6.0/lib/bunny/client08.rb +494 -0
  29. data/lib/ext/bunny-0.6.0/lib/bunny/client09.rb +460 -0
  30. data/lib/ext/bunny-0.6.0/lib/bunny/exchange08.rb +175 -0
  31. data/lib/ext/bunny-0.6.0/lib/bunny/exchange09.rb +177 -0
  32. data/lib/ext/bunny-0.6.0/lib/bunny/queue08.rb +389 -0
  33. data/lib/ext/bunny-0.6.0/lib/bunny/queue09.rb +395 -0
  34. data/lib/ext/bunny-0.6.0/lib/bunny/subscription08.rb +85 -0
  35. data/lib/ext/bunny-0.6.0/lib/bunny/subscription09.rb +85 -0
  36. data/lib/ext/bunny-0.6.0/lib/bunny.rb +87 -0
  37. data/lib/ext/bunny-0.6.0/lib/qrack/channel.rb +18 -0
  38. data/lib/ext/bunny-0.6.0/lib/qrack/client.rb +204 -0
  39. data/lib/ext/bunny-0.6.0/lib/qrack/protocol/protocol08.rb +132 -0
  40. data/lib/ext/bunny-0.6.0/lib/qrack/protocol/protocol09.rb +133 -0
  41. data/lib/ext/bunny-0.6.0/lib/qrack/protocol/spec08.rb +823 -0
  42. data/lib/ext/bunny-0.6.0/lib/qrack/protocol/spec09.rb +521 -0
  43. data/lib/ext/bunny-0.6.0/lib/qrack/qrack08.rb +23 -0
  44. data/lib/ext/bunny-0.6.0/lib/qrack/qrack09.rb +23 -0
  45. data/lib/ext/bunny-0.6.0/lib/qrack/queue.rb +53 -0
  46. data/lib/ext/bunny-0.6.0/lib/qrack/subscription.rb +102 -0
  47. data/lib/ext/bunny-0.6.0/lib/qrack/transport/buffer08.rb +276 -0
  48. data/lib/ext/bunny-0.6.0/lib/qrack/transport/buffer09.rb +276 -0
  49. data/lib/ext/bunny-0.6.0/lib/qrack/transport/frame08.rb +112 -0
  50. data/lib/ext/bunny-0.6.0/lib/qrack/transport/frame09.rb +94 -0
  51. data/lib/ext/bunny-0.6.0/spec/spec_08/bunny_spec.rb +65 -0
  52. data/lib/ext/bunny-0.6.0/spec/spec_08/connection_spec.rb +12 -0
  53. data/lib/ext/bunny-0.6.0/spec/spec_08/exchange_spec.rb +162 -0
  54. data/lib/ext/bunny-0.6.0/spec/spec_08/queue_spec.rb +206 -0
  55. data/lib/ext/bunny-0.6.0/spec/spec_09/bunny_spec.rb +65 -0
  56. data/lib/ext/bunny-0.6.0/spec/spec_09/connection_spec.rb +12 -0
  57. data/lib/ext/bunny-0.6.0/spec/spec_09/exchange_spec.rb +162 -0
  58. data/lib/ext/bunny-0.6.0/spec/spec_09/queue_spec.rb +205 -0
  59. data/lib/ext/eventmachine-0.12.10/.gitignore +14 -0
  60. data/lib/ext/eventmachine-0.12.10/README +82 -0
  61. data/lib/ext/eventmachine-0.12.10/Rakefile +374 -0
  62. data/lib/ext/eventmachine-0.12.10/docs/COPYING +60 -0
  63. data/lib/ext/eventmachine-0.12.10/docs/ChangeLog +211 -0
  64. data/lib/ext/eventmachine-0.12.10/docs/DEFERRABLES +133 -0
  65. data/lib/ext/eventmachine-0.12.10/docs/EPOLL +141 -0
  66. data/lib/ext/eventmachine-0.12.10/docs/GNU +281 -0
  67. data/lib/ext/eventmachine-0.12.10/docs/INSTALL +13 -0
  68. data/lib/ext/eventmachine-0.12.10/docs/KEYBOARD +38 -0
  69. data/lib/ext/eventmachine-0.12.10/docs/LEGAL +25 -0
  70. data/lib/ext/eventmachine-0.12.10/docs/LIGHTWEIGHT_CONCURRENCY +70 -0
  71. data/lib/ext/eventmachine-0.12.10/docs/PURE_RUBY +75 -0
  72. data/lib/ext/eventmachine-0.12.10/docs/RELEASE_NOTES +94 -0
  73. data/lib/ext/eventmachine-0.12.10/docs/SMTP +2 -0
  74. data/lib/ext/eventmachine-0.12.10/docs/SPAWNED_PROCESSES +89 -0
  75. data/lib/ext/eventmachine-0.12.10/docs/TODO +8 -0
  76. data/lib/ext/eventmachine-0.12.10/eventmachine.gemspec +40 -0
  77. data/lib/ext/eventmachine-0.12.10/examples/ex_channel.rb +43 -0
  78. data/lib/ext/eventmachine-0.12.10/examples/ex_queue.rb +2 -0
  79. data/lib/ext/eventmachine-0.12.10/examples/helper.rb +2 -0
  80. data/lib/ext/eventmachine-0.12.10/ext/binder.cpp +125 -0
  81. data/lib/ext/eventmachine-0.12.10/ext/binder.h +46 -0
  82. data/lib/ext/eventmachine-0.12.10/ext/cmain.cpp +827 -0
  83. data/lib/ext/eventmachine-0.12.10/ext/cplusplus.cpp +202 -0
  84. data/lib/ext/eventmachine-0.12.10/ext/ed.cpp +1893 -0
  85. data/lib/ext/eventmachine-0.12.10/ext/ed.h +424 -0
  86. data/lib/ext/eventmachine-0.12.10/ext/em.cpp +2282 -0
  87. data/lib/ext/eventmachine-0.12.10/ext/em.h +232 -0
  88. data/lib/ext/eventmachine-0.12.10/ext/emwin.cpp +300 -0
  89. data/lib/ext/eventmachine-0.12.10/ext/emwin.h +94 -0
  90. data/lib/ext/eventmachine-0.12.10/ext/epoll.cpp +26 -0
  91. data/lib/ext/eventmachine-0.12.10/ext/epoll.h +25 -0
  92. data/lib/ext/eventmachine-0.12.10/ext/eventmachine.h +122 -0
  93. data/lib/ext/eventmachine-0.12.10/ext/eventmachine_cpp.h +96 -0
  94. data/lib/ext/eventmachine-0.12.10/ext/extconf.rb +148 -0
  95. data/lib/ext/eventmachine-0.12.10/ext/fastfilereader/extconf.rb +83 -0
  96. data/lib/ext/eventmachine-0.12.10/ext/fastfilereader/mapper.cpp +214 -0
  97. data/lib/ext/eventmachine-0.12.10/ext/fastfilereader/mapper.h +59 -0
  98. data/lib/ext/eventmachine-0.12.10/ext/fastfilereader/rubymain.cpp +127 -0
  99. data/lib/ext/eventmachine-0.12.10/ext/files.cpp +94 -0
  100. data/lib/ext/eventmachine-0.12.10/ext/files.h +65 -0
  101. data/lib/ext/eventmachine-0.12.10/ext/kb.cpp +81 -0
  102. data/lib/ext/eventmachine-0.12.10/ext/page.cpp +107 -0
  103. data/lib/ext/eventmachine-0.12.10/ext/page.h +51 -0
  104. data/lib/ext/eventmachine-0.12.10/ext/pipe.cpp +349 -0
  105. data/lib/ext/eventmachine-0.12.10/ext/project.h +151 -0
  106. data/lib/ext/eventmachine-0.12.10/ext/rubymain.cpp +1166 -0
  107. data/lib/ext/eventmachine-0.12.10/ext/sigs.cpp +89 -0
  108. data/lib/ext/eventmachine-0.12.10/ext/sigs.h +32 -0
  109. data/lib/ext/eventmachine-0.12.10/ext/ssl.cpp +460 -0
  110. data/lib/ext/eventmachine-0.12.10/ext/ssl.h +94 -0
  111. data/lib/ext/eventmachine-0.12.10/java/.classpath +8 -0
  112. data/lib/ext/eventmachine-0.12.10/java/.project +17 -0
  113. data/lib/ext/eventmachine-0.12.10/java/src/com/rubyeventmachine/EmReactor.java +570 -0
  114. data/lib/ext/eventmachine-0.12.10/java/src/com/rubyeventmachine/EmReactorException.java +40 -0
  115. data/lib/ext/eventmachine-0.12.10/java/src/com/rubyeventmachine/EventableChannel.java +69 -0
  116. data/lib/ext/eventmachine-0.12.10/java/src/com/rubyeventmachine/EventableDatagramChannel.java +189 -0
  117. data/lib/ext/eventmachine-0.12.10/java/src/com/rubyeventmachine/EventableSocketChannel.java +364 -0
  118. data/lib/ext/eventmachine-0.12.10/java/src/com/rubyeventmachine/application/Application.java +194 -0
  119. data/lib/ext/eventmachine-0.12.10/java/src/com/rubyeventmachine/application/Connection.java +74 -0
  120. data/lib/ext/eventmachine-0.12.10/java/src/com/rubyeventmachine/application/ConnectionFactory.java +37 -0
  121. data/lib/ext/eventmachine-0.12.10/java/src/com/rubyeventmachine/application/DefaultConnectionFactory.java +46 -0
  122. data/lib/ext/eventmachine-0.12.10/java/src/com/rubyeventmachine/application/PeriodicTimer.java +38 -0
  123. data/lib/ext/eventmachine-0.12.10/java/src/com/rubyeventmachine/application/Timer.java +54 -0
  124. data/lib/ext/eventmachine-0.12.10/java/src/com/rubyeventmachine/tests/ApplicationTest.java +109 -0
  125. data/lib/ext/eventmachine-0.12.10/java/src/com/rubyeventmachine/tests/ConnectTest.java +148 -0
  126. data/lib/ext/eventmachine-0.12.10/java/src/com/rubyeventmachine/tests/EMTest.java +80 -0
  127. data/lib/ext/eventmachine-0.12.10/java/src/com/rubyeventmachine/tests/TestDatagrams.java +53 -0
  128. data/lib/ext/eventmachine-0.12.10/java/src/com/rubyeventmachine/tests/TestServers.java +75 -0
  129. data/lib/ext/eventmachine-0.12.10/java/src/com/rubyeventmachine/tests/TestTimers.java +90 -0
  130. data/lib/ext/eventmachine-0.12.10/lib/em/buftok.rb +138 -0
  131. data/lib/ext/eventmachine-0.12.10/lib/em/callback.rb +26 -0
  132. data/lib/ext/eventmachine-0.12.10/lib/em/channel.rb +57 -0
  133. data/lib/ext/eventmachine-0.12.10/lib/em/connection.rb +564 -0
  134. data/lib/ext/eventmachine-0.12.10/lib/em/deferrable.rb +192 -0
  135. data/lib/ext/eventmachine-0.12.10/lib/em/file_watch.rb +54 -0
  136. data/lib/ext/eventmachine-0.12.10/lib/em/future.rb +61 -0
  137. data/lib/ext/eventmachine-0.12.10/lib/em/messages.rb +66 -0
  138. data/lib/ext/eventmachine-0.12.10/lib/em/process_watch.rb +44 -0
  139. data/lib/ext/eventmachine-0.12.10/lib/em/processes.rb +119 -0
  140. data/lib/ext/eventmachine-0.12.10/lib/em/protocols/header_and_content.rb +138 -0
  141. data/lib/ext/eventmachine-0.12.10/lib/em/protocols/httpclient.rb +263 -0
  142. data/lib/ext/eventmachine-0.12.10/lib/em/protocols/httpclient2.rb +590 -0
  143. data/lib/ext/eventmachine-0.12.10/lib/em/protocols/line_and_text.rb +125 -0
  144. data/lib/ext/eventmachine-0.12.10/lib/em/protocols/linetext2.rb +161 -0
  145. data/lib/ext/eventmachine-0.12.10/lib/em/protocols/memcache.rb +323 -0
  146. data/lib/ext/eventmachine-0.12.10/lib/em/protocols/object_protocol.rb +45 -0
  147. data/lib/ext/eventmachine-0.12.10/lib/em/protocols/postgres3.rb +247 -0
  148. data/lib/ext/eventmachine-0.12.10/lib/em/protocols/saslauth.rb +175 -0
  149. data/lib/ext/eventmachine-0.12.10/lib/em/protocols/smtpclient.rb +357 -0
  150. data/lib/ext/eventmachine-0.12.10/lib/em/protocols/smtpserver.rb +547 -0
  151. data/lib/ext/eventmachine-0.12.10/lib/em/protocols/socks4.rb +66 -0
  152. data/lib/ext/eventmachine-0.12.10/lib/em/protocols/stomp.rb +200 -0
  153. data/lib/ext/eventmachine-0.12.10/lib/em/protocols/tcptest.rb +53 -0
  154. data/lib/ext/eventmachine-0.12.10/lib/em/protocols.rb +36 -0
  155. data/lib/ext/eventmachine-0.12.10/lib/em/queue.rb +61 -0
  156. data/lib/ext/eventmachine-0.12.10/lib/em/spawnable.rb +85 -0
  157. data/lib/ext/eventmachine-0.12.10/lib/em/streamer.rb +130 -0
  158. data/lib/ext/eventmachine-0.12.10/lib/em/timers.rb +56 -0
  159. data/lib/ext/eventmachine-0.12.10/lib/em/version.rb +3 -0
  160. data/lib/ext/eventmachine-0.12.10/lib/eventmachine.rb +1592 -0
  161. data/lib/ext/eventmachine-0.12.10/lib/evma/callback.rb +32 -0
  162. data/lib/ext/eventmachine-0.12.10/lib/evma/container.rb +75 -0
  163. data/lib/ext/eventmachine-0.12.10/lib/evma/factory.rb +77 -0
  164. data/lib/ext/eventmachine-0.12.10/lib/evma/protocol.rb +87 -0
  165. data/lib/ext/eventmachine-0.12.10/lib/evma/reactor.rb +48 -0
  166. data/lib/ext/eventmachine-0.12.10/lib/evma.rb +32 -0
  167. data/lib/ext/eventmachine-0.12.10/lib/jeventmachine.rb +257 -0
  168. data/lib/ext/eventmachine-0.12.10/lib/pr_eventmachine.rb +1022 -0
  169. data/lib/ext/eventmachine-0.12.10/setup.rb +1585 -0
  170. data/lib/ext/eventmachine-0.12.10/tasks/cpp.rake_example +77 -0
  171. data/lib/ext/eventmachine-0.12.10/tests/client.crt +31 -0
  172. data/lib/ext/eventmachine-0.12.10/tests/client.key +51 -0
  173. data/lib/ext/eventmachine-0.12.10/tests/test_attach.rb +126 -0
  174. data/lib/ext/eventmachine-0.12.10/tests/test_basic.rb +284 -0
  175. data/lib/ext/eventmachine-0.12.10/tests/test_channel.rb +63 -0
  176. data/lib/ext/eventmachine-0.12.10/tests/test_connection_count.rb +35 -0
  177. data/lib/ext/eventmachine-0.12.10/tests/test_defer.rb +47 -0
  178. data/lib/ext/eventmachine-0.12.10/tests/test_epoll.rb +160 -0
  179. data/lib/ext/eventmachine-0.12.10/tests/test_error_handler.rb +35 -0
  180. data/lib/ext/eventmachine-0.12.10/tests/test_errors.rb +82 -0
  181. data/lib/ext/eventmachine-0.12.10/tests/test_exc.rb +55 -0
  182. data/lib/ext/eventmachine-0.12.10/tests/test_file_watch.rb +49 -0
  183. data/lib/ext/eventmachine-0.12.10/tests/test_futures.rb +198 -0
  184. data/lib/ext/eventmachine-0.12.10/tests/test_get_sock_opt.rb +30 -0
  185. data/lib/ext/eventmachine-0.12.10/tests/test_handler_check.rb +37 -0
  186. data/lib/ext/eventmachine-0.12.10/tests/test_hc.rb +218 -0
  187. data/lib/ext/eventmachine-0.12.10/tests/test_httpclient.rb +218 -0
  188. data/lib/ext/eventmachine-0.12.10/tests/test_httpclient2.rb +153 -0
  189. data/lib/ext/eventmachine-0.12.10/tests/test_inactivity_timeout.rb +50 -0
  190. data/lib/ext/eventmachine-0.12.10/tests/test_kb.rb +60 -0
  191. data/lib/ext/eventmachine-0.12.10/tests/test_ltp.rb +182 -0
  192. data/lib/ext/eventmachine-0.12.10/tests/test_ltp2.rb +317 -0
  193. data/lib/ext/eventmachine-0.12.10/tests/test_next_tick.rb +133 -0
  194. data/lib/ext/eventmachine-0.12.10/tests/test_object_protocol.rb +37 -0
  195. data/lib/ext/eventmachine-0.12.10/tests/test_pause.rb +70 -0
  196. data/lib/ext/eventmachine-0.12.10/tests/test_pending_connect_timeout.rb +48 -0
  197. data/lib/ext/eventmachine-0.12.10/tests/test_process_watch.rb +48 -0
  198. data/lib/ext/eventmachine-0.12.10/tests/test_processes.rb +128 -0
  199. data/lib/ext/eventmachine-0.12.10/tests/test_proxy_connection.rb +92 -0
  200. data/lib/ext/eventmachine-0.12.10/tests/test_pure.rb +125 -0
  201. data/lib/ext/eventmachine-0.12.10/tests/test_queue.rb +44 -0
  202. data/lib/ext/eventmachine-0.12.10/tests/test_running.rb +42 -0
  203. data/lib/ext/eventmachine-0.12.10/tests/test_sasl.rb +72 -0
  204. data/lib/ext/eventmachine-0.12.10/tests/test_send_file.rb +242 -0
  205. data/lib/ext/eventmachine-0.12.10/tests/test_servers.rb +76 -0
  206. data/lib/ext/eventmachine-0.12.10/tests/test_smtpclient.rb +83 -0
  207. data/lib/ext/eventmachine-0.12.10/tests/test_smtpserver.rb +85 -0
  208. data/lib/ext/eventmachine-0.12.10/tests/test_spawn.rb +322 -0
  209. data/lib/ext/eventmachine-0.12.10/tests/test_ssl_args.rb +79 -0
  210. data/lib/ext/eventmachine-0.12.10/tests/test_ssl_methods.rb +50 -0
  211. data/lib/ext/eventmachine-0.12.10/tests/test_ssl_verify.rb +82 -0
  212. data/lib/ext/eventmachine-0.12.10/tests/test_timers.rb +162 -0
  213. data/lib/ext/eventmachine-0.12.10/tests/test_ud.rb +36 -0
  214. data/lib/ext/eventmachine-0.12.10/tests/testem.rb +31 -0
  215. data/lib/ext/eventmachine-0.12.10/web/whatis +7 -0
  216. data/lib/ext/misc/README +1 -0
  217. data/lib/ext/misc/indifferent_access.rb +131 -0
  218. data/lib/ext/uuidtools-2.1.1/CHANGELOG +56 -0
  219. data/lib/ext/uuidtools-2.1.1/LICENSE +20 -0
  220. data/lib/ext/uuidtools-2.1.1/README +13 -0
  221. data/lib/ext/uuidtools-2.1.1/Rakefile +48 -0
  222. data/lib/ext/uuidtools-2.1.1/lib/compat/securerandom.rb +202 -0
  223. data/lib/ext/uuidtools-2.1.1/lib/uuidtools/version.rb +35 -0
  224. data/lib/ext/uuidtools-2.1.1/lib/uuidtools.rb +618 -0
  225. data/lib/ext/uuidtools-2.1.1/spec/spec.opts +1 -0
  226. data/lib/ext/uuidtools-2.1.1/spec/spec_helper.rb +7 -0
  227. data/lib/ext/uuidtools-2.1.1/spec/uuidtools/mac_address_spec.rb +15 -0
  228. data/lib/ext/uuidtools-2.1.1/spec/uuidtools/utility_spec.rb +21 -0
  229. data/lib/ext/uuidtools-2.1.1/spec/uuidtools/uuid_creation_spec.rb +121 -0
  230. data/lib/ext/uuidtools-2.1.1/spec/uuidtools/uuid_parsing_spec.rb +127 -0
  231. data/lib/ext/uuidtools-2.1.1/tasks/benchmark.rake +38 -0
  232. data/lib/ext/uuidtools-2.1.1/tasks/clobber.rake +2 -0
  233. data/lib/ext/uuidtools-2.1.1/tasks/gem.rake +68 -0
  234. data/lib/ext/uuidtools-2.1.1/tasks/git.rake +40 -0
  235. data/lib/ext/uuidtools-2.1.1/tasks/metrics.rake +22 -0
  236. data/lib/ext/uuidtools-2.1.1/tasks/rdoc.rake +29 -0
  237. data/lib/ext/uuidtools-2.1.1/tasks/rubyforge.rake +89 -0
  238. data/lib/ext/uuidtools-2.1.1/tasks/spec.rake +64 -0
  239. data/lib/ext/uuidtools-2.1.1/website/index.html +95 -0
  240. data/lib/sidekick/client/sidekick_client.rb +46 -0
  241. data/lib/sidekick/shared/sidekick_logger.rb +14 -0
  242. data/lib/sidekick/shared/sidekick_queue_publisher.rb +91 -0
  243. data/lib/sidekick-client.rb +7 -0
  244. data/sidekick-client.gemspec +289 -0
  245. data/test/helper.rb +10 -0
  246. data/test/test_sidekick-client.rb +7 -0
  247. metadata +311 -0
@@ -0,0 +1,521 @@
1
+
2
+ #:stopdoc:
3
+ # this file was autogenerated on Wed Jun 17 15:20:32 +0100 2009
4
+ # using amqp-0.9.1.xml (mtime: Fri May 01 14:14:29 +0100 2009)
5
+ #
6
+ # DO NOT EDIT! (edit ext/qparser.rb and config.yml instead, and run 'ruby qparser.rb')
7
+
8
+ module Qrack
9
+ module Protocol09
10
+ HEADER = "AMQP".freeze
11
+ VERSION_MAJOR = 0
12
+ VERSION_MINOR = 9
13
+ REVISION = 1
14
+ PORT = 5672
15
+ SSL_PORT = 5671
16
+
17
+ RESPONSES = {
18
+ 200 => :REPLY_SUCCESS,
19
+ 311 => :CONTENT_TOO_LARGE,
20
+ 313 => :NO_CONSUMERS,
21
+ 320 => :CONNECTION_FORCED,
22
+ 402 => :INVALID_PATH,
23
+ 403 => :ACCESS_REFUSED,
24
+ 404 => :NOT_FOUND,
25
+ 405 => :RESOURCE_LOCKED,
26
+ 406 => :PRECONDITION_FAILED,
27
+ 502 => :SYNTAX_ERROR,
28
+ 503 => :COMMAND_INVALID,
29
+ 504 => :CHANNEL_ERROR,
30
+ 505 => :UNEXPECTED_FRAME,
31
+ 506 => :RESOURCE_ERROR,
32
+ 530 => :NOT_ALLOWED,
33
+ 540 => :NOT_IMPLEMENTED,
34
+ 541 => :INTERNAL_ERROR,
35
+ }
36
+
37
+ FIELDS = [
38
+ :bit,
39
+ :long,
40
+ :longlong,
41
+ :longstr,
42
+ :octet,
43
+ :short,
44
+ :shortstr,
45
+ :table,
46
+ :timestamp,
47
+ ]
48
+
49
+ class Class
50
+ class << self
51
+ FIELDS.each do |f|
52
+ class_eval %[
53
+ def #{f} name
54
+ properties << [ :#{f}, name ] unless properties.include?([:#{f}, name])
55
+ attr_accessor name
56
+ end
57
+ ]
58
+ end
59
+
60
+ def properties() @properties ||= [] end
61
+
62
+ def id() self::ID end
63
+ def name() self::NAME end
64
+ end
65
+
66
+ class Method
67
+ class << self
68
+ FIELDS.each do |f|
69
+ class_eval %[
70
+ def #{f} name
71
+ arguments << [ :#{f}, name ] unless arguments.include?([:#{f}, name])
72
+ attr_accessor name
73
+ end
74
+ ]
75
+ end
76
+
77
+ def arguments() @arguments ||= [] end
78
+
79
+ def parent() Protocol09.const_get(self.to_s[/Protocol09::(.+?)::/,1]) end
80
+ def id() self::ID end
81
+ def name() self::NAME end
82
+ end
83
+
84
+ def == b
85
+ self.class.arguments.inject(true) do |eql, (type, name)|
86
+ eql and __send__("#{name}") == b.__send__("#{name}")
87
+ end
88
+ end
89
+ end
90
+
91
+ def self.methods() @methods ||= {} end
92
+
93
+ def self.Method(id, name)
94
+ @_base_methods ||= {}
95
+ @_base_methods[id] ||= ::Class.new(Method) do
96
+ class_eval %[
97
+ def self.inherited klass
98
+ klass.const_set(:ID, #{id})
99
+ klass.const_set(:NAME, :#{name.to_s})
100
+ klass.parent.methods[#{id}] = klass
101
+ klass.parent.methods[klass::NAME] = klass
102
+ end
103
+ ]
104
+ end
105
+ end
106
+ end
107
+
108
+ def self.classes() @classes ||= {} end
109
+
110
+ def self.Class(id, name)
111
+ @_base_classes ||= {}
112
+ @_base_classes[id] ||= ::Class.new(Class) do
113
+ class_eval %[
114
+ def self.inherited klass
115
+ klass.const_set(:ID, #{id})
116
+ klass.const_set(:NAME, :#{name.to_s})
117
+ Protocol09.classes[#{id}] = klass
118
+ Protocol09.classes[klass::NAME] = klass
119
+ end
120
+ ]
121
+ end
122
+ end
123
+ end
124
+ end
125
+
126
+ module Qrack
127
+ module Protocol09
128
+ class Connection < Class( 10, :connection ); end
129
+ class Channel < Class( 20, :channel ); end
130
+ class Exchange < Class( 40, :exchange ); end
131
+ class Queue < Class( 50, :queue ); end
132
+ class Basic < Class( 60, :basic ); end
133
+ class Tx < Class( 90, :tx ); end
134
+
135
+ class Connection
136
+
137
+ class Start < Method( 10, :start ); end
138
+ class StartOk < Method( 11, :start_ok ); end
139
+ class Secure < Method( 20, :secure ); end
140
+ class SecureOk < Method( 21, :secure_ok ); end
141
+ class Tune < Method( 30, :tune ); end
142
+ class TuneOk < Method( 31, :tune_ok ); end
143
+ class Open < Method( 40, :open ); end
144
+ class OpenOk < Method( 41, :open_ok ); end
145
+ class Close < Method( 50, :close ); end
146
+ class CloseOk < Method( 51, :close_ok ); end
147
+
148
+
149
+ class Start
150
+ octet :version_major
151
+ octet :version_minor
152
+ table :server_properties
153
+ longstr :mechanisms
154
+ longstr :locales
155
+ end
156
+
157
+ class StartOk
158
+ table :client_properties
159
+ shortstr :mechanism
160
+ longstr :response
161
+ shortstr :locale
162
+ end
163
+
164
+ class Secure
165
+ longstr :challenge
166
+ end
167
+
168
+ class SecureOk
169
+ longstr :response
170
+ end
171
+
172
+ class Tune
173
+ short :channel_max
174
+ long :frame_max
175
+ short :heartbeat
176
+ end
177
+
178
+ class TuneOk
179
+ short :channel_max
180
+ long :frame_max
181
+ short :heartbeat
182
+ end
183
+
184
+ class Open
185
+ shortstr :virtual_host
186
+ shortstr :reserved_1
187
+ bit :reserved_2
188
+ end
189
+
190
+ class OpenOk
191
+ shortstr :reserved_1
192
+ end
193
+
194
+ class Close
195
+ short :reply_code
196
+ shortstr :reply_text
197
+ short :class_id
198
+ short :method_id
199
+ end
200
+
201
+ class CloseOk
202
+ end
203
+
204
+ end
205
+
206
+ class Channel
207
+
208
+ class Open < Method( 10, :open ); end
209
+ class OpenOk < Method( 11, :open_ok ); end
210
+ class Flow < Method( 20, :flow ); end
211
+ class FlowOk < Method( 21, :flow_ok ); end
212
+ class Close < Method( 40, :close ); end
213
+ class CloseOk < Method( 41, :close_ok ); end
214
+
215
+
216
+ class Open
217
+ shortstr :reserved_1
218
+ end
219
+
220
+ class OpenOk
221
+ longstr :reserved_1
222
+ end
223
+
224
+ class Flow
225
+ bit :active
226
+ end
227
+
228
+ class FlowOk
229
+ bit :active
230
+ end
231
+
232
+ class Close
233
+ short :reply_code
234
+ shortstr :reply_text
235
+ short :class_id
236
+ short :method_id
237
+ end
238
+
239
+ class CloseOk
240
+ end
241
+
242
+ end
243
+
244
+ class Exchange
245
+
246
+ class Declare < Method( 10, :declare ); end
247
+ class DeclareOk < Method( 11, :declare_ok ); end
248
+ class Delete < Method( 20, :delete ); end
249
+ class DeleteOk < Method( 21, :delete_ok ); end
250
+
251
+
252
+ class Declare
253
+ short :reserved_1
254
+ shortstr :exchange
255
+ shortstr :type
256
+ bit :passive
257
+ bit :durable
258
+ bit :reserved_2
259
+ bit :reserved_3
260
+ bit :no_wait
261
+ table :arguments
262
+ end
263
+
264
+ class DeclareOk
265
+ end
266
+
267
+ class Delete
268
+ short :reserved_1
269
+ shortstr :exchange
270
+ bit :if_unused
271
+ bit :no_wait
272
+ end
273
+
274
+ class DeleteOk
275
+ end
276
+
277
+ end
278
+
279
+ class Queue
280
+
281
+ class Declare < Method( 10, :declare ); end
282
+ class DeclareOk < Method( 11, :declare_ok ); end
283
+ class Bind < Method( 20, :bind ); end
284
+ class BindOk < Method( 21, :bind_ok ); end
285
+ class Unbind < Method( 50, :unbind ); end
286
+ class UnbindOk < Method( 51, :unbind_ok ); end
287
+ class Purge < Method( 30, :purge ); end
288
+ class PurgeOk < Method( 31, :purge_ok ); end
289
+ class Delete < Method( 40, :delete ); end
290
+ class DeleteOk < Method( 41, :delete_ok ); end
291
+
292
+
293
+ class Declare
294
+ short :reserved_1
295
+ shortstr :queue
296
+ bit :passive
297
+ bit :durable
298
+ bit :exclusive
299
+ bit :auto_delete
300
+ bit :no_wait
301
+ table :arguments
302
+ end
303
+
304
+ class DeclareOk
305
+ shortstr :queue
306
+ long :message_count
307
+ long :consumer_count
308
+ end
309
+
310
+ class Bind
311
+ short :reserved_1
312
+ shortstr :queue
313
+ shortstr :exchange
314
+ shortstr :routing_key
315
+ bit :no_wait
316
+ table :arguments
317
+ end
318
+
319
+ class BindOk
320
+ end
321
+
322
+ class Unbind
323
+ short :reserved_1
324
+ shortstr :queue
325
+ shortstr :exchange
326
+ shortstr :routing_key
327
+ table :arguments
328
+ end
329
+
330
+ class UnbindOk
331
+ end
332
+
333
+ class Purge
334
+ short :reserved_1
335
+ shortstr :queue
336
+ bit :no_wait
337
+ end
338
+
339
+ class PurgeOk
340
+ long :message_count
341
+ end
342
+
343
+ class Delete
344
+ short :reserved_1
345
+ shortstr :queue
346
+ bit :if_unused
347
+ bit :if_empty
348
+ bit :no_wait
349
+ end
350
+
351
+ class DeleteOk
352
+ long :message_count
353
+ end
354
+
355
+ end
356
+
357
+ class Basic
358
+ shortstr :content_type
359
+ shortstr :content_encoding
360
+ table :headers
361
+ octet :delivery_mode
362
+ octet :priority
363
+ shortstr :correlation_id
364
+ shortstr :reply_to
365
+ shortstr :expiration
366
+ shortstr :message_id
367
+ timestamp :timestamp
368
+ shortstr :type
369
+ shortstr :user_id
370
+ shortstr :app_id
371
+ shortstr :reserved
372
+
373
+ class Qos < Method( 10, :qos ); end
374
+ class QosOk < Method( 11, :qos_ok ); end
375
+ class Consume < Method( 20, :consume ); end
376
+ class ConsumeOk < Method( 21, :consume_ok ); end
377
+ class Cancel < Method( 30, :cancel ); end
378
+ class CancelOk < Method( 31, :cancel_ok ); end
379
+ class Publish < Method( 40, :publish ); end
380
+ class Return < Method( 50, :return ); end
381
+ class Deliver < Method( 60, :deliver ); end
382
+ class Get < Method( 70, :get ); end
383
+ class GetOk < Method( 71, :get_ok ); end
384
+ class GetEmpty < Method( 72, :get_empty ); end
385
+ class Ack < Method( 80, :ack ); end
386
+ class Reject < Method( 90, :reject ); end
387
+ class RecoverAsync < Method( 100, :recover_async ); end
388
+ class Recover < Method( 110, :recover ); end
389
+ class RecoverOk < Method( 111, :recover_ok ); end
390
+
391
+
392
+ class Qos
393
+ long :prefetch_size
394
+ short :prefetch_count
395
+ bit :global
396
+ end
397
+
398
+ class QosOk
399
+ end
400
+
401
+ class Consume
402
+ short :reserved_1
403
+ shortstr :queue
404
+ shortstr :consumer_tag
405
+ bit :no_local
406
+ bit :no_ack
407
+ bit :exclusive
408
+ bit :no_wait
409
+ table :arguments
410
+ end
411
+
412
+ class ConsumeOk
413
+ shortstr :consumer_tag
414
+ end
415
+
416
+ class Cancel
417
+ shortstr :consumer_tag
418
+ bit :no_wait
419
+ end
420
+
421
+ class CancelOk
422
+ shortstr :consumer_tag
423
+ end
424
+
425
+ class Publish
426
+ short :reserved_1
427
+ shortstr :exchange
428
+ shortstr :routing_key
429
+ bit :mandatory
430
+ bit :immediate
431
+ end
432
+
433
+ class Return
434
+ short :reply_code
435
+ shortstr :reply_text
436
+ shortstr :exchange
437
+ shortstr :routing_key
438
+ end
439
+
440
+ class Deliver
441
+ shortstr :consumer_tag
442
+ longlong :delivery_tag
443
+ bit :redelivered
444
+ shortstr :exchange
445
+ shortstr :routing_key
446
+ end
447
+
448
+ class Get
449
+ short :reserved_1
450
+ shortstr :queue
451
+ bit :no_ack
452
+ end
453
+
454
+ class GetOk
455
+ longlong :delivery_tag
456
+ bit :redelivered
457
+ shortstr :exchange
458
+ shortstr :routing_key
459
+ long :message_count
460
+ end
461
+
462
+ class GetEmpty
463
+ shortstr :reserved_1
464
+ end
465
+
466
+ class Ack
467
+ longlong :delivery_tag
468
+ bit :multiple
469
+ end
470
+
471
+ class Reject
472
+ longlong :delivery_tag
473
+ bit :requeue
474
+ end
475
+
476
+ class RecoverAsync
477
+ bit :requeue
478
+ end
479
+
480
+ class Recover
481
+ bit :requeue
482
+ end
483
+
484
+ class RecoverOk
485
+ end
486
+
487
+ end
488
+
489
+ class Tx
490
+
491
+ class Select < Method( 10, :select ); end
492
+ class SelectOk < Method( 11, :select_ok ); end
493
+ class Commit < Method( 20, :commit ); end
494
+ class CommitOk < Method( 21, :commit_ok ); end
495
+ class Rollback < Method( 30, :rollback ); end
496
+ class RollbackOk < Method( 31, :rollback_ok ); end
497
+
498
+
499
+ class Select
500
+ end
501
+
502
+ class SelectOk
503
+ end
504
+
505
+ class Commit
506
+ end
507
+
508
+ class CommitOk
509
+ end
510
+
511
+ class Rollback
512
+ end
513
+
514
+ class RollbackOk
515
+ end
516
+
517
+ end
518
+
519
+ end
520
+
521
+ end