auser-poolparty 1.3.1 → 1.3.2

Sign up to get free protection for your applications and to get access to all the features.
Files changed (424) hide show
  1. data/VERSION.yml +1 -1
  2. data/bin/cloud-compile +6 -1
  3. data/config/jeweler.rb +1 -3
  4. data/lib/cloud_providers/cloud_provider_instance.rb +11 -1
  5. data/lib/dependency_resolvers/chef/resources/chef_recipe.rb +51 -0
  6. data/lib/dependency_resolvers/chef.rb +12 -3
  7. data/lib/mixins/callbacks.rb +6 -2
  8. data/lib/poolparty/plugins/apache2/passenger_site.rb +2 -2
  9. data/test/fixtures/chef/recipes/sudo/attributes/sudoers.rb +30 -0
  10. data/test/fixtures/chef/recipes/sudo/recipes/default.rb +33 -0
  11. data/test/fixtures/chef/recipes/sudo/templates/default/sudoers.erb +22 -0
  12. data/test/lib/dependency_resolvers/chef/resources/chef_recipe_test.rb +21 -0
  13. data/test/lib/dependency_resolvers/chef_test.rb +8 -1
  14. data/vendor/gems/thrift/CHANGELOG +1 -0
  15. data/vendor/gems/thrift/Makefile.am +25 -6
  16. data/vendor/gems/thrift/Manifest +81 -0
  17. data/vendor/gems/thrift/README +17 -111
  18. data/vendor/gems/thrift/Rakefile +104 -0
  19. data/vendor/gems/thrift/{lib/hs/Setup.lhs → benchmark/Benchmark.thrift} +5 -4
  20. data/vendor/gems/thrift/benchmark/benchmark.rb +271 -0
  21. data/vendor/gems/thrift/benchmark/client.rb +74 -0
  22. data/vendor/gems/thrift/benchmark/server.rb +82 -0
  23. data/vendor/gems/thrift/benchmark/thin_server.rb +44 -0
  24. data/vendor/gems/thrift/ext/binary_protocol_accelerated.c +474 -0
  25. data/vendor/gems/thrift/{lib/cocoa/src/protocol/TProtocolException.m → ext/binary_protocol_accelerated.h} +1 -4
  26. data/vendor/gems/thrift/ext/compact_protocol.c +665 -0
  27. data/vendor/gems/thrift/{lib/cocoa/src/protocol/TProtocolException.h → ext/compact_protocol.h} +1 -6
  28. data/vendor/gems/thrift/ext/constants.h +95 -0
  29. data/vendor/gems/thrift/{contrib/fb303/Makefile.am → ext/extconf.rb} +8 -13
  30. data/vendor/gems/thrift/{compiler/cpp/src/platform.h → ext/macros.h} +18 -13
  31. data/vendor/gems/thrift/ext/memory_buffer.c +76 -0
  32. data/vendor/gems/thrift/{lib/csharp/src/Protocol/TMessageType.cs → ext/memory_buffer.h} +2 -13
  33. data/vendor/gems/thrift/ext/protocol.c +185 -0
  34. data/vendor/gems/thrift/{lib/csharp/src/TProcessor.cs → ext/protocol.h} +2 -11
  35. data/vendor/gems/thrift/ext/struct.c +606 -0
  36. data/vendor/gems/thrift/ext/struct.h +67 -0
  37. data/vendor/gems/thrift/ext/thrift_native.c +194 -0
  38. data/vendor/gems/thrift/lib/thrift/client.rb +62 -0
  39. data/vendor/gems/thrift/{contrib/fb303/py/fb303_scripts/__init__.py → lib/thrift/core_ext/fixnum.rb} +13 -4
  40. data/vendor/gems/thrift/{contrib/fb303/global_footer.mk → lib/thrift/core_ext.rb} +4 -2
  41. data/vendor/gems/thrift/lib/thrift/exceptions.rb +82 -0
  42. data/vendor/gems/thrift/lib/thrift/processor.rb +57 -0
  43. data/vendor/gems/thrift/lib/thrift/protocol/base_protocol.rb +290 -0
  44. data/vendor/gems/thrift/lib/thrift/protocol/binary_protocol.rb +225 -0
  45. data/vendor/gems/thrift/{cleanup.sh → lib/thrift/protocol/binary_protocol_accelerated.rb} +19 -42
  46. data/vendor/gems/thrift/lib/thrift/protocol/compact_protocol.rb +422 -0
  47. data/vendor/gems/thrift/lib/thrift/serializer/deserializer.rb +33 -0
  48. data/vendor/gems/thrift/{bootstrap.sh → lib/thrift/serializer/serializer.rb} +17 -18
  49. data/vendor/gems/thrift/lib/thrift/server/base_server.rb +31 -0
  50. data/vendor/gems/thrift/lib/thrift/server/mongrel_http_server.rb +58 -0
  51. data/vendor/gems/thrift/lib/thrift/server/nonblocking_server.rb +296 -0
  52. data/vendor/gems/thrift/lib/thrift/server/simple_server.rb +43 -0
  53. data/vendor/gems/thrift/lib/thrift/server/thread_pool_server.rb +75 -0
  54. data/vendor/gems/thrift/lib/thrift/server/threaded_server.rb +47 -0
  55. data/vendor/gems/thrift/lib/thrift/struct.rb +298 -0
  56. data/vendor/gems/thrift/{contrib/fb303/bootstrap.sh → lib/thrift/thrift_native.rb} +5 -7
  57. data/vendor/gems/thrift/lib/{erl/Makefile → thrift/transport/base_server_transport.rb} +20 -20
  58. data/vendor/gems/thrift/lib/thrift/transport/base_transport.rb +70 -0
  59. data/vendor/gems/thrift/lib/thrift/transport/buffered_transport.rb +77 -0
  60. data/vendor/gems/thrift/lib/thrift/transport/framed_transport.rb +90 -0
  61. data/vendor/gems/thrift/lib/thrift/transport/http_client_transport.rb +45 -0
  62. data/vendor/gems/thrift/lib/thrift/transport/io_stream_transport.rb +39 -0
  63. data/vendor/gems/thrift/lib/thrift/transport/memory_buffer_transport.rb +96 -0
  64. data/vendor/gems/thrift/lib/thrift/transport/server_socket.rb +63 -0
  65. data/vendor/gems/thrift/lib/thrift/transport/socket.rb +136 -0
  66. data/vendor/gems/thrift/lib/{java/Makefile.am → thrift/transport/unix_server_socket.rb} +39 -17
  67. data/vendor/gems/thrift/{contrib/fb303/global_header.mk → lib/thrift/transport/unix_socket.rb} +23 -21
  68. data/vendor/gems/thrift/lib/thrift/types.rb +101 -0
  69. data/vendor/gems/thrift/lib/thrift.rb +59 -0
  70. data/vendor/gems/thrift/script/proto_benchmark.rb +121 -0
  71. data/vendor/gems/thrift/{lib/Makefile.am → script/read_struct.rb} +24 -36
  72. data/vendor/gems/thrift/{contrib/fb303/py/setup.py → script/write_struct.rb} +8 -5
  73. data/vendor/gems/thrift/setup.rb +1585 -0
  74. data/vendor/gems/thrift/spec/ThriftSpec.thrift +84 -0
  75. data/vendor/gems/thrift/spec/base_protocol_spec.rb +160 -0
  76. data/vendor/gems/thrift/spec/base_transport_spec.rb +351 -0
  77. data/vendor/gems/thrift/{contrib/fb303/py/Makefile.am → spec/binary_protocol_accelerated_spec.rb} +22 -25
  78. data/vendor/gems/thrift/spec/binary_protocol_spec.rb +63 -0
  79. data/vendor/gems/thrift/spec/binary_protocol_spec_shared.rb +375 -0
  80. data/vendor/gems/thrift/spec/client_spec.rb +100 -0
  81. data/vendor/gems/thrift/spec/compact_protocol_spec.rb +117 -0
  82. data/vendor/gems/thrift/spec/exception_spec.rb +142 -0
  83. data/vendor/gems/thrift/spec/http_client_spec.rb +49 -0
  84. data/vendor/gems/thrift/spec/mongrel_http_server_spec.rb +117 -0
  85. data/vendor/gems/thrift/spec/nonblocking_server_spec.rb +265 -0
  86. data/vendor/gems/thrift/spec/processor_spec.rb +83 -0
  87. data/vendor/gems/thrift/spec/serializer_spec.rb +69 -0
  88. data/vendor/gems/thrift/spec/server_socket_spec.rb +80 -0
  89. data/vendor/gems/thrift/spec/server_spec.rb +160 -0
  90. data/vendor/gems/thrift/spec/socket_spec.rb +61 -0
  91. data/vendor/gems/thrift/spec/socket_spec_shared.rb +104 -0
  92. data/vendor/gems/thrift/spec/spec_helper.rb +60 -0
  93. data/vendor/gems/thrift/spec/struct_spec.rb +252 -0
  94. data/vendor/gems/thrift/spec/types_spec.rb +116 -0
  95. data/vendor/gems/thrift/spec/unix_socket_spec.rb +108 -0
  96. data/vendor/gems/trollop/FAQ.txt +84 -0
  97. data/vendor/gems/trollop/History.txt +101 -0
  98. data/vendor/gems/trollop/Manifest.txt +7 -0
  99. data/vendor/gems/trollop/README.txt +40 -0
  100. data/vendor/gems/trollop/Rakefile +36 -0
  101. data/vendor/gems/trollop/lib/trollop.rb +739 -0
  102. data/vendor/gems/trollop/release-script.txt +13 -0
  103. data/vendor/gems/trollop/test/test_trollop.rb +1048 -0
  104. data/vendor/gems/trollop/www/index.html +172 -0
  105. metadata +123 -347
  106. data/vendor/gems/thrift/CHANGES +0 -35
  107. data/vendor/gems/thrift/CONTRIBUTORS +0 -77
  108. data/vendor/gems/thrift/DISCLAIMER +0 -6
  109. data/vendor/gems/thrift/LICENSE +0 -202
  110. data/vendor/gems/thrift/NEWS +0 -79
  111. data/vendor/gems/thrift/NOTICE +0 -26
  112. data/vendor/gems/thrift/aclocal/ax_boost_base.m4 +0 -198
  113. data/vendor/gems/thrift/aclocal/ax_javac_and_java.m4 +0 -107
  114. data/vendor/gems/thrift/aclocal/ax_lib_event.m4 +0 -194
  115. data/vendor/gems/thrift/aclocal/ax_lib_zlib.m4 +0 -173
  116. data/vendor/gems/thrift/aclocal/ax_signed_right_shift.m4 +0 -127
  117. data/vendor/gems/thrift/aclocal/ax_thrift_internal.m4 +0 -39
  118. data/vendor/gems/thrift/compiler/cpp/Makefile.am +0 -136
  119. data/vendor/gems/thrift/compiler/cpp/README +0 -39
  120. data/vendor/gems/thrift/compiler/cpp/src/generate/t_cocoa_generator.cc +0 -2331
  121. data/vendor/gems/thrift/compiler/cpp/src/generate/t_cpp_generator.cc +0 -3003
  122. data/vendor/gems/thrift/compiler/cpp/src/generate/t_csharp_generator.cc +0 -1700
  123. data/vendor/gems/thrift/compiler/cpp/src/generate/t_erl_generator.cc +0 -932
  124. data/vendor/gems/thrift/compiler/cpp/src/generate/t_generator.cc +0 -173
  125. data/vendor/gems/thrift/compiler/cpp/src/generate/t_generator.h +0 -321
  126. data/vendor/gems/thrift/compiler/cpp/src/generate/t_hs_generator.cc +0 -1445
  127. data/vendor/gems/thrift/compiler/cpp/src/generate/t_html_generator.cc +0 -637
  128. data/vendor/gems/thrift/compiler/cpp/src/generate/t_java_generator.cc +0 -3069
  129. data/vendor/gems/thrift/compiler/cpp/src/generate/t_ocaml_generator.cc +0 -1673
  130. data/vendor/gems/thrift/compiler/cpp/src/generate/t_oop_generator.h +0 -77
  131. data/vendor/gems/thrift/compiler/cpp/src/generate/t_perl_generator.cc +0 -1812
  132. data/vendor/gems/thrift/compiler/cpp/src/generate/t_php_generator.cc +0 -2281
  133. data/vendor/gems/thrift/compiler/cpp/src/generate/t_py_generator.cc +0 -2310
  134. data/vendor/gems/thrift/compiler/cpp/src/generate/t_rb_generator.cc +0 -1114
  135. data/vendor/gems/thrift/compiler/cpp/src/generate/t_st_generator.cc +0 -1071
  136. data/vendor/gems/thrift/compiler/cpp/src/generate/t_xsd_generator.cc +0 -354
  137. data/vendor/gems/thrift/compiler/cpp/src/globals.h +0 -117
  138. data/vendor/gems/thrift/compiler/cpp/src/main.cc +0 -1207
  139. data/vendor/gems/thrift/compiler/cpp/src/main.h +0 -103
  140. data/vendor/gems/thrift/compiler/cpp/src/md5.c +0 -381
  141. data/vendor/gems/thrift/compiler/cpp/src/md5.h +0 -91
  142. data/vendor/gems/thrift/compiler/cpp/src/parse/t_base_type.h +0 -137
  143. data/vendor/gems/thrift/compiler/cpp/src/parse/t_const.h +0 -59
  144. data/vendor/gems/thrift/compiler/cpp/src/parse/t_const_value.h +0 -121
  145. data/vendor/gems/thrift/compiler/cpp/src/parse/t_container.h +0 -56
  146. data/vendor/gems/thrift/compiler/cpp/src/parse/t_doc.h +0 -51
  147. data/vendor/gems/thrift/compiler/cpp/src/parse/t_enum.h +0 -59
  148. data/vendor/gems/thrift/compiler/cpp/src/parse/t_enum_value.h +0 -64
  149. data/vendor/gems/thrift/compiler/cpp/src/parse/t_field.h +0 -150
  150. data/vendor/gems/thrift/compiler/cpp/src/parse/t_function.h +0 -93
  151. data/vendor/gems/thrift/compiler/cpp/src/parse/t_list.h +0 -56
  152. data/vendor/gems/thrift/compiler/cpp/src/parse/t_map.h +0 -64
  153. data/vendor/gems/thrift/compiler/cpp/src/parse/t_program.h +0 -223
  154. data/vendor/gems/thrift/compiler/cpp/src/parse/t_scope.h +0 -86
  155. data/vendor/gems/thrift/compiler/cpp/src/parse/t_service.h +0 -68
  156. data/vendor/gems/thrift/compiler/cpp/src/parse/t_set.h +0 -55
  157. data/vendor/gems/thrift/compiler/cpp/src/parse/t_struct.h +0 -127
  158. data/vendor/gems/thrift/compiler/cpp/src/parse/t_type.h +0 -176
  159. data/vendor/gems/thrift/compiler/cpp/src/parse/t_typedef.h +0 -70
  160. data/vendor/gems/thrift/compiler/cpp/src/thriftl.ll +0 -303
  161. data/vendor/gems/thrift/compiler/cpp/src/thrifty.yy +0 -1140
  162. data/vendor/gems/thrift/configure.ac +0 -255
  163. data/vendor/gems/thrift/contrib/fb303/LICENSE +0 -16
  164. data/vendor/gems/thrift/contrib/fb303/README +0 -37
  165. data/vendor/gems/thrift/contrib/fb303/acinclude.m4 +0 -258
  166. data/vendor/gems/thrift/contrib/fb303/aclocal/ax_boost_base.m4 +0 -198
  167. data/vendor/gems/thrift/contrib/fb303/configure.ac +0 -115
  168. data/vendor/gems/thrift/contrib/fb303/cpp/FacebookBase.cpp +0 -124
  169. data/vendor/gems/thrift/contrib/fb303/cpp/FacebookBase.h +0 -103
  170. data/vendor/gems/thrift/contrib/fb303/cpp/Makefile.am +0 -84
  171. data/vendor/gems/thrift/contrib/fb303/cpp/ServiceTracker.cpp +0 -481
  172. data/vendor/gems/thrift/contrib/fb303/cpp/ServiceTracker.h +0 -215
  173. data/vendor/gems/thrift/contrib/fb303/if/fb303.thrift +0 -112
  174. data/vendor/gems/thrift/contrib/fb303/java/FacebookBase.java +0 -103
  175. data/vendor/gems/thrift/contrib/fb303/java/build.xml +0 -84
  176. data/vendor/gems/thrift/contrib/fb303/php/FacebookBase.php +0 -89
  177. data/vendor/gems/thrift/contrib/fb303/py/fb303/FacebookBase.py +0 -82
  178. data/vendor/gems/thrift/contrib/fb303/py/fb303_scripts/fb303_simple_mgmt.py +0 -195
  179. data/vendor/gems/thrift/contrib/thrift.el +0 -126
  180. data/vendor/gems/thrift/contrib/thrift.spec +0 -206
  181. data/vendor/gems/thrift/contrib/thrift.vim +0 -91
  182. data/vendor/gems/thrift/contrib/thrift_dump.cpp +0 -91
  183. data/vendor/gems/thrift/doc/lgpl-2.1.txt +0 -504
  184. data/vendor/gems/thrift/doc/otp-base-license.txt +0 -20
  185. data/vendor/gems/thrift/doc/thrift.bnf +0 -96
  186. data/vendor/gems/thrift/doc/thrift.tex +0 -1057
  187. data/vendor/gems/thrift/lib/cocoa/README +0 -21
  188. data/vendor/gems/thrift/lib/cocoa/src/TApplicationException.h +0 -44
  189. data/vendor/gems/thrift/lib/cocoa/src/TApplicationException.m +0 -130
  190. data/vendor/gems/thrift/lib/cocoa/src/TException.h +0 -34
  191. data/vendor/gems/thrift/lib/cocoa/src/TException.m +0 -64
  192. data/vendor/gems/thrift/lib/cocoa/src/TProcessor.h +0 -29
  193. data/vendor/gems/thrift/lib/cocoa/src/TProcessorFactory.h +0 -27
  194. data/vendor/gems/thrift/lib/cocoa/src/TSharedProcessorFactory.h +0 -27
  195. data/vendor/gems/thrift/lib/cocoa/src/TSharedProcessorFactory.m +0 -51
  196. data/vendor/gems/thrift/lib/cocoa/src/protocol/TBinaryProtocol.h +0 -51
  197. data/vendor/gems/thrift/lib/cocoa/src/protocol/TBinaryProtocol.m +0 -477
  198. data/vendor/gems/thrift/lib/cocoa/src/protocol/TProtocol.h +0 -148
  199. data/vendor/gems/thrift/lib/cocoa/src/protocol/TProtocolFactory.h +0 -29
  200. data/vendor/gems/thrift/lib/cocoa/src/protocol/TProtocolUtil.h +0 -29
  201. data/vendor/gems/thrift/lib/cocoa/src/protocol/TProtocolUtil.m +0 -104
  202. data/vendor/gems/thrift/lib/cocoa/src/server/TSocketServer.h +0 -50
  203. data/vendor/gems/thrift/lib/cocoa/src/server/TSocketServer.m +0 -153
  204. data/vendor/gems/thrift/lib/cocoa/src/transport/THTTPClient.h +0 -42
  205. data/vendor/gems/thrift/lib/cocoa/src/transport/THTTPClient.m +0 -159
  206. data/vendor/gems/thrift/lib/cocoa/src/transport/TNSFileHandleTransport.h +0 -35
  207. data/vendor/gems/thrift/lib/cocoa/src/transport/TNSFileHandleTransport.m +0 -91
  208. data/vendor/gems/thrift/lib/cocoa/src/transport/TNSStreamTransport.h +0 -38
  209. data/vendor/gems/thrift/lib/cocoa/src/transport/TNSStreamTransport.m +0 -89
  210. data/vendor/gems/thrift/lib/cocoa/src/transport/TSocketClient.h +0 -32
  211. data/vendor/gems/thrift/lib/cocoa/src/transport/TSocketClient.m +0 -58
  212. data/vendor/gems/thrift/lib/cocoa/src/transport/TTransport.h +0 -36
  213. data/vendor/gems/thrift/lib/cocoa/src/transport/TTransportException.h +0 -30
  214. data/vendor/gems/thrift/lib/cocoa/src/transport/TTransportException.m +0 -43
  215. data/vendor/gems/thrift/lib/cpp/Makefile.am +0 -158
  216. data/vendor/gems/thrift/lib/cpp/README +0 -67
  217. data/vendor/gems/thrift/lib/cpp/src/TLogging.h +0 -163
  218. data/vendor/gems/thrift/lib/cpp/src/TProcessor.h +0 -53
  219. data/vendor/gems/thrift/lib/cpp/src/TReflectionLocal.h +0 -96
  220. data/vendor/gems/thrift/lib/cpp/src/Thrift.cpp +0 -148
  221. data/vendor/gems/thrift/lib/cpp/src/Thrift.h +0 -191
  222. data/vendor/gems/thrift/lib/cpp/src/concurrency/Exception.h +0 -60
  223. data/vendor/gems/thrift/lib/cpp/src/concurrency/FunctionRunner.h +0 -77
  224. data/vendor/gems/thrift/lib/cpp/src/concurrency/Monitor.cpp +0 -137
  225. data/vendor/gems/thrift/lib/cpp/src/concurrency/Monitor.h +0 -84
  226. data/vendor/gems/thrift/lib/cpp/src/concurrency/Mutex.cpp +0 -160
  227. data/vendor/gems/thrift/lib/cpp/src/concurrency/Mutex.h +0 -114
  228. data/vendor/gems/thrift/lib/cpp/src/concurrency/PosixThreadFactory.cpp +0 -314
  229. data/vendor/gems/thrift/lib/cpp/src/concurrency/PosixThreadFactory.h +0 -130
  230. data/vendor/gems/thrift/lib/cpp/src/concurrency/Thread.h +0 -125
  231. data/vendor/gems/thrift/lib/cpp/src/concurrency/ThreadManager.cpp +0 -493
  232. data/vendor/gems/thrift/lib/cpp/src/concurrency/ThreadManager.h +0 -169
  233. data/vendor/gems/thrift/lib/cpp/src/concurrency/TimerManager.cpp +0 -284
  234. data/vendor/gems/thrift/lib/cpp/src/concurrency/TimerManager.h +0 -122
  235. data/vendor/gems/thrift/lib/cpp/src/concurrency/Util.cpp +0 -55
  236. data/vendor/gems/thrift/lib/cpp/src/concurrency/Util.h +0 -100
  237. data/vendor/gems/thrift/lib/cpp/src/concurrency/test/Tests.cpp +0 -155
  238. data/vendor/gems/thrift/lib/cpp/src/concurrency/test/ThreadFactoryTests.h +0 -354
  239. data/vendor/gems/thrift/lib/cpp/src/concurrency/test/ThreadManagerTests.h +0 -379
  240. data/vendor/gems/thrift/lib/cpp/src/concurrency/test/TimerManagerTests.h +0 -155
  241. data/vendor/gems/thrift/lib/cpp/src/processor/PeekProcessor.cpp +0 -122
  242. data/vendor/gems/thrift/lib/cpp/src/processor/PeekProcessor.h +0 -77
  243. data/vendor/gems/thrift/lib/cpp/src/processor/StatsProcessor.h +0 -264
  244. data/vendor/gems/thrift/lib/cpp/src/protocol/TBase64Utils.cpp +0 -79
  245. data/vendor/gems/thrift/lib/cpp/src/protocol/TBase64Utils.h +0 -42
  246. data/vendor/gems/thrift/lib/cpp/src/protocol/TBinaryProtocol.cpp +0 -394
  247. data/vendor/gems/thrift/lib/cpp/src/protocol/TBinaryProtocol.h +0 -254
  248. data/vendor/gems/thrift/lib/cpp/src/protocol/TCompactProtocol.cpp +0 -736
  249. data/vendor/gems/thrift/lib/cpp/src/protocol/TCompactProtocol.h +0 -279
  250. data/vendor/gems/thrift/lib/cpp/src/protocol/TDebugProtocol.cpp +0 -346
  251. data/vendor/gems/thrift/lib/cpp/src/protocol/TDebugProtocol.h +0 -225
  252. data/vendor/gems/thrift/lib/cpp/src/protocol/TDenseProtocol.cpp +0 -762
  253. data/vendor/gems/thrift/lib/cpp/src/protocol/TDenseProtocol.h +0 -253
  254. data/vendor/gems/thrift/lib/cpp/src/protocol/TJSONProtocol.cpp +0 -998
  255. data/vendor/gems/thrift/lib/cpp/src/protocol/TJSONProtocol.h +0 -340
  256. data/vendor/gems/thrift/lib/cpp/src/protocol/TOneWayProtocol.h +0 -304
  257. data/vendor/gems/thrift/lib/cpp/src/protocol/TProtocol.h +0 -438
  258. data/vendor/gems/thrift/lib/cpp/src/protocol/TProtocolException.h +0 -104
  259. data/vendor/gems/thrift/lib/cpp/src/protocol/TProtocolTap.h +0 -187
  260. data/vendor/gems/thrift/lib/cpp/src/server/TNonblockingServer.cpp +0 -750
  261. data/vendor/gems/thrift/lib/cpp/src/server/TNonblockingServer.h +0 -435
  262. data/vendor/gems/thrift/lib/cpp/src/server/TServer.cpp +0 -38
  263. data/vendor/gems/thrift/lib/cpp/src/server/TServer.h +0 -213
  264. data/vendor/gems/thrift/lib/cpp/src/server/TSimpleServer.cpp +0 -118
  265. data/vendor/gems/thrift/lib/cpp/src/server/TSimpleServer.h +0 -70
  266. data/vendor/gems/thrift/lib/cpp/src/server/TThreadPoolServer.cpp +0 -217
  267. data/vendor/gems/thrift/lib/cpp/src/server/TThreadPoolServer.h +0 -79
  268. data/vendor/gems/thrift/lib/cpp/src/server/TThreadedServer.cpp +0 -243
  269. data/vendor/gems/thrift/lib/cpp/src/server/TThreadedServer.h +0 -74
  270. data/vendor/gems/thrift/lib/cpp/src/transport/TBufferTransports.cpp +0 -370
  271. data/vendor/gems/thrift/lib/cpp/src/transport/TBufferTransports.h +0 -667
  272. data/vendor/gems/thrift/lib/cpp/src/transport/TFDTransport.cpp +0 -77
  273. data/vendor/gems/thrift/lib/cpp/src/transport/TFDTransport.h +0 -73
  274. data/vendor/gems/thrift/lib/cpp/src/transport/TFileTransport.cpp +0 -953
  275. data/vendor/gems/thrift/lib/cpp/src/transport/TFileTransport.h +0 -442
  276. data/vendor/gems/thrift/lib/cpp/src/transport/THttpClient.cpp +0 -348
  277. data/vendor/gems/thrift/lib/cpp/src/transport/THttpClient.h +0 -111
  278. data/vendor/gems/thrift/lib/cpp/src/transport/TServerSocket.cpp +0 -368
  279. data/vendor/gems/thrift/lib/cpp/src/transport/TServerSocket.h +0 -76
  280. data/vendor/gems/thrift/lib/cpp/src/transport/TServerTransport.h +0 -92
  281. data/vendor/gems/thrift/lib/cpp/src/transport/TShortReadTransport.h +0 -96
  282. data/vendor/gems/thrift/lib/cpp/src/transport/TSimpleFileTransport.cpp +0 -54
  283. data/vendor/gems/thrift/lib/cpp/src/transport/TSimpleFileTransport.h +0 -41
  284. data/vendor/gems/thrift/lib/cpp/src/transport/TSocket.cpp +0 -591
  285. data/vendor/gems/thrift/lib/cpp/src/transport/TSocket.h +0 -242
  286. data/vendor/gems/thrift/lib/cpp/src/transport/TSocketPool.cpp +0 -235
  287. data/vendor/gems/thrift/lib/cpp/src/transport/TSocketPool.h +0 -191
  288. data/vendor/gems/thrift/lib/cpp/src/transport/TTransport.h +0 -224
  289. data/vendor/gems/thrift/lib/cpp/src/transport/TTransportException.cpp +0 -31
  290. data/vendor/gems/thrift/lib/cpp/src/transport/TTransportException.h +0 -117
  291. data/vendor/gems/thrift/lib/cpp/src/transport/TTransportUtils.cpp +0 -178
  292. data/vendor/gems/thrift/lib/cpp/src/transport/TTransportUtils.h +0 -287
  293. data/vendor/gems/thrift/lib/cpp/src/transport/TZlibTransport.cpp +0 -299
  294. data/vendor/gems/thrift/lib/cpp/src/transport/TZlibTransport.h +0 -219
  295. data/vendor/gems/thrift/lib/cpp/thrift-nb.pc.in +0 -30
  296. data/vendor/gems/thrift/lib/cpp/thrift-z.pc.in +0 -30
  297. data/vendor/gems/thrift/lib/cpp/thrift.pc.in +0 -29
  298. data/vendor/gems/thrift/lib/csharp/Makefile.am +0 -70
  299. data/vendor/gems/thrift/lib/csharp/README +0 -26
  300. data/vendor/gems/thrift/lib/csharp/ThriftMSBuildTask/Properties/AssemblyInfo.cs +0 -55
  301. data/vendor/gems/thrift/lib/csharp/ThriftMSBuildTask/ThriftBuild.cs +0 -242
  302. data/vendor/gems/thrift/lib/csharp/ThriftMSBuildTask/ThriftMSBuildTask.csproj +0 -62
  303. data/vendor/gems/thrift/lib/csharp/src/Collections/THashSet.cs +0 -142
  304. data/vendor/gems/thrift/lib/csharp/src/Protocol/TBase.cs +0 -34
  305. data/vendor/gems/thrift/lib/csharp/src/Protocol/TBinaryProtocol.cs +0 -392
  306. data/vendor/gems/thrift/lib/csharp/src/Protocol/TField.cs +0 -58
  307. data/vendor/gems/thrift/lib/csharp/src/Protocol/TList.cs +0 -50
  308. data/vendor/gems/thrift/lib/csharp/src/Protocol/TMap.cs +0 -58
  309. data/vendor/gems/thrift/lib/csharp/src/Protocol/TMessage.cs +0 -58
  310. data/vendor/gems/thrift/lib/csharp/src/Protocol/TProtocol.cs +0 -87
  311. data/vendor/gems/thrift/lib/csharp/src/Protocol/TProtocolException.cs +0 -61
  312. data/vendor/gems/thrift/lib/csharp/src/Protocol/TProtocolFactory.cs +0 -29
  313. data/vendor/gems/thrift/lib/csharp/src/Protocol/TProtocolUtil.cs +0 -94
  314. data/vendor/gems/thrift/lib/csharp/src/Protocol/TSet.cs +0 -50
  315. data/vendor/gems/thrift/lib/csharp/src/Protocol/TStruct.cs +0 -42
  316. data/vendor/gems/thrift/lib/csharp/src/Protocol/TType.cs +0 -40
  317. data/vendor/gems/thrift/lib/csharp/src/Server/TServer.cs +0 -135
  318. data/vendor/gems/thrift/lib/csharp/src/Server/TSimpleServer.cs +0 -148
  319. data/vendor/gems/thrift/lib/csharp/src/Server/TThreadPoolServer.cs +0 -186
  320. data/vendor/gems/thrift/lib/csharp/src/Server/TThreadedServer.cs +0 -234
  321. data/vendor/gems/thrift/lib/csharp/src/TApplicationException.cs +0 -131
  322. data/vendor/gems/thrift/lib/csharp/src/Thrift.csproj +0 -73
  323. data/vendor/gems/thrift/lib/csharp/src/Thrift.sln +0 -35
  324. data/vendor/gems/thrift/lib/csharp/src/Transport/TBufferedTransport.cs +0 -100
  325. data/vendor/gems/thrift/lib/csharp/src/Transport/TServerSocket.cs +0 -157
  326. data/vendor/gems/thrift/lib/csharp/src/Transport/TServerTransport.cs +0 -39
  327. data/vendor/gems/thrift/lib/csharp/src/Transport/TSocket.cs +0 -144
  328. data/vendor/gems/thrift/lib/csharp/src/Transport/TStreamTransport.cs +0 -103
  329. data/vendor/gems/thrift/lib/csharp/src/Transport/TTransport.cs +0 -66
  330. data/vendor/gems/thrift/lib/csharp/src/Transport/TTransportException.cs +0 -64
  331. data/vendor/gems/thrift/lib/csharp/src/Transport/TTransportFactory.cs +0 -38
  332. data/vendor/gems/thrift/lib/erl/README +0 -56
  333. data/vendor/gems/thrift/lib/erl/build/beamver +0 -59
  334. data/vendor/gems/thrift/lib/erl/build/buildtargets.mk +0 -15
  335. data/vendor/gems/thrift/lib/erl/build/colors.mk +0 -24
  336. data/vendor/gems/thrift/lib/erl/build/docs.mk +0 -12
  337. data/vendor/gems/thrift/lib/erl/build/mime.types +0 -98
  338. data/vendor/gems/thrift/lib/erl/build/otp.mk +0 -146
  339. data/vendor/gems/thrift/lib/erl/build/otp_subdir.mk +0 -85
  340. data/vendor/gems/thrift/lib/erl/build/raw_test.mk +0 -29
  341. data/vendor/gems/thrift/lib/erl/include/thrift_constants.hrl +0 -54
  342. data/vendor/gems/thrift/lib/erl/include/thrift_protocol.hrl +0 -31
  343. data/vendor/gems/thrift/lib/erl/src/Makefile +0 -116
  344. data/vendor/gems/thrift/lib/erl/src/test_handler.erl +0 -26
  345. data/vendor/gems/thrift/lib/erl/src/test_service.erl +0 -29
  346. data/vendor/gems/thrift/lib/erl/src/thrift.app.src +0 -44
  347. data/vendor/gems/thrift/lib/erl/src/thrift.appup.src +0 -1
  348. data/vendor/gems/thrift/lib/erl/src/thrift_base64_transport.erl +0 -64
  349. data/vendor/gems/thrift/lib/erl/src/thrift_binary_protocol.erl +0 -325
  350. data/vendor/gems/thrift/lib/erl/src/thrift_buffered_transport.erl +0 -180
  351. data/vendor/gems/thrift/lib/erl/src/thrift_client.erl +0 -384
  352. data/vendor/gems/thrift/lib/erl/src/thrift_disk_log_transport.erl +0 -118
  353. data/vendor/gems/thrift/lib/erl/src/thrift_file_transport.erl +0 -87
  354. data/vendor/gems/thrift/lib/erl/src/thrift_framed_transport.erl +0 -208
  355. data/vendor/gems/thrift/lib/erl/src/thrift_http_transport.erl +0 -199
  356. data/vendor/gems/thrift/lib/erl/src/thrift_memory_buffer.erl +0 -164
  357. data/vendor/gems/thrift/lib/erl/src/thrift_processor.erl +0 -188
  358. data/vendor/gems/thrift/lib/erl/src/thrift_protocol.erl +0 -356
  359. data/vendor/gems/thrift/lib/erl/src/thrift_server.erl +0 -183
  360. data/vendor/gems/thrift/lib/erl/src/thrift_service.erl +0 -25
  361. data/vendor/gems/thrift/lib/erl/src/thrift_socket_server.erl +0 -249
  362. data/vendor/gems/thrift/lib/erl/src/thrift_socket_transport.erl +0 -119
  363. data/vendor/gems/thrift/lib/erl/src/thrift_transport.erl +0 -57
  364. data/vendor/gems/thrift/lib/erl/vsn.mk +0 -1
  365. data/vendor/gems/thrift/lib/hs/README +0 -82
  366. data/vendor/gems/thrift/lib/hs/TODO +0 -2
  367. data/vendor/gems/thrift/lib/hs/Thrift.cabal +0 -20
  368. data/vendor/gems/thrift/lib/hs/src/Thrift/Protocol/Binary.hs +0 -147
  369. data/vendor/gems/thrift/lib/hs/src/Thrift/Protocol.hs +0 -191
  370. data/vendor/gems/thrift/lib/hs/src/Thrift/Server.hs +0 -65
  371. data/vendor/gems/thrift/lib/hs/src/Thrift/Transport/Handle.hs +0 -58
  372. data/vendor/gems/thrift/lib/hs/src/Thrift/Transport.hs +0 -60
  373. data/vendor/gems/thrift/lib/hs/src/Thrift.hs +0 -111
  374. data/vendor/gems/thrift/lib/java/README +0 -43
  375. data/vendor/gems/thrift/lib/java/build.xml +0 -195
  376. data/vendor/gems/thrift/lib/java/ivy.xml +0 -8
  377. data/vendor/gems/thrift/lib/java/src/org/apache/thrift/IntRangeSet.java +0 -171
  378. data/vendor/gems/thrift/lib/java/src/org/apache/thrift/TApplicationException.java +0 -123
  379. data/vendor/gems/thrift/lib/java/src/org/apache/thrift/TBase.java +0 -66
  380. data/vendor/gems/thrift/lib/java/src/org/apache/thrift/TBaseHelper.java +0 -102
  381. data/vendor/gems/thrift/lib/java/src/org/apache/thrift/TByteArrayOutputStream.java +0 -46
  382. data/vendor/gems/thrift/lib/java/src/org/apache/thrift/TDeserializer.java +0 -94
  383. data/vendor/gems/thrift/lib/java/src/org/apache/thrift/TException.java +0 -45
  384. data/vendor/gems/thrift/lib/java/src/org/apache/thrift/TFieldRequirementType.java +0 -30
  385. data/vendor/gems/thrift/lib/java/src/org/apache/thrift/TProcessor.java +0 -32
  386. data/vendor/gems/thrift/lib/java/src/org/apache/thrift/TProcessorFactory.java +0 -39
  387. data/vendor/gems/thrift/lib/java/src/org/apache/thrift/TSerializer.java +0 -110
  388. data/vendor/gems/thrift/lib/java/src/org/apache/thrift/meta_data/FieldMetaData.java +0 -69
  389. data/vendor/gems/thrift/lib/java/src/org/apache/thrift/meta_data/FieldValueMetaData.java +0 -42
  390. data/vendor/gems/thrift/lib/java/src/org/apache/thrift/meta_data/ListMetaData.java +0 -29
  391. data/vendor/gems/thrift/lib/java/src/org/apache/thrift/meta_data/MapMetaData.java +0 -31
  392. data/vendor/gems/thrift/lib/java/src/org/apache/thrift/meta_data/SetMetaData.java +0 -29
  393. data/vendor/gems/thrift/lib/java/src/org/apache/thrift/meta_data/StructMetaData.java +0 -31
  394. data/vendor/gems/thrift/lib/java/src/org/apache/thrift/protocol/TBase64Utils.java +0 -128
  395. data/vendor/gems/thrift/lib/java/src/org/apache/thrift/protocol/TBinaryProtocol.java +0 -331
  396. data/vendor/gems/thrift/lib/java/src/org/apache/thrift/protocol/TCompactProtocol.java +0 -741
  397. data/vendor/gems/thrift/lib/java/src/org/apache/thrift/protocol/TField.java +0 -48
  398. data/vendor/gems/thrift/lib/java/src/org/apache/thrift/protocol/TJSONProtocol.java +0 -927
  399. data/vendor/gems/thrift/lib/java/src/org/apache/thrift/protocol/TList.java +0 -38
  400. data/vendor/gems/thrift/lib/java/src/org/apache/thrift/protocol/TMap.java +0 -40
  401. data/vendor/gems/thrift/lib/java/src/org/apache/thrift/protocol/TMessage.java +0 -48
  402. data/vendor/gems/thrift/lib/java/src/org/apache/thrift/protocol/TMessageType.java +0 -31
  403. data/vendor/gems/thrift/lib/java/src/org/apache/thrift/protocol/TProtocol.java +0 -146
  404. data/vendor/gems/thrift/lib/java/src/org/apache/thrift/protocol/TProtocolException.java +0 -81
  405. data/vendor/gems/thrift/lib/java/src/org/apache/thrift/protocol/TProtocolFactory.java +0 -30
  406. data/vendor/gems/thrift/lib/java/src/org/apache/thrift/protocol/TProtocolUtil.java +0 -158
  407. data/vendor/gems/thrift/lib/java/src/org/apache/thrift/protocol/TSet.java +0 -42
  408. data/vendor/gems/thrift/lib/java/src/org/apache/thrift/protocol/TSimpleJSONProtocol.java +0 -384
  409. data/vendor/gems/thrift/lib/java/src/org/apache/thrift/protocol/TStruct.java +0 -36
  410. data/vendor/gems/thrift/lib/java/src/org/apache/thrift/protocol/TType.java +0 -40
  411. data/vendor/gems/thrift/lib/java/src/org/apache/thrift/server/THsHaServer.java +0 -304
  412. data/vendor/gems/thrift/lib/java/src/org/apache/thrift/server/TNonblockingServer.java +0 -772
  413. data/vendor/gems/thrift/lib/java/src/org/apache/thrift/server/TServer.java +0 -126
  414. data/vendor/gems/thrift/lib/java/src/org/apache/thrift/server/TSimpleServer.java +0 -145
  415. data/vendor/gems/thrift/lib/java/src/org/apache/thrift/server/TThreadPoolServer.java +0 -271
  416. data/vendor/gems/thrift/lib/java/src/org/apache/thrift/transport/TFramedTransport.java +0 -126
  417. data/vendor/gems/thrift/lib/java/src/org/apache/thrift/transport/THttpClient.java +0 -157
  418. data/vendor/gems/thrift/lib/java/src/org/apache/thrift/transport/TIOStreamTransport.java +0 -159
  419. data/vendor/gems/thrift/lib/java/src/org/apache/thrift/transport/TMemoryBuffer.java +0 -98
  420. data/vendor/gems/thrift/lib/java/src/org/apache/thrift/transport/TNonblockingServerSocket.java +0 -160
  421. data/vendor/gems/thrift/lib/java/src/org/apache/thrift/transport/TNonblockingServerTransport.java +0 -31
  422. data/vendor/gems/thrift/lib/java/src/org/apache/thrift/transport/TNonblockingSocket.java +0 -213
  423. data/vendor/gems/thrift/lib/java/src/org/apache/thrift/transport/TNonblockingTransport.java +0 -31
  424. data/vendor/gems/thrift/lib/java/src/org/apache/thrift/transport/TServerSocket.java +0 -145
@@ -1,279 +0,0 @@
1
- /*
2
- * Licensed to the Apache Software Foundation (ASF) under one
3
- * or more contributor license agreements. See the NOTICE file
4
- * distributed with this work for additional information
5
- * regarding copyright ownership. The ASF licenses this file
6
- * to you under the Apache License, Version 2.0 (the
7
- * "License"); you may not use this file except in compliance
8
- * with the License. You may obtain a copy of the License at
9
- *
10
- * http://www.apache.org/licenses/LICENSE-2.0
11
- *
12
- * Unless required by applicable law or agreed to in writing,
13
- * software distributed under the License is distributed on an
14
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
15
- * KIND, either express or implied. See the License for the
16
- * specific language governing permissions and limitations
17
- * under the License.
18
- */
19
-
20
- #ifndef _THRIFT_PROTOCOL_TCOMPACTPROTOCOL_H_
21
- #define _THRIFT_PROTOCOL_TCOMPACTPROTOCOL_H_ 1
22
-
23
- #include "TProtocol.h"
24
-
25
- #include <stack>
26
- #include <boost/shared_ptr.hpp>
27
-
28
- namespace apache { namespace thrift { namespace protocol {
29
-
30
- /**
31
- * C++ Implementation of the Compact Protocol as described in THRIFT-110
32
- */
33
- class TCompactProtocol : public TProtocol {
34
-
35
- protected:
36
- static const int8_t PROTOCOL_ID = 0x82;
37
- static const int8_t VERSION_N = 1;
38
- static const int8_t VERSION_MASK = 0x1f; // 0001 1111
39
- static const int8_t TYPE_MASK = 0xE0; // 1110 0000
40
- static const int32_t TYPE_SHIFT_AMOUNT = 5;
41
-
42
- /**
43
- * (Writing) If we encounter a boolean field begin, save the TField here
44
- * so it can have the value incorporated.
45
- */
46
- struct {
47
- const char* name;
48
- TType fieldType;
49
- int16_t fieldId;
50
- } booleanField_;
51
-
52
- /**
53
- * (Reading) If we read a field header, and it's a boolean field, save
54
- * the boolean value here so that readBool can use it.
55
- */
56
- struct {
57
- bool hasBoolValue;
58
- bool boolValue;
59
- } boolValue_;
60
-
61
- /**
62
- * Used to keep track of the last field for the current and previous structs,
63
- * so we can do the delta stuff.
64
- */
65
-
66
- std::stack<int16_t> lastField_;
67
- int16_t lastFieldId_;
68
-
69
- enum Types {
70
- CT_STOP = 0x00,
71
- CT_BOOLEAN_TRUE = 0x01,
72
- CT_BOOLEAN_FALSE = 0x02,
73
- CT_BYTE = 0x03,
74
- CT_I16 = 0x04,
75
- CT_I32 = 0x05,
76
- CT_I64 = 0x06,
77
- CT_DOUBLE = 0x07,
78
- CT_BINARY = 0x08,
79
- CT_LIST = 0x09,
80
- CT_SET = 0x0A,
81
- CT_MAP = 0x0B,
82
- CT_STRUCT = 0x0C,
83
- };
84
-
85
- static const int8_t TTypeToCType[16];
86
-
87
- public:
88
- TCompactProtocol(boost::shared_ptr<TTransport> trans) :
89
- TProtocol(trans),
90
- lastFieldId_(0),
91
- string_limit_(0),
92
- string_buf_(NULL),
93
- string_buf_size_(0),
94
- container_limit_(0) {
95
- booleanField_.name = NULL;
96
- boolValue_.hasBoolValue = false;
97
- }
98
-
99
- TCompactProtocol(boost::shared_ptr<TTransport> trans,
100
- int32_t string_limit,
101
- int32_t container_limit) :
102
- TProtocol(trans),
103
- lastFieldId_(0),
104
- string_limit_(string_limit),
105
- string_buf_(NULL),
106
- string_buf_size_(0),
107
- container_limit_(container_limit) {
108
- booleanField_.name = NULL;
109
- boolValue_.hasBoolValue = false;
110
- }
111
-
112
-
113
-
114
- /**
115
- * Writing functions
116
- */
117
-
118
- virtual uint32_t writeMessageBegin(const std::string& name,
119
- const TMessageType messageType,
120
- const int32_t seqid);
121
-
122
- uint32_t writeStructBegin(const char* name);
123
-
124
- uint32_t writeStructEnd();
125
-
126
- uint32_t writeFieldBegin(const char* name,
127
- const TType fieldType,
128
- const int16_t fieldId);
129
-
130
- uint32_t writeFieldStop();
131
-
132
- uint32_t writeListBegin(const TType elemType,
133
- const uint32_t size);
134
-
135
- uint32_t writeSetBegin(const TType elemType,
136
- const uint32_t size);
137
-
138
- virtual uint32_t writeMapBegin(const TType keyType,
139
- const TType valType,
140
- const uint32_t size);
141
-
142
- uint32_t writeBool(const bool value);
143
-
144
- uint32_t writeByte(const int8_t byte);
145
-
146
- uint32_t writeI16(const int16_t i16);
147
-
148
- uint32_t writeI32(const int32_t i32);
149
-
150
- uint32_t writeI64(const int64_t i64);
151
-
152
- uint32_t writeDouble(const double dub);
153
-
154
- uint32_t writeString(const std::string& str);
155
-
156
- uint32_t writeBinary(const std::string& str);
157
-
158
- /**
159
- * These methods are called by structs, but don't actually have any wired
160
- * output or purpose
161
- */
162
- virtual uint32_t writeMessageEnd() { return 0; }
163
- uint32_t writeMapEnd() { return 0; }
164
- uint32_t writeListEnd() { return 0; }
165
- uint32_t writeSetEnd() { return 0; }
166
- uint32_t writeFieldEnd() { return 0; }
167
-
168
- protected:
169
- int32_t writeFieldBeginInternal(const char* name,
170
- const TType fieldType,
171
- const int16_t fieldId,
172
- int8_t typeOverride);
173
- uint32_t writeCollectionBegin(int8_t elemType, int32_t size);
174
- uint32_t writeVarint32(uint32_t n);
175
- uint32_t writeVarint64(uint64_t n);
176
- uint64_t i64ToZigzag(const int64_t l);
177
- uint32_t i32ToZigzag(const int32_t n);
178
- inline int8_t getCompactType(int8_t ttype);
179
-
180
- public:
181
- uint32_t readMessageBegin(std::string& name,
182
- TMessageType& messageType,
183
- int32_t& seqid);
184
-
185
- uint32_t readStructBegin(std::string& name);
186
-
187
- uint32_t readStructEnd();
188
-
189
- uint32_t readFieldBegin(std::string& name,
190
- TType& fieldType,
191
- int16_t& fieldId);
192
-
193
- uint32_t readMapBegin(TType& keyType,
194
- TType& valType,
195
- uint32_t& size);
196
-
197
- uint32_t readListBegin(TType& elemType,
198
- uint32_t& size);
199
-
200
- uint32_t readSetBegin(TType& elemType,
201
- uint32_t& size);
202
-
203
- uint32_t readBool(bool& value);
204
-
205
- uint32_t readByte(int8_t& byte);
206
-
207
- uint32_t readI16(int16_t& i16);
208
-
209
- uint32_t readI32(int32_t& i32);
210
-
211
- uint32_t readI64(int64_t& i64);
212
-
213
- uint32_t readDouble(double& dub);
214
-
215
- uint32_t readString(std::string& str);
216
-
217
- uint32_t readBinary(std::string& str);
218
-
219
- /*
220
- *These methods are here for the struct to call, but don't have any wire
221
- * encoding.
222
- */
223
- uint32_t readMessageEnd() { return 0; }
224
- uint32_t readFieldEnd() { return 0; }
225
- uint32_t readMapEnd() { return 0; }
226
- uint32_t readListEnd() { return 0; }
227
- uint32_t readSetEnd() { return 0; }
228
-
229
- protected:
230
- uint32_t readVarint32(int32_t& i32);
231
- uint32_t readVarint64(int64_t& i64);
232
- int32_t zigzagToI32(uint32_t n);
233
- int64_t zigzagToI64(uint64_t n);
234
- TType getTType(int8_t type);
235
-
236
- // Buffer for reading strings, save for the lifetime of the protocol to
237
- // avoid memory churn allocating memory on every string read
238
- int32_t string_limit_;
239
- uint8_t* string_buf_;
240
- int32_t string_buf_size_;
241
- int32_t container_limit_;
242
- };
243
-
244
- /**
245
- * Constructs compact protocol handlers
246
- */
247
- class TCompactProtocolFactory : public TProtocolFactory {
248
- public:
249
- TCompactProtocolFactory() :
250
- string_limit_(0),
251
- container_limit_(0) {}
252
-
253
- TCompactProtocolFactory(int32_t string_limit, int32_t container_limit) :
254
- string_limit_(string_limit),
255
- container_limit_(container_limit) {}
256
-
257
- virtual ~TCompactProtocolFactory() {}
258
-
259
- void setStringSizeLimit(int32_t string_limit) {
260
- string_limit_ = string_limit;
261
- }
262
-
263
- void setContainerSizeLimit(int32_t container_limit) {
264
- container_limit_ = container_limit;
265
- }
266
-
267
- boost::shared_ptr<TProtocol> getProtocol(boost::shared_ptr<TTransport> trans) {
268
- return boost::shared_ptr<TProtocol>(new TCompactProtocol(trans, string_limit_, container_limit_));
269
- }
270
-
271
- private:
272
- int32_t string_limit_;
273
- int32_t container_limit_;
274
-
275
- };
276
-
277
- }}} // apache::thrift::protocol
278
-
279
- #endif
@@ -1,346 +0,0 @@
1
- /*
2
- * Licensed to the Apache Software Foundation (ASF) under one
3
- * or more contributor license agreements. See the NOTICE file
4
- * distributed with this work for additional information
5
- * regarding copyright ownership. The ASF licenses this file
6
- * to you under the Apache License, Version 2.0 (the
7
- * "License"); you may not use this file except in compliance
8
- * with the License. You may obtain a copy of the License at
9
- *
10
- * http://www.apache.org/licenses/LICENSE-2.0
11
- *
12
- * Unless required by applicable law or agreed to in writing,
13
- * software distributed under the License is distributed on an
14
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
15
- * KIND, either express or implied. See the License for the
16
- * specific language governing permissions and limitations
17
- * under the License.
18
- */
19
-
20
- #include "TDebugProtocol.h"
21
-
22
- #include <cassert>
23
- #include <cctype>
24
- #include <cstdio>
25
- #include <stdexcept>
26
- #include <boost/static_assert.hpp>
27
- #include <boost/lexical_cast.hpp>
28
-
29
- using std::string;
30
-
31
-
32
- static string byte_to_hex(const uint8_t byte) {
33
- char buf[3];
34
- int ret = std::sprintf(buf, "%02x", (int)byte);
35
- assert(ret == 2);
36
- assert(buf[2] == '\0');
37
- return buf;
38
- }
39
-
40
-
41
- namespace apache { namespace thrift { namespace protocol {
42
-
43
- string TDebugProtocol::fieldTypeName(TType type) {
44
- switch (type) {
45
- case T_STOP : return "stop" ;
46
- case T_VOID : return "void" ;
47
- case T_BOOL : return "bool" ;
48
- case T_BYTE : return "byte" ;
49
- case T_I16 : return "i16" ;
50
- case T_I32 : return "i32" ;
51
- case T_U64 : return "u64" ;
52
- case T_I64 : return "i64" ;
53
- case T_DOUBLE : return "double" ;
54
- case T_STRING : return "string" ;
55
- case T_STRUCT : return "struct" ;
56
- case T_MAP : return "map" ;
57
- case T_SET : return "set" ;
58
- case T_LIST : return "list" ;
59
- case T_UTF8 : return "utf8" ;
60
- case T_UTF16 : return "utf16" ;
61
- default: return "unknown";
62
- }
63
- }
64
-
65
- void TDebugProtocol::indentUp() {
66
- indent_str_ += string(indent_inc, ' ');
67
- }
68
-
69
- void TDebugProtocol::indentDown() {
70
- if (indent_str_.length() < (string::size_type)indent_inc) {
71
- throw TProtocolException(TProtocolException::INVALID_DATA);
72
- }
73
- indent_str_.erase(indent_str_.length() - indent_inc);
74
- }
75
-
76
- uint32_t TDebugProtocol::writePlain(const string& str) {
77
- trans_->write((uint8_t*)str.data(), str.length());
78
- return str.length();
79
- }
80
-
81
- uint32_t TDebugProtocol::writeIndented(const string& str) {
82
- trans_->write((uint8_t*)indent_str_.data(), indent_str_.length());
83
- trans_->write((uint8_t*)str.data(), str.length());
84
- return indent_str_.length() + str.length();
85
- }
86
-
87
- uint32_t TDebugProtocol::startItem() {
88
- uint32_t size;
89
-
90
- switch (write_state_.back()) {
91
- case UNINIT:
92
- // XXX figure out what to do here.
93
- //throw TProtocolException(TProtocolException::INVALID_DATA);
94
- //return writeIndented(str);
95
- return 0;
96
- case STRUCT:
97
- return 0;
98
- case SET:
99
- return writeIndented("");
100
- case MAP_KEY:
101
- return writeIndented("");
102
- case MAP_VALUE:
103
- return writePlain(" -> ");
104
- case LIST:
105
- size = writeIndented(
106
- "[" + boost::lexical_cast<string>(list_idx_.back()) + "] = ");
107
- list_idx_.back()++;
108
- return size;
109
- default:
110
- throw std::logic_error("Invalid enum value.");
111
- }
112
- }
113
-
114
- uint32_t TDebugProtocol::endItem() {
115
- //uint32_t size;
116
-
117
- switch (write_state_.back()) {
118
- case UNINIT:
119
- // XXX figure out what to do here.
120
- //throw TProtocolException(TProtocolException::INVALID_DATA);
121
- //return writeIndented(str);
122
- return 0;
123
- case STRUCT:
124
- return writePlain(",\n");
125
- case SET:
126
- return writePlain(",\n");
127
- case MAP_KEY:
128
- write_state_.back() = MAP_VALUE;
129
- return 0;
130
- case MAP_VALUE:
131
- write_state_.back() = MAP_KEY;
132
- return writePlain(",\n");
133
- case LIST:
134
- return writePlain(",\n");
135
- default:
136
- throw std::logic_error("Invalid enum value.");
137
- }
138
- }
139
-
140
- uint32_t TDebugProtocol::writeItem(const std::string& str) {
141
- uint32_t size = 0;
142
- size += startItem();
143
- size += writePlain(str);
144
- size += endItem();
145
- return size;
146
- }
147
-
148
- uint32_t TDebugProtocol::writeMessageBegin(const std::string& name,
149
- const TMessageType messageType,
150
- const int32_t seqid) {
151
- string mtype;
152
- switch (messageType) {
153
- case T_CALL : mtype = "call" ; break;
154
- case T_REPLY : mtype = "reply" ; break;
155
- case T_EXCEPTION : mtype = "exn" ; break;
156
- }
157
-
158
- uint32_t size = writeIndented("(" + mtype + ") " + name + "(");
159
- indentUp();
160
- return size;
161
- }
162
-
163
- uint32_t TDebugProtocol::writeMessageEnd() {
164
- indentDown();
165
- return writeIndented(")\n");
166
- }
167
-
168
- uint32_t TDebugProtocol::writeStructBegin(const char* name) {
169
- uint32_t size = 0;
170
- size += startItem();
171
- size += writePlain(string(name) + " {\n");
172
- indentUp();
173
- write_state_.push_back(STRUCT);
174
- return size;
175
- }
176
-
177
- uint32_t TDebugProtocol::writeStructEnd() {
178
- indentDown();
179
- write_state_.pop_back();
180
- uint32_t size = 0;
181
- size += writeIndented("}");
182
- size += endItem();
183
- return size;
184
- }
185
-
186
- uint32_t TDebugProtocol::writeFieldBegin(const char* name,
187
- const TType fieldType,
188
- const int16_t fieldId) {
189
- // sprintf(id_str, "%02d", fieldId);
190
- string id_str = boost::lexical_cast<string>(fieldId);
191
- if (id_str.length() == 1) id_str = '0' + id_str;
192
-
193
- return writeIndented(
194
- id_str + ": " +
195
- name + " (" +
196
- fieldTypeName(fieldType) + ") = ");
197
- }
198
-
199
- uint32_t TDebugProtocol::writeFieldEnd() {
200
- assert(write_state_.back() == STRUCT);
201
- return 0;
202
- }
203
-
204
- uint32_t TDebugProtocol::writeFieldStop() {
205
- return 0;
206
- //writeIndented("***STOP***\n");
207
- }
208
-
209
- uint32_t TDebugProtocol::writeMapBegin(const TType keyType,
210
- const TType valType,
211
- const uint32_t size) {
212
- // TODO(dreiss): Optimize short maps?
213
- uint32_t bsize = 0;
214
- bsize += startItem();
215
- bsize += writePlain(
216
- "map<" + fieldTypeName(keyType) + "," + fieldTypeName(valType) + ">"
217
- "[" + boost::lexical_cast<string>(size) + "] {\n");
218
- indentUp();
219
- write_state_.push_back(MAP_KEY);
220
- return bsize;
221
- }
222
-
223
- uint32_t TDebugProtocol::writeMapEnd() {
224
- indentDown();
225
- write_state_.pop_back();
226
- uint32_t size = 0;
227
- size += writeIndented("}");
228
- size += endItem();
229
- return size;
230
- }
231
-
232
- uint32_t TDebugProtocol::writeListBegin(const TType elemType,
233
- const uint32_t size) {
234
- // TODO(dreiss): Optimize short arrays.
235
- uint32_t bsize = 0;
236
- bsize += startItem();
237
- bsize += writePlain(
238
- "list<" + fieldTypeName(elemType) + ">"
239
- "[" + boost::lexical_cast<string>(size) + "] {\n");
240
- indentUp();
241
- write_state_.push_back(LIST);
242
- list_idx_.push_back(0);
243
- return bsize;
244
- }
245
-
246
- uint32_t TDebugProtocol::writeListEnd() {
247
- indentDown();
248
- write_state_.pop_back();
249
- list_idx_.pop_back();
250
- uint32_t size = 0;
251
- size += writeIndented("}");
252
- size += endItem();
253
- return size;
254
- }
255
-
256
- uint32_t TDebugProtocol::writeSetBegin(const TType elemType,
257
- const uint32_t size) {
258
- // TODO(dreiss): Optimize short sets.
259
- uint32_t bsize = 0;
260
- bsize += startItem();
261
- bsize += writePlain(
262
- "set<" + fieldTypeName(elemType) + ">"
263
- "[" + boost::lexical_cast<string>(size) + "] {\n");
264
- indentUp();
265
- write_state_.push_back(SET);
266
- return bsize;
267
- }
268
-
269
- uint32_t TDebugProtocol::writeSetEnd() {
270
- indentDown();
271
- write_state_.pop_back();
272
- uint32_t size = 0;
273
- size += writeIndented("}");
274
- size += endItem();
275
- return size;
276
- }
277
-
278
- uint32_t TDebugProtocol::writeBool(const bool value) {
279
- return writeItem(value ? "true" : "false");
280
- }
281
-
282
- uint32_t TDebugProtocol::writeByte(const int8_t byte) {
283
- return writeItem("0x" + byte_to_hex(byte));
284
- }
285
-
286
- uint32_t TDebugProtocol::writeI16(const int16_t i16) {
287
- return writeItem(boost::lexical_cast<string>(i16));
288
- }
289
-
290
- uint32_t TDebugProtocol::writeI32(const int32_t i32) {
291
- return writeItem(boost::lexical_cast<string>(i32));
292
- }
293
-
294
- uint32_t TDebugProtocol::writeI64(const int64_t i64) {
295
- return writeItem(boost::lexical_cast<string>(i64));
296
- }
297
-
298
- uint32_t TDebugProtocol::writeDouble(const double dub) {
299
- return writeItem(boost::lexical_cast<string>(dub));
300
- }
301
-
302
-
303
- uint32_t TDebugProtocol::writeString(const string& str) {
304
- // XXX Raw/UTF-8?
305
-
306
- string to_show = str;
307
- if (to_show.length() > (string::size_type)string_limit_) {
308
- to_show = str.substr(0, string_prefix_size_);
309
- to_show += "[...](" + boost::lexical_cast<string>(str.length()) + ")";
310
- }
311
-
312
- string output = "\"";
313
-
314
- for (string::const_iterator it = to_show.begin(); it != to_show.end(); ++it) {
315
- if (*it == '\\') {
316
- output += "\\\\";
317
- } else if (*it == '"') {
318
- output += "\\\"";
319
- } else if (std::isprint(*it)) {
320
- output += *it;
321
- } else {
322
- switch (*it) {
323
- case '\a': output += "\\a"; break;
324
- case '\b': output += "\\b"; break;
325
- case '\f': output += "\\f"; break;
326
- case '\n': output += "\\n"; break;
327
- case '\r': output += "\\r"; break;
328
- case '\t': output += "\\t"; break;
329
- case '\v': output += "\\v"; break;
330
- default:
331
- output += "\\x";
332
- output += byte_to_hex(*it);
333
- }
334
- }
335
- }
336
-
337
- output += '\"';
338
- return writeItem(output);
339
- }
340
-
341
- uint32_t TDebugProtocol::writeBinary(const string& str) {
342
- // XXX Hex?
343
- return TDebugProtocol::writeString(str);
344
- }
345
-
346
- }}} // apache::thrift::protocol