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,1850 +1,496 @@
1
- //
2
- // Copyright (c) ZeroC, Inc. All rights reserved.
3
- //
4
- //
5
- // Ice version 3.7.11
6
- //
7
- // <auto-generated>
8
- //
9
- // Generated from file `Router.ice'
10
- //
11
- // Warning: do not edit this file.
12
- //
13
- // </auto-generated>
14
- //
15
-
16
- #ifndef __Ice_Router_h__
17
- #define __Ice_Router_h__
18
-
19
- #include <IceUtil/PushDisableWarnings.h>
20
- #include <Ice/ProxyF.h>
21
- #include <Ice/ObjectF.h>
22
- #include <Ice/ValueF.h>
23
- #include <Ice/Exception.h>
24
- #include <Ice/LocalObject.h>
25
- #include <Ice/StreamHelpers.h>
26
- #include <Ice/Comparable.h>
27
- #include <Ice/Proxy.h>
28
- #include <Ice/Object.h>
29
- #include <Ice/GCObject.h>
30
- #include <Ice/Value.h>
31
- #include <Ice/Incoming.h>
32
- #include <Ice/FactoryTableInit.h>
33
- #include <IceUtil/ScopedArray.h>
34
- #include <Ice/Optional.h>
35
- #include <Ice/BuiltinSequences.h>
36
- #include <IceUtil/UndefSysMacros.h>
37
-
38
- #ifndef ICE_IGNORE_VERSION
39
- # if ICE_INT_VERSION / 100 != 307
1
+ // Copyright (c) ZeroC, Inc.
2
+
3
+ // slice2cpp version 3.8.1
4
+ // <auto-generated>Generated from Slice file 'Router.ice'.</auto-generated>
5
+ // clang-format off
6
+
7
+ #ifndef Ice_Router_h_
8
+ #define Ice_Router_h_
9
+
10
+ #include <Ice/PushDisableWarnings.h>
11
+ #include <Ice/Ice.h>
12
+ #include "BuiltinSequences.h"
13
+
14
+ #ifndef ICE_DISABLE_VERSION
15
+ # if ICE_INT_VERSION / 100 != 308
40
16
  # error Ice version mismatch!
41
17
  # endif
42
18
  # if ICE_INT_VERSION % 100 >= 50
43
19
  # error Beta header file detected
44
20
  # endif
45
- # if ICE_INT_VERSION % 100 < 11
21
+ # if ICE_INT_VERSION % 100 < 1
46
22
  # error Ice patch level mismatch!
47
23
  # endif
48
24
  #endif
49
25
 
50
- #ifndef ICE_API
51
- # if defined(ICE_STATIC_LIBS)
52
- # define ICE_API /**/
53
- # elif defined(ICE_API_EXPORTS)
54
- # define ICE_API ICE_DECLSPEC_EXPORT
55
- # else
56
- # define ICE_API ICE_DECLSPEC_IMPORT
57
- # endif
58
- #endif
59
-
60
- #ifdef ICE_CPP11_MAPPING // C++11 mapping
61
-
62
- namespace Ice
63
- {
64
-
65
- class Router;
66
- class RouterPrx;
67
- class RouterFinder;
68
- class RouterFinderPrx;
69
-
70
- }
71
-
72
- namespace Ice
73
- {
74
-
75
- /**
76
- * The Ice router interface. Routers can be set either globally with
77
- * {@link Communicator#setDefaultRouter}, or with <code>ice_router</code> on specific
78
- * proxies.
79
- * \headerfile Ice/Ice.h
80
- */
81
- class ICE_API Router : public virtual Object
82
- {
83
- public:
84
-
85
- using ProxyType = RouterPrx;
86
-
87
- /**
88
- * Determines whether this object supports an interface with the given Slice type ID.
89
- * @param id The fully-scoped Slice type ID.
90
- * @param current The Current object for the invocation.
91
- * @return True if this object supports the interface, false, otherwise.
92
- */
93
- virtual bool ice_isA(::std::string id, const Current& current) const override;
94
-
95
- /**
96
- * Obtains a list of the Slice type IDs representing the interfaces supported by this object.
97
- * @param current The Current object for the invocation.
98
- * @return A list of fully-scoped type IDs.
99
- */
100
- virtual ::std::vector<::std::string> ice_ids(const Current& current) const override;
101
-
102
- /**
103
- * Obtains a Slice type ID representing the most-derived interface supported by this object.
104
- * @param current The Current object for the invocation.
105
- * @return A fully-scoped type ID.
106
- */
107
- virtual ::std::string ice_id(const Current& current) const override;
108
-
109
- /**
110
- * Obtains the Slice type ID corresponding to this class.
111
- * @return A fully-scoped type ID.
112
- */
113
- static const ::std::string& ice_staticId();
114
-
115
- /**
116
- * Encapsulates the results of a call to getClientProxy.
117
- */
118
- struct GetClientProxyResult
119
- {
120
- /** The router's client proxy. */
121
- ::std::shared_ptr<ObjectPrx> returnValue;
122
- /** Indicates whether or not the router supports a routing table. */
123
- Ice::optional<bool> hasRoutingTable;
124
- };
125
-
126
- /**
127
- * Get the router's client proxy, i.e., the proxy to use for
128
- * forwarding requests from the client to the router.
129
- *
130
- * If a null proxy is returned, the client will forward requests
131
- * to the router's endpoints.
132
- * @param hasRoutingTable Indicates whether or not the router supports a routing
133
- * table. If it is supported, the Ice runtime will call addProxies to populate the
134
- * routing table. This out parameter is only supported starting with Ice 3.7.
135
- * The Ice runtime assumes the router has a routing table if the optional is not
136
- * set.
137
- * @param current The Current object for the invocation.
138
- * @return The router's client proxy.
139
- */
140
- virtual ::std::shared_ptr<ObjectPrx> getClientProxy(Ice::optional<bool>& hasRoutingTable, const Current& current) const = 0;
141
- /// \cond INTERNAL
142
- bool _iceD_getClientProxy(::IceInternal::Incoming&, const Current&) const;
143
- /// \endcond
144
-
145
- /**
146
- * Get the router's server proxy, i.e., the proxy to use for
147
- * forwarding requests from the server to the router.
148
- * @param current The Current object for the invocation.
149
- * @return The router's server proxy.
150
- */
151
- virtual ::std::shared_ptr<ObjectPrx> getServerProxy(const Current& current) const = 0;
152
- /// \cond INTERNAL
153
- bool _iceD_getServerProxy(::IceInternal::Incoming&, const Current&) const;
154
- /// \endcond
155
-
156
- /**
157
- * Add new proxy information to the router's routing table.
158
- * @param proxies The proxies to add.
159
- * @param current The Current object for the invocation.
160
- * @return Proxies discarded by the router.
161
- */
162
- virtual ObjectProxySeq addProxies(ObjectProxySeq proxies, const Current& current) = 0;
163
- /// \cond INTERNAL
164
- bool _iceD_addProxies(::IceInternal::Incoming&, const Current&);
165
- /// \endcond
166
-
167
- /// \cond INTERNAL
168
- virtual bool _iceDispatch(::IceInternal::Incoming&, const Current&) override;
169
- /// \endcond
170
- };
171
-
172
- /**
173
- * This interface should be implemented by services implementing the
174
- * Ice::Router interface. It should be advertised through an Ice
175
- * object with the identity `Ice/RouterFinder'. This allows clients to
176
- * retrieve the router proxy with just the endpoint information of the
177
- * service.
178
- * \headerfile Ice/Ice.h
179
- */
180
- class ICE_API RouterFinder : public virtual Object
181
- {
182
- public:
183
-
184
- using ProxyType = RouterFinderPrx;
185
-
186
- /**
187
- * Determines whether this object supports an interface with the given Slice type ID.
188
- * @param id The fully-scoped Slice type ID.
189
- * @param current The Current object for the invocation.
190
- * @return True if this object supports the interface, false, otherwise.
191
- */
192
- virtual bool ice_isA(::std::string id, const Current& current) const override;
193
-
194
- /**
195
- * Obtains a list of the Slice type IDs representing the interfaces supported by this object.
196
- * @param current The Current object for the invocation.
197
- * @return A list of fully-scoped type IDs.
198
- */
199
- virtual ::std::vector<::std::string> ice_ids(const Current& current) const override;
200
-
201
- /**
202
- * Obtains a Slice type ID representing the most-derived interface supported by this object.
203
- * @param current The Current object for the invocation.
204
- * @return A fully-scoped type ID.
205
- */
206
- virtual ::std::string ice_id(const Current& current) const override;
207
-
208
- /**
209
- * Obtains the Slice type ID corresponding to this class.
210
- * @return A fully-scoped type ID.
211
- */
212
- static const ::std::string& ice_staticId();
213
-
214
- /**
215
- * Get the router proxy implemented by the process hosting this
216
- * finder object. The proxy might point to several replicas.
217
- * @param current The Current object for the invocation.
218
- * @return The router proxy.
219
- */
220
- virtual ::std::shared_ptr<RouterPrx> getRouter(const Current& current) = 0;
221
- /// \cond INTERNAL
222
- bool _iceD_getRouter(::IceInternal::Incoming&, const Current&);
223
- /// \endcond
224
-
225
- /// \cond INTERNAL
226
- virtual bool _iceDispatch(::IceInternal::Incoming&, const Current&) override;
227
- /// \endcond
228
- };
229
-
230
- }
231
-
232
- namespace Ice
233
- {
234
-
235
- /**
236
- * The Ice router interface. Routers can be set either globally with
237
- * {@link Communicator#setDefaultRouter}, or with <code>ice_router</code> on specific
238
- * proxies.
239
- * \headerfile Ice/Ice.h
240
- */
241
- class ICE_CLASS(ICE_API) RouterPrx : public virtual Proxy<RouterPrx, ObjectPrx>
242
- {
243
- public:
244
-
245
- /**
246
- * Get the router's client proxy, i.e., the proxy to use for
247
- * forwarding requests from the client to the router.
248
- *
249
- * If a null proxy is returned, the client will forward requests
250
- * to the router's endpoints.
251
- * @param hasRoutingTable Indicates whether or not the router supports a routing
252
- * table. If it is supported, the Ice runtime will call addProxies to populate the
253
- * routing table. This out parameter is only supported starting with Ice 3.7.
254
- * The Ice runtime assumes the router has a routing table if the optional is not
255
- * set.
256
- * @param context The Context map to send with the invocation.
257
- * @return The router's client proxy.
258
- */
259
- ::std::shared_ptr<ObjectPrx> getClientProxy(Ice::optional<bool>& hasRoutingTable, const Context& context = noExplicitContext)
260
- {
261
- auto _result = _makePromiseOutgoing<Router::GetClientProxyResult>(true, this, &RouterPrx::_iceI_getClientProxy, context).get();
262
- hasRoutingTable = _result.hasRoutingTable;
263
- return ::std::move(_result.returnValue);
264
- }
265
-
266
- /**
267
- * Get the router's client proxy, i.e., the proxy to use for
268
- * forwarding requests from the client to the router.
269
- *
270
- * If a null proxy is returned, the client will forward requests
271
- * to the router's endpoints.
272
- * @param context The Context map to send with the invocation.
273
- * @return The future object for the invocation.
274
- */
275
- template<template<typename> class P = ::std::promise>
276
- auto getClientProxyAsync(const Context& context = noExplicitContext)
277
- -> decltype(::std::declval<P<Router::GetClientProxyResult>>().get_future())
278
- {
279
- return _makePromiseOutgoing<Router::GetClientProxyResult, P>(false, this, &RouterPrx::_iceI_getClientProxy, context);
280
- }
281
-
282
- /**
283
- * Get the router's client proxy, i.e., the proxy to use for
284
- * forwarding requests from the client to the router.
285
- *
286
- * If a null proxy is returned, the client will forward requests
287
- * to the router's endpoints.
288
- * @param response The response callback.
289
- * @param ex The exception callback.
290
- * @param sent The sent callback.
291
- * @param context The Context map to send with the invocation.
292
- * @return A function that can be called to cancel the invocation locally.
293
- */
294
- ::std::function<void()>
295
- getClientProxyAsync(::std::function<void(::std::shared_ptr<::Ice::ObjectPrx>, Ice::optional<bool>)> response,
296
- ::std::function<void(::std::exception_ptr)> ex = nullptr,
297
- ::std::function<void(bool)> sent = nullptr,
298
- const Context& context = noExplicitContext)
299
- {
300
- auto _responseCb = [response](Router::GetClientProxyResult&& _result)
301
- {
302
- response(::std::move(_result.returnValue), _result.hasRoutingTable);
303
- };
304
- return _makeLambdaOutgoing<Router::GetClientProxyResult>(std::move(_responseCb), std::move(ex), std::move(sent), this, &Ice::RouterPrx::_iceI_getClientProxy, context);
305
- }
306
-
307
- /// \cond INTERNAL
308
- ICE_MEMBER(ICE_API) void _iceI_getClientProxy(const ::std::shared_ptr<::IceInternal::OutgoingAsyncT<Router::GetClientProxyResult>>&, const Context&);
309
- /// \endcond
310
-
311
- /**
312
- * Get the router's server proxy, i.e., the proxy to use for
313
- * forwarding requests from the server to the router.
314
- * @param context The Context map to send with the invocation.
315
- * @return The router's server proxy.
316
- */
317
- ::std::shared_ptr<ObjectPrx> getServerProxy(const Context& context = noExplicitContext)
318
- {
319
- return _makePromiseOutgoing<::std::shared_ptr<::Ice::ObjectPrx>>(true, this, &RouterPrx::_iceI_getServerProxy, context).get();
320
- }
321
-
322
- /**
323
- * Get the router's server proxy, i.e., the proxy to use for
324
- * forwarding requests from the server to the router.
325
- * @param context The Context map to send with the invocation.
326
- * @return The future object for the invocation.
327
- */
328
- template<template<typename> class P = ::std::promise>
329
- auto getServerProxyAsync(const Context& context = noExplicitContext)
330
- -> decltype(::std::declval<P<::std::shared_ptr<::Ice::ObjectPrx>>>().get_future())
331
- {
332
- return _makePromiseOutgoing<::std::shared_ptr<::Ice::ObjectPrx>, P>(false, this, &RouterPrx::_iceI_getServerProxy, context);
333
- }
334
-
335
- /**
336
- * Get the router's server proxy, i.e., the proxy to use for
337
- * forwarding requests from the server to the router.
338
- * @param response The response callback.
339
- * @param ex The exception callback.
340
- * @param sent The sent callback.
341
- * @param context The Context map to send with the invocation.
342
- * @return A function that can be called to cancel the invocation locally.
343
- */
344
- ::std::function<void()>
345
- getServerProxyAsync(::std::function<void(::std::shared_ptr<::Ice::ObjectPrx>)> response,
346
- ::std::function<void(::std::exception_ptr)> ex = nullptr,
347
- ::std::function<void(bool)> sent = nullptr,
348
- const Context& context = noExplicitContext)
349
- {
350
- return _makeLambdaOutgoing<::std::shared_ptr<::Ice::ObjectPrx>>(std::move(response), std::move(ex), std::move(sent), this, &Ice::RouterPrx::_iceI_getServerProxy, context);
351
- }
352
-
353
- /// \cond INTERNAL
354
- ICE_MEMBER(ICE_API) void _iceI_getServerProxy(const ::std::shared_ptr<::IceInternal::OutgoingAsyncT<::std::shared_ptr<::Ice::ObjectPrx>>>&, const Context&);
355
- /// \endcond
356
-
357
- /**
358
- * Add new proxy information to the router's routing table.
359
- * @param proxies The proxies to add.
360
- * @param context The Context map to send with the invocation.
361
- * @return Proxies discarded by the router.
362
- */
363
- ObjectProxySeq addProxies(const ObjectProxySeq& proxies, const Context& context = noExplicitContext)
364
- {
365
- return _makePromiseOutgoing<::Ice::ObjectProxySeq>(true, this, &RouterPrx::_iceI_addProxies, proxies, context).get();
366
- }
367
-
368
- /**
369
- * Add new proxy information to the router's routing table.
370
- * @param proxies The proxies to add.
371
- * @param context The Context map to send with the invocation.
372
- * @return The future object for the invocation.
373
- */
374
- template<template<typename> class P = ::std::promise>
375
- auto addProxiesAsync(const ObjectProxySeq& proxies, const Context& context = noExplicitContext)
376
- -> decltype(::std::declval<P<::Ice::ObjectProxySeq>>().get_future())
377
- {
378
- return _makePromiseOutgoing<::Ice::ObjectProxySeq, P>(false, this, &RouterPrx::_iceI_addProxies, proxies, context);
379
- }
380
-
381
- /**
382
- * Add new proxy information to the router's routing table.
383
- * @param proxies The proxies to add.
384
- * @param response The response callback.
385
- * @param ex The exception callback.
386
- * @param sent The sent callback.
387
- * @param context The Context map to send with the invocation.
388
- * @return A function that can be called to cancel the invocation locally.
389
- */
390
- ::std::function<void()>
391
- addProxiesAsync(const ObjectProxySeq& proxies,
392
- ::std::function<void(::Ice::ObjectProxySeq)> response,
393
- ::std::function<void(::std::exception_ptr)> ex = nullptr,
394
- ::std::function<void(bool)> sent = nullptr,
395
- const Context& context = noExplicitContext)
396
- {
397
- return _makeLambdaOutgoing<::Ice::ObjectProxySeq>(std::move(response), std::move(ex), std::move(sent), this, &Ice::RouterPrx::_iceI_addProxies, proxies, context);
398
- }
399
-
400
- /// \cond INTERNAL
401
- ICE_MEMBER(ICE_API) void _iceI_addProxies(const ::std::shared_ptr<::IceInternal::OutgoingAsyncT<::Ice::ObjectProxySeq>>&, const ObjectProxySeq&, const Context&);
402
- /// \endcond
403
-
404
- /**
405
- * Obtains the Slice type ID of this interface.
406
- * @return The fully-scoped type ID.
407
- */
408
- ICE_MEMBER(ICE_API) static const ::std::string& ice_staticId();
409
-
410
- protected:
411
-
412
- /// \cond INTERNAL
413
- RouterPrx() = default;
414
- friend ::std::shared_ptr<RouterPrx> IceInternal::createProxy<RouterPrx>();
415
-
416
- ICE_MEMBER(ICE_API) virtual ::std::shared_ptr<ObjectPrx> _newInstance() const override;
417
- /// \endcond
418
- };
419
-
420
- /**
421
- * This interface should be implemented by services implementing the
422
- * Ice::Router interface. It should be advertised through an Ice
423
- * object with the identity `Ice/RouterFinder'. This allows clients to
424
- * retrieve the router proxy with just the endpoint information of the
425
- * service.
426
- * \headerfile Ice/Ice.h
427
- */
428
- class ICE_CLASS(ICE_API) RouterFinderPrx : public virtual Proxy<RouterFinderPrx, ObjectPrx>
429
- {
430
- public:
431
-
432
- /**
433
- * Get the router proxy implemented by the process hosting this
434
- * finder object. The proxy might point to several replicas.
435
- * @param context The Context map to send with the invocation.
436
- * @return The router proxy.
437
- */
438
- ::std::shared_ptr<RouterPrx> getRouter(const Context& context = noExplicitContext)
439
- {
440
- return _makePromiseOutgoing<::std::shared_ptr<::Ice::RouterPrx>>(true, this, &RouterFinderPrx::_iceI_getRouter, context).get();
441
- }
442
-
443
- /**
444
- * Get the router proxy implemented by the process hosting this
445
- * finder object. The proxy might point to several replicas.
446
- * @param context The Context map to send with the invocation.
447
- * @return The future object for the invocation.
448
- */
449
- template<template<typename> class P = ::std::promise>
450
- auto getRouterAsync(const Context& context = noExplicitContext)
451
- -> decltype(::std::declval<P<::std::shared_ptr<::Ice::RouterPrx>>>().get_future())
452
- {
453
- return _makePromiseOutgoing<::std::shared_ptr<::Ice::RouterPrx>, P>(false, this, &RouterFinderPrx::_iceI_getRouter, context);
454
- }
455
-
456
- /**
457
- * Get the router proxy implemented by the process hosting this
458
- * finder object. The proxy might point to several replicas.
459
- * @param response The response callback.
460
- * @param ex The exception callback.
461
- * @param sent The sent callback.
462
- * @param context The Context map to send with the invocation.
463
- * @return A function that can be called to cancel the invocation locally.
464
- */
465
- ::std::function<void()>
466
- getRouterAsync(::std::function<void(::std::shared_ptr<::Ice::RouterPrx>)> response,
467
- ::std::function<void(::std::exception_ptr)> ex = nullptr,
468
- ::std::function<void(bool)> sent = nullptr,
469
- const Context& context = noExplicitContext)
470
- {
471
- return _makeLambdaOutgoing<::std::shared_ptr<::Ice::RouterPrx>>(std::move(response), std::move(ex), std::move(sent), this, &Ice::RouterFinderPrx::_iceI_getRouter, context);
472
- }
473
-
474
- /// \cond INTERNAL
475
- ICE_MEMBER(ICE_API) void _iceI_getRouter(const ::std::shared_ptr<::IceInternal::OutgoingAsyncT<::std::shared_ptr<::Ice::RouterPrx>>>&, const Context&);
476
- /// \endcond
477
-
478
- /**
479
- * Obtains the Slice type ID of this interface.
480
- * @return The fully-scoped type ID.
481
- */
482
- ICE_MEMBER(ICE_API) static const ::std::string& ice_staticId();
483
-
484
- protected:
485
-
486
- /// \cond INTERNAL
487
- RouterFinderPrx() = default;
488
- friend ::std::shared_ptr<RouterFinderPrx> IceInternal::createProxy<RouterFinderPrx>();
489
-
490
- ICE_MEMBER(ICE_API) virtual ::std::shared_ptr<ObjectPrx> _newInstance() const override;
491
- /// \endcond
492
- };
493
-
494
- }
495
-
496
- /// \cond STREAM
497
- namespace Ice
498
- {
499
-
500
- }
501
- /// \endcond
502
-
503
- /// \cond INTERNAL
504
- namespace Ice
505
- {
506
-
507
- using RouterPtr = ::std::shared_ptr<Router>;
508
- using RouterPrxPtr = ::std::shared_ptr<RouterPrx>;
509
-
510
- using RouterFinderPtr = ::std::shared_ptr<RouterFinder>;
511
- using RouterFinderPrxPtr = ::std::shared_ptr<RouterFinderPrx>;
512
-
513
- }
514
- /// \endcond
515
-
516
- #else // C++98 mapping
517
-
518
- namespace IceProxy
519
- {
520
-
521
- namespace Ice
522
- {
523
-
524
- class Router;
525
- /// \cond INTERNAL
526
- ICE_API void _readProxy(::Ice::InputStream*, ::IceInternal::ProxyHandle< Router>&);
527
- ICE_API ::IceProxy::Ice::Object* upCast(Router*);
528
- /// \endcond
529
-
530
- class RouterFinder;
531
- /// \cond INTERNAL
532
- ICE_API void _readProxy(::Ice::InputStream*, ::IceInternal::ProxyHandle< RouterFinder>&);
533
- ICE_API ::IceProxy::Ice::Object* upCast(RouterFinder*);
534
- /// \endcond
535
-
536
- }
537
-
538
- }
26
+ // NOLINTBEGIN(modernize-concat-nested-namespaces)
539
27
 
540
28
  namespace Ice
541
29
  {
30
+ class RouterPrx;
542
31
 
543
- class Router;
544
- /// \cond INTERNAL
545
- ICE_API Object* upCast(Router*);
546
- /// \endcond
547
- typedef ::IceInternal::Handle< Router> RouterPtr;
548
- typedef ::IceInternal::ProxyHandle< ::IceProxy::Ice::Router> RouterPrx;
549
- typedef RouterPrx RouterPrxPtr;
550
- /// \cond INTERNAL
551
- ICE_API void _icePatchObjectPtr(RouterPtr&, const ObjectPtr&);
552
- /// \endcond
553
-
554
- class RouterFinder;
555
- /// \cond INTERNAL
556
- ICE_API Object* upCast(RouterFinder*);
557
- /// \endcond
558
- typedef ::IceInternal::Handle< RouterFinder> RouterFinderPtr;
559
- typedef ::IceInternal::ProxyHandle< ::IceProxy::Ice::RouterFinder> RouterFinderPrx;
560
- typedef RouterFinderPrx RouterFinderPrxPtr;
561
- /// \cond INTERNAL
562
- ICE_API void _icePatchObjectPtr(RouterFinderPtr&, const ObjectPtr&);
563
- /// \endcond
564
-
565
- }
566
-
567
- namespace Ice
568
- {
569
-
570
- /**
571
- * Base class for asynchronous callback wrapper classes used for calls to
572
- * IceProxy::Ice::Router::begin_getClientProxy.
573
- * Create a wrapper instance by calling ::Ice::newCallback_Router_getClientProxy.
574
- */
575
- class Callback_Router_getClientProxy_Base : public virtual ::IceInternal::CallbackBase { };
576
- typedef ::IceUtil::Handle< Callback_Router_getClientProxy_Base> Callback_Router_getClientProxyPtr;
577
-
578
- /**
579
- * Base class for asynchronous callback wrapper classes used for calls to
580
- * IceProxy::Ice::Router::begin_getServerProxy.
581
- * Create a wrapper instance by calling ::Ice::newCallback_Router_getServerProxy.
582
- */
583
- class Callback_Router_getServerProxy_Base : public virtual ::IceInternal::CallbackBase { };
584
- typedef ::IceUtil::Handle< Callback_Router_getServerProxy_Base> Callback_Router_getServerProxyPtr;
585
-
586
- /**
587
- * Base class for asynchronous callback wrapper classes used for calls to
588
- * IceProxy::Ice::Router::begin_addProxies.
589
- * Create a wrapper instance by calling ::Ice::newCallback_Router_addProxies.
590
- */
591
- class Callback_Router_addProxies_Base : public virtual ::IceInternal::CallbackBase { };
592
- typedef ::IceUtil::Handle< Callback_Router_addProxies_Base> Callback_Router_addProxiesPtr;
593
-
594
- /**
595
- * Base class for asynchronous callback wrapper classes used for calls to
596
- * IceProxy::Ice::RouterFinder::begin_getRouter.
597
- * Create a wrapper instance by calling ::Ice::newCallback_RouterFinder_getRouter.
598
- */
599
- class Callback_RouterFinder_getRouter_Base : public virtual ::IceInternal::CallbackBase { };
600
- typedef ::IceUtil::Handle< Callback_RouterFinder_getRouter_Base> Callback_RouterFinder_getRouterPtr;
601
-
32
+ class RouterFinderPrx;
602
33
  }
603
34
 
604
- namespace IceProxy
605
- {
606
-
607
35
  namespace Ice
608
36
  {
609
-
610
- class ICE_CLASS(ICE_API) Router : public virtual ::Ice::Proxy<Router, ::IceProxy::Ice::Object>
611
- {
612
- public:
613
-
614
- /**
615
- * Get the router's client proxy, i.e., the proxy to use for
616
- * forwarding requests from the client to the router.
617
- *
618
- * If a null proxy is returned, the client will forward requests
619
- * to the router's endpoints.
620
- * @param hasRoutingTable Indicates whether or not the router supports a routing
621
- * table. If it is supported, the Ice runtime will call addProxies to populate the
622
- * routing table. This out parameter is only supported starting with Ice 3.7.
623
- * The Ice runtime assumes the router has a routing table if the optional is not
624
- * set.
625
- * @param context The Context map to send with the invocation.
626
- * @return The router's client proxy.
627
- */
628
- ICE_MEMBER(ICE_API) ::Ice::ObjectPrx getClientProxy(IceUtil::Optional<bool>& hasRoutingTable, const ::Ice::Context& context = ::Ice::noExplicitContext)
629
- {
630
- return end_getClientProxy(hasRoutingTable, _iceI_begin_getClientProxy(context, ::IceInternal::dummyCallback, 0, true));
631
- }
632
-
633
- /**
634
- * Get the router's client proxy, i.e., the proxy to use for
635
- * forwarding requests from the client to the router.
636
- *
637
- * If a null proxy is returned, the client will forward requests
638
- * to the router's endpoints.
639
- * @param context The Context map to send with the invocation.
640
- * @return The asynchronous result object for the invocation.
641
- */
642
- ::Ice::AsyncResultPtr begin_getClientProxy(const ::Ice::Context& context = ::Ice::noExplicitContext)
643
- {
644
- return _iceI_begin_getClientProxy(context, ::IceInternal::dummyCallback, 0);
645
- }
646
-
647
- /**
648
- * Get the router's client proxy, i.e., the proxy to use for
649
- * forwarding requests from the client to the router.
650
- *
651
- * If a null proxy is returned, the client will forward requests
652
- * to the router's endpoints.
653
- * @param cb Asynchronous callback object.
654
- * @param cookie User-defined data to associate with the invocation.
655
- * @return The asynchronous result object for the invocation.
656
- */
657
- ::Ice::AsyncResultPtr begin_getClientProxy(const ::Ice::CallbackPtr& cb, const ::Ice::LocalObjectPtr& cookie = 0)
658
- {
659
- return _iceI_begin_getClientProxy(::Ice::noExplicitContext, cb, cookie);
660
- }
661
-
662
- /**
663
- * Get the router's client proxy, i.e., the proxy to use for
664
- * forwarding requests from the client to the router.
665
- *
666
- * If a null proxy is returned, the client will forward requests
667
- * to the router's endpoints.
668
- * @param context The Context map to send with the invocation.
669
- * @param cb Asynchronous callback object.
670
- * @param cookie User-defined data to associate with the invocation.
671
- * @return The asynchronous result object for the invocation.
672
- */
673
- ::Ice::AsyncResultPtr begin_getClientProxy(const ::Ice::Context& context, const ::Ice::CallbackPtr& cb, const ::Ice::LocalObjectPtr& cookie = 0)
674
- {
675
- return _iceI_begin_getClientProxy(context, cb, cookie);
676
- }
677
-
678
- /**
679
- * Get the router's client proxy, i.e., the proxy to use for
680
- * forwarding requests from the client to the router.
681
- *
682
- * If a null proxy is returned, the client will forward requests
683
- * to the router's endpoints.
684
- * @param cb Asynchronous callback object.
685
- * @param cookie User-defined data to associate with the invocation.
686
- * @return The asynchronous result object for the invocation.
687
- */
688
- ::Ice::AsyncResultPtr begin_getClientProxy(const ::Ice::Callback_Router_getClientProxyPtr& cb, const ::Ice::LocalObjectPtr& cookie = 0)
689
- {
690
- return _iceI_begin_getClientProxy(::Ice::noExplicitContext, cb, cookie);
691
- }
692
-
693
- /**
694
- * Get the router's client proxy, i.e., the proxy to use for
695
- * forwarding requests from the client to the router.
696
- *
697
- * If a null proxy is returned, the client will forward requests
698
- * to the router's endpoints.
699
- * @param context The Context map to send with the invocation.
700
- * @param cb Asynchronous callback object.
701
- * @param cookie User-defined data to associate with the invocation.
702
- * @return The asynchronous result object for the invocation.
703
- */
704
- ::Ice::AsyncResultPtr begin_getClientProxy(const ::Ice::Context& context, const ::Ice::Callback_Router_getClientProxyPtr& cb, const ::Ice::LocalObjectPtr& cookie = 0)
705
- {
706
- return _iceI_begin_getClientProxy(context, cb, cookie);
707
- }
708
-
709
- /**
710
- * Completes an invocation of begin_getClientProxy.
711
- * @param hasRoutingTable Indicates whether or not the router supports a routing
712
- * table. If it is supported, the Ice runtime will call addProxies to populate the
713
- * routing table. This out parameter is only supported starting with Ice 3.7.
714
- * The Ice runtime assumes the router has a routing table if the optional is not
715
- * set.
716
- * @param result The asynchronous result object for the invocation.
717
- * @return The router's client proxy.
718
- */
719
- ICE_MEMBER(ICE_API) ::Ice::ObjectPrx end_getClientProxy(IceUtil::Optional<bool>& hasRoutingTable, const ::Ice::AsyncResultPtr& result);
720
- /// \cond INTERNAL
721
-
722
- ICE_MEMBER(ICE_API) void _iceI_end_getClientProxy(IceUtil::Optional<bool>& iceP_hasRoutingTable, ::Ice::ObjectPrxPtr& ret, const ::Ice::AsyncResultPtr&);
723
- /// \endcond
724
-
725
- private:
726
-
727
- ICE_MEMBER(ICE_API) ::Ice::AsyncResultPtr _iceI_begin_getClientProxy(const ::Ice::Context&, const ::IceInternal::CallbackBasePtr&, const ::Ice::LocalObjectPtr& cookie = 0, bool sync = false);
728
-
729
- public:
730
-
731
- /**
732
- * Get the router's server proxy, i.e., the proxy to use for
733
- * forwarding requests from the server to the router.
734
- * @param context The Context map to send with the invocation.
735
- * @return The router's server proxy.
736
- */
737
- ICE_MEMBER(ICE_API) ::Ice::ObjectPrx getServerProxy(const ::Ice::Context& context = ::Ice::noExplicitContext)
738
- {
739
- return end_getServerProxy(_iceI_begin_getServerProxy(context, ::IceInternal::dummyCallback, 0, true));
740
- }
741
-
742
- /**
743
- * Get the router's server proxy, i.e., the proxy to use for
744
- * forwarding requests from the server to the router.
745
- * @param context The Context map to send with the invocation.
746
- * @return The asynchronous result object for the invocation.
747
- */
748
- ::Ice::AsyncResultPtr begin_getServerProxy(const ::Ice::Context& context = ::Ice::noExplicitContext)
749
- {
750
- return _iceI_begin_getServerProxy(context, ::IceInternal::dummyCallback, 0);
751
- }
752
-
753
- /**
754
- * Get the router's server proxy, i.e., the proxy to use for
755
- * forwarding requests from the server to the router.
756
- * @param cb Asynchronous callback object.
757
- * @param cookie User-defined data to associate with the invocation.
758
- * @return The asynchronous result object for the invocation.
759
- */
760
- ::Ice::AsyncResultPtr begin_getServerProxy(const ::Ice::CallbackPtr& cb, const ::Ice::LocalObjectPtr& cookie = 0)
761
- {
762
- return _iceI_begin_getServerProxy(::Ice::noExplicitContext, cb, cookie);
763
- }
764
-
765
- /**
766
- * Get the router's server proxy, i.e., the proxy to use for
767
- * forwarding requests from the server to the router.
768
- * @param context The Context map to send with the invocation.
769
- * @param cb Asynchronous callback object.
770
- * @param cookie User-defined data to associate with the invocation.
771
- * @return The asynchronous result object for the invocation.
772
- */
773
- ::Ice::AsyncResultPtr begin_getServerProxy(const ::Ice::Context& context, const ::Ice::CallbackPtr& cb, const ::Ice::LocalObjectPtr& cookie = 0)
774
- {
775
- return _iceI_begin_getServerProxy(context, cb, cookie);
776
- }
777
-
778
- /**
779
- * Get the router's server proxy, i.e., the proxy to use for
780
- * forwarding requests from the server to the router.
781
- * @param cb Asynchronous callback object.
782
- * @param cookie User-defined data to associate with the invocation.
783
- * @return The asynchronous result object for the invocation.
784
- */
785
- ::Ice::AsyncResultPtr begin_getServerProxy(const ::Ice::Callback_Router_getServerProxyPtr& cb, const ::Ice::LocalObjectPtr& cookie = 0)
786
- {
787
- return _iceI_begin_getServerProxy(::Ice::noExplicitContext, cb, cookie);
788
- }
789
-
790
- /**
791
- * Get the router's server proxy, i.e., the proxy to use for
792
- * forwarding requests from the server to the router.
793
- * @param context The Context map to send with the invocation.
794
- * @param cb Asynchronous callback object.
795
- * @param cookie User-defined data to associate with the invocation.
796
- * @return The asynchronous result object for the invocation.
797
- */
798
- ::Ice::AsyncResultPtr begin_getServerProxy(const ::Ice::Context& context, const ::Ice::Callback_Router_getServerProxyPtr& cb, const ::Ice::LocalObjectPtr& cookie = 0)
799
- {
800
- return _iceI_begin_getServerProxy(context, cb, cookie);
801
- }
802
-
803
- /**
804
- * Completes an invocation of begin_getServerProxy.
805
- * @param result The asynchronous result object for the invocation.
806
- * @return The router's server proxy.
807
- */
808
- ICE_MEMBER(ICE_API) ::Ice::ObjectPrx end_getServerProxy(const ::Ice::AsyncResultPtr& result);
809
-
810
- private:
811
-
812
- ICE_MEMBER(ICE_API) ::Ice::AsyncResultPtr _iceI_begin_getServerProxy(const ::Ice::Context&, const ::IceInternal::CallbackBasePtr&, const ::Ice::LocalObjectPtr& cookie = 0, bool sync = false);
813
-
814
- public:
815
-
816
- /**
817
- * Add new proxy information to the router's routing table.
818
- * @param proxies The proxies to add.
819
- * @param context The Context map to send with the invocation.
820
- * @return Proxies discarded by the router.
821
- */
822
- ICE_MEMBER(ICE_API) ::Ice::ObjectProxySeq addProxies(const ::Ice::ObjectProxySeq& proxies, const ::Ice::Context& context = ::Ice::noExplicitContext)
823
- {
824
- return end_addProxies(_iceI_begin_addProxies(proxies, context, ::IceInternal::dummyCallback, 0, true));
825
- }
826
-
827
- /**
828
- * Add new proxy information to the router's routing table.
829
- * @param proxies The proxies to add.
830
- * @param context The Context map to send with the invocation.
831
- * @return The asynchronous result object for the invocation.
832
- */
833
- ::Ice::AsyncResultPtr begin_addProxies(const ::Ice::ObjectProxySeq& proxies, const ::Ice::Context& context = ::Ice::noExplicitContext)
834
- {
835
- return _iceI_begin_addProxies(proxies, context, ::IceInternal::dummyCallback, 0);
836
- }
837
-
838
- /**
839
- * Add new proxy information to the router's routing table.
840
- * @param proxies The proxies to add.
841
- * @param cb Asynchronous callback object.
842
- * @param cookie User-defined data to associate with the invocation.
843
- * @return The asynchronous result object for the invocation.
844
- */
845
- ::Ice::AsyncResultPtr begin_addProxies(const ::Ice::ObjectProxySeq& proxies, const ::Ice::CallbackPtr& cb, const ::Ice::LocalObjectPtr& cookie = 0)
846
- {
847
- return _iceI_begin_addProxies(proxies, ::Ice::noExplicitContext, cb, cookie);
848
- }
849
-
850
- /**
851
- * Add new proxy information to the router's routing table.
852
- * @param proxies The proxies to add.
853
- * @param context The Context map to send with the invocation.
854
- * @param cb Asynchronous callback object.
855
- * @param cookie User-defined data to associate with the invocation.
856
- * @return The asynchronous result object for the invocation.
857
- */
858
- ::Ice::AsyncResultPtr begin_addProxies(const ::Ice::ObjectProxySeq& proxies, const ::Ice::Context& context, const ::Ice::CallbackPtr& cb, const ::Ice::LocalObjectPtr& cookie = 0)
859
- {
860
- return _iceI_begin_addProxies(proxies, context, cb, cookie);
861
- }
862
-
863
- /**
864
- * Add new proxy information to the router's routing table.
865
- * @param proxies The proxies to add.
866
- * @param cb Asynchronous callback object.
867
- * @param cookie User-defined data to associate with the invocation.
868
- * @return The asynchronous result object for the invocation.
869
- */
870
- ::Ice::AsyncResultPtr begin_addProxies(const ::Ice::ObjectProxySeq& proxies, const ::Ice::Callback_Router_addProxiesPtr& cb, const ::Ice::LocalObjectPtr& cookie = 0)
871
- {
872
- return _iceI_begin_addProxies(proxies, ::Ice::noExplicitContext, cb, cookie);
873
- }
874
-
875
- /**
876
- * Add new proxy information to the router's routing table.
877
- * @param proxies The proxies to add.
878
- * @param context The Context map to send with the invocation.
879
- * @param cb Asynchronous callback object.
880
- * @param cookie User-defined data to associate with the invocation.
881
- * @return The asynchronous result object for the invocation.
882
- */
883
- ::Ice::AsyncResultPtr begin_addProxies(const ::Ice::ObjectProxySeq& proxies, const ::Ice::Context& context, const ::Ice::Callback_Router_addProxiesPtr& cb, const ::Ice::LocalObjectPtr& cookie = 0)
884
- {
885
- return _iceI_begin_addProxies(proxies, context, cb, cookie);
886
- }
887
-
888
- /**
889
- * Completes an invocation of begin_addProxies.
890
- * @param result The asynchronous result object for the invocation.
891
- * @return Proxies discarded by the router.
892
- */
893
- ICE_MEMBER(ICE_API) ::Ice::ObjectProxySeq end_addProxies(const ::Ice::AsyncResultPtr& result);
894
-
895
- private:
896
-
897
- ICE_MEMBER(ICE_API) ::Ice::AsyncResultPtr _iceI_begin_addProxies(const ::Ice::ObjectProxySeq&, const ::Ice::Context&, const ::IceInternal::CallbackBasePtr&, const ::Ice::LocalObjectPtr& cookie = 0, bool sync = false);
898
-
899
- public:
900
-
901
- /**
902
- * Obtains the Slice type ID corresponding to this interface.
903
- * @return A fully-scoped type ID.
904
- */
905
- ICE_MEMBER(ICE_API) static const ::std::string& ice_staticId();
906
-
907
- protected:
908
- /// \cond INTERNAL
909
-
910
- ICE_MEMBER(ICE_API) virtual ::IceProxy::Ice::Object* _newInstance() const;
911
- /// \endcond
912
- };
913
-
914
- class ICE_CLASS(ICE_API) RouterFinder : public virtual ::Ice::Proxy<RouterFinder, ::IceProxy::Ice::Object>
915
- {
916
- public:
917
-
918
- /**
919
- * Get the router proxy implemented by the process hosting this
920
- * finder object. The proxy might point to several replicas.
921
- * @param context The Context map to send with the invocation.
922
- * @return The router proxy.
923
- */
924
- ICE_MEMBER(ICE_API) ::Ice::RouterPrx getRouter(const ::Ice::Context& context = ::Ice::noExplicitContext)
37
+ /// Represents an intermediary object that routes requests and replies between clients and Ice objects that are not
38
+ /// directly reachable from these clients.
39
+ /// @remarks The Slice compiler generated this proxy class from Slice interface `::Ice::Router`.
40
+ /// @headerfile Ice/Ice.h
41
+ class ICE_API RouterPrx : public Ice::Proxy<RouterPrx, Ice::ObjectPrx>
925
42
  {
926
- return end_getRouter(_iceI_begin_getRouter(context, ::IceInternal::dummyCallback, 0, true));
927
- }
928
-
929
- /**
930
- * Get the router proxy implemented by the process hosting this
931
- * finder object. The proxy might point to several replicas.
932
- * @param context The Context map to send with the invocation.
933
- * @return The asynchronous result object for the invocation.
934
- */
935
- ::Ice::AsyncResultPtr begin_getRouter(const ::Ice::Context& context = ::Ice::noExplicitContext)
936
- {
937
- return _iceI_begin_getRouter(context, ::IceInternal::dummyCallback, 0);
938
- }
939
-
940
- /**
941
- * Get the router proxy implemented by the process hosting this
942
- * finder object. The proxy might point to several replicas.
943
- * @param cb Asynchronous callback object.
944
- * @param cookie User-defined data to associate with the invocation.
945
- * @return The asynchronous result object for the invocation.
946
- */
947
- ::Ice::AsyncResultPtr begin_getRouter(const ::Ice::CallbackPtr& cb, const ::Ice::LocalObjectPtr& cookie = 0)
948
- {
949
- return _iceI_begin_getRouter(::Ice::noExplicitContext, cb, cookie);
950
- }
951
-
952
- /**
953
- * Get the router proxy implemented by the process hosting this
954
- * finder object. The proxy might point to several replicas.
955
- * @param context The Context map to send with the invocation.
956
- * @param cb Asynchronous callback object.
957
- * @param cookie User-defined data to associate with the invocation.
958
- * @return The asynchronous result object for the invocation.
959
- */
960
- ::Ice::AsyncResultPtr begin_getRouter(const ::Ice::Context& context, const ::Ice::CallbackPtr& cb, const ::Ice::LocalObjectPtr& cookie = 0)
961
- {
962
- return _iceI_begin_getRouter(context, cb, cookie);
963
- }
964
-
965
- /**
966
- * Get the router proxy implemented by the process hosting this
967
- * finder object. The proxy might point to several replicas.
968
- * @param cb Asynchronous callback object.
969
- * @param cookie User-defined data to associate with the invocation.
970
- * @return The asynchronous result object for the invocation.
971
- */
972
- ::Ice::AsyncResultPtr begin_getRouter(const ::Ice::Callback_RouterFinder_getRouterPtr& cb, const ::Ice::LocalObjectPtr& cookie = 0)
973
- {
974
- return _iceI_begin_getRouter(::Ice::noExplicitContext, cb, cookie);
975
- }
976
-
977
- /**
978
- * Get the router proxy implemented by the process hosting this
979
- * finder object. The proxy might point to several replicas.
980
- * @param context The Context map to send with the invocation.
981
- * @param cb Asynchronous callback object.
982
- * @param cookie User-defined data to associate with the invocation.
983
- * @return The asynchronous result object for the invocation.
984
- */
985
- ::Ice::AsyncResultPtr begin_getRouter(const ::Ice::Context& context, const ::Ice::Callback_RouterFinder_getRouterPtr& cb, const ::Ice::LocalObjectPtr& cookie = 0)
986
- {
987
- return _iceI_begin_getRouter(context, cb, cookie);
988
- }
989
-
990
- /**
991
- * Completes an invocation of begin_getRouter.
992
- * @param result The asynchronous result object for the invocation.
993
- * @return The router proxy.
994
- */
995
- ICE_MEMBER(ICE_API) ::Ice::RouterPrx end_getRouter(const ::Ice::AsyncResultPtr& result);
996
-
997
- private:
998
-
999
- ICE_MEMBER(ICE_API) ::Ice::AsyncResultPtr _iceI_begin_getRouter(const ::Ice::Context&, const ::IceInternal::CallbackBasePtr&, const ::Ice::LocalObjectPtr& cookie = 0, bool sync = false);
1000
-
1001
- public:
1002
-
1003
- /**
1004
- * Obtains the Slice type ID corresponding to this interface.
1005
- * @return A fully-scoped type ID.
1006
- */
1007
- ICE_MEMBER(ICE_API) static const ::std::string& ice_staticId();
1008
-
1009
- protected:
1010
- /// \cond INTERNAL
1011
-
1012
- ICE_MEMBER(ICE_API) virtual ::IceProxy::Ice::Object* _newInstance() const;
1013
- /// \endcond
1014
- };
1015
-
1016
- }
1017
-
1018
- }
1019
-
1020
- namespace Ice
1021
- {
1022
-
1023
- /**
1024
- * The Ice router interface. Routers can be set either globally with
1025
- * {@link Communicator#setDefaultRouter}, or with <code>ice_router</code> on specific
1026
- * proxies.
1027
- * \headerfile Ice/Ice.h
1028
- */
1029
- class ICE_API Router : public virtual Object
1030
- {
1031
- public:
1032
-
1033
- typedef RouterPrx ProxyType;
1034
- typedef RouterPtr PointerType;
1035
-
1036
- virtual ~Router();
1037
-
1038
- #ifdef ICE_CPP11_COMPILER
1039
- Router() = default;
1040
- Router(const Router&) = default;
1041
- Router& operator=(const Router&) = default;
1042
- #endif
1043
-
1044
- /**
1045
- * Determines whether this object supports an interface with the given Slice type ID.
1046
- * @param id The fully-scoped Slice type ID.
1047
- * @param current The Current object for the invocation.
1048
- * @return True if this object supports the interface, false, otherwise.
1049
- */
1050
- virtual bool ice_isA(const ::std::string& id, const Current& current = emptyCurrent) const;
1051
-
1052
- /**
1053
- * Obtains a list of the Slice type IDs representing the interfaces supported by this object.
1054
- * @param current The Current object for the invocation.
1055
- * @return A list of fully-scoped type IDs.
1056
- */
1057
- virtual ::std::vector< ::std::string> ice_ids(const Current& current = emptyCurrent) const;
1058
-
1059
- /**
1060
- * Obtains a Slice type ID representing the most-derived interface supported by this object.
1061
- * @param current The Current object for the invocation.
1062
- * @return A fully-scoped type ID.
1063
- */
1064
- virtual const ::std::string& ice_id(const Current& current = emptyCurrent) const;
1065
-
1066
- /**
1067
- * Obtains the Slice type ID corresponding to this class.
1068
- * @return A fully-scoped type ID.
1069
- */
1070
- static const ::std::string& ice_staticId();
1071
-
1072
- /**
1073
- * Get the router's client proxy, i.e., the proxy to use for
1074
- * forwarding requests from the client to the router.
1075
- *
1076
- * If a null proxy is returned, the client will forward requests
1077
- * to the router's endpoints.
1078
- * @param hasRoutingTable Indicates whether or not the router supports a routing
1079
- * table. If it is supported, the Ice runtime will call addProxies to populate the
1080
- * routing table. This out parameter is only supported starting with Ice 3.7.
1081
- * The Ice runtime assumes the router has a routing table if the optional is not
1082
- * set.
1083
- * @param current The Current object for the invocation.
1084
- * @return The router's client proxy.
1085
- */
1086
- virtual ObjectPrx getClientProxy(IceUtil::Optional<bool>& hasRoutingTable, const Current& current = emptyCurrent) const = 0;
1087
- /// \cond INTERNAL
1088
- bool _iceD_getClientProxy(::IceInternal::Incoming&, const ::Ice::Current&) const;
1089
- /// \endcond
1090
-
1091
- /**
1092
- * Get the router's server proxy, i.e., the proxy to use for
1093
- * forwarding requests from the server to the router.
1094
- * @param current The Current object for the invocation.
1095
- * @return The router's server proxy.
1096
- */
1097
- virtual ObjectPrx getServerProxy(const Current& current = emptyCurrent) const = 0;
1098
- /// \cond INTERNAL
1099
- bool _iceD_getServerProxy(::IceInternal::Incoming&, const ::Ice::Current&) const;
1100
- /// \endcond
1101
-
1102
- /**
1103
- * Add new proxy information to the router's routing table.
1104
- * @param proxies The proxies to add.
1105
- * @param current The Current object for the invocation.
1106
- * @return Proxies discarded by the router.
1107
- */
1108
- virtual ObjectProxySeq addProxies(const ObjectProxySeq& proxies, const Current& current = emptyCurrent) = 0;
1109
- /// \cond INTERNAL
1110
- bool _iceD_addProxies(::IceInternal::Incoming&, const ::Ice::Current&);
1111
- /// \endcond
1112
-
1113
- /// \cond INTERNAL
1114
- virtual bool _iceDispatch(::IceInternal::Incoming&, const Current&);
1115
- /// \endcond
1116
-
1117
- protected:
1118
-
1119
- /// \cond STREAM
1120
- virtual void _iceWriteImpl(OutputStream*) const;
1121
- virtual void _iceReadImpl(InputStream*);
1122
- /// \endcond
1123
- };
1124
-
1125
- /// \cond INTERNAL
1126
- inline bool operator==(const Router& lhs, const Router& rhs)
1127
- {
1128
- return static_cast<const Object&>(lhs) == static_cast<const Object&>(rhs);
1129
- }
1130
-
1131
- inline bool operator<(const Router& lhs, const Router& rhs)
1132
- {
1133
- return static_cast<const Object&>(lhs) < static_cast<const Object&>(rhs);
1134
- }
1135
- /// \endcond
1136
-
1137
- /**
1138
- * This interface should be implemented by services implementing the
1139
- * Ice::Router interface. It should be advertised through an Ice
1140
- * object with the identity `Ice/RouterFinder'. This allows clients to
1141
- * retrieve the router proxy with just the endpoint information of the
1142
- * service.
1143
- * \headerfile Ice/Ice.h
1144
- */
1145
- class ICE_API RouterFinder : public virtual Object
1146
- {
1147
- public:
1148
-
1149
- typedef RouterFinderPrx ProxyType;
1150
- typedef RouterFinderPtr PointerType;
1151
-
1152
- virtual ~RouterFinder();
1153
-
1154
- #ifdef ICE_CPP11_COMPILER
1155
- RouterFinder() = default;
1156
- RouterFinder(const RouterFinder&) = default;
1157
- RouterFinder& operator=(const RouterFinder&) = default;
1158
- #endif
1159
-
1160
- /**
1161
- * Determines whether this object supports an interface with the given Slice type ID.
1162
- * @param id The fully-scoped Slice type ID.
1163
- * @param current The Current object for the invocation.
1164
- * @return True if this object supports the interface, false, otherwise.
1165
- */
1166
- virtual bool ice_isA(const ::std::string& id, const Current& current = emptyCurrent) const;
1167
-
1168
- /**
1169
- * Obtains a list of the Slice type IDs representing the interfaces supported by this object.
1170
- * @param current The Current object for the invocation.
1171
- * @return A list of fully-scoped type IDs.
1172
- */
1173
- virtual ::std::vector< ::std::string> ice_ids(const Current& current = emptyCurrent) const;
1174
-
1175
- /**
1176
- * Obtains a Slice type ID representing the most-derived interface supported by this object.
1177
- * @param current The Current object for the invocation.
1178
- * @return A fully-scoped type ID.
1179
- */
1180
- virtual const ::std::string& ice_id(const Current& current = emptyCurrent) const;
1181
-
1182
- /**
1183
- * Obtains the Slice type ID corresponding to this class.
1184
- * @return A fully-scoped type ID.
1185
- */
1186
- static const ::std::string& ice_staticId();
1187
-
1188
- /**
1189
- * Get the router proxy implemented by the process hosting this
1190
- * finder object. The proxy might point to several replicas.
1191
- * @param current The Current object for the invocation.
1192
- * @return The router proxy.
1193
- */
1194
- virtual RouterPrx getRouter(const Current& current = emptyCurrent) = 0;
1195
- /// \cond INTERNAL
1196
- bool _iceD_getRouter(::IceInternal::Incoming&, const ::Ice::Current&);
1197
- /// \endcond
1198
-
1199
- /// \cond INTERNAL
1200
- virtual bool _iceDispatch(::IceInternal::Incoming&, const Current&);
1201
- /// \endcond
1202
-
1203
- protected:
1204
-
1205
- /// \cond STREAM
1206
- virtual void _iceWriteImpl(OutputStream*) const;
1207
- virtual void _iceReadImpl(InputStream*);
1208
- /// \endcond
1209
- };
1210
-
1211
- /// \cond INTERNAL
1212
- inline bool operator==(const RouterFinder& lhs, const RouterFinder& rhs)
1213
- {
1214
- return static_cast<const Object&>(lhs) == static_cast<const Object&>(rhs);
1215
- }
1216
-
1217
- inline bool operator<(const RouterFinder& lhs, const RouterFinder& rhs)
1218
- {
1219
- return static_cast<const Object&>(lhs) < static_cast<const Object&>(rhs);
1220
- }
1221
- /// \endcond
1222
-
1223
- }
1224
-
1225
- /// \cond STREAM
1226
- namespace Ice
1227
- {
1228
-
1229
- }
1230
- /// \endcond
1231
-
1232
- namespace Ice
1233
- {
1234
-
1235
- /**
1236
- * Type-safe asynchronous callback wrapper class used for calls to
1237
- * IceProxy::Ice::Router::begin_getClientProxy.
1238
- * Create a wrapper instance by calling ::Ice::newCallback_Router_getClientProxy.
1239
- */
1240
- template<class T>
1241
- class CallbackNC_Router_getClientProxy : public Callback_Router_getClientProxy_Base, public ::IceInternal::TwowayCallbackNC<T>
1242
- {
1243
- public:
43
+ public:
44
+ /// Constructs a proxy from a Communicator and a proxy string.
45
+ /// @param communicator The communicator of the new proxy.
46
+ /// @param proxyString The proxy string to parse.
47
+ RouterPrx(const Ice::CommunicatorPtr& communicator, std::string_view proxyString) : Ice::ObjectPrx{communicator, proxyString} {} // NOLINT(modernize-use-equals-default)
1244
48
 
1245
- typedef IceUtil::Handle<T> TPtr;
49
+ /// Copy constructor. Constructs with a copy of the contents of @p other.
50
+ /// @param other The proxy to copy from.
51
+ RouterPrx(const RouterPrx& other) noexcept : Ice::ObjectPrx{other} {} // NOLINT(modernize-use-equals-default)
1246
52
 
1247
- typedef void (T::*Exception)(const ::Ice::Exception&);
1248
- typedef void (T::*Sent)(bool);
1249
- typedef void (T::*Response)(const ObjectPrx&, const IceUtil::Optional<bool>&);
53
+ /// Move constructor. Constructs a proxy with the contents of @p other using move semantics.
54
+ /// @param other The proxy to move from.
55
+ RouterPrx(RouterPrx&& other) noexcept : Ice::ObjectPrx{std::move(other)} {} // NOLINT(modernize-use-equals-default)
1250
56
 
1251
- CallbackNC_Router_getClientProxy(const TPtr& obj, Response cb, Exception excb, Sent sentcb)
1252
- : ::IceInternal::TwowayCallbackNC<T>(obj, cb != 0, excb, sentcb), _response(cb)
1253
- {
1254
- }
57
+ ~RouterPrx() override;
1255
58
 
1256
- /// \cond INTERNAL
1257
- virtual void completed(const AsyncResultPtr& result) const
1258
- {
1259
- RouterPrx proxy = RouterPrx::uncheckedCast(result->getProxy());
1260
- IceUtil::Optional<bool> iceP_hasRoutingTable;
1261
- ObjectPrx ret;
1262
- try
59
+ /// Copy assignment operator. Replaces the contents of this proxy with a copy of the contents of @p rhs.
60
+ /// @param rhs The proxy to copy from.
61
+ /// @return A reference to this proxy.
62
+ RouterPrx& operator=(const RouterPrx& rhs) noexcept
1263
63
  {
1264
- ret = proxy->end_getClientProxy(iceP_hasRoutingTable, result);
64
+ if (this != &rhs)
65
+ {
66
+ Ice::ObjectPrx::operator=(rhs);
67
+ }
68
+ return *this;
1265
69
  }
1266
- catch(const ::Ice::Exception& ex)
1267
- {
1268
- ::IceInternal::CallbackNC<T>::exception(result, ex);
1269
- return;
1270
- }
1271
- if(_response)
1272
- {
1273
- (::IceInternal::CallbackNC<T>::_callback.get()->*_response)(ret, iceP_hasRoutingTable);
1274
- }
1275
- }
1276
- /// \endcond
1277
-
1278
- private:
1279
-
1280
- Response _response;
1281
- };
1282
-
1283
- /**
1284
- * Creates a callback wrapper instance that delegates to your object.
1285
- * @param instance The callback object.
1286
- * @param cb The success method of the callback object.
1287
- * @param excb The exception method of the callback object.
1288
- * @param sentcb The sent method of the callback object.
1289
- * @return An object that can be passed to an asynchronous invocation of IceProxy::Ice::Router::begin_getClientProxy.
1290
- */
1291
- template<class T> Callback_Router_getClientProxyPtr
1292
- newCallback_Router_getClientProxy(const IceUtil::Handle<T>& instance, void (T::*cb)(const ObjectPrx&, const IceUtil::Optional<bool>&), void (T::*excb)(const ::Ice::Exception&), void (T::*sentcb)(bool) = 0)
1293
- {
1294
- return new CallbackNC_Router_getClientProxy<T>(instance, cb, excb, sentcb);
1295
- }
1296
-
1297
- /**
1298
- * Creates a callback wrapper instance that delegates to your object.
1299
- * @param instance The callback object.
1300
- * @param cb The success method of the callback object.
1301
- * @param excb The exception method of the callback object.
1302
- * @param sentcb The sent method of the callback object.
1303
- * @return An object that can be passed to an asynchronous invocation of IceProxy::Ice::Router::begin_getClientProxy.
1304
- */
1305
- template<class T> Callback_Router_getClientProxyPtr
1306
- newCallback_Router_getClientProxy(T* instance, void (T::*cb)(const ObjectPrx&, const IceUtil::Optional<bool>&), void (T::*excb)(const ::Ice::Exception&), void (T::*sentcb)(bool) = 0)
1307
- {
1308
- return new CallbackNC_Router_getClientProxy<T>(instance, cb, excb, sentcb);
1309
- }
1310
-
1311
- /**
1312
- * Type-safe asynchronous callback wrapper class with cookie support used for calls to
1313
- * IceProxy::Ice::Router::begin_getClientProxy.
1314
- * Create a wrapper instance by calling ::Ice::newCallback_Router_getClientProxy.
1315
- */
1316
- template<class T, typename CT>
1317
- class Callback_Router_getClientProxy : public Callback_Router_getClientProxy_Base, public ::IceInternal::TwowayCallback<T, CT>
1318
- {
1319
- public:
1320
-
1321
- typedef IceUtil::Handle<T> TPtr;
1322
70
 
1323
- typedef void (T::*Exception)(const ::Ice::Exception& , const CT&);
1324
- typedef void (T::*Sent)(bool , const CT&);
1325
- typedef void (T::*Response)(const ObjectPrx&, const IceUtil::Optional<bool>&, const CT&);
1326
-
1327
- Callback_Router_getClientProxy(const TPtr& obj, Response cb, Exception excb, Sent sentcb)
1328
- : ::IceInternal::TwowayCallback<T, CT>(obj, cb != 0, excb, sentcb), _response(cb)
1329
- {
1330
- }
1331
-
1332
- /// \cond INTERNAL
1333
- virtual void completed(const AsyncResultPtr& result) const
1334
- {
1335
- RouterPrx proxy = RouterPrx::uncheckedCast(result->getProxy());
1336
- IceUtil::Optional<bool> iceP_hasRoutingTable;
1337
- ObjectPrx ret;
1338
- try
71
+ /// Move assignment operator. Replaces the contents of this proxy with the contents of @p rhs using move semantics.
72
+ /// @param rhs The proxy to move from.
73
+ RouterPrx& operator=(RouterPrx&& rhs) noexcept
1339
74
  {
1340
- ret = proxy->end_getClientProxy(iceP_hasRoutingTable, result);
75
+ if (this != &rhs)
76
+ {
77
+ Ice::ObjectPrx::operator=(std::move(rhs));
78
+ }
79
+ return *this;
1341
80
  }
1342
- catch(const ::Ice::Exception& ex)
1343
- {
1344
- ::IceInternal::Callback<T, CT>::exception(result, ex);
1345
- return;
1346
- }
1347
- if(_response)
1348
- {
1349
- (::IceInternal::Callback<T, CT>::_callback.get()->*_response)(ret, iceP_hasRoutingTable, CT::dynamicCast(result->getCookie()));
1350
- }
1351
- }
1352
- /// \endcond
1353
-
1354
- private:
1355
-
1356
- Response _response;
1357
- };
1358
-
1359
- /**
1360
- * Creates a callback wrapper instance that delegates to your object.
1361
- * Use this overload when your callback methods receive a cookie value.
1362
- * @param instance The callback object.
1363
- * @param cb The success method of the callback object.
1364
- * @param excb The exception method of the callback object.
1365
- * @param sentcb The sent method of the callback object.
1366
- * @return An object that can be passed to an asynchronous invocation of IceProxy::Ice::Router::begin_getClientProxy.
1367
- */
1368
- template<class T, typename CT> Callback_Router_getClientProxyPtr
1369
- newCallback_Router_getClientProxy(const IceUtil::Handle<T>& instance, void (T::*cb)(const ObjectPrx&, const IceUtil::Optional<bool>&, const CT&), void (T::*excb)(const ::Ice::Exception&, const CT&), void (T::*sentcb)(bool, const CT&) = 0)
1370
- {
1371
- return new Callback_Router_getClientProxy<T, CT>(instance, cb, excb, sentcb);
1372
- }
1373
-
1374
- /**
1375
- * Creates a callback wrapper instance that delegates to your object.
1376
- * Use this overload when your callback methods receive a cookie value.
1377
- * @param instance The callback object.
1378
- * @param cb The success method of the callback object.
1379
- * @param excb The exception method of the callback object.
1380
- * @param sentcb The sent method of the callback object.
1381
- * @return An object that can be passed to an asynchronous invocation of IceProxy::Ice::Router::begin_getClientProxy.
1382
- */
1383
- template<class T, typename CT> Callback_Router_getClientProxyPtr
1384
- newCallback_Router_getClientProxy(T* instance, void (T::*cb)(const ObjectPrx&, const IceUtil::Optional<bool>&, const CT&), void (T::*excb)(const ::Ice::Exception&, const CT&), void (T::*sentcb)(bool, const CT&) = 0)
1385
- {
1386
- return new Callback_Router_getClientProxy<T, CT>(instance, cb, excb, sentcb);
1387
- }
1388
81
 
1389
- /**
1390
- * Type-safe asynchronous callback wrapper class used for calls to
1391
- * IceProxy::Ice::Router::begin_getServerProxy.
1392
- * Create a wrapper instance by calling ::Ice::newCallback_Router_getServerProxy.
1393
- */
1394
- template<class T>
1395
- class CallbackNC_Router_getServerProxy : public Callback_Router_getServerProxy_Base, public ::IceInternal::TwowayCallbackNC<T>
1396
- {
1397
- public:
1398
-
1399
- typedef IceUtil::Handle<T> TPtr;
1400
-
1401
- typedef void (T::*Exception)(const ::Ice::Exception&);
1402
- typedef void (T::*Sent)(bool);
1403
- typedef void (T::*Response)(const ObjectPrx&);
1404
-
1405
- CallbackNC_Router_getServerProxy(const TPtr& obj, Response cb, Exception excb, Sent sentcb)
1406
- : ::IceInternal::TwowayCallbackNC<T>(obj, cb != 0, excb, sentcb), _response(cb)
1407
- {
1408
- }
1409
-
1410
- /// \cond INTERNAL
1411
- virtual void completed(const AsyncResultPtr& result) const
1412
- {
1413
- RouterPrx proxy = RouterPrx::uncheckedCast(result->getProxy());
1414
- ObjectPrx ret;
1415
- try
1416
- {
1417
- ret = proxy->end_getServerProxy(result);
1418
- }
1419
- catch(const ::Ice::Exception& ex)
82
+ /// Gets the router's client proxy, i.e. the proxy to use for forwarding requests from the client to the
83
+ /// router. If a null proxy is returned, the client will forward requests to the router's endpoints.
84
+ /// @param[out] hasRoutingTable Indicates whether or not the router supports a routing table. If `true`, the Ice
85
+ /// runtime will call ::Ice::RouterPrx::addProxies to populate the routing table. The Ice runtime assumes the router has
86
+ /// a routing table when @p hasRoutingTable is not set.
87
+ /// @param context The request context.
88
+ /// @return The router's client proxy.
89
+ /// @remarks Introduced in Ice 3.7.
90
+ std::optional<Ice::ObjectPrx> getClientProxy(std::optional<bool>& hasRoutingTable, const Ice::Context& context = Ice::noExplicitContext) const;
91
+
92
+ /// Gets the router's client proxy, i.e. the proxy to use for forwarding requests from the client to the
93
+ /// router. If a null proxy is returned, the client will forward requests to the router's endpoints.
94
+ /// @param context The request context.
95
+ /// @return A future that becomes available when the invocation completes. This future holds:
96
+ /// - `returnValue` The router's client proxy.
97
+ /// - `hasRoutingTable` Indicates whether or not the router supports a routing table. If `true`, the Ice
98
+ /// runtime will call ::Ice::RouterPrx::addProxies to populate the routing table. The Ice runtime assumes the router has
99
+ /// a routing table when @p hasRoutingTable is not set.
100
+ /// @remarks Introduced in Ice 3.7.
101
+ [[nodiscard]] std::future<std::tuple<std::optional<Ice::ObjectPrx>, std::optional<bool>>> getClientProxyAsync(const Ice::Context& context = Ice::noExplicitContext) const;
102
+
103
+ /// Gets the router's client proxy, i.e. the proxy to use for forwarding requests from the client to the
104
+ /// router. If a null proxy is returned, the client will forward requests to the router's endpoints.
105
+ /// @param response The response callback. It accepts:
106
+ /// - `returnValue` The router's client proxy.
107
+ /// - `hasRoutingTable` Indicates whether or not the router supports a routing table. If `true`, the Ice
108
+ /// runtime will call ::Ice::RouterPrx::addProxies to populate the routing table. The Ice runtime assumes the router has
109
+ /// a routing table when @p hasRoutingTable is not set.
110
+ /// @param exception The exception callback.
111
+ /// @param sent The sent callback.
112
+ /// @param context The request context.
113
+ /// @return A function that can be called to cancel the invocation locally.
114
+ /// @remarks Introduced in Ice 3.7.
115
+ // NOLINTNEXTLINE(modernize-use-nodiscard)
116
+ std::function<void()> getClientProxyAsync(std::function<void(std::optional<Ice::ObjectPrx>, std::optional<bool>)> response, std::function<void(std::exception_ptr)> exception = nullptr, std::function<void(bool)> sent = nullptr, const Ice::Context& context = Ice::noExplicitContext) const;
117
+
118
+ /// @private
119
+ void _iceI_getClientProxy(const std::shared_ptr<IceInternal::OutgoingAsyncT<std::tuple<std::optional<Ice::ObjectPrx>, std::optional<bool>>>>&, const Ice::Context&) const;
120
+
121
+ /// Gets the router's server proxy, i.e. the proxy to use for forwarding requests from the server to the
122
+ /// router. The Ice runtime uses the endpoints of this proxy as the published endpoints of bi-dir object
123
+ /// adapters.
124
+ /// @param context The request context.
125
+ /// @return The router's server proxy.
126
+ std::optional<Ice::ObjectPrx> getServerProxy(const Ice::Context& context = Ice::noExplicitContext) const; // NOLINT(modernize-use-nodiscard)
127
+
128
+ /// Gets the router's server proxy, i.e. the proxy to use for forwarding requests from the server to the
129
+ /// router. The Ice runtime uses the endpoints of this proxy as the published endpoints of bi-dir object
130
+ /// adapters.
131
+ /// @param context The request context.
132
+ /// @return A future that becomes available when the invocation completes. This future holds:
133
+ /// - The router's server proxy.
134
+ [[nodiscard]] std::future<std::optional<Ice::ObjectPrx>> getServerProxyAsync(const Ice::Context& context = Ice::noExplicitContext) const;
135
+
136
+ /// Gets the router's server proxy, i.e. the proxy to use for forwarding requests from the server to the
137
+ /// router. The Ice runtime uses the endpoints of this proxy as the published endpoints of bi-dir object
138
+ /// adapters.
139
+ /// @param response The response callback. It accepts:
140
+ /// - The router's server proxy.
141
+ /// @param exception The exception callback.
142
+ /// @param sent The sent callback.
143
+ /// @param context The request context.
144
+ /// @return A function that can be called to cancel the invocation locally.
145
+ // NOLINTNEXTLINE(modernize-use-nodiscard)
146
+ std::function<void()> getServerProxyAsync(std::function<void(std::optional<Ice::ObjectPrx>)> response, std::function<void(std::exception_ptr)> exception = nullptr, std::function<void(bool)> sent = nullptr, const Ice::Context& context = Ice::noExplicitContext) const;
147
+
148
+ /// @private
149
+ void _iceI_getServerProxy(const std::shared_ptr<IceInternal::OutgoingAsyncT<std::optional<Ice::ObjectPrx>>>&, const Ice::Context&) const;
150
+
151
+ /// Adds new proxy information to the router's routing table.
152
+ /// @param proxies The proxies to add. Adding a null proxy is an error.
153
+ /// @param context The request context.
154
+ /// @return Proxies discarded by the router. These proxies are all non-null.
155
+ ObjectProxySeq addProxies(const ObjectProxySeq& proxies, const Ice::Context& context = Ice::noExplicitContext) const; // NOLINT(modernize-use-nodiscard)
156
+
157
+ /// Adds new proxy information to the router's routing table.
158
+ /// @param proxies The proxies to add. Adding a null proxy is an error.
159
+ /// @param context The request context.
160
+ /// @return A future that becomes available when the invocation completes. This future holds:
161
+ /// - Proxies discarded by the router. These proxies are all non-null.
162
+ [[nodiscard]] std::future<ObjectProxySeq> addProxiesAsync(const ObjectProxySeq& proxies, const Ice::Context& context = Ice::noExplicitContext) const;
163
+
164
+ /// Adds new proxy information to the router's routing table.
165
+ /// @param proxies The proxies to add. Adding a null proxy is an error.
166
+ /// @param response The response callback. It accepts:
167
+ /// - Proxies discarded by the router. These proxies are all non-null.
168
+ /// @param exception The exception callback.
169
+ /// @param sent The sent callback.
170
+ /// @param context The request context.
171
+ /// @return A function that can be called to cancel the invocation locally.
172
+ // NOLINTNEXTLINE(modernize-use-nodiscard)
173
+ std::function<void()> addProxiesAsync(const ObjectProxySeq& proxies, std::function<void(::Ice::ObjectProxySeq)> response, std::function<void(std::exception_ptr)> exception = nullptr, std::function<void(bool)> sent = nullptr, const Ice::Context& context = Ice::noExplicitContext) const;
174
+
175
+ /// @private
176
+ void _iceI_addProxies(const std::shared_ptr<IceInternal::OutgoingAsyncT<ObjectProxySeq>>&, const ObjectProxySeq&, const Ice::Context&) const;
177
+
178
+ /// Gets the type ID of the associated Slice interface.
179
+ /// @return The string `"::Ice::Router"`.
180
+ static const char* ice_staticId() noexcept;
181
+
182
+ /// @private
183
+ static RouterPrx _fromReference(IceInternal::ReferencePtr ref) { return RouterPrx{std::move(ref)}; }
184
+
185
+ protected:
186
+ /// @private
187
+ RouterPrx() = default;
188
+
189
+ /// @private
190
+ explicit RouterPrx(IceInternal::ReferencePtr&& ref) : Ice::ObjectPrx{std::move(ref)}
1420
191
  {
1421
- ::IceInternal::CallbackNC<T>::exception(result, ex);
1422
- return;
1423
192
  }
1424
- if(_response)
1425
- {
1426
- (::IceInternal::CallbackNC<T>::_callback.get()->*_response)(ret);
1427
- }
1428
- }
1429
- /// \endcond
1430
-
1431
- private:
1432
-
1433
- Response _response;
1434
- };
1435
-
1436
- /**
1437
- * Creates a callback wrapper instance that delegates to your object.
1438
- * @param instance The callback object.
1439
- * @param cb The success method of the callback object.
1440
- * @param excb The exception method of the callback object.
1441
- * @param sentcb The sent method of the callback object.
1442
- * @return An object that can be passed to an asynchronous invocation of IceProxy::Ice::Router::begin_getServerProxy.
1443
- */
1444
- template<class T> Callback_Router_getServerProxyPtr
1445
- newCallback_Router_getServerProxy(const IceUtil::Handle<T>& instance, void (T::*cb)(const ObjectPrx&), void (T::*excb)(const ::Ice::Exception&), void (T::*sentcb)(bool) = 0)
1446
- {
1447
- return new CallbackNC_Router_getServerProxy<T>(instance, cb, excb, sentcb);
1448
- }
1449
-
1450
- /**
1451
- * Creates a callback wrapper instance that delegates to your object.
1452
- * @param instance The callback object.
1453
- * @param cb The success method of the callback object.
1454
- * @param excb The exception method of the callback object.
1455
- * @param sentcb The sent method of the callback object.
1456
- * @return An object that can be passed to an asynchronous invocation of IceProxy::Ice::Router::begin_getServerProxy.
1457
- */
1458
- template<class T> Callback_Router_getServerProxyPtr
1459
- newCallback_Router_getServerProxy(T* instance, void (T::*cb)(const ObjectPrx&), void (T::*excb)(const ::Ice::Exception&), void (T::*sentcb)(bool) = 0)
1460
- {
1461
- return new CallbackNC_Router_getServerProxy<T>(instance, cb, excb, sentcb);
1462
- }
1463
-
1464
- /**
1465
- * Type-safe asynchronous callback wrapper class with cookie support used for calls to
1466
- * IceProxy::Ice::Router::begin_getServerProxy.
1467
- * Create a wrapper instance by calling ::Ice::newCallback_Router_getServerProxy.
1468
- */
1469
- template<class T, typename CT>
1470
- class Callback_Router_getServerProxy : public Callback_Router_getServerProxy_Base, public ::IceInternal::TwowayCallback<T, CT>
1471
- {
1472
- public:
1473
-
1474
- typedef IceUtil::Handle<T> TPtr;
1475
-
1476
- typedef void (T::*Exception)(const ::Ice::Exception& , const CT&);
1477
- typedef void (T::*Sent)(bool , const CT&);
1478
- typedef void (T::*Response)(const ObjectPrx&, const CT&);
1479
-
1480
- Callback_Router_getServerProxy(const TPtr& obj, Response cb, Exception excb, Sent sentcb)
1481
- : ::IceInternal::TwowayCallback<T, CT>(obj, cb != 0, excb, sentcb), _response(cb)
1482
- {
1483
- }
193
+ };
1484
194
 
1485
- /// \cond INTERNAL
1486
- virtual void completed(const AsyncResultPtr& result) const
1487
- {
1488
- RouterPrx proxy = RouterPrx::uncheckedCast(result->getProxy());
1489
- ObjectPrx ret;
1490
- try
195
+ /// Provides access to a RouterPrx object via a fixed identity.
196
+ /// A RouterFinder is always registered with identity `Ice/RouterFinder`. This allows clients to obtain the
197
+ /// associated Router proxy with just the endpoint information of the object. For example, you can use the
198
+ /// RouterFinder proxy `Ice/RouterFinder:tcp -h somehost -p 4061` to get the Router proxy
199
+ /// `MyGlacier2/Router:tcp -h somehost -p 4061`.
200
+ /// @remarks The Slice compiler generated this proxy class from Slice interface `::Ice::RouterFinder`.
201
+ /// @headerfile Ice/Ice.h
202
+ class ICE_API RouterFinderPrx : public Ice::Proxy<RouterFinderPrx, Ice::ObjectPrx>
203
+ {
204
+ public:
205
+ /// Constructs a proxy from a Communicator and a proxy string.
206
+ /// @param communicator The communicator of the new proxy.
207
+ /// @param proxyString The proxy string to parse.
208
+ RouterFinderPrx(const Ice::CommunicatorPtr& communicator, std::string_view proxyString) : Ice::ObjectPrx{communicator, proxyString} {} // NOLINT(modernize-use-equals-default)
209
+
210
+ /// Copy constructor. Constructs with a copy of the contents of @p other.
211
+ /// @param other The proxy to copy from.
212
+ RouterFinderPrx(const RouterFinderPrx& other) noexcept : Ice::ObjectPrx{other} {} // NOLINT(modernize-use-equals-default)
213
+
214
+ /// Move constructor. Constructs a proxy with the contents of @p other using move semantics.
215
+ /// @param other The proxy to move from.
216
+ RouterFinderPrx(RouterFinderPrx&& other) noexcept : Ice::ObjectPrx{std::move(other)} {} // NOLINT(modernize-use-equals-default)
217
+
218
+ ~RouterFinderPrx() override;
219
+
220
+ /// Copy assignment operator. Replaces the contents of this proxy with a copy of the contents of @p rhs.
221
+ /// @param rhs The proxy to copy from.
222
+ /// @return A reference to this proxy.
223
+ RouterFinderPrx& operator=(const RouterFinderPrx& rhs) noexcept
1491
224
  {
1492
- ret = proxy->end_getServerProxy(result);
225
+ if (this != &rhs)
226
+ {
227
+ Ice::ObjectPrx::operator=(rhs);
228
+ }
229
+ return *this;
1493
230
  }
1494
- catch(const ::Ice::Exception& ex)
231
+
232
+ /// Move assignment operator. Replaces the contents of this proxy with the contents of @p rhs using move semantics.
233
+ /// @param rhs The proxy to move from.
234
+ RouterFinderPrx& operator=(RouterFinderPrx&& rhs) noexcept
1495
235
  {
1496
- ::IceInternal::Callback<T, CT>::exception(result, ex);
1497
- return;
236
+ if (this != &rhs)
237
+ {
238
+ Ice::ObjectPrx::operator=(std::move(rhs));
239
+ }
240
+ return *this;
1498
241
  }
1499
- if(_response)
242
+
243
+ /// Gets a proxy to the associated ::Ice::RouterPrx. The proxy might point to several replicas.
244
+ /// @param context The request context.
245
+ /// @return The router proxy. This proxy is never null.
246
+ std::optional<RouterPrx> getRouter(const Ice::Context& context = Ice::noExplicitContext) const; // NOLINT(modernize-use-nodiscard)
247
+
248
+ /// Gets a proxy to the associated ::Ice::RouterPrx. The proxy might point to several replicas.
249
+ /// @param context The request context.
250
+ /// @return A future that becomes available when the invocation completes. This future holds:
251
+ /// - The router proxy. This proxy is never null.
252
+ [[nodiscard]] std::future<std::optional<RouterPrx>> getRouterAsync(const Ice::Context& context = Ice::noExplicitContext) const;
253
+
254
+ /// Gets a proxy to the associated ::Ice::RouterPrx. The proxy might point to several replicas.
255
+ /// @param response The response callback. It accepts:
256
+ /// - The router proxy. This proxy is never null.
257
+ /// @param exception The exception callback.
258
+ /// @param sent The sent callback.
259
+ /// @param context The request context.
260
+ /// @return A function that can be called to cancel the invocation locally.
261
+ // NOLINTNEXTLINE(modernize-use-nodiscard)
262
+ std::function<void()> getRouterAsync(std::function<void(std::optional<::Ice::RouterPrx>)> response, std::function<void(std::exception_ptr)> exception = nullptr, std::function<void(bool)> sent = nullptr, const Ice::Context& context = Ice::noExplicitContext) const;
263
+
264
+ /// @private
265
+ void _iceI_getRouter(const std::shared_ptr<IceInternal::OutgoingAsyncT<std::optional<RouterPrx>>>&, const Ice::Context&) const;
266
+
267
+ /// Gets the type ID of the associated Slice interface.
268
+ /// @return The string `"::Ice::RouterFinder"`.
269
+ static const char* ice_staticId() noexcept;
270
+
271
+ /// @private
272
+ static RouterFinderPrx _fromReference(IceInternal::ReferencePtr ref) { return RouterFinderPrx{std::move(ref)}; }
273
+
274
+ protected:
275
+ /// @private
276
+ RouterFinderPrx() = default;
277
+
278
+ /// @private
279
+ explicit RouterFinderPrx(IceInternal::ReferencePtr&& ref) : Ice::ObjectPrx{std::move(ref)}
1500
280
  {
1501
- (::IceInternal::Callback<T, CT>::_callback.get()->*_response)(ret, CT::dynamicCast(result->getCookie()));
1502
281
  }
1503
- }
1504
- /// \endcond
1505
-
1506
- private:
1507
-
1508
- Response _response;
1509
- };
1510
-
1511
- /**
1512
- * Creates a callback wrapper instance that delegates to your object.
1513
- * Use this overload when your callback methods receive a cookie value.
1514
- * @param instance The callback object.
1515
- * @param cb The success method of the callback object.
1516
- * @param excb The exception method of the callback object.
1517
- * @param sentcb The sent method of the callback object.
1518
- * @return An object that can be passed to an asynchronous invocation of IceProxy::Ice::Router::begin_getServerProxy.
1519
- */
1520
- template<class T, typename CT> Callback_Router_getServerProxyPtr
1521
- newCallback_Router_getServerProxy(const IceUtil::Handle<T>& instance, void (T::*cb)(const ObjectPrx&, const CT&), void (T::*excb)(const ::Ice::Exception&, const CT&), void (T::*sentcb)(bool, const CT&) = 0)
1522
- {
1523
- return new Callback_Router_getServerProxy<T, CT>(instance, cb, excb, sentcb);
1524
- }
1525
-
1526
- /**
1527
- * Creates a callback wrapper instance that delegates to your object.
1528
- * Use this overload when your callback methods receive a cookie value.
1529
- * @param instance The callback object.
1530
- * @param cb The success method of the callback object.
1531
- * @param excb The exception method of the callback object.
1532
- * @param sentcb The sent method of the callback object.
1533
- * @return An object that can be passed to an asynchronous invocation of IceProxy::Ice::Router::begin_getServerProxy.
1534
- */
1535
- template<class T, typename CT> Callback_Router_getServerProxyPtr
1536
- newCallback_Router_getServerProxy(T* instance, void (T::*cb)(const ObjectPrx&, const CT&), void (T::*excb)(const ::Ice::Exception&, const CT&), void (T::*sentcb)(bool, const CT&) = 0)
1537
- {
1538
- return new Callback_Router_getServerProxy<T, CT>(instance, cb, excb, sentcb);
282
+ };
1539
283
  }
1540
284
 
1541
- /**
1542
- * Type-safe asynchronous callback wrapper class used for calls to
1543
- * IceProxy::Ice::Router::begin_addProxies.
1544
- * Create a wrapper instance by calling ::Ice::newCallback_Router_addProxies.
1545
- */
1546
- template<class T>
1547
- class CallbackNC_Router_addProxies : public Callback_Router_addProxies_Base, public ::IceInternal::TwowayCallbackNC<T>
285
+ namespace Ice
1548
286
  {
1549
- public:
1550
-
1551
- typedef IceUtil::Handle<T> TPtr;
1552
-
1553
- typedef void (T::*Exception)(const ::Ice::Exception&);
1554
- typedef void (T::*Sent)(bool);
1555
- typedef void (T::*Response)(const ObjectProxySeq&);
287
+ /// Represents an intermediary object that routes requests and replies between clients and Ice objects that are not
288
+ /// directly reachable from these clients.
289
+ /// @remarks The Slice compiler generated this skeleton class from Slice interface `::Ice::Router`.
290
+ /// @headerfile Ice/Ice.h
291
+ class ICE_API Router : public virtual Ice::Object
292
+ {
293
+ public:
294
+ /// The associated proxy type.
295
+ using ProxyType = RouterPrx;
296
+
297
+ /// Dispatches an incoming request to one of the member functions of this generated class, based on the operation name carried by the request.
298
+ /// @param request The incoming request.
299
+ /// @param sendResponse The callback to send the response.
300
+ void dispatch(IncomingRequest& request, std::function<void(OutgoingResponse)> sendResponse) override;
301
+
302
+ [[nodiscard]] std::vector<std::string> ice_ids(const Ice::Current& current) const override;
303
+
304
+ [[nodiscard]] std::string ice_id(const Ice::Current& current) const override;
305
+
306
+ /// Gets the router's client proxy, i.e. the proxy to use for forwarding requests from the client to the
307
+ /// router. If a null proxy is returned, the client will forward requests to the router's endpoints.
308
+ /// @param[out] hasRoutingTable Indicates whether or not the router supports a routing table. If `true`, the Ice
309
+ /// runtime will call ::Ice::RouterPrx::addProxies to populate the routing table. The Ice runtime assumes the router has
310
+ /// a routing table when @p hasRoutingTable is not set.
311
+ /// @param current The Current object of the incoming request.
312
+ /// @return The router's client proxy.
313
+ /// @remarks Introduced in Ice 3.7.
314
+ virtual std::optional<Ice::ObjectPrx> getClientProxy(std::optional<bool>& hasRoutingTable, const Ice::Current& current) const = 0;
315
+
316
+ /// @private
317
+ void _iceD_getClientProxy(Ice::IncomingRequest&, std::function<void(Ice::OutgoingResponse)>) const;
318
+
319
+ /// Gets the router's server proxy, i.e. the proxy to use for forwarding requests from the server to the
320
+ /// router. The Ice runtime uses the endpoints of this proxy as the published endpoints of bi-dir object
321
+ /// adapters.
322
+ /// @param current The Current object of the incoming request.
323
+ /// @return The router's server proxy.
324
+ [[nodiscard]] virtual std::optional<Ice::ObjectPrx> getServerProxy(const Ice::Current& current) const = 0;
325
+
326
+ /// @private
327
+ void _iceD_getServerProxy(Ice::IncomingRequest&, std::function<void(Ice::OutgoingResponse)>) const;
328
+
329
+ /// Adds new proxy information to the router's routing table.
330
+ /// @param proxies The proxies to add. Adding a null proxy is an error.
331
+ /// @param current The Current object of the incoming request.
332
+ /// @return Proxies discarded by the router. These proxies are all non-null.
333
+ virtual ObjectProxySeq addProxies(ObjectProxySeq proxies, const Ice::Current& current) = 0;
334
+
335
+ /// @private
336
+ void _iceD_addProxies(Ice::IncomingRequest&, std::function<void(Ice::OutgoingResponse)>);
337
+
338
+ /// Gets the type ID of the associated Slice interface.
339
+ /// @return The string `"::Ice::Router"`.
340
+ static const char* ice_staticId() noexcept;
341
+ };
1556
342
 
1557
- CallbackNC_Router_addProxies(const TPtr& obj, Response cb, Exception excb, Sent sentcb)
1558
- : ::IceInternal::TwowayCallbackNC<T>(obj, cb != 0, excb, sentcb), _response(cb)
1559
- {
1560
- }
343
+ /// A shared pointer to a Router.
344
+ using RouterPtr = std::shared_ptr<Router>;
1561
345
 
1562
- /// \cond INTERNAL
1563
- virtual void completed(const AsyncResultPtr& result) const
346
+ /// Provides access to a RouterPrx object via a fixed identity.
347
+ /// A RouterFinder is always registered with identity `Ice/RouterFinder`. This allows clients to obtain the
348
+ /// associated Router proxy with just the endpoint information of the object. For example, you can use the
349
+ /// RouterFinder proxy `Ice/RouterFinder:tcp -h somehost -p 4061` to get the Router proxy
350
+ /// `MyGlacier2/Router:tcp -h somehost -p 4061`.
351
+ /// @remarks The Slice compiler generated this skeleton class from Slice interface `::Ice::RouterFinder`.
352
+ /// @headerfile Ice/Ice.h
353
+ class ICE_API RouterFinder : public virtual Ice::Object
1564
354
  {
1565
- RouterPrx proxy = RouterPrx::uncheckedCast(result->getProxy());
1566
- ObjectProxySeq ret;
1567
- try
1568
- {
1569
- ret = proxy->end_addProxies(result);
1570
- }
1571
- catch(const ::Ice::Exception& ex)
1572
- {
1573
- ::IceInternal::CallbackNC<T>::exception(result, ex);
1574
- return;
1575
- }
1576
- if(_response)
1577
- {
1578
- (::IceInternal::CallbackNC<T>::_callback.get()->*_response)(ret);
1579
- }
1580
- }
1581
- /// \endcond
1582
-
1583
- private:
1584
-
1585
- Response _response;
1586
- };
1587
-
1588
- /**
1589
- * Creates a callback wrapper instance that delegates to your object.
1590
- * @param instance The callback object.
1591
- * @param cb The success method of the callback object.
1592
- * @param excb The exception method of the callback object.
1593
- * @param sentcb The sent method of the callback object.
1594
- * @return An object that can be passed to an asynchronous invocation of IceProxy::Ice::Router::begin_addProxies.
1595
- */
1596
- template<class T> Callback_Router_addProxiesPtr
1597
- newCallback_Router_addProxies(const IceUtil::Handle<T>& instance, void (T::*cb)(const ObjectProxySeq&), void (T::*excb)(const ::Ice::Exception&), void (T::*sentcb)(bool) = 0)
1598
- {
1599
- return new CallbackNC_Router_addProxies<T>(instance, cb, excb, sentcb);
1600
- }
355
+ public:
356
+ /// The associated proxy type.
357
+ using ProxyType = RouterFinderPrx;
1601
358
 
1602
- /**
1603
- * Creates a callback wrapper instance that delegates to your object.
1604
- * @param instance The callback object.
1605
- * @param cb The success method of the callback object.
1606
- * @param excb The exception method of the callback object.
1607
- * @param sentcb The sent method of the callback object.
1608
- * @return An object that can be passed to an asynchronous invocation of IceProxy::Ice::Router::begin_addProxies.
1609
- */
1610
- template<class T> Callback_Router_addProxiesPtr
1611
- newCallback_Router_addProxies(T* instance, void (T::*cb)(const ObjectProxySeq&), void (T::*excb)(const ::Ice::Exception&), void (T::*sentcb)(bool) = 0)
1612
- {
1613
- return new CallbackNC_Router_addProxies<T>(instance, cb, excb, sentcb);
1614
- }
359
+ /// Dispatches an incoming request to one of the member functions of this generated class, based on the operation name carried by the request.
360
+ /// @param request The incoming request.
361
+ /// @param sendResponse The callback to send the response.
362
+ void dispatch(IncomingRequest& request, std::function<void(OutgoingResponse)> sendResponse) override;
1615
363
 
1616
- /**
1617
- * Type-safe asynchronous callback wrapper class with cookie support used for calls to
1618
- * IceProxy::Ice::Router::begin_addProxies.
1619
- * Create a wrapper instance by calling ::Ice::newCallback_Router_addProxies.
1620
- */
1621
- template<class T, typename CT>
1622
- class Callback_Router_addProxies : public Callback_Router_addProxies_Base, public ::IceInternal::TwowayCallback<T, CT>
1623
- {
1624
- public:
364
+ [[nodiscard]] std::vector<std::string> ice_ids(const Ice::Current& current) const override;
1625
365
 
1626
- typedef IceUtil::Handle<T> TPtr;
366
+ [[nodiscard]] std::string ice_id(const Ice::Current& current) const override;
1627
367
 
1628
- typedef void (T::*Exception)(const ::Ice::Exception& , const CT&);
1629
- typedef void (T::*Sent)(bool , const CT&);
1630
- typedef void (T::*Response)(const ObjectProxySeq&, const CT&);
368
+ /// Gets a proxy to the associated ::Ice::RouterPrx. The proxy might point to several replicas.
369
+ /// @param current The Current object of the incoming request.
370
+ /// @return The router proxy. This proxy is never null.
371
+ virtual std::optional<RouterPrx> getRouter(const Ice::Current& current) = 0;
1631
372
 
1632
- Callback_Router_addProxies(const TPtr& obj, Response cb, Exception excb, Sent sentcb)
1633
- : ::IceInternal::TwowayCallback<T, CT>(obj, cb != 0, excb, sentcb), _response(cb)
1634
- {
1635
- }
373
+ /// @private
374
+ void _iceD_getRouter(Ice::IncomingRequest&, std::function<void(Ice::OutgoingResponse)>);
1636
375
 
1637
- /// \cond INTERNAL
1638
- virtual void completed(const AsyncResultPtr& result) const
1639
- {
1640
- RouterPrx proxy = RouterPrx::uncheckedCast(result->getProxy());
1641
- ObjectProxySeq ret;
1642
- try
1643
- {
1644
- ret = proxy->end_addProxies(result);
1645
- }
1646
- catch(const ::Ice::Exception& ex)
1647
- {
1648
- ::IceInternal::Callback<T, CT>::exception(result, ex);
1649
- return;
1650
- }
1651
- if(_response)
1652
- {
1653
- (::IceInternal::Callback<T, CT>::_callback.get()->*_response)(ret, CT::dynamicCast(result->getCookie()));
1654
- }
1655
- }
1656
- /// \endcond
1657
-
1658
- private:
1659
-
1660
- Response _response;
1661
- };
1662
-
1663
- /**
1664
- * Creates a callback wrapper instance that delegates to your object.
1665
- * Use this overload when your callback methods receive a cookie value.
1666
- * @param instance The callback object.
1667
- * @param cb The success method of the callback object.
1668
- * @param excb The exception method of the callback object.
1669
- * @param sentcb The sent method of the callback object.
1670
- * @return An object that can be passed to an asynchronous invocation of IceProxy::Ice::Router::begin_addProxies.
1671
- */
1672
- template<class T, typename CT> Callback_Router_addProxiesPtr
1673
- newCallback_Router_addProxies(const IceUtil::Handle<T>& instance, void (T::*cb)(const ObjectProxySeq&, const CT&), void (T::*excb)(const ::Ice::Exception&, const CT&), void (T::*sentcb)(bool, const CT&) = 0)
1674
- {
1675
- return new Callback_Router_addProxies<T, CT>(instance, cb, excb, sentcb);
1676
- }
376
+ /// Gets the type ID of the associated Slice interface.
377
+ /// @return The string `"::Ice::RouterFinder"`.
378
+ static const char* ice_staticId() noexcept;
379
+ };
1677
380
 
1678
- /**
1679
- * Creates a callback wrapper instance that delegates to your object.
1680
- * Use this overload when your callback methods receive a cookie value.
1681
- * @param instance The callback object.
1682
- * @param cb The success method of the callback object.
1683
- * @param excb The exception method of the callback object.
1684
- * @param sentcb The sent method of the callback object.
1685
- * @return An object that can be passed to an asynchronous invocation of IceProxy::Ice::Router::begin_addProxies.
1686
- */
1687
- template<class T, typename CT> Callback_Router_addProxiesPtr
1688
- newCallback_Router_addProxies(T* instance, void (T::*cb)(const ObjectProxySeq&, const CT&), void (T::*excb)(const ::Ice::Exception&, const CT&), void (T::*sentcb)(bool, const CT&) = 0)
1689
- {
1690
- return new Callback_Router_addProxies<T, CT>(instance, cb, excb, sentcb);
381
+ /// A shared pointer to a RouterFinder.
382
+ using RouterFinderPtr = std::shared_ptr<RouterFinder>;
1691
383
  }
1692
384
 
1693
- /**
1694
- * Type-safe asynchronous callback wrapper class used for calls to
1695
- * IceProxy::Ice::RouterFinder::begin_getRouter.
1696
- * Create a wrapper instance by calling ::Ice::newCallback_RouterFinder_getRouter.
1697
- */
1698
- template<class T>
1699
- class CallbackNC_RouterFinder_getRouter : public Callback_RouterFinder_getRouter_Base, public ::IceInternal::TwowayCallbackNC<T>
385
+ namespace Ice
1700
386
  {
1701
- public:
1702
-
1703
- typedef IceUtil::Handle<T> TPtr;
1704
-
1705
- typedef void (T::*Exception)(const ::Ice::Exception&);
1706
- typedef void (T::*Sent)(bool);
1707
- typedef void (T::*Response)(const RouterPrx&);
387
+ /// Represents an intermediary object that routes requests and replies between clients and Ice objects that are not
388
+ /// directly reachable from these clients.
389
+ /// @remarks The Slice compiler generated this skeleton class from Slice interface `::Ice::Router`.
390
+ /// @headerfile Ice/Ice.h
391
+ class ICE_API AsyncRouter : public virtual Ice::Object
392
+ {
393
+ public:
394
+ /// The associated proxy type.
395
+ using ProxyType = RouterPrx;
396
+
397
+ /// Dispatches an incoming request to one of the member functions of this generated class, based on the operation name carried by the request.
398
+ /// @param request The incoming request.
399
+ /// @param sendResponse The callback to send the response.
400
+ void dispatch(IncomingRequest& request, std::function<void(OutgoingResponse)> sendResponse) override;
401
+
402
+ [[nodiscard]] std::vector<std::string> ice_ids(const Ice::Current& current) const override;
403
+
404
+ [[nodiscard]] std::string ice_id(const Ice::Current& current) const override;
405
+
406
+ /// Gets the router's client proxy, i.e. the proxy to use for forwarding requests from the client to the
407
+ /// router. If a null proxy is returned, the client will forward requests to the router's endpoints.
408
+ /// @param response The response callback. It accepts:
409
+ /// - `returnValue` The router's client proxy.
410
+ /// - `hasRoutingTable` Indicates whether or not the router supports a routing table. If `true`, the Ice
411
+ /// runtime will call ::Ice::RouterPrx::addProxies to populate the routing table. The Ice runtime assumes the router has
412
+ /// a routing table when @p hasRoutingTable is not set.
413
+ /// @param exception The exception callback.
414
+ /// @param current The Current object of the incoming request.
415
+ /// @remarks Introduced in Ice 3.7.
416
+ virtual void getClientProxyAsync(std::function<void(const std::optional<Ice::ObjectPrx>& returnValue, std::optional<bool> hasRoutingTable)> response, std::function<void(std::exception_ptr)> exception, const Ice::Current& current) const = 0;
417
+
418
+ /// @private
419
+ void _iceD_getClientProxy(Ice::IncomingRequest&, std::function<void(Ice::OutgoingResponse)>) const;
420
+
421
+ /// Gets the router's server proxy, i.e. the proxy to use for forwarding requests from the server to the
422
+ /// router. The Ice runtime uses the endpoints of this proxy as the published endpoints of bi-dir object
423
+ /// adapters.
424
+ /// @param response The response callback. It accepts:
425
+ /// - The router's server proxy.
426
+ /// @param exception The exception callback.
427
+ /// @param current The Current object of the incoming request.
428
+ virtual void getServerProxyAsync(std::function<void(const std::optional<Ice::ObjectPrx>& returnValue)> response, std::function<void(std::exception_ptr)> exception, const Ice::Current& current) const = 0;
429
+
430
+ /// @private
431
+ void _iceD_getServerProxy(Ice::IncomingRequest&, std::function<void(Ice::OutgoingResponse)>) const;
432
+
433
+ /// Adds new proxy information to the router's routing table.
434
+ /// @param proxies The proxies to add. Adding a null proxy is an error.
435
+ /// @param response The response callback. It accepts:
436
+ /// - Proxies discarded by the router. These proxies are all non-null.
437
+ /// @param exception The exception callback.
438
+ /// @param current The Current object of the incoming request.
439
+ virtual void addProxiesAsync(ObjectProxySeq proxies, std::function<void(const ObjectProxySeq& returnValue)> response, std::function<void(std::exception_ptr)> exception, const Ice::Current& current) = 0;
440
+
441
+ /// @private
442
+ void _iceD_addProxies(Ice::IncomingRequest&, std::function<void(Ice::OutgoingResponse)>);
443
+
444
+ /// Gets the type ID of the associated Slice interface.
445
+ /// @return The string `"::Ice::Router"`.
446
+ static const char* ice_staticId() noexcept;
447
+ };
1708
448
 
1709
- CallbackNC_RouterFinder_getRouter(const TPtr& obj, Response cb, Exception excb, Sent sentcb)
1710
- : ::IceInternal::TwowayCallbackNC<T>(obj, cb != 0, excb, sentcb), _response(cb)
1711
- {
1712
- }
449
+ /// A shared pointer to an AsyncRouter.
450
+ using AsyncRouterPtr = std::shared_ptr<AsyncRouter>;
1713
451
 
1714
- /// \cond INTERNAL
1715
- virtual void completed(const AsyncResultPtr& result) const
452
+ /// Provides access to a RouterPrx object via a fixed identity.
453
+ /// A RouterFinder is always registered with identity `Ice/RouterFinder`. This allows clients to obtain the
454
+ /// associated Router proxy with just the endpoint information of the object. For example, you can use the
455
+ /// RouterFinder proxy `Ice/RouterFinder:tcp -h somehost -p 4061` to get the Router proxy
456
+ /// `MyGlacier2/Router:tcp -h somehost -p 4061`.
457
+ /// @remarks The Slice compiler generated this skeleton class from Slice interface `::Ice::RouterFinder`.
458
+ /// @headerfile Ice/Ice.h
459
+ class ICE_API AsyncRouterFinder : public virtual Ice::Object
1716
460
  {
1717
- RouterFinderPrx proxy = RouterFinderPrx::uncheckedCast(result->getProxy());
1718
- RouterPrx ret;
1719
- try
1720
- {
1721
- ret = proxy->end_getRouter(result);
1722
- }
1723
- catch(const ::Ice::Exception& ex)
1724
- {
1725
- ::IceInternal::CallbackNC<T>::exception(result, ex);
1726
- return;
1727
- }
1728
- if(_response)
1729
- {
1730
- (::IceInternal::CallbackNC<T>::_callback.get()->*_response)(ret);
1731
- }
1732
- }
1733
- /// \endcond
1734
-
1735
- private:
1736
-
1737
- Response _response;
1738
- };
1739
-
1740
- /**
1741
- * Creates a callback wrapper instance that delegates to your object.
1742
- * @param instance The callback object.
1743
- * @param cb The success method of the callback object.
1744
- * @param excb The exception method of the callback object.
1745
- * @param sentcb The sent method of the callback object.
1746
- * @return An object that can be passed to an asynchronous invocation of IceProxy::Ice::RouterFinder::begin_getRouter.
1747
- */
1748
- template<class T> Callback_RouterFinder_getRouterPtr
1749
- newCallback_RouterFinder_getRouter(const IceUtil::Handle<T>& instance, void (T::*cb)(const RouterPrx&), void (T::*excb)(const ::Ice::Exception&), void (T::*sentcb)(bool) = 0)
1750
- {
1751
- return new CallbackNC_RouterFinder_getRouter<T>(instance, cb, excb, sentcb);
1752
- }
461
+ public:
462
+ /// The associated proxy type.
463
+ using ProxyType = RouterFinderPrx;
1753
464
 
1754
- /**
1755
- * Creates a callback wrapper instance that delegates to your object.
1756
- * @param instance The callback object.
1757
- * @param cb The success method of the callback object.
1758
- * @param excb The exception method of the callback object.
1759
- * @param sentcb The sent method of the callback object.
1760
- * @return An object that can be passed to an asynchronous invocation of IceProxy::Ice::RouterFinder::begin_getRouter.
1761
- */
1762
- template<class T> Callback_RouterFinder_getRouterPtr
1763
- newCallback_RouterFinder_getRouter(T* instance, void (T::*cb)(const RouterPrx&), void (T::*excb)(const ::Ice::Exception&), void (T::*sentcb)(bool) = 0)
1764
- {
1765
- return new CallbackNC_RouterFinder_getRouter<T>(instance, cb, excb, sentcb);
1766
- }
465
+ /// Dispatches an incoming request to one of the member functions of this generated class, based on the operation name carried by the request.
466
+ /// @param request The incoming request.
467
+ /// @param sendResponse The callback to send the response.
468
+ void dispatch(IncomingRequest& request, std::function<void(OutgoingResponse)> sendResponse) override;
1767
469
 
1768
- /**
1769
- * Type-safe asynchronous callback wrapper class with cookie support used for calls to
1770
- * IceProxy::Ice::RouterFinder::begin_getRouter.
1771
- * Create a wrapper instance by calling ::Ice::newCallback_RouterFinder_getRouter.
1772
- */
1773
- template<class T, typename CT>
1774
- class Callback_RouterFinder_getRouter : public Callback_RouterFinder_getRouter_Base, public ::IceInternal::TwowayCallback<T, CT>
1775
- {
1776
- public:
470
+ [[nodiscard]] std::vector<std::string> ice_ids(const Ice::Current& current) const override;
1777
471
 
1778
- typedef IceUtil::Handle<T> TPtr;
472
+ [[nodiscard]] std::string ice_id(const Ice::Current& current) const override;
1779
473
 
1780
- typedef void (T::*Exception)(const ::Ice::Exception& , const CT&);
1781
- typedef void (T::*Sent)(bool , const CT&);
1782
- typedef void (T::*Response)(const RouterPrx&, const CT&);
1783
-
1784
- Callback_RouterFinder_getRouter(const TPtr& obj, Response cb, Exception excb, Sent sentcb)
1785
- : ::IceInternal::TwowayCallback<T, CT>(obj, cb != 0, excb, sentcb), _response(cb)
1786
- {
1787
- }
474
+ /// Gets a proxy to the associated ::Ice::RouterPrx. The proxy might point to several replicas.
475
+ /// @param response The response callback. It accepts:
476
+ /// - The router proxy. This proxy is never null.
477
+ /// @param exception The exception callback.
478
+ /// @param current The Current object of the incoming request.
479
+ virtual void getRouterAsync(std::function<void(const std::optional<RouterPrx>& returnValue)> response, std::function<void(std::exception_ptr)> exception, const Ice::Current& current) = 0;
1788
480
 
1789
- /// \cond INTERNAL
1790
- virtual void completed(const AsyncResultPtr& result) const
1791
- {
1792
- RouterFinderPrx proxy = RouterFinderPrx::uncheckedCast(result->getProxy());
1793
- RouterPrx ret;
1794
- try
1795
- {
1796
- ret = proxy->end_getRouter(result);
1797
- }
1798
- catch(const ::Ice::Exception& ex)
1799
- {
1800
- ::IceInternal::Callback<T, CT>::exception(result, ex);
1801
- return;
1802
- }
1803
- if(_response)
1804
- {
1805
- (::IceInternal::Callback<T, CT>::_callback.get()->*_response)(ret, CT::dynamicCast(result->getCookie()));
1806
- }
1807
- }
1808
- /// \endcond
1809
-
1810
- private:
1811
-
1812
- Response _response;
1813
- };
1814
-
1815
- /**
1816
- * Creates a callback wrapper instance that delegates to your object.
1817
- * Use this overload when your callback methods receive a cookie value.
1818
- * @param instance The callback object.
1819
- * @param cb The success method of the callback object.
1820
- * @param excb The exception method of the callback object.
1821
- * @param sentcb The sent method of the callback object.
1822
- * @return An object that can be passed to an asynchronous invocation of IceProxy::Ice::RouterFinder::begin_getRouter.
1823
- */
1824
- template<class T, typename CT> Callback_RouterFinder_getRouterPtr
1825
- newCallback_RouterFinder_getRouter(const IceUtil::Handle<T>& instance, void (T::*cb)(const RouterPrx&, const CT&), void (T::*excb)(const ::Ice::Exception&, const CT&), void (T::*sentcb)(bool, const CT&) = 0)
1826
- {
1827
- return new Callback_RouterFinder_getRouter<T, CT>(instance, cb, excb, sentcb);
1828
- }
481
+ /// @private
482
+ void _iceD_getRouter(Ice::IncomingRequest&, std::function<void(Ice::OutgoingResponse)>);
1829
483
 
1830
- /**
1831
- * Creates a callback wrapper instance that delegates to your object.
1832
- * Use this overload when your callback methods receive a cookie value.
1833
- * @param instance The callback object.
1834
- * @param cb The success method of the callback object.
1835
- * @param excb The exception method of the callback object.
1836
- * @param sentcb The sent method of the callback object.
1837
- * @return An object that can be passed to an asynchronous invocation of IceProxy::Ice::RouterFinder::begin_getRouter.
1838
- */
1839
- template<class T, typename CT> Callback_RouterFinder_getRouterPtr
1840
- newCallback_RouterFinder_getRouter(T* instance, void (T::*cb)(const RouterPrx&, const CT&), void (T::*excb)(const ::Ice::Exception&, const CT&), void (T::*sentcb)(bool, const CT&) = 0)
1841
- {
1842
- return new Callback_RouterFinder_getRouter<T, CT>(instance, cb, excb, sentcb);
1843
- }
484
+ /// Gets the type ID of the associated Slice interface.
485
+ /// @return The string `"::Ice::RouterFinder"`.
486
+ static const char* ice_staticId() noexcept;
487
+ };
1844
488
 
489
+ /// A shared pointer to an AsyncRouterFinder.
490
+ using AsyncRouterFinderPtr = std::shared_ptr<AsyncRouterFinder>;
1845
491
  }
1846
492
 
1847
- #endif
493
+ // NOLINTEND(modernize-concat-nested-namespaces)
1848
494
 
1849
- #include <IceUtil/PopDisableWarnings.h>
495
+ #include <Ice/PopDisableWarnings.h>
1850
496
  #endif