zeroc-ice 3.7.9.1 → 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 (994) 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/Config.h +76 -0
  12. data/dist/ice/cpp/include/Ice/ConsoleUtil.h +23 -0
  13. data/dist/ice/cpp/include/Ice/ExceptionHelpers.h +74 -0
  14. data/dist/ice/cpp/include/Ice/Ice.h +55 -0
  15. data/dist/ice/cpp/include/Ice/Initialize.h +957 -0
  16. data/dist/ice/cpp/include/Ice/MetricsObserverI.h +669 -0
  17. data/dist/ice/cpp/include/Ice/OutgoingAsync.h +868 -0
  18. data/dist/ice/cpp/include/Ice/Proxy.h +5171 -0
  19. data/dist/ice/cpp/include/Ice/SHA1.h +40 -0
  20. data/dist/ice/cpp/include/Ice/UserExceptionFactory.h +90 -0
  21. data/dist/ice/cpp/include/IceDiscovery/IceDiscovery.h +1889 -0
  22. data/dist/ice/cpp/include/IceLocatorDiscovery/IceLocatorDiscovery.h +1197 -0
  23. data/dist/ice/cpp/include/IceSSL/IceSSL.h +24 -0
  24. data/dist/ice/cpp/include/IceUtil/Cond.h +317 -0
  25. data/dist/ice/cpp/include/IceUtil/Config.h +392 -0
  26. data/dist/ice/cpp/include/IceUtil/ConsoleUtil.h +92 -0
  27. data/dist/ice/cpp/include/IceUtil/CtrlCHandler.h +96 -0
  28. data/dist/ice/cpp/include/IceUtil/FileUtil.h +140 -0
  29. data/dist/ice/cpp/include/IceUtil/IceUtil.h +40 -0
  30. data/dist/ice/cpp/include/IceUtil/InputUtil.h +42 -0
  31. data/dist/ice/cpp/include/IceUtil/Mutex.h +349 -0
  32. data/dist/ice/cpp/include/IceUtil/ResourceConfig.h +37 -0
  33. data/dist/ice/cpp/include/IceUtil/Thread.h +160 -0
  34. data/dist/ice/cpp/include/IceUtil/Timer.h +153 -0
  35. data/dist/ice/cpp/include/generated/Glacier2/Metrics.h +475 -0
  36. data/dist/ice/cpp/include/generated/Glacier2/PermissionsVerifier.h +1430 -0
  37. data/dist/ice/cpp/include/generated/Glacier2/PermissionsVerifierF.h +147 -0
  38. data/dist/ice/cpp/include/generated/Glacier2/Router.h +3260 -0
  39. data/dist/ice/cpp/include/generated/Glacier2/RouterF.h +125 -0
  40. data/dist/ice/cpp/include/generated/Glacier2/SSLInfo.h +223 -0
  41. data/dist/ice/cpp/include/generated/Glacier2/Session.h +5894 -0
  42. data/dist/ice/cpp/include/generated/Ice/BuiltinSequences.h +170 -0
  43. data/dist/ice/cpp/include/generated/Ice/Communicator.h +1162 -0
  44. data/dist/ice/cpp/include/generated/Ice/CommunicatorF.h +101 -0
  45. data/dist/ice/cpp/include/generated/Ice/Connection.h +1703 -0
  46. data/dist/ice/cpp/include/generated/Ice/ConnectionF.h +119 -0
  47. data/dist/ice/cpp/include/generated/Ice/Current.h +322 -0
  48. data/dist/ice/cpp/include/generated/Ice/Endpoint.h +979 -0
  49. data/dist/ice/cpp/include/generated/Ice/EndpointF.h +166 -0
  50. data/dist/ice/cpp/include/generated/Ice/EndpointTypes.h +118 -0
  51. data/dist/ice/cpp/include/generated/Ice/FacetMap.h +80 -0
  52. data/dist/ice/cpp/include/generated/Ice/Identity.h +264 -0
  53. data/dist/ice/cpp/include/generated/Ice/ImplicitContext.h +284 -0
  54. data/dist/ice/cpp/include/generated/Ice/ImplicitContextF.h +101 -0
  55. data/dist/ice/cpp/include/generated/Ice/Instrumentation.h +1203 -0
  56. data/dist/ice/cpp/include/generated/Ice/InstrumentationF.h +128 -0
  57. data/dist/ice/cpp/include/generated/Ice/LocalException.h +7437 -0
  58. data/dist/ice/cpp/include/generated/Ice/Locator.h +3898 -0
  59. data/dist/ice/cpp/include/generated/Ice/LocatorF.h +147 -0
  60. data/dist/ice/cpp/include/generated/Ice/Logger.h +237 -0
  61. data/dist/ice/cpp/include/generated/Ice/LoggerF.h +101 -0
  62. data/dist/ice/cpp/include/generated/Ice/Metrics.h +4769 -0
  63. data/dist/ice/cpp/include/generated/Ice/ObjectAdapter.h +1181 -0
  64. data/dist/ice/cpp/include/generated/Ice/ObjectAdapterF.h +101 -0
  65. data/dist/ice/cpp/include/generated/Ice/ObjectFactory.h +203 -0
  66. data/dist/ice/cpp/include/generated/Ice/Plugin.h +318 -0
  67. data/dist/ice/cpp/include/generated/Ice/PluginF.h +110 -0
  68. data/dist/ice/cpp/include/generated/Ice/Process.h +977 -0
  69. data/dist/ice/cpp/include/generated/Ice/ProcessF.h +125 -0
  70. data/dist/ice/cpp/include/generated/Ice/Properties.h +452 -0
  71. data/dist/ice/cpp/include/generated/Ice/PropertiesAdmin.h +1366 -0
  72. data/dist/ice/cpp/include/generated/Ice/PropertiesF.h +134 -0
  73. data/dist/ice/cpp/include/generated/Ice/RemoteLogger.h +2707 -0
  74. data/dist/ice/cpp/include/generated/Ice/Router.h +1850 -0
  75. data/dist/ice/cpp/include/generated/Ice/RouterF.h +125 -0
  76. data/dist/ice/cpp/include/generated/Ice/ServantLocator.h +305 -0
  77. data/dist/ice/cpp/include/generated/Ice/ServantLocatorF.h +101 -0
  78. data/dist/ice/cpp/include/generated/Ice/SliceChecksumDict.h +84 -0
  79. data/dist/ice/cpp/include/generated/Ice/ValueFactory.h +330 -0
  80. data/dist/ice/cpp/include/generated/Ice/Version.h +357 -0
  81. data/dist/ice/cpp/include/generated/IceBox/IceBox.h +3269 -0
  82. data/dist/ice/cpp/include/generated/IceGrid/Admin.h +33773 -0
  83. data/dist/ice/cpp/include/generated/IceGrid/Descriptor.h +5254 -0
  84. data/dist/ice/cpp/include/generated/IceGrid/Exception.h +2834 -0
  85. data/dist/ice/cpp/include/generated/IceGrid/FileParser.h +824 -0
  86. data/dist/ice/cpp/include/generated/IceGrid/PluginFacade.h +635 -0
  87. data/dist/ice/cpp/include/generated/IceGrid/Registry.h +5089 -0
  88. data/dist/ice/cpp/include/generated/IceGrid/Session.h +2240 -0
  89. data/dist/ice/cpp/include/generated/IceGrid/UserAccountMapper.h +800 -0
  90. data/dist/ice/cpp/include/generated/IcePatch2/FileInfo.h +325 -0
  91. data/dist/ice/cpp/include/generated/IcePatch2/FileServer.h +2891 -0
  92. data/dist/ice/cpp/include/generated/IceSSL/ConnectionInfo.h +228 -0
  93. data/dist/ice/cpp/include/generated/IceSSL/ConnectionInfoF.h +101 -0
  94. data/dist/ice/cpp/include/generated/IceSSL/EndpointInfo.h +186 -0
  95. data/dist/ice/cpp/include/generated/IceStorm/IceStorm.h +6627 -0
  96. data/dist/ice/cpp/include/generated/IceStorm/Metrics.h +665 -0
  97. data/dist/ice/cpp/src/Ice/Acceptor.h +37 -0
  98. data/dist/ice/cpp/src/Ice/Application.cpp +661 -0
  99. data/dist/ice/cpp/src/Ice/ConnectionFactory.cpp +1972 -0
  100. data/dist/ice/cpp/src/Ice/ConnectionFactory.h +264 -0
  101. data/dist/ice/cpp/src/Ice/ConnectionI.cpp +3670 -0
  102. data/dist/ice/cpp/src/Ice/ConnectionI.h +389 -0
  103. data/dist/ice/cpp/src/Ice/CountDownLatch.cpp +171 -0
  104. data/dist/ice/cpp/src/Ice/DLLMain.cpp +50 -0
  105. data/dist/ice/cpp/src/Ice/DefaultsAndOverrides.cpp +159 -0
  106. data/dist/ice/cpp/src/Ice/DynamicLibrary.cpp +284 -0
  107. data/dist/ice/cpp/src/Ice/EndpointFactory.cpp +189 -0
  108. data/dist/ice/cpp/src/Ice/EndpointI.cpp +98 -0
  109. data/dist/ice/cpp/src/Ice/EventHandler.cpp +32 -0
  110. data/dist/ice/cpp/src/Ice/EventHandler.h +81 -0
  111. data/dist/ice/cpp/src/Ice/Exception.cpp +818 -0
  112. data/dist/ice/cpp/src/Ice/IPEndpointI.cpp +710 -0
  113. data/dist/ice/cpp/src/Ice/IPEndpointI.h +152 -0
  114. data/dist/ice/cpp/src/Ice/InputStream.cpp +2741 -0
  115. data/dist/ice/cpp/src/Ice/Instance.cpp +1967 -0
  116. data/dist/ice/cpp/src/Ice/LoggerI.cpp +259 -0
  117. data/dist/ice/cpp/src/Ice/MetricsAdminI.cpp +694 -0
  118. data/dist/ice/cpp/src/Ice/Network.cpp +2249 -0
  119. data/dist/ice/cpp/src/Ice/Network.h +289 -0
  120. data/dist/ice/cpp/src/Ice/NetworkF.h +19 -0
  121. data/dist/ice/cpp/src/Ice/NetworkProxy.cpp +311 -0
  122. data/dist/ice/cpp/src/Ice/ObjectAdapterI.cpp +1530 -0
  123. data/dist/ice/cpp/src/Ice/OutgoingAsync.cpp +1322 -0
  124. data/dist/ice/cpp/src/Ice/PluginManagerI.cpp +503 -0
  125. data/dist/ice/cpp/src/Ice/PropertiesI.cpp +739 -0
  126. data/dist/ice/cpp/src/Ice/PropertyNames.cpp +1428 -0
  127. data/dist/ice/cpp/src/Ice/PropertyNames.h +78 -0
  128. data/dist/ice/cpp/src/Ice/Proxy.cpp +1604 -0
  129. data/dist/ice/cpp/src/Ice/SHA1.cpp +169 -0
  130. data/dist/ice/cpp/src/Ice/Selector.cpp +1535 -0
  131. data/dist/ice/cpp/src/Ice/Selector.h +292 -0
  132. data/dist/ice/cpp/src/Ice/Service.cpp +1883 -0
  133. data/dist/ice/cpp/src/Ice/StreamSocket.cpp +519 -0
  134. data/dist/ice/cpp/src/Ice/StreamSocket.h +85 -0
  135. data/dist/ice/cpp/src/Ice/TcpAcceptor.cpp +234 -0
  136. data/dist/ice/cpp/src/Ice/TcpAcceptor.h +61 -0
  137. data/dist/ice/cpp/src/Ice/TcpTransceiver.cpp +135 -0
  138. data/dist/ice/cpp/src/Ice/TcpTransceiver.h +58 -0
  139. data/dist/ice/cpp/src/Ice/Thread.cpp +569 -0
  140. data/dist/ice/cpp/src/Ice/ThreadPool.cpp +1292 -0
  141. data/dist/ice/cpp/src/Ice/ThreadPool.h +393 -0
  142. data/dist/ice/cpp/src/Ice/Transceiver.h +49 -0
  143. data/dist/ice/cpp/src/Ice/UdpConnector.cpp +131 -0
  144. data/dist/ice/cpp/src/Ice/UdpTransceiver.cpp +806 -0
  145. data/dist/ice/cpp/src/Ice/UdpTransceiver.h +96 -0
  146. data/dist/ice/cpp/src/Ice/WSAcceptor.cpp +92 -0
  147. data/dist/ice/cpp/src/Ice/WSAcceptor.h +52 -0
  148. data/dist/ice/cpp/src/Ice/WSTransceiver.cpp +1704 -0
  149. data/dist/ice/cpp/src/Ice/WSTransceiver.h +141 -0
  150. data/dist/ice/cpp/src/Ice/generated/BuiltinSequences.cpp +49 -0
  151. data/dist/ice/cpp/src/Ice/generated/Communicator.cpp +79 -0
  152. data/dist/ice/cpp/src/Ice/generated/CommunicatorF.cpp +61 -0
  153. data/dist/ice/cpp/src/Ice/generated/Connection.cpp +155 -0
  154. data/dist/ice/cpp/src/Ice/generated/ConnectionF.cpp +61 -0
  155. data/dist/ice/cpp/src/Ice/generated/Current.cpp +62 -0
  156. data/dist/ice/cpp/src/Ice/generated/Endpoint.cpp +147 -0
  157. data/dist/ice/cpp/src/Ice/generated/EndpointF.cpp +61 -0
  158. data/dist/ice/cpp/src/Ice/generated/EndpointTypes.cpp +51 -0
  159. data/dist/ice/cpp/src/Ice/generated/FacetMap.cpp +49 -0
  160. data/dist/ice/cpp/src/Ice/generated/Identity.cpp +57 -0
  161. data/dist/ice/cpp/src/Ice/generated/ImplicitContext.cpp +75 -0
  162. data/dist/ice/cpp/src/Ice/generated/ImplicitContextF.cpp +61 -0
  163. data/dist/ice/cpp/src/Ice/generated/Instrumentation.cpp +188 -0
  164. data/dist/ice/cpp/src/Ice/generated/InstrumentationF.cpp +66 -0
  165. data/dist/ice/cpp/src/Ice/generated/LocalException.cpp +3262 -0
  166. data/dist/ice/cpp/src/Ice/generated/Locator.cpp +2042 -0
  167. data/dist/ice/cpp/src/Ice/generated/LocatorF.cpp +63 -0
  168. data/dist/ice/cpp/src/Ice/generated/Logger.cpp +73 -0
  169. data/dist/ice/cpp/src/Ice/generated/LoggerF.cpp +61 -0
  170. data/dist/ice/cpp/src/Ice/generated/Metrics.cpp +2352 -0
  171. data/dist/ice/cpp/src/Ice/generated/ObjectAdapter.cpp +79 -0
  172. data/dist/ice/cpp/src/Ice/generated/ObjectAdapterF.cpp +61 -0
  173. data/dist/ice/cpp/src/Ice/generated/ObjectFactory.cpp +75 -0
  174. data/dist/ice/cpp/src/Ice/generated/Plugin.cpp +87 -0
  175. data/dist/ice/cpp/src/Ice/generated/PluginF.cpp +61 -0
  176. data/dist/ice/cpp/src/Ice/generated/Process.cpp +471 -0
  177. data/dist/ice/cpp/src/Ice/generated/ProcessF.cpp +63 -0
  178. data/dist/ice/cpp/src/Ice/generated/Properties.cpp +78 -0
  179. data/dist/ice/cpp/src/Ice/generated/PropertiesAdmin.cpp +603 -0
  180. data/dist/ice/cpp/src/Ice/generated/PropertiesF.cpp +63 -0
  181. data/dist/ice/cpp/src/Ice/generated/RemoteLogger.cpp +1171 -0
  182. data/dist/ice/cpp/src/Ice/generated/Router.cpp +977 -0
  183. data/dist/ice/cpp/src/Ice/generated/RouterF.cpp +63 -0
  184. data/dist/ice/cpp/src/Ice/generated/ServantLocator.cpp +75 -0
  185. data/dist/ice/cpp/src/Ice/generated/ServantLocatorF.cpp +61 -0
  186. data/dist/ice/cpp/src/Ice/generated/SliceChecksumDict.cpp +49 -0
  187. data/dist/ice/cpp/src/Ice/generated/ValueFactory.cpp +83 -0
  188. data/dist/ice/cpp/src/Ice/generated/Version.cpp +57 -0
  189. data/dist/ice/cpp/src/Ice/ios/StreamAcceptor.cpp +154 -0
  190. data/dist/ice/cpp/src/Ice/ios/StreamAcceptor.h +49 -0
  191. data/dist/ice/cpp/src/Ice/ios/StreamConnector.cpp +146 -0
  192. data/dist/ice/cpp/src/Ice/ios/StreamConnector.h +52 -0
  193. data/dist/ice/cpp/src/Ice/ios/StreamEndpointI.cpp +477 -0
  194. data/dist/ice/cpp/src/Ice/ios/StreamEndpointI.h +156 -0
  195. data/dist/ice/cpp/src/Ice/ios/StreamTransceiver.cpp +570 -0
  196. data/dist/ice/cpp/src/Ice/ios/StreamTransceiver.h +93 -0
  197. data/dist/ice/cpp/src/IceDiscovery/generated/IceDiscovery/IceDiscovery.h +1889 -0
  198. data/dist/ice/cpp/src/IceDiscovery/generated/IceDiscovery.cpp +915 -0
  199. data/dist/ice/cpp/src/IceLocatorDiscovery/generated/IceLocatorDiscovery/IceLocatorDiscovery.h +1197 -0
  200. data/dist/ice/cpp/src/IceLocatorDiscovery/generated/IceLocatorDiscovery.cpp +730 -0
  201. data/dist/ice/cpp/src/IceSSL/AcceptorI.cpp +105 -0
  202. data/dist/ice/cpp/src/IceSSL/AcceptorI.h +52 -0
  203. data/dist/ice/cpp/src/IceSSL/OpenSSLTransceiverI.cpp +1092 -0
  204. data/dist/ice/cpp/src/IceSSL/PluginI.cpp +246 -0
  205. data/dist/ice/cpp/src/IceSSL/SecureTransportTransceiverI.cpp +719 -0
  206. data/dist/ice/cpp/src/IceSSL/SecureTransportUtil.cpp +868 -0
  207. data/dist/ice/cpp/src/IceSSL/Util.cpp +192 -0
  208. data/dist/ice/cpp/src/IceSSL/generated/ConnectionInfo.cpp +75 -0
  209. data/dist/ice/cpp/src/IceSSL/generated/ConnectionInfoF.cpp +61 -0
  210. data/dist/ice/cpp/src/IceSSL/generated/EndpointInfo.cpp +75 -0
  211. data/dist/ice/cpp/src/IceUtil/ConsoleUtil.cpp +157 -0
  212. data/dist/ice/cpp/src/IceUtil/FileUtil.cpp +471 -0
  213. data/dist/ice/cpp/src/IceUtil/RecMutex.cpp +238 -0
  214. data/dist/ice/cpp/src/IceUtil/StringConverter.cpp +690 -0
  215. data/dist/ice/cpp/src/IceUtil/StringUtil.cpp +1135 -0
  216. data/dist/ice/cpp/src/IceUtil/UUID.cpp +165 -0
  217. data/dist/ice/cpp/src/IceUtil/UtilException.cpp +839 -0
  218. data/dist/ice/cpp/src/Slice/JavaUtil.cpp +5183 -0
  219. data/dist/ice/cpp/src/Slice/JavaUtil.h +407 -0
  220. data/dist/ice/cpp/src/slice2rb/Main.cpp +35 -0
  221. data/dist/ice/mcpp/directive.c +1407 -0
  222. data/dist/ice/mcpp/internal.H +530 -0
  223. data/dist/ice/mcpp/mcpp_main.c +792 -0
  224. data/dist/ice/mcpp/support.c +1985 -0
  225. data/dist/ice/mcpp/system.c +2741 -0
  226. data/dist/ice/slice/Ice/Connection.ice +516 -0
  227. data/dist/ice/slice/Ice/Current.ice +170 -0
  228. data/dist/ice/slice/Ice/Locator.ice +239 -0
  229. data/dist/ice/slice/Ice/Metrics.ice +436 -0
  230. data/dist/ice/slice/Ice/ObjectAdapter.ice +710 -0
  231. data/dist/ice/slice/Ice/Properties.ice +244 -0
  232. data/dist/ice/slice/Ice/Router.ice +103 -0
  233. data/dist/ice/slice/IceGrid/PluginFacade.ice +329 -0
  234. data/dist/ice/slice/IceStorm/IceStorm.ice +414 -0
  235. data/dist/lib/Glacier2/Metrics.rb +56 -0
  236. data/dist/lib/Glacier2/PermissionsVerifier.rb +93 -0
  237. data/dist/lib/Glacier2/PermissionsVerifierF.rb +30 -0
  238. data/dist/lib/Glacier2/Router.rb +95 -0
  239. data/dist/lib/Glacier2/RouterF.rb +25 -0
  240. data/dist/lib/Glacier2/SSLInfo.rb +72 -0
  241. data/dist/lib/Glacier2/Session.rb +247 -0
  242. data/dist/lib/Ice/BuiltinSequences.rb +60 -0
  243. data/dist/lib/Ice/Communicator.rb +87 -0
  244. data/dist/lib/Ice/CommunicatorF.rb +24 -0
  245. data/dist/lib/Ice/Connection.rb +413 -0
  246. data/dist/lib/Ice/ConnectionF.rb +32 -0
  247. data/dist/lib/Ice/Current.rb +141 -0
  248. data/dist/lib/Ice/Endpoint.rb +187 -0
  249. data/dist/lib/Ice/EndpointF.rb +48 -0
  250. data/dist/lib/Ice/EndpointTypes.rb +69 -0
  251. data/dist/lib/Ice/FacetMap.rb +24 -0
  252. data/dist/lib/Ice/Identity.rb +63 -0
  253. data/dist/lib/Ice/ImplicitContext.rb +26 -0
  254. data/dist/lib/Ice/ImplicitContextF.rb +24 -0
  255. data/dist/lib/Ice/Instrumentation.rb +169 -0
  256. data/dist/lib/Ice/InstrumentationF.rb +31 -0
  257. data/dist/lib/Ice/LocalException.rb +1031 -0
  258. data/dist/lib/Ice/Locator.rb +196 -0
  259. data/dist/lib/Ice/LocatorF.rb +30 -0
  260. data/dist/lib/Ice/Logger.rb +24 -0
  261. data/dist/lib/Ice/LoggerF.rb +24 -0
  262. data/dist/lib/Ice/Metrics.rb +337 -0
  263. data/dist/lib/Ice/ObjectAdapter.rb +29 -0
  264. data/dist/lib/Ice/ObjectAdapterF.rb +24 -0
  265. data/dist/lib/Ice/ObjectFactory.rb +24 -0
  266. data/dist/lib/Ice/Plugin.rb +30 -0
  267. data/dist/lib/Ice/PluginF.rb +28 -0
  268. data/dist/lib/Ice/Process.rb +53 -0
  269. data/dist/lib/Ice/ProcessF.rb +25 -0
  270. data/dist/lib/Ice/Properties.rb +25 -0
  271. data/dist/lib/Ice/PropertiesAdmin.rb +63 -0
  272. data/dist/lib/Ice/PropertiesF.rb +29 -0
  273. data/dist/lib/Ice/RemoteLogger.rb +207 -0
  274. data/dist/lib/Ice/Router.rb +87 -0
  275. data/dist/lib/Ice/RouterF.rb +25 -0
  276. data/dist/lib/Ice/ServantLocator.rb +26 -0
  277. data/dist/lib/Ice/ServantLocatorF.rb +24 -0
  278. data/dist/lib/Ice/SliceChecksumDict.rb +24 -0
  279. data/dist/lib/Ice/ValueFactory.rb +28 -0
  280. data/dist/lib/Ice/Version.rb +90 -0
  281. data/dist/lib/IceBox/IceBox.rb +164 -0
  282. data/dist/lib/IceGrid/Admin.rb +1196 -0
  283. data/dist/lib/IceGrid/Descriptor.rb +1034 -0
  284. data/dist/lib/IceGrid/Exception.rb +376 -0
  285. data/dist/lib/IceGrid/FileParser.rb +65 -0
  286. data/dist/lib/IceGrid/PluginFacade.rb +35 -0
  287. data/dist/lib/IceGrid/Registry.rb +209 -0
  288. data/dist/lib/IceGrid/Session.rb +71 -0
  289. data/dist/lib/IceGrid/UserAccountMapper.rb +61 -0
  290. data/dist/lib/IcePatch2/FileInfo.rb +115 -0
  291. data/dist/lib/IcePatch2/FileServer.rb +123 -0
  292. data/dist/lib/IceStorm/IceStorm.rb +332 -0
  293. data/dist/lib/IceStorm/Metrics.rb +73 -0
  294. data/extconf.rb +91 -0
  295. data/ice.gemspec +21 -16
  296. metadata +715 -711
  297. data/ICE_LICENSE +0 -48
  298. data/LICENSE +0 -340
  299. data/MCPP_LICENSE +0 -29
  300. data/ext/Connection.cpp +0 -532
  301. data/ext/Endpoint.cpp +0 -340
  302. data/ext/ImplicitContext.cpp +0 -144
  303. data/ext/Logger.cpp +0 -147
  304. data/ext/Operation.cpp +0 -661
  305. data/ext/Properties.cpp +0 -365
  306. data/ext/Types.cpp +0 -3325
  307. data/ext/Types.h +0 -595
  308. data/ext/ValueFactoryManager.cpp +0 -441
  309. data/ext/extconf.rb +0 -97
  310. data/ext/ice/cpp/include/Ice/Config.h +0 -78
  311. data/ext/ice/cpp/include/Ice/ConsoleUtil.h +0 -23
  312. data/ext/ice/cpp/include/Ice/ExceptionHelpers.h +0 -74
  313. data/ext/ice/cpp/include/Ice/Ice.h +0 -55
  314. data/ext/ice/cpp/include/Ice/Initialize.h +0 -957
  315. data/ext/ice/cpp/include/Ice/MetricsObserverI.h +0 -669
  316. data/ext/ice/cpp/include/Ice/OutgoingAsync.h +0 -856
  317. data/ext/ice/cpp/include/Ice/Proxy.h +0 -5154
  318. data/ext/ice/cpp/include/Ice/SHA1.h +0 -42
  319. data/ext/ice/cpp/include/Ice/UserExceptionFactory.h +0 -88
  320. data/ext/ice/cpp/include/IceSSL/IceSSL.h +0 -28
  321. data/ext/ice/cpp/include/IceSSL/UWP.h +0 -62
  322. data/ext/ice/cpp/include/IceUtil/Cond.h +0 -317
  323. data/ext/ice/cpp/include/IceUtil/Config.h +0 -424
  324. data/ext/ice/cpp/include/IceUtil/ConsoleUtil.h +0 -92
  325. data/ext/ice/cpp/include/IceUtil/CtrlCHandler.h +0 -92
  326. data/ext/ice/cpp/include/IceUtil/FileUtil.h +0 -143
  327. data/ext/ice/cpp/include/IceUtil/IceUtil.h +0 -40
  328. data/ext/ice/cpp/include/IceUtil/InputUtil.h +0 -42
  329. data/ext/ice/cpp/include/IceUtil/Mutex.h +0 -353
  330. data/ext/ice/cpp/include/IceUtil/ResourceConfig.h +0 -53
  331. data/ext/ice/cpp/include/IceUtil/Thread.h +0 -174
  332. data/ext/ice/cpp/include/IceUtil/Timer.h +0 -143
  333. data/ext/ice/cpp/include/generated/Ice/BuiltinSequences.h +0 -170
  334. data/ext/ice/cpp/include/generated/Ice/Communicator.h +0 -1162
  335. data/ext/ice/cpp/include/generated/Ice/CommunicatorF.h +0 -101
  336. data/ext/ice/cpp/include/generated/Ice/Connection.h +0 -1703
  337. data/ext/ice/cpp/include/generated/Ice/ConnectionF.h +0 -119
  338. data/ext/ice/cpp/include/generated/Ice/Current.h +0 -322
  339. data/ext/ice/cpp/include/generated/Ice/Endpoint.h +0 -979
  340. data/ext/ice/cpp/include/generated/Ice/EndpointF.h +0 -166
  341. data/ext/ice/cpp/include/generated/Ice/EndpointTypes.h +0 -118
  342. data/ext/ice/cpp/include/generated/Ice/FacetMap.h +0 -80
  343. data/ext/ice/cpp/include/generated/Ice/Identity.h +0 -264
  344. data/ext/ice/cpp/include/generated/Ice/ImplicitContext.h +0 -284
  345. data/ext/ice/cpp/include/generated/Ice/ImplicitContextF.h +0 -101
  346. data/ext/ice/cpp/include/generated/Ice/Instrumentation.h +0 -1203
  347. data/ext/ice/cpp/include/generated/Ice/InstrumentationF.h +0 -128
  348. data/ext/ice/cpp/include/generated/Ice/LocalException.h +0 -7437
  349. data/ext/ice/cpp/include/generated/Ice/Locator.h +0 -3898
  350. data/ext/ice/cpp/include/generated/Ice/LocatorF.h +0 -147
  351. data/ext/ice/cpp/include/generated/Ice/Logger.h +0 -237
  352. data/ext/ice/cpp/include/generated/Ice/LoggerF.h +0 -101
  353. data/ext/ice/cpp/include/generated/Ice/Metrics.h +0 -4769
  354. data/ext/ice/cpp/include/generated/Ice/ObjectAdapter.h +0 -1181
  355. data/ext/ice/cpp/include/generated/Ice/ObjectAdapterF.h +0 -101
  356. data/ext/ice/cpp/include/generated/Ice/ObjectFactory.h +0 -203
  357. data/ext/ice/cpp/include/generated/Ice/Plugin.h +0 -318
  358. data/ext/ice/cpp/include/generated/Ice/PluginF.h +0 -110
  359. data/ext/ice/cpp/include/generated/Ice/Process.h +0 -977
  360. data/ext/ice/cpp/include/generated/Ice/ProcessF.h +0 -125
  361. data/ext/ice/cpp/include/generated/Ice/Properties.h +0 -452
  362. data/ext/ice/cpp/include/generated/Ice/PropertiesAdmin.h +0 -1366
  363. data/ext/ice/cpp/include/generated/Ice/PropertiesF.h +0 -134
  364. data/ext/ice/cpp/include/generated/Ice/RemoteLogger.h +0 -2707
  365. data/ext/ice/cpp/include/generated/Ice/Router.h +0 -1850
  366. data/ext/ice/cpp/include/generated/Ice/RouterF.h +0 -125
  367. data/ext/ice/cpp/include/generated/Ice/ServantLocator.h +0 -305
  368. data/ext/ice/cpp/include/generated/Ice/ServantLocatorF.h +0 -101
  369. data/ext/ice/cpp/include/generated/Ice/SliceChecksumDict.h +0 -84
  370. data/ext/ice/cpp/include/generated/Ice/ValueFactory.h +0 -330
  371. data/ext/ice/cpp/include/generated/Ice/Version.h +0 -357
  372. data/ext/ice/cpp/include/generated/IceSSL/ConnectionInfo.h +0 -228
  373. data/ext/ice/cpp/include/generated/IceSSL/ConnectionInfoF.h +0 -101
  374. data/ext/ice/cpp/include/generated/IceSSL/EndpointInfo.h +0 -186
  375. data/ext/ice/cpp/src/Ice/Acceptor.h +0 -37
  376. data/ext/ice/cpp/src/Ice/BuiltinSequences.cpp +0 -49
  377. data/ext/ice/cpp/src/Ice/Communicator.cpp +0 -79
  378. data/ext/ice/cpp/src/Ice/CommunicatorF.cpp +0 -61
  379. data/ext/ice/cpp/src/Ice/Connection.cpp +0 -155
  380. data/ext/ice/cpp/src/Ice/ConnectionF.cpp +0 -61
  381. data/ext/ice/cpp/src/Ice/ConnectionFactory.cpp +0 -1972
  382. data/ext/ice/cpp/src/Ice/ConnectionFactory.h +0 -264
  383. data/ext/ice/cpp/src/Ice/ConnectionI.cpp +0 -3670
  384. data/ext/ice/cpp/src/Ice/ConnectionI.h +0 -391
  385. data/ext/ice/cpp/src/Ice/CountDownLatch.cpp +0 -179
  386. data/ext/ice/cpp/src/Ice/Current.cpp +0 -62
  387. data/ext/ice/cpp/src/Ice/DefaultsAndOverrides.cpp +0 -161
  388. data/ext/ice/cpp/src/Ice/DynamicLibrary.cpp +0 -291
  389. data/ext/ice/cpp/src/Ice/Endpoint.cpp +0 -147
  390. data/ext/ice/cpp/src/Ice/EndpointF.cpp +0 -61
  391. data/ext/ice/cpp/src/Ice/EndpointFactory.cpp +0 -189
  392. data/ext/ice/cpp/src/Ice/EndpointI.cpp +0 -98
  393. data/ext/ice/cpp/src/Ice/EndpointTypes.cpp +0 -51
  394. data/ext/ice/cpp/src/Ice/EventHandler.cpp +0 -32
  395. data/ext/ice/cpp/src/Ice/EventHandler.h +0 -81
  396. data/ext/ice/cpp/src/Ice/Exception.cpp +0 -845
  397. data/ext/ice/cpp/src/Ice/FacetMap.cpp +0 -49
  398. data/ext/ice/cpp/src/Ice/IPEndpointI.cpp +0 -756
  399. data/ext/ice/cpp/src/Ice/IPEndpointI.h +0 -162
  400. data/ext/ice/cpp/src/Ice/Identity.cpp +0 -57
  401. data/ext/ice/cpp/src/Ice/ImplicitContext.cpp +0 -75
  402. data/ext/ice/cpp/src/Ice/ImplicitContextF.cpp +0 -61
  403. data/ext/ice/cpp/src/Ice/InputStream.cpp +0 -2741
  404. data/ext/ice/cpp/src/Ice/Instance.cpp +0 -1971
  405. data/ext/ice/cpp/src/Ice/Instrumentation.cpp +0 -188
  406. data/ext/ice/cpp/src/Ice/InstrumentationF.cpp +0 -66
  407. data/ext/ice/cpp/src/Ice/LocalException.cpp +0 -3262
  408. data/ext/ice/cpp/src/Ice/Locator.cpp +0 -2042
  409. data/ext/ice/cpp/src/Ice/LocatorF.cpp +0 -63
  410. data/ext/ice/cpp/src/Ice/Logger.cpp +0 -73
  411. data/ext/ice/cpp/src/Ice/LoggerF.cpp +0 -61
  412. data/ext/ice/cpp/src/Ice/LoggerI.cpp +0 -261
  413. data/ext/ice/cpp/src/Ice/Metrics.cpp +0 -2352
  414. data/ext/ice/cpp/src/Ice/MetricsAdminI.cpp +0 -694
  415. data/ext/ice/cpp/src/Ice/Network.cpp +0 -3075
  416. data/ext/ice/cpp/src/Ice/Network.h +0 -371
  417. data/ext/ice/cpp/src/Ice/NetworkF.h +0 -23
  418. data/ext/ice/cpp/src/Ice/NetworkProxy.cpp +0 -324
  419. data/ext/ice/cpp/src/Ice/ObjectAdapter.cpp +0 -79
  420. data/ext/ice/cpp/src/Ice/ObjectAdapterF.cpp +0 -61
  421. data/ext/ice/cpp/src/Ice/ObjectAdapterI.cpp +0 -1530
  422. data/ext/ice/cpp/src/Ice/ObjectFactory.cpp +0 -75
  423. data/ext/ice/cpp/src/Ice/OutgoingAsync.cpp +0 -1322
  424. data/ext/ice/cpp/src/Ice/Plugin.cpp +0 -87
  425. data/ext/ice/cpp/src/Ice/PluginF.cpp +0 -61
  426. data/ext/ice/cpp/src/Ice/PluginManagerI.cpp +0 -503
  427. data/ext/ice/cpp/src/Ice/Process.cpp +0 -471
  428. data/ext/ice/cpp/src/Ice/ProcessF.cpp +0 -63
  429. data/ext/ice/cpp/src/Ice/Properties.cpp +0 -78
  430. data/ext/ice/cpp/src/Ice/PropertiesAdmin.cpp +0 -603
  431. data/ext/ice/cpp/src/Ice/PropertiesF.cpp +0 -63
  432. data/ext/ice/cpp/src/Ice/PropertiesI.cpp +0 -747
  433. data/ext/ice/cpp/src/Ice/PropertyNames.cpp +0 -1429
  434. data/ext/ice/cpp/src/Ice/PropertyNames.h +0 -78
  435. data/ext/ice/cpp/src/Ice/Proxy.cpp +0 -1601
  436. data/ext/ice/cpp/src/Ice/RemoteLogger.cpp +0 -1171
  437. data/ext/ice/cpp/src/Ice/Router.cpp +0 -977
  438. data/ext/ice/cpp/src/Ice/RouterF.cpp +0 -63
  439. data/ext/ice/cpp/src/Ice/SHA1.cpp +0 -185
  440. data/ext/ice/cpp/src/Ice/Selector.cpp +0 -1537
  441. data/ext/ice/cpp/src/Ice/Selector.h +0 -308
  442. data/ext/ice/cpp/src/Ice/ServantLocator.cpp +0 -75
  443. data/ext/ice/cpp/src/Ice/ServantLocatorF.cpp +0 -61
  444. data/ext/ice/cpp/src/Ice/SliceChecksumDict.cpp +0 -49
  445. data/ext/ice/cpp/src/Ice/StreamSocket.cpp +0 -682
  446. data/ext/ice/cpp/src/Ice/StreamSocket.h +0 -92
  447. data/ext/ice/cpp/src/Ice/TcpAcceptor.cpp +0 -355
  448. data/ext/ice/cpp/src/Ice/TcpAcceptor.h +0 -69
  449. data/ext/ice/cpp/src/Ice/TcpTransceiver.cpp +0 -135
  450. data/ext/ice/cpp/src/Ice/TcpTransceiver.h +0 -58
  451. data/ext/ice/cpp/src/Ice/Thread.cpp +0 -811
  452. data/ext/ice/cpp/src/Ice/ThreadPool.cpp +0 -1328
  453. data/ext/ice/cpp/src/Ice/ThreadPool.h +0 -393
  454. data/ext/ice/cpp/src/Ice/Transceiver.h +0 -49
  455. data/ext/ice/cpp/src/Ice/UdpConnector.cpp +0 -136
  456. data/ext/ice/cpp/src/Ice/UdpTransceiver.cpp +0 -1153
  457. data/ext/ice/cpp/src/Ice/UdpTransceiver.h +0 -117
  458. data/ext/ice/cpp/src/Ice/ValueFactory.cpp +0 -83
  459. data/ext/ice/cpp/src/Ice/Version.cpp +0 -57
  460. data/ext/ice/cpp/src/Ice/WSAcceptor.cpp +0 -92
  461. data/ext/ice/cpp/src/Ice/WSAcceptor.h +0 -52
  462. data/ext/ice/cpp/src/Ice/WSTransceiver.cpp +0 -1747
  463. data/ext/ice/cpp/src/Ice/WSTransceiver.h +0 -141
  464. data/ext/ice/cpp/src/IceDiscovery/IceDiscovery.cpp +0 -915
  465. data/ext/ice/cpp/src/IceDiscovery/IceDiscovery.h +0 -1889
  466. data/ext/ice/cpp/src/IceLocatorDiscovery/IceLocatorDiscovery.cpp +0 -730
  467. data/ext/ice/cpp/src/IceLocatorDiscovery/IceLocatorDiscovery.h +0 -1197
  468. data/ext/ice/cpp/src/IceSSL/AcceptorI.cpp +0 -105
  469. data/ext/ice/cpp/src/IceSSL/AcceptorI.h +0 -52
  470. data/ext/ice/cpp/src/IceSSL/ConnectionInfo.cpp +0 -75
  471. data/ext/ice/cpp/src/IceSSL/ConnectionInfoF.cpp +0 -61
  472. data/ext/ice/cpp/src/IceSSL/EndpointInfo.cpp +0 -75
  473. data/ext/ice/cpp/src/IceSSL/OpenSSLTransceiverI.cpp +0 -1092
  474. data/ext/ice/cpp/src/IceSSL/PluginI.cpp +0 -246
  475. data/ext/ice/cpp/src/IceSSL/SecureTransportTransceiverI.cpp +0 -719
  476. data/ext/ice/cpp/src/IceSSL/SecureTransportUtil.cpp +0 -868
  477. data/ext/ice/cpp/src/IceSSL/UWPCertificateI.cpp +0 -266
  478. data/ext/ice/cpp/src/IceSSL/UWPEngine.cpp +0 -338
  479. data/ext/ice/cpp/src/IceSSL/UWPEngine.h +0 -41
  480. data/ext/ice/cpp/src/IceSSL/UWPEngineF.h +0 -26
  481. data/ext/ice/cpp/src/IceSSL/UWPPluginI.cpp +0 -89
  482. data/ext/ice/cpp/src/IceSSL/UWPTransceiverI.cpp +0 -383
  483. data/ext/ice/cpp/src/IceSSL/UWPTransceiverI.h +0 -71
  484. data/ext/ice/cpp/src/IceSSL/Util.cpp +0 -192
  485. data/ext/ice/cpp/src/IceUtil/ConsoleUtil.cpp +0 -157
  486. data/ext/ice/cpp/src/IceUtil/FileUtil.cpp +0 -484
  487. data/ext/ice/cpp/src/IceUtil/RecMutex.cpp +0 -242
  488. data/ext/ice/cpp/src/IceUtil/StringConverter.cpp +0 -690
  489. data/ext/ice/cpp/src/IceUtil/StringUtil.cpp +0 -1180
  490. data/ext/ice/cpp/src/IceUtil/UUID.cpp +0 -169
  491. data/ext/ice/cpp/src/IceUtil/UtilException.cpp +0 -839
  492. data/ext/ice/cpp/src/Slice/JavaUtil.cpp +0 -5154
  493. data/ext/ice/cpp/src/Slice/JavaUtil.h +0 -398
  494. data/ext/ice/mcpp/CMakeLists.txt +0 -80
  495. data/ext/ice/mcpp/LICENSE +0 -29
  496. data/ext/ice/mcpp/Makefile +0 -63
  497. data/ext/ice/mcpp/README.md +0 -32
  498. data/ext/ice/mcpp/directive.c +0 -1404
  499. data/ext/ice/mcpp/internal.H +0 -530
  500. data/ext/ice/mcpp/main.c +0 -792
  501. data/ext/ice/mcpp/mcpp.gyp +0 -88
  502. data/ext/ice/mcpp/support.c +0 -1985
  503. data/ext/ice/mcpp/system.c +0 -2741
  504. data/lib/Glacier2/Metrics.rb +0 -56
  505. data/lib/Glacier2/PermissionsVerifier.rb +0 -93
  506. data/lib/Glacier2/PermissionsVerifierF.rb +0 -30
  507. data/lib/Glacier2/Router.rb +0 -95
  508. data/lib/Glacier2/RouterF.rb +0 -25
  509. data/lib/Glacier2/SSLInfo.rb +0 -72
  510. data/lib/Glacier2/Session.rb +0 -247
  511. data/lib/Ice/BuiltinSequences.rb +0 -60
  512. data/lib/Ice/Communicator.rb +0 -87
  513. data/lib/Ice/CommunicatorF.rb +0 -24
  514. data/lib/Ice/Connection.rb +0 -413
  515. data/lib/Ice/ConnectionF.rb +0 -32
  516. data/lib/Ice/Current.rb +0 -141
  517. data/lib/Ice/Endpoint.rb +0 -187
  518. data/lib/Ice/EndpointF.rb +0 -48
  519. data/lib/Ice/EndpointTypes.rb +0 -69
  520. data/lib/Ice/FacetMap.rb +0 -24
  521. data/lib/Ice/Identity.rb +0 -63
  522. data/lib/Ice/ImplicitContext.rb +0 -26
  523. data/lib/Ice/ImplicitContextF.rb +0 -24
  524. data/lib/Ice/Instrumentation.rb +0 -169
  525. data/lib/Ice/InstrumentationF.rb +0 -31
  526. data/lib/Ice/LocalException.rb +0 -1031
  527. data/lib/Ice/Locator.rb +0 -196
  528. data/lib/Ice/LocatorF.rb +0 -30
  529. data/lib/Ice/Logger.rb +0 -24
  530. data/lib/Ice/LoggerF.rb +0 -24
  531. data/lib/Ice/Metrics.rb +0 -337
  532. data/lib/Ice/ObjectAdapter.rb +0 -29
  533. data/lib/Ice/ObjectAdapterF.rb +0 -24
  534. data/lib/Ice/ObjectFactory.rb +0 -24
  535. data/lib/Ice/Plugin.rb +0 -30
  536. data/lib/Ice/PluginF.rb +0 -28
  537. data/lib/Ice/Process.rb +0 -53
  538. data/lib/Ice/ProcessF.rb +0 -25
  539. data/lib/Ice/Properties.rb +0 -25
  540. data/lib/Ice/PropertiesAdmin.rb +0 -63
  541. data/lib/Ice/PropertiesF.rb +0 -29
  542. data/lib/Ice/RemoteLogger.rb +0 -207
  543. data/lib/Ice/Router.rb +0 -87
  544. data/lib/Ice/RouterF.rb +0 -25
  545. data/lib/Ice/ServantLocator.rb +0 -26
  546. data/lib/Ice/ServantLocatorF.rb +0 -24
  547. data/lib/Ice/SliceChecksumDict.rb +0 -24
  548. data/lib/Ice/ValueFactory.rb +0 -28
  549. data/lib/Ice/Version.rb +0 -90
  550. data/lib/IceBox/IceBox.rb +0 -164
  551. data/lib/IceGrid/Admin.rb +0 -1196
  552. data/lib/IceGrid/Descriptor.rb +0 -1034
  553. data/lib/IceGrid/Exception.rb +0 -376
  554. data/lib/IceGrid/FileParser.rb +0 -65
  555. data/lib/IceGrid/PluginFacade.rb +0 -35
  556. data/lib/IceGrid/Registry.rb +0 -209
  557. data/lib/IceGrid/Session.rb +0 -71
  558. data/lib/IceGrid/UserAccountMapper.rb +0 -61
  559. data/lib/IcePatch2/FileInfo.rb +0 -115
  560. data/lib/IcePatch2/FileServer.rb +0 -123
  561. data/lib/IceStorm/IceStorm.rb +0 -332
  562. data/lib/IceStorm/Metrics.rb +0 -73
  563. data/slice/Ice/Connection.ice +0 -516
  564. data/slice/Ice/Current.ice +0 -170
  565. data/slice/Ice/Locator.ice +0 -239
  566. data/slice/Ice/Metrics.ice +0 -436
  567. data/slice/Ice/ObjectAdapter.ice +0 -710
  568. data/slice/Ice/Properties.ice +0 -244
  569. data/slice/Ice/Router.ice +0 -103
  570. data/slice/IceBT/ConnectionInfo.ice +0 -59
  571. data/slice/IceBT/EndpointInfo.ice +0 -57
  572. data/slice/IceBT/Types.ice +0 -45
  573. data/slice/IceDiscovery/IceDiscovery.ice +0 -98
  574. data/slice/IceGrid/PluginFacade.ice +0 -329
  575. data/slice/IceIAP/ConnectionInfo.ice +0 -74
  576. data/slice/IceIAP/EndpointInfo.ice +0 -68
  577. data/slice/IceLocatorDiscovery/IceLocatorDiscovery.ice +0 -83
  578. data/slice/IceSSL/ConnectionInfo.ice +0 -54
  579. data/slice/IceSSL/ConnectionInfoF.ice +0 -31
  580. data/slice/IceSSL/EndpointInfo.ice +0 -45
  581. data/slice/IceStorm/IceStorm.ice +0 -414
  582. /data/{ext → dist/IceRuby}/Communicator.cpp +0 -0
  583. /data/{ext → dist/IceRuby}/Communicator.h +0 -0
  584. /data/{ext → dist/IceRuby}/Config.h +0 -0
  585. /data/{ext → dist/IceRuby}/Connection.h +0 -0
  586. /data/{ext → dist/IceRuby}/Endpoint.h +0 -0
  587. /data/{ext → dist/IceRuby}/ImplicitContext.h +0 -0
  588. /data/{ext → dist/IceRuby}/Init.cpp +0 -0
  589. /data/{ext → dist/IceRuby}/Logger.h +0 -0
  590. /data/{ext → dist/IceRuby}/Operation.h +0 -0
  591. /data/{ext → dist/IceRuby}/Properties.h +0 -0
  592. /data/{ext → dist/IceRuby}/Proxy.cpp +0 -0
  593. /data/{ext → dist/IceRuby}/Proxy.h +0 -0
  594. /data/{ext → dist/IceRuby}/Slice.cpp +0 -0
  595. /data/{ext → dist/IceRuby}/Slice.h +0 -0
  596. /data/{ext → dist/IceRuby}/Util.cpp +0 -0
  597. /data/{ext → dist/IceRuby}/Util.h +0 -0
  598. /data/{ext → dist/IceRuby}/ValueFactoryManager.h +0 -0
  599. /data/{ext → dist}/ice/cpp/include/Ice/Application.h +0 -0
  600. /data/{ext → dist}/ice/cpp/include/Ice/AsyncResult.h +0 -0
  601. /data/{ext → dist}/ice/cpp/include/Ice/AsyncResultF.h +0 -0
  602. /data/{ext → dist}/ice/cpp/include/Ice/BatchRequestInterceptor.h +0 -0
  603. /data/{ext → dist}/ice/cpp/include/Ice/BatchRequestQueueF.h +0 -0
  604. /data/{ext → dist}/ice/cpp/include/Ice/Buffer.h +0 -0
  605. /data/{ext → dist}/ice/cpp/include/Ice/CommunicatorAsync.h +0 -0
  606. /data/{ext → dist}/ice/cpp/include/Ice/Comparable.h +0 -0
  607. /data/{ext → dist}/ice/cpp/include/Ice/ConnectionAsync.h +0 -0
  608. /data/{ext → dist}/ice/cpp/include/Ice/ConnectionIF.h +0 -0
  609. /data/{ext → dist}/ice/cpp/include/Ice/DefaultValueFactory.h +0 -0
  610. /data/{ext → dist}/ice/cpp/include/Ice/DispatchInterceptor.h +0 -0
  611. /data/{ext → dist}/ice/cpp/include/Ice/Dispatcher.h +0 -0
  612. /data/{ext → dist}/ice/cpp/include/Ice/DynamicLibrary.h +0 -0
  613. /data/{ext → dist}/ice/cpp/include/Ice/DynamicLibraryF.h +0 -0
  614. /data/{ext → dist}/ice/cpp/include/Ice/Exception.h +0 -0
  615. /data/{ext → dist}/ice/cpp/include/Ice/FactoryTable.h +0 -0
  616. /data/{ext → dist}/ice/cpp/include/Ice/FactoryTableInit.h +0 -0
  617. /data/{ext → dist}/ice/cpp/include/Ice/Format.h +0 -0
  618. /data/{ext → dist}/ice/cpp/include/Ice/Functional.h +0 -0
  619. /data/{ext → dist}/ice/cpp/include/Ice/GCObject.h +0 -0
  620. /data/{ext → dist}/ice/cpp/include/Ice/Handle.h +0 -0
  621. /data/{ext → dist}/ice/cpp/include/Ice/IconvStringConverter.h +0 -0
  622. /data/{ext → dist}/ice/cpp/include/Ice/Incoming.h +0 -0
  623. /data/{ext → dist}/ice/cpp/include/Ice/IncomingAsync.h +0 -0
  624. /data/{ext → dist}/ice/cpp/include/Ice/IncomingAsyncF.h +0 -0
  625. /data/{ext → dist}/ice/cpp/include/Ice/InputStream.h +0 -0
  626. /data/{ext → dist}/ice/cpp/include/Ice/InstanceF.h +0 -0
  627. /data/{ext → dist}/ice/cpp/include/Ice/InterfaceByValue.h +0 -0
  628. /data/{ext → dist}/ice/cpp/include/Ice/LocalObject.h +0 -0
  629. /data/{ext → dist}/ice/cpp/include/Ice/LocalObjectF.h +0 -0
  630. /data/{ext → dist}/ice/cpp/include/Ice/LoggerUtil.h +0 -0
  631. /data/{ext → dist}/ice/cpp/include/Ice/MetricsAdminI.h +0 -0
  632. /data/{ext → dist}/ice/cpp/include/Ice/MetricsFunctional.h +0 -0
  633. /data/{ext → dist}/ice/cpp/include/Ice/NativePropertiesAdmin.h +0 -0
  634. /data/{ext → dist}/ice/cpp/include/Ice/Object.h +0 -0
  635. /data/{ext → dist}/ice/cpp/include/Ice/ObjectF.h +0 -0
  636. /data/{ext → dist}/ice/cpp/include/Ice/ObserverHelper.h +0 -0
  637. /data/{ext → dist}/ice/cpp/include/Ice/Optional.h +0 -0
  638. /data/{ext → dist}/ice/cpp/include/Ice/OutgoingAsyncF.h +0 -0
  639. /data/{ext → dist}/ice/cpp/include/Ice/OutputStream.h +0 -0
  640. /data/{ext → dist}/ice/cpp/include/Ice/Protocol.h +0 -0
  641. /data/{ext → dist}/ice/cpp/include/Ice/ProxyF.h +0 -0
  642. /data/{ext → dist}/ice/cpp/include/Ice/ProxyFactoryF.h +0 -0
  643. /data/{ext → dist}/ice/cpp/include/Ice/ProxyHandle.h +0 -0
  644. /data/{ext → dist}/ice/cpp/include/Ice/ReferenceF.h +0 -0
  645. /data/{ext → dist}/ice/cpp/include/Ice/RegisterPlugins.h +0 -0
  646. /data/{ext → dist}/ice/cpp/include/Ice/RequestHandlerF.h +0 -0
  647. /data/{ext → dist}/ice/cpp/include/Ice/ResponseHandlerF.h +0 -0
  648. /data/{ext → dist}/ice/cpp/include/Ice/ServantManagerF.h +0 -0
  649. /data/{ext → dist}/ice/cpp/include/Ice/Service.h +0 -0
  650. /data/{ext → dist}/ice/cpp/include/Ice/SliceChecksums.h +0 -0
  651. /data/{ext → dist}/ice/cpp/include/Ice/SlicedData.h +0 -0
  652. /data/{ext → dist}/ice/cpp/include/Ice/SlicedDataF.h +0 -0
  653. /data/{ext → dist}/ice/cpp/include/Ice/StreamHelpers.h +0 -0
  654. /data/{ext → dist}/ice/cpp/include/Ice/StringConverter.h +0 -0
  655. /data/{ext → dist}/ice/cpp/include/Ice/ThreadPoolF.h +0 -0
  656. /data/{ext → dist}/ice/cpp/include/Ice/UUID.h +0 -0
  657. /data/{ext → dist}/ice/cpp/include/Ice/UniquePtr.h +0 -0
  658. /data/{ext → dist}/ice/cpp/include/Ice/UniqueRef.h +0 -0
  659. /data/{ext → dist}/ice/cpp/include/Ice/Value.h +0 -0
  660. /data/{ext → dist}/ice/cpp/include/Ice/ValueF.h +0 -0
  661. /data/{ext → dist}/ice/cpp/include/IceSSL/Config.h +0 -0
  662. /data/{ext → dist}/ice/cpp/include/IceSSL/OpenSSL.h +0 -0
  663. /data/{ext → dist}/ice/cpp/include/IceSSL/Plugin.h +0 -0
  664. /data/{ext → dist}/ice/cpp/include/IceSSL/SChannel.h +0 -0
  665. /data/{ext → dist}/ice/cpp/include/IceSSL/SecureTransport.h +0 -0
  666. /data/{ext → dist}/ice/cpp/include/IceUtil/Atomic.h +0 -0
  667. /data/{ext → dist}/ice/cpp/include/IceUtil/CountDownLatch.h +0 -0
  668. /data/{ext → dist}/ice/cpp/include/IceUtil/DisableWarnings.h +0 -0
  669. /data/{ext → dist}/ice/cpp/include/IceUtil/Exception.h +0 -0
  670. /data/{ext → dist}/ice/cpp/include/IceUtil/Functional.h +0 -0
  671. /data/{ext → dist}/ice/cpp/include/IceUtil/Handle.h +0 -0
  672. /data/{ext → dist}/ice/cpp/include/IceUtil/Iterator.h +0 -0
  673. /data/{ext → dist}/ice/cpp/include/IceUtil/Lock.h +0 -0
  674. /data/{ext → dist}/ice/cpp/include/IceUtil/Monitor.h +0 -0
  675. /data/{ext → dist}/ice/cpp/include/IceUtil/MutexProtocol.h +0 -0
  676. /data/{ext → dist}/ice/cpp/include/IceUtil/MutexPtrLock.h +0 -0
  677. /data/{ext → dist}/ice/cpp/include/IceUtil/MutexPtrTryLock.h +0 -0
  678. /data/{ext → dist}/ice/cpp/include/IceUtil/Optional.h +0 -0
  679. /data/{ext → dist}/ice/cpp/include/IceUtil/Options.h +0 -0
  680. /data/{ext → dist}/ice/cpp/include/IceUtil/OutputUtil.h +0 -0
  681. /data/{ext → dist}/ice/cpp/include/IceUtil/PopDisableWarnings.h +0 -0
  682. /data/{ext → dist}/ice/cpp/include/IceUtil/PushDisableWarnings.h +0 -0
  683. /data/{ext → dist}/ice/cpp/include/IceUtil/Random.h +0 -0
  684. /data/{ext → dist}/ice/cpp/include/IceUtil/RecMutex.h +0 -0
  685. /data/{ext → dist}/ice/cpp/include/IceUtil/ScannerConfig.h +0 -0
  686. /data/{ext → dist}/ice/cpp/include/IceUtil/ScopedArray.h +0 -0
  687. /data/{ext → dist}/ice/cpp/include/IceUtil/Shared.h +0 -0
  688. /data/{ext → dist}/ice/cpp/include/IceUtil/StopWatch.h +0 -0
  689. /data/{ext → dist}/ice/cpp/include/IceUtil/StringConverter.h +0 -0
  690. /data/{ext → dist}/ice/cpp/include/IceUtil/StringUtil.h +0 -0
  691. /data/{ext → dist}/ice/cpp/include/IceUtil/ThreadException.h +0 -0
  692. /data/{ext → dist}/ice/cpp/include/IceUtil/Time.h +0 -0
  693. /data/{ext → dist}/ice/cpp/include/IceUtil/UUID.h +0 -0
  694. /data/{ext → dist}/ice/cpp/include/IceUtil/UndefSysMacros.h +0 -0
  695. /data/{ext → dist}/ice/cpp/src/Ice/ACM.cpp +0 -0
  696. /data/{ext → dist}/ice/cpp/src/Ice/ACM.h +0 -0
  697. /data/{ext → dist}/ice/cpp/src/Ice/ACMF.h +0 -0
  698. /data/{ext → dist}/ice/cpp/src/Ice/Acceptor.cpp +0 -0
  699. /data/{ext → dist}/ice/cpp/src/Ice/AcceptorF.h +0 -0
  700. /data/{ext → dist}/ice/cpp/src/Ice/ArgVector.cpp +0 -0
  701. /data/{ext → dist}/ice/cpp/src/Ice/ArgVector.h +0 -0
  702. /data/{ext → dist}/ice/cpp/src/Ice/AsyncResult.cpp +0 -0
  703. /data/{ext → dist}/ice/cpp/src/Ice/Base64.cpp +0 -0
  704. /data/{ext → dist}/ice/cpp/src/Ice/Base64.h +0 -0
  705. /data/{ext → dist}/ice/cpp/src/Ice/BatchRequestQueue.cpp +0 -0
  706. /data/{ext → dist}/ice/cpp/src/Ice/BatchRequestQueue.h +0 -0
  707. /data/{ext → dist}/ice/cpp/src/Ice/Buffer.cpp +0 -0
  708. /data/{ext → dist}/ice/cpp/src/Ice/CollocatedRequestHandler.cpp +0 -0
  709. /data/{ext → dist}/ice/cpp/src/Ice/CollocatedRequestHandler.h +0 -0
  710. /data/{ext → dist}/ice/cpp/src/Ice/CommunicatorI.cpp +0 -0
  711. /data/{ext → dist}/ice/cpp/src/Ice/CommunicatorI.h +0 -0
  712. /data/{ext → dist}/ice/cpp/src/Ice/Cond.cpp +0 -0
  713. /data/{ext → dist}/ice/cpp/src/Ice/ConnectRequestHandler.cpp +0 -0
  714. /data/{ext → dist}/ice/cpp/src/Ice/ConnectRequestHandler.h +0 -0
  715. /data/{ext → dist}/ice/cpp/src/Ice/ConnectRequestHandlerF.h +0 -0
  716. /data/{ext → dist}/ice/cpp/src/Ice/ConnectionFactoryF.h +0 -0
  717. /data/{ext → dist}/ice/cpp/src/Ice/ConnectionRequestHandler.cpp +0 -0
  718. /data/{ext → dist}/ice/cpp/src/Ice/ConnectionRequestHandler.h +0 -0
  719. /data/{ext → dist}/ice/cpp/src/Ice/Connector.cpp +0 -0
  720. /data/{ext → dist}/ice/cpp/src/Ice/Connector.h +0 -0
  721. /data/{ext → dist}/ice/cpp/src/Ice/ConnectorF.h +0 -0
  722. /data/{ext → dist}/ice/cpp/src/Ice/DefaultsAndOverrides.h +0 -0
  723. /data/{ext → dist}/ice/cpp/src/Ice/DefaultsAndOverridesF.h +0 -0
  724. /data/{ext → dist}/ice/cpp/src/Ice/DispatchInterceptor.cpp +0 -0
  725. /data/{ext → dist}/ice/cpp/src/Ice/EndpointFactory.h +0 -0
  726. /data/{ext → dist}/ice/cpp/src/Ice/EndpointFactoryF.h +0 -0
  727. /data/{ext → dist}/ice/cpp/src/Ice/EndpointFactoryManager.cpp +0 -0
  728. /data/{ext → dist}/ice/cpp/src/Ice/EndpointFactoryManager.h +0 -0
  729. /data/{ext → dist}/ice/cpp/src/Ice/EndpointFactoryManagerF.h +0 -0
  730. /data/{ext → dist}/ice/cpp/src/Ice/EndpointI.h +0 -0
  731. /data/{ext → dist}/ice/cpp/src/Ice/EndpointIF.h +0 -0
  732. /data/{ext → dist}/ice/cpp/src/Ice/EventHandlerF.h +0 -0
  733. /data/{ext → dist}/ice/cpp/src/Ice/FactoryTable.cpp +0 -0
  734. /data/{ext → dist}/ice/cpp/src/Ice/FactoryTableInit.cpp +0 -0
  735. /data/{ext → dist}/ice/cpp/src/Ice/GCObject.cpp +0 -0
  736. /data/{ext → dist}/ice/cpp/src/Ice/HashUtil.h +0 -0
  737. /data/{ext → dist}/ice/cpp/src/Ice/HttpParser.cpp +0 -0
  738. /data/{ext → dist}/ice/cpp/src/Ice/HttpParser.h +0 -0
  739. /data/{ext → dist}/ice/cpp/src/Ice/IPEndpointIF.h +0 -0
  740. /data/{ext → dist}/ice/cpp/src/Ice/IconvStringConverter.cpp +0 -0
  741. /data/{ext → dist}/ice/cpp/src/Ice/ImplicitContextI.cpp +0 -0
  742. /data/{ext → dist}/ice/cpp/src/Ice/ImplicitContextI.h +0 -0
  743. /data/{ext → dist}/ice/cpp/src/Ice/Incoming.cpp +0 -0
  744. /data/{ext → dist}/ice/cpp/src/Ice/IncomingAsync.cpp +0 -0
  745. /data/{ext → dist}/ice/cpp/src/Ice/IncomingRequest.h +0 -0
  746. /data/{ext → dist}/ice/cpp/src/Ice/Initialize.cpp +0 -0
  747. /data/{ext → dist}/ice/cpp/src/Ice/Instance.h +0 -0
  748. /data/{ext → dist}/ice/cpp/src/Ice/InstrumentationI.cpp +0 -0
  749. /data/{ext → dist}/ice/cpp/src/Ice/InstrumentationI.h +0 -0
  750. /data/{ext → dist}/ice/cpp/src/Ice/LocalObject.cpp +0 -0
  751. /data/{ext → dist}/ice/cpp/src/Ice/LocatorInfo.cpp +0 -0
  752. /data/{ext → dist}/ice/cpp/src/Ice/LocatorInfo.h +0 -0
  753. /data/{ext → dist}/ice/cpp/src/Ice/LocatorInfoF.h +0 -0
  754. /data/{ext → dist}/ice/cpp/src/Ice/LoggerAdminI.cpp +0 -0
  755. /data/{ext → dist}/ice/cpp/src/Ice/LoggerAdminI.h +0 -0
  756. /data/{ext → dist}/ice/cpp/src/Ice/LoggerI.h +0 -0
  757. /data/{ext → dist}/ice/cpp/src/Ice/LoggerUtil.cpp +0 -0
  758. /data/{ext → dist}/ice/cpp/src/Ice/MetricsObserverI.cpp +0 -0
  759. /data/{ext → dist}/ice/cpp/src/Ice/NetworkProxy.h +0 -0
  760. /data/{ext → dist}/ice/cpp/src/Ice/NetworkProxyF.h +0 -0
  761. /data/{ext → dist}/ice/cpp/src/Ice/OSLogLoggerI.cpp +0 -0
  762. /data/{ext → dist}/ice/cpp/src/Ice/OSLogLoggerI.h +0 -0
  763. /data/{ext → dist}/ice/cpp/src/Ice/Object.cpp +0 -0
  764. /data/{ext → dist}/ice/cpp/src/Ice/ObjectAdapterFactory.cpp +0 -0
  765. /data/{ext → dist}/ice/cpp/src/Ice/ObjectAdapterFactory.h +0 -0
  766. /data/{ext → dist}/ice/cpp/src/Ice/ObjectAdapterFactoryF.h +0 -0
  767. /data/{ext → dist}/ice/cpp/src/Ice/ObjectAdapterI.h +0 -0
  768. /data/{ext → dist}/ice/cpp/src/Ice/ObserverHelper.cpp +0 -0
  769. /data/{ext → dist}/ice/cpp/src/Ice/OpaqueEndpointI.cpp +0 -0
  770. /data/{ext → dist}/ice/cpp/src/Ice/OpaqueEndpointI.h +0 -0
  771. /data/{ext → dist}/ice/cpp/src/Ice/OutputStream.cpp +0 -0
  772. /data/{ext → dist}/ice/cpp/src/Ice/PluginManagerI.h +0 -0
  773. /data/{ext → dist}/ice/cpp/src/Ice/PropertiesAdminI.cpp +0 -0
  774. /data/{ext → dist}/ice/cpp/src/Ice/PropertiesAdminI.h +0 -0
  775. /data/{ext → dist}/ice/cpp/src/Ice/PropertiesI.h +0 -0
  776. /data/{ext → dist}/ice/cpp/src/Ice/Protocol.cpp +0 -0
  777. /data/{ext → dist}/ice/cpp/src/Ice/ProtocolInstance.cpp +0 -0
  778. /data/{ext → dist}/ice/cpp/src/Ice/ProtocolInstance.h +0 -0
  779. /data/{ext → dist}/ice/cpp/src/Ice/ProtocolInstanceF.h +0 -0
  780. /data/{ext → dist}/ice/cpp/src/Ice/ProtocolPluginFacade.cpp +0 -0
  781. /data/{ext → dist}/ice/cpp/src/Ice/ProtocolPluginFacade.h +0 -0
  782. /data/{ext → dist}/ice/cpp/src/Ice/ProtocolPluginFacadeF.h +0 -0
  783. /data/{ext → dist}/ice/cpp/src/Ice/ProxyFactory.cpp +0 -0
  784. /data/{ext → dist}/ice/cpp/src/Ice/ProxyFactory.h +0 -0
  785. /data/{ext → dist}/ice/cpp/src/Ice/Reference.cpp +0 -0
  786. /data/{ext → dist}/ice/cpp/src/Ice/Reference.h +0 -0
  787. /data/{ext → dist}/ice/cpp/src/Ice/ReferenceFactory.cpp +0 -0
  788. /data/{ext → dist}/ice/cpp/src/Ice/ReferenceFactory.h +0 -0
  789. /data/{ext → dist}/ice/cpp/src/Ice/ReferenceFactoryF.h +0 -0
  790. /data/{ext → dist}/ice/cpp/src/Ice/RegisterPluginsInit.cpp +0 -0
  791. /data/{ext → dist}/ice/cpp/src/Ice/RegisterPluginsInit.h +0 -0
  792. /data/{ext → dist}/ice/cpp/src/Ice/ReplyStatus.h +0 -0
  793. /data/{ext → dist}/ice/cpp/src/Ice/RequestHandler.cpp +0 -0
  794. /data/{ext → dist}/ice/cpp/src/Ice/RequestHandler.h +0 -0
  795. /data/{ext → dist}/ice/cpp/src/Ice/RequestHandlerFactory.cpp +0 -0
  796. /data/{ext → dist}/ice/cpp/src/Ice/RequestHandlerFactory.h +0 -0
  797. /data/{ext → dist}/ice/cpp/src/Ice/ResponseHandler.cpp +0 -0
  798. /data/{ext → dist}/ice/cpp/src/Ice/ResponseHandler.h +0 -0
  799. /data/{ext → dist}/ice/cpp/src/Ice/RetryQueue.cpp +0 -0
  800. /data/{ext → dist}/ice/cpp/src/Ice/RetryQueue.h +0 -0
  801. /data/{ext → dist}/ice/cpp/src/Ice/RetryQueueF.h +0 -0
  802. /data/{ext → dist}/ice/cpp/src/Ice/RouterInfo.cpp +0 -0
  803. /data/{ext → dist}/ice/cpp/src/Ice/RouterInfo.h +0 -0
  804. /data/{ext → dist}/ice/cpp/src/Ice/RouterInfoF.h +0 -0
  805. /data/{ext → dist}/ice/cpp/src/Ice/ServantManager.cpp +0 -0
  806. /data/{ext → dist}/ice/cpp/src/Ice/ServantManager.h +0 -0
  807. /data/{ext → dist}/ice/cpp/src/Ice/SharedContext.h +0 -0
  808. /data/{ext → dist}/ice/cpp/src/Ice/SliceChecksums.cpp +0 -0
  809. /data/{ext → dist}/ice/cpp/src/Ice/SlicedData.cpp +0 -0
  810. /data/{ext → dist}/ice/cpp/src/Ice/StringConverterPlugin.cpp +0 -0
  811. /data/{ext → dist}/ice/cpp/src/Ice/StringUtil.h +0 -0
  812. /data/{ext → dist}/ice/cpp/src/Ice/SysLoggerI.cpp +0 -0
  813. /data/{ext → dist}/ice/cpp/src/Ice/SysLoggerI.h +0 -0
  814. /data/{ext → dist}/ice/cpp/src/Ice/SystemdJournalI.cpp +0 -0
  815. /data/{ext → dist}/ice/cpp/src/Ice/SystemdJournalI.h +0 -0
  816. /data/{ext → dist}/ice/cpp/src/Ice/TcpConnector.cpp +0 -0
  817. /data/{ext → dist}/ice/cpp/src/Ice/TcpConnector.h +0 -0
  818. /data/{ext → dist}/ice/cpp/src/Ice/TcpEndpointI.cpp +0 -0
  819. /data/{ext → dist}/ice/cpp/src/Ice/TcpEndpointI.h +0 -0
  820. /data/{ext → dist}/ice/cpp/src/Ice/Timer.cpp +0 -0
  821. /data/{ext → dist}/ice/cpp/src/Ice/TraceLevels.cpp +0 -0
  822. /data/{ext → dist}/ice/cpp/src/Ice/TraceLevels.h +0 -0
  823. /data/{ext → dist}/ice/cpp/src/Ice/TraceLevelsF.h +0 -0
  824. /data/{ext → dist}/ice/cpp/src/Ice/TraceUtil.cpp +0 -0
  825. /data/{ext → dist}/ice/cpp/src/Ice/TraceUtil.h +0 -0
  826. /data/{ext → dist}/ice/cpp/src/Ice/Transceiver.cpp +0 -0
  827. /data/{ext → dist}/ice/cpp/src/Ice/TransceiverF.h +0 -0
  828. /data/{ext → dist}/ice/cpp/src/Ice/UdpConnector.h +0 -0
  829. /data/{ext → dist}/ice/cpp/src/Ice/UdpEndpointI.cpp +0 -0
  830. /data/{ext → dist}/ice/cpp/src/Ice/UdpEndpointI.h +0 -0
  831. /data/{ext → dist}/ice/cpp/src/Ice/Value.cpp +0 -0
  832. /data/{ext → dist}/ice/cpp/src/Ice/ValueFactoryManagerI.cpp +0 -0
  833. /data/{ext → dist}/ice/cpp/src/Ice/ValueFactoryManagerI.h +0 -0
  834. /data/{ext → dist}/ice/cpp/src/Ice/VirtualShared.h +0 -0
  835. /data/{ext → dist}/ice/cpp/src/Ice/WSConnector.cpp +0 -0
  836. /data/{ext → dist}/ice/cpp/src/Ice/WSConnector.h +0 -0
  837. /data/{ext → dist}/ice/cpp/src/Ice/WSEndpoint.cpp +0 -0
  838. /data/{ext → dist}/ice/cpp/src/Ice/WSEndpoint.h +0 -0
  839. /data/{ext → dist}/ice/cpp/src/IceDiscovery/LocatorI.cpp +0 -0
  840. /data/{ext → dist}/ice/cpp/src/IceDiscovery/LocatorI.h +0 -0
  841. /data/{ext → dist}/ice/cpp/src/IceDiscovery/LookupI.cpp +0 -0
  842. /data/{ext → dist}/ice/cpp/src/IceDiscovery/LookupI.h +0 -0
  843. /data/{ext → dist}/ice/cpp/src/IceDiscovery/PluginI.cpp +0 -0
  844. /data/{ext → dist}/ice/cpp/src/IceDiscovery/PluginI.h +0 -0
  845. /data/{ext → dist}/ice/cpp/src/IceLocatorDiscovery/Plugin.h +0 -0
  846. /data/{ext → dist}/ice/cpp/src/IceLocatorDiscovery/PluginI.cpp +0 -0
  847. /data/{ext → dist}/ice/cpp/src/IceSSL/CertificateI.cpp +0 -0
  848. /data/{ext → dist}/ice/cpp/src/IceSSL/CertificateI.h +0 -0
  849. /data/{ext → dist}/ice/cpp/src/IceSSL/ConnectorI.cpp +0 -0
  850. /data/{ext → dist}/ice/cpp/src/IceSSL/ConnectorI.h +0 -0
  851. /data/{ext → dist}/ice/cpp/src/IceSSL/EndpointI.cpp +0 -0
  852. /data/{ext → dist}/ice/cpp/src/IceSSL/EndpointI.h +0 -0
  853. /data/{ext → dist}/ice/cpp/src/IceSSL/Instance.cpp +0 -0
  854. /data/{ext → dist}/ice/cpp/src/IceSSL/Instance.h +0 -0
  855. /data/{ext → dist}/ice/cpp/src/IceSSL/InstanceF.h +0 -0
  856. /data/{ext → dist}/ice/cpp/src/IceSSL/OpenSSLCertificateI.cpp +0 -0
  857. /data/{ext → dist}/ice/cpp/src/IceSSL/OpenSSLEngine.cpp +0 -0
  858. /data/{ext → dist}/ice/cpp/src/IceSSL/OpenSSLEngine.h +0 -0
  859. /data/{ext → dist}/ice/cpp/src/IceSSL/OpenSSLEngineF.h +0 -0
  860. /data/{ext → dist}/ice/cpp/src/IceSSL/OpenSSLPluginI.cpp +0 -0
  861. /data/{ext → dist}/ice/cpp/src/IceSSL/OpenSSLTransceiverI.h +0 -0
  862. /data/{ext → dist}/ice/cpp/src/IceSSL/OpenSSLUtil.cpp +0 -0
  863. /data/{ext → dist}/ice/cpp/src/IceSSL/OpenSSLUtil.h +0 -0
  864. /data/{ext → dist}/ice/cpp/src/IceSSL/PluginI.h +0 -0
  865. /data/{ext → dist}/ice/cpp/src/IceSSL/RFC2253.cpp +0 -0
  866. /data/{ext → dist}/ice/cpp/src/IceSSL/RFC2253.h +0 -0
  867. /data/{ext → dist}/ice/cpp/src/IceSSL/SChannelCertificateI.cpp +0 -0
  868. /data/{ext → dist}/ice/cpp/src/IceSSL/SChannelEngine.cpp +0 -0
  869. /data/{ext → dist}/ice/cpp/src/IceSSL/SChannelEngine.h +0 -0
  870. /data/{ext → dist}/ice/cpp/src/IceSSL/SChannelEngineF.h +0 -0
  871. /data/{ext → dist}/ice/cpp/src/IceSSL/SChannelPluginI.cpp +0 -0
  872. /data/{ext → dist}/ice/cpp/src/IceSSL/SChannelTransceiverI.cpp +0 -0
  873. /data/{ext → dist}/ice/cpp/src/IceSSL/SChannelTransceiverI.h +0 -0
  874. /data/{ext → dist}/ice/cpp/src/IceSSL/SSLEngine.cpp +0 -0
  875. /data/{ext → dist}/ice/cpp/src/IceSSL/SSLEngine.h +0 -0
  876. /data/{ext → dist}/ice/cpp/src/IceSSL/SSLEngineF.h +0 -0
  877. /data/{ext → dist}/ice/cpp/src/IceSSL/SecureTransportCertificateI.cpp +0 -0
  878. /data/{ext → dist}/ice/cpp/src/IceSSL/SecureTransportEngine.cpp +0 -0
  879. /data/{ext → dist}/ice/cpp/src/IceSSL/SecureTransportEngine.h +0 -0
  880. /data/{ext → dist}/ice/cpp/src/IceSSL/SecureTransportEngineF.h +0 -0
  881. /data/{ext → dist}/ice/cpp/src/IceSSL/SecureTransportPluginI.cpp +0 -0
  882. /data/{ext → dist}/ice/cpp/src/IceSSL/SecureTransportTransceiverI.h +0 -0
  883. /data/{ext → dist}/ice/cpp/src/IceSSL/SecureTransportUtil.h +0 -0
  884. /data/{ext → dist}/ice/cpp/src/IceSSL/TrustManager.cpp +0 -0
  885. /data/{ext → dist}/ice/cpp/src/IceSSL/TrustManager.h +0 -0
  886. /data/{ext → dist}/ice/cpp/src/IceSSL/TrustManagerF.h +0 -0
  887. /data/{ext → dist}/ice/cpp/src/IceSSL/Util.h +0 -0
  888. /data/{ext → dist}/ice/cpp/src/IceUtil/ConvertUTF.cpp +0 -0
  889. /data/{ext → dist}/ice/cpp/src/IceUtil/ConvertUTF.h +0 -0
  890. /data/{ext → dist}/ice/cpp/src/IceUtil/CtrlCHandler.cpp +0 -0
  891. /data/{ext → dist}/ice/cpp/src/IceUtil/InputUtil.cpp +0 -0
  892. /data/{ext → dist}/ice/cpp/src/IceUtil/MutexProtocol.cpp +0 -0
  893. /data/{ext → dist}/ice/cpp/src/IceUtil/Options.cpp +0 -0
  894. /data/{ext → dist}/ice/cpp/src/IceUtil/OutputUtil.cpp +0 -0
  895. /data/{ext → dist}/ice/cpp/src/IceUtil/Random.cpp +0 -0
  896. /data/{ext → dist}/ice/cpp/src/IceUtil/Shared.cpp +0 -0
  897. /data/{ext → dist}/ice/cpp/src/IceUtil/ThreadException.cpp +0 -0
  898. /data/{ext → dist}/ice/cpp/src/IceUtil/Time.cpp +0 -0
  899. /data/{ext → dist}/ice/cpp/src/IceUtil/Unicode.cpp +0 -0
  900. /data/{ext → dist}/ice/cpp/src/IceUtil/Unicode.h +0 -0
  901. /data/{ext → dist}/ice/cpp/src/Slice/CPlusPlusUtil.cpp +0 -0
  902. /data/{ext → dist}/ice/cpp/src/Slice/CPlusPlusUtil.h +0 -0
  903. /data/{ext → dist}/ice/cpp/src/Slice/Checksum.cpp +0 -0
  904. /data/{ext → dist}/ice/cpp/src/Slice/Checksum.h +0 -0
  905. /data/{ext → dist}/ice/cpp/src/Slice/FileTracker.cpp +0 -0
  906. /data/{ext → dist}/ice/cpp/src/Slice/FileTracker.h +0 -0
  907. /data/{ext → dist}/ice/cpp/src/Slice/Grammar.cpp +0 -0
  908. /data/{ext → dist}/ice/cpp/src/Slice/Grammar.h +0 -0
  909. /data/{ext → dist}/ice/cpp/src/Slice/GrammarUtil.h +0 -0
  910. /data/{ext → dist}/ice/cpp/src/Slice/MD5.cpp +0 -0
  911. /data/{ext → dist}/ice/cpp/src/Slice/MD5.h +0 -0
  912. /data/{ext → dist}/ice/cpp/src/Slice/MD5I.cpp +0 -0
  913. /data/{ext → dist}/ice/cpp/src/Slice/MD5I.h +0 -0
  914. /data/{ext → dist}/ice/cpp/src/Slice/PHPUtil.cpp +0 -0
  915. /data/{ext → dist}/ice/cpp/src/Slice/PHPUtil.h +0 -0
  916. /data/{ext → dist}/ice/cpp/src/Slice/Parser.cpp +0 -0
  917. /data/{ext → dist}/ice/cpp/src/Slice/Parser.h +0 -0
  918. /data/{ext → dist}/ice/cpp/src/Slice/Preprocessor.cpp +0 -0
  919. /data/{ext → dist}/ice/cpp/src/Slice/Preprocessor.h +0 -0
  920. /data/{ext → dist}/ice/cpp/src/Slice/Python.cpp +0 -0
  921. /data/{ext → dist}/ice/cpp/src/Slice/PythonUtil.cpp +0 -0
  922. /data/{ext → dist}/ice/cpp/src/Slice/PythonUtil.h +0 -0
  923. /data/{ext → dist}/ice/cpp/src/Slice/Ruby.cpp +0 -0
  924. /data/{ext → dist}/ice/cpp/src/Slice/RubyUtil.cpp +0 -0
  925. /data/{ext → dist}/ice/cpp/src/Slice/RubyUtil.h +0 -0
  926. /data/{ext → dist}/ice/cpp/src/Slice/Scanner.cpp +0 -0
  927. /data/{ext → dist}/ice/cpp/src/Slice/SliceUtil.cpp +0 -0
  928. /data/{ext → dist}/ice/cpp/src/Slice/StringLiteralUtil.cpp +0 -0
  929. /data/{ext → dist}/ice/cpp/src/Slice/Util.h +0 -0
  930. /data/{ext → dist}/ice/mcpp/config.h +0 -0
  931. /data/{ext → dist}/ice/mcpp/configed.H +0 -0
  932. /data/{ext → dist}/ice/mcpp/eval.c +0 -0
  933. /data/{ext → dist}/ice/mcpp/expand.c +0 -0
  934. /data/{ext → dist}/ice/mcpp/mbchar.c +0 -0
  935. /data/{ext → dist}/ice/mcpp/mcpp_lib.h +0 -0
  936. /data/{ext → dist}/ice/mcpp/mcpp_out.h +0 -0
  937. /data/{ext → dist}/ice/mcpp/system.H +0 -0
  938. /data/{slice → dist/ice/slice}/Glacier2/Metrics.ice +0 -0
  939. /data/{slice → dist/ice/slice}/Glacier2/PermissionsVerifier.ice +0 -0
  940. /data/{slice → dist/ice/slice}/Glacier2/PermissionsVerifierF.ice +0 -0
  941. /data/{slice → dist/ice/slice}/Glacier2/Router.ice +0 -0
  942. /data/{slice → dist/ice/slice}/Glacier2/RouterF.ice +0 -0
  943. /data/{slice → dist/ice/slice}/Glacier2/SSLInfo.ice +0 -0
  944. /data/{slice → dist/ice/slice}/Glacier2/Session.ice +0 -0
  945. /data/{slice → dist/ice/slice}/Ice/BuiltinSequences.ice +0 -0
  946. /data/{slice → dist/ice/slice}/Ice/Communicator.ice +0 -0
  947. /data/{slice → dist/ice/slice}/Ice/CommunicatorF.ice +0 -0
  948. /data/{slice → dist/ice/slice}/Ice/ConnectionF.ice +0 -0
  949. /data/{slice → dist/ice/slice}/Ice/Endpoint.ice +0 -0
  950. /data/{slice → dist/ice/slice}/Ice/EndpointF.ice +0 -0
  951. /data/{slice → dist/ice/slice}/Ice/EndpointTypes.ice +0 -0
  952. /data/{slice → dist/ice/slice}/Ice/FacetMap.ice +0 -0
  953. /data/{slice → dist/ice/slice}/Ice/Identity.ice +0 -0
  954. /data/{slice → dist/ice/slice}/Ice/ImplicitContext.ice +0 -0
  955. /data/{slice → dist/ice/slice}/Ice/ImplicitContextF.ice +0 -0
  956. /data/{slice → dist/ice/slice}/Ice/Instrumentation.ice +0 -0
  957. /data/{slice → dist/ice/slice}/Ice/InstrumentationF.ice +0 -0
  958. /data/{slice → dist/ice/slice}/Ice/LocalException.ice +0 -0
  959. /data/{slice → dist/ice/slice}/Ice/LocatorF.ice +0 -0
  960. /data/{slice → dist/ice/slice}/Ice/Logger.ice +0 -0
  961. /data/{slice → dist/ice/slice}/Ice/LoggerF.ice +0 -0
  962. /data/{slice → dist/ice/slice}/Ice/ObjectAdapterF.ice +0 -0
  963. /data/{slice → dist/ice/slice}/Ice/ObjectFactory.ice +0 -0
  964. /data/{slice → dist/ice/slice}/Ice/Plugin.ice +0 -0
  965. /data/{slice → dist/ice/slice}/Ice/PluginF.ice +0 -0
  966. /data/{slice → dist/ice/slice}/Ice/Process.ice +0 -0
  967. /data/{slice → dist/ice/slice}/Ice/ProcessF.ice +0 -0
  968. /data/{slice → dist/ice/slice}/Ice/PropertiesAdmin.ice +0 -0
  969. /data/{slice → dist/ice/slice}/Ice/PropertiesF.ice +0 -0
  970. /data/{slice → dist/ice/slice}/Ice/RemoteLogger.ice +0 -0
  971. /data/{slice → dist/ice/slice}/Ice/RouterF.ice +0 -0
  972. /data/{slice → dist/ice/slice}/Ice/ServantLocator.ice +0 -0
  973. /data/{slice → dist/ice/slice}/Ice/ServantLocatorF.ice +0 -0
  974. /data/{slice → dist/ice/slice}/Ice/SliceChecksumDict.ice +0 -0
  975. /data/{slice → dist/ice/slice}/Ice/ValueFactory.ice +0 -0
  976. /data/{slice → dist/ice/slice}/Ice/Version.ice +0 -0
  977. /data/{slice → dist/ice/slice}/IceBox/IceBox.ice +0 -0
  978. /data/{slice → dist/ice/slice}/IceGrid/Admin.ice +0 -0
  979. /data/{slice → dist/ice/slice}/IceGrid/Descriptor.ice +0 -0
  980. /data/{slice → dist/ice/slice}/IceGrid/Exception.ice +0 -0
  981. /data/{slice → dist/ice/slice}/IceGrid/FileParser.ice +0 -0
  982. /data/{slice → dist/ice/slice}/IceGrid/Registry.ice +0 -0
  983. /data/{slice → dist/ice/slice}/IceGrid/Session.ice +0 -0
  984. /data/{slice → dist/ice/slice}/IceGrid/UserAccountMapper.ice +0 -0
  985. /data/{slice → dist/ice/slice}/IcePatch2/FileInfo.ice +0 -0
  986. /data/{slice → dist/ice/slice}/IcePatch2/FileServer.ice +0 -0
  987. /data/{slice → dist/ice/slice}/IceStorm/Metrics.ice +0 -0
  988. /data/{lib → dist/lib}/Glacier2.rb +0 -0
  989. /data/{lib → dist/lib}/Ice.rb +0 -0
  990. /data/{lib → dist/lib}/IceBox.rb +0 -0
  991. /data/{lib → dist/lib}/IceGrid.rb +0 -0
  992. /data/{lib → dist/lib}/IcePatch2.rb +0 -0
  993. /data/{lib → dist/lib}/IceStorm.rb +0 -0
  994. /data/{bin → scripts}/slice2rb +0 -0
@@ -1,1971 +0,0 @@
1
- //
2
- // Copyright (c) ZeroC, Inc. All rights reserved.
3
- //
4
-
5
- #include <Ice/Instance.h>
6
- #include <Ice/TraceLevels.h>
7
- #include <Ice/DefaultsAndOverrides.h>
8
- #include <Ice/RouterInfo.h>
9
- #include <Ice/Router.h>
10
- #include <Ice/LocatorInfo.h>
11
- #include <Ice/Locator.h>
12
- #include <Ice/ReferenceFactory.h>
13
- #include <Ice/ProxyFactory.h>
14
- #include <Ice/ThreadPool.h>
15
- #include <Ice/ConnectionFactory.h>
16
- #include <Ice/ValueFactoryManagerI.h>
17
- #include <Ice/LocalException.h>
18
- #include <Ice/ObjectAdapterFactory.h>
19
- #include <Ice/Exception.h>
20
- #include <Ice/PropertiesI.h>
21
- #include <Ice/PropertiesAdminI.h>
22
- #include <Ice/LoggerI.h>
23
- #include <Ice/NetworkProxy.h>
24
- #include <Ice/EndpointFactoryManager.h>
25
- #include <Ice/IPEndpointI.h> // For EndpointHostResolver
26
- #include <Ice/WSEndpoint.h>
27
- #include <Ice/RequestHandlerFactory.h>
28
- #include <Ice/RetryQueue.h>
29
- #include <Ice/DynamicLibrary.h>
30
- #include <Ice/PluginManagerI.h>
31
- #include <Ice/Initialize.h>
32
- #include <Ice/LoggerUtil.h>
33
- #include <Ice/PropertiesI.h>
34
- #include <Ice/Communicator.h>
35
- #include <Ice/InstrumentationI.h>
36
- #include <Ice/ProtocolInstance.h>
37
- #include <Ice/LoggerAdminI.h>
38
- #include <Ice/RegisterPluginsInit.h>
39
- #include <Ice/ObserverHelper.h>
40
- #include <Ice/Functional.h>
41
- #include <Ice/ConsoleUtil.h>
42
-
43
- #include <IceUtil/DisableWarnings.h>
44
- #include <IceUtil/FileUtil.h>
45
- #include <IceUtil/StringUtil.h>
46
- #include <Ice/UUID.h>
47
- #include <IceUtil/Mutex.h>
48
- #include <IceUtil/MutexPtrLock.h>
49
- #include <IceUtil/Atomic.h>
50
-
51
- #include <stdio.h>
52
- #include <list>
53
-
54
- #ifdef __APPLE__
55
- # include <Ice/OSLogLoggerI.h>
56
- #endif
57
-
58
- #ifndef _WIN32
59
- # include <Ice/SysLoggerI.h>
60
- # include <Ice/SystemdJournalI.h>
61
-
62
- # include <signal.h>
63
- # include <syslog.h>
64
- # include <pwd.h>
65
- # include <sys/types.h>
66
- #endif
67
-
68
- #if defined(__linux__) || defined(__sun) || defined(_AIX) || defined(__GLIBC__)
69
- # include <grp.h> // for initgroups
70
- #endif
71
-
72
- using namespace std;
73
- using namespace Ice;
74
- using namespace IceInternal;
75
-
76
- namespace IceUtilInternal
77
- {
78
-
79
- extern bool nullHandleAbort;
80
- extern bool printStackTraces;
81
-
82
- };
83
-
84
- namespace
85
- {
86
-
87
- IceUtil::Mutex* staticMutex = 0;
88
- bool oneOfDone = false;
89
- std::list<IceInternal::Instance*>* instanceList = 0;
90
-
91
- #ifndef _WIN32
92
- struct sigaction oldAction;
93
- #endif
94
- bool printProcessIdDone = false;
95
- string identForOpenlog;
96
-
97
- //
98
- // Should be called with staticMutex locked
99
- //
100
- size_t instanceCount()
101
- {
102
- if(instanceList == 0)
103
- {
104
- return 0;
105
- }
106
- else
107
- {
108
- return instanceList->size();
109
- }
110
- }
111
-
112
- class Init
113
- {
114
- public:
115
-
116
- Init()
117
- {
118
- staticMutex = new IceUtil::Mutex;
119
-
120
- //
121
- // Although probably not necessary here, we consistently lock
122
- // staticMutex before accessing instanceList
123
- //
124
- IceUtilInternal::MutexPtrLock<IceUtil::Mutex> sync(staticMutex);
125
- instanceList = new std::list<IceInternal::Instance*>;
126
- }
127
-
128
- ~Init()
129
- {
130
- {
131
- IceUtilInternal::MutexPtrLock<IceUtil::Mutex> sync(staticMutex);
132
- int notDestroyedCount = 0;
133
-
134
- for(std::list<IceInternal::Instance*>::const_iterator p = instanceList->begin();
135
- p != instanceList->end(); ++p)
136
- {
137
- if(!(*p)->destroyed())
138
- {
139
- notDestroyedCount++;
140
- }
141
- }
142
-
143
- if(notDestroyedCount > 0)
144
- {
145
- consoleErr << "!! " << IceUtil::Time::now().toDateTime() << " error: ";
146
- if(notDestroyedCount == 1)
147
- {
148
- consoleErr << "communicator ";
149
- }
150
- else
151
- {
152
- consoleErr << notDestroyedCount << " communicators ";
153
- }
154
- consoleErr << "not destroyed during global destruction.";
155
- }
156
-
157
- delete instanceList;
158
- instanceList = 0;
159
- }
160
- delete staticMutex;
161
- staticMutex = 0;
162
- }
163
- };
164
-
165
- Init init;
166
-
167
- //
168
- // Static initializer to register plugins.
169
- //
170
- IceInternal::RegisterPluginsInit initPlugins;
171
-
172
- }
173
-
174
- namespace IceInternal // Required because ObserverUpdaterI is a friend of Instance
175
- {
176
-
177
- class ObserverUpdaterI : public Ice::Instrumentation::ObserverUpdater
178
- {
179
- public:
180
-
181
- ObserverUpdaterI(const InstancePtr&);
182
-
183
- virtual void updateConnectionObservers();
184
- virtual void updateThreadObservers();
185
-
186
- private:
187
-
188
- const InstancePtr _instance;
189
- };
190
-
191
- //
192
- // Timer specialization which supports the thread observer
193
- //
194
- class Timer : public IceUtil::Timer
195
- {
196
- public:
197
-
198
- Timer(int priority) :
199
- IceUtil::Timer(priority),
200
- _hasObserver(0)
201
- {
202
- }
203
-
204
- Timer() :
205
- _hasObserver(0)
206
- {
207
- }
208
-
209
- void updateObserver(const Ice::Instrumentation::CommunicatorObserverPtr&);
210
-
211
- private:
212
-
213
- virtual void runTimerTask(const IceUtil::TimerTaskPtr&);
214
-
215
- IceUtil::Mutex _mutex;
216
- //
217
- // TODO: Replace by std::atomic<bool> when it becomes widely
218
- // available.
219
- //
220
- IceUtilInternal::Atomic _hasObserver;
221
- ObserverHelperT<Ice::Instrumentation::ThreadObserver> _observer;
222
- };
223
-
224
- }
225
-
226
- void
227
- Timer::updateObserver(const Ice::Instrumentation::CommunicatorObserverPtr& obsv)
228
- {
229
- IceUtil::Mutex::Lock sync(_mutex);
230
- assert(obsv);
231
- _observer.attach(obsv->getThreadObserver("Communicator",
232
- "Ice.Timer",
233
- Instrumentation::ICE_ENUM(ThreadState, ThreadStateIdle),
234
- _observer.get()));
235
- _hasObserver.exchange(_observer.get() ? 1 : 0);
236
- }
237
-
238
- void
239
- Timer::runTimerTask(const IceUtil::TimerTaskPtr& task)
240
- {
241
- if(_hasObserver != 0)
242
- {
243
- Ice::Instrumentation::ThreadObserverPtr threadObserver;
244
- {
245
- IceUtil::Mutex::Lock sync(_mutex);
246
- threadObserver = _observer.get();
247
- }
248
- if(threadObserver)
249
- {
250
- threadObserver->stateChanged(Instrumentation::ICE_ENUM(ThreadState, ThreadStateIdle),
251
- Instrumentation::ICE_ENUM(ThreadState, ThreadStateInUseForOther));
252
- }
253
- try
254
- {
255
- task->runTimerTask();
256
- }
257
- catch(...)
258
- {
259
- if(threadObserver)
260
- {
261
- threadObserver->stateChanged(Instrumentation::ICE_ENUM(ThreadState, ThreadStateInUseForOther),
262
- Instrumentation::ICE_ENUM(ThreadState, ThreadStateIdle));
263
- }
264
- }
265
- if(threadObserver)
266
- {
267
- threadObserver->stateChanged(Instrumentation::ICE_ENUM(ThreadState, ThreadStateInUseForOther),
268
- Instrumentation::ICE_ENUM(ThreadState, ThreadStateIdle));
269
- }
270
- }
271
- else
272
- {
273
- task->runTimerTask();
274
- }
275
- }
276
-
277
- IceUtil::Shared* IceInternal::upCast(Instance* p) { return p; }
278
-
279
- IceInternal::ObserverUpdaterI::ObserverUpdaterI(const InstancePtr& instance) : _instance(instance)
280
- {
281
- }
282
-
283
- void
284
- IceInternal::ObserverUpdaterI::updateConnectionObservers()
285
- {
286
- _instance->updateConnectionObservers();
287
- }
288
-
289
- void
290
- IceInternal::ObserverUpdaterI::updateThreadObservers()
291
- {
292
- _instance->updateThreadObservers();
293
- }
294
-
295
- bool
296
- IceInternal::Instance::destroyed() const
297
- {
298
- Lock sync(*this);
299
- return _state == StateDestroyed;
300
- }
301
-
302
- TraceLevelsPtr
303
- IceInternal::Instance::traceLevels() const
304
- {
305
- // No mutex lock, immutable.
306
- assert(_traceLevels);
307
- return _traceLevels;
308
- }
309
-
310
- DefaultsAndOverridesPtr
311
- IceInternal::Instance::defaultsAndOverrides() const
312
- {
313
- // No mutex lock, immutable.
314
- assert(_defaultsAndOverrides);
315
- return _defaultsAndOverrides;
316
- }
317
-
318
- RouterManagerPtr
319
- IceInternal::Instance::routerManager() const
320
- {
321
- Lock sync(*this);
322
-
323
- if(_state == StateDestroyed)
324
- {
325
- throw CommunicatorDestroyedException(__FILE__, __LINE__);
326
- }
327
-
328
- assert(_routerManager);
329
- return _routerManager;
330
- }
331
-
332
- LocatorManagerPtr
333
- IceInternal::Instance::locatorManager() const
334
- {
335
- Lock sync(*this);
336
-
337
- if(_state == StateDestroyed)
338
- {
339
- throw CommunicatorDestroyedException(__FILE__, __LINE__);
340
- }
341
-
342
- assert(_locatorManager);
343
- return _locatorManager;
344
- }
345
-
346
- ReferenceFactoryPtr
347
- IceInternal::Instance::referenceFactory() const
348
- {
349
- Lock sync(*this);
350
-
351
- if(_state == StateDestroyed)
352
- {
353
- throw CommunicatorDestroyedException(__FILE__, __LINE__);
354
- }
355
-
356
- assert(_referenceFactory);
357
- return _referenceFactory;
358
- }
359
-
360
- RequestHandlerFactoryPtr
361
- IceInternal::Instance::requestHandlerFactory() const
362
- {
363
- Lock sync(*this);
364
-
365
- if(_state == StateDestroyed)
366
- {
367
- throw CommunicatorDestroyedException(__FILE__, __LINE__);
368
- }
369
-
370
- assert(_requestHandlerFactory);
371
- return _requestHandlerFactory;
372
- }
373
-
374
- ProxyFactoryPtr
375
- IceInternal::Instance::proxyFactory() const
376
- {
377
- Lock sync(*this);
378
-
379
- if(_state == StateDestroyed)
380
- {
381
- throw CommunicatorDestroyedException(__FILE__, __LINE__);
382
- }
383
-
384
- assert(_proxyFactory);
385
- return _proxyFactory;
386
- }
387
-
388
- OutgoingConnectionFactoryPtr
389
- IceInternal::Instance::outgoingConnectionFactory() const
390
- {
391
- Lock sync(*this);
392
-
393
- if(_state == StateDestroyed)
394
- {
395
- throw CommunicatorDestroyedException(__FILE__, __LINE__);
396
- }
397
-
398
- assert(_outgoingConnectionFactory);
399
- return _outgoingConnectionFactory;
400
- }
401
-
402
- ObjectAdapterFactoryPtr
403
- IceInternal::Instance::objectAdapterFactory() const
404
- {
405
- Lock sync(*this);
406
-
407
- if(_state == StateDestroyed)
408
- {
409
- throw CommunicatorDestroyedException(__FILE__, __LINE__);
410
- }
411
-
412
- assert(_objectAdapterFactory);
413
- return _objectAdapterFactory;
414
- }
415
-
416
- ProtocolSupport
417
- IceInternal::Instance::protocolSupport() const
418
- {
419
- return _protocolSupport;
420
- }
421
-
422
- bool
423
- IceInternal::Instance::preferIPv6() const
424
- {
425
- return _preferIPv6;
426
- }
427
-
428
- NetworkProxyPtr
429
- IceInternal::Instance::networkProxy() const
430
- {
431
- return _networkProxy;
432
- }
433
-
434
- ThreadPoolPtr
435
- IceInternal::Instance::clientThreadPool()
436
- {
437
- Lock sync(*this);
438
-
439
- if(_state == StateDestroyed)
440
- {
441
- throw CommunicatorDestroyedException(__FILE__, __LINE__);
442
- }
443
-
444
- assert(_clientThreadPool);
445
- return _clientThreadPool;
446
- }
447
-
448
- ThreadPoolPtr
449
- IceInternal::Instance::serverThreadPool()
450
- {
451
- Lock sync(*this);
452
-
453
- if(_state == StateDestroyed)
454
- {
455
- throw CommunicatorDestroyedException(__FILE__, __LINE__);
456
- }
457
-
458
- if(!_serverThreadPool) // Lazy initialization.
459
- {
460
- if(_state == StateDestroyInProgress)
461
- {
462
- throw CommunicatorDestroyedException(__FILE__, __LINE__);
463
- }
464
- int timeout = _initData.properties->getPropertyAsInt("Ice.ServerIdleTime");
465
- _serverThreadPool = new ThreadPool(this, "Ice.ThreadPool.Server", timeout);
466
- }
467
-
468
- return _serverThreadPool;
469
- }
470
-
471
- EndpointHostResolverPtr
472
- IceInternal::Instance::endpointHostResolver()
473
- {
474
- Lock sync(*this);
475
-
476
- if(_state == StateDestroyed)
477
- {
478
- throw CommunicatorDestroyedException(__FILE__, __LINE__);
479
- }
480
-
481
- assert(_endpointHostResolver);
482
- return _endpointHostResolver;
483
- }
484
-
485
- RetryQueuePtr
486
- IceInternal::Instance::retryQueue()
487
- {
488
- Lock sync(*this);
489
-
490
- if(_state == StateDestroyed)
491
- {
492
- throw CommunicatorDestroyedException(__FILE__, __LINE__);
493
- }
494
-
495
- assert(_retryQueue);
496
- return _retryQueue;
497
- }
498
-
499
- IceUtil::TimerPtr
500
- IceInternal::Instance::timer()
501
- {
502
- Lock sync(*this);
503
-
504
- if(_state == StateDestroyed)
505
- {
506
- throw CommunicatorDestroyedException(__FILE__, __LINE__);
507
- }
508
- assert(_timer);
509
- return _timer;
510
- }
511
-
512
- EndpointFactoryManagerPtr
513
- IceInternal::Instance::endpointFactoryManager() const
514
- {
515
- Lock sync(*this);
516
-
517
- if(_state == StateDestroyed)
518
- {
519
- throw CommunicatorDestroyedException(__FILE__, __LINE__);
520
- }
521
-
522
- assert(_endpointFactoryManager);
523
- return _endpointFactoryManager;
524
- }
525
-
526
- DynamicLibraryListPtr
527
- IceInternal::Instance::dynamicLibraryList() const
528
- {
529
- Lock sync(*this);
530
-
531
- if(_state == StateDestroyed)
532
- {
533
- throw CommunicatorDestroyedException(__FILE__, __LINE__);
534
- }
535
-
536
- assert(_dynamicLibraryList);
537
- return _dynamicLibraryList;
538
- }
539
-
540
- PluginManagerPtr
541
- IceInternal::Instance::pluginManager() const
542
- {
543
- Lock sync(*this);
544
-
545
- if(_state == StateDestroyed)
546
- {
547
- throw CommunicatorDestroyedException(__FILE__, __LINE__);
548
- }
549
-
550
- assert(_pluginManager);
551
- return _pluginManager;
552
- }
553
-
554
- const ACMConfig&
555
- IceInternal::Instance::clientACM() const
556
- {
557
- // No mutex lock, immutable.
558
- return _clientACM;
559
- }
560
-
561
- const ACMConfig&
562
- IceInternal::Instance::serverACM() const
563
- {
564
- // No mutex lock, immutable.
565
- return _serverACM;
566
- }
567
-
568
- Ice::ObjectPrxPtr
569
- IceInternal::Instance::createAdmin(const ObjectAdapterPtr& adminAdapter, const Identity& adminIdentity)
570
- {
571
- ObjectAdapterPtr adapter = adminAdapter;
572
- bool createAdapter = !adminAdapter;
573
-
574
- Lock sync(*this);
575
-
576
- if(_state == StateDestroyed)
577
- {
578
- throw CommunicatorDestroyedException(__FILE__, __LINE__);
579
- }
580
-
581
- if(adminIdentity.name.empty())
582
- {
583
- throw Ice::IllegalIdentityException(__FILE__, __LINE__, adminIdentity);
584
- }
585
-
586
- if(_adminAdapter)
587
- {
588
- throw InitializationException(__FILE__, __LINE__, "Admin already created");
589
- }
590
-
591
- if(!_adminEnabled)
592
- {
593
- throw InitializationException(__FILE__, __LINE__, "Admin is disabled");
594
- }
595
-
596
- if(createAdapter)
597
- {
598
- if(_initData.properties->getProperty("Ice.Admin.Endpoints") != "")
599
- {
600
- adapter = _objectAdapterFactory->createObjectAdapter("Ice.Admin", 0);
601
- }
602
- else
603
- {
604
- throw InitializationException(__FILE__, __LINE__, "Ice.Admin.Endpoints is not set");
605
- }
606
- }
607
-
608
- _adminIdentity = adminIdentity;
609
- _adminAdapter = adapter;
610
- addAllAdminFacets();
611
- sync.release();
612
-
613
- if(createAdapter)
614
- {
615
- try
616
- {
617
- adapter->activate();
618
- }
619
- catch(...)
620
- {
621
- //
622
- // We clean it up, even through this error is not recoverable
623
- // (can't call again createAdmin after fixing the problem since all the facets
624
- // in the adapter are lost)
625
- //
626
- adapter->destroy();
627
- sync.acquire();
628
- _adminAdapter = 0;
629
- throw;
630
- }
631
- }
632
- setServerProcessProxy(adapter, adminIdentity);
633
- return adapter->createProxy(adminIdentity);
634
- }
635
-
636
- Ice::ObjectPrxPtr
637
- IceInternal::Instance::getAdmin()
638
- {
639
- Lock sync(*this);
640
-
641
- if(_state == StateDestroyed)
642
- {
643
- throw CommunicatorDestroyedException(__FILE__, __LINE__);
644
- }
645
-
646
- if(_adminAdapter)
647
- {
648
- return _adminAdapter->createProxy(_adminIdentity);
649
- }
650
- else if(_adminEnabled)
651
- {
652
- ObjectAdapterPtr adapter;
653
- if(_initData.properties->getProperty("Ice.Admin.Endpoints") != "")
654
- {
655
- adapter = _objectAdapterFactory->createObjectAdapter("Ice.Admin", 0);
656
- }
657
- else
658
- {
659
- return 0;
660
- }
661
-
662
- Identity adminIdentity;
663
- adminIdentity.name = "admin";
664
- adminIdentity.category = _initData.properties->getProperty("Ice.Admin.InstanceName");
665
- if(adminIdentity.category.empty())
666
- {
667
- adminIdentity.category = Ice::generateUUID();
668
- }
669
-
670
- _adminIdentity = adminIdentity;
671
- _adminAdapter = adapter;
672
- addAllAdminFacets();
673
- sync.release();
674
- try
675
- {
676
- adapter->activate();
677
- }
678
- catch(...)
679
- {
680
- //
681
- // We clean it up, even through this error is not recoverable
682
- // (can't call again createAdmin after fixing the problem since all the facets
683
- // in the adapter are lost)
684
- //
685
- adapter->destroy();
686
- sync.acquire();
687
- _adminAdapter = 0;
688
- throw;
689
- }
690
-
691
- setServerProcessProxy(adapter, adminIdentity);
692
- return adapter->createProxy(adminIdentity);
693
- }
694
- else
695
- {
696
- return 0;
697
- }
698
- }
699
-
700
- void
701
- IceInternal::Instance::addAllAdminFacets()
702
- {
703
- // must be called with this locked
704
-
705
- //
706
- // Add all facets to OA
707
- //
708
- FacetMap filteredFacets;
709
-
710
- for(FacetMap::iterator p = _adminFacets.begin(); p != _adminFacets.end(); ++p)
711
- {
712
- if(_adminFacetFilter.empty() || _adminFacetFilter.find(p->first) != _adminFacetFilter.end())
713
- {
714
- _adminAdapter->addFacet(p->second, _adminIdentity, p->first);
715
- }
716
- else
717
- {
718
- filteredFacets[p->first] = p->second;
719
- }
720
- }
721
- _adminFacets.swap(filteredFacets);
722
- }
723
-
724
- void
725
- IceInternal::Instance::setServerProcessProxy(const ObjectAdapterPtr& adminAdapter, const Identity& adminIdentity)
726
- {
727
- ObjectPrxPtr admin = adminAdapter->createProxy(adminIdentity);
728
- LocatorPrxPtr locator = adminAdapter->getLocator();
729
- const string serverId = _initData.properties->getProperty("Ice.Admin.ServerId");
730
- if(locator && serverId != "")
731
- {
732
- ProcessPrxPtr process = ICE_UNCHECKED_CAST(ProcessPrx, admin->ice_facet("Process"));
733
- try
734
- {
735
- //
736
- // Note that as soon as the process proxy is registered, the communicator might be
737
- // shutdown by a remote client and admin facets might start receiving calls.
738
- //
739
- locator->getRegistry()->setServerProcessProxy(serverId, process);
740
- }
741
- catch(const ServerNotFoundException&)
742
- {
743
- if(_traceLevels->location >= 1)
744
- {
745
- Trace out(_initData.logger, _traceLevels->locationCat);
746
- out << "couldn't register server `" + serverId + "' with the locator registry:\n";
747
- out << "the server is not known to the locator registry";
748
- }
749
-
750
- throw InitializationException(__FILE__, __LINE__, "Locator `" + _proxyFactory->proxyToString(locator) +
751
- "' knows nothing about server `" + serverId + "'");
752
- }
753
- catch(const LocalException& ex)
754
- {
755
- if(_traceLevels->location >= 1)
756
- {
757
- Trace out(_initData.logger, _traceLevels->locationCat);
758
- out << "couldn't register server `" + serverId + "' with the locator registry:\n" << ex;
759
- }
760
- throw;
761
- }
762
-
763
- if(_traceLevels->location >= 1)
764
- {
765
- Trace out(_initData.logger, _traceLevels->locationCat);
766
- out << "registered server `" + serverId + "' with the locator registry";
767
- }
768
- }
769
- }
770
-
771
- void
772
- IceInternal::Instance::addAdminFacet(const Ice::ObjectPtr& servant, const string& facet)
773
- {
774
- Lock sync(*this);
775
-
776
- if(_state == StateDestroyed)
777
- {
778
- throw CommunicatorDestroyedException(__FILE__, __LINE__);
779
- }
780
-
781
- if(_adminAdapter == 0 || (!_adminFacetFilter.empty() && _adminFacetFilter.find(facet) == _adminFacetFilter.end()))
782
- {
783
- if(_adminFacets.insert(FacetMap::value_type(facet, servant)).second == false)
784
- {
785
- throw AlreadyRegisteredException(__FILE__, __LINE__, "facet", facet);
786
- }
787
- }
788
- else
789
- {
790
- _adminAdapter->addFacet(servant, _adminIdentity, facet);
791
- }
792
- }
793
-
794
- Ice::ObjectPtr
795
- IceInternal::Instance::removeAdminFacet(const string& facet)
796
- {
797
- Lock sync(*this);
798
-
799
- if(_state == StateDestroyed)
800
- {
801
- throw CommunicatorDestroyedException(__FILE__, __LINE__);
802
- }
803
-
804
- ObjectPtr result;
805
-
806
- if(_adminAdapter == 0 || (!_adminFacetFilter.empty() && _adminFacetFilter.find(facet) == _adminFacetFilter.end()))
807
- {
808
- FacetMap::iterator p = _adminFacets.find(facet);
809
- if(p == _adminFacets.end())
810
- {
811
- throw NotRegisteredException(__FILE__, __LINE__, "facet", facet);
812
- }
813
- else
814
- {
815
- result = p->second;
816
- _adminFacets.erase(p);
817
- }
818
- }
819
- else
820
- {
821
- result = _adminAdapter->removeFacet(_adminIdentity, facet);
822
- }
823
-
824
- return result;
825
- }
826
-
827
- Ice::ObjectPtr
828
- IceInternal::Instance::findAdminFacet(const string& facet)
829
- {
830
- Lock sync(*this);
831
-
832
- if(_state == StateDestroyed)
833
- {
834
- throw CommunicatorDestroyedException(__FILE__, __LINE__);
835
- }
836
-
837
- ObjectPtr result;
838
-
839
- //
840
- // If the _adminAdapter was not yet created, or this facet is filtered out, we check _adminFacets
841
- //
842
- if(!_adminAdapter || (!_adminFacetFilter.empty() && _adminFacetFilter.find(facet) == _adminFacetFilter.end()))
843
- {
844
- FacetMap::iterator p = _adminFacets.find(facet);
845
- if(p != _adminFacets.end())
846
- {
847
- result = p->second;
848
- }
849
- }
850
- else
851
- {
852
- // Otherwise, just check the _adminAdapter
853
- result = _adminAdapter->findFacet(_adminIdentity, facet);
854
- }
855
-
856
- return result;
857
- }
858
-
859
- FacetMap
860
- IceInternal::Instance::findAllAdminFacets()
861
- {
862
- Lock sync(*this);
863
-
864
- if(_state == StateDestroyed)
865
- {
866
- throw CommunicatorDestroyedException(__FILE__, __LINE__);
867
- }
868
-
869
- if(!_adminAdapter)
870
- {
871
- return _adminFacets;
872
- }
873
- else
874
- {
875
- FacetMap result = _adminAdapter->findAllFacets(_adminIdentity);
876
- if(!_adminFacets.empty())
877
- {
878
- // Also returns filtered facets
879
- result.insert(_adminFacets.begin(), _adminFacets.end());
880
- }
881
- return result;
882
- }
883
- }
884
-
885
- void
886
- IceInternal::Instance::setDefaultLocator(const Ice::LocatorPrxPtr& defaultLocator)
887
- {
888
- Lock sync(*this);
889
-
890
- if(_state == StateDestroyed)
891
- {
892
- throw CommunicatorDestroyedException(__FILE__, __LINE__);
893
- }
894
-
895
- _referenceFactory = _referenceFactory->setDefaultLocator(defaultLocator);
896
- }
897
-
898
- void
899
- IceInternal::Instance::setDefaultRouter(const Ice::RouterPrxPtr& defaultRouter)
900
- {
901
- Lock sync(*this);
902
-
903
- if(_state == StateDestroyed)
904
- {
905
- throw CommunicatorDestroyedException(__FILE__, __LINE__);
906
- }
907
-
908
- _referenceFactory = _referenceFactory->setDefaultRouter(defaultRouter);
909
- }
910
-
911
- void
912
- IceInternal::Instance::setLogger(const Ice::LoggerPtr& logger)
913
- {
914
- //
915
- // No locking, as it can only be called during plug-in loading
916
- //
917
- _initData.logger = logger;
918
- }
919
-
920
- #ifdef ICE_CPP11_MAPPING
921
- void
922
- IceInternal::Instance::setThreadHook(function<void()> threadStart, function<void()> threadStop)
923
- {
924
- _initData.threadStart = std::move(threadStart);
925
- _initData.threadStop = std::move(threadStop);
926
- }
927
- #else
928
- void
929
- IceInternal::Instance::setThreadHook(const Ice::ThreadNotificationPtr& threadHook)
930
- {
931
- //
932
- // No locking, as it can only be called during plug-in loading
933
- //
934
- _initData.threadHook = threadHook;
935
- }
936
- #endif
937
-
938
- namespace
939
- {
940
-
941
- bool logStdErrConvert = true;
942
-
943
- }
944
-
945
- IceInternal::Instance::Instance(const CommunicatorPtr& communicator, const InitializationData& initData) :
946
- _state(StateActive),
947
- _initData(initData),
948
- _messageSizeMax(0),
949
- _batchAutoFlushSize(0),
950
- _classGraphDepthMax(0),
951
- _collectObjects(false),
952
- _toStringMode(ICE_ENUM(ToStringMode, Unicode)),
953
- _acceptClassCycles(false),
954
- _implicitContext(0),
955
- _stringConverter(Ice::getProcessStringConverter()),
956
- _wstringConverter(Ice::getProcessWstringConverter()),
957
- _adminEnabled(false)
958
- {
959
- try
960
- {
961
- __setNoDelete(true);
962
- {
963
- IceUtilInternal::MutexPtrLock<IceUtil::Mutex> sync(staticMutex);
964
- instanceList->push_back(this);
965
-
966
- if(!_initData.properties)
967
- {
968
- _initData.properties = createProperties();
969
- }
970
-
971
- if(!oneOfDone)
972
- {
973
- //
974
- // StdOut and StdErr redirection
975
- //
976
- string stdOutFilename = _initData.properties->getProperty("Ice.StdOut");
977
- string stdErrFilename = _initData.properties->getProperty("Ice.StdErr");
978
-
979
- if(stdOutFilename != "")
980
- {
981
- FILE* file = IceUtilInternal::freopen(stdOutFilename, "a", stdout);
982
- if(file == 0)
983
- {
984
- throw FileException(__FILE__, __LINE__, getSystemErrno(), stdOutFilename);
985
- }
986
- }
987
-
988
- if(stdErrFilename != "")
989
- {
990
- FILE* file = IceUtilInternal::freopen(stdErrFilename, "a", stderr);
991
- if(file == 0)
992
- {
993
- throw FileException(__FILE__, __LINE__, getSystemErrno(), stdErrFilename);
994
- }
995
- }
996
-
997
- if(_initData.properties->getPropertyAsInt("Ice.NullHandleAbort") > 0)
998
- {
999
- IceUtilInternal::nullHandleAbort = true;
1000
- }
1001
-
1002
- #ifdef NDEBUG
1003
- if(_initData.properties->getPropertyAsIntWithDefault("Ice.PrintStackTraces", 0) > 0)
1004
- {
1005
- IceUtilInternal::printStackTraces = true;
1006
- }
1007
- #else
1008
- if(_initData.properties->getPropertyAsIntWithDefault("Ice.PrintStackTraces", 1) == 0)
1009
- {
1010
- IceUtilInternal::printStackTraces = false;
1011
- }
1012
- #endif
1013
-
1014
- #ifndef _WIN32
1015
- string newUser = _initData.properties->getProperty("Ice.ChangeUser");
1016
- if(!newUser.empty())
1017
- {
1018
- struct passwd pwbuf;
1019
- vector<char> buffer(4096); // 4KB initial buffer
1020
- struct passwd *pw;
1021
- int err;
1022
- while((err = getpwnam_r(newUser.c_str(), &pwbuf, &buffer[0], buffer.size(), &pw)) == ERANGE &&
1023
- buffer.size() < 1024 * 1024) // Limit buffer to 1M
1024
- {
1025
- buffer.resize(buffer.size() * 2);
1026
- }
1027
- if(err != 0)
1028
- {
1029
- throw Ice::SyscallException(__FILE__, __LINE__, err);
1030
- }
1031
- else if(pw == 0)
1032
- {
1033
- throw InitializationException(__FILE__, __LINE__, "unknown user account `" + newUser + "'");
1034
- }
1035
-
1036
- if(setgid(pw->pw_gid) == -1)
1037
- {
1038
- throw SyscallException(__FILE__, __LINE__, getSystemErrno());
1039
- }
1040
-
1041
- if(initgroups(pw->pw_name, static_cast<int>(pw->pw_gid)) == -1)
1042
- {
1043
- throw SyscallException(__FILE__, __LINE__, getSystemErrno());
1044
- }
1045
-
1046
- if(setuid(pw->pw_uid) == -1)
1047
- {
1048
- throw SyscallException(__FILE__, __LINE__, getSystemErrno());
1049
- }
1050
- }
1051
- #endif
1052
- oneOfDone = true;
1053
- }
1054
-
1055
- if(instanceCount() == 1)
1056
- {
1057
- #if defined(_WIN32) && !defined(ICE_OS_UWP)
1058
- WORD version = MAKEWORD(1, 1);
1059
- WSADATA data;
1060
- if(WSAStartup(version, &data) != 0)
1061
- {
1062
- throw SocketException(__FILE__, __LINE__, getSocketErrno());
1063
- }
1064
- #endif
1065
-
1066
- #ifndef _WIN32
1067
- struct sigaction action;
1068
- action.sa_handler = SIG_IGN;
1069
- sigemptyset(&action.sa_mask);
1070
- action.sa_flags = 0;
1071
- sigaction(SIGPIPE, &action, &oldAction);
1072
- if(_initData.properties->getPropertyAsInt("Ice.UseSyslog") > 0)
1073
- {
1074
- identForOpenlog = _initData.properties->getProperty("Ice.ProgramName");
1075
- if(identForOpenlog.empty())
1076
- {
1077
- identForOpenlog = "<Unknown Ice Program>";
1078
- }
1079
- openlog(identForOpenlog.c_str(), LOG_PID, LOG_USER);
1080
- }
1081
- #else
1082
- logStdErrConvert =
1083
- _initData.properties->getPropertyAsIntWithDefault("Ice.LogStdErr.Convert", 1) > 0 &&
1084
- _initData.properties->getProperty("Ice.StdErr").empty();
1085
- #endif
1086
- }
1087
- }
1088
-
1089
- if(!_initData.logger)
1090
- {
1091
- string logfile = _initData.properties->getProperty("Ice.LogFile");
1092
- #ifndef _WIN32
1093
- if(_initData.properties->getPropertyAsInt("Ice.UseSyslog") > 0)
1094
- {
1095
- if(!logfile.empty())
1096
- {
1097
- throw InitializationException(__FILE__, __LINE__, "Both syslog and file logger cannot be enabled.");
1098
- }
1099
-
1100
- _initData.logger = ICE_MAKE_SHARED(SysLoggerI,
1101
- _initData.properties->getProperty("Ice.ProgramName"),
1102
- _initData.properties->getPropertyWithDefault("Ice.SyslogFacility", "LOG_USER"));
1103
- }
1104
- else
1105
- #endif
1106
-
1107
- #ifdef ICE_SWIFT
1108
- if(!_initData.logger && _initData.properties->getPropertyAsInt("Ice.UseOSLog") > 0)
1109
- {
1110
- _initData.logger = ICE_MAKE_SHARED(OSLogLoggerI,
1111
- _initData.properties->getProperty("Ice.ProgramName"));
1112
- }
1113
- else
1114
- #endif
1115
-
1116
- #ifdef ICE_USE_SYSTEMD
1117
- if(_initData.properties->getPropertyAsInt("Ice.UseSystemdJournal") > 0)
1118
- {
1119
- _initData.logger = ICE_MAKE_SHARED(SystemdJournalI,
1120
- _initData.properties->getProperty("Ice.ProgramName"));
1121
- }
1122
- else
1123
- #endif
1124
- if(!logfile.empty())
1125
- {
1126
- Int sz = _initData.properties->getPropertyAsIntWithDefault("Ice.LogFile.SizeMax", 0);
1127
- if(sz < 0)
1128
- {
1129
- sz = 0;
1130
- }
1131
- _initData.logger = ICE_MAKE_SHARED(LoggerI, _initData.properties->getProperty("Ice.ProgramName"),
1132
- logfile, true, static_cast<size_t>(sz));
1133
- }
1134
- else
1135
- {
1136
- _initData.logger = getProcessLogger();
1137
- if(ICE_DYNAMIC_CAST(LoggerI, _initData.logger))
1138
- {
1139
- _initData.logger = ICE_MAKE_SHARED(LoggerI, _initData.properties->getProperty("Ice.ProgramName"), "", logStdErrConvert);
1140
- }
1141
- }
1142
- }
1143
-
1144
- const_cast<TraceLevelsPtr&>(_traceLevels) = new TraceLevels(_initData.properties);
1145
-
1146
- const_cast<DefaultsAndOverridesPtr&>(_defaultsAndOverrides) =
1147
- new DefaultsAndOverrides(_initData.properties, _initData.logger);
1148
-
1149
- const ACMConfig defaultClientACM(_initData.properties, _initData.logger, "Ice.ACM", ACMConfig(false));
1150
- const ACMConfig defaultServerACM(_initData.properties, _initData.logger, "Ice.ACM", ACMConfig(true));
1151
-
1152
- const_cast<ACMConfig&>(_clientACM) = ACMConfig(_initData.properties,
1153
- _initData.logger,
1154
- "Ice.ACM.Client",
1155
- defaultClientACM);
1156
-
1157
- const_cast<ACMConfig&>(_serverACM) = ACMConfig(_initData.properties,
1158
- _initData.logger,
1159
- "Ice.ACM.Server",
1160
- defaultServerACM);
1161
-
1162
- {
1163
- static const int defaultMessageSizeMax = 1024;
1164
- Int num = _initData.properties->getPropertyAsIntWithDefault("Ice.MessageSizeMax", defaultMessageSizeMax);
1165
- if(num < 1 || static_cast<size_t>(num) > static_cast<size_t>(0x7fffffff / 1024))
1166
- {
1167
- const_cast<size_t&>(_messageSizeMax) = static_cast<size_t>(0x7fffffff);
1168
- }
1169
- else
1170
- {
1171
- // Property is in kilobytes, _messageSizeMax in bytes.
1172
- const_cast<size_t&>(_messageSizeMax) = static_cast<size_t>(num) * 1024;
1173
- }
1174
- }
1175
-
1176
- if(_initData.properties->getProperty("Ice.BatchAutoFlushSize").empty() &&
1177
- !_initData.properties->getProperty("Ice.BatchAutoFlush").empty())
1178
- {
1179
- if(_initData.properties->getPropertyAsInt("Ice.BatchAutoFlush") > 0)
1180
- {
1181
- const_cast<size_t&>(_batchAutoFlushSize) = _messageSizeMax;
1182
- }
1183
- }
1184
- else
1185
- {
1186
- Int num = _initData.properties->getPropertyAsIntWithDefault("Ice.BatchAutoFlushSize", 1024); // 1MB default
1187
- if(num < 1)
1188
- {
1189
- const_cast<size_t&>(_batchAutoFlushSize) = static_cast<size_t>(num);
1190
- }
1191
- else if(static_cast<size_t>(num) > static_cast<size_t>(0x7fffffff / 1024))
1192
- {
1193
- const_cast<size_t&>(_batchAutoFlushSize) = static_cast<size_t>(0x7fffffff);
1194
- }
1195
- else
1196
- {
1197
- // Property is in kilobytes, convert in bytes.
1198
- const_cast<size_t&>(_batchAutoFlushSize) = static_cast<size_t>(num) * 1024;
1199
- }
1200
- }
1201
-
1202
- {
1203
- static const int defaultValue = 100;
1204
- Int num = _initData.properties->getPropertyAsIntWithDefault("Ice.ClassGraphDepthMax", defaultValue);
1205
- if(num < 1 || static_cast<size_t>(num) > static_cast<size_t>(0x7fffffff))
1206
- {
1207
- const_cast<size_t&>(_classGraphDepthMax) = static_cast<size_t>(0x7fffffff);
1208
- }
1209
- else
1210
- {
1211
- const_cast<size_t&>(_classGraphDepthMax) = static_cast<size_t>(num);
1212
- }
1213
- }
1214
-
1215
- const_cast<bool&>(_collectObjects) = _initData.properties->getPropertyAsInt("Ice.CollectObjects") > 0;
1216
-
1217
- string toStringModeStr = _initData.properties->getPropertyWithDefault("Ice.ToStringMode", "Unicode");
1218
- if(toStringModeStr == "ASCII")
1219
- {
1220
- const_cast<ToStringMode&>(_toStringMode) = ICE_ENUM(ToStringMode, ASCII);
1221
- }
1222
- else if(toStringModeStr == "Compat")
1223
- {
1224
- const_cast<ToStringMode&>(_toStringMode) = ICE_ENUM(ToStringMode, Compat);
1225
- }
1226
- else if(toStringModeStr != "Unicode")
1227
- {
1228
- throw InitializationException(__FILE__, __LINE__, "The value for Ice.ToStringMode must be Unicode, ASCII or Compat");
1229
- }
1230
-
1231
- const_cast<bool&>(_acceptClassCycles) = _initData.properties->getPropertyAsInt("Ice.AcceptClassCycles") > 0;
1232
-
1233
- const_cast<ImplicitContextIPtr&>(_implicitContext) =
1234
- ImplicitContextI::create(_initData.properties->getProperty("Ice.ImplicitContext"));
1235
-
1236
- _routerManager = new RouterManager;
1237
-
1238
- _locatorManager = new LocatorManager(_initData.properties);
1239
-
1240
- _referenceFactory = new ReferenceFactory(this, communicator);
1241
-
1242
- _requestHandlerFactory = new RequestHandlerFactory(this);
1243
-
1244
- _proxyFactory = new ProxyFactory(this);
1245
-
1246
- const bool isIPv6Supported = IceInternal::isIPv6Supported();
1247
- const bool ipv4 = _initData.properties->getPropertyAsIntWithDefault("Ice.IPv4", 1) > 0;
1248
- const bool ipv6 = _initData.properties->getPropertyAsIntWithDefault("Ice.IPv6", isIPv6Supported ? 1 : 0) > 0;
1249
- if(!ipv4 && !ipv6)
1250
- {
1251
- throw InitializationException(__FILE__, __LINE__, "Both IPV4 and IPv6 support cannot be disabled.");
1252
- }
1253
- else if(ipv4 && ipv6)
1254
- {
1255
- _protocolSupport = EnableBoth;
1256
- }
1257
- else if(ipv4)
1258
- {
1259
- _protocolSupport = EnableIPv4;
1260
- }
1261
- else
1262
- {
1263
- _protocolSupport = EnableIPv6;
1264
- }
1265
- _preferIPv6 = _initData.properties->getPropertyAsInt("Ice.PreferIPv6Address") > 0;
1266
-
1267
- _networkProxy = IceInternal::createNetworkProxy(_initData.properties, _protocolSupport);
1268
-
1269
- _endpointFactoryManager = new EndpointFactoryManager(this);
1270
-
1271
- _dynamicLibraryList = new DynamicLibraryList;
1272
-
1273
- _pluginManager = ICE_MAKE_SHARED(PluginManagerI, communicator, _dynamicLibraryList);
1274
-
1275
- if(!_initData.valueFactoryManager)
1276
- {
1277
- _initData.valueFactoryManager = ICE_MAKE_SHARED(ValueFactoryManagerI);
1278
- }
1279
-
1280
- _objectFactoryMapHint = _objectFactoryMap.end();
1281
-
1282
- _outgoingConnectionFactory = new OutgoingConnectionFactory(communicator, this);
1283
-
1284
- _objectAdapterFactory = ICE_MAKE_SHARED(ObjectAdapterFactory, this, communicator);
1285
-
1286
- _retryQueue = new RetryQueue(this);
1287
-
1288
- __setNoDelete(false);
1289
- }
1290
- catch(...)
1291
- {
1292
- {
1293
- IceUtilInternal::MutexPtrLock<IceUtil::Mutex> sync(staticMutex);
1294
- instanceList->remove(this);
1295
- }
1296
- destroy();
1297
- __setNoDelete(false);
1298
- throw;
1299
- }
1300
- }
1301
-
1302
- IceInternal::Instance::~Instance()
1303
- {
1304
- assert(_state == StateDestroyed);
1305
- assert(!_referenceFactory);
1306
- assert(!_proxyFactory);
1307
- assert(!_outgoingConnectionFactory);
1308
-
1309
- assert(!_objectAdapterFactory);
1310
- assert(!_clientThreadPool);
1311
- assert(!_serverThreadPool);
1312
- assert(!_endpointHostResolver);
1313
- assert(!_retryQueue);
1314
- assert(!_timer);
1315
- assert(!_routerManager);
1316
- assert(!_locatorManager);
1317
- assert(!_endpointFactoryManager);
1318
- assert(!_dynamicLibraryList);
1319
- assert(!_pluginManager);
1320
-
1321
- IceUtilInternal::MutexPtrLock<IceUtil::Mutex> sync(staticMutex);
1322
- if(instanceList != 0)
1323
- {
1324
- instanceList->remove(this);
1325
- }
1326
- if(instanceCount() == 0)
1327
- {
1328
- #if defined(_WIN32) && !defined(ICE_OS_UWP)
1329
- WSACleanup();
1330
- #endif
1331
-
1332
- #ifndef _WIN32
1333
- sigaction(SIGPIPE, &oldAction, 0);
1334
-
1335
- if(!identForOpenlog.empty())
1336
- {
1337
- closelog();
1338
- identForOpenlog.clear();
1339
- }
1340
- #endif
1341
- }
1342
- }
1343
-
1344
- void
1345
- IceInternal::Instance::finishSetup(int& argc, const char* argv[], const Ice::CommunicatorPtr& communicator)
1346
- {
1347
- //
1348
- // Load plug-ins.
1349
- //
1350
- assert(!_serverThreadPool);
1351
- PluginManagerI* pluginManagerImpl = dynamic_cast<PluginManagerI*>(_pluginManager.get());
1352
- assert(pluginManagerImpl);
1353
- pluginManagerImpl->loadPlugins(argc, argv);
1354
-
1355
- //
1356
- // Initialize the endpoint factories once all the plugins are loaded. This gives
1357
- // the opportunity for the endpoint factories to find underyling factories.
1358
- //
1359
- _endpointFactoryManager->initialize();
1360
-
1361
- //
1362
- // Reset _stringConverter and _wstringConverter, in case a plugin changed them
1363
- //
1364
- _stringConverter = Ice::getProcessStringConverter();
1365
- _wstringConverter = Ice::getProcessWstringConverter();
1366
-
1367
- //
1368
- // Create Admin facets, if enabled.
1369
- //
1370
- // Note that any logger-dependent admin facet must be created after we load all plugins,
1371
- // since one of these plugins can be a Logger plugin that sets a new logger during loading
1372
- //
1373
-
1374
- if(_initData.properties->getProperty("Ice.Admin.Enabled") == "")
1375
- {
1376
- _adminEnabled = _initData.properties->getProperty("Ice.Admin.Endpoints") != "";
1377
- }
1378
- else
1379
- {
1380
- _adminEnabled = _initData.properties->getPropertyAsInt("Ice.Admin.Enabled") > 0;
1381
- }
1382
-
1383
- StringSeq facetSeq = _initData.properties->getPropertyAsList("Ice.Admin.Facets");
1384
- if(!facetSeq.empty())
1385
- {
1386
- _adminFacetFilter.insert(facetSeq.begin(), facetSeq.end());
1387
- }
1388
-
1389
- if(_adminEnabled)
1390
- {
1391
- //
1392
- // Process facet
1393
- //
1394
- const string processFacetName = "Process";
1395
- if(_adminFacetFilter.empty() || _adminFacetFilter.find(processFacetName) != _adminFacetFilter.end())
1396
- {
1397
- _adminFacets.insert(make_pair(processFacetName, ICE_MAKE_SHARED(ProcessI, communicator)));
1398
- }
1399
-
1400
- //
1401
- // Logger facet
1402
- //
1403
- const string loggerFacetName = "Logger";
1404
- if(_adminFacetFilter.empty() || _adminFacetFilter.find(loggerFacetName) != _adminFacetFilter.end())
1405
- {
1406
- LoggerAdminLoggerPtr logger = createLoggerAdminLogger(_initData.properties, _initData.logger);
1407
- setLogger(logger);
1408
- _adminFacets.insert(make_pair(loggerFacetName, logger->getFacet()));
1409
- }
1410
-
1411
- //
1412
- // Properties facet
1413
- //
1414
- const string propertiesFacetName = "Properties";
1415
- PropertiesAdminIPtr propsAdmin;
1416
- if(_adminFacetFilter.empty() || _adminFacetFilter.find(propertiesFacetName) != _adminFacetFilter.end())
1417
- {
1418
- propsAdmin = ICE_MAKE_SHARED(PropertiesAdminI, this);
1419
- _adminFacets.insert(make_pair(propertiesFacetName, propsAdmin));
1420
- }
1421
-
1422
- //
1423
- // Metrics facet
1424
- //
1425
- const string metricsFacetName = "Metrics";
1426
- if(_adminFacetFilter.empty() || _adminFacetFilter.find(metricsFacetName) != _adminFacetFilter.end())
1427
- {
1428
- CommunicatorObserverIPtr observer = ICE_MAKE_SHARED(CommunicatorObserverI, _initData);
1429
- _initData.observer = observer;
1430
- _adminFacets.insert(make_pair(metricsFacetName, observer->getFacet()));
1431
-
1432
- //
1433
- // Make sure the metrics admin facet receives property updates.
1434
- //
1435
- if(propsAdmin)
1436
- {
1437
- #ifdef ICE_CPP11_MAPPING
1438
- auto metricsAdmin = observer->getFacet();
1439
- propsAdmin->addUpdateCallback(
1440
- [metricsAdmin](const PropertyDict& changes) { metricsAdmin->updated(changes); });
1441
- #else
1442
- propsAdmin->addUpdateCallback(observer->getFacet());
1443
- #endif
1444
- }
1445
- }
1446
- }
1447
-
1448
- //
1449
- // Set observer updater
1450
- //
1451
- if(_initData.observer)
1452
- {
1453
- _initData.observer->setObserverUpdater(ICE_MAKE_SHARED(ObserverUpdaterI, this));
1454
- }
1455
-
1456
- //
1457
- // Create threads.
1458
- //
1459
- try
1460
- {
1461
- bool hasPriority = _initData.properties->getProperty("Ice.ThreadPriority") != "";
1462
- int priority = _initData.properties->getPropertyAsInt("Ice.ThreadPriority");
1463
- if(hasPriority)
1464
- {
1465
- _timer = new Timer(priority);
1466
- }
1467
- else
1468
- {
1469
- _timer = new Timer;
1470
- }
1471
- }
1472
- catch(const IceUtil::Exception& ex)
1473
- {
1474
- Error out(_initData.logger);
1475
- out << "cannot create thread for timer:\n" << ex;
1476
- throw;
1477
- }
1478
-
1479
- try
1480
- {
1481
- _endpointHostResolver = new EndpointHostResolver(this);
1482
- #ifndef ICE_OS_UWP
1483
- bool hasPriority = _initData.properties->getProperty("Ice.ThreadPriority") != "";
1484
- int priority = _initData.properties->getPropertyAsInt("Ice.ThreadPriority");
1485
- if(hasPriority)
1486
- {
1487
- _endpointHostResolver->start(0, priority);
1488
- }
1489
- else
1490
- {
1491
- _endpointHostResolver->start();
1492
- }
1493
- #endif
1494
- }
1495
- catch(const IceUtil::Exception& ex)
1496
- {
1497
- Error out(_initData.logger);
1498
- out << "cannot create thread for endpoint host resolver:\n" << ex;
1499
- throw;
1500
- }
1501
-
1502
- _clientThreadPool = new ThreadPool(this, "Ice.ThreadPool.Client", 0);
1503
-
1504
- //
1505
- // The default router/locator may have been set during the loading of plugins.
1506
- // Therefore we make sure it is not already set before checking the property.
1507
- //
1508
- if(!_referenceFactory->getDefaultRouter())
1509
- {
1510
- RouterPrxPtr router = ICE_UNCHECKED_CAST(RouterPrx, _proxyFactory->propertyToProxy("Ice.Default.Router"));
1511
- if(router)
1512
- {
1513
- _referenceFactory = _referenceFactory->setDefaultRouter(router);
1514
- }
1515
- }
1516
-
1517
- if(!_referenceFactory->getDefaultLocator())
1518
- {
1519
- LocatorPrxPtr locator = ICE_UNCHECKED_CAST(LocatorPrx, _proxyFactory->propertyToProxy("Ice.Default.Locator"));
1520
- if(locator)
1521
- {
1522
- _referenceFactory = _referenceFactory->setDefaultLocator(locator);
1523
- }
1524
- }
1525
-
1526
- //
1527
- // Show process id if requested (but only once).
1528
- //
1529
- bool printProcessId = false;
1530
- if(!printProcessIdDone && _initData.properties->getPropertyAsInt("Ice.PrintProcessId") > 0)
1531
- {
1532
- //
1533
- // Safe double-check locking (no dependent variable!)
1534
- //
1535
- IceUtilInternal::MutexPtrLock<IceUtil::Mutex> sync(staticMutex);
1536
- printProcessId = !printProcessIdDone;
1537
-
1538
- //
1539
- // We anticipate: we want to print it once, and we don't care when.
1540
- //
1541
- printProcessIdDone = true;
1542
- }
1543
-
1544
- if(printProcessId)
1545
- {
1546
- #ifdef _MSC_VER
1547
- consoleOut << GetCurrentProcessId() << endl;
1548
- #else
1549
- consoleOut << getpid() << endl;
1550
- #endif
1551
- }
1552
-
1553
- //
1554
- // Server thread pool initialization is lazy in serverThreadPool().
1555
- //
1556
-
1557
- //
1558
- // An application can set Ice.InitPlugins=0 if it wants to postpone
1559
- // initialization until after it has interacted directly with the
1560
- // plug-ins.
1561
- //
1562
- if(_initData.properties->getPropertyAsIntWithDefault("Ice.InitPlugins", 1) > 0)
1563
- {
1564
- pluginManagerImpl->initializePlugins();
1565
- }
1566
-
1567
- //
1568
- // This must be done last as this call creates the Ice.Admin object adapter
1569
- // and eventually register a process proxy with the Ice locator (allowing
1570
- // remote clients to invoke Admin facets as soon as it's registered).
1571
- //
1572
- // Note: getAdmin here can return 0 and do nothing in the event the
1573
- // application set Ice.Admin.Enabled but did not set Ice.Admin.Enpoints
1574
- // and one or more of the properties required to create the Admin object.
1575
- //
1576
- if(_adminEnabled && _initData.properties->getPropertyAsIntWithDefault("Ice.Admin.DelayCreation", 0) <= 0)
1577
- {
1578
- getAdmin();
1579
- }
1580
- }
1581
-
1582
- void
1583
- IceInternal::Instance::destroy()
1584
- {
1585
- {
1586
- Lock sync(*this);
1587
-
1588
- //
1589
- // If destroy is in progress, wait for it to be done. This is
1590
- // necessary in case destroy() is called concurrently by
1591
- // multiple threads.
1592
- //
1593
- while(_state == StateDestroyInProgress)
1594
- {
1595
- wait();
1596
- }
1597
-
1598
- if(_state == StateDestroyed)
1599
- {
1600
- return;
1601
- }
1602
- _state = StateDestroyInProgress;
1603
- }
1604
-
1605
- //
1606
- // Shutdown and destroy all the incoming and outgoing Ice
1607
- // connections and wait for the connections to be finished.
1608
- //
1609
- if(_objectAdapterFactory)
1610
- {
1611
- _objectAdapterFactory->shutdown();
1612
- }
1613
-
1614
- if(_outgoingConnectionFactory)
1615
- {
1616
- _outgoingConnectionFactory->destroy();
1617
- }
1618
-
1619
- if(_objectAdapterFactory)
1620
- {
1621
- _objectAdapterFactory->destroy();
1622
- }
1623
-
1624
- if(_outgoingConnectionFactory)
1625
- {
1626
- _outgoingConnectionFactory->waitUntilFinished();
1627
- }
1628
-
1629
- if(_retryQueue)
1630
- {
1631
- _retryQueue->destroy(); // Must be called before destroying thread pools.
1632
- }
1633
-
1634
- if(_initData.observer)
1635
- {
1636
- CommunicatorObserverIPtr observer = ICE_DYNAMIC_CAST(CommunicatorObserverI, _initData.observer);
1637
- if(observer)
1638
- {
1639
- observer->destroy(); // Break cyclic reference counts. Don't clear _observer, it's immutable.
1640
- }
1641
- _initData.observer->setObserverUpdater(0); // Break cyclic reference count.
1642
- }
1643
-
1644
- LoggerAdminLoggerPtr logger = ICE_DYNAMIC_CAST(LoggerAdminLogger, _initData.logger);
1645
- if(logger)
1646
- {
1647
- //
1648
- // This only disables the remote logging; we don't set or reset _initData.logger
1649
- //
1650
- logger->destroy();
1651
- }
1652
-
1653
- //
1654
- // Now, destroy the thread pools. This must be done *only* after
1655
- // all the connections are finished (the connections destruction
1656
- // can require invoking callbacks with the thread pools).
1657
- //
1658
- if(_serverThreadPool)
1659
- {
1660
- _serverThreadPool->destroy();
1661
- }
1662
- if(_clientThreadPool)
1663
- {
1664
- _clientThreadPool->destroy();
1665
- }
1666
- if(_endpointHostResolver)
1667
- {
1668
- _endpointHostResolver->destroy();
1669
- }
1670
- if(_timer)
1671
- {
1672
- _timer->destroy();
1673
- }
1674
-
1675
- //
1676
- // Wait for all the threads to be finished.
1677
- //
1678
- if(_clientThreadPool)
1679
- {
1680
- _clientThreadPool->joinWithAllThreads();
1681
- }
1682
- if(_serverThreadPool)
1683
- {
1684
- _serverThreadPool->joinWithAllThreads();
1685
- }
1686
- #ifndef ICE_OS_UWP
1687
- if(_endpointHostResolver)
1688
- {
1689
- _endpointHostResolver->getThreadControl().join();
1690
- }
1691
- #endif
1692
-
1693
- #ifdef ICE_CPP11_COMPILER
1694
- for(const auto& p : _objectFactoryMap)
1695
- {
1696
- p.second->destroy();
1697
- }
1698
- #else
1699
- for_each(_objectFactoryMap.begin(), _objectFactoryMap.end(),
1700
- Ice::secondVoidMemFun<const string, ObjectFactory>(&ObjectFactory::destroy));
1701
- #endif
1702
- _objectFactoryMap.clear();
1703
-
1704
- if(_routerManager)
1705
- {
1706
- _routerManager->destroy();
1707
- }
1708
-
1709
- if(_locatorManager)
1710
- {
1711
- _locatorManager->destroy();
1712
- }
1713
-
1714
- if(_endpointFactoryManager)
1715
- {
1716
- _endpointFactoryManager->destroy();
1717
- }
1718
-
1719
- if(_initData.properties->getPropertyAsInt("Ice.Warn.UnusedProperties") > 0)
1720
- {
1721
- set<string> unusedProperties = static_cast<PropertiesI*>(_initData.properties.get())->getUnusedProperties();
1722
- if(unusedProperties.size() != 0)
1723
- {
1724
- Warning out(_initData.logger);
1725
- out << "The following properties were set but never read:";
1726
- for(set<string>::const_iterator p = unusedProperties.begin(); p != unusedProperties.end(); ++p)
1727
- {
1728
- out << "\n " << *p;
1729
- }
1730
- }
1731
- }
1732
-
1733
- //
1734
- // Destroy last so that a Logger plugin can receive all log/traces before its destruction.
1735
- //
1736
- if(_pluginManager)
1737
- {
1738
- _pluginManager->destroy();
1739
- }
1740
-
1741
- {
1742
- Lock sync(*this);
1743
-
1744
- _objectAdapterFactory = 0;
1745
- _outgoingConnectionFactory = 0;
1746
- _retryQueue = 0;
1747
-
1748
- _serverThreadPool = 0;
1749
- _clientThreadPool = 0;
1750
- _endpointHostResolver = 0;
1751
- _timer = 0;
1752
-
1753
- _referenceFactory = 0;
1754
- _requestHandlerFactory = 0;
1755
- _proxyFactory = 0;
1756
- _routerManager = 0;
1757
- _locatorManager = 0;
1758
- _endpointFactoryManager = 0;
1759
- _pluginManager = 0;
1760
- _dynamicLibraryList = 0;
1761
-
1762
- _adminAdapter = 0;
1763
- _adminFacets.clear();
1764
-
1765
- _state = StateDestroyed;
1766
- notifyAll();
1767
- }
1768
- }
1769
-
1770
- void
1771
- IceInternal::Instance::updateConnectionObservers()
1772
- {
1773
- try
1774
- {
1775
- assert(_outgoingConnectionFactory);
1776
- _outgoingConnectionFactory->updateConnectionObservers();
1777
- assert(_objectAdapterFactory);
1778
- _objectAdapterFactory->updateObservers(&ObjectAdapterI::updateConnectionObservers);
1779
- }
1780
- catch(const Ice::CommunicatorDestroyedException&)
1781
- {
1782
- }
1783
- }
1784
-
1785
- void
1786
- IceInternal::Instance::updateThreadObservers()
1787
- {
1788
- try
1789
- {
1790
- if(_clientThreadPool)
1791
- {
1792
- _clientThreadPool->updateObservers();
1793
- }
1794
- if(_serverThreadPool)
1795
- {
1796
- _serverThreadPool->updateObservers();
1797
- }
1798
- assert(_objectAdapterFactory);
1799
- _objectAdapterFactory->updateObservers(&ObjectAdapterI::updateThreadObservers);
1800
- if(_endpointHostResolver)
1801
- {
1802
- _endpointHostResolver->updateObserver();
1803
- }
1804
- if(_timer)
1805
- {
1806
- _timer->updateObserver(_initData.observer);
1807
- }
1808
- }
1809
- catch(const Ice::CommunicatorDestroyedException&)
1810
- {
1811
- }
1812
- }
1813
-
1814
- BufSizeWarnInfo
1815
- IceInternal::Instance::getBufSizeWarn(Short type)
1816
- {
1817
- IceUtil::Mutex::Lock lock(_setBufSizeWarnMutex);
1818
-
1819
- return getBufSizeWarnInternal(type);
1820
- }
1821
-
1822
- BufSizeWarnInfo
1823
- IceInternal::Instance::getBufSizeWarnInternal(Short type)
1824
- {
1825
- BufSizeWarnInfo info;
1826
- map<Short, BufSizeWarnInfo>::iterator p = _setBufSizeWarn.find(type);
1827
- if(p == _setBufSizeWarn.end())
1828
- {
1829
- info.sndWarn = false;
1830
- info.sndSize = -1;
1831
- info.rcvWarn = false;
1832
- info.rcvSize = -1;
1833
- _setBufSizeWarn.insert(make_pair(type, info));
1834
- }
1835
- else
1836
- {
1837
- info = p->second;
1838
- }
1839
- return info;
1840
- }
1841
-
1842
- void
1843
- IceInternal::Instance::setSndBufSizeWarn(Short type, int size)
1844
- {
1845
- IceUtil::Mutex::Lock lock(_setBufSizeWarnMutex);
1846
-
1847
- BufSizeWarnInfo info = getBufSizeWarnInternal(type);
1848
- info.sndWarn = true;
1849
- info.sndSize = size;
1850
- _setBufSizeWarn[type] = info;
1851
- }
1852
-
1853
- void
1854
- IceInternal::Instance::setRcvBufSizeWarn(Short type, int size)
1855
- {
1856
- IceUtil::Mutex::Lock lock(_setBufSizeWarnMutex);
1857
-
1858
- BufSizeWarnInfo info = getBufSizeWarnInternal(type);
1859
- info.rcvWarn = true;
1860
- info.rcvSize = size;
1861
- _setBufSizeWarn[type] = info;
1862
- }
1863
-
1864
- void
1865
- IceInternal::Instance::addObjectFactory(const Ice::ObjectFactoryPtr& factory, const string& id)
1866
- {
1867
- Lock sync(*this);
1868
-
1869
- //
1870
- // Create a ValueFactory wrapper around the given ObjectFactory and register the wrapper
1871
- // with the value factory manager. This may raise AlreadyRegisteredException.
1872
- //
1873
- #ifdef ICE_CPP11_MAPPING
1874
- _initData.valueFactoryManager->add([factory](const string& ident)
1875
- {
1876
- return factory->create(ident);
1877
- },
1878
- id);
1879
- #else
1880
- class ValueFactoryWrapper: public Ice::ValueFactory
1881
- {
1882
- public:
1883
-
1884
- ValueFactoryWrapper(const Ice::ObjectFactoryPtr& factory) : _objectFactory(factory)
1885
- {
1886
- }
1887
-
1888
- Ice::ValuePtr create(const std::string& id)
1889
- {
1890
- return _objectFactory->create(id);
1891
- }
1892
-
1893
- private:
1894
-
1895
- Ice::ObjectFactoryPtr _objectFactory;
1896
- };
1897
-
1898
- _initData.valueFactoryManager->add(new ValueFactoryWrapper(factory), id);
1899
- #endif
1900
-
1901
- //
1902
- // Also record the object factory in our own map.
1903
- //
1904
- _objectFactoryMapHint = _objectFactoryMap.insert(_objectFactoryMapHint,
1905
- pair<const string, Ice::ObjectFactoryPtr>(id, factory));
1906
- }
1907
-
1908
- Ice::ObjectFactoryPtr
1909
- IceInternal::Instance::findObjectFactory(const string& id) const
1910
- {
1911
- Lock sync(*this);
1912
-
1913
- ObjectFactoryMap& objectfactoryMap = const_cast<ObjectFactoryMap&>(_objectFactoryMap);
1914
-
1915
- ObjectFactoryMap::iterator p = objectfactoryMap.end();
1916
- if(_objectFactoryMapHint != objectfactoryMap.end())
1917
- {
1918
- if(_objectFactoryMapHint->first == id)
1919
- {
1920
- p = _objectFactoryMapHint;
1921
- }
1922
- }
1923
-
1924
- if(p == objectfactoryMap.end())
1925
- {
1926
- p = objectfactoryMap.find(id);
1927
- }
1928
-
1929
- if(p != objectfactoryMap.end())
1930
- {
1931
- _objectFactoryMapHint = p;
1932
- return p->second;
1933
- }
1934
- else
1935
- {
1936
- return ICE_NULLPTR;
1937
- }
1938
- }
1939
-
1940
- IceInternal::ProcessI::ProcessI(const CommunicatorPtr& communicator) :
1941
- _communicator(communicator)
1942
- {
1943
- }
1944
-
1945
- void
1946
- IceInternal::ProcessI::shutdown(const Current&)
1947
- {
1948
- _communicator->shutdown();
1949
- }
1950
-
1951
- void
1952
- #ifdef ICE_CPP11_MAPPING
1953
- IceInternal::ProcessI::writeMessage(string message, Int fd, const Current&)
1954
- #else
1955
- IceInternal::ProcessI::writeMessage(const string& message, Int fd, const Current&)
1956
- #endif
1957
- {
1958
- switch(fd)
1959
- {
1960
- case 1:
1961
- {
1962
- consoleOut << message << endl;
1963
- break;
1964
- }
1965
- case 2:
1966
- {
1967
- consoleErr << message << endl;
1968
- break;
1969
- }
1970
- }
1971
- }