zeroc-ice 3.7.10 → 3.7.11

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 (936) hide show
  1. checksums.yaml +4 -4
  2. data/dist/IceRuby/Connection.cpp +536 -0
  3. data/dist/IceRuby/Endpoint.cpp +344 -0
  4. data/dist/IceRuby/ImplicitContext.cpp +148 -0
  5. data/dist/IceRuby/Logger.cpp +151 -0
  6. data/dist/IceRuby/Operation.cpp +665 -0
  7. data/dist/IceRuby/Properties.cpp +369 -0
  8. data/dist/IceRuby/Types.cpp +3336 -0
  9. data/dist/IceRuby/Types.h +604 -0
  10. data/dist/IceRuby/ValueFactoryManager.cpp +445 -0
  11. data/dist/ice/cpp/include/Ice/ExceptionHelpers.h +74 -0
  12. data/dist/ice/cpp/include/Ice/Initialize.h +957 -0
  13. data/dist/ice/cpp/include/Ice/MetricsObserverI.h +669 -0
  14. data/dist/ice/cpp/include/Ice/OutgoingAsync.h +868 -0
  15. data/dist/ice/cpp/include/Ice/Proxy.h +5171 -0
  16. data/dist/ice/cpp/include/Ice/UserExceptionFactory.h +90 -0
  17. data/dist/ice/cpp/include/IceDiscovery/IceDiscovery.h +1889 -0
  18. data/dist/ice/cpp/include/IceLocatorDiscovery/IceLocatorDiscovery.h +1197 -0
  19. data/dist/ice/cpp/include/IceUtil/Cond.h +317 -0
  20. data/dist/ice/cpp/include/IceUtil/Config.h +392 -0
  21. data/dist/ice/cpp/include/IceUtil/CtrlCHandler.h +96 -0
  22. data/dist/ice/cpp/include/IceUtil/InputUtil.h +42 -0
  23. data/dist/ice/cpp/include/IceUtil/ResourceConfig.h +37 -0
  24. data/dist/ice/cpp/include/IceUtil/Timer.h +153 -0
  25. data/dist/ice/cpp/include/generated/Glacier2/Metrics.h +475 -0
  26. data/dist/ice/cpp/include/generated/Glacier2/PermissionsVerifier.h +1430 -0
  27. data/dist/ice/cpp/include/generated/Glacier2/PermissionsVerifierF.h +147 -0
  28. data/dist/ice/cpp/include/generated/Glacier2/Router.h +3260 -0
  29. data/dist/ice/cpp/include/generated/Glacier2/RouterF.h +125 -0
  30. data/dist/ice/cpp/include/generated/Glacier2/SSLInfo.h +223 -0
  31. data/dist/ice/cpp/include/generated/Glacier2/Session.h +5894 -0
  32. data/dist/ice/cpp/include/generated/Ice/BuiltinSequences.h +170 -0
  33. data/dist/ice/cpp/include/generated/Ice/Communicator.h +1162 -0
  34. data/dist/ice/cpp/include/generated/Ice/CommunicatorF.h +101 -0
  35. data/dist/ice/cpp/include/generated/Ice/Connection.h +1703 -0
  36. data/dist/ice/cpp/include/generated/Ice/ConnectionF.h +119 -0
  37. data/dist/ice/cpp/include/generated/Ice/Current.h +322 -0
  38. data/dist/ice/cpp/include/generated/Ice/Endpoint.h +979 -0
  39. data/dist/ice/cpp/include/generated/Ice/EndpointF.h +166 -0
  40. data/dist/ice/cpp/include/generated/Ice/EndpointTypes.h +118 -0
  41. data/dist/ice/cpp/include/generated/Ice/FacetMap.h +80 -0
  42. data/dist/ice/cpp/include/generated/Ice/Identity.h +264 -0
  43. data/dist/ice/cpp/include/generated/Ice/ImplicitContext.h +284 -0
  44. data/dist/ice/cpp/include/generated/Ice/ImplicitContextF.h +101 -0
  45. data/dist/ice/cpp/include/generated/Ice/Instrumentation.h +1203 -0
  46. data/dist/ice/cpp/include/generated/Ice/InstrumentationF.h +128 -0
  47. data/dist/ice/cpp/include/generated/Ice/LocalException.h +7437 -0
  48. data/dist/ice/cpp/include/generated/Ice/Locator.h +3898 -0
  49. data/dist/ice/cpp/include/generated/Ice/LocatorF.h +147 -0
  50. data/dist/ice/cpp/include/generated/Ice/Logger.h +237 -0
  51. data/dist/ice/cpp/include/generated/Ice/LoggerF.h +101 -0
  52. data/dist/ice/cpp/include/generated/Ice/Metrics.h +4769 -0
  53. data/dist/ice/cpp/include/generated/Ice/ObjectAdapter.h +1181 -0
  54. data/dist/ice/cpp/include/generated/Ice/ObjectAdapterF.h +101 -0
  55. data/dist/ice/cpp/include/generated/Ice/ObjectFactory.h +203 -0
  56. data/dist/ice/cpp/include/generated/Ice/Plugin.h +318 -0
  57. data/dist/ice/cpp/include/generated/Ice/PluginF.h +110 -0
  58. data/dist/ice/cpp/include/generated/Ice/Process.h +977 -0
  59. data/dist/ice/cpp/include/generated/Ice/ProcessF.h +125 -0
  60. data/dist/ice/cpp/include/generated/Ice/Properties.h +452 -0
  61. data/dist/ice/cpp/include/generated/Ice/PropertiesAdmin.h +1366 -0
  62. data/dist/ice/cpp/include/generated/Ice/PropertiesF.h +134 -0
  63. data/dist/ice/cpp/include/generated/Ice/RemoteLogger.h +2707 -0
  64. data/dist/ice/cpp/include/generated/Ice/Router.h +1850 -0
  65. data/dist/ice/cpp/include/generated/Ice/RouterF.h +125 -0
  66. data/dist/ice/cpp/include/generated/Ice/ServantLocator.h +305 -0
  67. data/dist/ice/cpp/include/generated/Ice/ServantLocatorF.h +101 -0
  68. data/dist/ice/cpp/include/generated/Ice/SliceChecksumDict.h +84 -0
  69. data/dist/ice/cpp/include/generated/Ice/ValueFactory.h +330 -0
  70. data/dist/ice/cpp/include/generated/Ice/Version.h +357 -0
  71. data/dist/ice/cpp/include/generated/IceBox/IceBox.h +3269 -0
  72. data/dist/ice/cpp/include/generated/IceGrid/Admin.h +33773 -0
  73. data/dist/ice/cpp/include/generated/IceGrid/Descriptor.h +5254 -0
  74. data/dist/ice/cpp/include/generated/IceGrid/Exception.h +2834 -0
  75. data/dist/ice/cpp/include/generated/IceGrid/FileParser.h +824 -0
  76. data/dist/ice/cpp/include/generated/IceGrid/PluginFacade.h +635 -0
  77. data/dist/ice/cpp/include/generated/IceGrid/Registry.h +5089 -0
  78. data/dist/ice/cpp/include/generated/IceGrid/Session.h +2240 -0
  79. data/dist/ice/cpp/include/generated/IceGrid/UserAccountMapper.h +800 -0
  80. data/dist/ice/cpp/include/generated/IcePatch2/FileInfo.h +325 -0
  81. data/dist/ice/cpp/include/generated/IcePatch2/FileServer.h +2891 -0
  82. data/dist/ice/cpp/include/generated/IceSSL/ConnectionInfo.h +228 -0
  83. data/dist/ice/cpp/include/generated/IceSSL/ConnectionInfoF.h +101 -0
  84. data/dist/ice/cpp/include/generated/IceSSL/EndpointInfo.h +186 -0
  85. data/dist/ice/cpp/include/generated/IceStorm/IceStorm.h +6627 -0
  86. data/dist/ice/cpp/include/generated/IceStorm/Metrics.h +665 -0
  87. data/dist/ice/cpp/src/Ice/Application.cpp +661 -0
  88. data/dist/ice/cpp/src/Ice/CountDownLatch.cpp +171 -0
  89. data/dist/ice/cpp/src/Ice/DLLMain.cpp +50 -0
  90. data/dist/ice/cpp/src/Ice/EndpointFactory.cpp +189 -0
  91. data/dist/ice/cpp/src/Ice/EndpointI.cpp +98 -0
  92. data/dist/ice/cpp/src/Ice/InputStream.cpp +2741 -0
  93. data/dist/ice/cpp/src/Ice/MetricsAdminI.cpp +694 -0
  94. data/dist/ice/cpp/src/Ice/Network.cpp +2249 -0
  95. data/dist/ice/cpp/src/Ice/ObjectAdapterI.cpp +1530 -0
  96. data/dist/ice/cpp/src/Ice/OutgoingAsync.cpp +1322 -0
  97. data/dist/ice/cpp/src/Ice/PluginManagerI.cpp +503 -0
  98. data/dist/ice/cpp/src/Ice/PropertyNames.cpp +1428 -0
  99. data/dist/ice/cpp/src/Ice/PropertyNames.h +78 -0
  100. data/dist/ice/cpp/src/Ice/Proxy.cpp +1604 -0
  101. data/dist/ice/cpp/src/Ice/Selector.cpp +1535 -0
  102. data/dist/ice/cpp/src/Ice/Service.cpp +1883 -0
  103. data/dist/ice/cpp/src/Ice/ThreadPool.cpp +1292 -0
  104. data/dist/ice/cpp/src/Ice/generated/BuiltinSequences.cpp +49 -0
  105. data/dist/ice/cpp/src/Ice/generated/Communicator.cpp +79 -0
  106. data/dist/ice/cpp/src/Ice/generated/CommunicatorF.cpp +61 -0
  107. data/dist/ice/cpp/src/Ice/generated/Connection.cpp +155 -0
  108. data/dist/ice/cpp/src/Ice/generated/ConnectionF.cpp +61 -0
  109. data/dist/ice/cpp/src/Ice/generated/Current.cpp +62 -0
  110. data/dist/ice/cpp/src/Ice/generated/Endpoint.cpp +147 -0
  111. data/dist/ice/cpp/src/Ice/generated/EndpointF.cpp +61 -0
  112. data/dist/ice/cpp/src/Ice/generated/EndpointTypes.cpp +51 -0
  113. data/dist/ice/cpp/src/Ice/generated/FacetMap.cpp +49 -0
  114. data/dist/ice/cpp/src/Ice/generated/Identity.cpp +57 -0
  115. data/dist/ice/cpp/src/Ice/generated/ImplicitContext.cpp +75 -0
  116. data/dist/ice/cpp/src/Ice/generated/ImplicitContextF.cpp +61 -0
  117. data/dist/ice/cpp/src/Ice/generated/Instrumentation.cpp +188 -0
  118. data/dist/ice/cpp/src/Ice/generated/InstrumentationF.cpp +66 -0
  119. data/dist/ice/cpp/src/Ice/generated/LocalException.cpp +3262 -0
  120. data/dist/ice/cpp/src/Ice/generated/Locator.cpp +2042 -0
  121. data/dist/ice/cpp/src/Ice/generated/LocatorF.cpp +63 -0
  122. data/dist/ice/cpp/src/Ice/generated/Logger.cpp +73 -0
  123. data/dist/ice/cpp/src/Ice/generated/LoggerF.cpp +61 -0
  124. data/dist/ice/cpp/src/Ice/generated/Metrics.cpp +2352 -0
  125. data/dist/ice/cpp/src/Ice/generated/ObjectAdapter.cpp +79 -0
  126. data/dist/ice/cpp/src/Ice/generated/ObjectAdapterF.cpp +61 -0
  127. data/dist/ice/cpp/src/Ice/generated/ObjectFactory.cpp +75 -0
  128. data/dist/ice/cpp/src/Ice/generated/Plugin.cpp +87 -0
  129. data/dist/ice/cpp/src/Ice/generated/PluginF.cpp +61 -0
  130. data/dist/ice/cpp/src/Ice/generated/Process.cpp +471 -0
  131. data/dist/ice/cpp/src/Ice/generated/ProcessF.cpp +63 -0
  132. data/dist/ice/cpp/src/Ice/generated/Properties.cpp +78 -0
  133. data/dist/ice/cpp/src/Ice/generated/PropertiesAdmin.cpp +603 -0
  134. data/dist/ice/cpp/src/Ice/generated/PropertiesF.cpp +63 -0
  135. data/dist/ice/cpp/src/Ice/generated/RemoteLogger.cpp +1171 -0
  136. data/dist/ice/cpp/src/Ice/generated/Router.cpp +977 -0
  137. data/dist/ice/cpp/src/Ice/generated/RouterF.cpp +63 -0
  138. data/dist/ice/cpp/src/Ice/generated/ServantLocator.cpp +75 -0
  139. data/dist/ice/cpp/src/Ice/generated/ServantLocatorF.cpp +61 -0
  140. data/dist/ice/cpp/src/Ice/generated/SliceChecksumDict.cpp +49 -0
  141. data/dist/ice/cpp/src/Ice/generated/ValueFactory.cpp +83 -0
  142. data/dist/ice/cpp/src/Ice/generated/Version.cpp +57 -0
  143. data/dist/ice/cpp/src/Ice/ios/StreamAcceptor.cpp +154 -0
  144. data/dist/ice/cpp/src/Ice/ios/StreamAcceptor.h +49 -0
  145. data/dist/ice/cpp/src/Ice/ios/StreamConnector.cpp +146 -0
  146. data/dist/ice/cpp/src/Ice/ios/StreamConnector.h +52 -0
  147. data/dist/ice/cpp/src/Ice/ios/StreamEndpointI.cpp +477 -0
  148. data/dist/ice/cpp/src/Ice/ios/StreamEndpointI.h +156 -0
  149. data/dist/ice/cpp/src/Ice/ios/StreamTransceiver.cpp +570 -0
  150. data/dist/ice/cpp/src/Ice/ios/StreamTransceiver.h +93 -0
  151. data/dist/ice/cpp/src/IceDiscovery/generated/IceDiscovery/IceDiscovery.h +1889 -0
  152. data/dist/ice/cpp/src/IceDiscovery/generated/IceDiscovery.cpp +915 -0
  153. data/dist/ice/cpp/src/IceLocatorDiscovery/generated/IceLocatorDiscovery/IceLocatorDiscovery.h +1197 -0
  154. data/dist/ice/cpp/src/IceLocatorDiscovery/generated/IceLocatorDiscovery.cpp +730 -0
  155. data/dist/ice/cpp/src/IceSSL/OpenSSLTransceiverI.cpp +1092 -0
  156. data/dist/ice/cpp/src/IceSSL/PluginI.cpp +246 -0
  157. data/dist/ice/cpp/src/IceSSL/SecureTransportTransceiverI.cpp +719 -0
  158. data/dist/ice/cpp/src/IceSSL/SecureTransportUtil.cpp +868 -0
  159. data/dist/ice/cpp/src/IceSSL/generated/ConnectionInfo.cpp +75 -0
  160. data/dist/ice/cpp/src/IceSSL/generated/ConnectionInfoF.cpp +61 -0
  161. data/dist/ice/cpp/src/IceSSL/generated/EndpointInfo.cpp +75 -0
  162. data/dist/ice/cpp/src/IceUtil/StringConverter.cpp +690 -0
  163. data/dist/ice/cpp/src/Slice/JavaUtil.cpp +5183 -0
  164. data/dist/ice/cpp/src/slice2rb/Main.cpp +35 -0
  165. data/dist/ice/mcpp/directive.c +1407 -0
  166. data/dist/ice/mcpp/internal.H +530 -0
  167. data/dist/ice/mcpp/mcpp_main.c +792 -0
  168. data/dist/ice/mcpp/support.c +1985 -0
  169. data/dist/ice/mcpp/system.c +2741 -0
  170. data/dist/ice/slice/Ice/Connection.ice +516 -0
  171. data/dist/ice/slice/Ice/Locator.ice +239 -0
  172. data/dist/ice/slice/Ice/Metrics.ice +436 -0
  173. data/dist/ice/slice/Ice/ObjectAdapter.ice +710 -0
  174. data/dist/ice/slice/Ice/Router.ice +103 -0
  175. data/dist/ice/slice/IceGrid/PluginFacade.ice +329 -0
  176. data/dist/ice/slice/IceStorm/IceStorm.ice +414 -0
  177. data/dist/lib/Glacier2/Metrics.rb +56 -0
  178. data/dist/lib/Glacier2/PermissionsVerifier.rb +93 -0
  179. data/dist/lib/Glacier2/PermissionsVerifierF.rb +30 -0
  180. data/dist/lib/Glacier2/Router.rb +95 -0
  181. data/dist/lib/Glacier2/RouterF.rb +25 -0
  182. data/dist/lib/Glacier2/SSLInfo.rb +72 -0
  183. data/dist/lib/Glacier2/Session.rb +247 -0
  184. data/dist/lib/Ice/BuiltinSequences.rb +60 -0
  185. data/dist/lib/Ice/Communicator.rb +87 -0
  186. data/dist/lib/Ice/CommunicatorF.rb +24 -0
  187. data/dist/lib/Ice/Connection.rb +413 -0
  188. data/dist/lib/Ice/ConnectionF.rb +32 -0
  189. data/dist/lib/Ice/Current.rb +141 -0
  190. data/dist/lib/Ice/Endpoint.rb +187 -0
  191. data/dist/lib/Ice/EndpointF.rb +48 -0
  192. data/dist/lib/Ice/EndpointTypes.rb +69 -0
  193. data/dist/lib/Ice/FacetMap.rb +24 -0
  194. data/dist/lib/Ice/Identity.rb +63 -0
  195. data/dist/lib/Ice/ImplicitContext.rb +26 -0
  196. data/dist/lib/Ice/ImplicitContextF.rb +24 -0
  197. data/dist/lib/Ice/Instrumentation.rb +169 -0
  198. data/dist/lib/Ice/InstrumentationF.rb +31 -0
  199. data/dist/lib/Ice/LocalException.rb +1031 -0
  200. data/dist/lib/Ice/Locator.rb +196 -0
  201. data/dist/lib/Ice/LocatorF.rb +30 -0
  202. data/dist/lib/Ice/Logger.rb +24 -0
  203. data/dist/lib/Ice/LoggerF.rb +24 -0
  204. data/dist/lib/Ice/Metrics.rb +337 -0
  205. data/dist/lib/Ice/ObjectAdapter.rb +29 -0
  206. data/dist/lib/Ice/ObjectAdapterF.rb +24 -0
  207. data/dist/lib/Ice/ObjectFactory.rb +24 -0
  208. data/dist/lib/Ice/Plugin.rb +30 -0
  209. data/dist/lib/Ice/PluginF.rb +28 -0
  210. data/dist/lib/Ice/Process.rb +53 -0
  211. data/dist/lib/Ice/ProcessF.rb +25 -0
  212. data/dist/lib/Ice/Properties.rb +25 -0
  213. data/dist/lib/Ice/PropertiesAdmin.rb +63 -0
  214. data/dist/lib/Ice/PropertiesF.rb +29 -0
  215. data/dist/lib/Ice/RemoteLogger.rb +207 -0
  216. data/dist/lib/Ice/Router.rb +87 -0
  217. data/dist/lib/Ice/RouterF.rb +25 -0
  218. data/dist/lib/Ice/ServantLocator.rb +26 -0
  219. data/dist/lib/Ice/ServantLocatorF.rb +24 -0
  220. data/dist/lib/Ice/SliceChecksumDict.rb +24 -0
  221. data/dist/lib/Ice/ValueFactory.rb +28 -0
  222. data/dist/lib/Ice/Version.rb +90 -0
  223. data/dist/lib/IceBox/IceBox.rb +164 -0
  224. data/dist/lib/IceGrid/Admin.rb +1196 -0
  225. data/dist/lib/IceGrid/Descriptor.rb +1034 -0
  226. data/dist/lib/IceGrid/Exception.rb +376 -0
  227. data/dist/lib/IceGrid/FileParser.rb +65 -0
  228. data/dist/lib/IceGrid/PluginFacade.rb +35 -0
  229. data/dist/lib/IceGrid/Registry.rb +209 -0
  230. data/dist/lib/IceGrid/Session.rb +71 -0
  231. data/dist/lib/IceGrid/UserAccountMapper.rb +61 -0
  232. data/dist/lib/IcePatch2/FileInfo.rb +115 -0
  233. data/dist/lib/IcePatch2/FileServer.rb +123 -0
  234. data/dist/lib/IceStorm/IceStorm.rb +332 -0
  235. data/dist/lib/IceStorm/Metrics.rb +73 -0
  236. data/extconf.rb +91 -0
  237. data/ice.gemspec +21 -16
  238. metadata +715 -711
  239. data/ICE_LICENSE +0 -48
  240. data/LICENSE +0 -340
  241. data/MCPP_LICENSE +0 -29
  242. data/ext/Connection.cpp +0 -532
  243. data/ext/Endpoint.cpp +0 -340
  244. data/ext/ImplicitContext.cpp +0 -144
  245. data/ext/Logger.cpp +0 -147
  246. data/ext/Operation.cpp +0 -661
  247. data/ext/Properties.cpp +0 -365
  248. data/ext/Types.cpp +0 -3325
  249. data/ext/Types.h +0 -595
  250. data/ext/ValueFactoryManager.cpp +0 -441
  251. data/ext/extconf.rb +0 -97
  252. data/ext/ice/cpp/include/Ice/ExceptionHelpers.h +0 -74
  253. data/ext/ice/cpp/include/Ice/Initialize.h +0 -957
  254. data/ext/ice/cpp/include/Ice/MetricsObserverI.h +0 -669
  255. data/ext/ice/cpp/include/Ice/OutgoingAsync.h +0 -856
  256. data/ext/ice/cpp/include/Ice/Proxy.h +0 -5154
  257. data/ext/ice/cpp/include/Ice/UserExceptionFactory.h +0 -88
  258. data/ext/ice/cpp/include/IceSSL/UWP.h +0 -62
  259. data/ext/ice/cpp/include/IceUtil/Cond.h +0 -317
  260. data/ext/ice/cpp/include/IceUtil/Config.h +0 -392
  261. data/ext/ice/cpp/include/IceUtil/CtrlCHandler.h +0 -92
  262. data/ext/ice/cpp/include/IceUtil/InputUtil.h +0 -42
  263. data/ext/ice/cpp/include/IceUtil/ResourceConfig.h +0 -37
  264. data/ext/ice/cpp/include/IceUtil/Timer.h +0 -144
  265. data/ext/ice/cpp/include/generated/Ice/BuiltinSequences.h +0 -170
  266. data/ext/ice/cpp/include/generated/Ice/Communicator.h +0 -1162
  267. data/ext/ice/cpp/include/generated/Ice/CommunicatorF.h +0 -101
  268. data/ext/ice/cpp/include/generated/Ice/Connection.h +0 -1703
  269. data/ext/ice/cpp/include/generated/Ice/ConnectionF.h +0 -119
  270. data/ext/ice/cpp/include/generated/Ice/Current.h +0 -322
  271. data/ext/ice/cpp/include/generated/Ice/Endpoint.h +0 -979
  272. data/ext/ice/cpp/include/generated/Ice/EndpointF.h +0 -166
  273. data/ext/ice/cpp/include/generated/Ice/EndpointTypes.h +0 -118
  274. data/ext/ice/cpp/include/generated/Ice/FacetMap.h +0 -80
  275. data/ext/ice/cpp/include/generated/Ice/Identity.h +0 -264
  276. data/ext/ice/cpp/include/generated/Ice/ImplicitContext.h +0 -284
  277. data/ext/ice/cpp/include/generated/Ice/ImplicitContextF.h +0 -101
  278. data/ext/ice/cpp/include/generated/Ice/Instrumentation.h +0 -1203
  279. data/ext/ice/cpp/include/generated/Ice/InstrumentationF.h +0 -128
  280. data/ext/ice/cpp/include/generated/Ice/LocalException.h +0 -7437
  281. data/ext/ice/cpp/include/generated/Ice/Locator.h +0 -3898
  282. data/ext/ice/cpp/include/generated/Ice/LocatorF.h +0 -147
  283. data/ext/ice/cpp/include/generated/Ice/Logger.h +0 -237
  284. data/ext/ice/cpp/include/generated/Ice/LoggerF.h +0 -101
  285. data/ext/ice/cpp/include/generated/Ice/Metrics.h +0 -4769
  286. data/ext/ice/cpp/include/generated/Ice/ObjectAdapter.h +0 -1181
  287. data/ext/ice/cpp/include/generated/Ice/ObjectAdapterF.h +0 -101
  288. data/ext/ice/cpp/include/generated/Ice/ObjectFactory.h +0 -203
  289. data/ext/ice/cpp/include/generated/Ice/Plugin.h +0 -318
  290. data/ext/ice/cpp/include/generated/Ice/PluginF.h +0 -110
  291. data/ext/ice/cpp/include/generated/Ice/Process.h +0 -977
  292. data/ext/ice/cpp/include/generated/Ice/ProcessF.h +0 -125
  293. data/ext/ice/cpp/include/generated/Ice/Properties.h +0 -452
  294. data/ext/ice/cpp/include/generated/Ice/PropertiesAdmin.h +0 -1366
  295. data/ext/ice/cpp/include/generated/Ice/PropertiesF.h +0 -134
  296. data/ext/ice/cpp/include/generated/Ice/RemoteLogger.h +0 -2707
  297. data/ext/ice/cpp/include/generated/Ice/Router.h +0 -1850
  298. data/ext/ice/cpp/include/generated/Ice/RouterF.h +0 -125
  299. data/ext/ice/cpp/include/generated/Ice/ServantLocator.h +0 -305
  300. data/ext/ice/cpp/include/generated/Ice/ServantLocatorF.h +0 -101
  301. data/ext/ice/cpp/include/generated/Ice/SliceChecksumDict.h +0 -84
  302. data/ext/ice/cpp/include/generated/Ice/ValueFactory.h +0 -330
  303. data/ext/ice/cpp/include/generated/Ice/Version.h +0 -357
  304. data/ext/ice/cpp/include/generated/IceSSL/ConnectionInfo.h +0 -228
  305. data/ext/ice/cpp/include/generated/IceSSL/ConnectionInfoF.h +0 -101
  306. data/ext/ice/cpp/include/generated/IceSSL/EndpointInfo.h +0 -186
  307. data/ext/ice/cpp/src/Ice/BuiltinSequences.cpp +0 -49
  308. data/ext/ice/cpp/src/Ice/Communicator.cpp +0 -79
  309. data/ext/ice/cpp/src/Ice/CommunicatorF.cpp +0 -61
  310. data/ext/ice/cpp/src/Ice/Connection.cpp +0 -155
  311. data/ext/ice/cpp/src/Ice/ConnectionF.cpp +0 -61
  312. data/ext/ice/cpp/src/Ice/CountDownLatch.cpp +0 -171
  313. data/ext/ice/cpp/src/Ice/Current.cpp +0 -62
  314. data/ext/ice/cpp/src/Ice/Endpoint.cpp +0 -147
  315. data/ext/ice/cpp/src/Ice/EndpointF.cpp +0 -61
  316. data/ext/ice/cpp/src/Ice/EndpointFactory.cpp +0 -189
  317. data/ext/ice/cpp/src/Ice/EndpointI.cpp +0 -98
  318. data/ext/ice/cpp/src/Ice/EndpointTypes.cpp +0 -51
  319. data/ext/ice/cpp/src/Ice/FacetMap.cpp +0 -49
  320. data/ext/ice/cpp/src/Ice/Identity.cpp +0 -57
  321. data/ext/ice/cpp/src/Ice/ImplicitContext.cpp +0 -75
  322. data/ext/ice/cpp/src/Ice/ImplicitContextF.cpp +0 -61
  323. data/ext/ice/cpp/src/Ice/InputStream.cpp +0 -2741
  324. data/ext/ice/cpp/src/Ice/Instrumentation.cpp +0 -188
  325. data/ext/ice/cpp/src/Ice/InstrumentationF.cpp +0 -66
  326. data/ext/ice/cpp/src/Ice/LocalException.cpp +0 -3262
  327. data/ext/ice/cpp/src/Ice/Locator.cpp +0 -2042
  328. data/ext/ice/cpp/src/Ice/LocatorF.cpp +0 -63
  329. data/ext/ice/cpp/src/Ice/Logger.cpp +0 -73
  330. data/ext/ice/cpp/src/Ice/LoggerF.cpp +0 -61
  331. data/ext/ice/cpp/src/Ice/Metrics.cpp +0 -2352
  332. data/ext/ice/cpp/src/Ice/MetricsAdminI.cpp +0 -694
  333. data/ext/ice/cpp/src/Ice/Network.cpp +0 -2249
  334. data/ext/ice/cpp/src/Ice/ObjectAdapter.cpp +0 -79
  335. data/ext/ice/cpp/src/Ice/ObjectAdapterF.cpp +0 -61
  336. data/ext/ice/cpp/src/Ice/ObjectAdapterI.cpp +0 -1530
  337. data/ext/ice/cpp/src/Ice/ObjectFactory.cpp +0 -75
  338. data/ext/ice/cpp/src/Ice/OutgoingAsync.cpp +0 -1322
  339. data/ext/ice/cpp/src/Ice/Plugin.cpp +0 -87
  340. data/ext/ice/cpp/src/Ice/PluginF.cpp +0 -61
  341. data/ext/ice/cpp/src/Ice/PluginManagerI.cpp +0 -503
  342. data/ext/ice/cpp/src/Ice/Process.cpp +0 -471
  343. data/ext/ice/cpp/src/Ice/ProcessF.cpp +0 -63
  344. data/ext/ice/cpp/src/Ice/Properties.cpp +0 -78
  345. data/ext/ice/cpp/src/Ice/PropertiesAdmin.cpp +0 -603
  346. data/ext/ice/cpp/src/Ice/PropertiesF.cpp +0 -63
  347. data/ext/ice/cpp/src/Ice/PropertyNames.cpp +0 -1429
  348. data/ext/ice/cpp/src/Ice/PropertyNames.h +0 -78
  349. data/ext/ice/cpp/src/Ice/Proxy.cpp +0 -1601
  350. data/ext/ice/cpp/src/Ice/RemoteLogger.cpp +0 -1171
  351. data/ext/ice/cpp/src/Ice/Router.cpp +0 -977
  352. data/ext/ice/cpp/src/Ice/RouterF.cpp +0 -63
  353. data/ext/ice/cpp/src/Ice/Selector.cpp +0 -1525
  354. data/ext/ice/cpp/src/Ice/ServantLocator.cpp +0 -75
  355. data/ext/ice/cpp/src/Ice/ServantLocatorF.cpp +0 -61
  356. data/ext/ice/cpp/src/Ice/SliceChecksumDict.cpp +0 -49
  357. data/ext/ice/cpp/src/Ice/ThreadPool.cpp +0 -1292
  358. data/ext/ice/cpp/src/Ice/ValueFactory.cpp +0 -83
  359. data/ext/ice/cpp/src/Ice/Version.cpp +0 -57
  360. data/ext/ice/cpp/src/IceDiscovery/IceDiscovery.cpp +0 -915
  361. data/ext/ice/cpp/src/IceDiscovery/IceDiscovery.h +0 -1889
  362. data/ext/ice/cpp/src/IceLocatorDiscovery/IceLocatorDiscovery.cpp +0 -730
  363. data/ext/ice/cpp/src/IceLocatorDiscovery/IceLocatorDiscovery.h +0 -1197
  364. data/ext/ice/cpp/src/IceSSL/ConnectionInfo.cpp +0 -75
  365. data/ext/ice/cpp/src/IceSSL/ConnectionInfoF.cpp +0 -61
  366. data/ext/ice/cpp/src/IceSSL/EndpointInfo.cpp +0 -75
  367. data/ext/ice/cpp/src/IceSSL/OpenSSLTransceiverI.cpp +0 -1092
  368. data/ext/ice/cpp/src/IceSSL/PluginI.cpp +0 -246
  369. data/ext/ice/cpp/src/IceSSL/SecureTransportTransceiverI.cpp +0 -719
  370. data/ext/ice/cpp/src/IceSSL/SecureTransportUtil.cpp +0 -868
  371. data/ext/ice/cpp/src/IceSSL/UWPCertificateI.cpp +0 -266
  372. data/ext/ice/cpp/src/IceSSL/UWPEngine.cpp +0 -338
  373. data/ext/ice/cpp/src/IceSSL/UWPEngine.h +0 -41
  374. data/ext/ice/cpp/src/IceSSL/UWPEngineF.h +0 -26
  375. data/ext/ice/cpp/src/IceSSL/UWPPluginI.cpp +0 -89
  376. data/ext/ice/cpp/src/IceSSL/UWPTransceiverI.cpp +0 -383
  377. data/ext/ice/cpp/src/IceSSL/UWPTransceiverI.h +0 -71
  378. data/ext/ice/cpp/src/IceUtil/StringConverter.cpp +0 -690
  379. data/ext/ice/cpp/src/Slice/JavaUtil.cpp +0 -5176
  380. data/ext/ice/mcpp/CMakeLists.txt +0 -80
  381. data/ext/ice/mcpp/LICENSE +0 -29
  382. data/ext/ice/mcpp/Makefile +0 -63
  383. data/ext/ice/mcpp/README.md +0 -32
  384. data/ext/ice/mcpp/directive.c +0 -1404
  385. data/ext/ice/mcpp/internal.H +0 -530
  386. data/ext/ice/mcpp/main.c +0 -792
  387. data/ext/ice/mcpp/mcpp.gyp +0 -88
  388. data/ext/ice/mcpp/support.c +0 -1985
  389. data/ext/ice/mcpp/system.c +0 -2737
  390. data/lib/Glacier2/Metrics.rb +0 -56
  391. data/lib/Glacier2/PermissionsVerifier.rb +0 -93
  392. data/lib/Glacier2/PermissionsVerifierF.rb +0 -30
  393. data/lib/Glacier2/Router.rb +0 -95
  394. data/lib/Glacier2/RouterF.rb +0 -25
  395. data/lib/Glacier2/SSLInfo.rb +0 -72
  396. data/lib/Glacier2/Session.rb +0 -247
  397. data/lib/Ice/BuiltinSequences.rb +0 -60
  398. data/lib/Ice/Communicator.rb +0 -87
  399. data/lib/Ice/CommunicatorF.rb +0 -24
  400. data/lib/Ice/Connection.rb +0 -413
  401. data/lib/Ice/ConnectionF.rb +0 -32
  402. data/lib/Ice/Current.rb +0 -141
  403. data/lib/Ice/Endpoint.rb +0 -187
  404. data/lib/Ice/EndpointF.rb +0 -48
  405. data/lib/Ice/EndpointTypes.rb +0 -69
  406. data/lib/Ice/FacetMap.rb +0 -24
  407. data/lib/Ice/Identity.rb +0 -63
  408. data/lib/Ice/ImplicitContext.rb +0 -26
  409. data/lib/Ice/ImplicitContextF.rb +0 -24
  410. data/lib/Ice/Instrumentation.rb +0 -169
  411. data/lib/Ice/InstrumentationF.rb +0 -31
  412. data/lib/Ice/LocalException.rb +0 -1031
  413. data/lib/Ice/Locator.rb +0 -196
  414. data/lib/Ice/LocatorF.rb +0 -30
  415. data/lib/Ice/Logger.rb +0 -24
  416. data/lib/Ice/LoggerF.rb +0 -24
  417. data/lib/Ice/Metrics.rb +0 -337
  418. data/lib/Ice/ObjectAdapter.rb +0 -29
  419. data/lib/Ice/ObjectAdapterF.rb +0 -24
  420. data/lib/Ice/ObjectFactory.rb +0 -24
  421. data/lib/Ice/Plugin.rb +0 -30
  422. data/lib/Ice/PluginF.rb +0 -28
  423. data/lib/Ice/Process.rb +0 -53
  424. data/lib/Ice/ProcessF.rb +0 -25
  425. data/lib/Ice/Properties.rb +0 -25
  426. data/lib/Ice/PropertiesAdmin.rb +0 -63
  427. data/lib/Ice/PropertiesF.rb +0 -29
  428. data/lib/Ice/RemoteLogger.rb +0 -207
  429. data/lib/Ice/Router.rb +0 -87
  430. data/lib/Ice/RouterF.rb +0 -25
  431. data/lib/Ice/ServantLocator.rb +0 -26
  432. data/lib/Ice/ServantLocatorF.rb +0 -24
  433. data/lib/Ice/SliceChecksumDict.rb +0 -24
  434. data/lib/Ice/ValueFactory.rb +0 -28
  435. data/lib/Ice/Version.rb +0 -90
  436. data/lib/IceBox/IceBox.rb +0 -164
  437. data/lib/IceGrid/Admin.rb +0 -1196
  438. data/lib/IceGrid/Descriptor.rb +0 -1034
  439. data/lib/IceGrid/Exception.rb +0 -376
  440. data/lib/IceGrid/FileParser.rb +0 -65
  441. data/lib/IceGrid/PluginFacade.rb +0 -35
  442. data/lib/IceGrid/Registry.rb +0 -209
  443. data/lib/IceGrid/Session.rb +0 -71
  444. data/lib/IceGrid/UserAccountMapper.rb +0 -61
  445. data/lib/IcePatch2/FileInfo.rb +0 -115
  446. data/lib/IcePatch2/FileServer.rb +0 -123
  447. data/lib/IceStorm/IceStorm.rb +0 -332
  448. data/lib/IceStorm/Metrics.rb +0 -73
  449. data/slice/Ice/Connection.ice +0 -516
  450. data/slice/Ice/Locator.ice +0 -239
  451. data/slice/Ice/Metrics.ice +0 -436
  452. data/slice/Ice/ObjectAdapter.ice +0 -710
  453. data/slice/Ice/Router.ice +0 -103
  454. data/slice/IceBT/ConnectionInfo.ice +0 -59
  455. data/slice/IceBT/EndpointInfo.ice +0 -57
  456. data/slice/IceBT/Types.ice +0 -45
  457. data/slice/IceDiscovery/IceDiscovery.ice +0 -98
  458. data/slice/IceGrid/PluginFacade.ice +0 -329
  459. data/slice/IceIAP/ConnectionInfo.ice +0 -74
  460. data/slice/IceIAP/EndpointInfo.ice +0 -68
  461. data/slice/IceLocatorDiscovery/IceLocatorDiscovery.ice +0 -83
  462. data/slice/IceSSL/ConnectionInfo.ice +0 -54
  463. data/slice/IceSSL/ConnectionInfoF.ice +0 -31
  464. data/slice/IceSSL/EndpointInfo.ice +0 -45
  465. data/slice/IceStorm/IceStorm.ice +0 -414
  466. /data/{ext → dist/IceRuby}/Communicator.cpp +0 -0
  467. /data/{ext → dist/IceRuby}/Communicator.h +0 -0
  468. /data/{ext → dist/IceRuby}/Config.h +0 -0
  469. /data/{ext → dist/IceRuby}/Connection.h +0 -0
  470. /data/{ext → dist/IceRuby}/Endpoint.h +0 -0
  471. /data/{ext → dist/IceRuby}/ImplicitContext.h +0 -0
  472. /data/{ext → dist/IceRuby}/Init.cpp +0 -0
  473. /data/{ext → dist/IceRuby}/Logger.h +0 -0
  474. /data/{ext → dist/IceRuby}/Operation.h +0 -0
  475. /data/{ext → dist/IceRuby}/Properties.h +0 -0
  476. /data/{ext → dist/IceRuby}/Proxy.cpp +0 -0
  477. /data/{ext → dist/IceRuby}/Proxy.h +0 -0
  478. /data/{ext → dist/IceRuby}/Slice.cpp +0 -0
  479. /data/{ext → dist/IceRuby}/Slice.h +0 -0
  480. /data/{ext → dist/IceRuby}/Util.cpp +0 -0
  481. /data/{ext → dist/IceRuby}/Util.h +0 -0
  482. /data/{ext → dist/IceRuby}/ValueFactoryManager.h +0 -0
  483. /data/{ext → dist}/ice/cpp/include/Ice/Application.h +0 -0
  484. /data/{ext → dist}/ice/cpp/include/Ice/AsyncResult.h +0 -0
  485. /data/{ext → dist}/ice/cpp/include/Ice/AsyncResultF.h +0 -0
  486. /data/{ext → dist}/ice/cpp/include/Ice/BatchRequestInterceptor.h +0 -0
  487. /data/{ext → dist}/ice/cpp/include/Ice/BatchRequestQueueF.h +0 -0
  488. /data/{ext → dist}/ice/cpp/include/Ice/Buffer.h +0 -0
  489. /data/{ext → dist}/ice/cpp/include/Ice/CommunicatorAsync.h +0 -0
  490. /data/{ext → dist}/ice/cpp/include/Ice/Comparable.h +0 -0
  491. /data/{ext → dist}/ice/cpp/include/Ice/Config.h +0 -0
  492. /data/{ext → dist}/ice/cpp/include/Ice/ConnectionAsync.h +0 -0
  493. /data/{ext → dist}/ice/cpp/include/Ice/ConnectionIF.h +0 -0
  494. /data/{ext → dist}/ice/cpp/include/Ice/ConsoleUtil.h +0 -0
  495. /data/{ext → dist}/ice/cpp/include/Ice/DefaultValueFactory.h +0 -0
  496. /data/{ext → dist}/ice/cpp/include/Ice/DispatchInterceptor.h +0 -0
  497. /data/{ext → dist}/ice/cpp/include/Ice/Dispatcher.h +0 -0
  498. /data/{ext → dist}/ice/cpp/include/Ice/DynamicLibrary.h +0 -0
  499. /data/{ext → dist}/ice/cpp/include/Ice/DynamicLibraryF.h +0 -0
  500. /data/{ext → dist}/ice/cpp/include/Ice/Exception.h +0 -0
  501. /data/{ext → dist}/ice/cpp/include/Ice/FactoryTable.h +0 -0
  502. /data/{ext → dist}/ice/cpp/include/Ice/FactoryTableInit.h +0 -0
  503. /data/{ext → dist}/ice/cpp/include/Ice/Format.h +0 -0
  504. /data/{ext → dist}/ice/cpp/include/Ice/Functional.h +0 -0
  505. /data/{ext → dist}/ice/cpp/include/Ice/GCObject.h +0 -0
  506. /data/{ext → dist}/ice/cpp/include/Ice/Handle.h +0 -0
  507. /data/{ext → dist}/ice/cpp/include/Ice/Ice.h +0 -0
  508. /data/{ext → dist}/ice/cpp/include/Ice/IconvStringConverter.h +0 -0
  509. /data/{ext → dist}/ice/cpp/include/Ice/Incoming.h +0 -0
  510. /data/{ext → dist}/ice/cpp/include/Ice/IncomingAsync.h +0 -0
  511. /data/{ext → dist}/ice/cpp/include/Ice/IncomingAsyncF.h +0 -0
  512. /data/{ext → dist}/ice/cpp/include/Ice/InputStream.h +0 -0
  513. /data/{ext → dist}/ice/cpp/include/Ice/InstanceF.h +0 -0
  514. /data/{ext → dist}/ice/cpp/include/Ice/InterfaceByValue.h +0 -0
  515. /data/{ext → dist}/ice/cpp/include/Ice/LocalObject.h +0 -0
  516. /data/{ext → dist}/ice/cpp/include/Ice/LocalObjectF.h +0 -0
  517. /data/{ext → dist}/ice/cpp/include/Ice/LoggerUtil.h +0 -0
  518. /data/{ext → dist}/ice/cpp/include/Ice/MetricsAdminI.h +0 -0
  519. /data/{ext → dist}/ice/cpp/include/Ice/MetricsFunctional.h +0 -0
  520. /data/{ext → dist}/ice/cpp/include/Ice/NativePropertiesAdmin.h +0 -0
  521. /data/{ext → dist}/ice/cpp/include/Ice/Object.h +0 -0
  522. /data/{ext → dist}/ice/cpp/include/Ice/ObjectF.h +0 -0
  523. /data/{ext → dist}/ice/cpp/include/Ice/ObserverHelper.h +0 -0
  524. /data/{ext → dist}/ice/cpp/include/Ice/Optional.h +0 -0
  525. /data/{ext → dist}/ice/cpp/include/Ice/OutgoingAsyncF.h +0 -0
  526. /data/{ext → dist}/ice/cpp/include/Ice/OutputStream.h +0 -0
  527. /data/{ext → dist}/ice/cpp/include/Ice/Protocol.h +0 -0
  528. /data/{ext → dist}/ice/cpp/include/Ice/ProxyF.h +0 -0
  529. /data/{ext → dist}/ice/cpp/include/Ice/ProxyFactoryF.h +0 -0
  530. /data/{ext → dist}/ice/cpp/include/Ice/ProxyHandle.h +0 -0
  531. /data/{ext → dist}/ice/cpp/include/Ice/ReferenceF.h +0 -0
  532. /data/{ext → dist}/ice/cpp/include/Ice/RegisterPlugins.h +0 -0
  533. /data/{ext → dist}/ice/cpp/include/Ice/RequestHandlerF.h +0 -0
  534. /data/{ext → dist}/ice/cpp/include/Ice/ResponseHandlerF.h +0 -0
  535. /data/{ext → dist}/ice/cpp/include/Ice/SHA1.h +0 -0
  536. /data/{ext → dist}/ice/cpp/include/Ice/ServantManagerF.h +0 -0
  537. /data/{ext → dist}/ice/cpp/include/Ice/Service.h +0 -0
  538. /data/{ext → dist}/ice/cpp/include/Ice/SliceChecksums.h +0 -0
  539. /data/{ext → dist}/ice/cpp/include/Ice/SlicedData.h +0 -0
  540. /data/{ext → dist}/ice/cpp/include/Ice/SlicedDataF.h +0 -0
  541. /data/{ext → dist}/ice/cpp/include/Ice/StreamHelpers.h +0 -0
  542. /data/{ext → dist}/ice/cpp/include/Ice/StringConverter.h +0 -0
  543. /data/{ext → dist}/ice/cpp/include/Ice/ThreadPoolF.h +0 -0
  544. /data/{ext → dist}/ice/cpp/include/Ice/UUID.h +0 -0
  545. /data/{ext → dist}/ice/cpp/include/Ice/UniquePtr.h +0 -0
  546. /data/{ext → dist}/ice/cpp/include/Ice/UniqueRef.h +0 -0
  547. /data/{ext → dist}/ice/cpp/include/Ice/Value.h +0 -0
  548. /data/{ext → dist}/ice/cpp/include/Ice/ValueF.h +0 -0
  549. /data/{ext → dist}/ice/cpp/include/IceSSL/Config.h +0 -0
  550. /data/{ext → dist}/ice/cpp/include/IceSSL/IceSSL.h +0 -0
  551. /data/{ext → dist}/ice/cpp/include/IceSSL/OpenSSL.h +0 -0
  552. /data/{ext → dist}/ice/cpp/include/IceSSL/Plugin.h +0 -0
  553. /data/{ext → dist}/ice/cpp/include/IceSSL/SChannel.h +0 -0
  554. /data/{ext → dist}/ice/cpp/include/IceSSL/SecureTransport.h +0 -0
  555. /data/{ext → dist}/ice/cpp/include/IceUtil/Atomic.h +0 -0
  556. /data/{ext → dist}/ice/cpp/include/IceUtil/ConsoleUtil.h +0 -0
  557. /data/{ext → dist}/ice/cpp/include/IceUtil/CountDownLatch.h +0 -0
  558. /data/{ext → dist}/ice/cpp/include/IceUtil/DisableWarnings.h +0 -0
  559. /data/{ext → dist}/ice/cpp/include/IceUtil/Exception.h +0 -0
  560. /data/{ext → dist}/ice/cpp/include/IceUtil/FileUtil.h +0 -0
  561. /data/{ext → dist}/ice/cpp/include/IceUtil/Functional.h +0 -0
  562. /data/{ext → dist}/ice/cpp/include/IceUtil/Handle.h +0 -0
  563. /data/{ext → dist}/ice/cpp/include/IceUtil/IceUtil.h +0 -0
  564. /data/{ext → dist}/ice/cpp/include/IceUtil/Iterator.h +0 -0
  565. /data/{ext → dist}/ice/cpp/include/IceUtil/Lock.h +0 -0
  566. /data/{ext → dist}/ice/cpp/include/IceUtil/Monitor.h +0 -0
  567. /data/{ext → dist}/ice/cpp/include/IceUtil/Mutex.h +0 -0
  568. /data/{ext → dist}/ice/cpp/include/IceUtil/MutexProtocol.h +0 -0
  569. /data/{ext → dist}/ice/cpp/include/IceUtil/MutexPtrLock.h +0 -0
  570. /data/{ext → dist}/ice/cpp/include/IceUtil/MutexPtrTryLock.h +0 -0
  571. /data/{ext → dist}/ice/cpp/include/IceUtil/Optional.h +0 -0
  572. /data/{ext → dist}/ice/cpp/include/IceUtil/Options.h +0 -0
  573. /data/{ext → dist}/ice/cpp/include/IceUtil/OutputUtil.h +0 -0
  574. /data/{ext → dist}/ice/cpp/include/IceUtil/PopDisableWarnings.h +0 -0
  575. /data/{ext → dist}/ice/cpp/include/IceUtil/PushDisableWarnings.h +0 -0
  576. /data/{ext → dist}/ice/cpp/include/IceUtil/Random.h +0 -0
  577. /data/{ext → dist}/ice/cpp/include/IceUtil/RecMutex.h +0 -0
  578. /data/{ext → dist}/ice/cpp/include/IceUtil/ScannerConfig.h +0 -0
  579. /data/{ext → dist}/ice/cpp/include/IceUtil/ScopedArray.h +0 -0
  580. /data/{ext → dist}/ice/cpp/include/IceUtil/Shared.h +0 -0
  581. /data/{ext → dist}/ice/cpp/include/IceUtil/StopWatch.h +0 -0
  582. /data/{ext → dist}/ice/cpp/include/IceUtil/StringConverter.h +0 -0
  583. /data/{ext → dist}/ice/cpp/include/IceUtil/StringUtil.h +0 -0
  584. /data/{ext → dist}/ice/cpp/include/IceUtil/Thread.h +0 -0
  585. /data/{ext → dist}/ice/cpp/include/IceUtil/ThreadException.h +0 -0
  586. /data/{ext → dist}/ice/cpp/include/IceUtil/Time.h +0 -0
  587. /data/{ext → dist}/ice/cpp/include/IceUtil/UUID.h +0 -0
  588. /data/{ext → dist}/ice/cpp/include/IceUtil/UndefSysMacros.h +0 -0
  589. /data/{ext → dist}/ice/cpp/src/Ice/ACM.cpp +0 -0
  590. /data/{ext → dist}/ice/cpp/src/Ice/ACM.h +0 -0
  591. /data/{ext → dist}/ice/cpp/src/Ice/ACMF.h +0 -0
  592. /data/{ext → dist}/ice/cpp/src/Ice/Acceptor.cpp +0 -0
  593. /data/{ext → dist}/ice/cpp/src/Ice/Acceptor.h +0 -0
  594. /data/{ext → dist}/ice/cpp/src/Ice/AcceptorF.h +0 -0
  595. /data/{ext → dist}/ice/cpp/src/Ice/ArgVector.cpp +0 -0
  596. /data/{ext → dist}/ice/cpp/src/Ice/ArgVector.h +0 -0
  597. /data/{ext → dist}/ice/cpp/src/Ice/AsyncResult.cpp +0 -0
  598. /data/{ext → dist}/ice/cpp/src/Ice/Base64.cpp +0 -0
  599. /data/{ext → dist}/ice/cpp/src/Ice/Base64.h +0 -0
  600. /data/{ext → dist}/ice/cpp/src/Ice/BatchRequestQueue.cpp +0 -0
  601. /data/{ext → dist}/ice/cpp/src/Ice/BatchRequestQueue.h +0 -0
  602. /data/{ext → dist}/ice/cpp/src/Ice/Buffer.cpp +0 -0
  603. /data/{ext → dist}/ice/cpp/src/Ice/CollocatedRequestHandler.cpp +0 -0
  604. /data/{ext → dist}/ice/cpp/src/Ice/CollocatedRequestHandler.h +0 -0
  605. /data/{ext → dist}/ice/cpp/src/Ice/CommunicatorI.cpp +0 -0
  606. /data/{ext → dist}/ice/cpp/src/Ice/CommunicatorI.h +0 -0
  607. /data/{ext → dist}/ice/cpp/src/Ice/Cond.cpp +0 -0
  608. /data/{ext → dist}/ice/cpp/src/Ice/ConnectRequestHandler.cpp +0 -0
  609. /data/{ext → dist}/ice/cpp/src/Ice/ConnectRequestHandler.h +0 -0
  610. /data/{ext → dist}/ice/cpp/src/Ice/ConnectRequestHandlerF.h +0 -0
  611. /data/{ext → dist}/ice/cpp/src/Ice/ConnectionFactory.cpp +0 -0
  612. /data/{ext → dist}/ice/cpp/src/Ice/ConnectionFactory.h +0 -0
  613. /data/{ext → dist}/ice/cpp/src/Ice/ConnectionFactoryF.h +0 -0
  614. /data/{ext → dist}/ice/cpp/src/Ice/ConnectionI.cpp +0 -0
  615. /data/{ext → dist}/ice/cpp/src/Ice/ConnectionI.h +0 -0
  616. /data/{ext → dist}/ice/cpp/src/Ice/ConnectionRequestHandler.cpp +0 -0
  617. /data/{ext → dist}/ice/cpp/src/Ice/ConnectionRequestHandler.h +0 -0
  618. /data/{ext → dist}/ice/cpp/src/Ice/Connector.cpp +0 -0
  619. /data/{ext → dist}/ice/cpp/src/Ice/Connector.h +0 -0
  620. /data/{ext → dist}/ice/cpp/src/Ice/ConnectorF.h +0 -0
  621. /data/{ext → dist}/ice/cpp/src/Ice/DefaultsAndOverrides.cpp +0 -0
  622. /data/{ext → dist}/ice/cpp/src/Ice/DefaultsAndOverrides.h +0 -0
  623. /data/{ext → dist}/ice/cpp/src/Ice/DefaultsAndOverridesF.h +0 -0
  624. /data/{ext → dist}/ice/cpp/src/Ice/DispatchInterceptor.cpp +0 -0
  625. /data/{ext → dist}/ice/cpp/src/Ice/DynamicLibrary.cpp +0 -0
  626. /data/{ext → dist}/ice/cpp/src/Ice/EndpointFactory.h +0 -0
  627. /data/{ext → dist}/ice/cpp/src/Ice/EndpointFactoryF.h +0 -0
  628. /data/{ext → dist}/ice/cpp/src/Ice/EndpointFactoryManager.cpp +0 -0
  629. /data/{ext → dist}/ice/cpp/src/Ice/EndpointFactoryManager.h +0 -0
  630. /data/{ext → dist}/ice/cpp/src/Ice/EndpointFactoryManagerF.h +0 -0
  631. /data/{ext → dist}/ice/cpp/src/Ice/EndpointI.h +0 -0
  632. /data/{ext → dist}/ice/cpp/src/Ice/EndpointIF.h +0 -0
  633. /data/{ext → dist}/ice/cpp/src/Ice/EventHandler.cpp +0 -0
  634. /data/{ext → dist}/ice/cpp/src/Ice/EventHandler.h +0 -0
  635. /data/{ext → dist}/ice/cpp/src/Ice/EventHandlerF.h +0 -0
  636. /data/{ext → dist}/ice/cpp/src/Ice/Exception.cpp +0 -0
  637. /data/{ext → dist}/ice/cpp/src/Ice/FactoryTable.cpp +0 -0
  638. /data/{ext → dist}/ice/cpp/src/Ice/FactoryTableInit.cpp +0 -0
  639. /data/{ext → dist}/ice/cpp/src/Ice/GCObject.cpp +0 -0
  640. /data/{ext → dist}/ice/cpp/src/Ice/HashUtil.h +0 -0
  641. /data/{ext → dist}/ice/cpp/src/Ice/HttpParser.cpp +0 -0
  642. /data/{ext → dist}/ice/cpp/src/Ice/HttpParser.h +0 -0
  643. /data/{ext → dist}/ice/cpp/src/Ice/IPEndpointI.cpp +0 -0
  644. /data/{ext → dist}/ice/cpp/src/Ice/IPEndpointI.h +0 -0
  645. /data/{ext → dist}/ice/cpp/src/Ice/IPEndpointIF.h +0 -0
  646. /data/{ext → dist}/ice/cpp/src/Ice/IconvStringConverter.cpp +0 -0
  647. /data/{ext → dist}/ice/cpp/src/Ice/ImplicitContextI.cpp +0 -0
  648. /data/{ext → dist}/ice/cpp/src/Ice/ImplicitContextI.h +0 -0
  649. /data/{ext → dist}/ice/cpp/src/Ice/Incoming.cpp +0 -0
  650. /data/{ext → dist}/ice/cpp/src/Ice/IncomingAsync.cpp +0 -0
  651. /data/{ext → dist}/ice/cpp/src/Ice/IncomingRequest.h +0 -0
  652. /data/{ext → dist}/ice/cpp/src/Ice/Initialize.cpp +0 -0
  653. /data/{ext → dist}/ice/cpp/src/Ice/Instance.cpp +0 -0
  654. /data/{ext → dist}/ice/cpp/src/Ice/Instance.h +0 -0
  655. /data/{ext → dist}/ice/cpp/src/Ice/InstrumentationI.cpp +0 -0
  656. /data/{ext → dist}/ice/cpp/src/Ice/InstrumentationI.h +0 -0
  657. /data/{ext → dist}/ice/cpp/src/Ice/LocalObject.cpp +0 -0
  658. /data/{ext → dist}/ice/cpp/src/Ice/LocatorInfo.cpp +0 -0
  659. /data/{ext → dist}/ice/cpp/src/Ice/LocatorInfo.h +0 -0
  660. /data/{ext → dist}/ice/cpp/src/Ice/LocatorInfoF.h +0 -0
  661. /data/{ext → dist}/ice/cpp/src/Ice/LoggerAdminI.cpp +0 -0
  662. /data/{ext → dist}/ice/cpp/src/Ice/LoggerAdminI.h +0 -0
  663. /data/{ext → dist}/ice/cpp/src/Ice/LoggerI.cpp +0 -0
  664. /data/{ext → dist}/ice/cpp/src/Ice/LoggerI.h +0 -0
  665. /data/{ext → dist}/ice/cpp/src/Ice/LoggerUtil.cpp +0 -0
  666. /data/{ext → dist}/ice/cpp/src/Ice/MetricsObserverI.cpp +0 -0
  667. /data/{ext → dist}/ice/cpp/src/Ice/Network.h +0 -0
  668. /data/{ext → dist}/ice/cpp/src/Ice/NetworkF.h +0 -0
  669. /data/{ext → dist}/ice/cpp/src/Ice/NetworkProxy.cpp +0 -0
  670. /data/{ext → dist}/ice/cpp/src/Ice/NetworkProxy.h +0 -0
  671. /data/{ext → dist}/ice/cpp/src/Ice/NetworkProxyF.h +0 -0
  672. /data/{ext → dist}/ice/cpp/src/Ice/OSLogLoggerI.cpp +0 -0
  673. /data/{ext → dist}/ice/cpp/src/Ice/OSLogLoggerI.h +0 -0
  674. /data/{ext → dist}/ice/cpp/src/Ice/Object.cpp +0 -0
  675. /data/{ext → dist}/ice/cpp/src/Ice/ObjectAdapterFactory.cpp +0 -0
  676. /data/{ext → dist}/ice/cpp/src/Ice/ObjectAdapterFactory.h +0 -0
  677. /data/{ext → dist}/ice/cpp/src/Ice/ObjectAdapterFactoryF.h +0 -0
  678. /data/{ext → dist}/ice/cpp/src/Ice/ObjectAdapterI.h +0 -0
  679. /data/{ext → dist}/ice/cpp/src/Ice/ObserverHelper.cpp +0 -0
  680. /data/{ext → dist}/ice/cpp/src/Ice/OpaqueEndpointI.cpp +0 -0
  681. /data/{ext → dist}/ice/cpp/src/Ice/OpaqueEndpointI.h +0 -0
  682. /data/{ext → dist}/ice/cpp/src/Ice/OutputStream.cpp +0 -0
  683. /data/{ext → dist}/ice/cpp/src/Ice/PluginManagerI.h +0 -0
  684. /data/{ext → dist}/ice/cpp/src/Ice/PropertiesAdminI.cpp +0 -0
  685. /data/{ext → dist}/ice/cpp/src/Ice/PropertiesAdminI.h +0 -0
  686. /data/{ext → dist}/ice/cpp/src/Ice/PropertiesI.cpp +0 -0
  687. /data/{ext → dist}/ice/cpp/src/Ice/PropertiesI.h +0 -0
  688. /data/{ext → dist}/ice/cpp/src/Ice/Protocol.cpp +0 -0
  689. /data/{ext → dist}/ice/cpp/src/Ice/ProtocolInstance.cpp +0 -0
  690. /data/{ext → dist}/ice/cpp/src/Ice/ProtocolInstance.h +0 -0
  691. /data/{ext → dist}/ice/cpp/src/Ice/ProtocolInstanceF.h +0 -0
  692. /data/{ext → dist}/ice/cpp/src/Ice/ProtocolPluginFacade.cpp +0 -0
  693. /data/{ext → dist}/ice/cpp/src/Ice/ProtocolPluginFacade.h +0 -0
  694. /data/{ext → dist}/ice/cpp/src/Ice/ProtocolPluginFacadeF.h +0 -0
  695. /data/{ext → dist}/ice/cpp/src/Ice/ProxyFactory.cpp +0 -0
  696. /data/{ext → dist}/ice/cpp/src/Ice/ProxyFactory.h +0 -0
  697. /data/{ext → dist}/ice/cpp/src/Ice/Reference.cpp +0 -0
  698. /data/{ext → dist}/ice/cpp/src/Ice/Reference.h +0 -0
  699. /data/{ext → dist}/ice/cpp/src/Ice/ReferenceFactory.cpp +0 -0
  700. /data/{ext → dist}/ice/cpp/src/Ice/ReferenceFactory.h +0 -0
  701. /data/{ext → dist}/ice/cpp/src/Ice/ReferenceFactoryF.h +0 -0
  702. /data/{ext → dist}/ice/cpp/src/Ice/RegisterPluginsInit.cpp +0 -0
  703. /data/{ext → dist}/ice/cpp/src/Ice/RegisterPluginsInit.h +0 -0
  704. /data/{ext → dist}/ice/cpp/src/Ice/ReplyStatus.h +0 -0
  705. /data/{ext → dist}/ice/cpp/src/Ice/RequestHandler.cpp +0 -0
  706. /data/{ext → dist}/ice/cpp/src/Ice/RequestHandler.h +0 -0
  707. /data/{ext → dist}/ice/cpp/src/Ice/RequestHandlerFactory.cpp +0 -0
  708. /data/{ext → dist}/ice/cpp/src/Ice/RequestHandlerFactory.h +0 -0
  709. /data/{ext → dist}/ice/cpp/src/Ice/ResponseHandler.cpp +0 -0
  710. /data/{ext → dist}/ice/cpp/src/Ice/ResponseHandler.h +0 -0
  711. /data/{ext → dist}/ice/cpp/src/Ice/RetryQueue.cpp +0 -0
  712. /data/{ext → dist}/ice/cpp/src/Ice/RetryQueue.h +0 -0
  713. /data/{ext → dist}/ice/cpp/src/Ice/RetryQueueF.h +0 -0
  714. /data/{ext → dist}/ice/cpp/src/Ice/RouterInfo.cpp +0 -0
  715. /data/{ext → dist}/ice/cpp/src/Ice/RouterInfo.h +0 -0
  716. /data/{ext → dist}/ice/cpp/src/Ice/RouterInfoF.h +0 -0
  717. /data/{ext → dist}/ice/cpp/src/Ice/SHA1.cpp +0 -0
  718. /data/{ext → dist}/ice/cpp/src/Ice/Selector.h +0 -0
  719. /data/{ext → dist}/ice/cpp/src/Ice/ServantManager.cpp +0 -0
  720. /data/{ext → dist}/ice/cpp/src/Ice/ServantManager.h +0 -0
  721. /data/{ext → dist}/ice/cpp/src/Ice/SharedContext.h +0 -0
  722. /data/{ext → dist}/ice/cpp/src/Ice/SliceChecksums.cpp +0 -0
  723. /data/{ext → dist}/ice/cpp/src/Ice/SlicedData.cpp +0 -0
  724. /data/{ext → dist}/ice/cpp/src/Ice/StreamSocket.cpp +0 -0
  725. /data/{ext → dist}/ice/cpp/src/Ice/StreamSocket.h +0 -0
  726. /data/{ext → dist}/ice/cpp/src/Ice/StringConverterPlugin.cpp +0 -0
  727. /data/{ext → dist}/ice/cpp/src/Ice/StringUtil.h +0 -0
  728. /data/{ext → dist}/ice/cpp/src/Ice/SysLoggerI.cpp +0 -0
  729. /data/{ext → dist}/ice/cpp/src/Ice/SysLoggerI.h +0 -0
  730. /data/{ext → dist}/ice/cpp/src/Ice/SystemdJournalI.cpp +0 -0
  731. /data/{ext → dist}/ice/cpp/src/Ice/SystemdJournalI.h +0 -0
  732. /data/{ext → dist}/ice/cpp/src/Ice/TcpAcceptor.cpp +0 -0
  733. /data/{ext → dist}/ice/cpp/src/Ice/TcpAcceptor.h +0 -0
  734. /data/{ext → dist}/ice/cpp/src/Ice/TcpConnector.cpp +0 -0
  735. /data/{ext → dist}/ice/cpp/src/Ice/TcpConnector.h +0 -0
  736. /data/{ext → dist}/ice/cpp/src/Ice/TcpEndpointI.cpp +0 -0
  737. /data/{ext → dist}/ice/cpp/src/Ice/TcpEndpointI.h +0 -0
  738. /data/{ext → dist}/ice/cpp/src/Ice/TcpTransceiver.cpp +0 -0
  739. /data/{ext → dist}/ice/cpp/src/Ice/TcpTransceiver.h +0 -0
  740. /data/{ext → dist}/ice/cpp/src/Ice/Thread.cpp +0 -0
  741. /data/{ext → dist}/ice/cpp/src/Ice/ThreadPool.h +0 -0
  742. /data/{ext → dist}/ice/cpp/src/Ice/Timer.cpp +0 -0
  743. /data/{ext → dist}/ice/cpp/src/Ice/TraceLevels.cpp +0 -0
  744. /data/{ext → dist}/ice/cpp/src/Ice/TraceLevels.h +0 -0
  745. /data/{ext → dist}/ice/cpp/src/Ice/TraceLevelsF.h +0 -0
  746. /data/{ext → dist}/ice/cpp/src/Ice/TraceUtil.cpp +0 -0
  747. /data/{ext → dist}/ice/cpp/src/Ice/TraceUtil.h +0 -0
  748. /data/{ext → dist}/ice/cpp/src/Ice/Transceiver.cpp +0 -0
  749. /data/{ext → dist}/ice/cpp/src/Ice/Transceiver.h +0 -0
  750. /data/{ext → dist}/ice/cpp/src/Ice/TransceiverF.h +0 -0
  751. /data/{ext → dist}/ice/cpp/src/Ice/UdpConnector.cpp +0 -0
  752. /data/{ext → dist}/ice/cpp/src/Ice/UdpConnector.h +0 -0
  753. /data/{ext → dist}/ice/cpp/src/Ice/UdpEndpointI.cpp +0 -0
  754. /data/{ext → dist}/ice/cpp/src/Ice/UdpEndpointI.h +0 -0
  755. /data/{ext → dist}/ice/cpp/src/Ice/UdpTransceiver.cpp +0 -0
  756. /data/{ext → dist}/ice/cpp/src/Ice/UdpTransceiver.h +0 -0
  757. /data/{ext → dist}/ice/cpp/src/Ice/Value.cpp +0 -0
  758. /data/{ext → dist}/ice/cpp/src/Ice/ValueFactoryManagerI.cpp +0 -0
  759. /data/{ext → dist}/ice/cpp/src/Ice/ValueFactoryManagerI.h +0 -0
  760. /data/{ext → dist}/ice/cpp/src/Ice/VirtualShared.h +0 -0
  761. /data/{ext → dist}/ice/cpp/src/Ice/WSAcceptor.cpp +0 -0
  762. /data/{ext → dist}/ice/cpp/src/Ice/WSAcceptor.h +0 -0
  763. /data/{ext → dist}/ice/cpp/src/Ice/WSConnector.cpp +0 -0
  764. /data/{ext → dist}/ice/cpp/src/Ice/WSConnector.h +0 -0
  765. /data/{ext → dist}/ice/cpp/src/Ice/WSEndpoint.cpp +0 -0
  766. /data/{ext → dist}/ice/cpp/src/Ice/WSEndpoint.h +0 -0
  767. /data/{ext → dist}/ice/cpp/src/Ice/WSTransceiver.cpp +0 -0
  768. /data/{ext → dist}/ice/cpp/src/Ice/WSTransceiver.h +0 -0
  769. /data/{ext → dist}/ice/cpp/src/IceDiscovery/LocatorI.cpp +0 -0
  770. /data/{ext → dist}/ice/cpp/src/IceDiscovery/LocatorI.h +0 -0
  771. /data/{ext → dist}/ice/cpp/src/IceDiscovery/LookupI.cpp +0 -0
  772. /data/{ext → dist}/ice/cpp/src/IceDiscovery/LookupI.h +0 -0
  773. /data/{ext → dist}/ice/cpp/src/IceDiscovery/PluginI.cpp +0 -0
  774. /data/{ext → dist}/ice/cpp/src/IceDiscovery/PluginI.h +0 -0
  775. /data/{ext → dist}/ice/cpp/src/IceLocatorDiscovery/Plugin.h +0 -0
  776. /data/{ext → dist}/ice/cpp/src/IceLocatorDiscovery/PluginI.cpp +0 -0
  777. /data/{ext → dist}/ice/cpp/src/IceSSL/AcceptorI.cpp +0 -0
  778. /data/{ext → dist}/ice/cpp/src/IceSSL/AcceptorI.h +0 -0
  779. /data/{ext → dist}/ice/cpp/src/IceSSL/CertificateI.cpp +0 -0
  780. /data/{ext → dist}/ice/cpp/src/IceSSL/CertificateI.h +0 -0
  781. /data/{ext → dist}/ice/cpp/src/IceSSL/ConnectorI.cpp +0 -0
  782. /data/{ext → dist}/ice/cpp/src/IceSSL/ConnectorI.h +0 -0
  783. /data/{ext → dist}/ice/cpp/src/IceSSL/EndpointI.cpp +0 -0
  784. /data/{ext → dist}/ice/cpp/src/IceSSL/EndpointI.h +0 -0
  785. /data/{ext → dist}/ice/cpp/src/IceSSL/Instance.cpp +0 -0
  786. /data/{ext → dist}/ice/cpp/src/IceSSL/Instance.h +0 -0
  787. /data/{ext → dist}/ice/cpp/src/IceSSL/InstanceF.h +0 -0
  788. /data/{ext → dist}/ice/cpp/src/IceSSL/OpenSSLCertificateI.cpp +0 -0
  789. /data/{ext → dist}/ice/cpp/src/IceSSL/OpenSSLEngine.cpp +0 -0
  790. /data/{ext → dist}/ice/cpp/src/IceSSL/OpenSSLEngine.h +0 -0
  791. /data/{ext → dist}/ice/cpp/src/IceSSL/OpenSSLEngineF.h +0 -0
  792. /data/{ext → dist}/ice/cpp/src/IceSSL/OpenSSLPluginI.cpp +0 -0
  793. /data/{ext → dist}/ice/cpp/src/IceSSL/OpenSSLTransceiverI.h +0 -0
  794. /data/{ext → dist}/ice/cpp/src/IceSSL/OpenSSLUtil.cpp +0 -0
  795. /data/{ext → dist}/ice/cpp/src/IceSSL/OpenSSLUtil.h +0 -0
  796. /data/{ext → dist}/ice/cpp/src/IceSSL/PluginI.h +0 -0
  797. /data/{ext → dist}/ice/cpp/src/IceSSL/RFC2253.cpp +0 -0
  798. /data/{ext → dist}/ice/cpp/src/IceSSL/RFC2253.h +0 -0
  799. /data/{ext → dist}/ice/cpp/src/IceSSL/SChannelCertificateI.cpp +0 -0
  800. /data/{ext → dist}/ice/cpp/src/IceSSL/SChannelEngine.cpp +0 -0
  801. /data/{ext → dist}/ice/cpp/src/IceSSL/SChannelEngine.h +0 -0
  802. /data/{ext → dist}/ice/cpp/src/IceSSL/SChannelEngineF.h +0 -0
  803. /data/{ext → dist}/ice/cpp/src/IceSSL/SChannelPluginI.cpp +0 -0
  804. /data/{ext → dist}/ice/cpp/src/IceSSL/SChannelTransceiverI.cpp +0 -0
  805. /data/{ext → dist}/ice/cpp/src/IceSSL/SChannelTransceiverI.h +0 -0
  806. /data/{ext → dist}/ice/cpp/src/IceSSL/SSLEngine.cpp +0 -0
  807. /data/{ext → dist}/ice/cpp/src/IceSSL/SSLEngine.h +0 -0
  808. /data/{ext → dist}/ice/cpp/src/IceSSL/SSLEngineF.h +0 -0
  809. /data/{ext → dist}/ice/cpp/src/IceSSL/SecureTransportCertificateI.cpp +0 -0
  810. /data/{ext → dist}/ice/cpp/src/IceSSL/SecureTransportEngine.cpp +0 -0
  811. /data/{ext → dist}/ice/cpp/src/IceSSL/SecureTransportEngine.h +0 -0
  812. /data/{ext → dist}/ice/cpp/src/IceSSL/SecureTransportEngineF.h +0 -0
  813. /data/{ext → dist}/ice/cpp/src/IceSSL/SecureTransportPluginI.cpp +0 -0
  814. /data/{ext → dist}/ice/cpp/src/IceSSL/SecureTransportTransceiverI.h +0 -0
  815. /data/{ext → dist}/ice/cpp/src/IceSSL/SecureTransportUtil.h +0 -0
  816. /data/{ext → dist}/ice/cpp/src/IceSSL/TrustManager.cpp +0 -0
  817. /data/{ext → dist}/ice/cpp/src/IceSSL/TrustManager.h +0 -0
  818. /data/{ext → dist}/ice/cpp/src/IceSSL/TrustManagerF.h +0 -0
  819. /data/{ext → dist}/ice/cpp/src/IceSSL/Util.cpp +0 -0
  820. /data/{ext → dist}/ice/cpp/src/IceSSL/Util.h +0 -0
  821. /data/{ext → dist}/ice/cpp/src/IceUtil/ConsoleUtil.cpp +0 -0
  822. /data/{ext → dist}/ice/cpp/src/IceUtil/ConvertUTF.cpp +0 -0
  823. /data/{ext → dist}/ice/cpp/src/IceUtil/ConvertUTF.h +0 -0
  824. /data/{ext → dist}/ice/cpp/src/IceUtil/CtrlCHandler.cpp +0 -0
  825. /data/{ext → dist}/ice/cpp/src/IceUtil/FileUtil.cpp +0 -0
  826. /data/{ext → dist}/ice/cpp/src/IceUtil/InputUtil.cpp +0 -0
  827. /data/{ext → dist}/ice/cpp/src/IceUtil/MutexProtocol.cpp +0 -0
  828. /data/{ext → dist}/ice/cpp/src/IceUtil/Options.cpp +0 -0
  829. /data/{ext → dist}/ice/cpp/src/IceUtil/OutputUtil.cpp +0 -0
  830. /data/{ext → dist}/ice/cpp/src/IceUtil/Random.cpp +0 -0
  831. /data/{ext → dist}/ice/cpp/src/IceUtil/RecMutex.cpp +0 -0
  832. /data/{ext → dist}/ice/cpp/src/IceUtil/Shared.cpp +0 -0
  833. /data/{ext → dist}/ice/cpp/src/IceUtil/StringUtil.cpp +0 -0
  834. /data/{ext → dist}/ice/cpp/src/IceUtil/ThreadException.cpp +0 -0
  835. /data/{ext → dist}/ice/cpp/src/IceUtil/Time.cpp +0 -0
  836. /data/{ext → dist}/ice/cpp/src/IceUtil/UUID.cpp +0 -0
  837. /data/{ext → dist}/ice/cpp/src/IceUtil/Unicode.cpp +0 -0
  838. /data/{ext → dist}/ice/cpp/src/IceUtil/Unicode.h +0 -0
  839. /data/{ext → dist}/ice/cpp/src/IceUtil/UtilException.cpp +0 -0
  840. /data/{ext → dist}/ice/cpp/src/Slice/CPlusPlusUtil.cpp +0 -0
  841. /data/{ext → dist}/ice/cpp/src/Slice/CPlusPlusUtil.h +0 -0
  842. /data/{ext → dist}/ice/cpp/src/Slice/Checksum.cpp +0 -0
  843. /data/{ext → dist}/ice/cpp/src/Slice/Checksum.h +0 -0
  844. /data/{ext → dist}/ice/cpp/src/Slice/FileTracker.cpp +0 -0
  845. /data/{ext → dist}/ice/cpp/src/Slice/FileTracker.h +0 -0
  846. /data/{ext → dist}/ice/cpp/src/Slice/Grammar.cpp +0 -0
  847. /data/{ext → dist}/ice/cpp/src/Slice/Grammar.h +0 -0
  848. /data/{ext → dist}/ice/cpp/src/Slice/GrammarUtil.h +0 -0
  849. /data/{ext → dist}/ice/cpp/src/Slice/JavaUtil.h +0 -0
  850. /data/{ext → dist}/ice/cpp/src/Slice/MD5.cpp +0 -0
  851. /data/{ext → dist}/ice/cpp/src/Slice/MD5.h +0 -0
  852. /data/{ext → dist}/ice/cpp/src/Slice/MD5I.cpp +0 -0
  853. /data/{ext → dist}/ice/cpp/src/Slice/MD5I.h +0 -0
  854. /data/{ext → dist}/ice/cpp/src/Slice/PHPUtil.cpp +0 -0
  855. /data/{ext → dist}/ice/cpp/src/Slice/PHPUtil.h +0 -0
  856. /data/{ext → dist}/ice/cpp/src/Slice/Parser.cpp +0 -0
  857. /data/{ext → dist}/ice/cpp/src/Slice/Parser.h +0 -0
  858. /data/{ext → dist}/ice/cpp/src/Slice/Preprocessor.cpp +0 -0
  859. /data/{ext → dist}/ice/cpp/src/Slice/Preprocessor.h +0 -0
  860. /data/{ext → dist}/ice/cpp/src/Slice/Python.cpp +0 -0
  861. /data/{ext → dist}/ice/cpp/src/Slice/PythonUtil.cpp +0 -0
  862. /data/{ext → dist}/ice/cpp/src/Slice/PythonUtil.h +0 -0
  863. /data/{ext → dist}/ice/cpp/src/Slice/Ruby.cpp +0 -0
  864. /data/{ext → dist}/ice/cpp/src/Slice/RubyUtil.cpp +0 -0
  865. /data/{ext → dist}/ice/cpp/src/Slice/RubyUtil.h +0 -0
  866. /data/{ext → dist}/ice/cpp/src/Slice/Scanner.cpp +0 -0
  867. /data/{ext → dist}/ice/cpp/src/Slice/SliceUtil.cpp +0 -0
  868. /data/{ext → dist}/ice/cpp/src/Slice/StringLiteralUtil.cpp +0 -0
  869. /data/{ext → dist}/ice/cpp/src/Slice/Util.h +0 -0
  870. /data/{ext → dist}/ice/mcpp/config.h +0 -0
  871. /data/{ext → dist}/ice/mcpp/configed.H +0 -0
  872. /data/{ext → dist}/ice/mcpp/eval.c +0 -0
  873. /data/{ext → dist}/ice/mcpp/expand.c +0 -0
  874. /data/{ext → dist}/ice/mcpp/mbchar.c +0 -0
  875. /data/{ext → dist}/ice/mcpp/mcpp_lib.h +0 -0
  876. /data/{ext → dist}/ice/mcpp/mcpp_out.h +0 -0
  877. /data/{ext → dist}/ice/mcpp/system.H +0 -0
  878. /data/{slice → dist/ice/slice}/Glacier2/Metrics.ice +0 -0
  879. /data/{slice → dist/ice/slice}/Glacier2/PermissionsVerifier.ice +0 -0
  880. /data/{slice → dist/ice/slice}/Glacier2/PermissionsVerifierF.ice +0 -0
  881. /data/{slice → dist/ice/slice}/Glacier2/Router.ice +0 -0
  882. /data/{slice → dist/ice/slice}/Glacier2/RouterF.ice +0 -0
  883. /data/{slice → dist/ice/slice}/Glacier2/SSLInfo.ice +0 -0
  884. /data/{slice → dist/ice/slice}/Glacier2/Session.ice +0 -0
  885. /data/{slice → dist/ice/slice}/Ice/BuiltinSequences.ice +0 -0
  886. /data/{slice → dist/ice/slice}/Ice/Communicator.ice +0 -0
  887. /data/{slice → dist/ice/slice}/Ice/CommunicatorF.ice +0 -0
  888. /data/{slice → dist/ice/slice}/Ice/ConnectionF.ice +0 -0
  889. /data/{slice → dist/ice/slice}/Ice/Current.ice +0 -0
  890. /data/{slice → dist/ice/slice}/Ice/Endpoint.ice +0 -0
  891. /data/{slice → dist/ice/slice}/Ice/EndpointF.ice +0 -0
  892. /data/{slice → dist/ice/slice}/Ice/EndpointTypes.ice +0 -0
  893. /data/{slice → dist/ice/slice}/Ice/FacetMap.ice +0 -0
  894. /data/{slice → dist/ice/slice}/Ice/Identity.ice +0 -0
  895. /data/{slice → dist/ice/slice}/Ice/ImplicitContext.ice +0 -0
  896. /data/{slice → dist/ice/slice}/Ice/ImplicitContextF.ice +0 -0
  897. /data/{slice → dist/ice/slice}/Ice/Instrumentation.ice +0 -0
  898. /data/{slice → dist/ice/slice}/Ice/InstrumentationF.ice +0 -0
  899. /data/{slice → dist/ice/slice}/Ice/LocalException.ice +0 -0
  900. /data/{slice → dist/ice/slice}/Ice/LocatorF.ice +0 -0
  901. /data/{slice → dist/ice/slice}/Ice/Logger.ice +0 -0
  902. /data/{slice → dist/ice/slice}/Ice/LoggerF.ice +0 -0
  903. /data/{slice → dist/ice/slice}/Ice/ObjectAdapterF.ice +0 -0
  904. /data/{slice → dist/ice/slice}/Ice/ObjectFactory.ice +0 -0
  905. /data/{slice → dist/ice/slice}/Ice/Plugin.ice +0 -0
  906. /data/{slice → dist/ice/slice}/Ice/PluginF.ice +0 -0
  907. /data/{slice → dist/ice/slice}/Ice/Process.ice +0 -0
  908. /data/{slice → dist/ice/slice}/Ice/ProcessF.ice +0 -0
  909. /data/{slice → dist/ice/slice}/Ice/Properties.ice +0 -0
  910. /data/{slice → dist/ice/slice}/Ice/PropertiesAdmin.ice +0 -0
  911. /data/{slice → dist/ice/slice}/Ice/PropertiesF.ice +0 -0
  912. /data/{slice → dist/ice/slice}/Ice/RemoteLogger.ice +0 -0
  913. /data/{slice → dist/ice/slice}/Ice/RouterF.ice +0 -0
  914. /data/{slice → dist/ice/slice}/Ice/ServantLocator.ice +0 -0
  915. /data/{slice → dist/ice/slice}/Ice/ServantLocatorF.ice +0 -0
  916. /data/{slice → dist/ice/slice}/Ice/SliceChecksumDict.ice +0 -0
  917. /data/{slice → dist/ice/slice}/Ice/ValueFactory.ice +0 -0
  918. /data/{slice → dist/ice/slice}/Ice/Version.ice +0 -0
  919. /data/{slice → dist/ice/slice}/IceBox/IceBox.ice +0 -0
  920. /data/{slice → dist/ice/slice}/IceGrid/Admin.ice +0 -0
  921. /data/{slice → dist/ice/slice}/IceGrid/Descriptor.ice +0 -0
  922. /data/{slice → dist/ice/slice}/IceGrid/Exception.ice +0 -0
  923. /data/{slice → dist/ice/slice}/IceGrid/FileParser.ice +0 -0
  924. /data/{slice → dist/ice/slice}/IceGrid/Registry.ice +0 -0
  925. /data/{slice → dist/ice/slice}/IceGrid/Session.ice +0 -0
  926. /data/{slice → dist/ice/slice}/IceGrid/UserAccountMapper.ice +0 -0
  927. /data/{slice → dist/ice/slice}/IcePatch2/FileInfo.ice +0 -0
  928. /data/{slice → dist/ice/slice}/IcePatch2/FileServer.ice +0 -0
  929. /data/{slice → dist/ice/slice}/IceStorm/Metrics.ice +0 -0
  930. /data/{lib → dist/lib}/Glacier2.rb +0 -0
  931. /data/{lib → dist/lib}/Ice.rb +0 -0
  932. /data/{lib → dist/lib}/IceBox.rb +0 -0
  933. /data/{lib → dist/lib}/IceGrid.rb +0 -0
  934. /data/{lib → dist/lib}/IcePatch2.rb +0 -0
  935. /data/{lib → dist/lib}/IceStorm.rb +0 -0
  936. /data/{bin → scripts}/slice2rb +0 -0
@@ -1,1292 +0,0 @@
1
- //
2
- // Copyright (c) ZeroC, Inc. All rights reserved.
3
- //
4
-
5
- #include <Ice/ThreadPool.h>
6
- #include <Ice/EventHandler.h>
7
- #include <Ice/Network.h>
8
- #include <Ice/LocalException.h>
9
- #include <Ice/Instance.h>
10
- #include <Ice/LoggerUtil.h>
11
- #include <Ice/Protocol.h>
12
- #include <Ice/ObjectAdapterFactory.h>
13
- #include <Ice/Properties.h>
14
- #include <Ice/TraceLevels.h>
15
-
16
- #if defined(__FreeBSD__)
17
- # include <sys/sysctl.h>
18
- #endif
19
-
20
- using namespace std;
21
- using namespace Ice;
22
- using namespace Ice::Instrumentation;
23
- using namespace IceInternal;
24
-
25
- ICE_API IceUtil::Shared* IceInternal::upCast(ThreadPool* p) { return p; }
26
-
27
- namespace
28
- {
29
-
30
- class ShutdownWorkItem : public ThreadPoolWorkItem
31
- {
32
- public:
33
-
34
- ShutdownWorkItem(const InstancePtr& instance) : _instance(instance)
35
- {
36
- }
37
-
38
- virtual void
39
- execute(ThreadPoolCurrent& current)
40
- {
41
- current.ioCompleted();
42
- try
43
- {
44
- _instance->objectAdapterFactory()->shutdown();
45
- }
46
- catch(const CommunicatorDestroyedException&)
47
- {
48
- }
49
- }
50
-
51
- private:
52
-
53
- const InstancePtr _instance;
54
- };
55
-
56
- class FinishedWorkItem : public ThreadPoolWorkItem
57
- {
58
- public:
59
-
60
- FinishedWorkItem(const EventHandlerPtr& handler, bool close) : _handler(handler), _close(close)
61
- {
62
- }
63
-
64
- virtual void
65
- execute(ThreadPoolCurrent& current)
66
- {
67
- _handler->finished(current, _close);
68
-
69
- //
70
- // Break cyclic reference count.
71
- //
72
- if(_handler->getNativeInfo())
73
- {
74
- _handler->getNativeInfo()->setReadyCallback(0);
75
- }
76
- }
77
-
78
- private:
79
-
80
- const EventHandlerPtr _handler;
81
- const bool _close;
82
- };
83
-
84
- class JoinThreadWorkItem : public ThreadPoolWorkItem
85
- {
86
- public:
87
-
88
- JoinThreadWorkItem(const IceUtil::ThreadPtr& thread) : _thread(thread)
89
- {
90
- }
91
-
92
- virtual void
93
- execute(ThreadPoolCurrent&)
94
- {
95
- // No call to ioCompleted, this shouldn't block (and we don't want to cause
96
- // a new thread to be started).
97
- _thread->getThreadControl().join();
98
- }
99
-
100
- private:
101
-
102
- IceUtil::ThreadPtr _thread;
103
- };
104
-
105
- //
106
- // Exception raised by the thread pool work queue when the thread pool
107
- // is destroyed.
108
- //
109
- class ThreadPoolDestroyedException
110
- {
111
- };
112
-
113
- #ifdef ICE_SWIFT
114
- string
115
- prefixToDispatchQueueLabel(const std::string& prefix)
116
- {
117
- if(prefix == "Ice.ThreadPool.Client")
118
- {
119
- return "com.zeroc.ice.client";
120
- }
121
-
122
- if(prefix == "Ice.ThreadPool.Server")
123
- {
124
- return "com.zeroc.ice.server";
125
- }
126
-
127
- string::size_type end = prefix.find_last_of(".ThreadPool");
128
- if(end == string::npos)
129
- {
130
- end = prefix.size();
131
- }
132
-
133
- return "com.zeroc.ice.oa." + prefix.substr(0, end);
134
- }
135
- #endif
136
- }
137
-
138
- Ice::DispatcherCall::~DispatcherCall()
139
- {
140
- // Out of line to avoid weak vtable
141
- }
142
-
143
- Ice::Dispatcher::~Dispatcher()
144
- {
145
- // Out of line to avoid weak vtable
146
- }
147
-
148
- IceInternal::DispatchWorkItem::DispatchWorkItem()
149
- {
150
- }
151
-
152
- IceInternal::DispatchWorkItem::DispatchWorkItem(const Ice::ConnectionPtr& connection) : _connection(connection)
153
- {
154
- }
155
-
156
- void
157
- IceInternal::DispatchWorkItem::execute(ThreadPoolCurrent& current)
158
- {
159
- current.ioCompleted(); // Promote follower
160
- current.dispatchFromThisThread(this);
161
- }
162
-
163
- IceInternal::ThreadPoolWorkQueue::ThreadPoolWorkQueue(ThreadPool& threadPool) :
164
- _threadPool(threadPool),
165
- _destroyed(false)
166
- {
167
- _registered = SocketOperationRead;
168
- }
169
-
170
- void
171
- IceInternal::ThreadPoolWorkQueue::destroy()
172
- {
173
- //Lock sync(*this); Called with the thread pool locked
174
- assert(!_destroyed);
175
- _destroyed = true;
176
- #if defined(ICE_USE_IOCP)
177
- _threadPool._selector.completed(this, SocketOperationRead);
178
- #else
179
- _threadPool._selector.ready(this, SocketOperationRead, true);
180
- #endif
181
- }
182
-
183
- void
184
- IceInternal::ThreadPoolWorkQueue::queue(const ThreadPoolWorkItemPtr& item)
185
- {
186
- //Lock sync(*this); Called with the thread pool locked
187
- _workItems.push_back(item);
188
- #if defined(ICE_USE_IOCP)
189
- _threadPool._selector.completed(this, SocketOperationRead);
190
- #else
191
- if(_workItems.size() == 1)
192
- {
193
- _threadPool._selector.ready(this, SocketOperationRead, true);
194
- }
195
- #endif
196
- }
197
-
198
- #if defined(ICE_USE_IOCP)
199
- bool
200
- IceInternal::ThreadPoolWorkQueue::startAsync(SocketOperation)
201
- {
202
- assert(false);
203
- return false;
204
- }
205
-
206
- bool
207
- IceInternal::ThreadPoolWorkQueue::finishAsync(SocketOperation)
208
- {
209
- assert(false);
210
- return false;
211
- }
212
- #endif
213
-
214
- void
215
- IceInternal::ThreadPoolWorkQueue::message(ThreadPoolCurrent& current)
216
- {
217
- ThreadPoolWorkItemPtr workItem;
218
- {
219
- IceUtil::Monitor<IceUtil::Mutex>::Lock sync(_threadPool);
220
- if(!_workItems.empty())
221
- {
222
- workItem = _workItems.front();
223
- _workItems.pop_front();
224
- }
225
- #if defined(ICE_USE_IOCP)
226
- else
227
- {
228
- assert(_destroyed);
229
- _threadPool._selector.completed(this, SocketOperationRead);
230
- }
231
- #else
232
- if(_workItems.empty() && !_destroyed)
233
- {
234
- _threadPool._selector.ready(this, SocketOperationRead, false);
235
- }
236
- #endif
237
- }
238
-
239
- if(workItem)
240
- {
241
- workItem->execute(current);
242
- }
243
- else
244
- {
245
- assert(_destroyed);
246
- current.ioCompleted();
247
- throw ThreadPoolDestroyedException();
248
- }
249
- }
250
-
251
- void
252
- IceInternal::ThreadPoolWorkQueue::finished(ThreadPoolCurrent&, bool)
253
- {
254
- assert(false);
255
- }
256
-
257
- string
258
- IceInternal::ThreadPoolWorkQueue::toString() const
259
- {
260
- return "work queue";
261
- }
262
-
263
- NativeInfoPtr
264
- IceInternal::ThreadPoolWorkQueue::getNativeInfo()
265
- {
266
- return 0;
267
- }
268
-
269
- IceInternal::ThreadPool::ThreadPool(const InstancePtr& instance, const string& prefix, int timeout) :
270
- _instance(instance),
271
- #ifdef ICE_SWIFT
272
- _dispatchQueue(dispatch_queue_create(prefixToDispatchQueueLabel(prefix).c_str(),
273
- DISPATCH_QUEUE_CONCURRENT_WITH_AUTORELEASE_POOL)),
274
- #else
275
- _dispatcher(_instance->initializationData().dispatcher),
276
- #endif
277
- _destroyed(false),
278
- _prefix(prefix),
279
- _selector(instance),
280
- _nextThreadId(0),
281
- _size(0),
282
- _sizeIO(0),
283
- _sizeMax(0),
284
- _sizeWarn(0),
285
- _serialize(_instance->initializationData().properties->getPropertyAsInt(_prefix + ".Serialize") > 0),
286
- _hasPriority(false),
287
- _priority(0),
288
- _serverIdleTime(timeout),
289
- _threadIdleTime(0),
290
- _stackSize(0),
291
- _inUse(0),
292
- #if !defined(ICE_USE_IOCP)
293
- _inUseIO(0),
294
- _nextHandler(_handlers.end()),
295
- #endif
296
- _promote(true)
297
- {
298
- PropertiesPtr properties = _instance->initializationData().properties;
299
- #ifdef _WIN32
300
- SYSTEM_INFO sysInfo;
301
- GetSystemInfo(&sysInfo);
302
- int nProcessors = sysInfo.dwNumberOfProcessors;
303
- #elif defined(__FreeBSD__) || defined(__FreeBSD_kernel__)
304
- static int ncpu[2] = { CTL_HW, HW_NCPU };
305
- int nProcessors;
306
- size_t sz = sizeof(nProcessors);
307
- if(sysctl(ncpu, 2, &nProcessors, &sz, 0, 0) == -1)
308
- {
309
- nProcessors = 1;
310
- }
311
- #else
312
- int nProcessors = static_cast<int>(sysconf(_SC_NPROCESSORS_ONLN));
313
- if(nProcessors == -1)
314
- {
315
- nProcessors = 1;
316
- }
317
- #endif
318
-
319
- //
320
- // We use just one thread as the default. This is the fastest
321
- // possible setting, still allows one level of nesting, and
322
- // doesn't require to make the servants thread safe.
323
- //
324
- int size = properties->getPropertyAsIntWithDefault(_prefix + ".Size", 1);
325
- if(size < 1)
326
- {
327
- Warning out(_instance->initializationData().logger);
328
- out << _prefix << ".Size < 1; Size adjusted to 1";
329
- size = 1;
330
- }
331
-
332
- int sizeMax = properties->getPropertyAsIntWithDefault(_prefix + ".SizeMax", size);
333
- if(sizeMax == -1)
334
- {
335
- sizeMax = nProcessors;
336
- }
337
-
338
- if(sizeMax < size)
339
- {
340
- Warning out(_instance->initializationData().logger);
341
- out << _prefix << ".SizeMax < " << _prefix << ".Size; SizeMax adjusted to Size (" << size << ")";
342
- sizeMax = size;
343
- }
344
-
345
- int sizeWarn = properties->getPropertyAsInt(_prefix + ".SizeWarn");
346
- if(sizeWarn != 0 && sizeWarn < size)
347
- {
348
- Warning out(_instance->initializationData().logger);
349
- out << _prefix << ".SizeWarn < " << _prefix << ".Size; adjusted SizeWarn to Size (" << size << ")";
350
- sizeWarn = size;
351
- }
352
- else if(sizeWarn > sizeMax)
353
- {
354
- Warning out(_instance->initializationData().logger);
355
- out << _prefix << ".SizeWarn > " << _prefix << ".SizeMax; adjusted SizeWarn to SizeMax (" << sizeMax << ")";
356
- sizeWarn = sizeMax;
357
- }
358
-
359
- int threadIdleTime = properties->getPropertyAsIntWithDefault(_prefix + ".ThreadIdleTime", 60);
360
- if(threadIdleTime < 0)
361
- {
362
- Warning out(_instance->initializationData().logger);
363
- out << _prefix << ".ThreadIdleTime < 0; ThreadIdleTime adjusted to 0";
364
- threadIdleTime = 0;
365
- }
366
-
367
- const_cast<int&>(_size) = size;
368
- const_cast<int&>(_sizeMax) = sizeMax;
369
- const_cast<int&>(_sizeWarn) = sizeWarn;
370
- const_cast<int&>(_sizeIO) = min(sizeMax, nProcessors);
371
- const_cast<int&>(_threadIdleTime) = threadIdleTime;
372
-
373
- #ifdef ICE_USE_IOCP
374
- _selector.setup(_sizeIO);
375
- #endif
376
-
377
- #if defined(__APPLE__)
378
- //
379
- // We use a default stack size of 1MB on macOS and the new C++11 mapping to allow transmitting
380
- // class graphs with a depth of 100 (maximum default), 512KB is not enough otherwise.
381
- //
382
- int defaultStackSize = 1024 * 1024; // 1MB
383
- #else
384
- int defaultStackSize = 0;
385
- #endif
386
- int stackSize = properties->getPropertyAsIntWithDefault(_prefix + ".StackSize", defaultStackSize);
387
- if(stackSize < 0)
388
- {
389
- Warning out(_instance->initializationData().logger);
390
- out << _prefix << ".StackSize < 0; Size adjusted to OS default";
391
- stackSize = 0;
392
- }
393
- const_cast<size_t&>(_stackSize) = static_cast<size_t>(stackSize);
394
-
395
- const_cast<bool&>(_hasPriority) = properties->getProperty(_prefix + ".ThreadPriority") != "";
396
- const_cast<int&>(_priority) = properties->getPropertyAsInt(_prefix + ".ThreadPriority");
397
- if(!_hasPriority)
398
- {
399
- const_cast<bool&>(_hasPriority) = properties->getProperty("Ice.ThreadPriority") != "";
400
- const_cast<int&>(_priority) = properties->getPropertyAsInt("Ice.ThreadPriority");
401
- }
402
-
403
- _workQueue = ICE_MAKE_SHARED(ThreadPoolWorkQueue, *this);
404
- _selector.initialize(_workQueue.get());
405
-
406
- if(_instance->traceLevels()->threadPool >= 1)
407
- {
408
- Trace out(_instance->initializationData().logger, _instance->traceLevels()->threadPoolCat);
409
- out << "creating " << _prefix << ": Size = " << _size << ", SizeMax = " << _sizeMax << ", SizeWarn = "
410
- << _sizeWarn;
411
- }
412
-
413
- __setNoDelete(true);
414
- try
415
- {
416
- for(int i = 0 ; i < _size ; ++i)
417
- {
418
- EventHandlerThreadPtr thread = new EventHandlerThread(this, nextThreadId());
419
- if(_hasPriority)
420
- {
421
- thread->start(_stackSize, _priority);
422
- }
423
- else
424
- {
425
- thread->start(_stackSize);
426
- }
427
- _threads.insert(thread);
428
- }
429
- }
430
- catch(const IceUtil::Exception& ex)
431
- {
432
- {
433
- Error out(_instance->initializationData().logger);
434
- out << "cannot create thread for `" << _prefix << "':\n" << ex;
435
- }
436
-
437
- destroy();
438
- joinWithAllThreads();
439
- __setNoDelete(false);
440
- throw;
441
- }
442
- catch(...)
443
- {
444
- __setNoDelete(false);
445
- throw;
446
- }
447
- __setNoDelete(false);
448
- }
449
-
450
- IceInternal::ThreadPool::~ThreadPool()
451
- {
452
- assert(_destroyed);
453
- #ifdef ICE_SWIFT
454
- dispatch_release(_dispatchQueue);
455
- #endif
456
- }
457
-
458
- void
459
- IceInternal::ThreadPool::destroy()
460
- {
461
- Lock sync(*this);
462
- if(_destroyed)
463
- {
464
- return;
465
- }
466
- _destroyed = true;
467
- _workQueue->destroy();
468
- }
469
-
470
- void
471
- IceInternal::ThreadPool::updateObservers()
472
- {
473
- Lock sync(*this);
474
- for(set<EventHandlerThreadPtr>::iterator p = _threads.begin(); p != _threads.end(); ++p)
475
- {
476
- (*p)->updateObserver();
477
- }
478
- }
479
-
480
- void
481
- IceInternal::ThreadPool::initialize(const EventHandlerPtr& handler)
482
- {
483
- Lock sync(*this);
484
- assert(!_destroyed);
485
- _selector.initialize(handler.get());
486
-
487
- class ReadyCallbackI : public ReadyCallback
488
- {
489
- public:
490
-
491
- ReadyCallbackI(const ThreadPoolPtr& threadPool, const EventHandlerPtr& handler) :
492
- _threadPool(threadPool), _handler(handler)
493
- {
494
- }
495
-
496
- virtual void
497
- ready(SocketOperation op, bool value)
498
- {
499
- _threadPool->ready(_handler, op, value);
500
- }
501
-
502
- private:
503
-
504
- const ThreadPoolPtr _threadPool;
505
- const EventHandlerPtr _handler;
506
- };
507
- handler->getNativeInfo()->setReadyCallback(new ReadyCallbackI(this, handler));
508
- }
509
-
510
- void
511
- IceInternal::ThreadPool::update(const EventHandlerPtr& handler, SocketOperation remove, SocketOperation add)
512
- {
513
- Lock sync(*this);
514
- assert(!_destroyed);
515
-
516
- // Don't remove what needs to be added
517
- remove = static_cast<SocketOperation>(remove & ~add);
518
-
519
- // Don't remove/add if already un-registered or registered
520
- remove = static_cast<SocketOperation>(handler->_registered & remove);
521
- add = static_cast<SocketOperation>(~handler->_registered & add);
522
- if(remove == add)
523
- {
524
- return;
525
- }
526
-
527
- _selector.update(handler.get(), remove, add);
528
- }
529
-
530
- bool
531
- IceInternal::ThreadPool::finish(const EventHandlerPtr& handler, bool closeNow)
532
- {
533
- Lock sync(*this);
534
- assert(!_destroyed);
535
- #if !defined(ICE_USE_IOCP)
536
- closeNow = _selector.finish(handler.get(), closeNow); // This must be called before!
537
- _workQueue->queue(new FinishedWorkItem(handler, !closeNow));
538
- return closeNow;
539
- #else
540
- UNREFERENCED_PARAMETER(closeNow);
541
-
542
- // If there are no pending asynchronous operations, we can call finish on the handler now.
543
- if(!handler->_pending)
544
- {
545
- _workQueue->queue(new FinishedWorkItem(handler, false));
546
- _selector.finish(handler.get());
547
- }
548
- else
549
- {
550
- handler->_finish = true;
551
- }
552
- return true; // Always close now to interrupt the pending call.
553
- #endif
554
- }
555
-
556
- void
557
- IceInternal::ThreadPool::ready(const EventHandlerPtr& handler, SocketOperation op, bool value)
558
- {
559
- Lock sync(*this);
560
- if(_destroyed)
561
- {
562
- return;
563
- }
564
- _selector.ready(handler.get(), op, value);
565
- }
566
-
567
- void
568
- IceInternal::ThreadPool::dispatchFromThisThread(const DispatchWorkItemPtr& workItem)
569
- {
570
- #ifdef ICE_SWIFT
571
- dispatch_sync(_dispatchQueue, ^
572
- {
573
- workItem->run();
574
- });
575
- #else
576
- if(_dispatcher)
577
- {
578
- try
579
- {
580
- #ifdef ICE_CPP11_MAPPING
581
- _dispatcher([workItem]()
582
- {
583
- workItem->run();
584
- },
585
- workItem->getConnection());
586
- #else
587
- _dispatcher->dispatch(workItem, workItem->getConnection());
588
- #endif
589
- }
590
- catch(const std::exception& ex)
591
- {
592
- if(_instance->initializationData().properties->getPropertyAsIntWithDefault("Ice.Warn.Dispatch", 1) > 1)
593
- {
594
- Warning out(_instance->initializationData().logger);
595
- out << "dispatch exception:\n" << ex;
596
- }
597
- }
598
- catch(...)
599
- {
600
- if(_instance->initializationData().properties->getPropertyAsIntWithDefault("Ice.Warn.Dispatch", 1) > 1)
601
- {
602
- Warning out(_instance->initializationData().logger);
603
- out << "dispatch exception:\nunknown c++ exception";
604
- }
605
- }
606
- }
607
- else
608
- {
609
- workItem->run();
610
- }
611
- #endif
612
- }
613
-
614
- void
615
- IceInternal::ThreadPool::dispatch(const DispatchWorkItemPtr& workItem)
616
- {
617
- Lock sync(*this);
618
- if(_destroyed)
619
- {
620
- throw CommunicatorDestroyedException(__FILE__, __LINE__);
621
- }
622
- _workQueue->queue(workItem);
623
- }
624
-
625
- void
626
- IceInternal::ThreadPool::joinWithAllThreads()
627
- {
628
- assert(_destroyed);
629
-
630
- //
631
- // _threads is immutable after destroy() has been called,
632
- // therefore no synchronization is needed. (Synchronization
633
- // wouldn't be possible here anyway, because otherwise the other
634
- // threads would never terminate.)
635
- //
636
- for(set<EventHandlerThreadPtr>::iterator p = _threads.begin(); p != _threads.end(); ++p)
637
- {
638
- (*p)->getThreadControl().join();
639
- }
640
- _selector.destroy();
641
- }
642
-
643
- string
644
- IceInternal::ThreadPool::prefix() const
645
- {
646
- return _prefix;
647
- }
648
-
649
- #ifdef ICE_SWIFT
650
-
651
- dispatch_queue_t
652
- IceInternal::ThreadPool::getDispatchQueue() const ICE_NOEXCEPT
653
- {
654
- return _dispatchQueue;
655
- }
656
-
657
- #endif
658
-
659
- void
660
- IceInternal::ThreadPool::run(const EventHandlerThreadPtr& thread)
661
- {
662
- #if !defined(ICE_USE_IOCP)
663
- ThreadPoolCurrent current(_instance, this, thread);
664
- bool select = false;
665
- while(true)
666
- {
667
- if(current._handler)
668
- {
669
- try
670
- {
671
- current._handler->message(current);
672
- }
673
- catch(const ThreadPoolDestroyedException&)
674
- {
675
- Lock sync(*this);
676
- --_inUse;
677
- thread->setState(ICE_ENUM(ThreadState, ThreadStateIdle));
678
- return;
679
- }
680
- catch(const exception& ex)
681
- {
682
- Error out(_instance->initializationData().logger);
683
- out << "exception in `" << _prefix << "':\n" << ex << "\nevent handler: "
684
- << current._handler->toString();
685
- }
686
- catch(...)
687
- {
688
- Error out(_instance->initializationData().logger);
689
- out << "exception in `" << _prefix << "':\nevent handler: " << current._handler->toString();
690
- }
691
- }
692
- else if(select)
693
- {
694
- try
695
- {
696
- _selector.select(_serverIdleTime);
697
- }
698
- catch(const SelectorTimeoutException&)
699
- {
700
- Lock sync(*this);
701
- if(!_destroyed && _inUse == 0)
702
- {
703
- _workQueue->queue(new ShutdownWorkItem(_instance)); // Select timed-out.
704
- }
705
- continue;
706
- }
707
- }
708
-
709
- {
710
- Lock sync(*this);
711
- if(!current._handler)
712
- {
713
- if(select)
714
- {
715
- _selector.finishSelect(_handlers);
716
- _nextHandler = _handlers.begin();
717
- select = false;
718
- }
719
- else if(!current._leader && followerWait(current))
720
- {
721
- return; // Wait timed-out.
722
- }
723
- }
724
- else if(_sizeMax > 1)
725
- {
726
- if(!current._ioCompleted)
727
- {
728
- //
729
- // The handler didn't call ioCompleted() so we take care of decreasing
730
- // the IO thread count now.
731
- //
732
- --_inUseIO;
733
- }
734
- else
735
- {
736
- //
737
- // If the handler called ioCompleted(), we re-enable the handler in
738
- // case it was disabled and we decrease the number of thread in use.
739
- //
740
- if(_serialize && current._handler.get() != _workQueue.get())
741
- {
742
- _selector.enable(current._handler.get(), current.operation);
743
- }
744
- assert(_inUse > 0);
745
- --_inUse;
746
- }
747
-
748
- if(!current._leader && followerWait(current))
749
- {
750
- return; // Wait timed-out.
751
- }
752
- }
753
-
754
- //
755
- // Get the next ready handler.
756
- //
757
- while(_nextHandler != _handlers.end() &&
758
- !(_nextHandler->second & ~_nextHandler->first->_disabled & _nextHandler->first->_registered))
759
- {
760
- ++_nextHandler;
761
- }
762
- if(_nextHandler != _handlers.end())
763
- {
764
- current._ioCompleted = false;
765
- current._handler = ICE_GET_SHARED_FROM_THIS(_nextHandler->first);
766
- current.operation = _nextHandler->second;
767
- ++_nextHandler;
768
- thread->setState(ICE_ENUM(ThreadState, ThreadStateInUseForIO));
769
- }
770
- else
771
- {
772
- current._handler = 0;
773
- }
774
-
775
- if(!current._handler)
776
- {
777
- //
778
- // If there are no more ready handlers and there are still threads busy performing
779
- // IO, we give up leadership and promote another follower (which will perform the
780
- // select() only once all the IOs are completed). Otherwise, if there are no more
781
- // threads peforming IOs, it's time to do another select().
782
- //
783
- if(_inUseIO > 0)
784
- {
785
- promoteFollower(current);
786
- }
787
- else
788
- {
789
- _handlers.clear();
790
- _selector.startSelect();
791
- select = true;
792
- thread->setState(ICE_ENUM(ThreadState, ThreadStateIdle));
793
- }
794
- }
795
- else if(_sizeMax > 1)
796
- {
797
- //
798
- // Increment the IO thread count and if there are still threads available
799
- // to perform IO and more handlers ready, we promote a follower.
800
- //
801
- ++_inUseIO;
802
- if(_nextHandler != _handlers.end() && _inUseIO < _sizeIO)
803
- {
804
- promoteFollower(current);
805
- }
806
- }
807
- }
808
- }
809
- #else
810
- ThreadPoolCurrent current(_instance, this, thread);
811
- while(true)
812
- {
813
- try
814
- {
815
- current._ioCompleted = false;
816
- current._handler = ICE_GET_SHARED_FROM_THIS(_selector.getNextHandler(current.operation, current._count,
817
- current._error, _threadIdleTime));
818
- }
819
- catch(const SelectorTimeoutException&)
820
- {
821
- if(_sizeMax > 1)
822
- {
823
- Lock sync(*this);
824
-
825
- if(_destroyed)
826
- {
827
- continue;
828
- }
829
- else if(_inUse < static_cast<int>(_threads.size() - 1)) // If not the last idle thread, we can exit.
830
- {
831
- BOOL hasIO = false;
832
- GetThreadIOPendingFlag(GetCurrentThread(), &hasIO);
833
- if(hasIO)
834
- {
835
- continue;
836
- }
837
-
838
- if(_instance->traceLevels()->threadPool >= 1)
839
- {
840
- Trace out(_instance->initializationData().logger, _instance->traceLevels()->threadPoolCat);
841
- out << "shrinking " << _prefix << ": Size = " << (_threads.size() - 1);
842
- }
843
- _threads.erase(thread);
844
- _workQueue->queue(new JoinThreadWorkItem(thread));
845
- return;
846
- }
847
- else if(_inUse > 0)
848
- {
849
- //
850
- // If this is the last idle thread but there are still other threads
851
- // busy dispatching, we go back waiting with _threadIdleTime. We only
852
- // wait with _serverIdleTime when there's only one thread left.
853
- //
854
- continue;
855
- }
856
- assert(_threads.size() == 1);
857
- }
858
-
859
- try
860
- {
861
- current._handler = ICE_GET_SHARED_FROM_THIS(_selector.getNextHandler(current.operation, current._count,
862
- current._error, _serverIdleTime));
863
- }
864
- catch(const SelectorTimeoutException&)
865
- {
866
- Lock sync(*this);
867
- if(!_destroyed)
868
- {
869
- _workQueue->queue(new ShutdownWorkItem(_instance));
870
- }
871
- continue;
872
- }
873
- }
874
-
875
- {
876
- IceUtil::Monitor<IceUtil::Mutex>::Lock sync(*this);
877
- thread->setState(ICE_ENUM(ThreadState, ThreadStateInUseForIO));
878
- }
879
-
880
- try
881
- {
882
- assert(current._handler);
883
- current._handler->message(current);
884
- }
885
- catch(const ThreadPoolDestroyedException&)
886
- {
887
- return;
888
- }
889
- catch(const exception& ex)
890
- {
891
- Error out(_instance->initializationData().logger);
892
- out << "exception in `" << _prefix << "':\n" << ex << "\nevent handler: " << current._handler->toString();
893
- }
894
- catch(...)
895
- {
896
- Error out(_instance->initializationData().logger);
897
- out << "exception in `" << _prefix << "':\nevent handler: " << current._handler->toString();
898
- }
899
-
900
- {
901
- Lock sync(*this);
902
- if(_sizeMax > 1 && current._ioCompleted)
903
- {
904
- assert(_inUse > 0);
905
- --_inUse;
906
- }
907
- thread->setState(ICE_ENUM(ThreadState, ThreadStateIdle));
908
- }
909
- }
910
- #endif
911
- }
912
-
913
- bool
914
- IceInternal::ThreadPool::ioCompleted(ThreadPoolCurrent& current)
915
- {
916
- IceUtil::Monitor<IceUtil::Mutex>::Lock sync(*this);
917
-
918
- current._ioCompleted = true; // Set the IO completed flag to specifiy that ioCompleted() has been called.
919
-
920
- current._thread->setState(ICE_ENUM(ThreadState, ThreadStateInUseForUser));
921
-
922
- if(_sizeMax > 1)
923
- {
924
-
925
- #if !defined(ICE_USE_IOCP)
926
- --_inUseIO;
927
-
928
- if(!_destroyed)
929
- {
930
- if(_serialize && current._handler.get() != _workQueue.get())
931
- {
932
- _selector.disable(current._handler.get(), current.operation);
933
- }
934
- }
935
-
936
- if(current._leader)
937
- {
938
- //
939
- // If this thread is still the leader, it's time to promote a new leader.
940
- //
941
- promoteFollower(current);
942
- }
943
- else if(_promote && (_nextHandler != _handlers.end() || _inUseIO == 0))
944
- {
945
- notify();
946
- }
947
- #endif
948
-
949
- assert(_inUse >= 0);
950
- ++_inUse;
951
-
952
- if(_inUse == _sizeWarn)
953
- {
954
- Warning out(_instance->initializationData().logger);
955
- out << "thread pool `" << _prefix << "' is running low on threads\n"
956
- << "Size=" << _size << ", " << "SizeMax=" << _sizeMax << ", " << "SizeWarn=" << _sizeWarn;
957
- }
958
-
959
- if(!_destroyed)
960
- {
961
- assert(_inUse <= static_cast<int>(_threads.size()));
962
- if(_inUse < _sizeMax && _inUse == static_cast<int>(_threads.size()))
963
- {
964
- if(_instance->traceLevels()->threadPool >= 1)
965
- {
966
- Trace out(_instance->initializationData().logger, _instance->traceLevels()->threadPoolCat);
967
- out << "growing " << _prefix << ": Size=" << _threads.size() + 1;
968
- }
969
-
970
- try
971
- {
972
- EventHandlerThreadPtr thread = new EventHandlerThread(this, nextThreadId());
973
- if(_hasPriority)
974
- {
975
- thread->start(_stackSize, _priority);
976
- }
977
- else
978
- {
979
- thread->start(_stackSize);
980
- }
981
- _threads.insert(thread);
982
- }
983
- catch(const IceUtil::Exception& ex)
984
- {
985
- Error out(_instance->initializationData().logger);
986
- out << "cannot create thread for `" << _prefix << "':\n" << ex;
987
- }
988
- }
989
- }
990
- }
991
-
992
- return _serialize && current._handler.get() != _workQueue.get();
993
- }
994
-
995
- #if defined(ICE_USE_IOCP)
996
- bool
997
- IceInternal::ThreadPool::startMessage(ThreadPoolCurrent& current)
998
- {
999
- assert(current._handler->_pending & current.operation);
1000
-
1001
- if(current._handler->_started & current.operation)
1002
- {
1003
- assert(!(current._handler->_completed & current.operation));
1004
- current._handler->_completed = static_cast<SocketOperation>(current._handler->_completed | current.operation);
1005
- current._handler->_started = static_cast<SocketOperation>(current._handler->_started & ~current.operation);
1006
-
1007
- AsyncInfo* info = current._handler->getNativeInfo()->getAsyncInfo(current.operation);
1008
- info->count = current._count;
1009
- info->error = current._error;
1010
-
1011
- if(!current._handler->finishAsync(current.operation)) // Returns false if the handler is finished.
1012
- {
1013
- current._handler->_pending = static_cast<SocketOperation>(current._handler->_pending & ~current.operation);
1014
- if(!current._handler->_pending && current._handler->_finish)
1015
- {
1016
- Lock sync(*this);
1017
- _workQueue->queue(new FinishedWorkItem(current._handler, false));
1018
- _selector.finish(current._handler.get());
1019
- }
1020
- return false;
1021
- }
1022
- }
1023
- else if(!(current._handler->_completed & current.operation) && (current._handler->_registered & current.operation))
1024
- {
1025
- assert(!(current._handler->_started & current.operation));
1026
- if(current._handler->_ready & current.operation)
1027
- {
1028
- return true;
1029
- }
1030
- else if(!current._handler->startAsync(current.operation))
1031
- {
1032
- current._handler->_pending = static_cast<SocketOperation>(current._handler->_pending & ~current.operation);
1033
- if(!current._handler->_pending && current._handler->_finish)
1034
- {
1035
- Lock sync(*this);
1036
- _workQueue->queue(new FinishedWorkItem(current._handler, false));
1037
- _selector.finish(current._handler.get());
1038
- }
1039
- return false;
1040
- }
1041
- else
1042
- {
1043
- current._handler->_started = static_cast<SocketOperation>(current._handler->_started | current.operation);
1044
- return false;
1045
- }
1046
- }
1047
-
1048
- if(current._handler->_registered & current.operation)
1049
- {
1050
- assert(current._handler->_completed & current.operation);
1051
- current._handler->_completed = static_cast<SocketOperation>(current._handler->_completed & ~current.operation);
1052
- return true;
1053
- }
1054
- else
1055
- {
1056
- current._handler->_pending = static_cast<SocketOperation>(current._handler->_pending & ~current.operation);
1057
- if(!current._handler->_pending && current._handler->_finish)
1058
- {
1059
- Lock sync(*this);
1060
- _workQueue->queue(new FinishedWorkItem(current._handler, false));
1061
- _selector.finish(current._handler.get());
1062
- }
1063
- return false;
1064
- }
1065
- }
1066
-
1067
- void
1068
- IceInternal::ThreadPool::finishMessage(ThreadPoolCurrent& current)
1069
- {
1070
- if(current._handler->_registered & current.operation && !current._handler->_finish)
1071
- {
1072
- assert(!(current._handler->_completed & current.operation));
1073
- if(current._handler->_ready & current.operation)
1074
- {
1075
- _selector.completed(current._handler.get(), current.operation);
1076
- }
1077
- else if(!current._handler->startAsync(current.operation))
1078
- {
1079
- current._handler->_pending = static_cast<SocketOperation>(current._handler->_pending & ~current.operation);
1080
- }
1081
- else
1082
- {
1083
- assert(current._handler->_pending & current.operation);
1084
- current._handler->_started = static_cast<SocketOperation>(current._handler->_started | current.operation);
1085
- }
1086
- }
1087
- else
1088
- {
1089
- current._handler->_pending = static_cast<SocketOperation>(current._handler->_pending & ~current.operation);
1090
- }
1091
-
1092
- if(!current._handler->_pending && current._handler->_finish)
1093
- {
1094
- // There are no more pending async operations, it's time to call finish.
1095
- Lock sync(*this);
1096
- _workQueue->queue(new FinishedWorkItem(current._handler, false));
1097
- _selector.finish(current._handler.get());
1098
- }
1099
- }
1100
- #else
1101
- void
1102
- IceInternal::ThreadPool::promoteFollower(ThreadPoolCurrent& current)
1103
- {
1104
- assert(!_promote && current._leader);
1105
- _promote = true;
1106
- if(_inUseIO < _sizeIO && (_nextHandler != _handlers.end() || _inUseIO == 0))
1107
- {
1108
- notify();
1109
- }
1110
- current._leader = false;
1111
- }
1112
-
1113
- bool
1114
- IceInternal::ThreadPool::followerWait(ThreadPoolCurrent& current)
1115
- {
1116
- assert(!current._leader);
1117
-
1118
- current._thread->setState(ICE_ENUM(ThreadState, ThreadStateIdle));
1119
-
1120
- //
1121
- // It's important to clear the handler before waiting to make sure that
1122
- // resources for the handler are released now if it's finished. We also
1123
- // clear the per-thread stream.
1124
- //
1125
- current._handler = 0;
1126
- current.stream.clear();
1127
- current.stream.b.clear();
1128
-
1129
- //
1130
- // Wait to be promoted and for all the IO threads to be done.
1131
- //
1132
- while(!_promote || _inUseIO == _sizeIO || (_nextHandler == _handlers.end() && _inUseIO > 0))
1133
- {
1134
- if(_threadIdleTime)
1135
- {
1136
- if(!timedWait(IceUtil::Time::seconds(_threadIdleTime)))
1137
- {
1138
- if(!_destroyed && (!_promote || _inUseIO == _sizeIO ||
1139
- (_nextHandler == _handlers.end() && _inUseIO > 0)))
1140
- {
1141
- if(_instance->traceLevels()->threadPool >= 1)
1142
- {
1143
- Trace out(_instance->initializationData().logger, _instance->traceLevels()->threadPoolCat);
1144
- out << "shrinking " << _prefix << ": Size=" << (_threads.size() - 1);
1145
- }
1146
- assert(_threads.size() > 1); // Can only be called by a waiting follower thread.
1147
- _threads.erase(current._thread);
1148
- _workQueue->queue(new JoinThreadWorkItem(current._thread));
1149
- return true;
1150
- }
1151
- }
1152
- }
1153
- else
1154
- {
1155
- wait();
1156
- }
1157
- }
1158
- current._leader = true; // The current thread has become the leader.
1159
- _promote = false;
1160
- return false;
1161
- }
1162
- #endif
1163
-
1164
- string
1165
- IceInternal::ThreadPool::nextThreadId()
1166
- {
1167
- ostringstream os;
1168
- os << _prefix << "-" << _nextThreadId++;
1169
- return os.str();
1170
- }
1171
-
1172
- IceInternal::ThreadPool::EventHandlerThread::EventHandlerThread(const ThreadPoolPtr& pool, const string& name) :
1173
- IceUtil::Thread(name),
1174
- _pool(pool),
1175
- _state(ICE_ENUM(ThreadState, ThreadStateIdle))
1176
- {
1177
- updateObserver();
1178
- }
1179
-
1180
- void
1181
- IceInternal::ThreadPool::EventHandlerThread::updateObserver()
1182
- {
1183
- // Must be called with the thread pool mutex locked
1184
- const CommunicatorObserverPtr& obsv = _pool->_instance->initializationData().observer;
1185
- if(obsv)
1186
- {
1187
- _observer.attach(obsv->getThreadObserver(_pool->_prefix, name(), _state, _observer.get()));
1188
- }
1189
- }
1190
-
1191
- void
1192
- IceInternal::ThreadPool::EventHandlerThread::setState(Ice::Instrumentation::ThreadState s)
1193
- {
1194
- // Must be called with the thread pool mutex locked
1195
- if(_observer)
1196
- {
1197
- if(_state != s)
1198
- {
1199
- _observer->stateChanged(_state, s);
1200
- }
1201
- }
1202
- _state = s;
1203
- }
1204
-
1205
- void
1206
- IceInternal::ThreadPool::EventHandlerThread::run()
1207
- {
1208
- #ifdef ICE_CPP11_MAPPING
1209
- if(_pool->_instance->initializationData().threadStart)
1210
- #else
1211
- if(_pool->_instance->initializationData().threadHook)
1212
- #endif
1213
- {
1214
- try
1215
- {
1216
- #ifdef ICE_CPP11_MAPPING
1217
- _pool->_instance->initializationData().threadStart();
1218
- #else
1219
- _pool->_instance->initializationData().threadHook->start();
1220
- #endif
1221
- }
1222
- catch(const exception& ex)
1223
- {
1224
- Error out(_pool->_instance->initializationData().logger);
1225
- out << "thread hook start() method raised an unexpected exception in `" << _pool->_prefix << "':\n" << ex;
1226
- }
1227
- catch(...)
1228
- {
1229
- Error out(_pool->_instance->initializationData().logger);
1230
- out << "thread hook start() method raised an unexpected exception in `" << _pool->_prefix << "'";
1231
- }
1232
- }
1233
-
1234
- try
1235
- {
1236
- _pool->run(this);
1237
- }
1238
- catch(const exception& ex)
1239
- {
1240
- Error out(_pool->_instance->initializationData().logger);
1241
- out << "exception in `" << _pool->_prefix << "':\n" << ex;
1242
- }
1243
- catch(...)
1244
- {
1245
- Error out(_pool->_instance->initializationData().logger);
1246
- out << "unknown exception in `" << _pool->_prefix << "'";
1247
- }
1248
-
1249
- _observer.detach();
1250
-
1251
- #ifdef ICE_CPP11_MAPPING
1252
- if(_pool->_instance->initializationData().threadStop)
1253
- #else
1254
- if(_pool->_instance->initializationData().threadHook)
1255
- #endif
1256
- {
1257
- try
1258
- {
1259
- #ifdef ICE_CPP11_MAPPING
1260
- _pool->_instance->initializationData().threadStop();
1261
- #else
1262
- _pool->_instance->initializationData().threadHook->stop();
1263
- #endif
1264
- }
1265
- catch(const exception& ex)
1266
- {
1267
- Error out(_pool->_instance->initializationData().logger);
1268
- out << "thread hook stop() method raised an unexpected exception in `" << _pool->_prefix << "':\n" << ex;
1269
- }
1270
- catch(...)
1271
- {
1272
- Error out(_pool->_instance->initializationData().logger);
1273
- out << "thread hook stop() method raised an unexpected exception in `" << _pool->_prefix << "'";
1274
- }
1275
- }
1276
-
1277
- _pool = 0; // Break cyclic dependency.
1278
- }
1279
-
1280
- ThreadPoolCurrent::ThreadPoolCurrent(const InstancePtr& instance,
1281
- const ThreadPoolPtr& threadPool,
1282
- const ThreadPool::EventHandlerThreadPtr& thread) :
1283
- operation(SocketOperationNone),
1284
- stream(instance.get(), Ice::currentProtocolEncoding),
1285
- _threadPool(threadPool.get()),
1286
- _thread(thread),
1287
- _ioCompleted(false)
1288
- #if !defined(ICE_USE_IOCP)
1289
- , _leader(false)
1290
- #endif
1291
- {
1292
- }