zeroc-ice 3.7.11 → 3.8.1

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 (895) hide show
  1. checksums.yaml +4 -4
  2. data/dist/IceRuby/Communicator.cpp +159 -376
  3. data/dist/IceRuby/Communicator.h +8 -9
  4. data/dist/IceRuby/Config.h +23 -89
  5. data/dist/IceRuby/Connection.cpp +111 -219
  6. data/dist/IceRuby/Connection.h +8 -12
  7. data/dist/IceRuby/DefaultSliceLoader.cpp +45 -0
  8. data/dist/IceRuby/DefaultSliceLoader.h +25 -0
  9. data/dist/IceRuby/Endpoint.cpp +63 -65
  10. data/dist/IceRuby/Endpoint.h +7 -11
  11. data/dist/IceRuby/ImplicitContext.cpp +26 -31
  12. data/dist/IceRuby/ImplicitContext.h +6 -10
  13. data/dist/IceRuby/Init.cpp +27 -40
  14. data/dist/IceRuby/Logger.cpp +23 -28
  15. data/dist/IceRuby/Logger.h +8 -12
  16. data/dist/IceRuby/Operation.cpp +177 -219
  17. data/dist/IceRuby/Operation.h +15 -18
  18. data/dist/IceRuby/Properties.cpp +133 -89
  19. data/dist/IceRuby/Properties.h +6 -10
  20. data/dist/IceRuby/Proxy.cpp +179 -649
  21. data/dist/IceRuby/Proxy.h +11 -12
  22. data/dist/IceRuby/RubySliceLoader.cpp +39 -0
  23. data/dist/IceRuby/RubySliceLoader.h +27 -0
  24. data/dist/IceRuby/Slice.cpp +88 -94
  25. data/dist/IceRuby/Slice.h +3 -7
  26. data/dist/IceRuby/Types.cpp +987 -1190
  27. data/dist/IceRuby/Types.h +390 -461
  28. data/dist/IceRuby/Util.cpp +214 -473
  29. data/dist/IceRuby/Util.h +378 -479
  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 +4 -10
  33. data/dist/ice/cpp/include/Ice/Buffer.h +116 -111
  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 +46 -62
  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 +6 -28
  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 +46 -151
  48. data/dist/ice/cpp/include/Ice/FacetMap.h +16 -0
  49. data/dist/ice/cpp/include/Ice/Format.h +11 -27
  50. data/dist/ice/cpp/include/Ice/Ice.h +53 -48
  51. data/dist/ice/cpp/include/Ice/IconvStringConverter.h +165 -326
  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 +113 -927
  55. data/dist/ice/cpp/include/Ice/InputStream.h +748 -1320
  56. data/dist/ice/cpp/include/Ice/InstanceF.h +4 -10
  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 +124 -147
  62. data/dist/ice/cpp/include/Ice/MarshaledResult.h +50 -0
  63. data/dist/ice/cpp/include/Ice/NativePropertiesAdmin.h +41 -71
  64. data/dist/ice/cpp/include/Ice/Object.h +151 -490
  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 +5 -19
  68. data/dist/ice/cpp/include/Ice/ObserverHelper.h +115 -132
  69. data/dist/ice/cpp/include/Ice/OutgoingAsync.h +392 -748
  70. data/dist/ice/cpp/include/Ice/OutgoingResponse.h +129 -0
  71. data/dist/ice/cpp/include/Ice/OutputStream.h +756 -956
  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/{IceUtil → Ice}/PopDisableWarnings.h +8 -6
  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 +665 -5094
  78. data/dist/ice/cpp/include/Ice/ProxyF.h +2 -44
  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 +4 -19
  82. data/dist/ice/cpp/include/Ice/RequestHandlerF.h +8 -18
  83. data/dist/ice/cpp/include/Ice/SSL/ClientAuthenticationOptions.h +276 -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 +286 -0
  90. data/dist/ice/cpp/include/Ice/ServantLocator.h +51 -0
  91. data/dist/ice/cpp/include/Ice/Service.h +182 -342
  92. data/dist/ice/cpp/include/Ice/SliceLoader.h +67 -0
  93. data/dist/ice/cpp/include/Ice/SlicedData.h +113 -160
  94. data/dist/ice/cpp/include/Ice/SlicedDataF.h +17 -27
  95. data/dist/ice/cpp/include/Ice/StreamHelpers.h +532 -1070
  96. data/dist/ice/cpp/include/Ice/StreamableTraits.h +291 -0
  97. data/dist/ice/cpp/include/Ice/StringConverter.h +152 -63
  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 +6 -9
  102. data/dist/ice/cpp/include/Ice/UserException.h +46 -0
  103. data/dist/ice/cpp/include/Ice/UserExceptionFactory.h +4 -79
  104. data/dist/ice/cpp/include/Ice/Value.h +103 -115
  105. data/dist/ice/cpp/include/Ice/ValueF.h +6 -11
  106. data/dist/ice/cpp/include/IceDiscovery/IceDiscovery.h +16 -1877
  107. data/dist/ice/cpp/include/IceLocatorDiscovery/IceLocatorDiscovery.h +16 -1185
  108. data/dist/ice/cpp/include/generated/Ice/BuiltinSequences.h +46 -146
  109. data/dist/ice/cpp/include/generated/Ice/Context.h +40 -0
  110. data/dist/ice/cpp/include/generated/Ice/EndpointTypes.h +49 -93
  111. data/dist/ice/cpp/include/generated/Ice/Identity.h +70 -226
  112. data/dist/ice/cpp/include/generated/Ice/Locator.h +494 -3850
  113. data/dist/ice/cpp/include/generated/Ice/LocatorRegistry.h +443 -0
  114. data/dist/ice/cpp/include/generated/Ice/Metrics.h +937 -4603
  115. data/dist/ice/cpp/include/generated/Ice/OperationMode.h +73 -0
  116. data/dist/ice/cpp/include/generated/Ice/Process.h +197 -929
  117. data/dist/ice/cpp/include/generated/Ice/PropertiesAdmin.h +249 -1301
  118. data/dist/ice/cpp/include/generated/Ice/PropertyDict.h +39 -0
  119. data/dist/ice/cpp/include/generated/Ice/RemoteLogger.h +637 -2620
  120. data/dist/ice/cpp/include/generated/Ice/ReplyStatus.h +94 -0
  121. data/dist/ice/cpp/include/generated/Ice/Router.h +429 -1783
  122. data/dist/ice/cpp/include/generated/Ice/SliceChecksumDict.h +18 -65
  123. data/dist/ice/cpp/include/generated/Ice/Version.h +73 -318
  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 +28 -24
  127. data/dist/ice/cpp/src/Ice/AcceptorF.h +6 -14
  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 +17 -18
  132. data/dist/ice/cpp/src/Ice/ArgVector.h +19 -25
  133. data/dist/ice/cpp/src/Ice/Base64.cpp +66 -66
  134. data/dist/ice/cpp/src/Ice/Base64.h +14 -19
  135. data/dist/ice/cpp/src/Ice/BatchRequestQueue.cpp +70 -121
  136. data/dist/ice/cpp/src/Ice/BatchRequestQueue.h +37 -47
  137. data/dist/ice/cpp/src/Ice/Buffer.cpp +73 -41
  138. data/dist/ice/cpp/src/Ice/CheckIdentity.h +21 -0
  139. data/dist/ice/cpp/src/Ice/CollocatedRequestHandler.cpp +215 -249
  140. data/dist/ice/cpp/src/Ice/CollocatedRequestHandler.h +38 -60
  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 +63 -184
  145. data/dist/ice/cpp/src/Ice/ConnectRequestHandler.h +30 -51
  146. data/dist/ice/cpp/src/Ice/ConnectRequestHandlerF.h +4 -14
  147. data/dist/ice/cpp/src/Ice/Connection.cpp +44 -0
  148. data/dist/ice/cpp/src/Ice/ConnectionFactory.cpp +578 -792
  149. data/dist/ice/cpp/src/Ice/ConnectionFactory.h +200 -200
  150. data/dist/ice/cpp/src/Ice/ConnectionFactoryF.h +6 -19
  151. data/dist/ice/cpp/src/Ice/ConnectionI.cpp +1674 -1782
  152. data/dist/ice/cpp/src/Ice/ConnectionI.h +333 -293
  153. data/dist/ice/cpp/src/Ice/ConnectionOptions.h +22 -0
  154. data/dist/ice/cpp/src/Ice/Connector.h +25 -19
  155. data/dist/ice/cpp/src/Ice/ConnectorF.h +4 -11
  156. data/dist/ice/cpp/src/{IceUtil → Ice}/ConsoleUtil.cpp +32 -53
  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 +25 -35
  161. data/dist/ice/cpp/src/Ice/DefaultSliceLoader.cpp +39 -0
  162. data/dist/ice/cpp/src/Ice/DefaultsAndOverrides.cpp +41 -119
  163. data/dist/ice/cpp/src/Ice/DefaultsAndOverrides.h +27 -41
  164. data/dist/ice/cpp/src/Ice/DefaultsAndOverridesF.h +4 -11
  165. data/dist/ice/cpp/src/Ice/Demangle.cpp +26 -0
  166. data/dist/ice/cpp/src/Ice/DisableWarnings.h +31 -0
  167. data/dist/ice/cpp/src/Ice/DynamicLibrary.cpp +44 -112
  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 +35 -59
  171. data/dist/ice/cpp/src/Ice/EndpointFactory.h +82 -103
  172. data/dist/ice/cpp/src/Ice/EndpointFactoryF.h +4 -11
  173. data/dist/ice/cpp/src/Ice/EndpointFactoryManager.cpp +54 -87
  174. data/dist/ice/cpp/src/Ice/EndpointFactoryManager.h +28 -33
  175. data/dist/ice/cpp/src/Ice/EndpointFactoryManagerF.h +4 -11
  176. data/dist/ice/cpp/src/Ice/EndpointI.cpp +53 -23
  177. data/dist/ice/cpp/src/Ice/EndpointI.h +132 -200
  178. data/dist/ice/cpp/src/Ice/EndpointIF.h +11 -39
  179. data/dist/ice/cpp/src/Ice/EventHandler.cpp +3 -26
  180. data/dist/ice/cpp/src/Ice/EventHandler.h +46 -56
  181. data/dist/ice/cpp/src/Ice/EventHandlerF.h +4 -14
  182. data/dist/ice/cpp/src/Ice/Exception.cpp +3 -816
  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 +46 -32
  188. data/dist/ice/cpp/src/Ice/HttpParser.cpp +431 -431
  189. data/dist/ice/cpp/src/Ice/HttpParser.h +95 -100
  190. data/dist/ice/cpp/src/Ice/IPEndpointI.cpp +207 -324
  191. data/dist/ice/cpp/src/Ice/IPEndpointI.h +80 -126
  192. data/dist/ice/cpp/src/Ice/IPEndpointIF.h +6 -17
  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 +48 -542
  198. data/dist/ice/cpp/src/Ice/InputStream.cpp +848 -1385
  199. data/dist/ice/cpp/src/Ice/Instance.cpp +816 -827
  200. data/dist/ice/cpp/src/Ice/Instance.h +202 -212
  201. data/dist/ice/cpp/src/Ice/InstrumentationI.cpp +526 -661
  202. data/dist/ice/cpp/src/Ice/InstrumentationI.h +171 -192
  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 +291 -329
  206. data/dist/ice/cpp/src/Ice/LocatorInfo.h +144 -157
  207. data/dist/ice/cpp/src/Ice/LocatorInfoF.h +8 -17
  208. data/dist/ice/cpp/src/Ice/LoggerAdminI.cpp +561 -743
  209. data/dist/ice/cpp/src/Ice/LoggerAdminI.h +18 -28
  210. data/dist/ice/cpp/src/Ice/LoggerI.cpp +66 -91
  211. data/dist/ice/cpp/src/Ice/LoggerI.h +36 -41
  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 +14 -38
  215. data/dist/ice/cpp/src/Ice/MarshaledResult.cpp +20 -0
  216. data/dist/ice/cpp/src/Ice/MetricsAdminI.cpp +194 -280
  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 +595 -917
  222. data/dist/ice/cpp/src/Ice/Network.h +189 -213
  223. data/dist/ice/cpp/src/Ice/NetworkF.h +2 -10
  224. data/dist/ice/cpp/src/Ice/NetworkProxy.cpp +99 -104
  225. data/dist/ice/cpp/src/Ice/NetworkProxy.h +49 -54
  226. data/dist/ice/cpp/src/Ice/NetworkProxyF.h +4 -11
  227. data/dist/ice/cpp/src/Ice/OSLogLoggerI.cpp +16 -18
  228. data/dist/ice/cpp/src/Ice/OSLogLoggerI.h +22 -27
  229. data/dist/ice/cpp/src/Ice/Object.cpp +152 -338
  230. data/dist/ice/cpp/src/Ice/ObjectAdapterFactory.cpp +170 -113
  231. data/dist/ice/cpp/src/Ice/ObjectAdapterFactory.h +41 -41
  232. data/dist/ice/cpp/src/Ice/ObjectAdapterFactoryF.h +4 -15
  233. data/dist/ice/cpp/src/Ice/ObjectAdapterI.cpp +580 -727
  234. data/dist/ice/cpp/src/Ice/ObjectAdapterI.h +149 -145
  235. data/dist/ice/cpp/src/Ice/ObserverHelper.cpp +36 -17
  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 +147 -187
  239. data/dist/ice/cpp/src/Ice/OpaqueEndpointI.h +56 -64
  240. data/dist/ice/cpp/src/{IceUtil → Ice}/Options.cpp +187 -258
  241. data/dist/ice/cpp/src/Ice/Options.h +119 -0
  242. data/dist/ice/cpp/src/Ice/OutgoingAsync.cpp +516 -732
  243. data/dist/ice/cpp/src/Ice/OutgoingResponse.cpp +276 -0
  244. data/dist/ice/cpp/src/Ice/OutputStream.cpp +610 -543
  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 +118 -277
  248. data/dist/ice/cpp/src/Ice/PluginManagerI.h +41 -48
  249. data/dist/ice/cpp/src/Ice/Properties.cpp +931 -0
  250. data/dist/ice/cpp/src/Ice/PropertyNames.cpp +519 -1341
  251. data/dist/ice/cpp/src/Ice/PropertyNames.h +49 -64
  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 +129 -94
  255. data/dist/ice/cpp/src/Ice/Protocol.h +116 -0
  256. data/dist/ice/cpp/src/Ice/ProtocolInstance.cpp +117 -62
  257. data/dist/ice/cpp/src/Ice/ProtocolInstance.h +63 -82
  258. data/dist/ice/cpp/src/Ice/ProtocolInstanceF.h +4 -11
  259. data/dist/ice/cpp/src/Ice/ProtocolPluginFacade.cpp +10 -32
  260. data/dist/ice/cpp/src/Ice/ProtocolPluginFacade.h +25 -54
  261. data/dist/ice/cpp/src/Ice/Proxy.cpp +294 -1357
  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 +635 -1097
  268. data/dist/ice/cpp/src/Ice/Reference.h +314 -298
  269. data/dist/ice/cpp/src/Ice/ReferenceFactory.cpp +320 -378
  270. data/dist/ice/cpp/src/Ice/ReferenceFactory.h +48 -66
  271. data/dist/ice/cpp/src/Ice/ReferenceFactoryF.h +4 -9
  272. data/dist/ice/cpp/src/Ice/RequestHandler.cpp +15 -24
  273. data/dist/ice/cpp/src/Ice/RequestHandler.h +43 -68
  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 +51 -57
  278. data/dist/ice/cpp/src/Ice/RetryQueue.h +39 -46
  279. data/dist/ice/cpp/src/Ice/RetryQueueF.h +4 -9
  280. data/dist/ice/cpp/src/Ice/RouterInfo.cpp +97 -201
  281. data/dist/ice/cpp/src/Ice/RouterInfo.h +61 -118
  282. data/dist/ice/cpp/src/Ice/RouterInfoF.h +6 -14
  283. data/dist/ice/cpp/src/Ice/SHA1.cpp +86 -60
  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 +521 -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 +646 -0
  291. data/dist/ice/cpp/src/Ice/SSL/OpenSSLTransceiverI.h +80 -0
  292. data/dist/ice/cpp/src/{IceSSL → Ice/SSL}/RFC2253.cpp +85 -88
  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 +69 -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 +673 -0
  308. data/dist/ice/cpp/src/Ice/SSL/SSLUtil.h +118 -0
  309. data/dist/ice/cpp/src/Ice/SSL/SchannelEngine.cpp +1449 -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 +1088 -0
  313. data/dist/ice/cpp/src/Ice/SSL/SchannelTransceiverI.h +118 -0
  314. data/dist/ice/cpp/src/Ice/SSL/SecureTransportEngine.cpp +825 -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 +1048 -0
  320. data/dist/ice/cpp/src/Ice/SSL/SecureTransportUtil.h +40 -0
  321. data/dist/ice/cpp/src/Ice/SSL/TrustManager.cpp +233 -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 +341 -606
  326. data/dist/ice/cpp/src/Ice/Selector.h +167 -224
  327. data/dist/ice/cpp/src/Ice/ServantManager.cpp +195 -128
  328. data/dist/ice/cpp/src/Ice/ServantManager.h +52 -55
  329. data/dist/ice/cpp/src/Ice/ServantManagerF.h +14 -0
  330. data/dist/ice/cpp/src/Ice/Service.cpp +548 -641
  331. data/dist/ice/cpp/src/Ice/SharedContext.h +13 -26
  332. data/dist/ice/cpp/src/Ice/SliceLoader.cpp +53 -0
  333. data/dist/ice/cpp/src/Ice/SlicedData.cpp +17 -96
  334. data/dist/ice/cpp/src/Ice/StreamSocket.cpp +104 -151
  335. data/dist/ice/cpp/src/Ice/StreamSocket.h +48 -60
  336. data/dist/ice/cpp/src/Ice/StringConverter.cpp +586 -0
  337. data/dist/ice/cpp/src/Ice/StringUtil.cpp +1137 -0
  338. data/dist/ice/cpp/src/Ice/SysLoggerI.cpp +41 -47
  339. data/dist/ice/cpp/src/Ice/SysLoggerI.h +24 -27
  340. data/dist/ice/cpp/src/Ice/SystemdJournalI.cpp +16 -17
  341. data/dist/ice/cpp/src/Ice/SystemdJournalI.h +19 -25
  342. data/dist/ice/cpp/src/Ice/TargetCompare.h +96 -0
  343. data/dist/ice/cpp/src/Ice/TcpAcceptor.cpp +67 -88
  344. data/dist/ice/cpp/src/Ice/TcpAcceptor.h +34 -40
  345. data/dist/ice/cpp/src/Ice/TcpConnector.cpp +42 -41
  346. data/dist/ice/cpp/src/Ice/TcpConnector.h +26 -35
  347. data/dist/ice/cpp/src/Ice/TcpEndpointI.cpp +172 -146
  348. data/dist/ice/cpp/src/Ice/TcpEndpointI.h +76 -80
  349. data/dist/ice/cpp/src/Ice/TcpTransceiver.cpp +38 -26
  350. data/dist/ice/cpp/src/Ice/TcpTransceiver.h +40 -45
  351. data/dist/ice/cpp/src/Ice/ThreadPool.cpp +333 -515
  352. data/dist/ice/cpp/src/Ice/ThreadPool.h +202 -290
  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 +73 -167
  357. data/dist/ice/cpp/src/Ice/Timer.h +212 -0
  358. data/dist/ice/cpp/src/Ice/TraceLevels.cpp +11 -29
  359. data/dist/ice/cpp/src/Ice/TraceLevels.h +22 -28
  360. data/dist/ice/cpp/src/Ice/TraceLevelsF.h +4 -11
  361. data/dist/ice/cpp/src/Ice/TraceUtil.cpp +136 -215
  362. data/dist/ice/cpp/src/Ice/TraceUtil.h +27 -16
  363. data/dist/ice/cpp/src/Ice/Transceiver.cpp +3 -7
  364. data/dist/ice/cpp/src/Ice/Transceiver.h +35 -32
  365. data/dist/ice/cpp/src/Ice/TransceiverF.h +10 -20
  366. data/dist/ice/cpp/src/Ice/UUID.cpp +79 -0
  367. data/dist/ice/cpp/src/Ice/UdpConnector.cpp +39 -39
  368. data/dist/ice/cpp/src/Ice/UdpConnector.h +27 -36
  369. data/dist/ice/cpp/src/Ice/UdpEndpointI.cpp +178 -213
  370. data/dist/ice/cpp/src/Ice/UdpEndpointI.h +82 -85
  371. data/dist/ice/cpp/src/Ice/UdpTransceiver.cpp +201 -221
  372. data/dist/ice/cpp/src/Ice/UdpTransceiver.h +68 -74
  373. data/dist/ice/cpp/{include/IceUtil → src/Ice}/UndefSysMacros.h +12 -12
  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 +107 -38
  377. data/dist/ice/cpp/src/Ice/WSAcceptor.cpp +10 -15
  378. data/dist/ice/cpp/src/Ice/WSAcceptor.h +31 -37
  379. data/dist/ice/cpp/src/Ice/WSConnector.cpp +25 -40
  380. data/dist/ice/cpp/src/Ice/WSConnector.h +26 -33
  381. data/dist/ice/cpp/src/Ice/WSEndpoint.cpp +164 -217
  382. data/dist/ice/cpp/src/Ice/WSEndpoint.h +72 -83
  383. data/dist/ice/cpp/src/Ice/WSTransceiver.cpp +469 -458
  384. data/dist/ice/cpp/src/Ice/WSTransceiver.h +117 -123
  385. data/dist/ice/cpp/src/Ice/generated/BuiltinSequences.cpp +20 -29
  386. data/dist/ice/cpp/src/Ice/generated/Context.cpp +40 -0
  387. data/dist/ice/cpp/src/Ice/generated/EndpointTypes.cpp +20 -31
  388. data/dist/ice/cpp/src/Ice/generated/Identity.cpp +24 -34
  389. data/dist/ice/cpp/src/Ice/generated/Locator.cpp +454 -1744
  390. data/dist/ice/cpp/src/Ice/generated/LocatorRegistry.cpp +577 -0
  391. data/dist/ice/cpp/src/Ice/generated/Metrics.cpp +824 -1971
  392. data/dist/ice/cpp/src/Ice/generated/OperationMode.cpp +56 -0
  393. data/dist/ice/cpp/src/Ice/generated/Process.cpp +190 -331
  394. data/dist/ice/cpp/src/Ice/generated/PropertiesAdmin.cpp +289 -449
  395. data/dist/ice/cpp/src/Ice/generated/PropertyDict.cpp +40 -0
  396. data/dist/ice/cpp/src/Ice/generated/RemoteLogger.cpp +547 -867
  397. data/dist/ice/cpp/src/Ice/generated/ReplyStatus.cpp +70 -0
  398. data/dist/ice/cpp/src/Ice/generated/Router.cpp +406 -723
  399. data/dist/ice/cpp/src/Ice/generated/SliceChecksumDict.cpp +19 -29
  400. data/dist/ice/cpp/src/Ice/generated/Version.cpp +28 -31
  401. data/dist/ice/cpp/src/IceDiscovery/LocatorI.cpp +76 -139
  402. data/dist/ice/cpp/src/IceDiscovery/LocatorI.h +55 -96
  403. data/dist/ice/cpp/src/IceDiscovery/LookupI.cpp +190 -303
  404. data/dist/ice/cpp/src/IceDiscovery/LookupI.h +126 -185
  405. data/dist/ice/cpp/src/IceDiscovery/PluginI.cpp +56 -77
  406. data/dist/ice/cpp/src/IceDiscovery/PluginI.h +20 -25
  407. data/dist/ice/cpp/src/IceDiscovery/generated/Lookup.cpp +638 -0
  408. data/dist/ice/cpp/src/IceLocatorDiscovery/Plugin.h +14 -37
  409. data/dist/ice/cpp/src/IceLocatorDiscovery/PluginI.cpp +411 -649
  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 +25 -75
  416. data/dist/ice/cpp/src/Slice/FileTracker.h +35 -56
  417. data/dist/ice/cpp/src/Slice/Grammar.cpp +2711 -3382
  418. data/dist/ice/cpp/src/Slice/Grammar.h +95 -75
  419. data/dist/ice/cpp/src/Slice/GrammarUtil.h +117 -217
  420. data/dist/ice/cpp/src/Slice/MetadataValidation.cpp +486 -0
  421. data/dist/ice/cpp/src/Slice/MetadataValidation.h +106 -0
  422. data/dist/ice/cpp/src/Slice/Parser.cpp +3068 -5223
  423. data/dist/ice/cpp/src/Slice/Parser.h +1086 -1065
  424. data/dist/ice/cpp/src/Slice/Preprocessor.cpp +97 -599
  425. data/dist/ice/cpp/src/Slice/Preprocessor.h +26 -42
  426. data/dist/ice/cpp/src/Slice/Scanner.cpp +1562 -924
  427. data/dist/ice/cpp/src/Slice/SliceUtil.cpp +517 -113
  428. data/dist/ice/cpp/src/Slice/StringLiteralUtil.cpp +254 -269
  429. data/dist/ice/cpp/src/Slice/Util.h +126 -35
  430. data/dist/ice/cpp/src/slice2rb/Main.cpp +13 -15
  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/slice/Glacier2/Metrics.ice +34 -75
  435. data/dist/ice/slice/Glacier2/PermissionsVerifier.ice +42 -98
  436. data/dist/ice/slice/Glacier2/Router.ice +80 -173
  437. data/dist/ice/slice/Glacier2/SSLInfo.ice +23 -40
  438. data/dist/ice/slice/Glacier2/Session.ice +120 -261
  439. data/dist/ice/slice/Ice/BuiltinSequences.ice +33 -38
  440. data/dist/ice/slice/Ice/Context.ice +24 -0
  441. data/dist/ice/slice/Ice/EndpointTypes.ice +35 -33
  442. data/dist/ice/slice/Ice/Identity.ice +24 -63
  443. data/dist/ice/slice/Ice/Locator.ice +61 -226
  444. data/dist/ice/slice/Ice/LocatorRegistry.ice +77 -0
  445. data/dist/ice/slice/Ice/Metrics.ice +189 -424
  446. data/dist/ice/slice/Ice/OperationMode.ice +38 -0
  447. data/dist/ice/slice/Ice/Process.ice +16 -52
  448. data/dist/ice/slice/Ice/PropertiesAdmin.ice +25 -75
  449. data/dist/ice/slice/Ice/PropertyDict.ice +23 -0
  450. data/dist/ice/slice/Ice/RemoteLogger.ice +113 -213
  451. data/dist/ice/slice/Ice/ReplyStatus.ice +65 -0
  452. data/dist/ice/slice/Ice/Router.ice +42 -91
  453. data/dist/ice/slice/Ice/SliceChecksumDict.ice +7 -25
  454. data/dist/ice/slice/Ice/Version.ice +31 -39
  455. data/dist/ice/slice/IceBox/ServiceManager.ice +79 -0
  456. data/dist/ice/slice/IceGrid/Admin.ice +942 -1918
  457. data/dist/ice/slice/IceGrid/Descriptor.ice +476 -1051
  458. data/dist/ice/slice/IceGrid/Exception.ice +86 -384
  459. data/dist/ice/slice/IceGrid/FileParser.ice +23 -59
  460. data/dist/ice/slice/IceGrid/Registry.ice +117 -256
  461. data/dist/ice/slice/IceGrid/Session.ice +46 -110
  462. data/dist/ice/slice/IceGrid/UserAccountMapper.ice +22 -57
  463. data/dist/ice/slice/IceStorm/IceStorm.ice +173 -401
  464. data/dist/ice/slice/IceStorm/Metrics.ice +28 -70
  465. data/dist/lib/Glacier2/Metrics.rb +16 -31
  466. data/dist/lib/Glacier2/PermissionsVerifier.rb +18 -50
  467. data/dist/lib/Glacier2/Router.rb +20 -42
  468. data/dist/lib/Glacier2/SSLInfo.rb +14 -22
  469. data/dist/lib/Glacier2/Session.rb +53 -113
  470. data/dist/lib/Glacier2.rb +6 -6
  471. data/dist/lib/Ice/BuiltinSequences.rb +14 -26
  472. data/dist/lib/Ice/CompressBatch.rb +50 -0
  473. data/dist/lib/Ice/Context.rb +12 -0
  474. data/dist/lib/Ice/EndpointSelectionType.rb +49 -0
  475. data/dist/lib/Ice/EndpointTypes.rb +14 -55
  476. data/dist/lib/Ice/Exception.rb +20 -0
  477. data/dist/lib/Ice/Identity.rb +10 -26
  478. data/dist/lib/Ice/IdentitySpaceship.rb +16 -0
  479. data/dist/lib/Ice/InitializationData.rb +12 -0
  480. data/dist/lib/Ice/LocalExceptions.rb +168 -0
  481. data/dist/lib/Ice/Locator.rb +21 -134
  482. data/dist/lib/Ice/LocatorRegistry.rb +73 -0
  483. data/dist/lib/Ice/Metrics.rb +85 -132
  484. data/dist/lib/Ice/OperationMode.rb +58 -0
  485. data/dist/lib/Ice/Process.rb +12 -31
  486. data/dist/lib/Ice/PropertiesAdmin.rb +12 -36
  487. data/dist/lib/Ice/PropertyDict.rb +12 -0
  488. data/dist/lib/Ice/Proxy.rb +85 -0
  489. data/dist/lib/Ice/ProxyFunctions.rb +69 -0
  490. data/dist/lib/Ice/RemoteLogger.rb +29 -60
  491. data/dist/lib/Ice/ReplyStatus.rb +65 -0
  492. data/dist/lib/Ice/Router.rb +19 -47
  493. data/dist/lib/Ice/SliceChecksumDict.rb +5 -17
  494. data/dist/lib/Ice/SliceUtil.rb +41 -0
  495. data/dist/lib/Ice/Struct.rb +11 -0
  496. data/dist/lib/Ice/ToStringMode.rb +50 -0
  497. data/dist/lib/Ice/Value.rb +93 -0
  498. data/dist/lib/Ice/Version.rb +12 -24
  499. data/dist/lib/Ice.rb +29 -665
  500. data/dist/lib/IceBox/ServiceManager.rb +104 -0
  501. data/dist/lib/IceBox.rb +2 -4
  502. data/dist/lib/IceGrid/Admin.rb +303 -291
  503. data/dist/lib/IceGrid/Descriptor.rb +147 -192
  504. data/dist/lib/IceGrid/Exception.rb +26 -257
  505. data/dist/lib/IceGrid/FileParser.rb +12 -36
  506. data/dist/lib/IceGrid/Registry.rb +35 -76
  507. data/dist/lib/IceGrid/Session.rb +19 -34
  508. data/dist/lib/IceGrid/UserAccountMapper.rb +11 -34
  509. data/dist/lib/IceGrid.rb +3 -3
  510. data/dist/lib/IceStorm/IceStorm.rb +51 -132
  511. data/dist/lib/IceStorm/Metrics.rb +19 -37
  512. data/dist/lib/IceStorm.rb +3 -5
  513. data/extconf.rb +6 -8
  514. data/ice.gemspec +3 -3
  515. data/scripts/slice2rb +1 -3
  516. metadata +206 -386
  517. data/dist/IceRuby/ValueFactoryManager.cpp +0 -445
  518. data/dist/IceRuby/ValueFactoryManager.h +0 -95
  519. data/dist/ice/cpp/include/Ice/Application.h +0 -326
  520. data/dist/ice/cpp/include/Ice/AsyncResult.h +0 -155
  521. data/dist/ice/cpp/include/Ice/AsyncResultF.h +0 -23
  522. data/dist/ice/cpp/include/Ice/BatchRequestInterceptor.h +0 -75
  523. data/dist/ice/cpp/include/Ice/CommunicatorAsync.h +0 -154
  524. data/dist/ice/cpp/include/Ice/Comparable.h +0 -205
  525. data/dist/ice/cpp/include/Ice/ConnectionAsync.h +0 -302
  526. data/dist/ice/cpp/include/Ice/ConsoleUtil.h +0 -23
  527. data/dist/ice/cpp/include/Ice/DefaultValueFactory.h +0 -57
  528. data/dist/ice/cpp/include/Ice/DispatchInterceptor.h +0 -41
  529. data/dist/ice/cpp/include/Ice/Dispatcher.h +0 -67
  530. data/dist/ice/cpp/include/Ice/DynamicLibrary.h +0 -102
  531. data/dist/ice/cpp/include/Ice/DynamicLibraryF.h +0 -24
  532. data/dist/ice/cpp/include/Ice/ExceptionHelpers.h +0 -74
  533. data/dist/ice/cpp/include/Ice/FactoryTable.h +0 -73
  534. data/dist/ice/cpp/include/Ice/FactoryTableInit.h +0 -84
  535. data/dist/ice/cpp/include/Ice/Functional.h +0 -140
  536. data/dist/ice/cpp/include/Ice/GCObject.h +0 -76
  537. data/dist/ice/cpp/include/Ice/Handle.h +0 -182
  538. data/dist/ice/cpp/include/Ice/Incoming.h +0 -225
  539. data/dist/ice/cpp/include/Ice/IncomingAsync.h +0 -186
  540. data/dist/ice/cpp/include/Ice/IncomingAsyncF.h +0 -36
  541. data/dist/ice/cpp/include/Ice/InterfaceByValue.h +0 -57
  542. data/dist/ice/cpp/include/Ice/LocalObject.h +0 -35
  543. data/dist/ice/cpp/include/Ice/LocalObjectF.h +0 -21
  544. data/dist/ice/cpp/include/Ice/MetricsAdminI.h +0 -715
  545. data/dist/ice/cpp/include/Ice/MetricsFunctional.h +0 -159
  546. data/dist/ice/cpp/include/Ice/MetricsObserverI.h +0 -669
  547. data/dist/ice/cpp/include/Ice/Optional.h +0 -1114
  548. data/dist/ice/cpp/include/Ice/OutgoingAsyncF.h +0 -39
  549. data/dist/ice/cpp/include/Ice/Protocol.h +0 -274
  550. data/dist/ice/cpp/include/Ice/ProxyFactoryF.h +0 -21
  551. data/dist/ice/cpp/include/Ice/ProxyHandle.h +0 -318
  552. data/dist/ice/cpp/include/Ice/RegisterPlugins.h +0 -127
  553. data/dist/ice/cpp/include/Ice/ResponseHandlerF.h +0 -25
  554. data/dist/ice/cpp/include/Ice/SHA1.h +0 -40
  555. data/dist/ice/cpp/include/Ice/ServantManagerF.h +0 -21
  556. data/dist/ice/cpp/include/Ice/SliceChecksums.h +0 -33
  557. data/dist/ice/cpp/include/Ice/ThreadPoolF.h +0 -23
  558. data/dist/ice/cpp/include/Ice/UniquePtr.h +0 -95
  559. data/dist/ice/cpp/include/Ice/UniqueRef.h +0 -97
  560. data/dist/ice/cpp/include/IceSSL/Config.h +0 -21
  561. data/dist/ice/cpp/include/IceSSL/IceSSL.h +0 -24
  562. data/dist/ice/cpp/include/IceSSL/OpenSSL.h +0 -147
  563. data/dist/ice/cpp/include/IceSSL/Plugin.h +0 -712
  564. data/dist/ice/cpp/include/IceSSL/SChannel.h +0 -72
  565. data/dist/ice/cpp/include/IceSSL/SecureTransport.h +0 -72
  566. data/dist/ice/cpp/include/IceUtil/Atomic.h +0 -179
  567. data/dist/ice/cpp/include/IceUtil/Cond.h +0 -317
  568. data/dist/ice/cpp/include/IceUtil/Config.h +0 -392
  569. data/dist/ice/cpp/include/IceUtil/ConsoleUtil.h +0 -92
  570. data/dist/ice/cpp/include/IceUtil/CountDownLatch.h +0 -45
  571. data/dist/ice/cpp/include/IceUtil/CtrlCHandler.h +0 -96
  572. data/dist/ice/cpp/include/IceUtil/DisableWarnings.h +0 -44
  573. data/dist/ice/cpp/include/IceUtil/Exception.h +0 -394
  574. data/dist/ice/cpp/include/IceUtil/FileUtil.h +0 -140
  575. data/dist/ice/cpp/include/IceUtil/Functional.h +0 -389
  576. data/dist/ice/cpp/include/IceUtil/Handle.h +0 -261
  577. data/dist/ice/cpp/include/IceUtil/IceUtil.h +0 -40
  578. data/dist/ice/cpp/include/IceUtil/InputUtil.h +0 -42
  579. data/dist/ice/cpp/include/IceUtil/Iterator.h +0 -31
  580. data/dist/ice/cpp/include/IceUtil/Lock.h +0 -128
  581. data/dist/ice/cpp/include/IceUtil/Monitor.h +0 -243
  582. data/dist/ice/cpp/include/IceUtil/Mutex.h +0 -349
  583. data/dist/ice/cpp/include/IceUtil/MutexProtocol.h +0 -23
  584. data/dist/ice/cpp/include/IceUtil/MutexPtrLock.h +0 -78
  585. data/dist/ice/cpp/include/IceUtil/MutexPtrTryLock.h +0 -77
  586. data/dist/ice/cpp/include/IceUtil/Optional.h +0 -433
  587. data/dist/ice/cpp/include/IceUtil/Options.h +0 -135
  588. data/dist/ice/cpp/include/IceUtil/OutputUtil.h +0 -383
  589. data/dist/ice/cpp/include/IceUtil/PushDisableWarnings.h +0 -33
  590. data/dist/ice/cpp/include/IceUtil/Random.h +0 -55
  591. data/dist/ice/cpp/include/IceUtil/RecMutex.h +0 -107
  592. data/dist/ice/cpp/include/IceUtil/ResourceConfig.h +0 -37
  593. data/dist/ice/cpp/include/IceUtil/ScannerConfig.h +0 -40
  594. data/dist/ice/cpp/include/IceUtil/ScopedArray.h +0 -98
  595. data/dist/ice/cpp/include/IceUtil/Shared.h +0 -127
  596. data/dist/ice/cpp/include/IceUtil/StopWatch.h +0 -49
  597. data/dist/ice/cpp/include/IceUtil/StringConverter.h +0 -195
  598. data/dist/ice/cpp/include/IceUtil/StringUtil.h +0 -97
  599. data/dist/ice/cpp/include/IceUtil/Thread.h +0 -160
  600. data/dist/ice/cpp/include/IceUtil/ThreadException.h +0 -94
  601. data/dist/ice/cpp/include/IceUtil/Time.h +0 -205
  602. data/dist/ice/cpp/include/IceUtil/Timer.h +0 -153
  603. data/dist/ice/cpp/include/IceUtil/UUID.h +0 -21
  604. data/dist/ice/cpp/include/generated/Glacier2/Metrics.h +0 -475
  605. data/dist/ice/cpp/include/generated/Glacier2/PermissionsVerifier.h +0 -1430
  606. data/dist/ice/cpp/include/generated/Glacier2/PermissionsVerifierF.h +0 -147
  607. data/dist/ice/cpp/include/generated/Glacier2/Router.h +0 -3260
  608. data/dist/ice/cpp/include/generated/Glacier2/RouterF.h +0 -125
  609. data/dist/ice/cpp/include/generated/Glacier2/SSLInfo.h +0 -223
  610. data/dist/ice/cpp/include/generated/Glacier2/Session.h +0 -5894
  611. data/dist/ice/cpp/include/generated/Ice/Communicator.h +0 -1162
  612. data/dist/ice/cpp/include/generated/Ice/CommunicatorF.h +0 -101
  613. data/dist/ice/cpp/include/generated/Ice/Connection.h +0 -1703
  614. data/dist/ice/cpp/include/generated/Ice/ConnectionF.h +0 -119
  615. data/dist/ice/cpp/include/generated/Ice/Current.h +0 -322
  616. data/dist/ice/cpp/include/generated/Ice/Endpoint.h +0 -979
  617. data/dist/ice/cpp/include/generated/Ice/EndpointF.h +0 -166
  618. data/dist/ice/cpp/include/generated/Ice/FacetMap.h +0 -80
  619. data/dist/ice/cpp/include/generated/Ice/ImplicitContext.h +0 -284
  620. data/dist/ice/cpp/include/generated/Ice/ImplicitContextF.h +0 -101
  621. data/dist/ice/cpp/include/generated/Ice/Instrumentation.h +0 -1203
  622. data/dist/ice/cpp/include/generated/Ice/InstrumentationF.h +0 -128
  623. data/dist/ice/cpp/include/generated/Ice/LocalException.h +0 -7437
  624. data/dist/ice/cpp/include/generated/Ice/LocatorF.h +0 -147
  625. data/dist/ice/cpp/include/generated/Ice/Logger.h +0 -237
  626. data/dist/ice/cpp/include/generated/Ice/LoggerF.h +0 -101
  627. data/dist/ice/cpp/include/generated/Ice/ObjectAdapter.h +0 -1181
  628. data/dist/ice/cpp/include/generated/Ice/ObjectAdapterF.h +0 -101
  629. data/dist/ice/cpp/include/generated/Ice/ObjectFactory.h +0 -203
  630. data/dist/ice/cpp/include/generated/Ice/Plugin.h +0 -318
  631. data/dist/ice/cpp/include/generated/Ice/PluginF.h +0 -110
  632. data/dist/ice/cpp/include/generated/Ice/ProcessF.h +0 -125
  633. data/dist/ice/cpp/include/generated/Ice/Properties.h +0 -452
  634. data/dist/ice/cpp/include/generated/Ice/PropertiesF.h +0 -134
  635. data/dist/ice/cpp/include/generated/Ice/RouterF.h +0 -125
  636. data/dist/ice/cpp/include/generated/Ice/ServantLocator.h +0 -305
  637. data/dist/ice/cpp/include/generated/Ice/ServantLocatorF.h +0 -101
  638. data/dist/ice/cpp/include/generated/Ice/ValueFactory.h +0 -330
  639. data/dist/ice/cpp/include/generated/IceBox/IceBox.h +0 -3269
  640. data/dist/ice/cpp/include/generated/IceGrid/Admin.h +0 -33773
  641. data/dist/ice/cpp/include/generated/IceGrid/Descriptor.h +0 -5254
  642. data/dist/ice/cpp/include/generated/IceGrid/Exception.h +0 -2834
  643. data/dist/ice/cpp/include/generated/IceGrid/FileParser.h +0 -824
  644. data/dist/ice/cpp/include/generated/IceGrid/PluginFacade.h +0 -635
  645. data/dist/ice/cpp/include/generated/IceGrid/Registry.h +0 -5089
  646. data/dist/ice/cpp/include/generated/IceGrid/Session.h +0 -2240
  647. data/dist/ice/cpp/include/generated/IceGrid/UserAccountMapper.h +0 -800
  648. data/dist/ice/cpp/include/generated/IcePatch2/FileInfo.h +0 -325
  649. data/dist/ice/cpp/include/generated/IcePatch2/FileServer.h +0 -2891
  650. data/dist/ice/cpp/include/generated/IceSSL/ConnectionInfo.h +0 -228
  651. data/dist/ice/cpp/include/generated/IceSSL/ConnectionInfoF.h +0 -101
  652. data/dist/ice/cpp/include/generated/IceSSL/EndpointInfo.h +0 -186
  653. data/dist/ice/cpp/include/generated/IceStorm/IceStorm.h +0 -6627
  654. data/dist/ice/cpp/include/generated/IceStorm/Metrics.h +0 -665
  655. data/dist/ice/cpp/src/Ice/ACM.cpp +0 -380
  656. data/dist/ice/cpp/src/Ice/ACM.h +0 -119
  657. data/dist/ice/cpp/src/Ice/ACMF.h +0 -30
  658. data/dist/ice/cpp/src/Ice/Acceptor.cpp +0 -16
  659. data/dist/ice/cpp/src/Ice/Application.cpp +0 -661
  660. data/dist/ice/cpp/src/Ice/AsyncResult.cpp +0 -70
  661. data/dist/ice/cpp/src/Ice/CommunicatorI.cpp +0 -586
  662. data/dist/ice/cpp/src/Ice/CommunicatorI.h +0 -167
  663. data/dist/ice/cpp/src/Ice/Cond.cpp +0 -381
  664. data/dist/ice/cpp/src/Ice/ConnectionRequestHandler.cpp +0 -73
  665. data/dist/ice/cpp/src/Ice/ConnectionRequestHandler.h +0 -41
  666. data/dist/ice/cpp/src/Ice/Connector.cpp +0 -16
  667. data/dist/ice/cpp/src/Ice/CountDownLatch.cpp +0 -171
  668. data/dist/ice/cpp/src/Ice/DispatchInterceptor.cpp +0 -37
  669. data/dist/ice/cpp/src/Ice/FactoryTable.cpp +0 -162
  670. data/dist/ice/cpp/src/Ice/FactoryTableInit.cpp +0 -88
  671. data/dist/ice/cpp/src/Ice/GCObject.cpp +0 -442
  672. data/dist/ice/cpp/src/Ice/IconvStringConverter.cpp +0 -51
  673. data/dist/ice/cpp/src/Ice/ImplicitContextI.cpp +0 -655
  674. data/dist/ice/cpp/src/Ice/ImplicitContextI.h +0 -48
  675. data/dist/ice/cpp/src/Ice/Incoming.cpp +0 -795
  676. data/dist/ice/cpp/src/Ice/IncomingAsync.cpp +0 -230
  677. data/dist/ice/cpp/src/Ice/IncomingRequest.h +0 -33
  678. data/dist/ice/cpp/src/Ice/LocalObject.cpp +0 -23
  679. data/dist/ice/cpp/src/Ice/MetricsObserverI.cpp +0 -8
  680. data/dist/ice/cpp/src/Ice/PropertiesAdminI.cpp +0 -265
  681. data/dist/ice/cpp/src/Ice/PropertiesAdminI.h +0 -64
  682. data/dist/ice/cpp/src/Ice/PropertiesI.cpp +0 -739
  683. data/dist/ice/cpp/src/Ice/PropertiesI.h +0 -70
  684. data/dist/ice/cpp/src/Ice/ProtocolPluginFacadeF.h +0 -21
  685. data/dist/ice/cpp/src/Ice/ProxyFactory.cpp +0 -300
  686. data/dist/ice/cpp/src/Ice/ProxyFactory.h +0 -57
  687. data/dist/ice/cpp/src/Ice/RegisterPluginsInit.cpp +0 -38
  688. data/dist/ice/cpp/src/Ice/RegisterPluginsInit.h +0 -20
  689. data/dist/ice/cpp/src/Ice/ReplyStatus.h +0 -24
  690. data/dist/ice/cpp/src/Ice/RequestHandlerFactory.cpp +0 -77
  691. data/dist/ice/cpp/src/Ice/RequestHandlerFactory.h +0 -37
  692. data/dist/ice/cpp/src/Ice/ResponseHandler.cpp +0 -12
  693. data/dist/ice/cpp/src/Ice/ResponseHandler.h +0 -43
  694. data/dist/ice/cpp/src/Ice/SliceChecksums.cpp +0 -75
  695. data/dist/ice/cpp/src/Ice/StringConverterPlugin.cpp +0 -192
  696. data/dist/ice/cpp/src/Ice/StringUtil.h +0 -30
  697. data/dist/ice/cpp/src/Ice/Thread.cpp +0 -569
  698. data/dist/ice/cpp/src/Ice/ValueFactoryManagerI.cpp +0 -61
  699. data/dist/ice/cpp/src/Ice/ValueFactoryManagerI.h +0 -37
  700. data/dist/ice/cpp/src/Ice/VirtualShared.h +0 -38
  701. data/dist/ice/cpp/src/Ice/generated/Communicator.cpp +0 -79
  702. data/dist/ice/cpp/src/Ice/generated/CommunicatorF.cpp +0 -61
  703. data/dist/ice/cpp/src/Ice/generated/Connection.cpp +0 -155
  704. data/dist/ice/cpp/src/Ice/generated/ConnectionF.cpp +0 -61
  705. data/dist/ice/cpp/src/Ice/generated/Current.cpp +0 -62
  706. data/dist/ice/cpp/src/Ice/generated/Endpoint.cpp +0 -147
  707. data/dist/ice/cpp/src/Ice/generated/EndpointF.cpp +0 -61
  708. data/dist/ice/cpp/src/Ice/generated/FacetMap.cpp +0 -49
  709. data/dist/ice/cpp/src/Ice/generated/ImplicitContext.cpp +0 -75
  710. data/dist/ice/cpp/src/Ice/generated/ImplicitContextF.cpp +0 -61
  711. data/dist/ice/cpp/src/Ice/generated/Instrumentation.cpp +0 -188
  712. data/dist/ice/cpp/src/Ice/generated/InstrumentationF.cpp +0 -66
  713. data/dist/ice/cpp/src/Ice/generated/LocalException.cpp +0 -3262
  714. data/dist/ice/cpp/src/Ice/generated/LocatorF.cpp +0 -63
  715. data/dist/ice/cpp/src/Ice/generated/Logger.cpp +0 -73
  716. data/dist/ice/cpp/src/Ice/generated/LoggerF.cpp +0 -61
  717. data/dist/ice/cpp/src/Ice/generated/ObjectAdapter.cpp +0 -79
  718. data/dist/ice/cpp/src/Ice/generated/ObjectAdapterF.cpp +0 -61
  719. data/dist/ice/cpp/src/Ice/generated/ObjectFactory.cpp +0 -75
  720. data/dist/ice/cpp/src/Ice/generated/Plugin.cpp +0 -87
  721. data/dist/ice/cpp/src/Ice/generated/PluginF.cpp +0 -61
  722. data/dist/ice/cpp/src/Ice/generated/ProcessF.cpp +0 -63
  723. data/dist/ice/cpp/src/Ice/generated/Properties.cpp +0 -78
  724. data/dist/ice/cpp/src/Ice/generated/PropertiesF.cpp +0 -63
  725. data/dist/ice/cpp/src/Ice/generated/RouterF.cpp +0 -63
  726. data/dist/ice/cpp/src/Ice/generated/ServantLocator.cpp +0 -75
  727. data/dist/ice/cpp/src/Ice/generated/ServantLocatorF.cpp +0 -61
  728. data/dist/ice/cpp/src/Ice/generated/ValueFactory.cpp +0 -83
  729. data/dist/ice/cpp/src/Ice/ios/StreamAcceptor.cpp +0 -154
  730. data/dist/ice/cpp/src/Ice/ios/StreamAcceptor.h +0 -49
  731. data/dist/ice/cpp/src/Ice/ios/StreamConnector.cpp +0 -146
  732. data/dist/ice/cpp/src/Ice/ios/StreamConnector.h +0 -52
  733. data/dist/ice/cpp/src/Ice/ios/StreamEndpointI.cpp +0 -477
  734. data/dist/ice/cpp/src/Ice/ios/StreamEndpointI.h +0 -156
  735. data/dist/ice/cpp/src/Ice/ios/StreamTransceiver.cpp +0 -570
  736. data/dist/ice/cpp/src/Ice/ios/StreamTransceiver.h +0 -93
  737. data/dist/ice/cpp/src/IceDiscovery/generated/IceDiscovery/IceDiscovery.h +0 -1889
  738. data/dist/ice/cpp/src/IceDiscovery/generated/IceDiscovery.cpp +0 -915
  739. data/dist/ice/cpp/src/IceLocatorDiscovery/generated/IceLocatorDiscovery/IceLocatorDiscovery.h +0 -1197
  740. data/dist/ice/cpp/src/IceLocatorDiscovery/generated/IceLocatorDiscovery.cpp +0 -730
  741. data/dist/ice/cpp/src/IceSSL/AcceptorI.cpp +0 -105
  742. data/dist/ice/cpp/src/IceSSL/AcceptorI.h +0 -52
  743. data/dist/ice/cpp/src/IceSSL/CertificateI.cpp +0 -301
  744. data/dist/ice/cpp/src/IceSSL/CertificateI.h +0 -64
  745. data/dist/ice/cpp/src/IceSSL/ConnectorI.cpp +0 -102
  746. data/dist/ice/cpp/src/IceSSL/ConnectorI.h +0 -44
  747. data/dist/ice/cpp/src/IceSSL/EndpointI.cpp +0 -372
  748. data/dist/ice/cpp/src/IceSSL/EndpointI.h +0 -100
  749. data/dist/ice/cpp/src/IceSSL/Instance.cpp +0 -28
  750. data/dist/ice/cpp/src/IceSSL/Instance.h +0 -37
  751. data/dist/ice/cpp/src/IceSSL/InstanceF.h +0 -33
  752. data/dist/ice/cpp/src/IceSSL/OpenSSLCertificateI.cpp +0 -688
  753. data/dist/ice/cpp/src/IceSSL/OpenSSLEngine.cpp +0 -1147
  754. data/dist/ice/cpp/src/IceSSL/OpenSSLEngine.h +0 -59
  755. data/dist/ice/cpp/src/IceSSL/OpenSSLEngineF.h +0 -27
  756. data/dist/ice/cpp/src/IceSSL/OpenSSLPluginI.cpp +0 -127
  757. data/dist/ice/cpp/src/IceSSL/OpenSSLTransceiverI.cpp +0 -1092
  758. data/dist/ice/cpp/src/IceSSL/OpenSSLTransceiverI.h +0 -90
  759. data/dist/ice/cpp/src/IceSSL/OpenSSLUtil.cpp +0 -288
  760. data/dist/ice/cpp/src/IceSSL/OpenSSLUtil.h +0 -58
  761. data/dist/ice/cpp/src/IceSSL/PluginI.cpp +0 -246
  762. data/dist/ice/cpp/src/IceSSL/PluginI.h +0 -67
  763. data/dist/ice/cpp/src/IceSSL/RFC2253.h +0 -62
  764. data/dist/ice/cpp/src/IceSSL/SChannelCertificateI.cpp +0 -721
  765. data/dist/ice/cpp/src/IceSSL/SChannelEngine.cpp +0 -1283
  766. data/dist/ice/cpp/src/IceSSL/SChannelEngine.h +0 -123
  767. data/dist/ice/cpp/src/IceSSL/SChannelEngineF.h +0 -31
  768. data/dist/ice/cpp/src/IceSSL/SChannelPluginI.cpp +0 -73
  769. data/dist/ice/cpp/src/IceSSL/SChannelTransceiverI.cpp +0 -1174
  770. data/dist/ice/cpp/src/IceSSL/SChannelTransceiverI.h +0 -133
  771. data/dist/ice/cpp/src/IceSSL/SSLEngine.cpp +0 -313
  772. data/dist/ice/cpp/src/IceSSL/SSLEngine.h +0 -100
  773. data/dist/ice/cpp/src/IceSSL/SSLEngineF.h +0 -21
  774. data/dist/ice/cpp/src/IceSSL/SecureTransportCertificateI.cpp +0 -999
  775. data/dist/ice/cpp/src/IceSSL/SecureTransportEngine.cpp +0 -1308
  776. data/dist/ice/cpp/src/IceSSL/SecureTransportEngine.h +0 -59
  777. data/dist/ice/cpp/src/IceSSL/SecureTransportEngineF.h +0 -29
  778. data/dist/ice/cpp/src/IceSSL/SecureTransportPluginI.cpp +0 -75
  779. data/dist/ice/cpp/src/IceSSL/SecureTransportTransceiverI.cpp +0 -719
  780. data/dist/ice/cpp/src/IceSSL/SecureTransportTransceiverI.h +0 -92
  781. data/dist/ice/cpp/src/IceSSL/SecureTransportUtil.cpp +0 -868
  782. data/dist/ice/cpp/src/IceSSL/SecureTransportUtil.h +0 -45
  783. data/dist/ice/cpp/src/IceSSL/TrustManager.cpp +0 -236
  784. data/dist/ice/cpp/src/IceSSL/TrustManager.h +0 -46
  785. data/dist/ice/cpp/src/IceSSL/TrustManagerF.h +0 -21
  786. data/dist/ice/cpp/src/IceSSL/Util.cpp +0 -192
  787. data/dist/ice/cpp/src/IceSSL/Util.h +0 -99
  788. data/dist/ice/cpp/src/IceSSL/generated/ConnectionInfo.cpp +0 -75
  789. data/dist/ice/cpp/src/IceSSL/generated/ConnectionInfoF.cpp +0 -61
  790. data/dist/ice/cpp/src/IceSSL/generated/EndpointInfo.cpp +0 -75
  791. data/dist/ice/cpp/src/IceUtil/ConvertUTF.cpp +0 -472
  792. data/dist/ice/cpp/src/IceUtil/ConvertUTF.h +0 -147
  793. data/dist/ice/cpp/src/IceUtil/CtrlCHandler.cpp +0 -259
  794. data/dist/ice/cpp/src/IceUtil/FileUtil.cpp +0 -471
  795. data/dist/ice/cpp/src/IceUtil/InputUtil.cpp +0 -36
  796. data/dist/ice/cpp/src/IceUtil/MutexProtocol.cpp +0 -19
  797. data/dist/ice/cpp/src/IceUtil/OutputUtil.cpp +0 -609
  798. data/dist/ice/cpp/src/IceUtil/Random.cpp +0 -180
  799. data/dist/ice/cpp/src/IceUtil/RecMutex.cpp +0 -238
  800. data/dist/ice/cpp/src/IceUtil/Shared.cpp +0 -71
  801. data/dist/ice/cpp/src/IceUtil/StringConverter.cpp +0 -690
  802. data/dist/ice/cpp/src/IceUtil/StringUtil.cpp +0 -1135
  803. data/dist/ice/cpp/src/IceUtil/ThreadException.cpp +0 -130
  804. data/dist/ice/cpp/src/IceUtil/Time.cpp +0 -307
  805. data/dist/ice/cpp/src/IceUtil/UUID.cpp +0 -165
  806. data/dist/ice/cpp/src/IceUtil/Unicode.cpp +0 -183
  807. data/dist/ice/cpp/src/IceUtil/Unicode.h +0 -43
  808. data/dist/ice/cpp/src/IceUtil/UtilException.cpp +0 -839
  809. data/dist/ice/cpp/src/Slice/CPlusPlusUtil.cpp +0 -1810
  810. data/dist/ice/cpp/src/Slice/CPlusPlusUtil.h +0 -72
  811. data/dist/ice/cpp/src/Slice/Checksum.cpp +0 -447
  812. data/dist/ice/cpp/src/Slice/Checksum.h +0 -21
  813. data/dist/ice/cpp/src/Slice/JavaUtil.cpp +0 -5183
  814. data/dist/ice/cpp/src/Slice/JavaUtil.h +0 -407
  815. data/dist/ice/cpp/src/Slice/MD5.cpp +0 -52
  816. data/dist/ice/cpp/src/Slice/MD5.h +0 -39
  817. data/dist/ice/cpp/src/Slice/MD5I.cpp +0 -393
  818. data/dist/ice/cpp/src/Slice/MD5I.h +0 -91
  819. data/dist/ice/cpp/src/Slice/PHPUtil.cpp +0 -157
  820. data/dist/ice/cpp/src/Slice/PHPUtil.h +0 -36
  821. data/dist/ice/cpp/src/Slice/Python.cpp +0 -830
  822. data/dist/ice/cpp/src/Slice/PythonUtil.cpp +0 -3439
  823. data/dist/ice/cpp/src/Slice/PythonUtil.h +0 -70
  824. data/dist/ice/cpp/src/Slice/Ruby.cpp +0 -350
  825. data/dist/ice/cpp/src/Slice/RubyUtil.cpp +0 -1571
  826. data/dist/ice/cpp/src/Slice/RubyUtil.h +0 -49
  827. data/dist/ice/slice/Glacier2/PermissionsVerifierF.ice +0 -30
  828. data/dist/ice/slice/Glacier2/RouterF.ice +0 -29
  829. data/dist/ice/slice/Ice/Communicator.ice +0 -676
  830. data/dist/ice/slice/Ice/CommunicatorF.ice +0 -31
  831. data/dist/ice/slice/Ice/Connection.ice +0 -516
  832. data/dist/ice/slice/Ice/ConnectionF.ice +0 -33
  833. data/dist/ice/slice/Ice/Current.ice +0 -170
  834. data/dist/ice/slice/Ice/Endpoint.ice +0 -291
  835. data/dist/ice/slice/Ice/EndpointF.ice +0 -43
  836. data/dist/ice/slice/Ice/FacetMap.ice +0 -36
  837. data/dist/ice/slice/Ice/ImplicitContext.ice +0 -119
  838. data/dist/ice/slice/Ice/ImplicitContextF.ice +0 -30
  839. data/dist/ice/slice/Ice/Instrumentation.ice +0 -509
  840. data/dist/ice/slice/Ice/InstrumentationF.ice +0 -38
  841. data/dist/ice/slice/Ice/LocalException.ice +0 -1040
  842. data/dist/ice/slice/Ice/LocatorF.ice +0 -32
  843. data/dist/ice/slice/Ice/Logger.ice +0 -99
  844. data/dist/ice/slice/Ice/LoggerF.ice +0 -31
  845. data/dist/ice/slice/Ice/ObjectAdapter.ice +0 -710
  846. data/dist/ice/slice/Ice/ObjectAdapterF.ice +0 -31
  847. data/dist/ice/slice/Ice/ObjectFactory.ice +0 -71
  848. data/dist/ice/slice/Ice/Plugin.ice +0 -131
  849. data/dist/ice/slice/Ice/PluginF.ice +0 -36
  850. data/dist/ice/slice/Ice/ProcessF.ice +0 -31
  851. data/dist/ice/slice/Ice/Properties.ice +0 -244
  852. data/dist/ice/slice/Ice/PropertiesF.ice +0 -32
  853. data/dist/ice/slice/Ice/RouterF.ice +0 -31
  854. data/dist/ice/slice/Ice/ServantLocator.ice +0 -136
  855. data/dist/ice/slice/Ice/ServantLocatorF.ice +0 -31
  856. data/dist/ice/slice/Ice/ValueFactory.ice +0 -133
  857. data/dist/ice/slice/IceBox/IceBox.ice +0 -216
  858. data/dist/ice/slice/IceGrid/PluginFacade.ice +0 -329
  859. data/dist/ice/slice/IcePatch2/FileInfo.ice +0 -85
  860. data/dist/ice/slice/IcePatch2/FileServer.ice +0 -191
  861. data/dist/lib/Glacier2/PermissionsVerifierF.rb +0 -30
  862. data/dist/lib/Glacier2/RouterF.rb +0 -25
  863. data/dist/lib/Ice/Communicator.rb +0 -87
  864. data/dist/lib/Ice/CommunicatorF.rb +0 -24
  865. data/dist/lib/Ice/Connection.rb +0 -413
  866. data/dist/lib/Ice/ConnectionF.rb +0 -32
  867. data/dist/lib/Ice/Current.rb +0 -141
  868. data/dist/lib/Ice/Endpoint.rb +0 -187
  869. data/dist/lib/Ice/EndpointF.rb +0 -48
  870. data/dist/lib/Ice/FacetMap.rb +0 -24
  871. data/dist/lib/Ice/ImplicitContext.rb +0 -26
  872. data/dist/lib/Ice/ImplicitContextF.rb +0 -24
  873. data/dist/lib/Ice/Instrumentation.rb +0 -169
  874. data/dist/lib/Ice/InstrumentationF.rb +0 -31
  875. data/dist/lib/Ice/LocalException.rb +0 -1031
  876. data/dist/lib/Ice/LocatorF.rb +0 -30
  877. data/dist/lib/Ice/Logger.rb +0 -24
  878. data/dist/lib/Ice/LoggerF.rb +0 -24
  879. data/dist/lib/Ice/ObjectAdapter.rb +0 -29
  880. data/dist/lib/Ice/ObjectAdapterF.rb +0 -24
  881. data/dist/lib/Ice/ObjectFactory.rb +0 -24
  882. data/dist/lib/Ice/Plugin.rb +0 -30
  883. data/dist/lib/Ice/PluginF.rb +0 -28
  884. data/dist/lib/Ice/ProcessF.rb +0 -25
  885. data/dist/lib/Ice/Properties.rb +0 -25
  886. data/dist/lib/Ice/PropertiesF.rb +0 -29
  887. data/dist/lib/Ice/RouterF.rb +0 -25
  888. data/dist/lib/Ice/ServantLocator.rb +0 -26
  889. data/dist/lib/Ice/ServantLocatorF.rb +0 -24
  890. data/dist/lib/Ice/ValueFactory.rb +0 -28
  891. data/dist/lib/IceBox/IceBox.rb +0 -164
  892. data/dist/lib/IceGrid/PluginFacade.rb +0 -35
  893. data/dist/lib/IcePatch2/FileInfo.rb +0 -115
  894. data/dist/lib/IcePatch2/FileServer.rb +0 -123
  895. data/dist/lib/IcePatch2.rb +0 -5
@@ -1,24 +1,20 @@
1
- //
2
- // Copyright (c) ZeroC, Inc. All rights reserved.
3
- //
4
-
5
- #include <Ice/Proxy.h>
6
- #include <Ice/ProxyFactory.h>
7
- #include <Ice/ReferenceFactory.h>
8
- #include <Ice/Object.h>
9
- #include <Ice/ObjectAdapterFactory.h>
10
- #include <Ice/OutgoingAsync.h>
11
- #include <Ice/Reference.h>
12
- #include <Ice/CollocatedRequestHandler.h>
13
- #include <Ice/EndpointI.h>
14
- #include <Ice/Instance.h>
15
- #include <Ice/RouterInfo.h>
16
- #include <Ice/LocatorInfo.h>
17
- #include <Ice/OutputStream.h>
18
- #include <Ice/InputStream.h>
19
- #include <Ice/LocalException.h>
20
- #include <Ice/ConnectionI.h> // To convert from ConnectionIPtr to ConnectionPtr in ice_getConnection().
21
- #include <Ice/ImplicitContextI.h>
1
+ // Copyright (c) ZeroC, Inc.
2
+
3
+ #include "Ice/Proxy.h"
4
+ #include "CheckIdentity.h"
5
+ #include "ConnectionI.h"
6
+ #include "EndpointI.h"
7
+ #include "Ice/Initialize.h"
8
+ #include "Ice/LocalExceptions.h"
9
+ #include "Instance.h"
10
+ #include "LocatorInfo.h"
11
+ #include "Reference.h"
12
+ #include "ReferenceFactory.h"
13
+ #include "RequestHandlerCache.h"
14
+ #include "RouterInfo.h"
15
+ #include "TargetCompare.h"
16
+
17
+ #include <stdexcept>
22
18
 
23
19
  using namespace std;
24
20
  using namespace Ice;
@@ -26,1579 +22,520 @@ using namespace IceInternal;
26
22
 
27
23
  namespace Ice
28
24
  {
25
+ const Context noExplicitContext;
26
+ }
29
27
 
30
- const Context noExplicitContext;
28
+ namespace
29
+ {
30
+ inline ReferencePtr createReference(const CommunicatorPtr& communicator, string_view proxyString)
31
+ {
32
+ if (!communicator)
33
+ {
34
+ throw std::invalid_argument("communicator cannot be null");
35
+ }
31
36
 
37
+ ReferencePtr ref = getInstance(communicator)->referenceFactory()->create(proxyString, "");
38
+ if (!ref)
39
+ {
40
+ throw std::invalid_argument("invalid proxy string");
41
+ }
42
+ return ref;
43
+ }
32
44
  }
33
45
 
34
- #if defined(_MSC_VER) && (_MSC_VER <= 1600)
35
- //
36
- // COMPILERFIX v90 and v100 get confused with namespaces and complains that
37
- // ::Ice::noExplicitContext isn't defined in IceProxy namespace.
38
- //
39
- namespace IceProxy
46
+ Ice::ObjectPrx::ObjectPrx(const CommunicatorPtr& communicator, string_view proxyString)
47
+ : ObjectPrx(createReference(communicator, proxyString))
40
48
  {
49
+ }
41
50
 
42
- namespace Ice
51
+ Ice::ObjectPrx::ObjectPrx(ReferencePtr&& ref)
52
+ : _reference(std::move(ref)),
53
+ _requestHandlerCache(make_shared<RequestHandlerCache>(_reference))
43
54
  {
55
+ }
44
56
 
45
- const Context noExplicitContext;
57
+ Ice::ObjectPrx::~ObjectPrx() = default; // avoid weak vtable
46
58
 
59
+ void
60
+ Ice::ObjectPrx::_checkTwowayOnly(string_view name) const
61
+ {
62
+ if (!ice_isTwoway())
63
+ {
64
+ throw Ice::TwowayOnlyException(__FILE__, __LINE__, name);
65
+ }
47
66
  }
48
67
 
68
+ ostream&
69
+ Ice::operator<<(ostream& os, const Ice::ObjectPrx& p)
70
+ {
71
+ return os << p.ice_toString();
49
72
  }
50
- #endif
51
73
 
52
- namespace
74
+ const Identity&
75
+ Ice::ObjectPrx::ice_getIdentity() const noexcept
53
76
  {
77
+ return _reference->getIdentity();
78
+ }
54
79
 
55
- const string ice_ping_name = "ice_ping";
56
- const string ice_ids_name = "ice_ids";
57
- const string ice_id_name = "ice_id";
58
- const string ice_isA_name = "ice_isA";
59
- const string ice_getConnection_name = "ice_getConnection";
60
- const string ice_flushBatchRequests_name = "ice_flushBatchRequests";
61
-
62
- #ifndef ICE_CPP11_MAPPING
63
- const string ice_invoke_name = "ice_invoke";
64
- #endif
65
-
80
+ Context
81
+ Ice::ObjectPrx::ice_getContext() const
82
+ {
83
+ return _reference->getContext()->getValue();
66
84
  }
67
85
 
68
- ProxyFlushBatchAsync::ProxyFlushBatchAsync(const ObjectPrxPtr& proxy) : ProxyOutgoingAsyncBase(proxy)
86
+ const string&
87
+ Ice::ObjectPrx::ice_getFacet() const noexcept
69
88
  {
89
+ return _reference->getFacet();
70
90
  }
71
91
 
72
- AsyncStatus
73
- ProxyFlushBatchAsync::invokeRemote(const ConnectionIPtr& connection, bool compress, bool)
92
+ string
93
+ Ice::ObjectPrx::ice_getAdapterId() const
74
94
  {
75
- if(_batchRequestNum == 0)
76
- {
77
- if(sent())
78
- {
79
- return static_cast<AsyncStatus>(AsyncStatusSent | AsyncStatusInvokeSentCallback);
80
- }
81
- else
82
- {
83
- return AsyncStatusSent;
84
- }
85
- }
86
- _cachedConnection = connection;
87
- return connection->sendAsyncRequest(ICE_SHARED_FROM_THIS, compress, false, _batchRequestNum);
95
+ return _reference->getAdapterId();
88
96
  }
89
97
 
90
- AsyncStatus
91
- ProxyFlushBatchAsync::invokeCollocated(CollocatedRequestHandler* handler)
98
+ EndpointSeq
99
+ Ice::ObjectPrx::ice_getEndpoints() const
92
100
  {
93
- if(_batchRequestNum == 0)
101
+ EndpointSeq retSeq;
102
+ for (const auto& p : _reference->getEndpoints())
94
103
  {
95
- if(sent())
96
- {
97
- return static_cast<AsyncStatus>(AsyncStatusSent | AsyncStatusInvokeSentCallback);
98
- }
99
- else
100
- {
101
- return AsyncStatusSent;
102
- }
104
+ retSeq.emplace_back(p);
103
105
  }
104
- return handler->invokeAsyncRequest(this, _batchRequestNum, false);
106
+ return retSeq;
105
107
  }
106
108
 
107
- void
108
- ProxyFlushBatchAsync::invoke(const string& operation)
109
+ chrono::milliseconds
110
+ Ice::ObjectPrx::ice_getLocatorCacheTimeout() const noexcept
109
111
  {
110
- checkSupportedProtocol(getCompatibleProtocol(_proxy->_getReference()->getProtocol()));
111
- _observer.attach(_proxy, operation, ::Ice::noExplicitContext);
112
- bool compress; // Ignore for proxy flushBatchRequests
113
- _batchRequestNum = _proxy->_getBatchRequestQueue()->swap(&_os, compress);
114
- invokeImpl(true); // userThread = true
112
+ return _reference->getLocatorCacheTimeout();
115
113
  }
116
114
 
117
- ProxyGetConnection::ProxyGetConnection(const ObjectPrxPtr& prx) : ProxyOutgoingAsyncBase(prx)
115
+ bool
116
+ Ice::ObjectPrx::ice_isConnectionCached() const noexcept
118
117
  {
118
+ return _reference->getCacheConnection();
119
119
  }
120
120
 
121
- AsyncStatus
122
- ProxyGetConnection::invokeRemote(const ConnectionIPtr& connection, bool, bool)
121
+ EndpointSelectionType
122
+ Ice::ObjectPrx::ice_getEndpointSelection() const noexcept
123
123
  {
124
- _cachedConnection = connection;
125
- if(responseImpl(true, true))
126
- {
127
- invokeResponseAsync();
128
- }
129
- return AsyncStatusSent;
124
+ return _reference->getEndpointSelection();
130
125
  }
131
126
 
132
- AsyncStatus
133
- ProxyGetConnection::invokeCollocated(CollocatedRequestHandler*)
127
+ Ice::EncodingVersion
128
+ Ice::ObjectPrx::ice_getEncodingVersion() const noexcept
134
129
  {
135
- if(responseImpl(true, true))
136
- {
137
- invokeResponseAsync();
138
- }
139
- return AsyncStatusSent;
130
+ return _reference->getEncoding();
140
131
  }
141
132
 
142
- Ice::ConnectionPtr
143
- ProxyGetConnection::getConnection() const
133
+ optional<RouterPrx>
134
+ Ice::ObjectPrx::ice_getRouter() const noexcept
144
135
  {
145
- return _cachedConnection;
136
+ RouterInfoPtr routerInfo = _reference->getRouterInfo();
137
+ return routerInfo ? make_optional(routerInfo->getRouter()) : nullopt;
146
138
  }
147
139
 
148
- void
149
- ProxyGetConnection::invoke(const string& operation)
140
+ optional<LocatorPrx>
141
+ Ice::ObjectPrx::ice_getLocator() const noexcept
150
142
  {
151
- _observer.attach(_proxy, operation, ::Ice::noExplicitContext);
152
- invokeImpl(true); // userThread = true
143
+ LocatorInfoPtr locatorInfo = _reference->getLocatorInfo();
144
+ return locatorInfo ? make_optional(locatorInfo->getLocator()) : nullopt;
153
145
  }
154
146
 
155
- #ifdef ICE_CPP11_MAPPING // C++11 mapping
156
-
157
- namespace Ice
147
+ bool
148
+ Ice::ObjectPrx::ice_isCollocationOptimized() const noexcept
158
149
  {
150
+ return _reference->getCollocationOptimized();
151
+ }
159
152
 
160
- bool
161
- operator<(const ObjectPrx& lhs, const ObjectPrx& rhs)
153
+ chrono::milliseconds
154
+ Ice::ObjectPrx::ice_getInvocationTimeout() const noexcept
162
155
  {
163
- return lhs._reference < rhs._reference;
156
+ return _reference->getInvocationTimeout();
164
157
  }
165
158
 
166
159
  bool
167
- operator==(const ObjectPrx& lhs, const ObjectPrx& rhs)
160
+ Ice::ObjectPrx::ice_isTwoway() const noexcept
168
161
  {
169
- return lhs._reference == rhs._reference;
162
+ return _reference->getMode() == Reference::ModeTwoway;
170
163
  }
171
164
 
165
+ bool
166
+ Ice::ObjectPrx::ice_isOneway() const noexcept
167
+ {
168
+ return _reference->getMode() == Reference::ModeOneway;
172
169
  }
173
170
 
174
- void
175
- Ice::ObjectPrx::_iceI_isA(const shared_ptr<IceInternal::OutgoingAsyncT<bool>>& outAsync,
176
- const string& typeId,
177
- const Context& ctx)
171
+ bool
172
+ Ice::ObjectPrx::ice_isBatchOneway() const noexcept
178
173
  {
179
- _checkTwowayOnly(ice_isA_name);
180
- outAsync->invoke(ice_isA_name, OperationMode::Nonmutating, ICE_ENUM(FormatType, DefaultFormat), ctx,
181
- [&](Ice::OutputStream* os)
182
- {
183
- os->write(typeId, false);
184
- },
185
- nullptr);
174
+ return _reference->getMode() == Reference::ModeBatchOneway;
186
175
  }
187
176
 
188
- void
189
- Ice::ObjectPrx::_iceI_ping(const shared_ptr<IceInternal::OutgoingAsyncT<void>>& outAsync, const Context& ctx)
177
+ bool
178
+ Ice::ObjectPrx::ice_isDatagram() const noexcept
190
179
  {
191
- outAsync->invoke(ice_ping_name, OperationMode::Nonmutating, ICE_ENUM(FormatType, DefaultFormat), ctx, nullptr, nullptr);
180
+ return _reference->getMode() == Reference::ModeDatagram;
192
181
  }
193
182
 
194
- void
195
- Ice::ObjectPrx::_iceI_ids(const shared_ptr<IceInternal::OutgoingAsyncT<vector<string>>>& outAsync, const Context& ctx)
183
+ bool
184
+ Ice::ObjectPrx::ice_isBatchDatagram() const noexcept
196
185
  {
197
- _checkTwowayOnly(ice_ids_name);
198
- outAsync->invoke(ice_ids_name, OperationMode::Nonmutating, ICE_ENUM(FormatType, DefaultFormat), ctx, nullptr, nullptr,
199
- [](Ice::InputStream* stream)
200
- {
201
- vector<string> v;
202
- stream->read(v, false); // no conversion
203
- return v;
204
- });
186
+ return _reference->getMode() == Reference::ModeBatchDatagram;
205
187
  }
206
188
 
207
- void
208
- Ice::ObjectPrx::_iceI_id(const shared_ptr<IceInternal::OutgoingAsyncT<string>>& outAsync, const Context& ctx)
189
+ optional<bool>
190
+ Ice::ObjectPrx::ice_getCompress() const noexcept
209
191
  {
210
- _checkTwowayOnly(ice_id_name);
211
- outAsync->invoke(ice_id_name, OperationMode::Nonmutating, ICE_ENUM(FormatType, DefaultFormat), ctx, nullptr, nullptr,
212
- [](Ice::InputStream* stream)
213
- {
214
- string v;
215
- stream->read(v, false); // no conversion
216
- return v;
217
- });
192
+ return _reference->getCompress();
218
193
  }
219
194
 
220
- void
221
- Ice::ObjectPrx::_iceI_getConnection(const shared_ptr<IceInternal::ProxyGetConnection>& outAsync)
195
+ string
196
+ Ice::ObjectPrx::ice_getConnectionId() const
222
197
  {
223
- outAsync->invoke(ice_getConnection_name);
198
+ return _reference->getConnectionId();
224
199
  }
225
200
 
226
- void
227
- Ice::ObjectPrx::_iceI_flushBatchRequests(const shared_ptr<IceInternal::ProxyFlushBatchAsync>& outAsync)
201
+ bool
202
+ Ice::ObjectPrx::ice_isFixed() const noexcept
228
203
  {
229
- outAsync->invoke(ice_flushBatchRequests_name);
204
+ return dynamic_pointer_cast<FixedReference>(_reference) != nullptr;
230
205
  }
231
206
 
232
- void
233
- Ice::ObjectPrx::_checkTwowayOnly(const string& name) const
207
+ ConnectionPtr
208
+ Ice::ObjectPrx::ice_getCachedConnection() const noexcept
234
209
  {
235
- //
236
- // No mutex lock necessary, there is nothing mutable in this operation.
237
- //
238
- if(!ice_isTwoway())
239
- {
240
- throw Ice::TwowayOnlyException(__FILE__, __LINE__, name);
241
- }
210
+ return _requestHandlerCache->getCachedConnection();
242
211
  }
243
212
 
244
- shared_ptr<ObjectPrx>
245
- Ice::ObjectPrx::_newInstance() const
213
+ CommunicatorPtr
214
+ Ice::ObjectPrx::ice_getCommunicator() const noexcept
246
215
  {
247
- return createProxy<ObjectPrx>();
216
+ return _reference->getCommunicator();
248
217
  }
249
218
 
250
- ostream&
251
- Ice::operator<<(ostream& os, const Ice::ObjectPrx& p)
219
+ const char*
220
+ Ice::ObjectPrx::ice_staticId() noexcept
252
221
  {
253
- return os << p.ice_toString();
222
+ return "::Ice::Object";
254
223
  }
255
224
 
256
- #else // C++98 mapping
257
-
258
- ::Ice::ObjectPrxPtr
259
- IceInternal::checkedCastImpl(const ObjectPrxPtr& b, const string& f, const string& typeId, const Context& context)
225
+ string
226
+ Ice::ObjectPrx::ice_toString() const
260
227
  {
261
- if(b != ICE_NULLPTR)
262
- {
263
- ObjectPrxPtr bb = b->ice_facet(f);
264
- try
265
- {
266
- if(bb->ice_isA(typeId, context))
267
- {
268
- return bb;
269
- }
270
- #ifndef NDEBUG
271
- else
272
- {
273
- assert(typeId != "::Ice::Object");
274
- }
275
- #endif
276
- }
277
- catch(const FacetNotExistException&)
278
- {
279
- }
280
- }
281
- return ICE_NULLPTR;
228
+ //
229
+ // Returns the stringified proxy. There's no need to convert the
230
+ // string to a native string: a stringified proxy only contains
231
+ // printable ASCII which is a subset of all native character sets.
232
+ //
233
+ return _reference->toString();
282
234
  }
283
235
 
284
- bool
285
- IceProxy::Ice::Object::operator==(const Object& r) const
236
+ size_t
237
+ Ice::ObjectPrx::_hash() const noexcept
286
238
  {
287
- return _reference == r._reference;
239
+ return hash<Reference>{}(*_reference);
288
240
  }
289
241
 
290
- bool
291
- IceProxy::Ice::Object::operator<(const Object& r) const
242
+ void
243
+ Ice::ObjectPrx::_write(OutputStream& os) const
292
244
  {
293
- return _reference < r._reference;
245
+ os.write(_reference->getIdentity());
246
+ _reference->streamWrite(&os);
294
247
  }
295
248
 
296
- Ice::AsyncResultPtr
297
- IceProxy::Ice::Object::_iceI_begin_ice_isA(const string& typeId,
298
- const Context& ctx,
299
- const ::IceInternal::CallbackBasePtr& del,
300
- const ::Ice::LocalObjectPtr& cookie,
301
- bool sync)
249
+ ReferencePtr
250
+ Ice::ObjectPrx::_adapterId(string newAdapterId) const
302
251
  {
303
- _checkTwowayOnly(ice_isA_name, sync);
304
- OutgoingAsyncPtr result = new CallbackOutgoing(this, ice_isA_name, del, cookie, sync);
305
- try
252
+ if (newAdapterId == _reference->getAdapterId())
306
253
  {
307
- result->prepare(ice_isA_name, Nonmutating, ctx);
308
- ::Ice::OutputStream* ostr = result->startWriteParams(ICE_ENUM(FormatType, DefaultFormat));
309
- ostr->write(typeId, false);
310
- result->endWriteParams();
311
- result->invoke(ice_isA_name);
254
+ return _reference;
312
255
  }
313
- catch(const Exception& ex)
256
+ else
314
257
  {
315
- result->abort(ex);
258
+ return _reference->changeAdapterId(std::move(newAdapterId));
316
259
  }
317
- return result;
318
260
  }
319
261
 
320
- bool
321
- IceProxy::Ice::Object::end_ice_isA(const AsyncResultPtr& result)
262
+ ReferencePtr
263
+ Ice::ObjectPrx::_batchDatagram() const
322
264
  {
323
- AsyncResult::_check(result, this, ice_isA_name);
324
- bool ok = result->_waitForResponse();
325
- if(!ok)
265
+ if (_reference->getMode() == Reference::ModeBatchDatagram)
326
266
  {
327
- try
328
- {
329
- result->_throwUserException();
330
- }
331
- catch(const UserException& ex)
332
- {
333
- throw UnknownUserException(__FILE__, __LINE__, ex.ice_id());
334
- }
267
+ return _reference;
268
+ }
269
+ else
270
+ {
271
+ return _reference->changeMode(Reference::ModeBatchDatagram);
335
272
  }
336
- bool ret;
337
- ::Ice::InputStream* istr = result->_startReadParams();
338
- istr->read(ret);
339
- result->_endReadParams();
340
- return ret;
341
273
  }
342
274
 
343
- AsyncResultPtr
344
- IceProxy::Ice::Object::_iceI_begin_ice_ping(const Context& ctx,
345
- const ::IceInternal::CallbackBasePtr& del,
346
- const ::Ice::LocalObjectPtr& cookie,
347
- bool sync)
275
+ ReferencePtr
276
+ Ice::ObjectPrx::_batchOneway() const
348
277
  {
349
- OutgoingAsyncPtr result = new CallbackOutgoing(this, ice_ping_name, del, cookie, sync);
350
- try
278
+ if (_reference->getMode() == Reference::ModeBatchOneway)
351
279
  {
352
- result->prepare(ice_ping_name, Nonmutating, ctx);
353
- result->writeEmptyParams();
354
- result->invoke(ice_ping_name);
280
+ return _reference;
355
281
  }
356
- catch(const Exception& ex)
282
+ else
357
283
  {
358
- result->abort(ex);
284
+ return _reference->changeMode(Reference::ModeBatchOneway);
359
285
  }
360
- return result;
361
286
  }
362
287
 
363
- void
364
- IceProxy::Ice::Object::end_ice_ping(const AsyncResultPtr& result)
288
+ ReferencePtr
289
+ Ice::ObjectPrx::_collocationOptimized(bool b) const
365
290
  {
366
- _end(result, ice_ping_name);
291
+ if (b == _reference->getCollocationOptimized())
292
+ {
293
+ return _reference;
294
+ }
295
+ else
296
+ {
297
+ return _reference->changeCollocationOptimized(b);
298
+ }
367
299
  }
368
300
 
369
- AsyncResultPtr
370
- IceProxy::Ice::Object::_iceI_begin_ice_ids(const Context& ctx,
371
- const ::IceInternal::CallbackBasePtr& del,
372
- const ::Ice::LocalObjectPtr& cookie,
373
- bool sync)
301
+ ReferencePtr
302
+ Ice::ObjectPrx::_compress(bool b) const
374
303
  {
375
- _checkTwowayOnly(ice_ids_name, sync);
376
- OutgoingAsyncPtr result = new CallbackOutgoing(this, ice_ids_name, del, cookie, sync);
377
- try
304
+ ReferencePtr ref = _reference->changeCompress(b);
305
+ if (targetEqualTo(ref, _reference))
378
306
  {
379
- result->prepare(ice_ids_name, Nonmutating, ctx);
380
- result->writeEmptyParams();
381
- result->invoke(ice_ids_name);
307
+ return _reference;
382
308
  }
383
- catch(const Exception& ex)
309
+ else
384
310
  {
385
- result->abort(ex);
311
+ return ref;
386
312
  }
387
- return result;
388
313
  }
389
314
 
390
- vector<string>
391
- IceProxy::Ice::Object::end_ice_ids(const AsyncResultPtr& result)
315
+ ReferencePtr
316
+ Ice::ObjectPrx::_connectionCached(bool newCache) const
392
317
  {
393
- AsyncResult::_check(result, this, ice_ids_name);
394
- bool ok = result->_waitForResponse();
395
- if(!ok)
318
+ if (newCache == _reference->getCacheConnection())
396
319
  {
397
- try
398
- {
399
- result->_throwUserException();
400
- }
401
- catch(const UserException& ex)
402
- {
403
- throw UnknownUserException(__FILE__, __LINE__, ex.ice_id());
404
- }
320
+ return _reference;
321
+ }
322
+ else
323
+ {
324
+ return _reference->changeCacheConnection(newCache);
405
325
  }
406
- vector<string> ret;
407
- ::Ice::InputStream* istr = result->_startReadParams();
408
- istr->read(ret, false);
409
- result->_endReadParams();
410
- return ret;
411
326
  }
412
327
 
413
- AsyncResultPtr
414
- IceProxy::Ice::Object::_iceI_begin_ice_id(const Context& ctx,
415
- const ::IceInternal::CallbackBasePtr& del,
416
- const ::Ice::LocalObjectPtr& cookie,
417
- bool sync)
328
+ ReferencePtr
329
+ Ice::ObjectPrx::_connectionId(string id) const
418
330
  {
419
- _checkTwowayOnly(ice_id_name, sync);
420
- OutgoingAsyncPtr result = new CallbackOutgoing(this, ice_id_name, del, cookie, sync);
421
- try
331
+ ReferencePtr ref = _reference->changeConnectionId(std::move(id));
332
+ if (targetEqualTo(ref, _reference))
422
333
  {
423
- result->prepare(ice_id_name, Nonmutating, ctx);
424
- result->writeEmptyParams();
425
- result->invoke(ice_id_name);
334
+ return _reference;
426
335
  }
427
- catch(const Exception& ex)
336
+ else
428
337
  {
429
- result->abort(ex);
338
+ return ref;
430
339
  }
431
- return result;
432
340
  }
433
341
 
434
- string
435
- IceProxy::Ice::Object::end_ice_id(const AsyncResultPtr& result)
342
+ ReferencePtr
343
+ Ice::ObjectPrx::_context(Context newContext) const
436
344
  {
437
- AsyncResult::_check(result, this, ice_id_name);
438
- bool ok = result->_waitForResponse();
439
- if(!ok)
440
- {
441
- try
442
- {
443
- result->_throwUserException();
444
- }
445
- catch(const UserException& ex)
446
- {
447
- throw UnknownUserException(__FILE__, __LINE__, ex.ice_id());
448
- }
449
- }
450
- string ret;
451
- ::Ice::InputStream* istr = result->_startReadParams();
452
- istr->read(ret, false);
453
- result->_endReadParams();
454
- return ret;
345
+ return _reference->changeContext(std::move(newContext));
455
346
  }
456
347
 
457
- bool
458
- IceProxy::Ice::Object::ice_invoke(const string& operation,
459
- OperationMode mode,
460
- const vector<Byte>& inEncaps,
461
- vector<Byte>& outEncaps,
462
- const Context& context)
348
+ ReferencePtr
349
+ Ice::ObjectPrx::_datagram() const
463
350
  {
464
- pair<const Byte*, const Byte*> inPair;
465
- if(inEncaps.empty())
351
+ if (_reference->getMode() == Reference::ModeDatagram)
466
352
  {
467
- inPair.first = inPair.second = 0;
353
+ return _reference;
468
354
  }
469
355
  else
470
356
  {
471
- inPair.first = &inEncaps[0];
472
- inPair.second = inPair.first + inEncaps.size();
357
+ return _reference->changeMode(Reference::ModeDatagram);
473
358
  }
474
- return ice_invoke(operation, mode, inPair, outEncaps, context);
475
359
  }
476
360
 
477
- AsyncResultPtr
478
- IceProxy::Ice::Object::_iceI_begin_ice_invoke(const string& operation,
479
- OperationMode mode,
480
- const vector<Byte>& inEncaps,
481
- const Context& ctx,
482
- const ::IceInternal::CallbackBasePtr& del,
483
- const ::Ice::LocalObjectPtr& cookie,
484
- bool /*sync*/)
361
+ ReferencePtr
362
+ Ice::ObjectPrx::_encodingVersion(EncodingVersion encoding) const
485
363
  {
486
- pair<const Byte*, const Byte*> inPair;
487
- if(inEncaps.empty())
364
+ if (encoding == _reference->getEncoding())
488
365
  {
489
- inPair.first = inPair.second = 0;
366
+ return _reference;
490
367
  }
491
368
  else
492
369
  {
493
- inPair.first = &inEncaps[0];
494
- inPair.second = inPair.first + inEncaps.size();
495
- }
496
- return _iceI_begin_ice_invoke(operation, mode, inPair, ctx, del, cookie);
497
- }
498
-
499
- bool
500
- IceProxy::Ice::Object::end_ice_invoke(vector<Byte>& outEncaps, const AsyncResultPtr& result)
501
- {
502
- AsyncResult::_check(result, this, ice_invoke_name);
503
- bool ok = result->_waitForResponse();
504
- if(_reference->getMode() == Reference::ModeTwoway)
505
- {
506
- const Byte* v;
507
- Int sz;
508
- result->_readParamEncaps(v, sz);
509
- vector<Byte>(v, v + sz).swap(outEncaps);
370
+ return _reference->changeEncoding(encoding);
510
371
  }
511
- return ok;
512
372
  }
513
373
 
514
- AsyncResultPtr
515
- IceProxy::Ice::Object::_iceI_begin_ice_invoke(const string& operation,
516
- OperationMode mode,
517
- const pair<const Byte*, const Byte*>& inEncaps,
518
- const Context& ctx,
519
- const ::IceInternal::CallbackBasePtr& del,
520
- const ::Ice::LocalObjectPtr& cookie,
521
- bool sync)
374
+ ReferencePtr
375
+ Ice::ObjectPrx::_endpointSelection(EndpointSelectionType newType) const
522
376
  {
523
- OutgoingAsyncPtr result = new CallbackOutgoing(this, ice_invoke_name, del, cookie, sync);
524
- try
377
+ if (newType == _reference->getEndpointSelection())
525
378
  {
526
- result->prepare(operation, mode, ctx);
527
- result->writeParamEncaps(inEncaps.first, static_cast<Int>(inEncaps.second - inEncaps.first));
528
- result->invoke(operation);
379
+ return _reference;
529
380
  }
530
- catch(const Exception& ex)
381
+ else
531
382
  {
532
- result->abort(ex);
383
+ return _reference->changeEndpointSelection(newType);
533
384
  }
534
- return result;
535
385
  }
536
386
 
537
- bool
538
- IceProxy::Ice::Object::_iceI_end_ice_invoke(pair<const Byte*, const Byte*>& outEncaps, const AsyncResultPtr& result)
387
+ ReferencePtr
388
+ Ice::ObjectPrx::_endpoints(EndpointSeq newEndpoints) const // NOLINT(performance-unnecessary-value-param)
539
389
  {
540
- AsyncResult::_check(result, this, ice_invoke_name);
541
- bool ok = result->_waitForResponse();
542
- if(_reference->getMode() == Reference::ModeTwoway)
390
+ vector<EndpointIPtr> endpoints;
391
+ for (const auto& p : newEndpoints)
543
392
  {
544
- Int sz;
545
- result->_readParamEncaps(outEncaps.first, sz);
546
- outEncaps.second = outEncaps.first + sz;
393
+ endpoints.emplace_back(dynamic_pointer_cast<EndpointI>(p));
547
394
  }
548
- return ok;
549
- }
550
-
551
- ::Ice::AsyncResultPtr
552
- IceProxy::Ice::Object::_iceI_begin_ice_flushBatchRequests(const ::IceInternal::CallbackBasePtr& del,
553
- const ::Ice::LocalObjectPtr& cookie)
554
- {
555
- class ProxyFlushBatchAsyncWithCallback : public ProxyFlushBatchAsync, public CallbackCompletion
556
- {
557
- public:
558
-
559
- ProxyFlushBatchAsyncWithCallback(const ::Ice::ObjectPrx& proxy,
560
- const CallbackBasePtr& cb,
561
- const ::Ice::LocalObjectPtr& cookie) :
562
- ProxyFlushBatchAsync(proxy), CallbackCompletion(cb, cookie)
563
- {
564
- _cookie = cookie;
565
- }
566
395
 
567
- virtual const std::string&
568
- getOperation() const
569
- {
570
- return ice_flushBatchRequests_name;
571
- }
572
- };
396
+ auto currentEndpoints = _reference->getEndpoints();
573
397
 
574
- ProxyFlushBatchAsyncPtr result = new ProxyFlushBatchAsyncWithCallback(this, del, cookie);
575
- try
398
+ if (equal(
399
+ endpoints.begin(),
400
+ endpoints.end(),
401
+ currentEndpoints.begin(),
402
+ currentEndpoints.end(),
403
+ targetEqualTo<EndpointIPtr, EndpointIPtr>))
576
404
  {
577
- result->invoke(ice_flushBatchRequests_name);
405
+ return _reference;
578
406
  }
579
- catch(const Exception& ex)
407
+ else
580
408
  {
581
- result->abort(ex);
409
+ return _reference->changeEndpoints(std::move(endpoints));
582
410
  }
583
- return result;
584
411
  }
585
412
 
586
- void
587
- IceProxy::Ice::Object::end_ice_flushBatchRequests(const AsyncResultPtr& result)
588
- {
589
- AsyncResult::_check(result, this, ice_flushBatchRequests_name);
590
- result->_waitForResponse();
591
- }
592
-
593
- void
594
- IceProxy::Ice::Object::_end(const ::Ice::AsyncResultPtr& result, const std::string& operation) const
413
+ ReferencePtr
414
+ Ice::ObjectPrx::_identity(Identity newIdentity) const
595
415
  {
596
- AsyncResult::_check(result, this, operation);
597
- bool ok = result->_waitForResponse();
598
- if(_reference->getMode() == Reference::ModeTwoway)
416
+ checkIdentity(newIdentity, __FILE__, __LINE__);
417
+ if (newIdentity == _reference->getIdentity())
599
418
  {
600
- if(!ok)
601
- {
602
- try
603
- {
604
- result->_throwUserException();
605
- }
606
- catch(const UserException& ex)
607
- {
608
- throw UnknownUserException(__FILE__, __LINE__, ex.ice_id());
609
- }
610
- }
611
- result->_readEmptyParams();
419
+ return _reference;
420
+ }
421
+ else
422
+ {
423
+ return _reference->changeIdentity(std::move(newIdentity));
612
424
  }
613
425
  }
614
426
 
615
- namespace IceProxy
616
- {
617
-
618
- namespace Ice
619
- {
620
-
621
- ostream&
622
- operator<<(ostream& os, const ::IceProxy::Ice::Object& p)
623
- {
624
- return os << p.ice_toString();
625
- }
626
-
627
- }
628
-
629
- }
630
-
631
- IceProxy::Ice::Object*
632
- IceProxy::Ice::Object::_newInstance() const
633
- {
634
- return new Object;
635
- }
636
-
637
- AsyncResultPtr
638
- IceProxy::Ice::Object::_iceI_begin_ice_getConnection(const ::IceInternal::CallbackBasePtr& del,
639
- const ::Ice::LocalObjectPtr& cookie)
427
+ ReferencePtr
428
+ Ice::ObjectPrx::_facet(string newFacet) const
640
429
  {
641
- class ProxyGetConnectionWithCallback : public ProxyGetConnection, public CallbackCompletion
642
- {
643
- public:
644
-
645
- ProxyGetConnectionWithCallback(const ::Ice::ObjectPrx& proxy,
646
- const ::IceInternal::CallbackBasePtr& cb,
647
- const ::Ice::LocalObjectPtr& cookie) :
648
- ProxyGetConnection(proxy), CallbackCompletion(cb, cookie)
649
- {
650
- _cookie = cookie;
651
- }
652
-
653
- virtual const std::string&
654
- getOperation() const
655
- {
656
- return ice_getConnection_name;
657
- }
658
- };
659
-
660
- ProxyGetConnectionPtr result = new ProxyGetConnectionWithCallback(this, del, cookie);
661
- try
430
+ if (newFacet == _reference->getFacet())
662
431
  {
663
- result->invoke(ice_getConnection_name);
432
+ return _reference;
664
433
  }
665
- catch(const Exception& ex)
434
+ else
666
435
  {
667
- result->abort(ex);
436
+ return _reference->changeFacet(std::move(newFacet));
668
437
  }
669
- return result;
670
- }
671
-
672
- ConnectionPtr
673
- IceProxy::Ice::Object::end_ice_getConnection(const AsyncResultPtr& result)
674
- {
675
- AsyncResult::_check(result, this, ice_getConnection_name);
676
- result->_waitForResponse();
677
- return result->getConnection();
678
438
  }
679
439
 
680
- void
681
- IceProxy::Ice::Object::_checkTwowayOnly(const string& name, bool sync) const
440
+ ReferencePtr
441
+ Ice::ObjectPrx::_fixed(ConnectionPtr connection) const // NOLINT(performance-unnecessary-value-param)
682
442
  {
683
- //
684
- // No mutex lock necessary, there is nothing mutable in this operation.
685
- //
686
- if(!ice_isTwoway())
443
+ if (!connection)
687
444
  {
688
- if(sync)
689
- {
690
- throw TwowayOnlyException(__FILE__, __LINE__, name);
691
- }
692
- else
693
- {
694
- throw IceUtil::IllegalArgumentException(__FILE__,
695
- __LINE__,
696
- "`" + name + "' can only be called with a twoway proxy");
697
- }
445
+ throw invalid_argument("invalid null connection passed to ice_fixed");
698
446
  }
699
- }
700
-
701
- #endif
702
-
703
- #ifdef ICE_CPP11_MAPPING
704
- # define ICE_OBJECT_PRX Ice::ObjectPrx
705
- # define CONST_POINTER_CAST_OBJECT_PRX const_pointer_cast<ObjectPrx>(shared_from_this())
706
- #else
707
- # define ICE_OBJECT_PRX IceProxy::Ice::Object
708
- # define CONST_POINTER_CAST_OBJECT_PRX ObjectPrx(const_cast< ::IceProxy::Ice::Object*>(this))
709
- #endif
710
-
711
- //
712
- // methods common for both C++11/C++98 mappings
713
- //
714
-
715
- Identity
716
- ICE_OBJECT_PRX::ice_getIdentity() const
717
- {
718
- return _reference->getIdentity();
719
- }
720
-
721
- ObjectPrxPtr
722
- ICE_OBJECT_PRX::ice_identity(const Identity& newIdentity) const
723
- {
724
- if(newIdentity.name.empty())
447
+ auto impl = dynamic_pointer_cast<Ice::ConnectionI>(connection);
448
+ if (!impl)
725
449
  {
726
- throw IllegalIdentityException(__FILE__, __LINE__);
450
+ throw invalid_argument("invalid connection passed to ice_fixed");
727
451
  }
728
- if(newIdentity == _reference->getIdentity())
452
+ ReferencePtr ref = _reference->changeConnection(std::move(impl));
453
+ if (targetEqualTo(ref, _reference))
729
454
  {
730
- return CONST_POINTER_CAST_OBJECT_PRX;
455
+ return _reference;
731
456
  }
732
457
  else
733
458
  {
734
- #ifdef ICE_CPP11_MAPPING
735
- auto proxy = createProxy<ObjectPrx>();
736
- #else
737
- ObjectPrxPtr proxy = new IceProxy::Ice::Object;
738
- #endif
739
- proxy->setup(_reference->changeIdentity(newIdentity));
740
- return proxy;
459
+ return ref;
741
460
  }
742
461
  }
743
462
 
744
- Context
745
- ICE_OBJECT_PRX::ice_getContext() const
746
- {
747
- return _reference->getContext()->getValue();
748
- }
749
-
750
- ObjectPrxPtr
751
- ICE_OBJECT_PRX::ice_context(const Context& newContext) const
752
- {
753
- ObjectPrxPtr proxy = _newInstance();
754
- proxy->setup(_reference->changeContext(newContext));
755
- return proxy;
756
- }
757
-
758
- const string&
759
- ICE_OBJECT_PRX::ice_getFacet() const
760
- {
761
- return _reference->getFacet();
762
- }
763
-
764
- ObjectPrxPtr
765
- ICE_OBJECT_PRX::ice_facet(const string& newFacet) const
463
+ ReferencePtr
464
+ Ice::ObjectPrx::_invocationTimeout(chrono::milliseconds newTimeout) const
766
465
  {
767
- if(newFacet == _reference->getFacet())
466
+ if (newTimeout == _reference->getInvocationTimeout())
768
467
  {
769
- return CONST_POINTER_CAST_OBJECT_PRX;
468
+ return _reference;
770
469
  }
771
470
  else
772
471
  {
773
- #ifdef ICE_CPP11_MAPPING
774
- auto proxy = createProxy<ObjectPrx>();
775
- #else
776
- ObjectPrx proxy = new IceProxy::Ice::Object;
777
- #endif
778
- proxy->setup(_reference->changeFacet(newFacet));
779
- return proxy;
472
+ return _reference->changeInvocationTimeout(newTimeout);
780
473
  }
781
474
  }
782
475
 
783
- string
784
- ICE_OBJECT_PRX::ice_getAdapterId() const
785
- {
786
- return _reference->getAdapterId();
787
- }
788
-
789
- ObjectPrxPtr
790
- ICE_OBJECT_PRX::ice_adapterId(const string& newAdapterId) const
476
+ ReferencePtr
477
+ Ice::ObjectPrx::_locator(const std::optional<LocatorPrx>& locator) const
791
478
  {
792
- if(newAdapterId == _reference->getAdapterId())
479
+ ReferencePtr ref = _reference->changeLocator(locator);
480
+ if (*ref == *_reference)
793
481
  {
794
- return CONST_POINTER_CAST_OBJECT_PRX;
482
+ return _reference;
795
483
  }
796
484
  else
797
485
  {
798
- ObjectPrxPtr proxy = _newInstance();
799
- proxy->setup(_reference->changeAdapterId(newAdapterId));
800
- return proxy;
486
+ return ref;
801
487
  }
802
488
  }
803
489
 
804
- EndpointSeq
805
- ICE_OBJECT_PRX::ice_getEndpoints() const
490
+ ReferencePtr
491
+ Ice::ObjectPrx::_locatorCacheTimeout(chrono::milliseconds newTimeout) const
806
492
  {
807
- vector<EndpointIPtr> endpoints = _reference->getEndpoints();
808
- EndpointSeq retSeq;
809
- for(vector<EndpointIPtr>::const_iterator p = endpoints.begin(); p != endpoints.end(); ++p)
493
+ if (newTimeout == _reference->getLocatorCacheTimeout())
810
494
  {
811
- retSeq.push_back(ICE_DYNAMIC_CAST(Endpoint, *p));
495
+ return _reference;
812
496
  }
813
- return retSeq;
814
- }
815
-
816
- ObjectPrxPtr
817
- ICE_OBJECT_PRX::ice_endpoints(const EndpointSeq& newEndpoints) const
818
- {
819
- vector<EndpointIPtr> endpoints;
820
- for(EndpointSeq::const_iterator p = newEndpoints.begin(); p != newEndpoints.end(); ++p)
497
+ else
821
498
  {
822
- endpoints.push_back(ICE_DYNAMIC_CAST(EndpointI, *p));
499
+ return _reference->changeLocatorCacheTimeout(newTimeout);
823
500
  }
501
+ }
824
502
 
825
- if(endpoints == _reference->getEndpoints())
503
+ ReferencePtr
504
+ Ice::ObjectPrx::_oneway() const
505
+ {
506
+ if (_reference->getMode() == Reference::ModeOneway)
826
507
  {
827
- return CONST_POINTER_CAST_OBJECT_PRX;
508
+ return _reference;
828
509
  }
829
510
  else
830
511
  {
831
- ObjectPrxPtr proxy = _newInstance();
832
- proxy->setup(_reference->changeEndpoints(endpoints));
833
- return proxy;
512
+ return _reference->changeMode(Reference::ModeOneway);
834
513
  }
835
514
  }
836
515
 
837
- Int
838
- ICE_OBJECT_PRX::ice_getLocatorCacheTimeout() const
839
- {
840
- return _reference->getLocatorCacheTimeout();
841
- }
842
-
843
- ObjectPrxPtr
844
- ICE_OBJECT_PRX::ice_locatorCacheTimeout(Int newTimeout) const
845
- {
846
- if(newTimeout < -1)
847
- {
848
- ostringstream s;
849
- s << "invalid value passed to ice_locatorCacheTimeout: " << newTimeout;
850
- #ifdef ICE_CPP11_MAPPING
851
- throw invalid_argument(s.str());
852
- #else
853
- throw IceUtil::IllegalArgumentException(__FILE__, __LINE__, s.str());
854
- #endif
855
- }
856
- if(newTimeout == _reference->getLocatorCacheTimeout())
857
- {
858
- return CONST_POINTER_CAST_OBJECT_PRX;
859
- }
860
- else
861
- {
862
- ObjectPrxPtr proxy = _newInstance();
863
- proxy->setup(_reference->changeLocatorCacheTimeout(newTimeout));
864
- return proxy;
865
- }
866
- }
867
-
868
- bool
869
- ICE_OBJECT_PRX::ice_isConnectionCached() const
870
- {
871
- return _reference->getCacheConnection();
872
- }
873
-
874
- ObjectPrxPtr
875
- ICE_OBJECT_PRX::ice_connectionCached(bool newCache) const
876
- {
877
- if(newCache == _reference->getCacheConnection())
878
- {
879
- return CONST_POINTER_CAST_OBJECT_PRX;
880
- }
881
- else
882
- {
883
- ObjectPrxPtr proxy = _newInstance();
884
- proxy->setup(_reference->changeCacheConnection(newCache));
885
- return proxy;
886
- }
887
- }
888
-
889
- EndpointSelectionType
890
- ICE_OBJECT_PRX::ice_getEndpointSelection() const
891
- {
892
- return _reference->getEndpointSelection();
893
- }
894
-
895
- ObjectPrxPtr
896
- ICE_OBJECT_PRX::ice_endpointSelection(EndpointSelectionType newType) const
897
- {
898
- if(newType == _reference->getEndpointSelection())
899
- {
900
- return CONST_POINTER_CAST_OBJECT_PRX;
901
- }
902
- else
903
- {
904
- ObjectPrxPtr proxy = _newInstance();
905
- proxy->setup(_reference->changeEndpointSelection(newType));
906
- return proxy;
907
- }
908
- }
909
-
910
- bool
911
- ICE_OBJECT_PRX::ice_isSecure() const
912
- {
913
- return _reference->getSecure();
914
- }
915
-
916
- ObjectPrxPtr
917
- ICE_OBJECT_PRX::ice_secure(bool b) const
918
- {
919
- if(b == _reference->getSecure())
920
- {
921
- return CONST_POINTER_CAST_OBJECT_PRX;
922
- }
923
- else
924
- {
925
- ObjectPrxPtr proxy = _newInstance();
926
- proxy->setup(_reference->changeSecure(b));
927
- return proxy;
928
- }
929
- }
930
-
931
- ::Ice::EncodingVersion
932
- ICE_OBJECT_PRX::ice_getEncodingVersion() const
933
- {
934
- return _reference->getEncoding();
935
- }
936
-
937
- ObjectPrxPtr
938
- ICE_OBJECT_PRX::ice_encodingVersion(const ::Ice::EncodingVersion& encoding) const
939
- {
940
- if(encoding == _reference->getEncoding())
941
- {
942
- return CONST_POINTER_CAST_OBJECT_PRX;
943
- }
944
- else
945
- {
946
- ObjectPrxPtr proxy = _newInstance();
947
- proxy->setup(_reference->changeEncoding(encoding));
948
- return proxy;
949
- }
950
- }
951
-
952
- bool
953
- ICE_OBJECT_PRX::ice_isPreferSecure() const
954
- {
955
- return _reference->getPreferSecure();
956
- }
957
-
958
- ObjectPrxPtr
959
- ICE_OBJECT_PRX::ice_preferSecure(bool b) const
960
- {
961
- if(b == _reference->getPreferSecure())
962
- {
963
- return CONST_POINTER_CAST_OBJECT_PRX;
964
- }
965
- else
966
- {
967
- ObjectPrxPtr proxy = _newInstance();
968
- proxy->setup(_reference->changePreferSecure(b));
969
- return proxy;
970
- }
971
- }
972
-
973
- RouterPrxPtr
974
- ICE_OBJECT_PRX::ice_getRouter() const
975
- {
976
- RouterInfoPtr ri = _reference->getRouterInfo();
977
- #ifdef ICE_CPP11_MAPPING
978
- return ri ? ri->getRouter() : nullptr;
979
- #else
980
- return ri ? ri->getRouter() : RouterPrxPtr();
981
- #endif
982
- }
983
-
984
- ObjectPrxPtr
985
- ICE_OBJECT_PRX::ice_router(const RouterPrxPtr& router) const
516
+ ReferencePtr
517
+ Ice::ObjectPrx::_router(const std::optional<RouterPrx>& router) const
986
518
  {
987
519
  ReferencePtr ref = _reference->changeRouter(router);
988
- if(ref == _reference)
989
- {
990
- return CONST_POINTER_CAST_OBJECT_PRX;
991
- }
992
- else
993
- {
994
- ObjectPrxPtr proxy = _newInstance();
995
- proxy->setup(ref);
996
- return proxy;
997
- }
998
- }
999
-
1000
- LocatorPrxPtr
1001
- ICE_OBJECT_PRX::ice_getLocator() const
1002
- {
1003
- LocatorInfoPtr ri = _reference->getLocatorInfo();
1004
- #ifdef ICE_CPP11_MAPPING
1005
- return ri ? ri->getLocator() : nullptr;
1006
- #else
1007
- return ri ? ri->getLocator() : LocatorPrxPtr();
1008
- #endif
1009
- }
1010
-
1011
- ObjectPrxPtr
1012
- ICE_OBJECT_PRX::ice_locator(const LocatorPrxPtr& locator) const
1013
- {
1014
- ReferencePtr ref = _reference->changeLocator(locator);
1015
- if(ref == _reference)
520
+ if (*ref == *_reference)
1016
521
  {
1017
- return CONST_POINTER_CAST_OBJECT_PRX;
522
+ return _reference;
1018
523
  }
1019
524
  else
1020
525
  {
1021
- ObjectPrxPtr proxy = _newInstance();
1022
- proxy->setup(ref);
1023
- return proxy;
526
+ return ref;
1024
527
  }
1025
528
  }
1026
529
 
1027
- bool
1028
- ICE_OBJECT_PRX::ice_isCollocationOptimized() const
1029
- {
1030
- return _reference->getCollocationOptimized();
1031
- }
1032
-
1033
- ObjectPrxPtr
1034
- ICE_OBJECT_PRX::ice_collocationOptimized(bool b) const
530
+ ReferencePtr
531
+ Ice::ObjectPrx::_twoway() const
1035
532
  {
1036
- if(b == _reference->getCollocationOptimized())
533
+ if (_reference->getMode() == Reference::ModeTwoway)
1037
534
  {
1038
- return CONST_POINTER_CAST_OBJECT_PRX;
535
+ return _reference;
1039
536
  }
1040
537
  else
1041
538
  {
1042
- ObjectPrxPtr proxy = _newInstance();
1043
- proxy->setup(_reference->changeCollocationOptimized(b));
1044
- return proxy;
1045
- }
1046
- }
1047
-
1048
- Int
1049
- ICE_OBJECT_PRX::ice_getInvocationTimeout() const
1050
- {
1051
- return _reference->getInvocationTimeout();
1052
- }
1053
-
1054
- ObjectPrxPtr
1055
- ICE_OBJECT_PRX::ice_invocationTimeout(Int newTimeout) const
1056
- {
1057
- if(newTimeout < 1 && newTimeout != -1 && newTimeout != -2)
1058
- {
1059
- ostringstream s;
1060
- s << "invalid value passed to ice_invocationTimeout: " << newTimeout;
1061
- #ifdef ICE_CPP11_MAPPING
1062
- throw invalid_argument(s.str());
1063
- #else
1064
- throw IceUtil::IllegalArgumentException(__FILE__, __LINE__, s.str());
1065
- #endif
1066
- }
1067
- if(newTimeout == _reference->getInvocationTimeout())
1068
- {
1069
- return CONST_POINTER_CAST_OBJECT_PRX;
1070
- }
1071
- else
1072
- {
1073
- ObjectPrxPtr proxy = _newInstance();
1074
- proxy->setup(_reference->changeInvocationTimeout(newTimeout));
1075
- return proxy;
1076
- }
1077
- }
1078
-
1079
- ObjectPrxPtr
1080
- ICE_OBJECT_PRX::ice_twoway() const
1081
- {
1082
- if(_reference->getMode() == Reference::ModeTwoway)
1083
- {
1084
- return CONST_POINTER_CAST_OBJECT_PRX;
1085
- }
1086
- else
1087
- {
1088
- ObjectPrxPtr proxy = _newInstance();
1089
- proxy->setup(_reference->changeMode(Reference::ModeTwoway));
1090
- return proxy;
1091
- }
1092
- }
1093
-
1094
- bool
1095
- ICE_OBJECT_PRX::ice_isTwoway() const
1096
- {
1097
- return _reference->getMode() == Reference::ModeTwoway;
1098
- }
1099
-
1100
- ObjectPrxPtr
1101
- ICE_OBJECT_PRX::ice_oneway() const
1102
- {
1103
- if(_reference->getMode() == Reference::ModeOneway)
1104
- {
1105
- return CONST_POINTER_CAST_OBJECT_PRX;
1106
- }
1107
- else
1108
- {
1109
- ObjectPrxPtr proxy = _newInstance();
1110
- proxy->setup(_reference->changeMode(Reference::ModeOneway));
1111
- return proxy;
1112
- }
1113
- }
1114
-
1115
- bool
1116
- ICE_OBJECT_PRX::ice_isOneway() const
1117
- {
1118
- return _reference->getMode() == Reference::ModeOneway;
1119
- }
1120
-
1121
- ObjectPrxPtr
1122
- ICE_OBJECT_PRX::ice_batchOneway() const
1123
- {
1124
- if(_reference->getMode() == Reference::ModeBatchOneway)
1125
- {
1126
- return CONST_POINTER_CAST_OBJECT_PRX;
1127
- }
1128
- else
1129
- {
1130
- ObjectPrxPtr proxy = _newInstance();
1131
- proxy->setup(_reference->changeMode(Reference::ModeBatchOneway));
1132
- return proxy;
1133
- }
1134
- }
1135
-
1136
- bool
1137
- ICE_OBJECT_PRX::ice_isBatchOneway() const
1138
- {
1139
- return _reference->getMode() == Reference::ModeBatchOneway;
1140
- }
1141
-
1142
- ObjectPrxPtr
1143
- ICE_OBJECT_PRX::ice_datagram() const
1144
- {
1145
- if(_reference->getMode() == Reference::ModeDatagram)
1146
- {
1147
- return CONST_POINTER_CAST_OBJECT_PRX;
1148
- }
1149
- else
1150
- {
1151
- ObjectPrxPtr proxy = _newInstance();
1152
- proxy->setup(_reference->changeMode(Reference::ModeDatagram));
1153
- return proxy;
1154
- }
1155
- }
1156
-
1157
- bool
1158
- ICE_OBJECT_PRX::ice_isDatagram() const
1159
- {
1160
- return _reference->getMode() == Reference::ModeDatagram;
1161
- }
1162
-
1163
- ObjectPrxPtr
1164
- ICE_OBJECT_PRX::ice_batchDatagram() const
1165
- {
1166
- if(_reference->getMode() == Reference::ModeBatchDatagram)
1167
- {
1168
- return CONST_POINTER_CAST_OBJECT_PRX;
1169
- }
1170
- else
1171
- {
1172
- ObjectPrxPtr proxy = _newInstance();
1173
- proxy->setup(_reference->changeMode(Reference::ModeBatchDatagram));
1174
- return proxy;
1175
- }
1176
- }
1177
-
1178
- bool
1179
- ICE_OBJECT_PRX::ice_isBatchDatagram() const
1180
- {
1181
- return _reference->getMode() == Reference::ModeBatchDatagram;
1182
- }
1183
-
1184
- ObjectPrxPtr
1185
- ICE_OBJECT_PRX::ice_compress(bool b) const
1186
- {
1187
- ReferencePtr ref = _reference->changeCompress(b);
1188
- if(ref == _reference)
1189
- {
1190
- return CONST_POINTER_CAST_OBJECT_PRX;
1191
- }
1192
- else
1193
- {
1194
- ObjectPrxPtr proxy = _newInstance();
1195
- proxy->setup(ref);
1196
- return proxy;
1197
- }
1198
- }
1199
-
1200
- IceUtil::Optional<bool>
1201
- ICE_OBJECT_PRX::ice_getCompress() const
1202
- {
1203
- return _reference->getCompress();
1204
- }
1205
-
1206
- ObjectPrxPtr
1207
- ICE_OBJECT_PRX::ice_timeout(int t) const
1208
- {
1209
- if(t < 1 && t != -1)
1210
- {
1211
- ostringstream s;
1212
- s << "invalid value passed to ice_timeout: " << t;
1213
- #ifdef ICE_CPP11_MAPPING
1214
- throw invalid_argument(s.str());
1215
- #else
1216
- throw IceUtil::IllegalArgumentException(__FILE__, __LINE__, s.str());
1217
- #endif
1218
- }
1219
- ReferencePtr ref = _reference->changeTimeout(t);
1220
- if(ref == _reference)
1221
- {
1222
- return CONST_POINTER_CAST_OBJECT_PRX;
1223
- }
1224
- else
1225
- {
1226
- ObjectPrxPtr proxy = _newInstance();
1227
- proxy->setup(ref);
1228
- return proxy;
1229
- }
1230
- }
1231
-
1232
- IceUtil::Optional<int>
1233
- ICE_OBJECT_PRX::ice_getTimeout() const
1234
- {
1235
- return _reference->getTimeout();
1236
- }
1237
-
1238
- ObjectPrxPtr
1239
- ICE_OBJECT_PRX::ice_connectionId(const string& id) const
1240
- {
1241
- ReferencePtr ref = _reference->changeConnectionId(id);
1242
- if(ref == _reference)
1243
- {
1244
- return CONST_POINTER_CAST_OBJECT_PRX;
1245
- }
1246
- else
1247
- {
1248
- ObjectPrxPtr proxy = _newInstance();
1249
- proxy->setup(ref);
1250
- return proxy;
1251
- }
1252
- }
1253
-
1254
- string
1255
- ICE_OBJECT_PRX::ice_getConnectionId() const
1256
- {
1257
- return _reference->getConnectionId();
1258
- }
1259
-
1260
- ObjectPrxPtr
1261
- ICE_OBJECT_PRX::ice_fixed(const ::Ice::ConnectionPtr& connection) const
1262
- {
1263
- if(!connection)
1264
- {
1265
- #ifdef ICE_CPP11_MAPPING
1266
- throw invalid_argument("invalid null connection passed to ice_fixed");
1267
- #else
1268
- throw IceUtil::IllegalArgumentException(__FILE__, __LINE__, "invalid null connection passed to ice_fixed");
1269
- #endif
1270
- }
1271
- ::Ice::ConnectionIPtr impl = ICE_DYNAMIC_CAST(::Ice::ConnectionI, connection);
1272
- if(!impl)
1273
- {
1274
- #ifdef ICE_CPP11_MAPPING
1275
- throw invalid_argument("invalid connection passed to ice_fixed");
1276
- #else
1277
- throw IceUtil::IllegalArgumentException(__FILE__, __LINE__, "invalid connection passed to ice_fixed");
1278
- #endif
1279
- }
1280
- ReferencePtr ref = _reference->changeConnection(impl);
1281
- if(ref == _reference)
1282
- {
1283
- return CONST_POINTER_CAST_OBJECT_PRX;
1284
- }
1285
- else
1286
- {
1287
- ObjectPrxPtr proxy = _newInstance();
1288
- proxy->setup(ref);
1289
- return proxy;
1290
- }
1291
- }
1292
-
1293
- bool
1294
- ICE_OBJECT_PRX::ice_isFixed() const
1295
- {
1296
- return FixedReferencePtr::dynamicCast(_reference);
1297
- }
1298
-
1299
- ConnectionPtr
1300
- ICE_OBJECT_PRX::ice_getCachedConnection() const
1301
- {
1302
- RequestHandlerPtr handler;
1303
- {
1304
- IceUtil::Mutex::Lock sync(_mutex);
1305
- handler = _requestHandler;
1306
- }
1307
-
1308
- if(handler)
1309
- {
1310
- try
1311
- {
1312
- return handler->getConnection();
1313
- }
1314
- catch(const LocalException&)
1315
- {
1316
- }
1317
- }
1318
- return 0;
1319
- }
1320
-
1321
- void
1322
- ICE_OBJECT_PRX::setup(const ReferencePtr& ref)
1323
- {
1324
- //
1325
- // No need to synchronize "*this", as this operation is only
1326
- // called upon initialization.
1327
- //
1328
-
1329
- assert(!_reference);
1330
- assert(!_requestHandler);
1331
-
1332
- _reference = ref;
1333
- }
1334
-
1335
- int
1336
- ICE_OBJECT_PRX::_handleException(const Exception& ex,
1337
- const RequestHandlerPtr& handler,
1338
- OperationMode mode,
1339
- bool sent,
1340
- int& cnt)
1341
- {
1342
- _updateRequestHandler(handler, 0); // Clear the request handler
1343
-
1344
- //
1345
- // We only retry local exception, system exceptions aren't retried.
1346
- //
1347
- // A CloseConnectionException indicates graceful server shutdown, and is therefore
1348
- // always repeatable without violating "at-most-once". That's because by sending a
1349
- // close connection message, the server guarantees that all outstanding requests
1350
- // can safely be repeated.
1351
- //
1352
- // An ObjectNotExistException can always be retried as well without violating
1353
- // "at-most-once" (see the implementation of the checkRetryAfterException method
1354
- // of the ProxyFactory class for the reasons why it can be useful).
1355
- //
1356
- // If the request didn't get sent or if it's non-mutating or idempotent it can
1357
- // also always be retried if the retry count isn't reached.
1358
- //
1359
- const LocalException* localEx = dynamic_cast<const LocalException*>(&ex);
1360
- if(localEx && (!sent ||
1361
- mode == ICE_ENUM(OperationMode, Nonmutating) || mode == ICE_ENUM(OperationMode, Idempotent) ||
1362
- dynamic_cast<const CloseConnectionException*>(&ex) ||
1363
- dynamic_cast<const ObjectNotExistException*>(&ex)))
1364
- {
1365
- try
1366
- {
1367
- return _reference->getInstance()->proxyFactory()->checkRetryAfterException(*localEx, _reference, cnt);
1368
- }
1369
- catch(const CommunicatorDestroyedException&)
1370
- {
1371
- //
1372
- // The communicator is already destroyed, so we cannot retry.
1373
- //
1374
- ex.ice_throw();
1375
- }
1376
- }
1377
- else
1378
- {
1379
- ex.ice_throw(); // Retry could break at-most-once semantics, don't retry.
1380
- }
1381
- return 0; // Keep the compiler happy.
1382
- }
1383
-
1384
- ::IceInternal::RequestHandlerPtr
1385
- ICE_OBJECT_PRX::_getRequestHandler()
1386
- {
1387
- RequestHandlerPtr handler;
1388
- if(_reference->getCacheConnection())
1389
- {
1390
- IceUtil::Mutex::Lock sync(_mutex);
1391
- if(_requestHandler)
1392
- {
1393
- return _requestHandler;
1394
- }
1395
- }
1396
- return _reference->getRequestHandler(ICE_SHARED_FROM_THIS);
1397
- }
1398
-
1399
- IceInternal::BatchRequestQueuePtr
1400
- ICE_OBJECT_PRX::_getBatchRequestQueue()
1401
- {
1402
- IceUtil::Mutex::Lock sync(_mutex);
1403
- if(!_batchRequestQueue)
1404
- {
1405
- _batchRequestQueue = _reference->getBatchRequestQueue();
1406
- }
1407
- return _batchRequestQueue;
1408
- }
1409
-
1410
- ::IceInternal::RequestHandlerPtr
1411
- ICE_OBJECT_PRX::_setRequestHandler(const ::IceInternal::RequestHandlerPtr& handler)
1412
- {
1413
- if(_reference->getCacheConnection())
1414
- {
1415
- IceUtil::Mutex::Lock sync(_mutex);
1416
- if(!_requestHandler)
1417
- {
1418
- _requestHandler = handler;
1419
- }
1420
- return _requestHandler;
1421
- }
1422
- return handler;
1423
- }
1424
-
1425
- void
1426
- ICE_OBJECT_PRX::_updateRequestHandler(const ::IceInternal::RequestHandlerPtr& previous,
1427
- const ::IceInternal::RequestHandlerPtr& handler)
1428
- {
1429
- if(_reference->getCacheConnection() && previous)
1430
- {
1431
- IceUtil::Mutex::Lock sync(_mutex);
1432
- if(_requestHandler && _requestHandler.get() != handler.get())
1433
- {
1434
- //
1435
- // Update the request handler only if "previous" is the same
1436
- // as the current request handler. This is called after
1437
- // connection binding by the connect request handler. We only
1438
- // replace the request handler if the current handler is the
1439
- // connect request handler.
1440
- //
1441
- _requestHandler = _requestHandler->update(previous, handler);
1442
- }
1443
- }
1444
- }
1445
-
1446
- void
1447
- ICE_OBJECT_PRX::_copyFrom(const ObjectPrxPtr& from)
1448
- {
1449
- IceUtil::Mutex::Lock sync(from->_mutex);
1450
- _reference = from->_reference;
1451
- _requestHandler = from->_requestHandler;
1452
- }
1453
-
1454
- CommunicatorPtr
1455
- ICE_OBJECT_PRX::ice_getCommunicator() const
1456
- {
1457
- return _reference->getCommunicator();
1458
- }
1459
-
1460
- string
1461
- ICE_OBJECT_PRX::ice_toString() const
1462
- {
1463
- //
1464
- // Returns the stringified proxy. There's no need to convert the
1465
- // string to a native string: a stringified proxy only contains
1466
- // printable ASCII which is a subset of all native character sets.
1467
- //
1468
- return _reference->toString();
1469
- }
1470
-
1471
- Int
1472
- ICE_OBJECT_PRX::_hash() const
1473
- {
1474
- return _reference->hash();
1475
- }
1476
-
1477
- void
1478
- ICE_OBJECT_PRX::_write(OutputStream& os) const
1479
- {
1480
- os.write(_getReference()->getIdentity());
1481
- _getReference()->streamWrite(&os);
1482
- }
1483
-
1484
- bool
1485
- Ice::proxyIdentityLess(const ObjectPrxPtr& lhs, const ObjectPrxPtr& rhs)
1486
- {
1487
- if(!lhs && !rhs)
1488
- {
1489
- return false;
1490
- }
1491
- else if(!lhs && rhs)
1492
- {
1493
- return true;
1494
- }
1495
- else if(lhs && !rhs)
1496
- {
1497
- return false;
1498
- }
1499
- else
1500
- {
1501
- return lhs->ice_getIdentity() < rhs->ice_getIdentity();
1502
- }
1503
- }
1504
-
1505
- bool
1506
- Ice::proxyIdentityEqual(const ObjectPrxPtr& lhs, const ObjectPrxPtr& rhs)
1507
- {
1508
- if(!lhs && !rhs)
1509
- {
1510
- return true;
1511
- }
1512
- else if(!lhs && rhs)
1513
- {
1514
- return false;
1515
- }
1516
- else if(lhs && !rhs)
1517
- {
1518
- return false;
1519
- }
1520
- else
1521
- {
1522
- return lhs->ice_getIdentity() == rhs->ice_getIdentity();
1523
- }
1524
- }
1525
-
1526
- bool
1527
- Ice::proxyIdentityAndFacetLess(const ObjectPrxPtr& lhs, const ObjectPrxPtr& rhs)
1528
- {
1529
- if(!lhs && !rhs)
1530
- {
1531
- return false;
1532
- }
1533
- else if(!lhs && rhs)
1534
- {
1535
- return true;
1536
- }
1537
- else if(lhs && !rhs)
1538
- {
1539
- return false;
1540
- }
1541
- else
1542
- {
1543
- Identity lhsIdentity = lhs->ice_getIdentity();
1544
- Identity rhsIdentity = rhs->ice_getIdentity();
1545
-
1546
- if(lhsIdentity < rhsIdentity)
1547
- {
1548
- return true;
1549
- }
1550
- else if(rhsIdentity < lhsIdentity)
1551
- {
1552
- return false;
1553
- }
1554
-
1555
- string lhsFacet = lhs->ice_getFacet();
1556
- string rhsFacet = rhs->ice_getFacet();
1557
-
1558
- if(lhsFacet < rhsFacet)
1559
- {
1560
- return true;
1561
- }
1562
- else if(rhsFacet < lhsFacet)
1563
- {
1564
- return false;
1565
- }
1566
-
1567
- return false;
1568
- }
1569
- }
1570
-
1571
- bool
1572
- Ice::proxyIdentityAndFacetEqual(const ObjectPrxPtr& lhs, const ObjectPrxPtr& rhs)
1573
- {
1574
- if(!lhs && !rhs)
1575
- {
1576
- return true;
1577
- }
1578
- else if(!lhs && rhs)
1579
- {
1580
- return false;
1581
- }
1582
- else if(lhs && !rhs)
1583
- {
1584
- return false;
1585
- }
1586
- else
1587
- {
1588
- Identity lhsIdentity = lhs->ice_getIdentity();
1589
- Identity rhsIdentity = rhs->ice_getIdentity();
1590
-
1591
- if(lhsIdentity == rhsIdentity)
1592
- {
1593
- string lhsFacet = lhs->ice_getFacet();
1594
- string rhsFacet = rhs->ice_getFacet();
1595
-
1596
- if(lhsFacet == rhsFacet)
1597
- {
1598
- return true;
1599
- }
1600
- }
1601
-
1602
- return false;
539
+ return _reference->changeMode(Reference::ModeTwoway);
1603
540
  }
1604
541
  }