zeroc-ice 3.7.9.1 → 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 (1215) 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/slice/Glacier2/Metrics.ice +47 -0
  436. data/dist/ice/slice/Glacier2/PermissionsVerifier.ice +55 -0
  437. data/dist/ice/slice/Glacier2/Router.ice +93 -0
  438. data/dist/ice/slice/Glacier2/SSLInfo.ice +42 -0
  439. data/dist/ice/slice/Glacier2/Session.ice +133 -0
  440. data/dist/ice/slice/Ice/BuiltinSequences.ice +54 -0
  441. data/dist/ice/slice/Ice/Context.ice +24 -0
  442. data/dist/ice/slice/Ice/EndpointTypes.ice +50 -0
  443. data/dist/ice/slice/Ice/Identity.ice +36 -0
  444. data/dist/ice/slice/Ice/Locator.ice +74 -0
  445. data/dist/ice/slice/Ice/LocatorRegistry.ice +77 -0
  446. data/dist/ice/slice/Ice/Metrics.ice +201 -0
  447. data/dist/ice/slice/Ice/OperationMode.ice +38 -0
  448. data/dist/ice/slice/Ice/Process.ice +28 -0
  449. data/dist/ice/slice/Ice/PropertiesAdmin.ice +37 -0
  450. data/dist/ice/slice/Ice/PropertyDict.ice +23 -0
  451. data/dist/ice/slice/Ice/RemoteLogger.ice +126 -0
  452. data/dist/ice/slice/Ice/ReplyStatus.ice +65 -0
  453. data/dist/ice/slice/Ice/Router.ice +54 -0
  454. data/dist/ice/slice/Ice/SliceChecksumDict.ice +18 -0
  455. data/dist/ice/slice/Ice/Version.ice +43 -0
  456. data/dist/ice/slice/IceBox/ServiceManager.ice +79 -0
  457. data/dist/ice/slice/IceGrid/Admin.ice +981 -0
  458. data/dist/ice/slice/IceGrid/Descriptor.ice +519 -0
  459. data/dist/ice/slice/IceGrid/Exception.ice +98 -0
  460. data/dist/ice/slice/IceGrid/FileParser.ice +36 -0
  461. data/dist/ice/slice/IceGrid/Registry.ice +130 -0
  462. data/dist/ice/slice/IceGrid/Session.ice +64 -0
  463. data/dist/ice/slice/IceGrid/UserAccountMapper.ice +34 -0
  464. data/dist/ice/slice/IceStorm/IceStorm.ice +186 -0
  465. data/dist/ice/slice/IceStorm/Metrics.ice +41 -0
  466. data/dist/lib/Glacier2/Metrics.rb +41 -0
  467. data/dist/lib/Glacier2/PermissionsVerifier.rb +61 -0
  468. data/dist/lib/Glacier2/Router.rb +73 -0
  469. data/dist/lib/Glacier2/SSLInfo.rb +64 -0
  470. data/dist/lib/Glacier2/Session.rb +187 -0
  471. data/dist/lib/Glacier2.rb +7 -0
  472. data/dist/lib/Ice/BuiltinSequences.rb +48 -0
  473. data/dist/lib/Ice/CompressBatch.rb +50 -0
  474. data/dist/lib/Ice/Context.rb +12 -0
  475. data/dist/lib/Ice/EndpointSelectionType.rb +49 -0
  476. data/dist/lib/Ice/EndpointTypes.rb +28 -0
  477. data/dist/lib/Ice/Exception.rb +20 -0
  478. data/dist/lib/Ice/Identity.rb +47 -0
  479. data/dist/lib/Ice/IdentitySpaceship.rb +16 -0
  480. data/dist/lib/Ice/InitializationData.rb +12 -0
  481. data/dist/lib/Ice/LocalExceptions.rb +168 -0
  482. data/dist/lib/Ice/Locator.rb +83 -0
  483. data/dist/lib/Ice/LocatorRegistry.rb +73 -0
  484. data/dist/lib/Ice/Metrics.rb +290 -0
  485. data/dist/lib/Ice/OperationMode.rb +58 -0
  486. data/dist/lib/Ice/Process.rb +34 -0
  487. data/dist/lib/Ice/PropertiesAdmin.rb +39 -0
  488. data/dist/lib/Ice/PropertyDict.rb +12 -0
  489. data/dist/lib/Ice/Proxy.rb +85 -0
  490. data/dist/lib/Ice/ProxyFunctions.rb +69 -0
  491. data/dist/lib/Ice/RemoteLogger.rb +176 -0
  492. data/dist/lib/Ice/ReplyStatus.rb +65 -0
  493. data/dist/lib/Ice/Router.rb +59 -0
  494. data/dist/lib/Ice/SliceChecksumDict.rb +12 -0
  495. data/dist/lib/Ice/SliceUtil.rb +41 -0
  496. data/dist/lib/Ice/Struct.rb +11 -0
  497. data/dist/lib/Ice/ToStringMode.rb +50 -0
  498. data/dist/lib/Ice/Value.rb +93 -0
  499. data/dist/lib/Ice/Version.rb +78 -0
  500. data/dist/lib/Ice.rb +37 -0
  501. data/dist/lib/IceBox/ServiceManager.rb +104 -0
  502. data/dist/lib/IceBox.rb +3 -0
  503. data/dist/lib/IceGrid/Admin.rb +1208 -0
  504. data/dist/lib/IceGrid/Descriptor.rb +989 -0
  505. data/dist/lib/IceGrid/Exception.rb +145 -0
  506. data/dist/lib/IceGrid/FileParser.rb +41 -0
  507. data/dist/lib/IceGrid/Registry.rb +168 -0
  508. data/dist/lib/IceGrid/Session.rb +56 -0
  509. data/dist/lib/IceGrid/UserAccountMapper.rb +38 -0
  510. data/dist/lib/IceGrid.rb +9 -0
  511. data/dist/lib/IceStorm/IceStorm.rb +251 -0
  512. data/dist/lib/IceStorm/Metrics.rb +55 -0
  513. data/dist/lib/IceStorm.rb +4 -0
  514. data/extconf.rb +89 -0
  515. data/ice.gemspec +22 -17
  516. data/scripts/slice2rb +10 -0
  517. metadata +536 -712
  518. data/ICE_LICENSE +0 -48
  519. data/LICENSE +0 -340
  520. data/MCPP_LICENSE +0 -29
  521. data/bin/slice2rb +0 -12
  522. data/ext/Communicator.cpp +0 -792
  523. data/ext/Communicator.h +0 -20
  524. data/ext/Config.h +0 -143
  525. data/ext/Connection.cpp +0 -532
  526. data/ext/Connection.h +0 -24
  527. data/ext/Endpoint.cpp +0 -340
  528. data/ext/Endpoint.h +0 -22
  529. data/ext/ImplicitContext.cpp +0 -144
  530. data/ext/ImplicitContext.h +0 -20
  531. data/ext/Init.cpp +0 -49
  532. data/ext/Logger.cpp +0 -147
  533. data/ext/Logger.h +0 -23
  534. data/ext/Operation.cpp +0 -661
  535. data/ext/Operation.h +0 -31
  536. data/ext/Properties.cpp +0 -365
  537. data/ext/Properties.h +0 -20
  538. data/ext/Proxy.cpp +0 -1396
  539. data/ext/Proxy.h +0 -22
  540. data/ext/Slice.cpp +0 -205
  541. data/ext/Slice.h +0 -17
  542. data/ext/Types.cpp +0 -3325
  543. data/ext/Types.h +0 -595
  544. data/ext/Util.cpp +0 -812
  545. data/ext/Util.h +0 -586
  546. data/ext/ValueFactoryManager.cpp +0 -441
  547. data/ext/ValueFactoryManager.h +0 -95
  548. data/ext/extconf.rb +0 -97
  549. data/ext/ice/cpp/include/Ice/Application.h +0 -326
  550. data/ext/ice/cpp/include/Ice/AsyncResult.h +0 -155
  551. data/ext/ice/cpp/include/Ice/AsyncResultF.h +0 -23
  552. data/ext/ice/cpp/include/Ice/BatchRequestInterceptor.h +0 -75
  553. data/ext/ice/cpp/include/Ice/BatchRequestQueueF.h +0 -20
  554. data/ext/ice/cpp/include/Ice/Buffer.h +0 -154
  555. data/ext/ice/cpp/include/Ice/CommunicatorAsync.h +0 -154
  556. data/ext/ice/cpp/include/Ice/Comparable.h +0 -205
  557. data/ext/ice/cpp/include/Ice/Config.h +0 -78
  558. data/ext/ice/cpp/include/Ice/ConnectionAsync.h +0 -302
  559. data/ext/ice/cpp/include/Ice/ConnectionIF.h +0 -38
  560. data/ext/ice/cpp/include/Ice/ConsoleUtil.h +0 -23
  561. data/ext/ice/cpp/include/Ice/DefaultValueFactory.h +0 -57
  562. data/ext/ice/cpp/include/Ice/DispatchInterceptor.h +0 -41
  563. data/ext/ice/cpp/include/Ice/Dispatcher.h +0 -67
  564. data/ext/ice/cpp/include/Ice/DynamicLibrary.h +0 -102
  565. data/ext/ice/cpp/include/Ice/DynamicLibraryF.h +0 -24
  566. data/ext/ice/cpp/include/Ice/Exception.h +0 -161
  567. data/ext/ice/cpp/include/Ice/ExceptionHelpers.h +0 -74
  568. data/ext/ice/cpp/include/Ice/FactoryTable.h +0 -73
  569. data/ext/ice/cpp/include/Ice/FactoryTableInit.h +0 -84
  570. data/ext/ice/cpp/include/Ice/Format.h +0 -38
  571. data/ext/ice/cpp/include/Ice/Functional.h +0 -140
  572. data/ext/ice/cpp/include/Ice/GCObject.h +0 -76
  573. data/ext/ice/cpp/include/Ice/Handle.h +0 -182
  574. data/ext/ice/cpp/include/Ice/Ice.h +0 -55
  575. data/ext/ice/cpp/include/Ice/IconvStringConverter.h +0 -377
  576. data/ext/ice/cpp/include/Ice/Incoming.h +0 -225
  577. data/ext/ice/cpp/include/Ice/IncomingAsync.h +0 -186
  578. data/ext/ice/cpp/include/Ice/IncomingAsyncF.h +0 -36
  579. data/ext/ice/cpp/include/Ice/Initialize.h +0 -957
  580. data/ext/ice/cpp/include/Ice/InputStream.h +0 -1514
  581. data/ext/ice/cpp/include/Ice/InstanceF.h +0 -20
  582. data/ext/ice/cpp/include/Ice/InterfaceByValue.h +0 -57
  583. data/ext/ice/cpp/include/Ice/LocalObject.h +0 -35
  584. data/ext/ice/cpp/include/Ice/LocalObjectF.h +0 -21
  585. data/ext/ice/cpp/include/Ice/LoggerUtil.h +0 -185
  586. data/ext/ice/cpp/include/Ice/MetricsAdminI.h +0 -715
  587. data/ext/ice/cpp/include/Ice/MetricsFunctional.h +0 -159
  588. data/ext/ice/cpp/include/Ice/MetricsObserverI.h +0 -669
  589. data/ext/ice/cpp/include/Ice/NativePropertiesAdmin.h +0 -86
  590. data/ext/ice/cpp/include/Ice/Object.h +0 -507
  591. data/ext/ice/cpp/include/Ice/ObjectF.h +0 -30
  592. data/ext/ice/cpp/include/Ice/ObserverHelper.h +0 -182
  593. data/ext/ice/cpp/include/Ice/Optional.h +0 -1114
  594. data/ext/ice/cpp/include/Ice/OutgoingAsync.h +0 -856
  595. data/ext/ice/cpp/include/Ice/OutgoingAsyncF.h +0 -39
  596. data/ext/ice/cpp/include/Ice/OutputStream.h +0 -1092
  597. data/ext/ice/cpp/include/Ice/Protocol.h +0 -274
  598. data/ext/ice/cpp/include/Ice/Proxy.h +0 -5154
  599. data/ext/ice/cpp/include/Ice/ProxyF.h +0 -53
  600. data/ext/ice/cpp/include/Ice/ProxyFactoryF.h +0 -21
  601. data/ext/ice/cpp/include/Ice/ProxyHandle.h +0 -318
  602. data/ext/ice/cpp/include/Ice/ReferenceF.h +0 -29
  603. data/ext/ice/cpp/include/Ice/RegisterPlugins.h +0 -127
  604. data/ext/ice/cpp/include/Ice/RequestHandlerF.h +0 -30
  605. data/ext/ice/cpp/include/Ice/ResponseHandlerF.h +0 -25
  606. data/ext/ice/cpp/include/Ice/SHA1.h +0 -42
  607. data/ext/ice/cpp/include/Ice/ServantManagerF.h +0 -21
  608. data/ext/ice/cpp/include/Ice/Service.h +0 -379
  609. data/ext/ice/cpp/include/Ice/SliceChecksums.h +0 -33
  610. data/ext/ice/cpp/include/Ice/SlicedData.h +0 -172
  611. data/ext/ice/cpp/include/Ice/SlicedDataF.h +0 -40
  612. data/ext/ice/cpp/include/Ice/StreamHelpers.h +0 -1190
  613. data/ext/ice/cpp/include/Ice/StringConverter.h +0 -78
  614. data/ext/ice/cpp/include/Ice/ThreadPoolF.h +0 -23
  615. data/ext/ice/cpp/include/Ice/UUID.h +0 -19
  616. data/ext/ice/cpp/include/Ice/UniquePtr.h +0 -95
  617. data/ext/ice/cpp/include/Ice/UniqueRef.h +0 -97
  618. data/ext/ice/cpp/include/Ice/UserExceptionFactory.h +0 -88
  619. data/ext/ice/cpp/include/Ice/Value.h +0 -139
  620. data/ext/ice/cpp/include/Ice/ValueF.h +0 -21
  621. data/ext/ice/cpp/include/IceSSL/Config.h +0 -21
  622. data/ext/ice/cpp/include/IceSSL/IceSSL.h +0 -28
  623. data/ext/ice/cpp/include/IceSSL/OpenSSL.h +0 -147
  624. data/ext/ice/cpp/include/IceSSL/Plugin.h +0 -712
  625. data/ext/ice/cpp/include/IceSSL/SChannel.h +0 -72
  626. data/ext/ice/cpp/include/IceSSL/SecureTransport.h +0 -72
  627. data/ext/ice/cpp/include/IceSSL/UWP.h +0 -62
  628. data/ext/ice/cpp/include/IceUtil/Atomic.h +0 -179
  629. data/ext/ice/cpp/include/IceUtil/Cond.h +0 -317
  630. data/ext/ice/cpp/include/IceUtil/Config.h +0 -424
  631. data/ext/ice/cpp/include/IceUtil/ConsoleUtil.h +0 -92
  632. data/ext/ice/cpp/include/IceUtil/CountDownLatch.h +0 -45
  633. data/ext/ice/cpp/include/IceUtil/CtrlCHandler.h +0 -92
  634. data/ext/ice/cpp/include/IceUtil/DisableWarnings.h +0 -44
  635. data/ext/ice/cpp/include/IceUtil/Exception.h +0 -394
  636. data/ext/ice/cpp/include/IceUtil/FileUtil.h +0 -143
  637. data/ext/ice/cpp/include/IceUtil/Functional.h +0 -389
  638. data/ext/ice/cpp/include/IceUtil/Handle.h +0 -261
  639. data/ext/ice/cpp/include/IceUtil/IceUtil.h +0 -40
  640. data/ext/ice/cpp/include/IceUtil/InputUtil.h +0 -42
  641. data/ext/ice/cpp/include/IceUtil/Iterator.h +0 -31
  642. data/ext/ice/cpp/include/IceUtil/Lock.h +0 -128
  643. data/ext/ice/cpp/include/IceUtil/Monitor.h +0 -243
  644. data/ext/ice/cpp/include/IceUtil/Mutex.h +0 -353
  645. data/ext/ice/cpp/include/IceUtil/MutexProtocol.h +0 -23
  646. data/ext/ice/cpp/include/IceUtil/MutexPtrLock.h +0 -78
  647. data/ext/ice/cpp/include/IceUtil/MutexPtrTryLock.h +0 -77
  648. data/ext/ice/cpp/include/IceUtil/Optional.h +0 -433
  649. data/ext/ice/cpp/include/IceUtil/Options.h +0 -135
  650. data/ext/ice/cpp/include/IceUtil/OutputUtil.h +0 -383
  651. data/ext/ice/cpp/include/IceUtil/PopDisableWarnings.h +0 -14
  652. data/ext/ice/cpp/include/IceUtil/PushDisableWarnings.h +0 -33
  653. data/ext/ice/cpp/include/IceUtil/Random.h +0 -55
  654. data/ext/ice/cpp/include/IceUtil/RecMutex.h +0 -107
  655. data/ext/ice/cpp/include/IceUtil/ResourceConfig.h +0 -53
  656. data/ext/ice/cpp/include/IceUtil/ScannerConfig.h +0 -40
  657. data/ext/ice/cpp/include/IceUtil/ScopedArray.h +0 -98
  658. data/ext/ice/cpp/include/IceUtil/Shared.h +0 -127
  659. data/ext/ice/cpp/include/IceUtil/StopWatch.h +0 -49
  660. data/ext/ice/cpp/include/IceUtil/StringConverter.h +0 -195
  661. data/ext/ice/cpp/include/IceUtil/StringUtil.h +0 -97
  662. data/ext/ice/cpp/include/IceUtil/Thread.h +0 -174
  663. data/ext/ice/cpp/include/IceUtil/ThreadException.h +0 -94
  664. data/ext/ice/cpp/include/IceUtil/Time.h +0 -205
  665. data/ext/ice/cpp/include/IceUtil/Timer.h +0 -143
  666. data/ext/ice/cpp/include/IceUtil/UUID.h +0 -21
  667. data/ext/ice/cpp/include/IceUtil/UndefSysMacros.h +0 -37
  668. data/ext/ice/cpp/include/generated/Ice/BuiltinSequences.h +0 -170
  669. data/ext/ice/cpp/include/generated/Ice/Communicator.h +0 -1162
  670. data/ext/ice/cpp/include/generated/Ice/CommunicatorF.h +0 -101
  671. data/ext/ice/cpp/include/generated/Ice/Connection.h +0 -1703
  672. data/ext/ice/cpp/include/generated/Ice/ConnectionF.h +0 -119
  673. data/ext/ice/cpp/include/generated/Ice/Current.h +0 -322
  674. data/ext/ice/cpp/include/generated/Ice/Endpoint.h +0 -979
  675. data/ext/ice/cpp/include/generated/Ice/EndpointF.h +0 -166
  676. data/ext/ice/cpp/include/generated/Ice/EndpointTypes.h +0 -118
  677. data/ext/ice/cpp/include/generated/Ice/FacetMap.h +0 -80
  678. data/ext/ice/cpp/include/generated/Ice/Identity.h +0 -264
  679. data/ext/ice/cpp/include/generated/Ice/ImplicitContext.h +0 -284
  680. data/ext/ice/cpp/include/generated/Ice/ImplicitContextF.h +0 -101
  681. data/ext/ice/cpp/include/generated/Ice/Instrumentation.h +0 -1203
  682. data/ext/ice/cpp/include/generated/Ice/InstrumentationF.h +0 -128
  683. data/ext/ice/cpp/include/generated/Ice/LocalException.h +0 -7437
  684. data/ext/ice/cpp/include/generated/Ice/Locator.h +0 -3898
  685. data/ext/ice/cpp/include/generated/Ice/LocatorF.h +0 -147
  686. data/ext/ice/cpp/include/generated/Ice/Logger.h +0 -237
  687. data/ext/ice/cpp/include/generated/Ice/LoggerF.h +0 -101
  688. data/ext/ice/cpp/include/generated/Ice/Metrics.h +0 -4769
  689. data/ext/ice/cpp/include/generated/Ice/ObjectAdapter.h +0 -1181
  690. data/ext/ice/cpp/include/generated/Ice/ObjectAdapterF.h +0 -101
  691. data/ext/ice/cpp/include/generated/Ice/ObjectFactory.h +0 -203
  692. data/ext/ice/cpp/include/generated/Ice/Plugin.h +0 -318
  693. data/ext/ice/cpp/include/generated/Ice/PluginF.h +0 -110
  694. data/ext/ice/cpp/include/generated/Ice/Process.h +0 -977
  695. data/ext/ice/cpp/include/generated/Ice/ProcessF.h +0 -125
  696. data/ext/ice/cpp/include/generated/Ice/Properties.h +0 -452
  697. data/ext/ice/cpp/include/generated/Ice/PropertiesAdmin.h +0 -1366
  698. data/ext/ice/cpp/include/generated/Ice/PropertiesF.h +0 -134
  699. data/ext/ice/cpp/include/generated/Ice/RemoteLogger.h +0 -2707
  700. data/ext/ice/cpp/include/generated/Ice/Router.h +0 -1850
  701. data/ext/ice/cpp/include/generated/Ice/RouterF.h +0 -125
  702. data/ext/ice/cpp/include/generated/Ice/ServantLocator.h +0 -305
  703. data/ext/ice/cpp/include/generated/Ice/ServantLocatorF.h +0 -101
  704. data/ext/ice/cpp/include/generated/Ice/SliceChecksumDict.h +0 -84
  705. data/ext/ice/cpp/include/generated/Ice/ValueFactory.h +0 -330
  706. data/ext/ice/cpp/include/generated/Ice/Version.h +0 -357
  707. data/ext/ice/cpp/include/generated/IceSSL/ConnectionInfo.h +0 -228
  708. data/ext/ice/cpp/include/generated/IceSSL/ConnectionInfoF.h +0 -101
  709. data/ext/ice/cpp/include/generated/IceSSL/EndpointInfo.h +0 -186
  710. data/ext/ice/cpp/src/Ice/ACM.cpp +0 -380
  711. data/ext/ice/cpp/src/Ice/ACM.h +0 -119
  712. data/ext/ice/cpp/src/Ice/ACMF.h +0 -30
  713. data/ext/ice/cpp/src/Ice/Acceptor.cpp +0 -16
  714. data/ext/ice/cpp/src/Ice/Acceptor.h +0 -37
  715. data/ext/ice/cpp/src/Ice/AcceptorF.h +0 -25
  716. data/ext/ice/cpp/src/Ice/ArgVector.cpp +0 -59
  717. data/ext/ice/cpp/src/Ice/ArgVector.h +0 -36
  718. data/ext/ice/cpp/src/Ice/AsyncResult.cpp +0 -70
  719. data/ext/ice/cpp/src/Ice/Base64.cpp +0 -263
  720. data/ext/ice/cpp/src/Ice/Base64.h +0 -31
  721. data/ext/ice/cpp/src/Ice/BatchRequestQueue.cpp +0 -250
  722. data/ext/ice/cpp/src/Ice/BatchRequestQueue.h +0 -59
  723. data/ext/ice/cpp/src/Ice/Buffer.cpp +0 -155
  724. data/ext/ice/cpp/src/Ice/BuiltinSequences.cpp +0 -49
  725. data/ext/ice/cpp/src/Ice/CollocatedRequestHandler.cpp +0 -407
  726. data/ext/ice/cpp/src/Ice/CollocatedRequestHandler.h +0 -87
  727. data/ext/ice/cpp/src/Ice/Communicator.cpp +0 -79
  728. data/ext/ice/cpp/src/Ice/CommunicatorF.cpp +0 -61
  729. data/ext/ice/cpp/src/Ice/CommunicatorI.cpp +0 -586
  730. data/ext/ice/cpp/src/Ice/CommunicatorI.h +0 -167
  731. data/ext/ice/cpp/src/Ice/Cond.cpp +0 -381
  732. data/ext/ice/cpp/src/Ice/ConnectRequestHandler.cpp +0 -348
  733. data/ext/ice/cpp/src/Ice/ConnectRequestHandler.h +0 -72
  734. data/ext/ice/cpp/src/Ice/ConnectRequestHandlerF.h +0 -24
  735. data/ext/ice/cpp/src/Ice/Connection.cpp +0 -155
  736. data/ext/ice/cpp/src/Ice/ConnectionF.cpp +0 -61
  737. data/ext/ice/cpp/src/Ice/ConnectionFactory.cpp +0 -1972
  738. data/ext/ice/cpp/src/Ice/ConnectionFactory.h +0 -264
  739. data/ext/ice/cpp/src/Ice/ConnectionFactoryF.h +0 -30
  740. data/ext/ice/cpp/src/Ice/ConnectionI.cpp +0 -3670
  741. data/ext/ice/cpp/src/Ice/ConnectionI.h +0 -391
  742. data/ext/ice/cpp/src/Ice/ConnectionRequestHandler.cpp +0 -73
  743. data/ext/ice/cpp/src/Ice/ConnectionRequestHandler.h +0 -41
  744. data/ext/ice/cpp/src/Ice/Connector.cpp +0 -16
  745. data/ext/ice/cpp/src/Ice/Connector.h +0 -32
  746. data/ext/ice/cpp/src/Ice/ConnectorF.h +0 -21
  747. data/ext/ice/cpp/src/Ice/CountDownLatch.cpp +0 -179
  748. data/ext/ice/cpp/src/Ice/Current.cpp +0 -62
  749. data/ext/ice/cpp/src/Ice/DefaultsAndOverrides.cpp +0 -161
  750. data/ext/ice/cpp/src/Ice/DefaultsAndOverrides.h +0 -52
  751. data/ext/ice/cpp/src/Ice/DefaultsAndOverridesF.h +0 -21
  752. data/ext/ice/cpp/src/Ice/DispatchInterceptor.cpp +0 -37
  753. data/ext/ice/cpp/src/Ice/DynamicLibrary.cpp +0 -291
  754. data/ext/ice/cpp/src/Ice/Endpoint.cpp +0 -147
  755. data/ext/ice/cpp/src/Ice/EndpointF.cpp +0 -61
  756. data/ext/ice/cpp/src/Ice/EndpointFactory.cpp +0 -189
  757. data/ext/ice/cpp/src/Ice/EndpointFactory.h +0 -117
  758. data/ext/ice/cpp/src/Ice/EndpointFactoryF.h +0 -21
  759. data/ext/ice/cpp/src/Ice/EndpointFactoryManager.cpp +0 -213
  760. data/ext/ice/cpp/src/Ice/EndpointFactoryManager.h +0 -47
  761. data/ext/ice/cpp/src/Ice/EndpointFactoryManagerF.h +0 -21
  762. data/ext/ice/cpp/src/Ice/EndpointI.cpp +0 -98
  763. data/ext/ice/cpp/src/Ice/EndpointI.h +0 -218
  764. data/ext/ice/cpp/src/Ice/EndpointIF.h +0 -49
  765. data/ext/ice/cpp/src/Ice/EndpointTypes.cpp +0 -51
  766. data/ext/ice/cpp/src/Ice/EventHandler.cpp +0 -32
  767. data/ext/ice/cpp/src/Ice/EventHandler.h +0 -81
  768. data/ext/ice/cpp/src/Ice/EventHandlerF.h +0 -24
  769. data/ext/ice/cpp/src/Ice/Exception.cpp +0 -845
  770. data/ext/ice/cpp/src/Ice/FacetMap.cpp +0 -49
  771. data/ext/ice/cpp/src/Ice/FactoryTable.cpp +0 -162
  772. data/ext/ice/cpp/src/Ice/FactoryTableInit.cpp +0 -88
  773. data/ext/ice/cpp/src/Ice/GCObject.cpp +0 -442
  774. data/ext/ice/cpp/src/Ice/HashUtil.h +0 -53
  775. data/ext/ice/cpp/src/Ice/HttpParser.cpp +0 -684
  776. data/ext/ice/cpp/src/Ice/HttpParser.h +0 -117
  777. data/ext/ice/cpp/src/Ice/IPEndpointI.cpp +0 -756
  778. data/ext/ice/cpp/src/Ice/IPEndpointI.h +0 -162
  779. data/ext/ice/cpp/src/Ice/IPEndpointIF.h +0 -28
  780. data/ext/ice/cpp/src/Ice/IconvStringConverter.cpp +0 -51
  781. data/ext/ice/cpp/src/Ice/Identity.cpp +0 -57
  782. data/ext/ice/cpp/src/Ice/ImplicitContext.cpp +0 -75
  783. data/ext/ice/cpp/src/Ice/ImplicitContextF.cpp +0 -61
  784. data/ext/ice/cpp/src/Ice/ImplicitContextI.cpp +0 -655
  785. data/ext/ice/cpp/src/Ice/ImplicitContextI.h +0 -48
  786. data/ext/ice/cpp/src/Ice/Incoming.cpp +0 -795
  787. data/ext/ice/cpp/src/Ice/IncomingAsync.cpp +0 -230
  788. data/ext/ice/cpp/src/Ice/IncomingRequest.h +0 -33
  789. data/ext/ice/cpp/src/Ice/Initialize.cpp +0 -654
  790. data/ext/ice/cpp/src/Ice/InputStream.cpp +0 -2741
  791. data/ext/ice/cpp/src/Ice/Instance.cpp +0 -1971
  792. data/ext/ice/cpp/src/Ice/Instance.h +0 -235
  793. data/ext/ice/cpp/src/Ice/Instrumentation.cpp +0 -188
  794. data/ext/ice/cpp/src/Ice/InstrumentationF.cpp +0 -66
  795. data/ext/ice/cpp/src/Ice/InstrumentationI.cpp +0 -1094
  796. data/ext/ice/cpp/src/Ice/InstrumentationI.h +0 -256
  797. data/ext/ice/cpp/src/Ice/LocalException.cpp +0 -3262
  798. data/ext/ice/cpp/src/Ice/LocalObject.cpp +0 -23
  799. data/ext/ice/cpp/src/Ice/Locator.cpp +0 -2042
  800. data/ext/ice/cpp/src/Ice/LocatorF.cpp +0 -63
  801. data/ext/ice/cpp/src/Ice/LocatorInfo.cpp +0 -889
  802. data/ext/ice/cpp/src/Ice/LocatorInfo.h +0 -189
  803. data/ext/ice/cpp/src/Ice/LocatorInfoF.h +0 -29
  804. data/ext/ice/cpp/src/Ice/Logger.cpp +0 -73
  805. data/ext/ice/cpp/src/Ice/LoggerAdminI.cpp +0 -956
  806. data/ext/ice/cpp/src/Ice/LoggerAdminI.h +0 -41
  807. data/ext/ice/cpp/src/Ice/LoggerF.cpp +0 -61
  808. data/ext/ice/cpp/src/Ice/LoggerI.cpp +0 -261
  809. data/ext/ice/cpp/src/Ice/LoggerI.h +0 -52
  810. data/ext/ice/cpp/src/Ice/LoggerUtil.cpp +0 -100
  811. data/ext/ice/cpp/src/Ice/Metrics.cpp +0 -2352
  812. data/ext/ice/cpp/src/Ice/MetricsAdminI.cpp +0 -694
  813. data/ext/ice/cpp/src/Ice/MetricsObserverI.cpp +0 -8
  814. data/ext/ice/cpp/src/Ice/Network.cpp +0 -3075
  815. data/ext/ice/cpp/src/Ice/Network.h +0 -371
  816. data/ext/ice/cpp/src/Ice/NetworkF.h +0 -23
  817. data/ext/ice/cpp/src/Ice/NetworkProxy.cpp +0 -324
  818. data/ext/ice/cpp/src/Ice/NetworkProxy.h +0 -72
  819. data/ext/ice/cpp/src/Ice/NetworkProxyF.h +0 -21
  820. data/ext/ice/cpp/src/Ice/OSLogLoggerI.cpp +0 -57
  821. data/ext/ice/cpp/src/Ice/OSLogLoggerI.h +0 -40
  822. data/ext/ice/cpp/src/Ice/Object.cpp +0 -435
  823. data/ext/ice/cpp/src/Ice/ObjectAdapter.cpp +0 -79
  824. data/ext/ice/cpp/src/Ice/ObjectAdapterF.cpp +0 -61
  825. data/ext/ice/cpp/src/Ice/ObjectAdapterFactory.cpp +0 -291
  826. data/ext/ice/cpp/src/Ice/ObjectAdapterFactory.h +0 -53
  827. data/ext/ice/cpp/src/Ice/ObjectAdapterFactoryF.h +0 -25
  828. data/ext/ice/cpp/src/Ice/ObjectAdapterI.cpp +0 -1530
  829. data/ext/ice/cpp/src/Ice/ObjectAdapterI.h +0 -159
  830. data/ext/ice/cpp/src/Ice/ObjectFactory.cpp +0 -75
  831. data/ext/ice/cpp/src/Ice/ObserverHelper.cpp +0 -56
  832. data/ext/ice/cpp/src/Ice/OpaqueEndpointI.cpp +0 -408
  833. data/ext/ice/cpp/src/Ice/OpaqueEndpointI.h +0 -74
  834. data/ext/ice/cpp/src/Ice/OutgoingAsync.cpp +0 -1322
  835. data/ext/ice/cpp/src/Ice/OutputStream.cpp +0 -1367
  836. data/ext/ice/cpp/src/Ice/Plugin.cpp +0 -87
  837. data/ext/ice/cpp/src/Ice/PluginF.cpp +0 -61
  838. data/ext/ice/cpp/src/Ice/PluginManagerI.cpp +0 -503
  839. data/ext/ice/cpp/src/Ice/PluginManagerI.h +0 -61
  840. data/ext/ice/cpp/src/Ice/Process.cpp +0 -471
  841. data/ext/ice/cpp/src/Ice/ProcessF.cpp +0 -63
  842. data/ext/ice/cpp/src/Ice/Properties.cpp +0 -78
  843. data/ext/ice/cpp/src/Ice/PropertiesAdmin.cpp +0 -603
  844. data/ext/ice/cpp/src/Ice/PropertiesAdminI.cpp +0 -265
  845. data/ext/ice/cpp/src/Ice/PropertiesAdminI.h +0 -64
  846. data/ext/ice/cpp/src/Ice/PropertiesF.cpp +0 -63
  847. data/ext/ice/cpp/src/Ice/PropertiesI.cpp +0 -747
  848. data/ext/ice/cpp/src/Ice/PropertiesI.h +0 -70
  849. data/ext/ice/cpp/src/Ice/PropertyNames.cpp +0 -1429
  850. data/ext/ice/cpp/src/Ice/PropertyNames.h +0 -78
  851. data/ext/ice/cpp/src/Ice/Protocol.cpp +0 -124
  852. data/ext/ice/cpp/src/Ice/ProtocolInstance.cpp +0 -131
  853. data/ext/ice/cpp/src/Ice/ProtocolInstance.h +0 -93
  854. data/ext/ice/cpp/src/Ice/ProtocolInstanceF.h +0 -21
  855. data/ext/ice/cpp/src/Ice/ProtocolPluginFacade.cpp +0 -51
  856. data/ext/ice/cpp/src/Ice/ProtocolPluginFacade.h +0 -64
  857. data/ext/ice/cpp/src/Ice/ProtocolPluginFacadeF.h +0 -21
  858. data/ext/ice/cpp/src/Ice/Proxy.cpp +0 -1601
  859. data/ext/ice/cpp/src/Ice/ProxyFactory.cpp +0 -300
  860. data/ext/ice/cpp/src/Ice/ProxyFactory.h +0 -57
  861. data/ext/ice/cpp/src/Ice/Reference.cpp +0 -2046
  862. data/ext/ice/cpp/src/Ice/Reference.h +0 -323
  863. data/ext/ice/cpp/src/Ice/ReferenceFactory.cpp +0 -888
  864. data/ext/ice/cpp/src/Ice/ReferenceFactory.h +0 -76
  865. data/ext/ice/cpp/src/Ice/ReferenceFactoryF.h +0 -19
  866. data/ext/ice/cpp/src/Ice/RegisterPluginsInit.cpp +0 -38
  867. data/ext/ice/cpp/src/Ice/RegisterPluginsInit.h +0 -20
  868. data/ext/ice/cpp/src/Ice/RemoteLogger.cpp +0 -1171
  869. data/ext/ice/cpp/src/Ice/ReplyStatus.h +0 -24
  870. data/ext/ice/cpp/src/Ice/RequestHandler.cpp +0 -37
  871. data/ext/ice/cpp/src/Ice/RequestHandler.h +0 -78
  872. data/ext/ice/cpp/src/Ice/RequestHandlerFactory.cpp +0 -77
  873. data/ext/ice/cpp/src/Ice/RequestHandlerFactory.h +0 -37
  874. data/ext/ice/cpp/src/Ice/ResponseHandler.cpp +0 -12
  875. data/ext/ice/cpp/src/Ice/ResponseHandler.h +0 -43
  876. data/ext/ice/cpp/src/Ice/RetryQueue.cpp +0 -157
  877. data/ext/ice/cpp/src/Ice/RetryQueue.h +0 -66
  878. data/ext/ice/cpp/src/Ice/RetryQueueF.h +0 -19
  879. data/ext/ice/cpp/src/Ice/Router.cpp +0 -977
  880. data/ext/ice/cpp/src/Ice/RouterF.cpp +0 -63
  881. data/ext/ice/cpp/src/Ice/RouterInfo.cpp +0 -379
  882. data/ext/ice/cpp/src/Ice/RouterInfo.h +0 -152
  883. data/ext/ice/cpp/src/Ice/RouterInfoF.h +0 -25
  884. data/ext/ice/cpp/src/Ice/SHA1.cpp +0 -185
  885. data/ext/ice/cpp/src/Ice/Selector.cpp +0 -1537
  886. data/ext/ice/cpp/src/Ice/Selector.h +0 -308
  887. data/ext/ice/cpp/src/Ice/ServantLocator.cpp +0 -75
  888. data/ext/ice/cpp/src/Ice/ServantLocatorF.cpp +0 -61
  889. data/ext/ice/cpp/src/Ice/ServantManager.cpp +0 -480
  890. data/ext/ice/cpp/src/Ice/ServantManager.h +0 -69
  891. data/ext/ice/cpp/src/Ice/SharedContext.h +0 -46
  892. data/ext/ice/cpp/src/Ice/SliceChecksumDict.cpp +0 -49
  893. data/ext/ice/cpp/src/Ice/SliceChecksums.cpp +0 -75
  894. data/ext/ice/cpp/src/Ice/SlicedData.cpp +0 -127
  895. data/ext/ice/cpp/src/Ice/StreamSocket.cpp +0 -682
  896. data/ext/ice/cpp/src/Ice/StreamSocket.h +0 -92
  897. data/ext/ice/cpp/src/Ice/StringConverterPlugin.cpp +0 -192
  898. data/ext/ice/cpp/src/Ice/StringUtil.h +0 -30
  899. data/ext/ice/cpp/src/Ice/SysLoggerI.cpp +0 -166
  900. data/ext/ice/cpp/src/Ice/SysLoggerI.h +0 -37
  901. data/ext/ice/cpp/src/Ice/SystemdJournalI.cpp +0 -66
  902. data/ext/ice/cpp/src/Ice/SystemdJournalI.h +0 -39
  903. data/ext/ice/cpp/src/Ice/TcpAcceptor.cpp +0 -355
  904. data/ext/ice/cpp/src/Ice/TcpAcceptor.h +0 -69
  905. data/ext/ice/cpp/src/Ice/TcpConnector.cpp +0 -127
  906. data/ext/ice/cpp/src/Ice/TcpConnector.h +0 -45
  907. data/ext/ice/cpp/src/Ice/TcpEndpointI.cpp +0 -385
  908. data/ext/ice/cpp/src/Ice/TcpEndpointI.h +0 -90
  909. data/ext/ice/cpp/src/Ice/TcpTransceiver.cpp +0 -135
  910. data/ext/ice/cpp/src/Ice/TcpTransceiver.h +0 -58
  911. data/ext/ice/cpp/src/Ice/Thread.cpp +0 -811
  912. data/ext/ice/cpp/src/Ice/ThreadPool.cpp +0 -1328
  913. data/ext/ice/cpp/src/Ice/ThreadPool.h +0 -393
  914. data/ext/ice/cpp/src/Ice/Timer.cpp +0 -263
  915. data/ext/ice/cpp/src/Ice/TraceLevels.cpp +0 -38
  916. data/ext/ice/cpp/src/Ice/TraceLevels.h +0 -45
  917. data/ext/ice/cpp/src/Ice/TraceLevelsF.h +0 -21
  918. data/ext/ice/cpp/src/Ice/TraceUtil.cpp +0 -478
  919. data/ext/ice/cpp/src/Ice/TraceUtil.h +0 -30
  920. data/ext/ice/cpp/src/Ice/Transceiver.cpp +0 -18
  921. data/ext/ice/cpp/src/Ice/Transceiver.h +0 -49
  922. data/ext/ice/cpp/src/Ice/TransceiverF.h +0 -33
  923. data/ext/ice/cpp/src/Ice/UdpConnector.cpp +0 -136
  924. data/ext/ice/cpp/src/Ice/UdpConnector.h +0 -45
  925. data/ext/ice/cpp/src/Ice/UdpEndpointI.cpp +0 -515
  926. data/ext/ice/cpp/src/Ice/UdpEndpointI.h +0 -95
  927. data/ext/ice/cpp/src/Ice/UdpTransceiver.cpp +0 -1153
  928. data/ext/ice/cpp/src/Ice/UdpTransceiver.h +0 -117
  929. data/ext/ice/cpp/src/Ice/Value.cpp +0 -76
  930. data/ext/ice/cpp/src/Ice/ValueFactory.cpp +0 -83
  931. data/ext/ice/cpp/src/Ice/ValueFactoryManagerI.cpp +0 -61
  932. data/ext/ice/cpp/src/Ice/ValueFactoryManagerI.h +0 -37
  933. data/ext/ice/cpp/src/Ice/Version.cpp +0 -57
  934. data/ext/ice/cpp/src/Ice/VirtualShared.h +0 -38
  935. data/ext/ice/cpp/src/Ice/WSAcceptor.cpp +0 -92
  936. data/ext/ice/cpp/src/Ice/WSAcceptor.h +0 -52
  937. data/ext/ice/cpp/src/Ice/WSConnector.cpp +0 -102
  938. data/ext/ice/cpp/src/Ice/WSConnector.h +0 -43
  939. data/ext/ice/cpp/src/Ice/WSEndpoint.cpp +0 -508
  940. data/ext/ice/cpp/src/Ice/WSEndpoint.h +0 -93
  941. data/ext/ice/cpp/src/Ice/WSTransceiver.cpp +0 -1747
  942. data/ext/ice/cpp/src/Ice/WSTransceiver.h +0 -141
  943. data/ext/ice/cpp/src/IceDiscovery/IceDiscovery.cpp +0 -915
  944. data/ext/ice/cpp/src/IceDiscovery/IceDiscovery.h +0 -1889
  945. data/ext/ice/cpp/src/IceDiscovery/LocatorI.cpp +0 -265
  946. data/ext/ice/cpp/src/IceDiscovery/LocatorI.h +0 -109
  947. data/ext/ice/cpp/src/IceDiscovery/LookupI.cpp +0 -608
  948. data/ext/ice/cpp/src/IceDiscovery/LookupI.h +0 -228
  949. data/ext/ice/cpp/src/IceDiscovery/PluginI.cpp +0 -176
  950. data/ext/ice/cpp/src/IceDiscovery/PluginI.h +0 -36
  951. data/ext/ice/cpp/src/IceLocatorDiscovery/IceLocatorDiscovery.cpp +0 -730
  952. data/ext/ice/cpp/src/IceLocatorDiscovery/IceLocatorDiscovery.h +0 -1197
  953. data/ext/ice/cpp/src/IceLocatorDiscovery/Plugin.h +0 -47
  954. data/ext/ice/cpp/src/IceLocatorDiscovery/PluginI.cpp +0 -1048
  955. data/ext/ice/cpp/src/IceSSL/AcceptorI.cpp +0 -105
  956. data/ext/ice/cpp/src/IceSSL/AcceptorI.h +0 -52
  957. data/ext/ice/cpp/src/IceSSL/CertificateI.cpp +0 -301
  958. data/ext/ice/cpp/src/IceSSL/CertificateI.h +0 -64
  959. data/ext/ice/cpp/src/IceSSL/ConnectionInfo.cpp +0 -75
  960. data/ext/ice/cpp/src/IceSSL/ConnectionInfoF.cpp +0 -61
  961. data/ext/ice/cpp/src/IceSSL/ConnectorI.cpp +0 -102
  962. data/ext/ice/cpp/src/IceSSL/ConnectorI.h +0 -44
  963. data/ext/ice/cpp/src/IceSSL/EndpointI.cpp +0 -372
  964. data/ext/ice/cpp/src/IceSSL/EndpointI.h +0 -100
  965. data/ext/ice/cpp/src/IceSSL/EndpointInfo.cpp +0 -75
  966. data/ext/ice/cpp/src/IceSSL/Instance.cpp +0 -28
  967. data/ext/ice/cpp/src/IceSSL/Instance.h +0 -37
  968. data/ext/ice/cpp/src/IceSSL/InstanceF.h +0 -33
  969. data/ext/ice/cpp/src/IceSSL/OpenSSLCertificateI.cpp +0 -688
  970. data/ext/ice/cpp/src/IceSSL/OpenSSLEngine.cpp +0 -1147
  971. data/ext/ice/cpp/src/IceSSL/OpenSSLEngine.h +0 -59
  972. data/ext/ice/cpp/src/IceSSL/OpenSSLEngineF.h +0 -27
  973. data/ext/ice/cpp/src/IceSSL/OpenSSLPluginI.cpp +0 -127
  974. data/ext/ice/cpp/src/IceSSL/OpenSSLTransceiverI.cpp +0 -1092
  975. data/ext/ice/cpp/src/IceSSL/OpenSSLTransceiverI.h +0 -90
  976. data/ext/ice/cpp/src/IceSSL/OpenSSLUtil.cpp +0 -288
  977. data/ext/ice/cpp/src/IceSSL/OpenSSLUtil.h +0 -58
  978. data/ext/ice/cpp/src/IceSSL/PluginI.cpp +0 -246
  979. data/ext/ice/cpp/src/IceSSL/PluginI.h +0 -67
  980. data/ext/ice/cpp/src/IceSSL/RFC2253.cpp +0 -490
  981. data/ext/ice/cpp/src/IceSSL/RFC2253.h +0 -62
  982. data/ext/ice/cpp/src/IceSSL/SChannelCertificateI.cpp +0 -721
  983. data/ext/ice/cpp/src/IceSSL/SChannelEngine.cpp +0 -1283
  984. data/ext/ice/cpp/src/IceSSL/SChannelEngine.h +0 -123
  985. data/ext/ice/cpp/src/IceSSL/SChannelEngineF.h +0 -31
  986. data/ext/ice/cpp/src/IceSSL/SChannelPluginI.cpp +0 -73
  987. data/ext/ice/cpp/src/IceSSL/SChannelTransceiverI.cpp +0 -1174
  988. data/ext/ice/cpp/src/IceSSL/SChannelTransceiverI.h +0 -133
  989. data/ext/ice/cpp/src/IceSSL/SSLEngine.cpp +0 -313
  990. data/ext/ice/cpp/src/IceSSL/SSLEngine.h +0 -100
  991. data/ext/ice/cpp/src/IceSSL/SSLEngineF.h +0 -21
  992. data/ext/ice/cpp/src/IceSSL/SecureTransportCertificateI.cpp +0 -999
  993. data/ext/ice/cpp/src/IceSSL/SecureTransportEngine.cpp +0 -1308
  994. data/ext/ice/cpp/src/IceSSL/SecureTransportEngine.h +0 -59
  995. data/ext/ice/cpp/src/IceSSL/SecureTransportEngineF.h +0 -29
  996. data/ext/ice/cpp/src/IceSSL/SecureTransportPluginI.cpp +0 -75
  997. data/ext/ice/cpp/src/IceSSL/SecureTransportTransceiverI.cpp +0 -719
  998. data/ext/ice/cpp/src/IceSSL/SecureTransportTransceiverI.h +0 -92
  999. data/ext/ice/cpp/src/IceSSL/SecureTransportUtil.cpp +0 -868
  1000. data/ext/ice/cpp/src/IceSSL/SecureTransportUtil.h +0 -45
  1001. data/ext/ice/cpp/src/IceSSL/TrustManager.cpp +0 -236
  1002. data/ext/ice/cpp/src/IceSSL/TrustManager.h +0 -46
  1003. data/ext/ice/cpp/src/IceSSL/TrustManagerF.h +0 -21
  1004. data/ext/ice/cpp/src/IceSSL/UWPCertificateI.cpp +0 -266
  1005. data/ext/ice/cpp/src/IceSSL/UWPEngine.cpp +0 -338
  1006. data/ext/ice/cpp/src/IceSSL/UWPEngine.h +0 -41
  1007. data/ext/ice/cpp/src/IceSSL/UWPEngineF.h +0 -26
  1008. data/ext/ice/cpp/src/IceSSL/UWPPluginI.cpp +0 -89
  1009. data/ext/ice/cpp/src/IceSSL/UWPTransceiverI.cpp +0 -383
  1010. data/ext/ice/cpp/src/IceSSL/UWPTransceiverI.h +0 -71
  1011. data/ext/ice/cpp/src/IceSSL/Util.cpp +0 -192
  1012. data/ext/ice/cpp/src/IceSSL/Util.h +0 -99
  1013. data/ext/ice/cpp/src/IceUtil/ConsoleUtil.cpp +0 -157
  1014. data/ext/ice/cpp/src/IceUtil/ConvertUTF.cpp +0 -472
  1015. data/ext/ice/cpp/src/IceUtil/ConvertUTF.h +0 -147
  1016. data/ext/ice/cpp/src/IceUtil/CtrlCHandler.cpp +0 -259
  1017. data/ext/ice/cpp/src/IceUtil/FileUtil.cpp +0 -484
  1018. data/ext/ice/cpp/src/IceUtil/InputUtil.cpp +0 -36
  1019. data/ext/ice/cpp/src/IceUtil/MutexProtocol.cpp +0 -19
  1020. data/ext/ice/cpp/src/IceUtil/Options.cpp +0 -1051
  1021. data/ext/ice/cpp/src/IceUtil/OutputUtil.cpp +0 -609
  1022. data/ext/ice/cpp/src/IceUtil/Random.cpp +0 -180
  1023. data/ext/ice/cpp/src/IceUtil/RecMutex.cpp +0 -242
  1024. data/ext/ice/cpp/src/IceUtil/Shared.cpp +0 -71
  1025. data/ext/ice/cpp/src/IceUtil/StringConverter.cpp +0 -690
  1026. data/ext/ice/cpp/src/IceUtil/StringUtil.cpp +0 -1180
  1027. data/ext/ice/cpp/src/IceUtil/ThreadException.cpp +0 -130
  1028. data/ext/ice/cpp/src/IceUtil/Time.cpp +0 -307
  1029. data/ext/ice/cpp/src/IceUtil/UUID.cpp +0 -169
  1030. data/ext/ice/cpp/src/IceUtil/Unicode.cpp +0 -183
  1031. data/ext/ice/cpp/src/IceUtil/Unicode.h +0 -43
  1032. data/ext/ice/cpp/src/IceUtil/UtilException.cpp +0 -839
  1033. data/ext/ice/cpp/src/Slice/CPlusPlusUtil.cpp +0 -1810
  1034. data/ext/ice/cpp/src/Slice/CPlusPlusUtil.h +0 -72
  1035. data/ext/ice/cpp/src/Slice/Checksum.cpp +0 -447
  1036. data/ext/ice/cpp/src/Slice/Checksum.h +0 -21
  1037. data/ext/ice/cpp/src/Slice/FileTracker.cpp +0 -146
  1038. data/ext/ice/cpp/src/Slice/FileTracker.h +0 -66
  1039. data/ext/ice/cpp/src/Slice/Grammar.cpp +0 -4793
  1040. data/ext/ice/cpp/src/Slice/Grammar.h +0 -118
  1041. data/ext/ice/cpp/src/Slice/GrammarUtil.h +0 -228
  1042. data/ext/ice/cpp/src/Slice/JavaUtil.cpp +0 -5154
  1043. data/ext/ice/cpp/src/Slice/JavaUtil.h +0 -398
  1044. data/ext/ice/cpp/src/Slice/MD5.cpp +0 -52
  1045. data/ext/ice/cpp/src/Slice/MD5.h +0 -39
  1046. data/ext/ice/cpp/src/Slice/MD5I.cpp +0 -393
  1047. data/ext/ice/cpp/src/Slice/MD5I.h +0 -91
  1048. data/ext/ice/cpp/src/Slice/PHPUtil.cpp +0 -157
  1049. data/ext/ice/cpp/src/Slice/PHPUtil.h +0 -36
  1050. data/ext/ice/cpp/src/Slice/Parser.cpp +0 -7058
  1051. data/ext/ice/cpp/src/Slice/Parser.h +0 -1174
  1052. data/ext/ice/cpp/src/Slice/Preprocessor.cpp +0 -797
  1053. data/ext/ice/cpp/src/Slice/Preprocessor.h +0 -60
  1054. data/ext/ice/cpp/src/Slice/Python.cpp +0 -830
  1055. data/ext/ice/cpp/src/Slice/PythonUtil.cpp +0 -3439
  1056. data/ext/ice/cpp/src/Slice/PythonUtil.h +0 -70
  1057. data/ext/ice/cpp/src/Slice/Ruby.cpp +0 -350
  1058. data/ext/ice/cpp/src/Slice/RubyUtil.cpp +0 -1571
  1059. data/ext/ice/cpp/src/Slice/RubyUtil.h +0 -49
  1060. data/ext/ice/cpp/src/Slice/Scanner.cpp +0 -2807
  1061. data/ext/ice/cpp/src/Slice/SliceUtil.cpp +0 -424
  1062. data/ext/ice/cpp/src/Slice/StringLiteralUtil.cpp +0 -456
  1063. data/ext/ice/cpp/src/Slice/Util.h +0 -50
  1064. data/ext/ice/mcpp/CMakeLists.txt +0 -80
  1065. data/ext/ice/mcpp/LICENSE +0 -29
  1066. data/ext/ice/mcpp/Makefile +0 -63
  1067. data/ext/ice/mcpp/README.md +0 -32
  1068. data/ext/ice/mcpp/internal.H +0 -530
  1069. data/ext/ice/mcpp/mcpp.gyp +0 -88
  1070. data/lib/Glacier2/Metrics.rb +0 -56
  1071. data/lib/Glacier2/PermissionsVerifier.rb +0 -93
  1072. data/lib/Glacier2/PermissionsVerifierF.rb +0 -30
  1073. data/lib/Glacier2/Router.rb +0 -95
  1074. data/lib/Glacier2/RouterF.rb +0 -25
  1075. data/lib/Glacier2/SSLInfo.rb +0 -72
  1076. data/lib/Glacier2/Session.rb +0 -247
  1077. data/lib/Glacier2.rb +0 -7
  1078. data/lib/Ice/BuiltinSequences.rb +0 -60
  1079. data/lib/Ice/Communicator.rb +0 -87
  1080. data/lib/Ice/CommunicatorF.rb +0 -24
  1081. data/lib/Ice/Connection.rb +0 -413
  1082. data/lib/Ice/ConnectionF.rb +0 -32
  1083. data/lib/Ice/Current.rb +0 -141
  1084. data/lib/Ice/Endpoint.rb +0 -187
  1085. data/lib/Ice/EndpointF.rb +0 -48
  1086. data/lib/Ice/EndpointTypes.rb +0 -69
  1087. data/lib/Ice/FacetMap.rb +0 -24
  1088. data/lib/Ice/Identity.rb +0 -63
  1089. data/lib/Ice/ImplicitContext.rb +0 -26
  1090. data/lib/Ice/ImplicitContextF.rb +0 -24
  1091. data/lib/Ice/Instrumentation.rb +0 -169
  1092. data/lib/Ice/InstrumentationF.rb +0 -31
  1093. data/lib/Ice/LocalException.rb +0 -1031
  1094. data/lib/Ice/Locator.rb +0 -196
  1095. data/lib/Ice/LocatorF.rb +0 -30
  1096. data/lib/Ice/Logger.rb +0 -24
  1097. data/lib/Ice/LoggerF.rb +0 -24
  1098. data/lib/Ice/Metrics.rb +0 -337
  1099. data/lib/Ice/ObjectAdapter.rb +0 -29
  1100. data/lib/Ice/ObjectAdapterF.rb +0 -24
  1101. data/lib/Ice/ObjectFactory.rb +0 -24
  1102. data/lib/Ice/Plugin.rb +0 -30
  1103. data/lib/Ice/PluginF.rb +0 -28
  1104. data/lib/Ice/Process.rb +0 -53
  1105. data/lib/Ice/ProcessF.rb +0 -25
  1106. data/lib/Ice/Properties.rb +0 -25
  1107. data/lib/Ice/PropertiesAdmin.rb +0 -63
  1108. data/lib/Ice/PropertiesF.rb +0 -29
  1109. data/lib/Ice/RemoteLogger.rb +0 -207
  1110. data/lib/Ice/Router.rb +0 -87
  1111. data/lib/Ice/RouterF.rb +0 -25
  1112. data/lib/Ice/ServantLocator.rb +0 -26
  1113. data/lib/Ice/ServantLocatorF.rb +0 -24
  1114. data/lib/Ice/SliceChecksumDict.rb +0 -24
  1115. data/lib/Ice/ValueFactory.rb +0 -28
  1116. data/lib/Ice/Version.rb +0 -90
  1117. data/lib/Ice.rb +0 -673
  1118. data/lib/IceBox/IceBox.rb +0 -164
  1119. data/lib/IceBox.rb +0 -5
  1120. data/lib/IceGrid/Admin.rb +0 -1196
  1121. data/lib/IceGrid/Descriptor.rb +0 -1034
  1122. data/lib/IceGrid/Exception.rb +0 -376
  1123. data/lib/IceGrid/FileParser.rb +0 -65
  1124. data/lib/IceGrid/PluginFacade.rb +0 -35
  1125. data/lib/IceGrid/Registry.rb +0 -209
  1126. data/lib/IceGrid/Session.rb +0 -71
  1127. data/lib/IceGrid/UserAccountMapper.rb +0 -61
  1128. data/lib/IceGrid.rb +0 -9
  1129. data/lib/IcePatch2/FileInfo.rb +0 -115
  1130. data/lib/IcePatch2/FileServer.rb +0 -123
  1131. data/lib/IcePatch2.rb +0 -5
  1132. data/lib/IceStorm/IceStorm.rb +0 -332
  1133. data/lib/IceStorm/Metrics.rb +0 -73
  1134. data/lib/IceStorm.rb +0 -6
  1135. data/slice/Glacier2/Metrics.ice +0 -88
  1136. data/slice/Glacier2/PermissionsVerifier.ice +0 -111
  1137. data/slice/Glacier2/PermissionsVerifierF.ice +0 -30
  1138. data/slice/Glacier2/Router.ice +0 -186
  1139. data/slice/Glacier2/RouterF.ice +0 -29
  1140. data/slice/Glacier2/SSLInfo.ice +0 -59
  1141. data/slice/Glacier2/Session.ice +0 -274
  1142. data/slice/Ice/BuiltinSequences.ice +0 -59
  1143. data/slice/Ice/Communicator.ice +0 -676
  1144. data/slice/Ice/CommunicatorF.ice +0 -31
  1145. data/slice/Ice/Connection.ice +0 -516
  1146. data/slice/Ice/ConnectionF.ice +0 -33
  1147. data/slice/Ice/Current.ice +0 -170
  1148. data/slice/Ice/Endpoint.ice +0 -291
  1149. data/slice/Ice/EndpointF.ice +0 -43
  1150. data/slice/Ice/EndpointTypes.ice +0 -48
  1151. data/slice/Ice/FacetMap.ice +0 -36
  1152. data/slice/Ice/Identity.ice +0 -75
  1153. data/slice/Ice/ImplicitContext.ice +0 -119
  1154. data/slice/Ice/ImplicitContextF.ice +0 -30
  1155. data/slice/Ice/Instrumentation.ice +0 -509
  1156. data/slice/Ice/InstrumentationF.ice +0 -38
  1157. data/slice/Ice/LocalException.ice +0 -1040
  1158. data/slice/Ice/Locator.ice +0 -239
  1159. data/slice/Ice/LocatorF.ice +0 -32
  1160. data/slice/Ice/Logger.ice +0 -99
  1161. data/slice/Ice/LoggerF.ice +0 -31
  1162. data/slice/Ice/Metrics.ice +0 -436
  1163. data/slice/Ice/ObjectAdapter.ice +0 -710
  1164. data/slice/Ice/ObjectAdapterF.ice +0 -31
  1165. data/slice/Ice/ObjectFactory.ice +0 -71
  1166. data/slice/Ice/Plugin.ice +0 -131
  1167. data/slice/Ice/PluginF.ice +0 -36
  1168. data/slice/Ice/Process.ice +0 -64
  1169. data/slice/Ice/ProcessF.ice +0 -31
  1170. data/slice/Ice/Properties.ice +0 -244
  1171. data/slice/Ice/PropertiesAdmin.ice +0 -87
  1172. data/slice/Ice/PropertiesF.ice +0 -32
  1173. data/slice/Ice/RemoteLogger.ice +0 -226
  1174. data/slice/Ice/Router.ice +0 -103
  1175. data/slice/Ice/RouterF.ice +0 -31
  1176. data/slice/Ice/ServantLocator.ice +0 -136
  1177. data/slice/Ice/ServantLocatorF.ice +0 -31
  1178. data/slice/Ice/SliceChecksumDict.ice +0 -36
  1179. data/slice/Ice/ValueFactory.ice +0 -133
  1180. data/slice/Ice/Version.ice +0 -51
  1181. data/slice/IceBT/ConnectionInfo.ice +0 -59
  1182. data/slice/IceBT/EndpointInfo.ice +0 -57
  1183. data/slice/IceBT/Types.ice +0 -45
  1184. data/slice/IceBox/IceBox.ice +0 -216
  1185. data/slice/IceDiscovery/IceDiscovery.ice +0 -98
  1186. data/slice/IceGrid/Admin.ice +0 -1957
  1187. data/slice/IceGrid/Descriptor.ice +0 -1094
  1188. data/slice/IceGrid/Exception.ice +0 -396
  1189. data/slice/IceGrid/FileParser.ice +0 -72
  1190. data/slice/IceGrid/PluginFacade.ice +0 -329
  1191. data/slice/IceGrid/Registry.ice +0 -269
  1192. data/slice/IceGrid/Session.ice +0 -128
  1193. data/slice/IceGrid/UserAccountMapper.ice +0 -69
  1194. data/slice/IceIAP/ConnectionInfo.ice +0 -74
  1195. data/slice/IceIAP/EndpointInfo.ice +0 -68
  1196. data/slice/IceLocatorDiscovery/IceLocatorDiscovery.ice +0 -83
  1197. data/slice/IcePatch2/FileInfo.ice +0 -85
  1198. data/slice/IcePatch2/FileServer.ice +0 -191
  1199. data/slice/IceSSL/ConnectionInfo.ice +0 -54
  1200. data/slice/IceSSL/ConnectionInfoF.ice +0 -31
  1201. data/slice/IceSSL/EndpointInfo.ice +0 -45
  1202. data/slice/IceStorm/IceStorm.ice +0 -414
  1203. data/slice/IceStorm/Metrics.ice +0 -83
  1204. /data/{ext → dist}/ice/mcpp/config.h +0 -0
  1205. /data/{ext → dist}/ice/mcpp/configed.H +0 -0
  1206. /data/{ext → dist}/ice/mcpp/directive.c +0 -0
  1207. /data/{ext → dist}/ice/mcpp/eval.c +0 -0
  1208. /data/{ext → dist}/ice/mcpp/expand.c +0 -0
  1209. /data/{ext → dist}/ice/mcpp/mbchar.c +0 -0
  1210. /data/{ext → dist}/ice/mcpp/mcpp_lib.h +0 -0
  1211. /data/{ext/ice/mcpp/main.c → dist/ice/mcpp/mcpp_main.c} +0 -0
  1212. /data/{ext → dist}/ice/mcpp/mcpp_out.h +0 -0
  1213. /data/{ext → dist}/ice/mcpp/support.c +0 -0
  1214. /data/{ext → dist}/ice/mcpp/system.H +0 -0
  1215. /data/{ext → dist}/ice/mcpp/system.c +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
+ }