zeroc-ice 3.7.10 → 3.8.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (1216) hide show
  1. checksums.yaml +4 -4
  2. data/dist/IceRuby/Communicator.cpp +575 -0
  3. data/dist/IceRuby/Communicator.h +19 -0
  4. data/dist/IceRuby/Config.h +77 -0
  5. data/dist/IceRuby/Connection.cpp +428 -0
  6. data/dist/IceRuby/Connection.h +20 -0
  7. data/dist/IceRuby/DefaultSliceLoader.cpp +45 -0
  8. data/dist/IceRuby/DefaultSliceLoader.h +25 -0
  9. data/dist/IceRuby/Endpoint.cpp +342 -0
  10. data/dist/IceRuby/Endpoint.h +18 -0
  11. data/dist/IceRuby/ImplicitContext.cpp +143 -0
  12. data/dist/IceRuby/ImplicitContext.h +16 -0
  13. data/dist/IceRuby/Init.cpp +36 -0
  14. data/dist/IceRuby/Logger.cpp +146 -0
  15. data/dist/IceRuby/Logger.h +19 -0
  16. data/dist/IceRuby/Operation.cpp +623 -0
  17. data/dist/IceRuby/Operation.h +28 -0
  18. data/dist/IceRuby/Properties.cpp +413 -0
  19. data/dist/IceRuby/Properties.h +16 -0
  20. data/dist/IceRuby/Proxy.cpp +926 -0
  21. data/dist/IceRuby/Proxy.h +21 -0
  22. data/dist/IceRuby/RubySliceLoader.cpp +39 -0
  23. data/dist/IceRuby/RubySliceLoader.h +27 -0
  24. data/dist/IceRuby/Slice.cpp +199 -0
  25. data/dist/IceRuby/Slice.h +13 -0
  26. data/dist/IceRuby/Types.cpp +3133 -0
  27. data/dist/IceRuby/Types.h +533 -0
  28. data/dist/IceRuby/Util.cpp +553 -0
  29. data/dist/IceRuby/Util.h +485 -0
  30. data/dist/ice/cpp/include/Ice/AsyncResponseHandler.h +85 -0
  31. data/dist/ice/cpp/include/Ice/BatchRequest.h +39 -0
  32. data/dist/ice/cpp/include/Ice/BatchRequestQueueF.h +14 -0
  33. data/dist/ice/cpp/include/Ice/Buffer.h +159 -0
  34. data/dist/ice/cpp/include/Ice/Communicator.h +411 -0
  35. data/dist/ice/cpp/include/Ice/CommunicatorF.h +16 -0
  36. data/dist/ice/cpp/include/Ice/Config.h +60 -0
  37. data/dist/ice/cpp/include/Ice/Connection.h +410 -0
  38. data/dist/ice/cpp/include/Ice/ConnectionF.h +36 -0
  39. data/dist/ice/cpp/include/Ice/ConnectionIF.h +16 -0
  40. data/dist/ice/cpp/include/Ice/CtrlCHandler.h +56 -0
  41. data/dist/ice/cpp/include/Ice/Current.h +60 -0
  42. data/dist/ice/cpp/include/Ice/DefaultSliceLoader.h +160 -0
  43. data/dist/ice/cpp/include/Ice/Demangle.h +17 -0
  44. data/dist/ice/cpp/include/Ice/Endpoint.h +298 -0
  45. data/dist/ice/cpp/include/Ice/EndpointF.h +44 -0
  46. data/dist/ice/cpp/include/Ice/EndpointSelectionType.h +21 -0
  47. data/dist/ice/cpp/include/Ice/Exception.h +56 -0
  48. data/dist/ice/cpp/include/Ice/FacetMap.h +16 -0
  49. data/dist/ice/cpp/include/Ice/Format.h +22 -0
  50. data/dist/ice/cpp/include/Ice/Ice.h +60 -0
  51. data/dist/ice/cpp/include/Ice/IconvStringConverter.h +216 -0
  52. data/dist/ice/cpp/include/Ice/ImplicitContext.h +76 -0
  53. data/dist/ice/cpp/include/Ice/IncomingRequest.h +75 -0
  54. data/dist/ice/cpp/include/Ice/Initialize.h +143 -0
  55. data/dist/ice/cpp/include/Ice/InputStream.h +942 -0
  56. data/dist/ice/cpp/include/Ice/InstanceF.h +14 -0
  57. data/dist/ice/cpp/include/Ice/Instrumentation.h +319 -0
  58. data/dist/ice/cpp/include/Ice/LocalException.h +58 -0
  59. data/dist/ice/cpp/include/Ice/LocalExceptions.h +870 -0
  60. data/dist/ice/cpp/include/Ice/Logger.h +62 -0
  61. data/dist/ice/cpp/include/Ice/LoggerUtil.h +162 -0
  62. data/dist/ice/cpp/include/Ice/MarshaledResult.h +50 -0
  63. data/dist/ice/cpp/include/Ice/NativePropertiesAdmin.h +54 -0
  64. data/dist/ice/cpp/include/Ice/Object.h +168 -0
  65. data/dist/ice/cpp/include/Ice/ObjectAdapter.h +324 -0
  66. data/dist/ice/cpp/include/Ice/ObjectAdapterF.h +16 -0
  67. data/dist/ice/cpp/include/Ice/ObjectF.h +16 -0
  68. data/dist/ice/cpp/include/Ice/ObserverHelper.h +164 -0
  69. data/dist/ice/cpp/include/Ice/OutgoingAsync.h +512 -0
  70. data/dist/ice/cpp/include/Ice/OutgoingResponse.h +129 -0
  71. data/dist/ice/cpp/include/Ice/OutputStream.h +872 -0
  72. data/dist/ice/cpp/include/Ice/Plugin.h +73 -0
  73. data/dist/ice/cpp/include/Ice/PluginFactory.h +77 -0
  74. data/dist/ice/cpp/include/Ice/PopDisableWarnings.h +16 -0
  75. data/dist/ice/cpp/include/Ice/Properties.h +307 -0
  76. data/dist/ice/cpp/include/Ice/PropertiesF.h +19 -0
  77. data/dist/ice/cpp/include/Ice/Proxy.h +742 -0
  78. data/dist/ice/cpp/include/Ice/ProxyF.h +11 -0
  79. data/dist/ice/cpp/include/Ice/ProxyFunctions.h +209 -0
  80. data/dist/ice/cpp/include/Ice/PushDisableWarnings.h +29 -0
  81. data/dist/ice/cpp/include/Ice/ReferenceF.h +14 -0
  82. data/dist/ice/cpp/include/Ice/RequestHandlerF.h +20 -0
  83. data/dist/ice/cpp/include/Ice/SSL/ClientAuthenticationOptions.h +268 -0
  84. data/dist/ice/cpp/include/Ice/SSL/Config.h +54 -0
  85. data/dist/ice/cpp/include/Ice/SSL/ConnectionInfo.h +107 -0
  86. data/dist/ice/cpp/include/Ice/SSL/ConnectionInfoF.h +39 -0
  87. data/dist/ice/cpp/include/Ice/SSL/EndpointInfo.h +40 -0
  88. data/dist/ice/cpp/include/Ice/SSL/SSLException.h +32 -0
  89. data/dist/ice/cpp/include/Ice/SSL/ServerAuthenticationOptions.h +278 -0
  90. data/dist/ice/cpp/include/Ice/ServantLocator.h +51 -0
  91. data/dist/ice/cpp/include/Ice/Service.h +219 -0
  92. data/dist/ice/cpp/include/Ice/SliceLoader.h +67 -0
  93. data/dist/ice/cpp/include/Ice/SlicedData.h +125 -0
  94. data/dist/ice/cpp/include/Ice/SlicedDataF.h +30 -0
  95. data/dist/ice/cpp/include/Ice/StreamHelpers.h +652 -0
  96. data/dist/ice/cpp/include/Ice/StreamableTraits.h +291 -0
  97. data/dist/ice/cpp/include/Ice/StringConverter.h +167 -0
  98. data/dist/ice/cpp/include/Ice/StringUtil.h +114 -0
  99. data/dist/ice/cpp/include/Ice/TimerTask.h +24 -0
  100. data/dist/ice/cpp/include/Ice/TupleCompare.h +103 -0
  101. data/dist/ice/cpp/include/Ice/UUID.h +16 -0
  102. data/dist/ice/cpp/include/Ice/UserException.h +46 -0
  103. data/dist/ice/cpp/include/Ice/UserExceptionFactory.h +15 -0
  104. data/dist/ice/cpp/include/Ice/Value.h +127 -0
  105. data/dist/ice/cpp/include/Ice/ValueF.h +16 -0
  106. data/dist/ice/cpp/include/IceDiscovery/IceDiscovery.h +28 -0
  107. data/dist/ice/cpp/include/IceLocatorDiscovery/IceLocatorDiscovery.h +28 -0
  108. data/dist/ice/cpp/include/generated/Ice/BuiltinSequences.h +70 -0
  109. data/dist/ice/cpp/include/generated/Ice/Context.h +40 -0
  110. data/dist/ice/cpp/include/generated/Ice/EndpointTypes.h +74 -0
  111. data/dist/ice/cpp/include/generated/Ice/Identity.h +108 -0
  112. data/dist/ice/cpp/include/generated/Ice/Locator.h +542 -0
  113. data/dist/ice/cpp/include/generated/Ice/LocatorRegistry.h +443 -0
  114. data/dist/ice/cpp/include/generated/Ice/Metrics.h +1103 -0
  115. data/dist/ice/cpp/include/generated/Ice/OperationMode.h +73 -0
  116. data/dist/ice/cpp/include/generated/Ice/Process.h +245 -0
  117. data/dist/ice/cpp/include/generated/Ice/PropertiesAdmin.h +314 -0
  118. data/dist/ice/cpp/include/generated/Ice/PropertyDict.h +39 -0
  119. data/dist/ice/cpp/include/generated/Ice/RemoteLogger.h +724 -0
  120. data/dist/ice/cpp/include/generated/Ice/ReplyStatus.h +94 -0
  121. data/dist/ice/cpp/include/generated/Ice/Router.h +496 -0
  122. data/dist/ice/cpp/include/generated/Ice/SliceChecksumDict.h +37 -0
  123. data/dist/ice/cpp/include/generated/Ice/Version.h +112 -0
  124. data/dist/ice/cpp/include/generated/IceDiscovery/Lookup.h +498 -0
  125. data/dist/ice/cpp/include/generated/IceLocatorDiscovery/Lookup.h +387 -0
  126. data/dist/ice/cpp/src/Ice/Acceptor.h +41 -0
  127. data/dist/ice/cpp/src/Ice/AcceptorF.h +17 -0
  128. data/dist/ice/cpp/src/Ice/AddDefaultPluginFactories.h +16 -0
  129. data/dist/ice/cpp/src/Ice/AddDefaultPluginFactories_all.cpp +43 -0
  130. data/dist/ice/cpp/src/Ice/AddDefaultPluginFactories_min.cpp +17 -0
  131. data/dist/ice/cpp/src/Ice/ArgVector.cpp +58 -0
  132. data/dist/ice/cpp/src/Ice/ArgVector.h +30 -0
  133. data/dist/ice/cpp/src/Ice/Base64.cpp +263 -0
  134. data/dist/ice/cpp/src/Ice/Base64.h +26 -0
  135. data/dist/ice/cpp/src/Ice/BatchRequestQueue.cpp +199 -0
  136. data/dist/ice/cpp/src/Ice/BatchRequestQueue.h +49 -0
  137. data/dist/ice/cpp/src/Ice/Buffer.cpp +187 -0
  138. data/dist/ice/cpp/src/Ice/CheckIdentity.h +21 -0
  139. data/dist/ice/cpp/src/Ice/CollocatedRequestHandler.cpp +373 -0
  140. data/dist/ice/cpp/src/Ice/CollocatedRequestHandler.h +65 -0
  141. data/dist/ice/cpp/src/Ice/Communicator.cpp +399 -0
  142. data/dist/ice/cpp/src/Ice/CommunicatorFlushBatchAsync.cpp +140 -0
  143. data/dist/ice/cpp/src/Ice/CommunicatorFlushBatchAsync.h +39 -0
  144. data/dist/ice/cpp/src/Ice/ConnectRequestHandler.cpp +227 -0
  145. data/dist/ice/cpp/src/Ice/ConnectRequestHandler.h +51 -0
  146. data/dist/ice/cpp/src/Ice/ConnectRequestHandlerF.h +14 -0
  147. data/dist/ice/cpp/src/Ice/Connection.cpp +44 -0
  148. data/dist/ice/cpp/src/Ice/ConnectionFactory.cpp +1758 -0
  149. data/dist/ice/cpp/src/Ice/ConnectionFactory.h +264 -0
  150. data/dist/ice/cpp/src/Ice/ConnectionFactoryF.h +17 -0
  151. data/dist/ice/cpp/src/Ice/ConnectionI.cpp +3563 -0
  152. data/dist/ice/cpp/src/Ice/ConnectionI.h +429 -0
  153. data/dist/ice/cpp/src/Ice/ConnectionOptions.h +22 -0
  154. data/dist/ice/cpp/src/Ice/Connector.h +38 -0
  155. data/dist/ice/cpp/src/Ice/ConnectorF.h +14 -0
  156. data/dist/ice/cpp/src/Ice/ConsoleUtil.cpp +136 -0
  157. data/dist/ice/cpp/src/Ice/ConsoleUtil.h +79 -0
  158. data/dist/ice/cpp/src/Ice/CtrlCHandler.cpp +189 -0
  159. data/dist/ice/cpp/src/Ice/Current.cpp +29 -0
  160. data/dist/ice/cpp/src/Ice/DLLMain.cpp +40 -0
  161. data/dist/ice/cpp/src/Ice/DefaultSliceLoader.cpp +39 -0
  162. data/dist/ice/cpp/src/Ice/DefaultsAndOverrides.cpp +81 -0
  163. data/dist/ice/cpp/src/Ice/DefaultsAndOverrides.h +38 -0
  164. data/dist/ice/cpp/src/Ice/DefaultsAndOverridesF.h +14 -0
  165. data/dist/ice/cpp/src/Ice/Demangle.cpp +25 -0
  166. data/dist/ice/cpp/src/Ice/DisableWarnings.h +31 -0
  167. data/dist/ice/cpp/src/Ice/DynamicLibrary.cpp +216 -0
  168. data/dist/ice/cpp/src/Ice/DynamicLibrary.h +91 -0
  169. data/dist/ice/cpp/src/Ice/Endian.h +40 -0
  170. data/dist/ice/cpp/src/Ice/EndpointFactory.cpp +165 -0
  171. data/dist/ice/cpp/src/Ice/EndpointFactory.h +96 -0
  172. data/dist/ice/cpp/src/Ice/EndpointFactoryF.h +14 -0
  173. data/dist/ice/cpp/src/Ice/EndpointFactoryManager.cpp +180 -0
  174. data/dist/ice/cpp/src/Ice/EndpointFactoryManager.h +42 -0
  175. data/dist/ice/cpp/src/Ice/EndpointFactoryManagerF.h +14 -0
  176. data/dist/ice/cpp/src/Ice/EndpointI.cpp +128 -0
  177. data/dist/ice/cpp/src/Ice/EndpointI.h +150 -0
  178. data/dist/ice/cpp/src/Ice/EndpointIF.h +21 -0
  179. data/dist/ice/cpp/src/Ice/EventHandler.cpp +9 -0
  180. data/dist/ice/cpp/src/Ice/EventHandler.h +71 -0
  181. data/dist/ice/cpp/src/Ice/EventHandlerF.h +14 -0
  182. data/dist/ice/cpp/src/Ice/Exception.cpp +5 -0
  183. data/dist/ice/cpp/src/Ice/FileUtil.cpp +476 -0
  184. data/dist/ice/cpp/src/Ice/FileUtil.h +152 -0
  185. data/dist/ice/cpp/src/Ice/FixedRequestHandler.cpp +34 -0
  186. data/dist/ice/cpp/src/Ice/FixedRequestHandler.h +29 -0
  187. data/dist/ice/cpp/src/Ice/HashUtil.h +67 -0
  188. data/dist/ice/cpp/src/Ice/HttpParser.cpp +684 -0
  189. data/dist/ice/cpp/src/Ice/HttpParser.h +112 -0
  190. data/dist/ice/cpp/src/Ice/IPEndpointI.cpp +593 -0
  191. data/dist/ice/cpp/src/Ice/IPEndpointI.h +106 -0
  192. data/dist/ice/cpp/src/Ice/IPEndpointIF.h +17 -0
  193. data/dist/ice/cpp/src/Ice/IdleTimeoutTransceiverDecorator.cpp +172 -0
  194. data/dist/ice/cpp/src/Ice/IdleTimeoutTransceiverDecorator.h +89 -0
  195. data/dist/ice/cpp/src/Ice/ImplicitContext.cpp +109 -0
  196. data/dist/ice/cpp/src/Ice/IncomingRequest.cpp +66 -0
  197. data/dist/ice/cpp/src/Ice/Initialize.cpp +160 -0
  198. data/dist/ice/cpp/src/Ice/InputStream.cpp +2206 -0
  199. data/dist/ice/cpp/src/Ice/Instance.cpp +1956 -0
  200. data/dist/ice/cpp/src/Ice/Instance.h +225 -0
  201. data/dist/ice/cpp/src/Ice/InstrumentationI.cpp +959 -0
  202. data/dist/ice/cpp/src/Ice/InstrumentationI.h +235 -0
  203. data/dist/ice/cpp/src/Ice/LocalException.cpp +518 -0
  204. data/dist/ice/cpp/src/Ice/LocalExceptions.cpp +577 -0
  205. data/dist/ice/cpp/src/Ice/LocatorInfo.cpp +851 -0
  206. data/dist/ice/cpp/src/Ice/LocatorInfo.h +176 -0
  207. data/dist/ice/cpp/src/Ice/LocatorInfoF.h +20 -0
  208. data/dist/ice/cpp/src/Ice/LoggerAdminI.cpp +774 -0
  209. data/dist/ice/cpp/src/Ice/LoggerAdminI.h +31 -0
  210. data/dist/ice/cpp/src/Ice/LoggerI.cpp +234 -0
  211. data/dist/ice/cpp/src/Ice/LoggerI.h +47 -0
  212. data/dist/ice/cpp/src/Ice/LoggerMiddleware.cpp +176 -0
  213. data/dist/ice/cpp/src/Ice/LoggerMiddleware.h +42 -0
  214. data/dist/ice/cpp/src/Ice/LoggerUtil.cpp +76 -0
  215. data/dist/ice/cpp/src/Ice/MarshaledResult.cpp +20 -0
  216. data/dist/ice/cpp/src/Ice/MetricsAdminI.cpp +608 -0
  217. data/dist/ice/cpp/src/Ice/MetricsAdminI.h +600 -0
  218. data/dist/ice/cpp/src/Ice/MetricsFunctional.h +92 -0
  219. data/dist/ice/cpp/src/Ice/MetricsObserverI.h +587 -0
  220. data/dist/ice/cpp/src/Ice/NativePropertiesAdmin.cpp +185 -0
  221. data/dist/ice/cpp/src/Ice/Network.cpp +1927 -0
  222. data/dist/ice/cpp/src/Ice/Network.h +265 -0
  223. data/dist/ice/cpp/src/Ice/NetworkF.h +11 -0
  224. data/dist/ice/cpp/src/Ice/NetworkProxy.cpp +306 -0
  225. data/dist/ice/cpp/src/Ice/NetworkProxy.h +67 -0
  226. data/dist/ice/cpp/src/Ice/NetworkProxyF.h +14 -0
  227. data/dist/ice/cpp/src/Ice/OSLogLoggerI.cpp +55 -0
  228. data/dist/ice/cpp/src/Ice/OSLogLoggerI.h +35 -0
  229. data/dist/ice/cpp/src/Ice/Object.cpp +249 -0
  230. data/dist/ice/cpp/src/Ice/ObjectAdapterFactory.cpp +348 -0
  231. data/dist/ice/cpp/src/Ice/ObjectAdapterFactory.h +53 -0
  232. data/dist/ice/cpp/src/Ice/ObjectAdapterFactoryF.h +14 -0
  233. data/dist/ice/cpp/src/Ice/ObjectAdapterI.cpp +1383 -0
  234. data/dist/ice/cpp/src/Ice/ObjectAdapterI.h +163 -0
  235. data/dist/ice/cpp/src/Ice/ObserverHelper.cpp +75 -0
  236. data/dist/ice/cpp/src/Ice/ObserverMiddleware.cpp +96 -0
  237. data/dist/ice/cpp/src/Ice/ObserverMiddleware.h +25 -0
  238. data/dist/ice/cpp/src/Ice/OpaqueEndpointI.cpp +368 -0
  239. data/dist/ice/cpp/src/Ice/OpaqueEndpointI.h +66 -0
  240. data/dist/ice/cpp/src/Ice/Options.cpp +980 -0
  241. data/dist/ice/cpp/src/Ice/Options.h +119 -0
  242. data/dist/ice/cpp/src/Ice/OutgoingAsync.cpp +1106 -0
  243. data/dist/ice/cpp/src/Ice/OutgoingResponse.cpp +276 -0
  244. data/dist/ice/cpp/src/Ice/OutputStream.cpp +1454 -0
  245. data/dist/ice/cpp/src/Ice/OutputUtil.cpp +344 -0
  246. data/dist/ice/cpp/src/Ice/OutputUtil.h +173 -0
  247. data/dist/ice/cpp/src/Ice/PluginManagerI.cpp +344 -0
  248. data/dist/ice/cpp/src/Ice/PluginManagerI.h +54 -0
  249. data/dist/ice/cpp/src/Ice/Properties.cpp +931 -0
  250. data/dist/ice/cpp/src/Ice/PropertyNames.cpp +606 -0
  251. data/dist/ice/cpp/src/Ice/PropertyNames.h +63 -0
  252. data/dist/ice/cpp/src/Ice/PropertyUtil.cpp +103 -0
  253. data/dist/ice/cpp/src/Ice/PropertyUtil.h +31 -0
  254. data/dist/ice/cpp/src/Ice/Protocol.cpp +159 -0
  255. data/dist/ice/cpp/src/Ice/Protocol.h +116 -0
  256. data/dist/ice/cpp/src/Ice/ProtocolInstance.cpp +186 -0
  257. data/dist/ice/cpp/src/Ice/ProtocolInstance.h +74 -0
  258. data/dist/ice/cpp/src/Ice/ProtocolInstanceF.h +14 -0
  259. data/dist/ice/cpp/src/Ice/ProtocolPluginFacade.cpp +29 -0
  260. data/dist/ice/cpp/src/Ice/ProtocolPluginFacade.h +35 -0
  261. data/dist/ice/cpp/src/Ice/Proxy.cpp +541 -0
  262. data/dist/ice/cpp/src/Ice/ProxyAsync.cpp +684 -0
  263. data/dist/ice/cpp/src/Ice/ProxyFunctions.cpp +90 -0
  264. data/dist/ice/cpp/src/Ice/PushDisableDeprecatedWarnings.h +15 -0
  265. data/dist/ice/cpp/src/Ice/Random.cpp +29 -0
  266. data/dist/ice/cpp/src/Ice/Random.h +23 -0
  267. data/dist/ice/cpp/src/Ice/Reference.cpp +1584 -0
  268. data/dist/ice/cpp/src/Ice/Reference.h +339 -0
  269. data/dist/ice/cpp/src/Ice/ReferenceFactory.cpp +830 -0
  270. data/dist/ice/cpp/src/Ice/ReferenceFactory.h +58 -0
  271. data/dist/ice/cpp/src/Ice/ReferenceFactoryF.h +14 -0
  272. data/dist/ice/cpp/src/Ice/RequestHandler.cpp +28 -0
  273. data/dist/ice/cpp/src/Ice/RequestHandler.h +53 -0
  274. data/dist/ice/cpp/src/Ice/RequestHandlerCache.cpp +76 -0
  275. data/dist/ice/cpp/src/Ice/RequestHandlerCache.h +33 -0
  276. data/dist/ice/cpp/src/Ice/ResourceConfig.h +27 -0
  277. data/dist/ice/cpp/src/Ice/RetryQueue.cpp +151 -0
  278. data/dist/ice/cpp/src/Ice/RetryQueue.h +59 -0
  279. data/dist/ice/cpp/src/Ice/RetryQueueF.h +14 -0
  280. data/dist/ice/cpp/src/Ice/RouterInfo.cpp +275 -0
  281. data/dist/ice/cpp/src/Ice/RouterInfo.h +95 -0
  282. data/dist/ice/cpp/src/Ice/RouterInfoF.h +17 -0
  283. data/dist/ice/cpp/src/Ice/SHA1.cpp +195 -0
  284. data/dist/ice/cpp/src/Ice/SHA1.h +35 -0
  285. data/dist/ice/cpp/src/Ice/SSL/DistinguishedName.cpp +89 -0
  286. data/dist/ice/cpp/src/Ice/SSL/DistinguishedName.h +87 -0
  287. data/dist/ice/cpp/src/Ice/SSL/OpenSSLEngine.cpp +513 -0
  288. data/dist/ice/cpp/src/Ice/SSL/OpenSSLEngine.h +40 -0
  289. data/dist/ice/cpp/src/Ice/SSL/OpenSSLEngineF.h +13 -0
  290. data/dist/ice/cpp/src/Ice/SSL/OpenSSLTransceiverI.cpp +635 -0
  291. data/dist/ice/cpp/src/Ice/SSL/OpenSSLTransceiverI.h +80 -0
  292. data/dist/ice/cpp/src/Ice/SSL/RFC2253.cpp +487 -0
  293. data/dist/ice/cpp/src/Ice/SSL/RFC2253.h +58 -0
  294. data/dist/ice/cpp/src/Ice/SSL/SSLAcceptorI.cpp +124 -0
  295. data/dist/ice/cpp/src/Ice/SSL/SSLAcceptorI.h +52 -0
  296. data/dist/ice/cpp/src/Ice/SSL/SSLConnectorI.cpp +92 -0
  297. data/dist/ice/cpp/src/Ice/SSL/SSLConnectorI.h +38 -0
  298. data/dist/ice/cpp/src/Ice/SSL/SSLEndpointI.cpp +377 -0
  299. data/dist/ice/cpp/src/Ice/SSL/SSLEndpointI.h +84 -0
  300. data/dist/ice/cpp/src/Ice/SSL/SSLEngine.cpp +115 -0
  301. data/dist/ice/cpp/src/Ice/SSL/SSLEngine.h +72 -0
  302. data/dist/ice/cpp/src/Ice/SSL/SSLEngineF.h +14 -0
  303. data/dist/ice/cpp/src/Ice/SSL/SSLException.cpp +18 -0
  304. data/dist/ice/cpp/src/Ice/SSL/SSLInstance.cpp +27 -0
  305. data/dist/ice/cpp/src/Ice/SSL/SSLInstance.h +26 -0
  306. data/dist/ice/cpp/src/Ice/SSL/SSLInstanceF.h +19 -0
  307. data/dist/ice/cpp/src/Ice/SSL/SSLUtil.cpp +654 -0
  308. data/dist/ice/cpp/src/Ice/SSL/SSLUtil.h +104 -0
  309. data/dist/ice/cpp/src/Ice/SSL/SchannelEngine.cpp +1437 -0
  310. data/dist/ice/cpp/src/Ice/SSL/SchannelEngine.h +58 -0
  311. data/dist/ice/cpp/src/Ice/SSL/SchannelEngineF.h +18 -0
  312. data/dist/ice/cpp/src/Ice/SSL/SchannelTransceiverI.cpp +1085 -0
  313. data/dist/ice/cpp/src/Ice/SSL/SchannelTransceiverI.h +118 -0
  314. data/dist/ice/cpp/src/Ice/SSL/SecureTransportEngine.cpp +822 -0
  315. data/dist/ice/cpp/src/Ice/SSL/SecureTransportEngine.h +44 -0
  316. data/dist/ice/cpp/src/Ice/SSL/SecureTransportEngineF.h +18 -0
  317. data/dist/ice/cpp/src/Ice/SSL/SecureTransportTransceiverI.cpp +621 -0
  318. data/dist/ice/cpp/src/Ice/SSL/SecureTransportTransceiverI.h +91 -0
  319. data/dist/ice/cpp/src/Ice/SSL/SecureTransportUtil.cpp +1061 -0
  320. data/dist/ice/cpp/src/Ice/SSL/SecureTransportUtil.h +40 -0
  321. data/dist/ice/cpp/src/Ice/SSL/TrustManager.cpp +222 -0
  322. data/dist/ice/cpp/src/Ice/SSL/TrustManager.h +42 -0
  323. data/dist/ice/cpp/src/Ice/SSL/TrustManagerF.h +14 -0
  324. data/dist/ice/cpp/src/Ice/ScannerConfig.h +35 -0
  325. data/dist/ice/cpp/src/Ice/Selector.cpp +1270 -0
  326. data/dist/ice/cpp/src/Ice/Selector.h +235 -0
  327. data/dist/ice/cpp/src/Ice/ServantManager.cpp +547 -0
  328. data/dist/ice/cpp/src/Ice/ServantManager.h +66 -0
  329. data/dist/ice/cpp/src/Ice/ServantManagerF.h +14 -0
  330. data/dist/ice/cpp/src/Ice/Service.cpp +1790 -0
  331. data/dist/ice/cpp/src/Ice/SharedContext.h +33 -0
  332. data/dist/ice/cpp/src/Ice/SliceLoader.cpp +53 -0
  333. data/dist/ice/cpp/src/Ice/SlicedData.cpp +48 -0
  334. data/dist/ice/cpp/src/Ice/StreamSocket.cpp +472 -0
  335. data/dist/ice/cpp/src/Ice/StreamSocket.h +73 -0
  336. data/dist/ice/cpp/src/Ice/StringConverter.cpp +582 -0
  337. data/dist/ice/cpp/src/Ice/StringUtil.cpp +1137 -0
  338. data/dist/ice/cpp/src/Ice/SysLoggerI.cpp +160 -0
  339. data/dist/ice/cpp/src/Ice/SysLoggerI.h +34 -0
  340. data/dist/ice/cpp/src/Ice/SystemdJournalI.cpp +65 -0
  341. data/dist/ice/cpp/src/Ice/SystemdJournalI.h +33 -0
  342. data/dist/ice/cpp/src/Ice/TargetCompare.h +96 -0
  343. data/dist/ice/cpp/src/Ice/TcpAcceptor.cpp +213 -0
  344. data/dist/ice/cpp/src/Ice/TcpAcceptor.h +55 -0
  345. data/dist/ice/cpp/src/Ice/TcpConnector.cpp +128 -0
  346. data/dist/ice/cpp/src/Ice/TcpConnector.h +36 -0
  347. data/dist/ice/cpp/src/Ice/TcpEndpointI.cpp +411 -0
  348. data/dist/ice/cpp/src/Ice/TcpEndpointI.h +86 -0
  349. data/dist/ice/cpp/src/Ice/TcpTransceiver.cpp +147 -0
  350. data/dist/ice/cpp/src/Ice/TcpTransceiver.h +53 -0
  351. data/dist/ice/cpp/src/Ice/ThreadPool.cpp +1110 -0
  352. data/dist/ice/cpp/src/Ice/ThreadPool.h +305 -0
  353. data/dist/ice/cpp/src/Ice/ThreadPoolF.h +14 -0
  354. data/dist/ice/cpp/src/Ice/TimeUtil.cpp +47 -0
  355. data/dist/ice/cpp/src/Ice/TimeUtil.h +21 -0
  356. data/dist/ice/cpp/src/Ice/Timer.cpp +169 -0
  357. data/dist/ice/cpp/src/Ice/Timer.h +212 -0
  358. data/dist/ice/cpp/src/Ice/TraceLevels.cpp +20 -0
  359. data/dist/ice/cpp/src/Ice/TraceLevels.h +39 -0
  360. data/dist/ice/cpp/src/Ice/TraceLevelsF.h +14 -0
  361. data/dist/ice/cpp/src/Ice/TraceUtil.cpp +399 -0
  362. data/dist/ice/cpp/src/Ice/TraceUtil.h +41 -0
  363. data/dist/ice/cpp/src/Ice/Transceiver.cpp +14 -0
  364. data/dist/ice/cpp/src/Ice/Transceiver.h +52 -0
  365. data/dist/ice/cpp/src/Ice/TransceiverF.h +23 -0
  366. data/dist/ice/cpp/src/Ice/UUID.cpp +79 -0
  367. data/dist/ice/cpp/src/Ice/UdpConnector.cpp +131 -0
  368. data/dist/ice/cpp/src/Ice/UdpConnector.h +36 -0
  369. data/dist/ice/cpp/src/Ice/UdpEndpointI.cpp +480 -0
  370. data/dist/ice/cpp/src/Ice/UdpEndpointI.h +92 -0
  371. data/dist/ice/cpp/src/Ice/UdpTransceiver.cpp +786 -0
  372. data/dist/ice/cpp/src/Ice/UdpTransceiver.h +90 -0
  373. data/dist/ice/cpp/src/Ice/UndefSysMacros.h +37 -0
  374. data/dist/ice/cpp/src/Ice/UniqueRef.h +77 -0
  375. data/dist/ice/cpp/src/Ice/UserException.cpp +58 -0
  376. data/dist/ice/cpp/src/Ice/Value.cpp +145 -0
  377. data/dist/ice/cpp/src/Ice/WSAcceptor.cpp +87 -0
  378. data/dist/ice/cpp/src/Ice/WSAcceptor.h +46 -0
  379. data/dist/ice/cpp/src/Ice/WSConnector.cpp +87 -0
  380. data/dist/ice/cpp/src/Ice/WSConnector.h +36 -0
  381. data/dist/ice/cpp/src/Ice/WSEndpoint.cpp +455 -0
  382. data/dist/ice/cpp/src/Ice/WSEndpoint.h +82 -0
  383. data/dist/ice/cpp/src/Ice/WSTransceiver.cpp +1715 -0
  384. data/dist/ice/cpp/src/Ice/WSTransceiver.h +135 -0
  385. data/dist/ice/cpp/src/Ice/generated/BuiltinSequences.cpp +40 -0
  386. data/dist/ice/cpp/src/Ice/generated/Context.cpp +40 -0
  387. data/dist/ice/cpp/src/Ice/generated/EndpointTypes.cpp +40 -0
  388. data/dist/ice/cpp/src/Ice/generated/Identity.cpp +47 -0
  389. data/dist/ice/cpp/src/Ice/generated/Locator.cpp +752 -0
  390. data/dist/ice/cpp/src/Ice/generated/LocatorRegistry.cpp +577 -0
  391. data/dist/ice/cpp/src/Ice/generated/Metrics.cpp +1205 -0
  392. data/dist/ice/cpp/src/Ice/generated/OperationMode.cpp +56 -0
  393. data/dist/ice/cpp/src/Ice/generated/Process.cpp +330 -0
  394. data/dist/ice/cpp/src/Ice/generated/PropertiesAdmin.cpp +443 -0
  395. data/dist/ice/cpp/src/Ice/generated/PropertyDict.cpp +40 -0
  396. data/dist/ice/cpp/src/Ice/generated/RemoteLogger.cpp +851 -0
  397. data/dist/ice/cpp/src/Ice/generated/ReplyStatus.cpp +70 -0
  398. data/dist/ice/cpp/src/Ice/generated/Router.cpp +660 -0
  399. data/dist/ice/cpp/src/Ice/generated/SliceChecksumDict.cpp +39 -0
  400. data/dist/ice/cpp/src/Ice/generated/Version.cpp +54 -0
  401. data/dist/ice/cpp/src/IceDiscovery/LocatorI.cpp +202 -0
  402. data/dist/ice/cpp/src/IceDiscovery/LocatorI.h +68 -0
  403. data/dist/ice/cpp/src/IceDiscovery/LookupI.cpp +494 -0
  404. data/dist/ice/cpp/src/IceDiscovery/LookupI.h +168 -0
  405. data/dist/ice/cpp/src/IceDiscovery/PluginI.cpp +155 -0
  406. data/dist/ice/cpp/src/IceDiscovery/PluginI.h +31 -0
  407. data/dist/ice/cpp/src/IceDiscovery/generated/Lookup.cpp +638 -0
  408. data/dist/ice/cpp/src/IceLocatorDiscovery/Plugin.h +24 -0
  409. data/dist/ice/cpp/src/IceLocatorDiscovery/PluginI.cpp +822 -0
  410. data/dist/ice/cpp/src/IceLocatorDiscovery/generated/Lookup.cpp +468 -0
  411. data/dist/ice/cpp/src/Slice/DeprecationReporter.cpp +172 -0
  412. data/dist/ice/cpp/src/Slice/DeprecationReporter.h +14 -0
  413. data/dist/ice/cpp/src/Slice/DocCommentParser.cpp +736 -0
  414. data/dist/ice/cpp/src/Slice/DocCommentParser.h +61 -0
  415. data/dist/ice/cpp/src/Slice/FileTracker.cpp +96 -0
  416. data/dist/ice/cpp/src/Slice/FileTracker.h +44 -0
  417. data/dist/ice/cpp/src/Slice/Grammar.cpp +4125 -0
  418. data/dist/ice/cpp/src/Slice/Grammar.h +138 -0
  419. data/dist/ice/cpp/src/Slice/GrammarUtil.h +128 -0
  420. data/dist/ice/cpp/src/Slice/MetadataValidation.cpp +473 -0
  421. data/dist/ice/cpp/src/Slice/MetadataValidation.h +106 -0
  422. data/dist/ice/cpp/src/Slice/Parser.cpp +4906 -0
  423. data/dist/ice/cpp/src/Slice/Parser.h +1175 -0
  424. data/dist/ice/cpp/src/Slice/Preprocessor.cpp +295 -0
  425. data/dist/ice/cpp/src/Slice/Preprocessor.h +44 -0
  426. data/dist/ice/cpp/src/Slice/Scanner.cpp +3445 -0
  427. data/dist/ice/cpp/src/Slice/SliceUtil.cpp +790 -0
  428. data/dist/ice/cpp/src/Slice/StringLiteralUtil.cpp +448 -0
  429. data/dist/ice/cpp/src/Slice/Util.h +134 -0
  430. data/dist/ice/cpp/src/slice2rb/Main.cpp +33 -0
  431. data/dist/ice/cpp/src/slice2rb/Ruby.cpp +250 -0
  432. data/dist/ice/cpp/src/slice2rb/RubyUtil.cpp +1197 -0
  433. data/dist/ice/cpp/src/slice2rb/RubyUtil.h +56 -0
  434. data/dist/ice/mcpp/internal.H +530 -0
  435. data/dist/ice/mcpp/system.c +2741 -0
  436. data/dist/ice/slice/Glacier2/Metrics.ice +47 -0
  437. data/dist/ice/slice/Glacier2/PermissionsVerifier.ice +55 -0
  438. data/dist/ice/slice/Glacier2/Router.ice +93 -0
  439. data/dist/ice/slice/Glacier2/SSLInfo.ice +42 -0
  440. data/dist/ice/slice/Glacier2/Session.ice +133 -0
  441. data/dist/ice/slice/Ice/BuiltinSequences.ice +54 -0
  442. data/dist/ice/slice/Ice/Context.ice +24 -0
  443. data/dist/ice/slice/Ice/EndpointTypes.ice +50 -0
  444. data/dist/ice/slice/Ice/Identity.ice +36 -0
  445. data/dist/ice/slice/Ice/Locator.ice +74 -0
  446. data/dist/ice/slice/Ice/LocatorRegistry.ice +77 -0
  447. data/dist/ice/slice/Ice/Metrics.ice +201 -0
  448. data/dist/ice/slice/Ice/OperationMode.ice +38 -0
  449. data/dist/ice/slice/Ice/Process.ice +28 -0
  450. data/dist/ice/slice/Ice/PropertiesAdmin.ice +37 -0
  451. data/dist/ice/slice/Ice/PropertyDict.ice +23 -0
  452. data/dist/ice/slice/Ice/RemoteLogger.ice +126 -0
  453. data/dist/ice/slice/Ice/ReplyStatus.ice +65 -0
  454. data/dist/ice/slice/Ice/Router.ice +54 -0
  455. data/dist/ice/slice/Ice/SliceChecksumDict.ice +18 -0
  456. data/dist/ice/slice/Ice/Version.ice +43 -0
  457. data/dist/ice/slice/IceBox/ServiceManager.ice +79 -0
  458. data/dist/ice/slice/IceGrid/Admin.ice +981 -0
  459. data/dist/ice/slice/IceGrid/Descriptor.ice +519 -0
  460. data/dist/ice/slice/IceGrid/Exception.ice +98 -0
  461. data/dist/ice/slice/IceGrid/FileParser.ice +36 -0
  462. data/dist/ice/slice/IceGrid/Registry.ice +130 -0
  463. data/dist/ice/slice/IceGrid/Session.ice +64 -0
  464. data/dist/ice/slice/IceGrid/UserAccountMapper.ice +34 -0
  465. data/dist/ice/slice/IceStorm/IceStorm.ice +186 -0
  466. data/dist/ice/slice/IceStorm/Metrics.ice +41 -0
  467. data/dist/lib/Glacier2/Metrics.rb +41 -0
  468. data/dist/lib/Glacier2/PermissionsVerifier.rb +61 -0
  469. data/dist/lib/Glacier2/Router.rb +73 -0
  470. data/dist/lib/Glacier2/SSLInfo.rb +64 -0
  471. data/dist/lib/Glacier2/Session.rb +187 -0
  472. data/dist/lib/Glacier2.rb +7 -0
  473. data/dist/lib/Ice/BuiltinSequences.rb +48 -0
  474. data/dist/lib/Ice/CompressBatch.rb +50 -0
  475. data/dist/lib/Ice/Context.rb +12 -0
  476. data/dist/lib/Ice/EndpointSelectionType.rb +49 -0
  477. data/dist/lib/Ice/EndpointTypes.rb +28 -0
  478. data/dist/lib/Ice/Exception.rb +20 -0
  479. data/dist/lib/Ice/Identity.rb +47 -0
  480. data/dist/lib/Ice/IdentitySpaceship.rb +16 -0
  481. data/dist/lib/Ice/InitializationData.rb +12 -0
  482. data/dist/lib/Ice/LocalExceptions.rb +168 -0
  483. data/dist/lib/Ice/Locator.rb +83 -0
  484. data/dist/lib/Ice/LocatorRegistry.rb +73 -0
  485. data/dist/lib/Ice/Metrics.rb +290 -0
  486. data/dist/lib/Ice/OperationMode.rb +58 -0
  487. data/dist/lib/Ice/Process.rb +34 -0
  488. data/dist/lib/Ice/PropertiesAdmin.rb +39 -0
  489. data/dist/lib/Ice/PropertyDict.rb +12 -0
  490. data/dist/lib/Ice/Proxy.rb +85 -0
  491. data/dist/lib/Ice/ProxyFunctions.rb +69 -0
  492. data/dist/lib/Ice/RemoteLogger.rb +176 -0
  493. data/dist/lib/Ice/ReplyStatus.rb +65 -0
  494. data/dist/lib/Ice/Router.rb +59 -0
  495. data/dist/lib/Ice/SliceChecksumDict.rb +12 -0
  496. data/dist/lib/Ice/SliceUtil.rb +41 -0
  497. data/dist/lib/Ice/Struct.rb +11 -0
  498. data/dist/lib/Ice/ToStringMode.rb +50 -0
  499. data/dist/lib/Ice/Value.rb +93 -0
  500. data/dist/lib/Ice/Version.rb +78 -0
  501. data/dist/lib/Ice.rb +37 -0
  502. data/dist/lib/IceBox/ServiceManager.rb +104 -0
  503. data/dist/lib/IceBox.rb +3 -0
  504. data/dist/lib/IceGrid/Admin.rb +1208 -0
  505. data/dist/lib/IceGrid/Descriptor.rb +989 -0
  506. data/dist/lib/IceGrid/Exception.rb +145 -0
  507. data/dist/lib/IceGrid/FileParser.rb +41 -0
  508. data/dist/lib/IceGrid/Registry.rb +168 -0
  509. data/dist/lib/IceGrid/Session.rb +56 -0
  510. data/dist/lib/IceGrid/UserAccountMapper.rb +38 -0
  511. data/dist/lib/IceGrid.rb +9 -0
  512. data/dist/lib/IceStorm/IceStorm.rb +251 -0
  513. data/dist/lib/IceStorm/Metrics.rb +55 -0
  514. data/dist/lib/IceStorm.rb +4 -0
  515. data/extconf.rb +89 -0
  516. data/ice.gemspec +22 -17
  517. data/scripts/slice2rb +10 -0
  518. metadata +536 -712
  519. data/ICE_LICENSE +0 -48
  520. data/LICENSE +0 -340
  521. data/MCPP_LICENSE +0 -29
  522. data/bin/slice2rb +0 -12
  523. data/ext/Communicator.cpp +0 -792
  524. data/ext/Communicator.h +0 -20
  525. data/ext/Config.h +0 -143
  526. data/ext/Connection.cpp +0 -532
  527. data/ext/Connection.h +0 -24
  528. data/ext/Endpoint.cpp +0 -340
  529. data/ext/Endpoint.h +0 -22
  530. data/ext/ImplicitContext.cpp +0 -144
  531. data/ext/ImplicitContext.h +0 -20
  532. data/ext/Init.cpp +0 -49
  533. data/ext/Logger.cpp +0 -147
  534. data/ext/Logger.h +0 -23
  535. data/ext/Operation.cpp +0 -661
  536. data/ext/Operation.h +0 -31
  537. data/ext/Properties.cpp +0 -365
  538. data/ext/Properties.h +0 -20
  539. data/ext/Proxy.cpp +0 -1396
  540. data/ext/Proxy.h +0 -22
  541. data/ext/Slice.cpp +0 -205
  542. data/ext/Slice.h +0 -17
  543. data/ext/Types.cpp +0 -3325
  544. data/ext/Types.h +0 -595
  545. data/ext/Util.cpp +0 -812
  546. data/ext/Util.h +0 -586
  547. data/ext/ValueFactoryManager.cpp +0 -441
  548. data/ext/ValueFactoryManager.h +0 -95
  549. data/ext/extconf.rb +0 -97
  550. data/ext/ice/cpp/include/Ice/Application.h +0 -326
  551. data/ext/ice/cpp/include/Ice/AsyncResult.h +0 -155
  552. data/ext/ice/cpp/include/Ice/AsyncResultF.h +0 -23
  553. data/ext/ice/cpp/include/Ice/BatchRequestInterceptor.h +0 -75
  554. data/ext/ice/cpp/include/Ice/BatchRequestQueueF.h +0 -20
  555. data/ext/ice/cpp/include/Ice/Buffer.h +0 -154
  556. data/ext/ice/cpp/include/Ice/CommunicatorAsync.h +0 -154
  557. data/ext/ice/cpp/include/Ice/Comparable.h +0 -205
  558. data/ext/ice/cpp/include/Ice/Config.h +0 -76
  559. data/ext/ice/cpp/include/Ice/ConnectionAsync.h +0 -302
  560. data/ext/ice/cpp/include/Ice/ConnectionIF.h +0 -38
  561. data/ext/ice/cpp/include/Ice/ConsoleUtil.h +0 -23
  562. data/ext/ice/cpp/include/Ice/DefaultValueFactory.h +0 -57
  563. data/ext/ice/cpp/include/Ice/DispatchInterceptor.h +0 -41
  564. data/ext/ice/cpp/include/Ice/Dispatcher.h +0 -67
  565. data/ext/ice/cpp/include/Ice/DynamicLibrary.h +0 -102
  566. data/ext/ice/cpp/include/Ice/DynamicLibraryF.h +0 -24
  567. data/ext/ice/cpp/include/Ice/Exception.h +0 -161
  568. data/ext/ice/cpp/include/Ice/ExceptionHelpers.h +0 -74
  569. data/ext/ice/cpp/include/Ice/FactoryTable.h +0 -73
  570. data/ext/ice/cpp/include/Ice/FactoryTableInit.h +0 -84
  571. data/ext/ice/cpp/include/Ice/Format.h +0 -38
  572. data/ext/ice/cpp/include/Ice/Functional.h +0 -140
  573. data/ext/ice/cpp/include/Ice/GCObject.h +0 -76
  574. data/ext/ice/cpp/include/Ice/Handle.h +0 -182
  575. data/ext/ice/cpp/include/Ice/Ice.h +0 -55
  576. data/ext/ice/cpp/include/Ice/IconvStringConverter.h +0 -377
  577. data/ext/ice/cpp/include/Ice/Incoming.h +0 -225
  578. data/ext/ice/cpp/include/Ice/IncomingAsync.h +0 -186
  579. data/ext/ice/cpp/include/Ice/IncomingAsyncF.h +0 -36
  580. data/ext/ice/cpp/include/Ice/Initialize.h +0 -957
  581. data/ext/ice/cpp/include/Ice/InputStream.h +0 -1514
  582. data/ext/ice/cpp/include/Ice/InstanceF.h +0 -20
  583. data/ext/ice/cpp/include/Ice/InterfaceByValue.h +0 -57
  584. data/ext/ice/cpp/include/Ice/LocalObject.h +0 -35
  585. data/ext/ice/cpp/include/Ice/LocalObjectF.h +0 -21
  586. data/ext/ice/cpp/include/Ice/LoggerUtil.h +0 -185
  587. data/ext/ice/cpp/include/Ice/MetricsAdminI.h +0 -715
  588. data/ext/ice/cpp/include/Ice/MetricsFunctional.h +0 -159
  589. data/ext/ice/cpp/include/Ice/MetricsObserverI.h +0 -669
  590. data/ext/ice/cpp/include/Ice/NativePropertiesAdmin.h +0 -86
  591. data/ext/ice/cpp/include/Ice/Object.h +0 -507
  592. data/ext/ice/cpp/include/Ice/ObjectF.h +0 -30
  593. data/ext/ice/cpp/include/Ice/ObserverHelper.h +0 -182
  594. data/ext/ice/cpp/include/Ice/Optional.h +0 -1114
  595. data/ext/ice/cpp/include/Ice/OutgoingAsync.h +0 -856
  596. data/ext/ice/cpp/include/Ice/OutgoingAsyncF.h +0 -39
  597. data/ext/ice/cpp/include/Ice/OutputStream.h +0 -1092
  598. data/ext/ice/cpp/include/Ice/Protocol.h +0 -274
  599. data/ext/ice/cpp/include/Ice/Proxy.h +0 -5154
  600. data/ext/ice/cpp/include/Ice/ProxyF.h +0 -53
  601. data/ext/ice/cpp/include/Ice/ProxyFactoryF.h +0 -21
  602. data/ext/ice/cpp/include/Ice/ProxyHandle.h +0 -318
  603. data/ext/ice/cpp/include/Ice/ReferenceF.h +0 -29
  604. data/ext/ice/cpp/include/Ice/RegisterPlugins.h +0 -127
  605. data/ext/ice/cpp/include/Ice/RequestHandlerF.h +0 -30
  606. data/ext/ice/cpp/include/Ice/ResponseHandlerF.h +0 -25
  607. data/ext/ice/cpp/include/Ice/SHA1.h +0 -40
  608. data/ext/ice/cpp/include/Ice/ServantManagerF.h +0 -21
  609. data/ext/ice/cpp/include/Ice/Service.h +0 -379
  610. data/ext/ice/cpp/include/Ice/SliceChecksums.h +0 -33
  611. data/ext/ice/cpp/include/Ice/SlicedData.h +0 -172
  612. data/ext/ice/cpp/include/Ice/SlicedDataF.h +0 -40
  613. data/ext/ice/cpp/include/Ice/StreamHelpers.h +0 -1190
  614. data/ext/ice/cpp/include/Ice/StringConverter.h +0 -78
  615. data/ext/ice/cpp/include/Ice/ThreadPoolF.h +0 -23
  616. data/ext/ice/cpp/include/Ice/UUID.h +0 -19
  617. data/ext/ice/cpp/include/Ice/UniquePtr.h +0 -95
  618. data/ext/ice/cpp/include/Ice/UniqueRef.h +0 -97
  619. data/ext/ice/cpp/include/Ice/UserExceptionFactory.h +0 -88
  620. data/ext/ice/cpp/include/Ice/Value.h +0 -139
  621. data/ext/ice/cpp/include/Ice/ValueF.h +0 -21
  622. data/ext/ice/cpp/include/IceSSL/Config.h +0 -21
  623. data/ext/ice/cpp/include/IceSSL/IceSSL.h +0 -24
  624. data/ext/ice/cpp/include/IceSSL/OpenSSL.h +0 -147
  625. data/ext/ice/cpp/include/IceSSL/Plugin.h +0 -712
  626. data/ext/ice/cpp/include/IceSSL/SChannel.h +0 -72
  627. data/ext/ice/cpp/include/IceSSL/SecureTransport.h +0 -72
  628. data/ext/ice/cpp/include/IceSSL/UWP.h +0 -62
  629. data/ext/ice/cpp/include/IceUtil/Atomic.h +0 -179
  630. data/ext/ice/cpp/include/IceUtil/Cond.h +0 -317
  631. data/ext/ice/cpp/include/IceUtil/Config.h +0 -392
  632. data/ext/ice/cpp/include/IceUtil/ConsoleUtil.h +0 -92
  633. data/ext/ice/cpp/include/IceUtil/CountDownLatch.h +0 -45
  634. data/ext/ice/cpp/include/IceUtil/CtrlCHandler.h +0 -92
  635. data/ext/ice/cpp/include/IceUtil/DisableWarnings.h +0 -44
  636. data/ext/ice/cpp/include/IceUtil/Exception.h +0 -394
  637. data/ext/ice/cpp/include/IceUtil/FileUtil.h +0 -140
  638. data/ext/ice/cpp/include/IceUtil/Functional.h +0 -389
  639. data/ext/ice/cpp/include/IceUtil/Handle.h +0 -261
  640. data/ext/ice/cpp/include/IceUtil/IceUtil.h +0 -40
  641. data/ext/ice/cpp/include/IceUtil/InputUtil.h +0 -42
  642. data/ext/ice/cpp/include/IceUtil/Iterator.h +0 -31
  643. data/ext/ice/cpp/include/IceUtil/Lock.h +0 -128
  644. data/ext/ice/cpp/include/IceUtil/Monitor.h +0 -243
  645. data/ext/ice/cpp/include/IceUtil/Mutex.h +0 -349
  646. data/ext/ice/cpp/include/IceUtil/MutexProtocol.h +0 -23
  647. data/ext/ice/cpp/include/IceUtil/MutexPtrLock.h +0 -78
  648. data/ext/ice/cpp/include/IceUtil/MutexPtrTryLock.h +0 -77
  649. data/ext/ice/cpp/include/IceUtil/Optional.h +0 -433
  650. data/ext/ice/cpp/include/IceUtil/Options.h +0 -135
  651. data/ext/ice/cpp/include/IceUtil/OutputUtil.h +0 -383
  652. data/ext/ice/cpp/include/IceUtil/PopDisableWarnings.h +0 -14
  653. data/ext/ice/cpp/include/IceUtil/PushDisableWarnings.h +0 -33
  654. data/ext/ice/cpp/include/IceUtil/Random.h +0 -55
  655. data/ext/ice/cpp/include/IceUtil/RecMutex.h +0 -107
  656. data/ext/ice/cpp/include/IceUtil/ResourceConfig.h +0 -37
  657. data/ext/ice/cpp/include/IceUtil/ScannerConfig.h +0 -40
  658. data/ext/ice/cpp/include/IceUtil/ScopedArray.h +0 -98
  659. data/ext/ice/cpp/include/IceUtil/Shared.h +0 -127
  660. data/ext/ice/cpp/include/IceUtil/StopWatch.h +0 -49
  661. data/ext/ice/cpp/include/IceUtil/StringConverter.h +0 -195
  662. data/ext/ice/cpp/include/IceUtil/StringUtil.h +0 -97
  663. data/ext/ice/cpp/include/IceUtil/Thread.h +0 -160
  664. data/ext/ice/cpp/include/IceUtil/ThreadException.h +0 -94
  665. data/ext/ice/cpp/include/IceUtil/Time.h +0 -205
  666. data/ext/ice/cpp/include/IceUtil/Timer.h +0 -144
  667. data/ext/ice/cpp/include/IceUtil/UUID.h +0 -21
  668. data/ext/ice/cpp/include/IceUtil/UndefSysMacros.h +0 -37
  669. data/ext/ice/cpp/include/generated/Ice/BuiltinSequences.h +0 -170
  670. data/ext/ice/cpp/include/generated/Ice/Communicator.h +0 -1162
  671. data/ext/ice/cpp/include/generated/Ice/CommunicatorF.h +0 -101
  672. data/ext/ice/cpp/include/generated/Ice/Connection.h +0 -1703
  673. data/ext/ice/cpp/include/generated/Ice/ConnectionF.h +0 -119
  674. data/ext/ice/cpp/include/generated/Ice/Current.h +0 -322
  675. data/ext/ice/cpp/include/generated/Ice/Endpoint.h +0 -979
  676. data/ext/ice/cpp/include/generated/Ice/EndpointF.h +0 -166
  677. data/ext/ice/cpp/include/generated/Ice/EndpointTypes.h +0 -118
  678. data/ext/ice/cpp/include/generated/Ice/FacetMap.h +0 -80
  679. data/ext/ice/cpp/include/generated/Ice/Identity.h +0 -264
  680. data/ext/ice/cpp/include/generated/Ice/ImplicitContext.h +0 -284
  681. data/ext/ice/cpp/include/generated/Ice/ImplicitContextF.h +0 -101
  682. data/ext/ice/cpp/include/generated/Ice/Instrumentation.h +0 -1203
  683. data/ext/ice/cpp/include/generated/Ice/InstrumentationF.h +0 -128
  684. data/ext/ice/cpp/include/generated/Ice/LocalException.h +0 -7437
  685. data/ext/ice/cpp/include/generated/Ice/Locator.h +0 -3898
  686. data/ext/ice/cpp/include/generated/Ice/LocatorF.h +0 -147
  687. data/ext/ice/cpp/include/generated/Ice/Logger.h +0 -237
  688. data/ext/ice/cpp/include/generated/Ice/LoggerF.h +0 -101
  689. data/ext/ice/cpp/include/generated/Ice/Metrics.h +0 -4769
  690. data/ext/ice/cpp/include/generated/Ice/ObjectAdapter.h +0 -1181
  691. data/ext/ice/cpp/include/generated/Ice/ObjectAdapterF.h +0 -101
  692. data/ext/ice/cpp/include/generated/Ice/ObjectFactory.h +0 -203
  693. data/ext/ice/cpp/include/generated/Ice/Plugin.h +0 -318
  694. data/ext/ice/cpp/include/generated/Ice/PluginF.h +0 -110
  695. data/ext/ice/cpp/include/generated/Ice/Process.h +0 -977
  696. data/ext/ice/cpp/include/generated/Ice/ProcessF.h +0 -125
  697. data/ext/ice/cpp/include/generated/Ice/Properties.h +0 -452
  698. data/ext/ice/cpp/include/generated/Ice/PropertiesAdmin.h +0 -1366
  699. data/ext/ice/cpp/include/generated/Ice/PropertiesF.h +0 -134
  700. data/ext/ice/cpp/include/generated/Ice/RemoteLogger.h +0 -2707
  701. data/ext/ice/cpp/include/generated/Ice/Router.h +0 -1850
  702. data/ext/ice/cpp/include/generated/Ice/RouterF.h +0 -125
  703. data/ext/ice/cpp/include/generated/Ice/ServantLocator.h +0 -305
  704. data/ext/ice/cpp/include/generated/Ice/ServantLocatorF.h +0 -101
  705. data/ext/ice/cpp/include/generated/Ice/SliceChecksumDict.h +0 -84
  706. data/ext/ice/cpp/include/generated/Ice/ValueFactory.h +0 -330
  707. data/ext/ice/cpp/include/generated/Ice/Version.h +0 -357
  708. data/ext/ice/cpp/include/generated/IceSSL/ConnectionInfo.h +0 -228
  709. data/ext/ice/cpp/include/generated/IceSSL/ConnectionInfoF.h +0 -101
  710. data/ext/ice/cpp/include/generated/IceSSL/EndpointInfo.h +0 -186
  711. data/ext/ice/cpp/src/Ice/ACM.cpp +0 -380
  712. data/ext/ice/cpp/src/Ice/ACM.h +0 -119
  713. data/ext/ice/cpp/src/Ice/ACMF.h +0 -30
  714. data/ext/ice/cpp/src/Ice/Acceptor.cpp +0 -16
  715. data/ext/ice/cpp/src/Ice/Acceptor.h +0 -37
  716. data/ext/ice/cpp/src/Ice/AcceptorF.h +0 -25
  717. data/ext/ice/cpp/src/Ice/ArgVector.cpp +0 -59
  718. data/ext/ice/cpp/src/Ice/ArgVector.h +0 -36
  719. data/ext/ice/cpp/src/Ice/AsyncResult.cpp +0 -70
  720. data/ext/ice/cpp/src/Ice/Base64.cpp +0 -263
  721. data/ext/ice/cpp/src/Ice/Base64.h +0 -31
  722. data/ext/ice/cpp/src/Ice/BatchRequestQueue.cpp +0 -250
  723. data/ext/ice/cpp/src/Ice/BatchRequestQueue.h +0 -59
  724. data/ext/ice/cpp/src/Ice/Buffer.cpp +0 -155
  725. data/ext/ice/cpp/src/Ice/BuiltinSequences.cpp +0 -49
  726. data/ext/ice/cpp/src/Ice/CollocatedRequestHandler.cpp +0 -407
  727. data/ext/ice/cpp/src/Ice/CollocatedRequestHandler.h +0 -87
  728. data/ext/ice/cpp/src/Ice/Communicator.cpp +0 -79
  729. data/ext/ice/cpp/src/Ice/CommunicatorF.cpp +0 -61
  730. data/ext/ice/cpp/src/Ice/CommunicatorI.cpp +0 -586
  731. data/ext/ice/cpp/src/Ice/CommunicatorI.h +0 -167
  732. data/ext/ice/cpp/src/Ice/Cond.cpp +0 -381
  733. data/ext/ice/cpp/src/Ice/ConnectRequestHandler.cpp +0 -348
  734. data/ext/ice/cpp/src/Ice/ConnectRequestHandler.h +0 -72
  735. data/ext/ice/cpp/src/Ice/ConnectRequestHandlerF.h +0 -24
  736. data/ext/ice/cpp/src/Ice/Connection.cpp +0 -155
  737. data/ext/ice/cpp/src/Ice/ConnectionF.cpp +0 -61
  738. data/ext/ice/cpp/src/Ice/ConnectionFactory.cpp +0 -1972
  739. data/ext/ice/cpp/src/Ice/ConnectionFactory.h +0 -264
  740. data/ext/ice/cpp/src/Ice/ConnectionFactoryF.h +0 -30
  741. data/ext/ice/cpp/src/Ice/ConnectionI.cpp +0 -3670
  742. data/ext/ice/cpp/src/Ice/ConnectionI.h +0 -389
  743. data/ext/ice/cpp/src/Ice/ConnectionRequestHandler.cpp +0 -73
  744. data/ext/ice/cpp/src/Ice/ConnectionRequestHandler.h +0 -41
  745. data/ext/ice/cpp/src/Ice/Connector.cpp +0 -16
  746. data/ext/ice/cpp/src/Ice/Connector.h +0 -32
  747. data/ext/ice/cpp/src/Ice/ConnectorF.h +0 -21
  748. data/ext/ice/cpp/src/Ice/CountDownLatch.cpp +0 -171
  749. data/ext/ice/cpp/src/Ice/Current.cpp +0 -62
  750. data/ext/ice/cpp/src/Ice/DefaultsAndOverrides.cpp +0 -159
  751. data/ext/ice/cpp/src/Ice/DefaultsAndOverrides.h +0 -52
  752. data/ext/ice/cpp/src/Ice/DefaultsAndOverridesF.h +0 -21
  753. data/ext/ice/cpp/src/Ice/DispatchInterceptor.cpp +0 -37
  754. data/ext/ice/cpp/src/Ice/DynamicLibrary.cpp +0 -284
  755. data/ext/ice/cpp/src/Ice/Endpoint.cpp +0 -147
  756. data/ext/ice/cpp/src/Ice/EndpointF.cpp +0 -61
  757. data/ext/ice/cpp/src/Ice/EndpointFactory.cpp +0 -189
  758. data/ext/ice/cpp/src/Ice/EndpointFactory.h +0 -117
  759. data/ext/ice/cpp/src/Ice/EndpointFactoryF.h +0 -21
  760. data/ext/ice/cpp/src/Ice/EndpointFactoryManager.cpp +0 -213
  761. data/ext/ice/cpp/src/Ice/EndpointFactoryManager.h +0 -47
  762. data/ext/ice/cpp/src/Ice/EndpointFactoryManagerF.h +0 -21
  763. data/ext/ice/cpp/src/Ice/EndpointI.cpp +0 -98
  764. data/ext/ice/cpp/src/Ice/EndpointI.h +0 -218
  765. data/ext/ice/cpp/src/Ice/EndpointIF.h +0 -49
  766. data/ext/ice/cpp/src/Ice/EndpointTypes.cpp +0 -51
  767. data/ext/ice/cpp/src/Ice/EventHandler.cpp +0 -32
  768. data/ext/ice/cpp/src/Ice/EventHandler.h +0 -81
  769. data/ext/ice/cpp/src/Ice/EventHandlerF.h +0 -24
  770. data/ext/ice/cpp/src/Ice/Exception.cpp +0 -818
  771. data/ext/ice/cpp/src/Ice/FacetMap.cpp +0 -49
  772. data/ext/ice/cpp/src/Ice/FactoryTable.cpp +0 -162
  773. data/ext/ice/cpp/src/Ice/FactoryTableInit.cpp +0 -88
  774. data/ext/ice/cpp/src/Ice/GCObject.cpp +0 -442
  775. data/ext/ice/cpp/src/Ice/HashUtil.h +0 -53
  776. data/ext/ice/cpp/src/Ice/HttpParser.cpp +0 -684
  777. data/ext/ice/cpp/src/Ice/HttpParser.h +0 -117
  778. data/ext/ice/cpp/src/Ice/IPEndpointI.cpp +0 -710
  779. data/ext/ice/cpp/src/Ice/IPEndpointI.h +0 -152
  780. data/ext/ice/cpp/src/Ice/IPEndpointIF.h +0 -28
  781. data/ext/ice/cpp/src/Ice/IconvStringConverter.cpp +0 -51
  782. data/ext/ice/cpp/src/Ice/Identity.cpp +0 -57
  783. data/ext/ice/cpp/src/Ice/ImplicitContext.cpp +0 -75
  784. data/ext/ice/cpp/src/Ice/ImplicitContextF.cpp +0 -61
  785. data/ext/ice/cpp/src/Ice/ImplicitContextI.cpp +0 -655
  786. data/ext/ice/cpp/src/Ice/ImplicitContextI.h +0 -48
  787. data/ext/ice/cpp/src/Ice/Incoming.cpp +0 -795
  788. data/ext/ice/cpp/src/Ice/IncomingAsync.cpp +0 -230
  789. data/ext/ice/cpp/src/Ice/IncomingRequest.h +0 -33
  790. data/ext/ice/cpp/src/Ice/Initialize.cpp +0 -654
  791. data/ext/ice/cpp/src/Ice/InputStream.cpp +0 -2741
  792. data/ext/ice/cpp/src/Ice/Instance.cpp +0 -1967
  793. data/ext/ice/cpp/src/Ice/Instance.h +0 -235
  794. data/ext/ice/cpp/src/Ice/Instrumentation.cpp +0 -188
  795. data/ext/ice/cpp/src/Ice/InstrumentationF.cpp +0 -66
  796. data/ext/ice/cpp/src/Ice/InstrumentationI.cpp +0 -1094
  797. data/ext/ice/cpp/src/Ice/InstrumentationI.h +0 -256
  798. data/ext/ice/cpp/src/Ice/LocalException.cpp +0 -3262
  799. data/ext/ice/cpp/src/Ice/LocalObject.cpp +0 -23
  800. data/ext/ice/cpp/src/Ice/Locator.cpp +0 -2042
  801. data/ext/ice/cpp/src/Ice/LocatorF.cpp +0 -63
  802. data/ext/ice/cpp/src/Ice/LocatorInfo.cpp +0 -889
  803. data/ext/ice/cpp/src/Ice/LocatorInfo.h +0 -189
  804. data/ext/ice/cpp/src/Ice/LocatorInfoF.h +0 -29
  805. data/ext/ice/cpp/src/Ice/Logger.cpp +0 -73
  806. data/ext/ice/cpp/src/Ice/LoggerAdminI.cpp +0 -956
  807. data/ext/ice/cpp/src/Ice/LoggerAdminI.h +0 -41
  808. data/ext/ice/cpp/src/Ice/LoggerF.cpp +0 -61
  809. data/ext/ice/cpp/src/Ice/LoggerI.cpp +0 -259
  810. data/ext/ice/cpp/src/Ice/LoggerI.h +0 -52
  811. data/ext/ice/cpp/src/Ice/LoggerUtil.cpp +0 -100
  812. data/ext/ice/cpp/src/Ice/Metrics.cpp +0 -2352
  813. data/ext/ice/cpp/src/Ice/MetricsAdminI.cpp +0 -694
  814. data/ext/ice/cpp/src/Ice/MetricsObserverI.cpp +0 -8
  815. data/ext/ice/cpp/src/Ice/Network.cpp +0 -2249
  816. data/ext/ice/cpp/src/Ice/Network.h +0 -289
  817. data/ext/ice/cpp/src/Ice/NetworkF.h +0 -19
  818. data/ext/ice/cpp/src/Ice/NetworkProxy.cpp +0 -311
  819. data/ext/ice/cpp/src/Ice/NetworkProxy.h +0 -72
  820. data/ext/ice/cpp/src/Ice/NetworkProxyF.h +0 -21
  821. data/ext/ice/cpp/src/Ice/OSLogLoggerI.cpp +0 -57
  822. data/ext/ice/cpp/src/Ice/OSLogLoggerI.h +0 -40
  823. data/ext/ice/cpp/src/Ice/Object.cpp +0 -435
  824. data/ext/ice/cpp/src/Ice/ObjectAdapter.cpp +0 -79
  825. data/ext/ice/cpp/src/Ice/ObjectAdapterF.cpp +0 -61
  826. data/ext/ice/cpp/src/Ice/ObjectAdapterFactory.cpp +0 -291
  827. data/ext/ice/cpp/src/Ice/ObjectAdapterFactory.h +0 -53
  828. data/ext/ice/cpp/src/Ice/ObjectAdapterFactoryF.h +0 -25
  829. data/ext/ice/cpp/src/Ice/ObjectAdapterI.cpp +0 -1530
  830. data/ext/ice/cpp/src/Ice/ObjectAdapterI.h +0 -159
  831. data/ext/ice/cpp/src/Ice/ObjectFactory.cpp +0 -75
  832. data/ext/ice/cpp/src/Ice/ObserverHelper.cpp +0 -56
  833. data/ext/ice/cpp/src/Ice/OpaqueEndpointI.cpp +0 -408
  834. data/ext/ice/cpp/src/Ice/OpaqueEndpointI.h +0 -74
  835. data/ext/ice/cpp/src/Ice/OutgoingAsync.cpp +0 -1322
  836. data/ext/ice/cpp/src/Ice/OutputStream.cpp +0 -1367
  837. data/ext/ice/cpp/src/Ice/Plugin.cpp +0 -87
  838. data/ext/ice/cpp/src/Ice/PluginF.cpp +0 -61
  839. data/ext/ice/cpp/src/Ice/PluginManagerI.cpp +0 -503
  840. data/ext/ice/cpp/src/Ice/PluginManagerI.h +0 -61
  841. data/ext/ice/cpp/src/Ice/Process.cpp +0 -471
  842. data/ext/ice/cpp/src/Ice/ProcessF.cpp +0 -63
  843. data/ext/ice/cpp/src/Ice/Properties.cpp +0 -78
  844. data/ext/ice/cpp/src/Ice/PropertiesAdmin.cpp +0 -603
  845. data/ext/ice/cpp/src/Ice/PropertiesAdminI.cpp +0 -265
  846. data/ext/ice/cpp/src/Ice/PropertiesAdminI.h +0 -64
  847. data/ext/ice/cpp/src/Ice/PropertiesF.cpp +0 -63
  848. data/ext/ice/cpp/src/Ice/PropertiesI.cpp +0 -739
  849. data/ext/ice/cpp/src/Ice/PropertiesI.h +0 -70
  850. data/ext/ice/cpp/src/Ice/PropertyNames.cpp +0 -1429
  851. data/ext/ice/cpp/src/Ice/PropertyNames.h +0 -78
  852. data/ext/ice/cpp/src/Ice/Protocol.cpp +0 -124
  853. data/ext/ice/cpp/src/Ice/ProtocolInstance.cpp +0 -131
  854. data/ext/ice/cpp/src/Ice/ProtocolInstance.h +0 -93
  855. data/ext/ice/cpp/src/Ice/ProtocolInstanceF.h +0 -21
  856. data/ext/ice/cpp/src/Ice/ProtocolPluginFacade.cpp +0 -51
  857. data/ext/ice/cpp/src/Ice/ProtocolPluginFacade.h +0 -64
  858. data/ext/ice/cpp/src/Ice/ProtocolPluginFacadeF.h +0 -21
  859. data/ext/ice/cpp/src/Ice/Proxy.cpp +0 -1601
  860. data/ext/ice/cpp/src/Ice/ProxyFactory.cpp +0 -300
  861. data/ext/ice/cpp/src/Ice/ProxyFactory.h +0 -57
  862. data/ext/ice/cpp/src/Ice/Reference.cpp +0 -2046
  863. data/ext/ice/cpp/src/Ice/Reference.h +0 -323
  864. data/ext/ice/cpp/src/Ice/ReferenceFactory.cpp +0 -888
  865. data/ext/ice/cpp/src/Ice/ReferenceFactory.h +0 -76
  866. data/ext/ice/cpp/src/Ice/ReferenceFactoryF.h +0 -19
  867. data/ext/ice/cpp/src/Ice/RegisterPluginsInit.cpp +0 -38
  868. data/ext/ice/cpp/src/Ice/RegisterPluginsInit.h +0 -20
  869. data/ext/ice/cpp/src/Ice/RemoteLogger.cpp +0 -1171
  870. data/ext/ice/cpp/src/Ice/ReplyStatus.h +0 -24
  871. data/ext/ice/cpp/src/Ice/RequestHandler.cpp +0 -37
  872. data/ext/ice/cpp/src/Ice/RequestHandler.h +0 -78
  873. data/ext/ice/cpp/src/Ice/RequestHandlerFactory.cpp +0 -77
  874. data/ext/ice/cpp/src/Ice/RequestHandlerFactory.h +0 -37
  875. data/ext/ice/cpp/src/Ice/ResponseHandler.cpp +0 -12
  876. data/ext/ice/cpp/src/Ice/ResponseHandler.h +0 -43
  877. data/ext/ice/cpp/src/Ice/RetryQueue.cpp +0 -157
  878. data/ext/ice/cpp/src/Ice/RetryQueue.h +0 -66
  879. data/ext/ice/cpp/src/Ice/RetryQueueF.h +0 -19
  880. data/ext/ice/cpp/src/Ice/Router.cpp +0 -977
  881. data/ext/ice/cpp/src/Ice/RouterF.cpp +0 -63
  882. data/ext/ice/cpp/src/Ice/RouterInfo.cpp +0 -379
  883. data/ext/ice/cpp/src/Ice/RouterInfo.h +0 -152
  884. data/ext/ice/cpp/src/Ice/RouterInfoF.h +0 -25
  885. data/ext/ice/cpp/src/Ice/SHA1.cpp +0 -169
  886. data/ext/ice/cpp/src/Ice/Selector.cpp +0 -1525
  887. data/ext/ice/cpp/src/Ice/Selector.h +0 -292
  888. data/ext/ice/cpp/src/Ice/ServantLocator.cpp +0 -75
  889. data/ext/ice/cpp/src/Ice/ServantLocatorF.cpp +0 -61
  890. data/ext/ice/cpp/src/Ice/ServantManager.cpp +0 -480
  891. data/ext/ice/cpp/src/Ice/ServantManager.h +0 -69
  892. data/ext/ice/cpp/src/Ice/SharedContext.h +0 -46
  893. data/ext/ice/cpp/src/Ice/SliceChecksumDict.cpp +0 -49
  894. data/ext/ice/cpp/src/Ice/SliceChecksums.cpp +0 -75
  895. data/ext/ice/cpp/src/Ice/SlicedData.cpp +0 -127
  896. data/ext/ice/cpp/src/Ice/StreamSocket.cpp +0 -519
  897. data/ext/ice/cpp/src/Ice/StreamSocket.h +0 -85
  898. data/ext/ice/cpp/src/Ice/StringConverterPlugin.cpp +0 -192
  899. data/ext/ice/cpp/src/Ice/StringUtil.h +0 -30
  900. data/ext/ice/cpp/src/Ice/SysLoggerI.cpp +0 -166
  901. data/ext/ice/cpp/src/Ice/SysLoggerI.h +0 -37
  902. data/ext/ice/cpp/src/Ice/SystemdJournalI.cpp +0 -66
  903. data/ext/ice/cpp/src/Ice/SystemdJournalI.h +0 -39
  904. data/ext/ice/cpp/src/Ice/TcpAcceptor.cpp +0 -234
  905. data/ext/ice/cpp/src/Ice/TcpAcceptor.h +0 -61
  906. data/ext/ice/cpp/src/Ice/TcpConnector.cpp +0 -127
  907. data/ext/ice/cpp/src/Ice/TcpConnector.h +0 -45
  908. data/ext/ice/cpp/src/Ice/TcpEndpointI.cpp +0 -385
  909. data/ext/ice/cpp/src/Ice/TcpEndpointI.h +0 -90
  910. data/ext/ice/cpp/src/Ice/TcpTransceiver.cpp +0 -135
  911. data/ext/ice/cpp/src/Ice/TcpTransceiver.h +0 -58
  912. data/ext/ice/cpp/src/Ice/Thread.cpp +0 -569
  913. data/ext/ice/cpp/src/Ice/ThreadPool.cpp +0 -1292
  914. data/ext/ice/cpp/src/Ice/ThreadPool.h +0 -393
  915. data/ext/ice/cpp/src/Ice/Timer.cpp +0 -263
  916. data/ext/ice/cpp/src/Ice/TraceLevels.cpp +0 -38
  917. data/ext/ice/cpp/src/Ice/TraceLevels.h +0 -45
  918. data/ext/ice/cpp/src/Ice/TraceLevelsF.h +0 -21
  919. data/ext/ice/cpp/src/Ice/TraceUtil.cpp +0 -478
  920. data/ext/ice/cpp/src/Ice/TraceUtil.h +0 -30
  921. data/ext/ice/cpp/src/Ice/Transceiver.cpp +0 -18
  922. data/ext/ice/cpp/src/Ice/Transceiver.h +0 -49
  923. data/ext/ice/cpp/src/Ice/TransceiverF.h +0 -33
  924. data/ext/ice/cpp/src/Ice/UdpConnector.cpp +0 -131
  925. data/ext/ice/cpp/src/Ice/UdpConnector.h +0 -45
  926. data/ext/ice/cpp/src/Ice/UdpEndpointI.cpp +0 -515
  927. data/ext/ice/cpp/src/Ice/UdpEndpointI.h +0 -95
  928. data/ext/ice/cpp/src/Ice/UdpTransceiver.cpp +0 -806
  929. data/ext/ice/cpp/src/Ice/UdpTransceiver.h +0 -96
  930. data/ext/ice/cpp/src/Ice/Value.cpp +0 -76
  931. data/ext/ice/cpp/src/Ice/ValueFactory.cpp +0 -83
  932. data/ext/ice/cpp/src/Ice/ValueFactoryManagerI.cpp +0 -61
  933. data/ext/ice/cpp/src/Ice/ValueFactoryManagerI.h +0 -37
  934. data/ext/ice/cpp/src/Ice/Version.cpp +0 -57
  935. data/ext/ice/cpp/src/Ice/VirtualShared.h +0 -38
  936. data/ext/ice/cpp/src/Ice/WSAcceptor.cpp +0 -92
  937. data/ext/ice/cpp/src/Ice/WSAcceptor.h +0 -52
  938. data/ext/ice/cpp/src/Ice/WSConnector.cpp +0 -102
  939. data/ext/ice/cpp/src/Ice/WSConnector.h +0 -43
  940. data/ext/ice/cpp/src/Ice/WSEndpoint.cpp +0 -508
  941. data/ext/ice/cpp/src/Ice/WSEndpoint.h +0 -93
  942. data/ext/ice/cpp/src/Ice/WSTransceiver.cpp +0 -1704
  943. data/ext/ice/cpp/src/Ice/WSTransceiver.h +0 -141
  944. data/ext/ice/cpp/src/IceDiscovery/IceDiscovery.cpp +0 -915
  945. data/ext/ice/cpp/src/IceDiscovery/IceDiscovery.h +0 -1889
  946. data/ext/ice/cpp/src/IceDiscovery/LocatorI.cpp +0 -265
  947. data/ext/ice/cpp/src/IceDiscovery/LocatorI.h +0 -109
  948. data/ext/ice/cpp/src/IceDiscovery/LookupI.cpp +0 -608
  949. data/ext/ice/cpp/src/IceDiscovery/LookupI.h +0 -228
  950. data/ext/ice/cpp/src/IceDiscovery/PluginI.cpp +0 -176
  951. data/ext/ice/cpp/src/IceDiscovery/PluginI.h +0 -36
  952. data/ext/ice/cpp/src/IceLocatorDiscovery/IceLocatorDiscovery.cpp +0 -730
  953. data/ext/ice/cpp/src/IceLocatorDiscovery/IceLocatorDiscovery.h +0 -1197
  954. data/ext/ice/cpp/src/IceLocatorDiscovery/Plugin.h +0 -47
  955. data/ext/ice/cpp/src/IceLocatorDiscovery/PluginI.cpp +0 -1048
  956. data/ext/ice/cpp/src/IceSSL/AcceptorI.cpp +0 -105
  957. data/ext/ice/cpp/src/IceSSL/AcceptorI.h +0 -52
  958. data/ext/ice/cpp/src/IceSSL/CertificateI.cpp +0 -301
  959. data/ext/ice/cpp/src/IceSSL/CertificateI.h +0 -64
  960. data/ext/ice/cpp/src/IceSSL/ConnectionInfo.cpp +0 -75
  961. data/ext/ice/cpp/src/IceSSL/ConnectionInfoF.cpp +0 -61
  962. data/ext/ice/cpp/src/IceSSL/ConnectorI.cpp +0 -102
  963. data/ext/ice/cpp/src/IceSSL/ConnectorI.h +0 -44
  964. data/ext/ice/cpp/src/IceSSL/EndpointI.cpp +0 -372
  965. data/ext/ice/cpp/src/IceSSL/EndpointI.h +0 -100
  966. data/ext/ice/cpp/src/IceSSL/EndpointInfo.cpp +0 -75
  967. data/ext/ice/cpp/src/IceSSL/Instance.cpp +0 -28
  968. data/ext/ice/cpp/src/IceSSL/Instance.h +0 -37
  969. data/ext/ice/cpp/src/IceSSL/InstanceF.h +0 -33
  970. data/ext/ice/cpp/src/IceSSL/OpenSSLCertificateI.cpp +0 -688
  971. data/ext/ice/cpp/src/IceSSL/OpenSSLEngine.cpp +0 -1147
  972. data/ext/ice/cpp/src/IceSSL/OpenSSLEngine.h +0 -59
  973. data/ext/ice/cpp/src/IceSSL/OpenSSLEngineF.h +0 -27
  974. data/ext/ice/cpp/src/IceSSL/OpenSSLPluginI.cpp +0 -127
  975. data/ext/ice/cpp/src/IceSSL/OpenSSLTransceiverI.cpp +0 -1092
  976. data/ext/ice/cpp/src/IceSSL/OpenSSLTransceiverI.h +0 -90
  977. data/ext/ice/cpp/src/IceSSL/OpenSSLUtil.cpp +0 -288
  978. data/ext/ice/cpp/src/IceSSL/OpenSSLUtil.h +0 -58
  979. data/ext/ice/cpp/src/IceSSL/PluginI.cpp +0 -246
  980. data/ext/ice/cpp/src/IceSSL/PluginI.h +0 -67
  981. data/ext/ice/cpp/src/IceSSL/RFC2253.cpp +0 -490
  982. data/ext/ice/cpp/src/IceSSL/RFC2253.h +0 -62
  983. data/ext/ice/cpp/src/IceSSL/SChannelCertificateI.cpp +0 -721
  984. data/ext/ice/cpp/src/IceSSL/SChannelEngine.cpp +0 -1283
  985. data/ext/ice/cpp/src/IceSSL/SChannelEngine.h +0 -123
  986. data/ext/ice/cpp/src/IceSSL/SChannelEngineF.h +0 -31
  987. data/ext/ice/cpp/src/IceSSL/SChannelPluginI.cpp +0 -73
  988. data/ext/ice/cpp/src/IceSSL/SChannelTransceiverI.cpp +0 -1174
  989. data/ext/ice/cpp/src/IceSSL/SChannelTransceiverI.h +0 -133
  990. data/ext/ice/cpp/src/IceSSL/SSLEngine.cpp +0 -313
  991. data/ext/ice/cpp/src/IceSSL/SSLEngine.h +0 -100
  992. data/ext/ice/cpp/src/IceSSL/SSLEngineF.h +0 -21
  993. data/ext/ice/cpp/src/IceSSL/SecureTransportCertificateI.cpp +0 -999
  994. data/ext/ice/cpp/src/IceSSL/SecureTransportEngine.cpp +0 -1308
  995. data/ext/ice/cpp/src/IceSSL/SecureTransportEngine.h +0 -59
  996. data/ext/ice/cpp/src/IceSSL/SecureTransportEngineF.h +0 -29
  997. data/ext/ice/cpp/src/IceSSL/SecureTransportPluginI.cpp +0 -75
  998. data/ext/ice/cpp/src/IceSSL/SecureTransportTransceiverI.cpp +0 -719
  999. data/ext/ice/cpp/src/IceSSL/SecureTransportTransceiverI.h +0 -92
  1000. data/ext/ice/cpp/src/IceSSL/SecureTransportUtil.cpp +0 -868
  1001. data/ext/ice/cpp/src/IceSSL/SecureTransportUtil.h +0 -45
  1002. data/ext/ice/cpp/src/IceSSL/TrustManager.cpp +0 -236
  1003. data/ext/ice/cpp/src/IceSSL/TrustManager.h +0 -46
  1004. data/ext/ice/cpp/src/IceSSL/TrustManagerF.h +0 -21
  1005. data/ext/ice/cpp/src/IceSSL/UWPCertificateI.cpp +0 -266
  1006. data/ext/ice/cpp/src/IceSSL/UWPEngine.cpp +0 -338
  1007. data/ext/ice/cpp/src/IceSSL/UWPEngine.h +0 -41
  1008. data/ext/ice/cpp/src/IceSSL/UWPEngineF.h +0 -26
  1009. data/ext/ice/cpp/src/IceSSL/UWPPluginI.cpp +0 -89
  1010. data/ext/ice/cpp/src/IceSSL/UWPTransceiverI.cpp +0 -383
  1011. data/ext/ice/cpp/src/IceSSL/UWPTransceiverI.h +0 -71
  1012. data/ext/ice/cpp/src/IceSSL/Util.cpp +0 -192
  1013. data/ext/ice/cpp/src/IceSSL/Util.h +0 -99
  1014. data/ext/ice/cpp/src/IceUtil/ConsoleUtil.cpp +0 -157
  1015. data/ext/ice/cpp/src/IceUtil/ConvertUTF.cpp +0 -472
  1016. data/ext/ice/cpp/src/IceUtil/ConvertUTF.h +0 -147
  1017. data/ext/ice/cpp/src/IceUtil/CtrlCHandler.cpp +0 -259
  1018. data/ext/ice/cpp/src/IceUtil/FileUtil.cpp +0 -471
  1019. data/ext/ice/cpp/src/IceUtil/InputUtil.cpp +0 -36
  1020. data/ext/ice/cpp/src/IceUtil/MutexProtocol.cpp +0 -19
  1021. data/ext/ice/cpp/src/IceUtil/Options.cpp +0 -1051
  1022. data/ext/ice/cpp/src/IceUtil/OutputUtil.cpp +0 -609
  1023. data/ext/ice/cpp/src/IceUtil/Random.cpp +0 -180
  1024. data/ext/ice/cpp/src/IceUtil/RecMutex.cpp +0 -238
  1025. data/ext/ice/cpp/src/IceUtil/Shared.cpp +0 -71
  1026. data/ext/ice/cpp/src/IceUtil/StringConverter.cpp +0 -690
  1027. data/ext/ice/cpp/src/IceUtil/StringUtil.cpp +0 -1135
  1028. data/ext/ice/cpp/src/IceUtil/ThreadException.cpp +0 -130
  1029. data/ext/ice/cpp/src/IceUtil/Time.cpp +0 -307
  1030. data/ext/ice/cpp/src/IceUtil/UUID.cpp +0 -165
  1031. data/ext/ice/cpp/src/IceUtil/Unicode.cpp +0 -183
  1032. data/ext/ice/cpp/src/IceUtil/Unicode.h +0 -43
  1033. data/ext/ice/cpp/src/IceUtil/UtilException.cpp +0 -839
  1034. data/ext/ice/cpp/src/Slice/CPlusPlusUtil.cpp +0 -1810
  1035. data/ext/ice/cpp/src/Slice/CPlusPlusUtil.h +0 -72
  1036. data/ext/ice/cpp/src/Slice/Checksum.cpp +0 -447
  1037. data/ext/ice/cpp/src/Slice/Checksum.h +0 -21
  1038. data/ext/ice/cpp/src/Slice/FileTracker.cpp +0 -146
  1039. data/ext/ice/cpp/src/Slice/FileTracker.h +0 -66
  1040. data/ext/ice/cpp/src/Slice/Grammar.cpp +0 -4793
  1041. data/ext/ice/cpp/src/Slice/Grammar.h +0 -118
  1042. data/ext/ice/cpp/src/Slice/GrammarUtil.h +0 -228
  1043. data/ext/ice/cpp/src/Slice/JavaUtil.cpp +0 -5176
  1044. data/ext/ice/cpp/src/Slice/JavaUtil.h +0 -407
  1045. data/ext/ice/cpp/src/Slice/MD5.cpp +0 -52
  1046. data/ext/ice/cpp/src/Slice/MD5.h +0 -39
  1047. data/ext/ice/cpp/src/Slice/MD5I.cpp +0 -393
  1048. data/ext/ice/cpp/src/Slice/MD5I.h +0 -91
  1049. data/ext/ice/cpp/src/Slice/PHPUtil.cpp +0 -157
  1050. data/ext/ice/cpp/src/Slice/PHPUtil.h +0 -36
  1051. data/ext/ice/cpp/src/Slice/Parser.cpp +0 -7058
  1052. data/ext/ice/cpp/src/Slice/Parser.h +0 -1174
  1053. data/ext/ice/cpp/src/Slice/Preprocessor.cpp +0 -797
  1054. data/ext/ice/cpp/src/Slice/Preprocessor.h +0 -60
  1055. data/ext/ice/cpp/src/Slice/Python.cpp +0 -830
  1056. data/ext/ice/cpp/src/Slice/PythonUtil.cpp +0 -3439
  1057. data/ext/ice/cpp/src/Slice/PythonUtil.h +0 -70
  1058. data/ext/ice/cpp/src/Slice/Ruby.cpp +0 -350
  1059. data/ext/ice/cpp/src/Slice/RubyUtil.cpp +0 -1571
  1060. data/ext/ice/cpp/src/Slice/RubyUtil.h +0 -49
  1061. data/ext/ice/cpp/src/Slice/Scanner.cpp +0 -2807
  1062. data/ext/ice/cpp/src/Slice/SliceUtil.cpp +0 -424
  1063. data/ext/ice/cpp/src/Slice/StringLiteralUtil.cpp +0 -456
  1064. data/ext/ice/cpp/src/Slice/Util.h +0 -50
  1065. data/ext/ice/mcpp/CMakeLists.txt +0 -80
  1066. data/ext/ice/mcpp/LICENSE +0 -29
  1067. data/ext/ice/mcpp/Makefile +0 -63
  1068. data/ext/ice/mcpp/README.md +0 -32
  1069. data/ext/ice/mcpp/internal.H +0 -530
  1070. data/ext/ice/mcpp/mcpp.gyp +0 -88
  1071. data/ext/ice/mcpp/system.c +0 -2737
  1072. data/lib/Glacier2/Metrics.rb +0 -56
  1073. data/lib/Glacier2/PermissionsVerifier.rb +0 -93
  1074. data/lib/Glacier2/PermissionsVerifierF.rb +0 -30
  1075. data/lib/Glacier2/Router.rb +0 -95
  1076. data/lib/Glacier2/RouterF.rb +0 -25
  1077. data/lib/Glacier2/SSLInfo.rb +0 -72
  1078. data/lib/Glacier2/Session.rb +0 -247
  1079. data/lib/Glacier2.rb +0 -7
  1080. data/lib/Ice/BuiltinSequences.rb +0 -60
  1081. data/lib/Ice/Communicator.rb +0 -87
  1082. data/lib/Ice/CommunicatorF.rb +0 -24
  1083. data/lib/Ice/Connection.rb +0 -413
  1084. data/lib/Ice/ConnectionF.rb +0 -32
  1085. data/lib/Ice/Current.rb +0 -141
  1086. data/lib/Ice/Endpoint.rb +0 -187
  1087. data/lib/Ice/EndpointF.rb +0 -48
  1088. data/lib/Ice/EndpointTypes.rb +0 -69
  1089. data/lib/Ice/FacetMap.rb +0 -24
  1090. data/lib/Ice/Identity.rb +0 -63
  1091. data/lib/Ice/ImplicitContext.rb +0 -26
  1092. data/lib/Ice/ImplicitContextF.rb +0 -24
  1093. data/lib/Ice/Instrumentation.rb +0 -169
  1094. data/lib/Ice/InstrumentationF.rb +0 -31
  1095. data/lib/Ice/LocalException.rb +0 -1031
  1096. data/lib/Ice/Locator.rb +0 -196
  1097. data/lib/Ice/LocatorF.rb +0 -30
  1098. data/lib/Ice/Logger.rb +0 -24
  1099. data/lib/Ice/LoggerF.rb +0 -24
  1100. data/lib/Ice/Metrics.rb +0 -337
  1101. data/lib/Ice/ObjectAdapter.rb +0 -29
  1102. data/lib/Ice/ObjectAdapterF.rb +0 -24
  1103. data/lib/Ice/ObjectFactory.rb +0 -24
  1104. data/lib/Ice/Plugin.rb +0 -30
  1105. data/lib/Ice/PluginF.rb +0 -28
  1106. data/lib/Ice/Process.rb +0 -53
  1107. data/lib/Ice/ProcessF.rb +0 -25
  1108. data/lib/Ice/Properties.rb +0 -25
  1109. data/lib/Ice/PropertiesAdmin.rb +0 -63
  1110. data/lib/Ice/PropertiesF.rb +0 -29
  1111. data/lib/Ice/RemoteLogger.rb +0 -207
  1112. data/lib/Ice/Router.rb +0 -87
  1113. data/lib/Ice/RouterF.rb +0 -25
  1114. data/lib/Ice/ServantLocator.rb +0 -26
  1115. data/lib/Ice/ServantLocatorF.rb +0 -24
  1116. data/lib/Ice/SliceChecksumDict.rb +0 -24
  1117. data/lib/Ice/ValueFactory.rb +0 -28
  1118. data/lib/Ice/Version.rb +0 -90
  1119. data/lib/Ice.rb +0 -673
  1120. data/lib/IceBox/IceBox.rb +0 -164
  1121. data/lib/IceBox.rb +0 -5
  1122. data/lib/IceGrid/Admin.rb +0 -1196
  1123. data/lib/IceGrid/Descriptor.rb +0 -1034
  1124. data/lib/IceGrid/Exception.rb +0 -376
  1125. data/lib/IceGrid/FileParser.rb +0 -65
  1126. data/lib/IceGrid/PluginFacade.rb +0 -35
  1127. data/lib/IceGrid/Registry.rb +0 -209
  1128. data/lib/IceGrid/Session.rb +0 -71
  1129. data/lib/IceGrid/UserAccountMapper.rb +0 -61
  1130. data/lib/IceGrid.rb +0 -9
  1131. data/lib/IcePatch2/FileInfo.rb +0 -115
  1132. data/lib/IcePatch2/FileServer.rb +0 -123
  1133. data/lib/IcePatch2.rb +0 -5
  1134. data/lib/IceStorm/IceStorm.rb +0 -332
  1135. data/lib/IceStorm/Metrics.rb +0 -73
  1136. data/lib/IceStorm.rb +0 -6
  1137. data/slice/Glacier2/Metrics.ice +0 -88
  1138. data/slice/Glacier2/PermissionsVerifier.ice +0 -111
  1139. data/slice/Glacier2/PermissionsVerifierF.ice +0 -30
  1140. data/slice/Glacier2/Router.ice +0 -186
  1141. data/slice/Glacier2/RouterF.ice +0 -29
  1142. data/slice/Glacier2/SSLInfo.ice +0 -59
  1143. data/slice/Glacier2/Session.ice +0 -274
  1144. data/slice/Ice/BuiltinSequences.ice +0 -59
  1145. data/slice/Ice/Communicator.ice +0 -676
  1146. data/slice/Ice/CommunicatorF.ice +0 -31
  1147. data/slice/Ice/Connection.ice +0 -516
  1148. data/slice/Ice/ConnectionF.ice +0 -33
  1149. data/slice/Ice/Current.ice +0 -170
  1150. data/slice/Ice/Endpoint.ice +0 -291
  1151. data/slice/Ice/EndpointF.ice +0 -43
  1152. data/slice/Ice/EndpointTypes.ice +0 -48
  1153. data/slice/Ice/FacetMap.ice +0 -36
  1154. data/slice/Ice/Identity.ice +0 -75
  1155. data/slice/Ice/ImplicitContext.ice +0 -119
  1156. data/slice/Ice/ImplicitContextF.ice +0 -30
  1157. data/slice/Ice/Instrumentation.ice +0 -509
  1158. data/slice/Ice/InstrumentationF.ice +0 -38
  1159. data/slice/Ice/LocalException.ice +0 -1040
  1160. data/slice/Ice/Locator.ice +0 -239
  1161. data/slice/Ice/LocatorF.ice +0 -32
  1162. data/slice/Ice/Logger.ice +0 -99
  1163. data/slice/Ice/LoggerF.ice +0 -31
  1164. data/slice/Ice/Metrics.ice +0 -436
  1165. data/slice/Ice/ObjectAdapter.ice +0 -710
  1166. data/slice/Ice/ObjectAdapterF.ice +0 -31
  1167. data/slice/Ice/ObjectFactory.ice +0 -71
  1168. data/slice/Ice/Plugin.ice +0 -131
  1169. data/slice/Ice/PluginF.ice +0 -36
  1170. data/slice/Ice/Process.ice +0 -64
  1171. data/slice/Ice/ProcessF.ice +0 -31
  1172. data/slice/Ice/Properties.ice +0 -244
  1173. data/slice/Ice/PropertiesAdmin.ice +0 -87
  1174. data/slice/Ice/PropertiesF.ice +0 -32
  1175. data/slice/Ice/RemoteLogger.ice +0 -226
  1176. data/slice/Ice/Router.ice +0 -103
  1177. data/slice/Ice/RouterF.ice +0 -31
  1178. data/slice/Ice/ServantLocator.ice +0 -136
  1179. data/slice/Ice/ServantLocatorF.ice +0 -31
  1180. data/slice/Ice/SliceChecksumDict.ice +0 -36
  1181. data/slice/Ice/ValueFactory.ice +0 -133
  1182. data/slice/Ice/Version.ice +0 -51
  1183. data/slice/IceBT/ConnectionInfo.ice +0 -59
  1184. data/slice/IceBT/EndpointInfo.ice +0 -57
  1185. data/slice/IceBT/Types.ice +0 -45
  1186. data/slice/IceBox/IceBox.ice +0 -216
  1187. data/slice/IceDiscovery/IceDiscovery.ice +0 -98
  1188. data/slice/IceGrid/Admin.ice +0 -1957
  1189. data/slice/IceGrid/Descriptor.ice +0 -1094
  1190. data/slice/IceGrid/Exception.ice +0 -396
  1191. data/slice/IceGrid/FileParser.ice +0 -72
  1192. data/slice/IceGrid/PluginFacade.ice +0 -329
  1193. data/slice/IceGrid/Registry.ice +0 -269
  1194. data/slice/IceGrid/Session.ice +0 -128
  1195. data/slice/IceGrid/UserAccountMapper.ice +0 -69
  1196. data/slice/IceIAP/ConnectionInfo.ice +0 -74
  1197. data/slice/IceIAP/EndpointInfo.ice +0 -68
  1198. data/slice/IceLocatorDiscovery/IceLocatorDiscovery.ice +0 -83
  1199. data/slice/IcePatch2/FileInfo.ice +0 -85
  1200. data/slice/IcePatch2/FileServer.ice +0 -191
  1201. data/slice/IceSSL/ConnectionInfo.ice +0 -54
  1202. data/slice/IceSSL/ConnectionInfoF.ice +0 -31
  1203. data/slice/IceSSL/EndpointInfo.ice +0 -45
  1204. data/slice/IceStorm/IceStorm.ice +0 -414
  1205. data/slice/IceStorm/Metrics.ice +0 -83
  1206. /data/{ext → dist}/ice/mcpp/config.h +0 -0
  1207. /data/{ext → dist}/ice/mcpp/configed.H +0 -0
  1208. /data/{ext → dist}/ice/mcpp/directive.c +0 -0
  1209. /data/{ext → dist}/ice/mcpp/eval.c +0 -0
  1210. /data/{ext → dist}/ice/mcpp/expand.c +0 -0
  1211. /data/{ext → dist}/ice/mcpp/mbchar.c +0 -0
  1212. /data/{ext → dist}/ice/mcpp/mcpp_lib.h +0 -0
  1213. /data/{ext/ice/mcpp/main.c → dist/ice/mcpp/mcpp_main.c} +0 -0
  1214. /data/{ext → dist}/ice/mcpp/mcpp_out.h +0 -0
  1215. /data/{ext → dist}/ice/mcpp/support.c +0 -0
  1216. /data/{ext → dist}/ice/mcpp/system.H +0 -0
@@ -0,0 +1,1584 @@
1
+ // Copyright (c) ZeroC, Inc.
2
+
3
+ #include "Reference.h"
4
+ #include "CollocatedRequestHandler.h"
5
+ #include "ConnectRequestHandler.h"
6
+ #include "ConnectionFactory.h"
7
+ #include "ConnectionI.h"
8
+ #include "DefaultsAndOverrides.h"
9
+ #include "EndpointI.h"
10
+ #include "FixedRequestHandler.h"
11
+ #include "HashUtil.h"
12
+ #include "Ice/LocalExceptions.h"
13
+ #include "Ice/Locator.h"
14
+ #include "Ice/LoggerUtil.h"
15
+ #include "Ice/OutputStream.h"
16
+ #include "Ice/Router.h"
17
+ #include "Ice/StringUtil.h"
18
+ #include "Instance.h"
19
+ #include "LocatorInfo.h"
20
+ #include "ObjectAdapterFactory.h"
21
+ #include "OpaqueEndpointI.h"
22
+ #include "Random.h"
23
+ #include "ReferenceFactory.h"
24
+ #include "RouterInfo.h"
25
+ #include "TargetCompare.h"
26
+ #include "TraceLevels.h"
27
+
28
+ #include <algorithm>
29
+ #include <functional>
30
+
31
+ using namespace std;
32
+ using namespace Ice;
33
+ using namespace IceInternal;
34
+
35
+ CommunicatorPtr
36
+ IceInternal::Reference::getCommunicator() const noexcept
37
+ {
38
+ return _communicator;
39
+ }
40
+
41
+ ReferencePtr
42
+ IceInternal::Reference::changeContext(Context newContext) const
43
+ {
44
+ ReferencePtr r = clone();
45
+ r->_context = make_shared<SharedContext>(std::move(newContext));
46
+ return r;
47
+ }
48
+
49
+ ReferencePtr
50
+ IceInternal::Reference::changeMode(Mode newMode) const
51
+ {
52
+ ReferencePtr r = clone();
53
+ r->_mode = newMode;
54
+ return r;
55
+ }
56
+
57
+ ReferencePtr
58
+ IceInternal::Reference::changeIdentity(Identity newIdentity) const
59
+ {
60
+ ReferencePtr r = clone();
61
+ r->_identity = std::move(newIdentity);
62
+ return r;
63
+ }
64
+
65
+ ReferencePtr
66
+ IceInternal::Reference::changeFacet(string newFacet) const
67
+ {
68
+ ReferencePtr r = clone();
69
+ r->_facet = std::move(newFacet);
70
+ return r;
71
+ }
72
+
73
+ ReferencePtr
74
+ IceInternal::Reference::changeInvocationTimeout(chrono::milliseconds invocationTimeout) const
75
+ {
76
+ ReferencePtr r = clone();
77
+ r->_invocationTimeout = invocationTimeout;
78
+ return r;
79
+ }
80
+
81
+ ReferencePtr
82
+ IceInternal::Reference::changeEncoding(Ice::EncodingVersion encoding) const
83
+ {
84
+ ReferencePtr r = clone();
85
+ r->_encoding = encoding;
86
+ return r;
87
+ }
88
+
89
+ ReferencePtr
90
+ IceInternal::Reference::changeCompress(bool newCompress) const
91
+ {
92
+ ReferencePtr r = clone();
93
+ r->_compress = newCompress;
94
+ return r;
95
+ }
96
+
97
+ optional<bool>
98
+ IceInternal::Reference::getCompressOverride() const noexcept
99
+ {
100
+ DefaultsAndOverridesPtr defaultsAndOverrides = getInstance()->defaultsAndOverrides();
101
+ optional<bool> compress =
102
+ defaultsAndOverrides->overrideCompress.has_value() ? defaultsAndOverrides->overrideCompress : _compress;
103
+ return compress;
104
+ }
105
+
106
+ size_t
107
+ Reference::hash() const noexcept
108
+ {
109
+ size_t h = 5381;
110
+ hashAdd(h, static_cast<int32_t>(_mode));
111
+ hashAdd(h, _identity.name);
112
+ hashAdd(h, _identity.category);
113
+ hashAdd(h, _context->getValue());
114
+ hashAdd(h, _facet);
115
+ hashAdd(h, _compress);
116
+ // We don't include protocol and encoding in the hash; they are using 1.0 and 1.1, respectively.
117
+ hashAdd(h, _invocationTimeout.count());
118
+ return h;
119
+ }
120
+
121
+ void
122
+ IceInternal::Reference::streamWrite(OutputStream* s) const
123
+ {
124
+ //
125
+ // Don't write the identity here. Operations calling streamWrite
126
+ // write the identity.
127
+ //
128
+
129
+ //
130
+ // For compatibility with the old FacetPath.
131
+ //
132
+ if (_facet.empty())
133
+ {
134
+ s->write(static_cast<string*>(nullptr), static_cast<string*>(nullptr));
135
+ }
136
+ else
137
+ {
138
+ s->write(&_facet, &_facet + 1);
139
+ }
140
+
141
+ s->write(static_cast<uint8_t>(_mode));
142
+
143
+ s->write(false); // secure, no longer used
144
+
145
+ if (s->getEncoding() != Ice::Encoding_1_0)
146
+ {
147
+ s->write(_protocol);
148
+ s->write(_encoding);
149
+ }
150
+
151
+ // Derived class writes the remainder of the reference.
152
+ }
153
+
154
+ string
155
+ IceInternal::Reference::toString() const
156
+ {
157
+ //
158
+ // WARNING: Certain features, such as proxy validation in Glacier2,
159
+ // depend on the format of proxy strings. Changes to toString() and
160
+ // methods called to generate parts of the reference string could break
161
+ // these features. Please review for all features that depend on the
162
+ // format of proxyToString() before changing this and related code.
163
+ //
164
+ ostringstream s;
165
+
166
+ ToStringMode toStringMode = _instance->toStringMode();
167
+ const string separators = " :@";
168
+
169
+ string id = Ice::identityToString(_identity, toStringMode);
170
+
171
+ //
172
+ // If the encoded identity string contains characters which
173
+ // the reference parser uses as separators, then we enclose
174
+ // the identity string in quotes.
175
+ //
176
+
177
+ if (id.find_first_of(separators) != string::npos)
178
+ {
179
+ s << '"' << id << '"';
180
+ }
181
+ else
182
+ {
183
+ s << id;
184
+ }
185
+
186
+ if (!_facet.empty())
187
+ {
188
+ s << " -f ";
189
+
190
+ string fs = escapeString(_facet, "", toStringMode);
191
+ //
192
+ // If the encoded facet string contains characters which
193
+ // the reference parser uses as separators, then we enclose
194
+ // the facet string in quotes.
195
+ //
196
+ if (fs.find_first_of(separators) != string::npos)
197
+ {
198
+ s << '"' << fs << '"';
199
+ }
200
+ else
201
+ {
202
+ s << fs;
203
+ }
204
+ }
205
+
206
+ switch (_mode)
207
+ {
208
+ case ModeTwoway:
209
+ {
210
+ // Don't print the default mode.
211
+ break;
212
+ }
213
+
214
+ case ModeOneway:
215
+ {
216
+ s << " -o";
217
+ break;
218
+ }
219
+
220
+ case ModeBatchOneway:
221
+ {
222
+ s << " -O";
223
+ break;
224
+ }
225
+
226
+ case ModeDatagram:
227
+ {
228
+ s << " -d";
229
+ break;
230
+ }
231
+
232
+ case ModeBatchDatagram:
233
+ {
234
+ s << " -D";
235
+ break;
236
+ }
237
+ }
238
+
239
+ if (_protocol != Protocol_1_0)
240
+ {
241
+ // We print the protocol unless it's 1.0.
242
+ s << " -p " << _protocol;
243
+ }
244
+
245
+ // We print the encoding if it's not 1.1 or if Ice.Default.EncodingVersion is set to something other than 1.1.
246
+ if (_encoding != Ice::Encoding_1_1 || _instance->defaultsAndOverrides()->defaultEncoding != Ice::Encoding_1_1)
247
+ {
248
+ s << " -e " << _encoding;
249
+ }
250
+
251
+ return s.str();
252
+
253
+ // Derived class writes the remainder of the string.
254
+ }
255
+
256
+ bool
257
+ IceInternal::Reference::operator==(const Reference& r) const noexcept
258
+ {
259
+ //
260
+ // Note: if(this == &r) test is performed by each non-abstract derived class.
261
+ //
262
+
263
+ if (_mode != r._mode)
264
+ {
265
+ return false;
266
+ }
267
+
268
+ if (_identity != r._identity)
269
+ {
270
+ return false;
271
+ }
272
+
273
+ if (_context->getValue() != r._context->getValue())
274
+ {
275
+ return false;
276
+ }
277
+
278
+ if (_facet != r._facet)
279
+ {
280
+ return false;
281
+ }
282
+
283
+ if (_compress != r._compress)
284
+ {
285
+ return false;
286
+ }
287
+
288
+ if (_protocol != r._protocol)
289
+ {
290
+ return false;
291
+ }
292
+
293
+ if (_encoding != r._encoding)
294
+ {
295
+ return false;
296
+ }
297
+
298
+ if (_invocationTimeout != r._invocationTimeout)
299
+ {
300
+ return false;
301
+ }
302
+ return true;
303
+ }
304
+
305
+ bool
306
+ IceInternal::Reference::operator<(const Reference& r) const noexcept
307
+ {
308
+ //
309
+ // Note: if(this == &r) test is performed by each non-abstract derived class.
310
+ //
311
+
312
+ if (_mode < r._mode)
313
+ {
314
+ return true;
315
+ }
316
+ else if (r._mode < _mode)
317
+ {
318
+ return false;
319
+ }
320
+
321
+ if (_identity < r._identity)
322
+ {
323
+ return true;
324
+ }
325
+ else if (r._identity < _identity)
326
+ {
327
+ return false;
328
+ }
329
+
330
+ if (_context->getValue() < r._context->getValue())
331
+ {
332
+ return true;
333
+ }
334
+ else if (r._context->getValue() < _context->getValue())
335
+ {
336
+ return false;
337
+ }
338
+
339
+ if (_facet < r._facet)
340
+ {
341
+ return true;
342
+ }
343
+ else if (r._facet < _facet)
344
+ {
345
+ return false;
346
+ }
347
+
348
+ if (_compress < r._compress)
349
+ {
350
+ return true;
351
+ }
352
+ else if (r._compress < _compress)
353
+ {
354
+ return false;
355
+ }
356
+
357
+ if (_protocol < r._protocol)
358
+ {
359
+ return true;
360
+ }
361
+ else if (r._protocol < _protocol)
362
+ {
363
+ return false;
364
+ }
365
+
366
+ if (_encoding < r._encoding)
367
+ {
368
+ return true;
369
+ }
370
+ else if (r._encoding < _encoding)
371
+ {
372
+ return false;
373
+ }
374
+
375
+ if (_invocationTimeout < r._invocationTimeout)
376
+ {
377
+ return true;
378
+ }
379
+ else if (r._invocationTimeout < _invocationTimeout)
380
+ {
381
+ return false;
382
+ }
383
+
384
+ return false;
385
+ }
386
+
387
+ IceInternal::Reference::Reference(
388
+ InstancePtr instance,
389
+ CommunicatorPtr communicator,
390
+ Identity id,
391
+ string facet,
392
+ Mode mode,
393
+ std::optional<bool> compress,
394
+ ProtocolVersion protocol,
395
+ EncodingVersion encoding,
396
+ chrono::milliseconds invocationTimeout,
397
+ Context ctx)
398
+ : _instance(std::move(instance)),
399
+ _communicator(std::move(communicator)),
400
+ _mode(mode),
401
+ _compress(compress),
402
+ _identity(std::move(id)),
403
+ _context(make_shared<SharedContext>(std::move(ctx))),
404
+ _facet(std::move(facet)),
405
+ _protocol(protocol),
406
+ _encoding(encoding),
407
+ _invocationTimeout(invocationTimeout)
408
+ {
409
+ }
410
+
411
+ IceInternal::Reference::Reference(const Reference& r)
412
+ : enable_shared_from_this<Reference>(),
413
+ _instance(r._instance),
414
+ _communicator(r._communicator),
415
+ _mode(r._mode),
416
+ _compress(r._compress),
417
+ _identity(r._identity),
418
+ _context(r._context),
419
+ _facet(r._facet),
420
+ _protocol(r._protocol),
421
+ _encoding(r._encoding),
422
+ _invocationTimeout(r._invocationTimeout)
423
+ {
424
+ }
425
+
426
+ IceInternal::FixedReference::FixedReference(
427
+ InstancePtr instance,
428
+ CommunicatorPtr communicator,
429
+ Identity id,
430
+ string facet,
431
+ Mode mode,
432
+ std::optional<bool> compress,
433
+ ProtocolVersion protocol,
434
+ EncodingVersion encoding,
435
+ ConnectionIPtr fixedConnection,
436
+ chrono::milliseconds invocationTimeout,
437
+ Ice::Context context)
438
+ : Reference(
439
+ std::move(instance),
440
+ std::move(communicator),
441
+ std::move(id),
442
+ std::move(facet),
443
+ mode,
444
+ compress,
445
+ protocol,
446
+ encoding,
447
+ invocationTimeout,
448
+ std::move(context)),
449
+ _fixedConnection(std::move(fixedConnection))
450
+ {
451
+ }
452
+
453
+ vector<EndpointIPtr>
454
+ IceInternal::FixedReference::getEndpoints() const
455
+ {
456
+ return {};
457
+ }
458
+
459
+ string
460
+ IceInternal::FixedReference::getAdapterId() const
461
+ {
462
+ return {};
463
+ }
464
+
465
+ bool
466
+ IceInternal::FixedReference::getCollocationOptimized() const noexcept
467
+ {
468
+ return false;
469
+ }
470
+
471
+ bool
472
+ IceInternal::FixedReference::getCacheConnection() const noexcept
473
+ {
474
+ return true;
475
+ }
476
+
477
+ Ice::EndpointSelectionType
478
+ IceInternal::FixedReference::getEndpointSelection() const noexcept
479
+ {
480
+ return EndpointSelectionType::Random;
481
+ }
482
+
483
+ chrono::milliseconds
484
+ IceInternal::FixedReference::getLocatorCacheTimeout() const noexcept
485
+ {
486
+ return 0ms;
487
+ }
488
+
489
+ string
490
+ IceInternal::FixedReference::getConnectionId() const
491
+ {
492
+ return {};
493
+ }
494
+
495
+ ReferencePtr
496
+ IceInternal::FixedReference::changeEndpoints(vector<EndpointIPtr> /*newEndpoints*/) const
497
+ {
498
+ throw FixedProxyException(__FILE__, __LINE__);
499
+ }
500
+
501
+ ReferencePtr
502
+ IceInternal::FixedReference::changeAdapterId(string /*newAdapterId*/) const
503
+ {
504
+ throw FixedProxyException(__FILE__, __LINE__);
505
+ }
506
+
507
+ ReferencePtr
508
+ IceInternal::FixedReference::changeLocator(optional<LocatorPrx>) const
509
+ {
510
+ throw FixedProxyException(__FILE__, __LINE__);
511
+ }
512
+
513
+ ReferencePtr
514
+ IceInternal::FixedReference::changeRouter(optional<RouterPrx>) const
515
+ {
516
+ throw FixedProxyException(__FILE__, __LINE__);
517
+ }
518
+
519
+ ReferencePtr
520
+ IceInternal::FixedReference::changeCollocationOptimized(bool) const
521
+ {
522
+ throw FixedProxyException(__FILE__, __LINE__);
523
+ }
524
+
525
+ ReferencePtr
526
+ IceInternal::FixedReference::changeCacheConnection(bool) const
527
+ {
528
+ throw FixedProxyException(__FILE__, __LINE__);
529
+ }
530
+
531
+ ReferencePtr
532
+ IceInternal::FixedReference::changeEndpointSelection(EndpointSelectionType) const
533
+ {
534
+ throw FixedProxyException(__FILE__, __LINE__);
535
+ }
536
+
537
+ ReferencePtr
538
+ IceInternal::FixedReference::changeLocatorCacheTimeout(chrono::milliseconds) const
539
+ {
540
+ throw FixedProxyException(__FILE__, __LINE__);
541
+ }
542
+
543
+ ReferencePtr
544
+ IceInternal::FixedReference::changeConnectionId(string) const
545
+ {
546
+ throw FixedProxyException(__FILE__, __LINE__);
547
+ }
548
+
549
+ ReferencePtr
550
+ IceInternal::FixedReference::changeConnection(Ice::ConnectionIPtr newConnection) const
551
+ {
552
+ FixedReferencePtr r = dynamic_pointer_cast<FixedReference>(clone());
553
+ r->_fixedConnection = std::move(newConnection);
554
+ return r;
555
+ }
556
+
557
+ bool
558
+ IceInternal::FixedReference::isIndirect() const noexcept
559
+ {
560
+ return false;
561
+ }
562
+
563
+ bool
564
+ IceInternal::FixedReference::isWellKnown() const noexcept
565
+ {
566
+ return false;
567
+ }
568
+
569
+ void
570
+ IceInternal::FixedReference::streamWrite(OutputStream*) const
571
+ {
572
+ throw FixedProxyException(__FILE__, __LINE__);
573
+ }
574
+
575
+ PropertyDict
576
+ IceInternal::FixedReference::toProperty(string) const
577
+ {
578
+ throw FixedProxyException(__FILE__, __LINE__);
579
+ }
580
+
581
+ RequestHandlerPtr
582
+ IceInternal::FixedReference::getRequestHandler() const
583
+ {
584
+ // We need to perform all these checks here and not in the constructor because changeConnection() clones then
585
+ // sets the connection.
586
+
587
+ switch (getMode())
588
+ {
589
+ case Reference::ModeTwoway:
590
+ case Reference::ModeOneway:
591
+ case Reference::ModeBatchOneway:
592
+ {
593
+ if (_fixedConnection->endpoint()->datagram())
594
+ {
595
+ throw NoEndpointException(
596
+ __FILE__,
597
+ __LINE__,
598
+ ObjectPrx::_fromReference(const_cast<FixedReference*>(this)->shared_from_this()));
599
+ }
600
+ break;
601
+ }
602
+
603
+ case Reference::ModeDatagram:
604
+ case Reference::ModeBatchDatagram:
605
+ {
606
+ if (!_fixedConnection->endpoint()->datagram())
607
+ {
608
+ throw NoEndpointException(
609
+ __FILE__,
610
+ __LINE__,
611
+ ObjectPrx::_fromReference(const_cast<FixedReference*>(this)->shared_from_this()));
612
+ }
613
+ break;
614
+ }
615
+ }
616
+
617
+ _fixedConnection->throwException(); // Throw in case our connection is already destroyed.
618
+
619
+ DefaultsAndOverridesPtr defaultsAndOverrides = getInstance()->defaultsAndOverrides();
620
+ bool compress = defaultsAndOverrides->overrideCompress.has_value() ? *defaultsAndOverrides->overrideCompress
621
+ : getCompress().value_or(false);
622
+
623
+ ReferencePtr ref = const_cast<FixedReference*>(this)->shared_from_this();
624
+ return make_shared<FixedRequestHandler>(ref, _fixedConnection, compress);
625
+ }
626
+
627
+ const BatchRequestQueuePtr&
628
+ IceInternal::FixedReference::getBatchRequestQueue() const noexcept
629
+ {
630
+ return _fixedConnection->getBatchRequestQueue();
631
+ }
632
+
633
+ bool
634
+ IceInternal::FixedReference::operator==(const Reference& r) const noexcept
635
+ {
636
+ if (this == &r)
637
+ {
638
+ return true;
639
+ }
640
+ const auto* rhs = dynamic_cast<const FixedReference*>(&r);
641
+ if (!rhs || !Reference::operator==(r))
642
+ {
643
+ return false;
644
+ }
645
+ return _fixedConnection == rhs->_fixedConnection;
646
+ }
647
+
648
+ bool
649
+ IceInternal::FixedReference::operator<(const Reference& r) const noexcept
650
+ {
651
+ if (this == &r)
652
+ {
653
+ return false;
654
+ }
655
+ if (Reference::operator<(r))
656
+ {
657
+ return true;
658
+ }
659
+ if (!Reference::operator==(r))
660
+ {
661
+ return false;
662
+ }
663
+
664
+ const auto* rhs = dynamic_cast<const FixedReference*>(&r);
665
+ if (!rhs)
666
+ {
667
+ assert(dynamic_cast<const RoutableReference*>(&r));
668
+ return false; // As a rule, routable references are superior to fixed references.
669
+ }
670
+ return _fixedConnection < rhs->_fixedConnection;
671
+ }
672
+
673
+ ReferencePtr
674
+ IceInternal::FixedReference::clone() const
675
+ {
676
+ return make_shared<FixedReference>(*this);
677
+ }
678
+
679
+ IceInternal::RoutableReference::RoutableReference(
680
+ InstancePtr instance,
681
+ CommunicatorPtr communicator,
682
+ Identity id,
683
+ string facet,
684
+ Mode mode,
685
+ optional<bool> compress,
686
+ ProtocolVersion protocol,
687
+ EncodingVersion encoding,
688
+ vector<EndpointIPtr> endpoints,
689
+ string adapterId,
690
+ LocatorInfoPtr locatorInfo,
691
+ RouterInfoPtr routerInfo,
692
+ bool collocationOptimized,
693
+ bool cacheConnection,
694
+ EndpointSelectionType endpointSelection,
695
+ chrono::milliseconds locatorCacheTimeout,
696
+ chrono::milliseconds invocationTimeout,
697
+ Ice::Context ctx)
698
+ : Reference(
699
+ std::move(instance),
700
+ std::move(communicator),
701
+ std::move(id),
702
+ std::move(facet),
703
+ mode,
704
+ compress,
705
+ protocol,
706
+ encoding,
707
+ invocationTimeout,
708
+ std::move(ctx)),
709
+ _endpoints(std::move(endpoints)),
710
+ _adapterId(std::move(adapterId)),
711
+ _locatorInfo(std::move(locatorInfo)),
712
+ _routerInfo(std::move(routerInfo)),
713
+ _collocationOptimized(collocationOptimized),
714
+ _cacheConnection(cacheConnection),
715
+ _endpointSelection(endpointSelection),
716
+ _locatorCacheTimeout(locatorCacheTimeout)
717
+ {
718
+ assert(_adapterId.empty() || _endpoints.empty());
719
+ setBatchRequestQueue();
720
+ }
721
+
722
+ vector<EndpointIPtr>
723
+ IceInternal::RoutableReference::getEndpoints() const
724
+ {
725
+ return _endpoints;
726
+ }
727
+
728
+ string
729
+ IceInternal::RoutableReference::getAdapterId() const
730
+ {
731
+ return _adapterId;
732
+ }
733
+
734
+ LocatorInfoPtr
735
+ IceInternal::RoutableReference::getLocatorInfo() const noexcept
736
+ {
737
+ return _locatorInfo;
738
+ }
739
+
740
+ RouterInfoPtr
741
+ IceInternal::RoutableReference::getRouterInfo() const noexcept
742
+ {
743
+ return _routerInfo;
744
+ }
745
+
746
+ bool
747
+ IceInternal::RoutableReference::getCollocationOptimized() const noexcept
748
+ {
749
+ return _collocationOptimized;
750
+ }
751
+
752
+ bool
753
+ IceInternal::RoutableReference::getCacheConnection() const noexcept
754
+ {
755
+ return _cacheConnection;
756
+ }
757
+
758
+ Ice::EndpointSelectionType
759
+ IceInternal::RoutableReference::getEndpointSelection() const noexcept
760
+ {
761
+ return _endpointSelection;
762
+ }
763
+
764
+ chrono::milliseconds
765
+ IceInternal::RoutableReference::getLocatorCacheTimeout() const noexcept
766
+ {
767
+ return _locatorCacheTimeout;
768
+ }
769
+
770
+ string
771
+ IceInternal::RoutableReference::getConnectionId() const
772
+ {
773
+ return _connectionId;
774
+ }
775
+
776
+ ReferencePtr
777
+ IceInternal::RoutableReference::changeMode(Mode newMode) const
778
+ {
779
+ ReferencePtr r = Reference::changeMode(newMode);
780
+ static_pointer_cast<RoutableReference>(r)->setBatchRequestQueue();
781
+ return r;
782
+ }
783
+
784
+ ReferencePtr
785
+ IceInternal::RoutableReference::changeEncoding(Ice::EncodingVersion encoding) const
786
+ {
787
+ ReferencePtr r = Reference::changeEncoding(encoding);
788
+ if (r.get() != const_cast<RoutableReference*>(this))
789
+ {
790
+ LocatorInfoPtr& locInfo = dynamic_pointer_cast<RoutableReference>(r)->_locatorInfo;
791
+ if (locInfo && locInfo->getLocator()->ice_getEncodingVersion() != encoding)
792
+ {
793
+ locInfo = getInstance()->locatorManager()->get(locInfo->getLocator()->ice_encodingVersion(encoding));
794
+ }
795
+ }
796
+ return r;
797
+ }
798
+
799
+ ReferencePtr
800
+ IceInternal::RoutableReference::changeCompress(bool newCompress) const
801
+ {
802
+ ReferencePtr r = Reference::changeCompress(newCompress);
803
+ // Also override the compress flag on the endpoints if it was updated.
804
+ if (r.get() != const_cast<RoutableReference*>(this) && !_endpoints.empty())
805
+ {
806
+ vector<EndpointIPtr> newEndpoints;
807
+ newEndpoints.reserve(_endpoints.size());
808
+ for (const auto& endpoint : _endpoints)
809
+ {
810
+ newEndpoints.push_back(endpoint->compress(newCompress));
811
+ }
812
+ dynamic_pointer_cast<RoutableReference>(r)->_endpoints = newEndpoints;
813
+ }
814
+ return r;
815
+ }
816
+
817
+ ReferencePtr
818
+ IceInternal::RoutableReference::changeEndpoints(vector<EndpointIPtr> newEndpoints) const
819
+ {
820
+ RoutableReferencePtr r = dynamic_pointer_cast<RoutableReference>(clone());
821
+ r->_endpoints = std::move(newEndpoints);
822
+ r->applyOverrides(r->_endpoints);
823
+ r->_adapterId.clear();
824
+ return r;
825
+ }
826
+
827
+ ReferencePtr
828
+ IceInternal::RoutableReference::changeAdapterId(string newAdapterId) const
829
+ {
830
+ RoutableReferencePtr r = dynamic_pointer_cast<RoutableReference>(clone());
831
+ r->_adapterId = std::move(newAdapterId);
832
+ r->_endpoints.clear();
833
+ return r;
834
+ }
835
+
836
+ ReferencePtr
837
+ IceInternal::RoutableReference::changeLocator(optional<LocatorPrx> newLocator) const
838
+ {
839
+ LocatorInfoPtr newLocatorInfo = newLocator ? getInstance()->locatorManager()->get(newLocator.value()) : nullptr;
840
+ RoutableReferencePtr r = dynamic_pointer_cast<RoutableReference>(clone());
841
+ r->_locatorInfo = std::move(newLocatorInfo);
842
+ return r;
843
+ }
844
+
845
+ ReferencePtr
846
+ IceInternal::RoutableReference::changeRouter(optional<RouterPrx> newRouter) const
847
+ {
848
+ RouterInfoPtr newRouterInfo = newRouter ? getInstance()->routerManager()->get(newRouter.value()) : nullptr;
849
+ RoutableReferencePtr r = dynamic_pointer_cast<RoutableReference>(clone());
850
+ r->_routerInfo = std::move(newRouterInfo);
851
+ return r;
852
+ }
853
+
854
+ ReferencePtr
855
+ IceInternal::RoutableReference::changeCollocationOptimized(bool newCollocationOptimized) const
856
+ {
857
+ RoutableReferencePtr r = dynamic_pointer_cast<RoutableReference>(clone());
858
+ r->_collocationOptimized = newCollocationOptimized;
859
+ return r;
860
+ }
861
+
862
+ ReferencePtr
863
+ IceInternal::RoutableReference::changeCacheConnection(bool newCache) const
864
+ {
865
+ RoutableReferencePtr r = dynamic_pointer_cast<RoutableReference>(clone());
866
+ r->_cacheConnection = newCache;
867
+ return r;
868
+ }
869
+
870
+ ReferencePtr
871
+ IceInternal::RoutableReference::changeEndpointSelection(EndpointSelectionType newType) const
872
+ {
873
+ RoutableReferencePtr r = dynamic_pointer_cast<RoutableReference>(clone());
874
+ r->_endpointSelection = newType;
875
+ return r;
876
+ }
877
+
878
+ ReferencePtr
879
+ IceInternal::RoutableReference::changeLocatorCacheTimeout(chrono::milliseconds timeout) const
880
+ {
881
+ RoutableReferencePtr r = dynamic_pointer_cast<RoutableReference>(clone());
882
+ r->_locatorCacheTimeout = timeout;
883
+ return r;
884
+ }
885
+
886
+ ReferencePtr
887
+ IceInternal::RoutableReference::changeConnectionId(string id) const
888
+ {
889
+ RoutableReferencePtr r = dynamic_pointer_cast<RoutableReference>(clone());
890
+ r->_connectionId = id;
891
+ if (!_endpoints.empty()) // Also override the connection id on the endpoints.
892
+ {
893
+ vector<EndpointIPtr> newEndpoints;
894
+ newEndpoints.reserve(_endpoints.size());
895
+ for (const auto& endpoint : _endpoints)
896
+ {
897
+ newEndpoints.push_back(endpoint->connectionId(id));
898
+ }
899
+ r->_endpoints = newEndpoints;
900
+ }
901
+ return r;
902
+ }
903
+
904
+ ReferencePtr
905
+ IceInternal::RoutableReference::changeConnection(Ice::ConnectionIPtr connection) const
906
+ {
907
+ return make_shared<FixedReference>(
908
+ getInstance(),
909
+ getCommunicator(),
910
+ getIdentity(),
911
+ getFacet(),
912
+ getMode(),
913
+ getCompress(),
914
+ getProtocol(),
915
+ getEncoding(),
916
+ std::move(connection),
917
+ getInvocationTimeout(),
918
+ getContext()->getValue());
919
+ }
920
+
921
+ bool
922
+ IceInternal::RoutableReference::isIndirect() const noexcept
923
+ {
924
+ return _endpoints.empty();
925
+ }
926
+
927
+ bool
928
+ IceInternal::RoutableReference::isWellKnown() const noexcept
929
+ {
930
+ return _endpoints.empty() && _adapterId.empty();
931
+ }
932
+
933
+ void
934
+ IceInternal::RoutableReference::streamWrite(OutputStream* s) const
935
+ {
936
+ Reference::streamWrite(s);
937
+
938
+ auto sz = static_cast<int32_t>(_endpoints.size());
939
+ s->writeSize(sz);
940
+ if (sz)
941
+ {
942
+ assert(_adapterId.empty());
943
+ for (const auto& endpoint : _endpoints)
944
+ {
945
+ s->write(endpoint->type());
946
+ endpoint->streamWrite(s);
947
+ }
948
+ }
949
+ else
950
+ {
951
+ s->write(_adapterId);
952
+ }
953
+ }
954
+
955
+ string
956
+ IceInternal::RoutableReference::toString() const
957
+ {
958
+ //
959
+ // WARNING: Certain features, such as proxy validation in Glacier2,
960
+ // depend on the format of proxy strings. Changes to toString() and
961
+ // methods called to generate parts of the reference string could break
962
+ // these features. Please review for all features that depend on the
963
+ // format of proxyToString() before changing this and related code.
964
+ //
965
+ string result = Reference::toString();
966
+
967
+ if (!_endpoints.empty())
968
+ {
969
+ for (const auto& endpoint : _endpoints)
970
+ {
971
+ string endp = endpoint->toString();
972
+ if (!endp.empty())
973
+ {
974
+ result.append(":");
975
+ result.append(endp);
976
+ }
977
+ }
978
+ }
979
+ else if (!_adapterId.empty())
980
+ {
981
+ result.append(" @ ");
982
+
983
+ //
984
+ // If the encoded adapter id string contains characters which the
985
+ // reference parser uses as separators, then we enclose the
986
+ // adapter id string in quotes.
987
+ //
988
+ string a = escapeString(_adapterId, "", getInstance()->toStringMode());
989
+ if (a.find_first_of(" :@") != string::npos)
990
+ {
991
+ result.append("\"");
992
+ result.append(a);
993
+ result.append("\"");
994
+ }
995
+ else
996
+ {
997
+ result.append(a);
998
+ }
999
+ }
1000
+ else
1001
+ {
1002
+ return result;
1003
+ }
1004
+ return result;
1005
+ }
1006
+
1007
+ PropertyDict
1008
+ IceInternal::RoutableReference::toProperty(string prefix) const
1009
+ {
1010
+ Ice::PropertyDict properties;
1011
+
1012
+ properties[prefix + ".CollocationOptimized"] = _collocationOptimized ? "1" : "0";
1013
+ properties[prefix + ".ConnectionCached"] = _cacheConnection ? "1" : "0";
1014
+ properties[prefix + ".EndpointSelection"] =
1015
+ _endpointSelection == EndpointSelectionType::Random ? "Random" : "Ordered";
1016
+ properties[prefix + ".LocatorCacheTimeout"] =
1017
+ to_string(chrono::duration_cast<chrono::seconds>(_locatorCacheTimeout).count());
1018
+ properties[prefix + ".InvocationTimeout"] = to_string(getInvocationTimeout().count());
1019
+
1020
+ if (_routerInfo)
1021
+ {
1022
+ PropertyDict routerProperties = _routerInfo->getRouter()->_getReference()->toProperty(prefix + ".Router");
1023
+ for (const auto& routerProp : routerProperties)
1024
+ {
1025
+ properties[routerProp.first] = routerProp.second;
1026
+ }
1027
+ }
1028
+
1029
+ if (_locatorInfo)
1030
+ {
1031
+ PropertyDict locatorProperties = _locatorInfo->getLocator()->_getReference()->toProperty(prefix + ".Locator");
1032
+ for (const auto& locatorProp : locatorProperties)
1033
+ {
1034
+ properties[locatorProp.first] = locatorProp.second;
1035
+ }
1036
+ }
1037
+
1038
+ properties.emplace(std::move(prefix), toString());
1039
+
1040
+ return properties;
1041
+ }
1042
+
1043
+ size_t
1044
+ IceInternal::RoutableReference::hash() const noexcept
1045
+ {
1046
+ size_t h = Reference::hash();
1047
+ hashAdd(h, _adapterId);
1048
+ hashAdd(h, _endpoints);
1049
+ return h;
1050
+ }
1051
+
1052
+ bool
1053
+ IceInternal::RoutableReference::operator==(const Reference& r) const noexcept
1054
+ {
1055
+ //
1056
+ // Note: if(this == &r) test is performed by each non-abstract derived class.
1057
+ //
1058
+ if (this == &r)
1059
+ {
1060
+ return true;
1061
+ }
1062
+
1063
+ const auto* rhs = dynamic_cast<const RoutableReference*>(&r);
1064
+ if (!rhs || !Reference::operator==(r))
1065
+ {
1066
+ return false;
1067
+ }
1068
+ if (_collocationOptimized != rhs->_collocationOptimized)
1069
+ {
1070
+ return false;
1071
+ }
1072
+ if (_cacheConnection != rhs->_cacheConnection)
1073
+ {
1074
+ return false;
1075
+ }
1076
+ if (_endpointSelection != rhs->_endpointSelection)
1077
+ {
1078
+ return false;
1079
+ }
1080
+ if (_connectionId != rhs->_connectionId)
1081
+ {
1082
+ return false;
1083
+ }
1084
+ if (!Ice::targetEqualTo(_routerInfo, rhs->_routerInfo))
1085
+ {
1086
+ return false;
1087
+ }
1088
+ if (!Ice::targetEqualTo(_locatorInfo, rhs->_locatorInfo))
1089
+ {
1090
+ return false;
1091
+ }
1092
+
1093
+ // Check if the two endpoint lists are equal.
1094
+ if (!equal(
1095
+ _endpoints.begin(),
1096
+ _endpoints.end(),
1097
+ rhs->_endpoints.begin(),
1098
+ rhs->_endpoints.end(),
1099
+ Ice::TargetCompare<shared_ptr<EndpointI>, std::equal_to>()))
1100
+ {
1101
+ return false;
1102
+ }
1103
+ if (_adapterId != rhs->_adapterId)
1104
+ {
1105
+ return false;
1106
+ }
1107
+ if (_locatorCacheTimeout != rhs->_locatorCacheTimeout)
1108
+ {
1109
+ return false;
1110
+ }
1111
+ return true;
1112
+ }
1113
+
1114
+ bool
1115
+ IceInternal::RoutableReference::operator<(const Reference& r) const noexcept
1116
+ {
1117
+ if (this == &r)
1118
+ {
1119
+ return false;
1120
+ }
1121
+
1122
+ if (Reference::operator<(r))
1123
+ {
1124
+ return true;
1125
+ }
1126
+ else if (!Reference::operator==(r))
1127
+ {
1128
+ return false;
1129
+ }
1130
+
1131
+ const auto* rhs = dynamic_cast<const RoutableReference*>(&r);
1132
+ if (!rhs)
1133
+ {
1134
+ assert(dynamic_cast<const FixedReference*>(&r));
1135
+ return true; // As a rule, routable references are superior to fixed references.
1136
+ }
1137
+
1138
+ if (!_collocationOptimized && rhs->_collocationOptimized)
1139
+ {
1140
+ return true;
1141
+ }
1142
+ else if (rhs->_collocationOptimized < _collocationOptimized)
1143
+ {
1144
+ return false;
1145
+ }
1146
+ if (!_cacheConnection && rhs->_cacheConnection)
1147
+ {
1148
+ return true;
1149
+ }
1150
+ else if (rhs->_cacheConnection < _cacheConnection)
1151
+ {
1152
+ return false;
1153
+ }
1154
+ if (_endpointSelection < rhs->_endpointSelection)
1155
+ {
1156
+ return true;
1157
+ }
1158
+ else if (rhs->_endpointSelection < _endpointSelection)
1159
+ {
1160
+ return false;
1161
+ }
1162
+ if (_connectionId < rhs->_connectionId)
1163
+ {
1164
+ return true;
1165
+ }
1166
+ else if (rhs->_connectionId < _connectionId)
1167
+ {
1168
+ return false;
1169
+ }
1170
+ if (Ice::targetLess(_routerInfo, rhs->_routerInfo))
1171
+ {
1172
+ return true;
1173
+ }
1174
+ else if (Ice::targetLess(rhs->_routerInfo, _routerInfo))
1175
+ {
1176
+ return false;
1177
+ }
1178
+ if (Ice::targetLess(_locatorInfo, rhs->_locatorInfo))
1179
+ {
1180
+ return true;
1181
+ }
1182
+ else if (Ice::targetLess(rhs->_locatorInfo, _locatorInfo))
1183
+ {
1184
+ return false;
1185
+ }
1186
+ if (_adapterId < rhs->_adapterId)
1187
+ {
1188
+ return true;
1189
+ }
1190
+ else if (rhs->_adapterId < _adapterId)
1191
+ {
1192
+ return false;
1193
+ }
1194
+ if (lexicographical_compare(
1195
+ _endpoints.begin(),
1196
+ _endpoints.end(),
1197
+ rhs->_endpoints.begin(),
1198
+ rhs->_endpoints.end(),
1199
+ Ice::TargetCompare<shared_ptr<EndpointI>, std::less>()))
1200
+ {
1201
+ return true;
1202
+ }
1203
+ else if (rhs->_endpoints < _endpoints)
1204
+ {
1205
+ return false;
1206
+ }
1207
+ if (_locatorCacheTimeout < rhs->_locatorCacheTimeout)
1208
+ {
1209
+ return true;
1210
+ }
1211
+ else if (rhs->_locatorCacheTimeout < _locatorCacheTimeout)
1212
+ {
1213
+ return false;
1214
+ }
1215
+ return false;
1216
+ }
1217
+
1218
+ ReferencePtr
1219
+ IceInternal::RoutableReference::clone() const
1220
+ {
1221
+ return make_shared<RoutableReference>(*this);
1222
+ }
1223
+
1224
+ RequestHandlerPtr
1225
+ IceInternal::RoutableReference::getRequestHandler() const
1226
+ {
1227
+ auto self = const_cast<RoutableReference*>(this)->shared_from_this();
1228
+
1229
+ if (_collocationOptimized)
1230
+ {
1231
+ Ice::ObjectAdapterPtr adapter = _instance->objectAdapterFactory()->findObjectAdapter(self);
1232
+ if (adapter)
1233
+ {
1234
+ return make_shared<CollocatedRequestHandler>(self, adapter);
1235
+ }
1236
+ }
1237
+
1238
+ ConnectRequestHandlerPtr handler = make_shared<ConnectRequestHandler>(self);
1239
+ getConnectionAsync(
1240
+ [handler](Ice::ConnectionIPtr connection, bool compress)
1241
+ { handler->setConnection(std::move(connection), compress); },
1242
+ [handler](exception_ptr ex) { handler->setException(ex); });
1243
+
1244
+ return handler; // NOLINT(clang-analyzer-cplusplus.NewDeleteLeaks)
1245
+ // Looks like a clang-tidy bug. See https://github.com/llvm/llvm-project/issues/55219
1246
+ }
1247
+
1248
+ const BatchRequestQueuePtr&
1249
+ IceInternal::RoutableReference::getBatchRequestQueue() const noexcept
1250
+ {
1251
+ return _batchRequestQueue;
1252
+ }
1253
+
1254
+ void
1255
+ IceInternal::RoutableReference::getConnectionAsync(
1256
+ function<void(ConnectionIPtr, bool)> response,
1257
+ function<void(std::exception_ptr)> exception) const
1258
+ {
1259
+ if (_routerInfo)
1260
+ {
1261
+ // If we route, we send everything to the router's client proxy endpoints.
1262
+ auto self = dynamic_pointer_cast<RoutableReference>(const_cast<RoutableReference*>(this)->shared_from_this());
1263
+
1264
+ _routerInfo->getClientEndpointsAsync(
1265
+ [self = std::move(self), response = std::move(response), exception](vector<EndpointIPtr> endpoints) mutable
1266
+ {
1267
+ if (endpoints.empty())
1268
+ {
1269
+ self->getConnectionNoRouterInfoAsync(std::move(response), std::move(exception));
1270
+ }
1271
+ else
1272
+ {
1273
+ self->applyOverrides(endpoints);
1274
+ self->createConnectionAsync(endpoints, std::move(response), std::move(exception));
1275
+ }
1276
+ },
1277
+ exception);
1278
+ }
1279
+ else
1280
+ {
1281
+ getConnectionNoRouterInfoAsync(std::move(response), std::move(exception));
1282
+ }
1283
+ }
1284
+
1285
+ void
1286
+ IceInternal::RoutableReference::getConnectionNoRouterInfoAsync(
1287
+ function<void(ConnectionIPtr, bool)> response,
1288
+ function<void(std::exception_ptr)> exception) const
1289
+ {
1290
+ class Callback final : public LocatorInfo::GetEndpointsCallback
1291
+ {
1292
+ public:
1293
+ void setEndpoints(const vector<EndpointIPtr>& endpoints, bool cached) final
1294
+ {
1295
+ if (endpoints.empty())
1296
+ {
1297
+ _exception(make_exception_ptr(
1298
+ Ice::NoEndpointException(__FILE__, __LINE__, ObjectPrx::_fromReference(_reference))));
1299
+ return;
1300
+ }
1301
+
1302
+ vector<EndpointIPtr> endpts = endpoints;
1303
+ _reference->applyOverrides(endpts);
1304
+ _reference->createConnectionAsync(
1305
+ endpts,
1306
+ _response,
1307
+ [reference = _reference, response = _response, exception = _exception, cached](std::exception_ptr exc)
1308
+ {
1309
+ try
1310
+ {
1311
+ rethrow_exception(exc);
1312
+ }
1313
+ catch (const Ice::NoEndpointException&)
1314
+ {
1315
+ exception(exc); // No need to retry if there's no endpoints.
1316
+ }
1317
+ catch (const Ice::LocalException& ex)
1318
+ {
1319
+ LocatorInfoPtr locatorInfo = reference->getLocatorInfo();
1320
+ assert(locatorInfo);
1321
+ locatorInfo->clearCache(reference);
1322
+ if (cached)
1323
+ {
1324
+ TraceLevelsPtr traceLvls = reference->getInstance()->traceLevels();
1325
+ if (traceLvls->retry >= 2)
1326
+ {
1327
+ Trace out(reference->getInstance()->initializationData().logger, traceLvls->retryCat);
1328
+ out << "connection to cached endpoints failed\n"
1329
+ << "removing endpoints from cache and trying again\n"
1330
+ << ex;
1331
+ }
1332
+ reference->getConnectionNoRouterInfoAsync(response, exception); // Retry.
1333
+ return;
1334
+ }
1335
+ exception(exc);
1336
+ }
1337
+ });
1338
+ }
1339
+
1340
+ void setException(std::exception_ptr ex) final { _exception(ex); }
1341
+
1342
+ Callback(
1343
+ RoutableReferencePtr reference,
1344
+ function<void(ConnectionIPtr, bool)> response,
1345
+ function<void(std::exception_ptr)> exception)
1346
+ : _reference(std::move(reference)),
1347
+ _response(std::move(response)),
1348
+ _exception(std::move(exception))
1349
+ {
1350
+ }
1351
+
1352
+ private:
1353
+ const RoutableReferencePtr _reference;
1354
+ const function<void(ConnectionIPtr, bool)> _response;
1355
+ const function<void(std::exception_ptr)> _exception;
1356
+ };
1357
+
1358
+ if (!_endpoints.empty())
1359
+ {
1360
+ createConnectionAsync(_endpoints, std::move(response), std::move(exception));
1361
+ return;
1362
+ }
1363
+
1364
+ if (_locatorInfo)
1365
+ {
1366
+ RoutableReferencePtr self =
1367
+ dynamic_pointer_cast<RoutableReference>(const_cast<RoutableReference*>(this)->shared_from_this());
1368
+ _locatorInfo->getEndpoints(
1369
+ self,
1370
+ _locatorCacheTimeout,
1371
+ make_shared<Callback>(self, std::move(response), std::move(exception)));
1372
+ }
1373
+ else
1374
+ {
1375
+ exception(make_exception_ptr(Ice::NoEndpointException(
1376
+ __FILE__,
1377
+ __LINE__,
1378
+ ObjectPrx::_fromReference(const_cast<RoutableReference*>(this)->shared_from_this()))));
1379
+ }
1380
+ }
1381
+
1382
+ void
1383
+ IceInternal::RoutableReference::createConnectionAsync(
1384
+ const vector<EndpointIPtr>& allEndpoints,
1385
+ function<void(ConnectionIPtr, bool)> response,
1386
+ function<void(std::exception_ptr)> exception) const
1387
+ {
1388
+ vector<EndpointIPtr> endpoints = filterEndpoints(allEndpoints);
1389
+ if (endpoints.empty())
1390
+ {
1391
+ exception(make_exception_ptr(Ice::NoEndpointException(
1392
+ __FILE__,
1393
+ __LINE__,
1394
+ ObjectPrx::_fromReference(const_cast<RoutableReference*>(this)->shared_from_this()))));
1395
+ return;
1396
+ }
1397
+
1398
+ OutgoingConnectionFactoryPtr factory = getInstance()->outgoingConnectionFactory();
1399
+ auto self = static_pointer_cast<RoutableReference>(const_cast<RoutableReference*>(this)->shared_from_this());
1400
+
1401
+ auto createConnectionSucceded =
1402
+ [routerInfo = _routerInfo, response = std::move(response)](Ice::ConnectionIPtr connection, bool compress)
1403
+ {
1404
+ // If we have a router, set the object adapter for this router (if any) to the new connection, so that
1405
+ // callbacks from the router can be received over this new connection.
1406
+ if (routerInfo && routerInfo->getAdapter())
1407
+ {
1408
+ connection->setAdapter(routerInfo->getAdapter());
1409
+ }
1410
+ response(std::move(connection), compress);
1411
+ };
1412
+
1413
+ if (getCacheConnection() || endpoints.size() == 1)
1414
+ {
1415
+ // Get an existing connection or create one if there's no existing connection to one of the given endpoints.
1416
+ factory->createAsync(std::move(endpoints), false, std::move(createConnectionSucceded), std::move(exception));
1417
+ }
1418
+ else
1419
+ {
1420
+ // Go through the list of endpoints and try to create the connection until it succeeds. This is different from
1421
+ // just calling create() with the given endpoints since this might create a new connection even if there's an
1422
+ // existing connection for one of the endpoints.
1423
+
1424
+ class CreateConnectionState final : public std::enable_shared_from_this<CreateConnectionState>
1425
+ {
1426
+ public:
1427
+ CreateConnectionState(
1428
+ vector<EndpointIPtr> endpoints,
1429
+ OutgoingConnectionFactoryPtr factory,
1430
+ function<void(Ice::ConnectionIPtr, bool)> createConnectionSucceded,
1431
+ function<void(exception_ptr)> exception)
1432
+ : _endpoints(std::move(endpoints)),
1433
+ _factory(std::move(factory)),
1434
+ _createConnectionSucceded(std::move(createConnectionSucceded)),
1435
+ _createConnectionFailed(std::move(exception))
1436
+ {
1437
+ }
1438
+
1439
+ void createAsync()
1440
+ {
1441
+ _factory->createAsync(
1442
+ {_endpoints[_endpointIndex]},
1443
+ true,
1444
+ _createConnectionSucceded,
1445
+ [self = shared_from_this()](exception_ptr e) { self->handleException(e); });
1446
+ }
1447
+
1448
+ void handleException(std::exception_ptr ex)
1449
+ {
1450
+ if (!_exception)
1451
+ {
1452
+ _exception = ex;
1453
+ }
1454
+
1455
+ if (++_endpointIndex == _endpoints.size())
1456
+ {
1457
+ _createConnectionFailed(_exception);
1458
+ return;
1459
+ }
1460
+
1461
+ const bool more = _endpointIndex != _endpoints.size() - 1;
1462
+ _factory->createAsync(
1463
+ {_endpoints[_endpointIndex]},
1464
+ more,
1465
+ _createConnectionSucceded,
1466
+ [self = shared_from_this()](exception_ptr e) { self->handleException(e); });
1467
+ }
1468
+
1469
+ private:
1470
+ exception_ptr _exception = nullptr;
1471
+ size_t _endpointIndex = 0;
1472
+ vector<EndpointIPtr> _endpoints;
1473
+ OutgoingConnectionFactoryPtr _factory;
1474
+ std::function<void(Ice::ConnectionIPtr, bool)> _createConnectionSucceded;
1475
+ std::function<void(exception_ptr)> _createConnectionFailed;
1476
+ };
1477
+
1478
+ auto state = make_shared<CreateConnectionState>(
1479
+ std::move(endpoints),
1480
+ std::move(factory),
1481
+ std::move(createConnectionSucceded),
1482
+ std::move(exception));
1483
+ state->createAsync();
1484
+ }
1485
+ }
1486
+
1487
+ void
1488
+ IceInternal::RoutableReference::applyOverrides(vector<EndpointIPtr>& endpoints) const
1489
+ {
1490
+ for (auto& endpoint : endpoints)
1491
+ {
1492
+ endpoint = endpoint->connectionId(_connectionId);
1493
+ optional<bool> compress = getCompress();
1494
+ if (compress.has_value())
1495
+ {
1496
+ endpoint = endpoint->compress(*compress);
1497
+ }
1498
+ }
1499
+ }
1500
+
1501
+ IceInternal::RoutableReference::RoutableReference(const RoutableReference& r)
1502
+ : Reference(r),
1503
+ _endpoints(r._endpoints),
1504
+ _adapterId(r._adapterId),
1505
+ _locatorInfo(r._locatorInfo),
1506
+ _routerInfo(r._routerInfo),
1507
+ _collocationOptimized(r._collocationOptimized),
1508
+ _cacheConnection(r._cacheConnection),
1509
+ _endpointSelection(r._endpointSelection),
1510
+ _locatorCacheTimeout(r._locatorCacheTimeout),
1511
+ _connectionId(r._connectionId)
1512
+ {
1513
+ setBatchRequestQueue();
1514
+ }
1515
+
1516
+ vector<EndpointIPtr>
1517
+ IceInternal::RoutableReference::filterEndpoints(const vector<EndpointIPtr>& allEndpoints) const
1518
+ {
1519
+ vector<EndpointIPtr> endpoints = allEndpoints;
1520
+
1521
+ // Filter out unknown endpoints.
1522
+ endpoints.erase(
1523
+ remove_if(
1524
+ endpoints.begin(),
1525
+ endpoints.end(),
1526
+ [](const EndpointIPtr& p) { return dynamic_pointer_cast<OpaqueEndpointI>(p) != nullptr; }),
1527
+ endpoints.end());
1528
+
1529
+ // Filter out endpoints according to the mode of the reference.
1530
+ switch (getMode())
1531
+ {
1532
+ case Reference::ModeTwoway:
1533
+ case Reference::ModeOneway:
1534
+ case Reference::ModeBatchOneway:
1535
+ {
1536
+ // Filter out datagram endpoints.
1537
+ endpoints.erase(
1538
+ remove_if(endpoints.begin(), endpoints.end(), [](const EndpointIPtr& p) { return p->datagram(); }),
1539
+ endpoints.end());
1540
+ break;
1541
+ }
1542
+
1543
+ case Reference::ModeDatagram:
1544
+ case Reference::ModeBatchDatagram:
1545
+ {
1546
+ // Filter out non-datagram endpoints.
1547
+ endpoints.erase(
1548
+ remove_if(endpoints.begin(), endpoints.end(), [](const EndpointIPtr& p) { return !p->datagram(); }),
1549
+ endpoints.end());
1550
+ break;
1551
+ }
1552
+ }
1553
+
1554
+ //
1555
+ // Sort the endpoints according to the endpoint selection type.
1556
+ //
1557
+ switch (getEndpointSelection())
1558
+ {
1559
+ case EndpointSelectionType::Random:
1560
+ {
1561
+ IceInternal::shuffle(endpoints.begin(), endpoints.end());
1562
+ break;
1563
+ }
1564
+ case EndpointSelectionType::Ordered:
1565
+ {
1566
+ // Nothing to do.
1567
+ break;
1568
+ }
1569
+ default:
1570
+ {
1571
+ assert(false);
1572
+ break;
1573
+ }
1574
+ }
1575
+
1576
+ return endpoints;
1577
+ }
1578
+
1579
+ void
1580
+ IceInternal::RoutableReference::setBatchRequestQueue()
1581
+ {
1582
+ _batchRequestQueue =
1583
+ isBatch() ? make_shared<BatchRequestQueue>(getInstance(), getMode() == Reference::ModeBatchDatagram) : nullptr;
1584
+ }