zeroc-ice 3.6.5 → 3.7.4

Sign up to get free protection for your applications and to get access to all the features.
Files changed (777) hide show
  1. checksums.yaml +5 -5
  2. data/ICE_LICENSE +17 -17
  3. data/LICENSE +12 -12
  4. data/bin/slice2rb +1 -6
  5. data/ext/Communicator.cpp +223 -61
  6. data/ext/Communicator.h +1 -6
  7. data/ext/Config.h +23 -7
  8. data/ext/Connection.cpp +108 -76
  9. data/ext/Connection.h +4 -6
  10. data/ext/Endpoint.cpp +16 -54
  11. data/ext/Endpoint.h +1 -6
  12. data/ext/ImplicitContext.cpp +1 -10
  13. data/ext/ImplicitContext.h +1 -6
  14. data/ext/Init.cpp +4 -6
  15. data/ext/Logger.cpp +1 -6
  16. data/ext/Logger.h +1 -6
  17. data/ext/Operation.cpp +38 -54
  18. data/ext/Operation.h +1 -6
  19. data/ext/Properties.cpp +3 -8
  20. data/ext/Properties.h +1 -6
  21. data/ext/Proxy.cpp +111 -70
  22. data/ext/Proxy.h +1 -6
  23. data/ext/Slice.cpp +5 -20
  24. data/ext/Slice.h +1 -6
  25. data/ext/Types.cpp +313 -224
  26. data/ext/Types.h +118 -71
  27. data/ext/Util.cpp +69 -36
  28. data/ext/Util.h +117 -42
  29. data/ext/ValueFactoryManager.cpp +440 -0
  30. data/ext/ValueFactoryManager.h +95 -0
  31. data/ext/extconf.rb +52 -48
  32. data/ext/ice/cpp/include/Ice/Application.h +275 -105
  33. data/ext/ice/cpp/include/Ice/AsyncResult.h +124 -337
  34. data/ext/ice/cpp/include/Ice/AsyncResultF.h +4 -7
  35. data/ext/ice/cpp/include/Ice/BatchRequestInterceptor.h +39 -16
  36. data/ext/ice/cpp/include/Ice/BatchRequestQueueF.h +1 -6
  37. data/ext/ice/cpp/include/Ice/Buffer.h +10 -15
  38. data/ext/ice/cpp/include/Ice/CommunicatorAsync.h +56 -17
  39. data/ext/ice/cpp/include/Ice/Comparable.h +205 -0
  40. data/ext/ice/cpp/include/Ice/Config.h +16 -39
  41. data/ext/ice/cpp/include/Ice/ConnectionAsync.h +203 -16
  42. data/ext/ice/cpp/include/Ice/ConnectionIF.h +7 -6
  43. data/ext/ice/cpp/include/Ice/ConsoleUtil.h +23 -0
  44. data/ext/ice/cpp/include/Ice/DefaultValueFactory.h +57 -0
  45. data/ext/ice/cpp/include/Ice/DispatchInterceptor.h +20 -12
  46. data/ext/ice/cpp/include/Ice/Dispatcher.h +35 -19
  47. data/ext/ice/cpp/include/Ice/DynamicLibrary.h +7 -10
  48. data/ext/ice/cpp/include/Ice/DynamicLibraryF.h +1 -6
  49. data/ext/ice/cpp/include/Ice/Exception.h +110 -63
  50. data/ext/ice/cpp/include/Ice/ExceptionHelpers.h +74 -0
  51. data/ext/ice/cpp/include/Ice/FactoryTable.h +22 -18
  52. data/ext/ice/cpp/include/Ice/FactoryTableInit.h +28 -31
  53. data/ext/ice/cpp/include/Ice/Format.h +17 -18
  54. data/ext/ice/cpp/include/Ice/Functional.h +38 -38
  55. data/ext/ice/cpp/include/Ice/GCObject.h +9 -10
  56. data/ext/ice/cpp/include/Ice/Handle.h +6 -16
  57. data/ext/ice/cpp/include/Ice/Ice.h +9 -10
  58. data/ext/ice/cpp/include/Ice/IconvStringConverter.h +377 -0
  59. data/ext/ice/cpp/include/Ice/Incoming.h +132 -38
  60. data/ext/ice/cpp/include/Ice/IncomingAsync.h +109 -31
  61. data/ext/ice/cpp/include/Ice/IncomingAsyncF.h +7 -6
  62. data/ext/ice/cpp/include/Ice/Initialize.h +872 -60
  63. data/ext/ice/cpp/include/Ice/InputStream.h +1514 -0
  64. data/ext/ice/cpp/include/Ice/InstanceF.h +1 -7
  65. data/ext/ice/cpp/include/Ice/InterfaceByValue.h +57 -0
  66. data/ext/ice/cpp/include/Ice/LocalObject.h +13 -14
  67. data/ext/ice/cpp/include/Ice/LocalObjectF.h +1 -6
  68. data/ext/ice/cpp/include/Ice/LoggerUtil.h +56 -24
  69. data/ext/ice/cpp/include/Ice/MetricsAdminI.h +124 -71
  70. data/ext/ice/cpp/include/Ice/MetricsFunctional.h +25 -10
  71. data/ext/ice/cpp/include/Ice/MetricsObserverI.h +116 -32
  72. data/ext/ice/cpp/include/Ice/NativePropertiesAdmin.h +61 -30
  73. data/ext/ice/cpp/include/Ice/Object.h +413 -78
  74. data/ext/ice/cpp/include/Ice/ObjectF.h +12 -8
  75. data/ext/ice/cpp/include/Ice/ObserverHelper.h +18 -13
  76. data/ext/ice/cpp/include/Ice/Optional.h +1114 -0
  77. data/ext/ice/cpp/include/Ice/OutgoingAsync.h +684 -89
  78. data/ext/ice/cpp/include/Ice/OutgoingAsyncF.h +12 -11
  79. data/ext/ice/cpp/include/Ice/OutputStream.h +1092 -0
  80. data/ext/ice/cpp/include/Ice/Protocol.h +49 -17
  81. data/ext/ice/cpp/include/Ice/Proxy.h +3438 -745
  82. data/ext/ice/cpp/include/Ice/ProxyF.h +13 -38
  83. data/ext/ice/cpp/include/Ice/ProxyFactoryF.h +1 -6
  84. data/ext/ice/cpp/include/Ice/ProxyHandle.h +43 -55
  85. data/ext/ice/cpp/include/Ice/ReferenceF.h +1 -6
  86. data/ext/ice/cpp/include/Ice/RegisterPlugins.h +84 -12
  87. data/ext/ice/cpp/include/Ice/RequestHandlerF.h +10 -9
  88. data/ext/ice/cpp/include/Ice/ResponseHandlerF.h +6 -6
  89. data/ext/ice/cpp/include/Ice/SHA1.h +42 -0
  90. data/ext/ice/cpp/include/Ice/ServantManagerF.h +1 -6
  91. data/ext/ice/cpp/include/Ice/Service.h +273 -154
  92. data/ext/ice/cpp/include/Ice/SliceChecksums.h +5 -6
  93. data/ext/ice/cpp/include/Ice/SlicedData.h +121 -53
  94. data/ext/ice/cpp/include/Ice/SlicedDataF.h +17 -11
  95. data/ext/ice/cpp/include/Ice/StreamHelpers.h +453 -140
  96. data/ext/ice/cpp/include/Ice/StringConverter.h +78 -0
  97. data/ext/ice/cpp/include/Ice/ThreadPoolF.h +1 -6
  98. data/ext/ice/cpp/include/Ice/UUID.h +19 -0
  99. data/ext/ice/cpp/include/{IceUtil → Ice}/UniquePtr.h +22 -28
  100. data/ext/ice/cpp/include/Ice/UniqueRef.h +97 -0
  101. data/ext/ice/cpp/include/Ice/UserExceptionFactory.h +45 -13
  102. data/ext/ice/cpp/include/Ice/Value.h +139 -0
  103. data/ext/ice/cpp/include/Ice/ValueF.h +21 -0
  104. data/ext/ice/cpp/include/IceSSL/Config.h +8 -28
  105. data/ext/ice/cpp/include/IceSSL/IceSSL.h +17 -11
  106. data/ext/ice/cpp/include/IceSSL/OpenSSL.h +147 -0
  107. data/ext/ice/cpp/include/IceSSL/Plugin.h +461 -448
  108. data/ext/ice/cpp/include/IceSSL/SChannel.h +72 -0
  109. data/ext/ice/cpp/include/IceSSL/SecureTransport.h +72 -0
  110. data/ext/ice/cpp/include/IceSSL/UWP.h +62 -0
  111. data/ext/ice/cpp/include/IceUtil/Atomic.h +7 -14
  112. data/ext/ice/cpp/include/IceUtil/Cond.h +17 -23
  113. data/ext/ice/cpp/include/IceUtil/Config.h +166 -46
  114. data/ext/ice/cpp/include/IceUtil/ConsoleUtil.h +92 -0
  115. data/ext/ice/cpp/include/IceUtil/CountDownLatch.h +5 -10
  116. data/ext/ice/cpp/include/IceUtil/CtrlCHandler.h +63 -41
  117. data/ext/ice/cpp/include/IceUtil/DisableWarnings.h +5 -13
  118. data/ext/ice/cpp/include/IceUtil/Exception.h +284 -75
  119. data/ext/ice/cpp/include/IceUtil/FileUtil.h +143 -0
  120. data/ext/ice/cpp/include/IceUtil/Functional.h +4 -6
  121. data/ext/ice/cpp/include/IceUtil/Handle.h +11 -16
  122. data/ext/ice/cpp/include/IceUtil/IceUtil.h +4 -15
  123. data/ext/ice/cpp/include/IceUtil/InputUtil.h +3 -8
  124. data/ext/ice/cpp/include/IceUtil/Iterator.h +2 -7
  125. data/ext/ice/cpp/include/IceUtil/Lock.h +8 -15
  126. data/ext/ice/cpp/include/IceUtil/Monitor.h +1 -7
  127. data/ext/ice/cpp/include/IceUtil/Mutex.h +19 -23
  128. data/ext/ice/cpp/include/IceUtil/MutexProtocol.h +2 -7
  129. data/ext/ice/cpp/include/IceUtil/MutexPtrLock.h +4 -9
  130. data/ext/ice/cpp/include/IceUtil/MutexPtrTryLock.h +4 -9
  131. data/ext/ice/cpp/include/IceUtil/Optional.h +134 -23
  132. data/ext/ice/cpp/include/IceUtil/Options.h +17 -23
  133. data/ext/ice/cpp/include/IceUtil/OutputUtil.h +61 -37
  134. data/ext/ice/cpp/include/IceUtil/PopDisableWarnings.h +6 -11
  135. data/ext/ice/cpp/include/IceUtil/PushDisableWarnings.h +18 -15
  136. data/ext/ice/cpp/include/IceUtil/Random.h +39 -8
  137. data/ext/ice/cpp/include/IceUtil/RecMutex.h +7 -13
  138. data/ext/ice/cpp/include/IceUtil/ResourceConfig.h +53 -0
  139. data/ext/ice/cpp/include/IceUtil/ScannerConfig.h +10 -15
  140. data/ext/ice/cpp/include/IceUtil/ScopedArray.h +8 -7
  141. data/ext/ice/cpp/include/IceUtil/Shared.h +5 -12
  142. data/ext/ice/cpp/{src → include}/IceUtil/StopWatch.h +2 -7
  143. data/ext/ice/cpp/include/IceUtil/StringConverter.h +146 -126
  144. data/ext/ice/cpp/include/IceUtil/StringUtil.h +32 -26
  145. data/ext/ice/cpp/include/IceUtil/Thread.h +10 -17
  146. data/ext/ice/cpp/include/IceUtil/ThreadException.h +33 -47
  147. data/ext/ice/cpp/include/IceUtil/Time.h +3 -8
  148. data/ext/ice/cpp/include/IceUtil/Timer.h +18 -18
  149. data/ext/ice/cpp/include/IceUtil/UUID.h +6 -7
  150. data/ext/ice/cpp/include/IceUtil/UndefSysMacros.h +1 -6
  151. data/ext/ice/cpp/include/generated/Ice/BuiltinSequences.h +170 -0
  152. data/ext/ice/cpp/include/generated/Ice/Communicator.h +1156 -0
  153. data/ext/ice/cpp/include/{Ice → generated/Ice}/CommunicatorF.h +51 -16
  154. data/ext/ice/cpp/include/generated/Ice/Connection.h +1660 -0
  155. data/ext/ice/cpp/include/generated/Ice/ConnectionF.h +119 -0
  156. data/ext/ice/cpp/include/generated/Ice/Current.h +322 -0
  157. data/ext/ice/cpp/include/generated/Ice/Endpoint.h +943 -0
  158. data/ext/ice/cpp/include/generated/Ice/EndpointF.h +166 -0
  159. data/ext/ice/cpp/include/generated/Ice/EndpointTypes.h +118 -0
  160. data/ext/ice/cpp/include/{Ice → generated/Ice}/FacetMap.h +31 -15
  161. data/ext/ice/cpp/include/generated/Ice/Identity.h +264 -0
  162. data/ext/ice/cpp/include/generated/Ice/ImplicitContext.h +278 -0
  163. data/ext/ice/cpp/include/{Ice → generated/Ice}/ImplicitContextF.h +51 -16
  164. data/ext/ice/cpp/include/generated/Ice/Instrumentation.h +1143 -0
  165. data/ext/ice/cpp/include/generated/Ice/InstrumentationF.h +128 -0
  166. data/ext/ice/cpp/include/generated/Ice/LocalException.h +7041 -0
  167. data/ext/ice/cpp/include/generated/Ice/Locator.h +3850 -0
  168. data/ext/ice/cpp/include/generated/Ice/LocatorF.h +147 -0
  169. data/ext/ice/cpp/include/generated/Ice/Logger.h +231 -0
  170. data/ext/ice/cpp/include/{Ice → generated/Ice}/LoggerF.h +51 -16
  171. data/ext/ice/cpp/include/generated/Ice/Metrics.h +4717 -0
  172. data/ext/ice/cpp/include/generated/Ice/ObjectAdapter.h +1175 -0
  173. data/ext/ice/cpp/include/{Ice → generated/Ice}/ObjectAdapterF.h +51 -16
  174. data/ext/ice/cpp/include/generated/Ice/ObjectFactory.h +197 -0
  175. data/ext/ice/cpp/include/generated/Ice/Plugin.h +306 -0
  176. data/ext/ice/cpp/include/generated/Ice/PluginF.h +110 -0
  177. data/ext/ice/cpp/include/generated/Ice/Process.h +971 -0
  178. data/ext/ice/cpp/include/generated/Ice/ProcessF.h +125 -0
  179. data/ext/ice/cpp/include/generated/Ice/Properties.h +446 -0
  180. data/ext/ice/cpp/include/generated/Ice/PropertiesAdmin.h +1360 -0
  181. data/ext/ice/cpp/include/generated/Ice/PropertiesF.h +134 -0
  182. data/ext/ice/cpp/include/generated/Ice/RemoteLogger.h +2689 -0
  183. data/ext/ice/cpp/include/generated/Ice/Router.h +1838 -0
  184. data/ext/ice/cpp/include/generated/Ice/RouterF.h +125 -0
  185. data/ext/ice/cpp/include/generated/Ice/ServantLocator.h +299 -0
  186. data/ext/ice/cpp/include/{Ice → generated/Ice}/ServantLocatorF.h +51 -16
  187. data/ext/ice/cpp/include/{Ice → generated/Ice}/SliceChecksumDict.h +34 -14
  188. data/ext/ice/cpp/include/generated/Ice/ValueFactory.h +318 -0
  189. data/ext/ice/cpp/include/generated/Ice/Version.h +357 -0
  190. data/ext/ice/cpp/include/generated/IceSSL/ConnectionInfo.h +223 -0
  191. data/ext/ice/cpp/include/generated/IceSSL/ConnectionInfoF.h +101 -0
  192. data/ext/ice/cpp/include/generated/IceSSL/EndpointInfo.h +181 -0
  193. data/ext/ice/cpp/src/Ice/ACM.cpp +38 -27
  194. data/ext/ice/cpp/src/Ice/ACM.h +9 -7
  195. data/ext/ice/cpp/src/Ice/ACMF.h +30 -0
  196. data/ext/ice/cpp/src/Ice/Acceptor.cpp +6 -6
  197. data/ext/ice/cpp/src/Ice/Acceptor.h +4 -8
  198. data/ext/ice/cpp/src/Ice/AcceptorF.h +1 -6
  199. data/ext/ice/cpp/src/Ice/ArgVector.cpp +59 -0
  200. data/ext/ice/cpp/src/Ice/ArgVector.h +36 -0
  201. data/ext/ice/cpp/src/Ice/AsyncResult.cpp +15 -544
  202. data/ext/ice/cpp/src/Ice/Base64.cpp +22 -28
  203. data/ext/ice/cpp/src/Ice/Base64.h +1 -6
  204. data/ext/ice/cpp/src/Ice/BatchRequestQueue.cpp +41 -18
  205. data/ext/ice/cpp/src/Ice/BatchRequestQueue.h +15 -15
  206. data/ext/ice/cpp/src/Ice/Buffer.cpp +75 -18
  207. data/ext/ice/cpp/src/Ice/BuiltinSequences.cpp +21 -12
  208. data/ext/ice/cpp/src/Ice/CollocatedRequestHandler.cpp +86 -197
  209. data/ext/ice/cpp/src/Ice/CollocatedRequestHandler.h +17 -23
  210. data/ext/ice/cpp/src/Ice/Communicator.cpp +43 -15
  211. data/ext/ice/cpp/src/Ice/CommunicatorF.cpp +28 -11
  212. data/ext/ice/cpp/src/Ice/CommunicatorI.cpp +318 -117
  213. data/ext/ice/cpp/src/Ice/CommunicatorI.h +95 -40
  214. data/ext/ice/cpp/src/{IceUtil → Ice}/Cond.cpp +3 -8
  215. data/ext/ice/cpp/src/Ice/ConnectRequestHandler.cpp +55 -122
  216. data/ext/ice/cpp/src/Ice/ConnectRequestHandler.h +15 -31
  217. data/ext/ice/cpp/src/Ice/ConnectRequestHandlerF.h +6 -7
  218. data/ext/ice/cpp/src/Ice/Connection.cpp +111 -20
  219. data/ext/ice/cpp/src/Ice/ConnectionF.cpp +28 -11
  220. data/ext/ice/cpp/src/Ice/ConnectionFactory.cpp +300 -107
  221. data/ext/ice/cpp/src/Ice/ConnectionFactory.h +44 -28
  222. data/ext/ice/cpp/src/Ice/ConnectionFactoryF.h +30 -0
  223. data/ext/ice/cpp/src/Ice/ConnectionI.cpp +785 -713
  224. data/ext/ice/cpp/src/Ice/ConnectionI.h +105 -80
  225. data/ext/ice/cpp/src/Ice/ConnectionRequestHandler.cpp +2 -20
  226. data/ext/ice/cpp/src/Ice/ConnectionRequestHandler.h +5 -9
  227. data/ext/ice/cpp/src/Ice/Connector.cpp +6 -6
  228. data/ext/ice/cpp/src/Ice/Connector.h +4 -8
  229. data/ext/ice/cpp/src/Ice/ConnectorF.h +1 -6
  230. data/ext/ice/cpp/src/{IceUtil → Ice}/CountDownLatch.cpp +4 -9
  231. data/ext/ice/cpp/src/Ice/Current.cpp +30 -12
  232. data/ext/ice/cpp/src/Ice/DefaultsAndOverrides.cpp +10 -16
  233. data/ext/ice/cpp/src/Ice/DefaultsAndOverrides.h +1 -6
  234. data/ext/ice/cpp/src/Ice/DefaultsAndOverridesF.h +1 -6
  235. data/ext/ice/cpp/src/Ice/DispatchInterceptor.cpp +13 -25
  236. data/ext/ice/cpp/src/Ice/DynamicLibrary.cpp +34 -28
  237. data/ext/ice/cpp/src/Ice/Endpoint.cpp +107 -19
  238. data/ext/ice/cpp/src/Ice/EndpointF.cpp +28 -11
  239. data/ext/ice/cpp/src/Ice/EndpointFactory.cpp +152 -6
  240. data/ext/ice/cpp/src/Ice/EndpointFactory.h +72 -11
  241. data/ext/ice/cpp/src/Ice/EndpointFactoryF.h +1 -6
  242. data/ext/ice/cpp/src/Ice/EndpointFactoryManager.cpp +41 -36
  243. data/ext/ice/cpp/src/Ice/EndpointFactoryManager.h +10 -9
  244. data/ext/ice/cpp/src/Ice/EndpointFactoryManagerF.h +1 -6
  245. data/ext/ice/cpp/src/Ice/EndpointI.cpp +18 -7
  246. data/ext/ice/cpp/src/Ice/EndpointI.h +39 -18
  247. data/ext/ice/cpp/src/Ice/EndpointIF.h +18 -10
  248. data/ext/ice/cpp/src/Ice/EndpointTypes.cpp +19 -12
  249. data/ext/ice/cpp/src/Ice/EventHandler.cpp +6 -9
  250. data/ext/ice/cpp/src/Ice/EventHandler.h +13 -13
  251. data/ext/ice/cpp/src/Ice/EventHandlerF.h +5 -7
  252. data/ext/ice/cpp/src/Ice/Exception.cpp +102 -98
  253. data/ext/ice/cpp/src/Ice/FacetMap.cpp +21 -12
  254. data/ext/ice/cpp/src/Ice/FactoryTable.cpp +37 -33
  255. data/ext/ice/cpp/src/Ice/FactoryTableInit.cpp +2 -9
  256. data/ext/ice/cpp/src/Ice/GCObject.cpp +29 -31
  257. data/ext/ice/cpp/src/Ice/HashUtil.h +3 -9
  258. data/ext/ice/cpp/src/Ice/HttpParser.cpp +1 -7
  259. data/ext/ice/cpp/src/Ice/HttpParser.h +1 -6
  260. data/ext/ice/cpp/src/Ice/IPEndpointI.cpp +128 -111
  261. data/ext/ice/cpp/src/Ice/IPEndpointI.h +23 -19
  262. data/ext/ice/cpp/src/Ice/IPEndpointIF.h +6 -7
  263. data/ext/ice/cpp/src/Ice/IconvStringConverter.cpp +51 -0
  264. data/ext/ice/cpp/src/Ice/Identity.cpp +25 -16
  265. data/ext/ice/cpp/src/Ice/ImplicitContext.cpp +41 -13
  266. data/ext/ice/cpp/src/Ice/ImplicitContextF.cpp +28 -11
  267. data/ext/ice/cpp/src/Ice/ImplicitContextI.cpp +11 -28
  268. data/ext/ice/cpp/src/Ice/ImplicitContextI.h +7 -10
  269. data/ext/ice/cpp/src/Ice/Incoming.cpp +284 -255
  270. data/ext/ice/cpp/src/Ice/IncomingAsync.cpp +104 -214
  271. data/ext/ice/cpp/src/Ice/IncomingRequest.h +5 -9
  272. data/ext/ice/cpp/src/Ice/Initialize.cpp +309 -193
  273. data/ext/ice/cpp/src/Ice/InputStream.cpp +2726 -0
  274. data/ext/ice/cpp/src/Ice/Instance.cpp +243 -262
  275. data/ext/ice/cpp/src/Ice/Instance.h +30 -23
  276. data/ext/ice/cpp/src/Ice/Instrumentation.cpp +137 -23
  277. data/ext/ice/cpp/src/Ice/InstrumentationF.cpp +28 -11
  278. data/ext/ice/cpp/src/Ice/InstrumentationI.cpp +118 -105
  279. data/ext/ice/cpp/src/Ice/InstrumentationI.h +30 -36
  280. data/ext/ice/cpp/src/Ice/LocalException.cpp +1191 -422
  281. data/ext/ice/cpp/src/Ice/LocalObject.cpp +1 -7
  282. data/ext/ice/cpp/src/Ice/Locator.cpp +1282 -1222
  283. data/ext/ice/cpp/src/Ice/LocatorF.cpp +30 -12
  284. data/ext/ice/cpp/src/Ice/LocatorInfo.cpp +150 -186
  285. data/ext/ice/cpp/src/Ice/LocatorInfo.h +31 -36
  286. data/ext/ice/cpp/src/Ice/LocatorInfoF.h +1 -6
  287. data/ext/ice/cpp/src/Ice/Logger.cpp +39 -12
  288. data/ext/ice/cpp/src/Ice/LoggerAdminI.cpp +182 -88
  289. data/ext/ice/cpp/src/Ice/LoggerAdminI.h +4 -9
  290. data/ext/ice/cpp/src/Ice/LoggerF.cpp +28 -11
  291. data/ext/ice/cpp/src/Ice/LoggerI.cpp +26 -55
  292. data/ext/ice/cpp/src/Ice/LoggerI.h +7 -18
  293. data/ext/ice/cpp/src/Ice/LoggerUtil.cpp +10 -17
  294. data/ext/ice/cpp/src/Ice/Metrics.cpp +1280 -1107
  295. data/ext/ice/cpp/src/Ice/MetricsAdminI.cpp +58 -33
  296. data/ext/ice/cpp/src/Ice/MetricsObserverI.cpp +1 -7
  297. data/ext/ice/cpp/src/Ice/Network.cpp +753 -408
  298. data/ext/ice/cpp/src/Ice/Network.h +99 -36
  299. data/ext/ice/cpp/src/Ice/NetworkF.h +2 -7
  300. data/ext/ice/cpp/src/Ice/NetworkProxy.cpp +20 -19
  301. data/ext/ice/cpp/src/Ice/NetworkProxy.h +5 -7
  302. data/ext/ice/cpp/src/Ice/NetworkProxyF.h +1 -6
  303. data/ext/ice/cpp/src/Ice/OSLogLoggerI.cpp +57 -0
  304. data/ext/ice/cpp/src/Ice/OSLogLoggerI.h +40 -0
  305. data/ext/ice/cpp/src/Ice/Object.cpp +227 -232
  306. data/ext/ice/cpp/src/Ice/ObjectAdapter.cpp +45 -13
  307. data/ext/ice/cpp/src/Ice/ObjectAdapterF.cpp +28 -11
  308. data/ext/ice/cpp/src/Ice/ObjectAdapterFactory.cpp +83 -33
  309. data/ext/ice/cpp/src/Ice/ObjectAdapterFactory.h +13 -12
  310. data/ext/ice/cpp/src/Ice/ObjectAdapterFactoryF.h +25 -0
  311. data/ext/ice/cpp/src/Ice/ObjectAdapterI.cpp +298 -191
  312. data/ext/ice/cpp/src/Ice/ObjectAdapterI.h +44 -39
  313. data/ext/ice/cpp/src/Ice/ObjectFactory.cpp +41 -13
  314. data/ext/ice/cpp/src/Ice/ObserverHelper.cpp +9 -37
  315. data/ext/ice/cpp/src/Ice/OpaqueEndpointI.cpp +67 -67
  316. data/ext/ice/cpp/src/Ice/OpaqueEndpointI.h +15 -11
  317. data/ext/ice/cpp/src/Ice/OutgoingAsync.cpp +801 -366
  318. data/ext/ice/cpp/src/Ice/OutputStream.cpp +1367 -0
  319. data/ext/ice/cpp/src/Ice/Plugin.cpp +52 -14
  320. data/ext/ice/cpp/src/Ice/PluginF.cpp +28 -11
  321. data/ext/ice/cpp/src/Ice/PluginManagerI.cpp +27 -51
  322. data/ext/ice/cpp/src/Ice/PluginManagerI.h +7 -13
  323. data/ext/ice/cpp/src/Ice/Process.cpp +294 -128
  324. data/ext/ice/cpp/src/Ice/ProcessF.cpp +30 -12
  325. data/ext/ice/cpp/src/Ice/Properties.cpp +42 -15
  326. data/ext/ice/cpp/src/Ice/PropertiesAdmin.cpp +382 -340
  327. data/ext/ice/cpp/src/Ice/PropertiesAdminI.cpp +83 -24
  328. data/ext/ice/cpp/src/Ice/PropertiesAdminI.h +29 -10
  329. data/ext/ice/cpp/src/Ice/PropertiesF.cpp +30 -12
  330. data/ext/ice/cpp/src/Ice/PropertiesI.cpp +46 -57
  331. data/ext/ice/cpp/src/Ice/PropertiesI.h +18 -26
  332. data/ext/ice/cpp/src/Ice/PropertyNames.cpp +112 -19
  333. data/ext/ice/cpp/src/Ice/PropertyNames.h +4 -7
  334. data/ext/ice/cpp/src/Ice/Protocol.cpp +6 -19
  335. data/ext/ice/cpp/src/Ice/ProtocolInstance.cpp +37 -7
  336. data/ext/ice/cpp/src/Ice/ProtocolInstance.h +9 -25
  337. data/ext/ice/cpp/src/Ice/ProtocolInstanceF.h +1 -6
  338. data/ext/ice/cpp/src/Ice/ProtocolPluginFacade.cpp +6 -6
  339. data/ext/ice/cpp/src/Ice/ProtocolPluginFacade.h +3 -6
  340. data/ext/ice/cpp/src/Ice/ProtocolPluginFacadeF.h +1 -6
  341. data/ext/ice/cpp/src/Ice/Proxy.cpp +729 -957
  342. data/ext/ice/cpp/src/Ice/ProxyFactory.cpp +33 -38
  343. data/ext/ice/cpp/src/Ice/ProxyFactory.h +16 -16
  344. data/ext/ice/cpp/src/Ice/Reference.cpp +190 -106
  345. data/ext/ice/cpp/src/Ice/Reference.h +39 -28
  346. data/ext/ice/cpp/src/Ice/ReferenceFactory.cpp +69 -118
  347. data/ext/ice/cpp/src/Ice/ReferenceFactory.h +12 -17
  348. data/ext/ice/cpp/src/Ice/ReferenceFactoryF.h +1 -6
  349. data/ext/ice/cpp/src/Ice/RegisterPluginsInit.cpp +19 -9
  350. data/ext/ice/cpp/src/Ice/RegisterPluginsInit.h +1 -6
  351. data/ext/ice/cpp/src/Ice/RemoteLogger.cpp +766 -565
  352. data/ext/ice/cpp/src/Ice/ReplyStatus.h +1 -6
  353. data/ext/ice/cpp/src/Ice/RequestHandler.cpp +5 -8
  354. data/ext/ice/cpp/src/Ice/RequestHandler.h +10 -18
  355. data/ext/ice/cpp/src/Ice/RequestHandlerFactory.cpp +10 -11
  356. data/ext/ice/cpp/src/Ice/RequestHandlerFactory.h +2 -7
  357. data/ext/ice/cpp/src/Ice/ResponseHandler.cpp +3 -11
  358. data/ext/ice/cpp/src/Ice/ResponseHandler.h +16 -12
  359. data/ext/ice/cpp/src/Ice/RetryQueue.cpp +12 -20
  360. data/ext/ice/cpp/src/Ice/RetryQueue.h +7 -11
  361. data/ext/ice/cpp/src/Ice/RetryQueueF.h +1 -6
  362. data/ext/ice/cpp/src/Ice/Router.cpp +614 -492
  363. data/ext/ice/cpp/src/Ice/RouterF.cpp +30 -12
  364. data/ext/ice/cpp/src/Ice/RouterInfo.cpp +93 -99
  365. data/ext/ice/cpp/src/Ice/RouterInfo.h +42 -38
  366. data/ext/ice/cpp/src/Ice/RouterInfoF.h +1 -6
  367. data/ext/ice/cpp/src/{IceUtil → Ice}/SHA1.cpp +23 -28
  368. data/ext/ice/cpp/src/Ice/Selector.cpp +948 -855
  369. data/ext/ice/cpp/src/Ice/Selector.h +100 -152
  370. data/ext/ice/cpp/src/Ice/ServantLocator.cpp +41 -13
  371. data/ext/ice/cpp/src/Ice/ServantLocatorF.cpp +28 -11
  372. data/ext/ice/cpp/src/Ice/ServantManager.cpp +24 -45
  373. data/ext/ice/cpp/src/Ice/ServantManager.h +1 -6
  374. data/ext/ice/cpp/src/Ice/SharedContext.h +2 -7
  375. data/ext/ice/cpp/src/Ice/SliceChecksumDict.cpp +21 -12
  376. data/ext/ice/cpp/src/Ice/SliceChecksums.cpp +2 -7
  377. data/ext/ice/cpp/src/Ice/SlicedData.cpp +72 -25
  378. data/ext/ice/cpp/src/Ice/StreamSocket.cpp +208 -76
  379. data/ext/ice/cpp/src/Ice/StreamSocket.h +13 -9
  380. data/ext/ice/cpp/src/Ice/StringConverterPlugin.cpp +57 -22
  381. data/ext/ice/cpp/src/Ice/StringUtil.h +30 -0
  382. data/ext/ice/cpp/src/Ice/SysLoggerI.cpp +6 -7
  383. data/ext/ice/cpp/src/Ice/SysLoggerI.h +2 -8
  384. data/ext/ice/cpp/src/Ice/SystemdJournalI.cpp +66 -0
  385. data/ext/ice/cpp/src/Ice/SystemdJournalI.h +39 -0
  386. data/ext/ice/cpp/src/Ice/TcpAcceptor.cpp +169 -49
  387. data/ext/ice/cpp/src/Ice/TcpAcceptor.h +12 -10
  388. data/ext/ice/cpp/src/Ice/TcpConnector.cpp +6 -12
  389. data/ext/ice/cpp/src/Ice/TcpConnector.h +1 -7
  390. data/ext/ice/cpp/src/Ice/TcpEndpointI.cpp +51 -46
  391. data/ext/ice/cpp/src/Ice/TcpEndpointI.h +12 -14
  392. data/ext/ice/cpp/src/Ice/TcpTransceiver.cpp +17 -32
  393. data/ext/ice/cpp/src/Ice/TcpTransceiver.h +7 -15
  394. data/ext/ice/cpp/src/{IceUtil → Ice}/Thread.cpp +41 -54
  395. data/ext/ice/cpp/src/Ice/ThreadPool.cpp +242 -274
  396. data/ext/ice/cpp/src/Ice/ThreadPool.h +46 -48
  397. data/ext/ice/cpp/src/{IceUtil → Ice}/Timer.cpp +38 -26
  398. data/ext/ice/cpp/src/Ice/TraceLevels.cpp +2 -7
  399. data/ext/ice/cpp/src/Ice/TraceLevels.h +1 -6
  400. data/ext/ice/cpp/src/Ice/TraceLevelsF.h +2 -7
  401. data/ext/ice/cpp/src/Ice/TraceUtil.cpp +53 -36
  402. data/ext/ice/cpp/src/Ice/TraceUtil.h +13 -11
  403. data/ext/ice/cpp/src/Ice/Transceiver.cpp +1 -7
  404. data/ext/ice/cpp/src/Ice/Transceiver.h +8 -12
  405. data/ext/ice/cpp/src/Ice/TransceiverF.h +3 -8
  406. data/ext/ice/cpp/src/Ice/UdpConnector.cpp +5 -13
  407. data/ext/ice/cpp/src/Ice/UdpConnector.h +1 -7
  408. data/ext/ice/cpp/src/Ice/UdpEndpointI.cpp +118 -60
  409. data/ext/ice/cpp/src/Ice/UdpEndpointI.h +13 -10
  410. data/ext/ice/cpp/src/Ice/UdpTransceiver.cpp +177 -236
  411. data/ext/ice/cpp/src/Ice/UdpTransceiver.h +15 -22
  412. data/ext/ice/cpp/src/Ice/Value.cpp +76 -0
  413. data/ext/ice/cpp/src/Ice/ValueFactory.cpp +83 -0
  414. data/ext/ice/cpp/src/Ice/ValueFactoryManagerI.cpp +61 -0
  415. data/ext/ice/cpp/src/Ice/ValueFactoryManagerI.h +37 -0
  416. data/ext/ice/cpp/src/Ice/Version.cpp +25 -20
  417. data/ext/ice/cpp/src/Ice/VirtualShared.h +38 -0
  418. data/ext/ice/cpp/src/Ice/WSAcceptor.cpp +3 -14
  419. data/ext/ice/cpp/src/Ice/WSAcceptor.h +3 -12
  420. data/ext/ice/cpp/src/Ice/WSConnector.cpp +5 -16
  421. data/ext/ice/cpp/src/Ice/WSConnector.h +3 -11
  422. data/ext/ice/cpp/src/Ice/WSEndpoint.cpp +188 -89
  423. data/ext/ice/cpp/src/Ice/WSEndpoint.h +22 -37
  424. data/ext/ice/cpp/src/Ice/WSTransceiver.cpp +65 -66
  425. data/ext/ice/cpp/src/Ice/WSTransceiver.h +7 -27
  426. data/ext/ice/cpp/src/IceDiscovery/IceDiscovery.cpp +596 -281
  427. data/ext/ice/cpp/src/IceDiscovery/IceDiscovery.h +1383 -543
  428. data/ext/ice/cpp/src/IceDiscovery/LocatorI.cpp +89 -32
  429. data/ext/ice/cpp/src/IceDiscovery/LocatorI.h +59 -28
  430. data/ext/ice/cpp/src/IceDiscovery/LookupI.cpp +315 -66
  431. data/ext/ice/cpp/src/IceDiscovery/LookupI.h +83 -41
  432. data/ext/ice/cpp/src/IceDiscovery/PluginI.cpp +57 -64
  433. data/ext/ice/cpp/src/IceDiscovery/PluginI.h +3 -8
  434. data/ext/ice/cpp/src/IceLocatorDiscovery/IceLocatorDiscovery.cpp +450 -172
  435. data/ext/ice/cpp/src/IceLocatorDiscovery/IceLocatorDiscovery.h +863 -406
  436. data/ext/ice/cpp/src/IceLocatorDiscovery/Plugin.h +47 -0
  437. data/ext/ice/cpp/src/IceLocatorDiscovery/PluginI.cpp +636 -144
  438. data/ext/ice/cpp/src/IceSSL/AcceptorI.cpp +20 -173
  439. data/ext/ice/cpp/src/IceSSL/AcceptorI.h +8 -22
  440. data/ext/ice/cpp/src/IceSSL/CertificateI.cpp +279 -0
  441. data/ext/ice/cpp/src/IceSSL/CertificateI.h +64 -0
  442. data/ext/ice/cpp/src/IceSSL/ConnectionInfo.cpp +42 -17
  443. data/ext/ice/cpp/src/IceSSL/ConnectionInfoF.cpp +61 -0
  444. data/ext/ice/cpp/src/IceSSL/ConnectorI.cpp +15 -64
  445. data/ext/ice/cpp/src/IceSSL/ConnectorI.h +6 -18
  446. data/ext/ice/cpp/src/IceSSL/EndpointI.cpp +207 -204
  447. data/ext/ice/cpp/src/IceSSL/EndpointI.h +43 -40
  448. data/ext/ice/cpp/src/IceSSL/EndpointInfo.cpp +42 -16
  449. data/ext/ice/cpp/src/IceSSL/Instance.cpp +1 -11
  450. data/ext/ice/cpp/src/IceSSL/Instance.h +7 -12
  451. data/ext/ice/cpp/src/IceSSL/InstanceF.h +11 -12
  452. data/ext/ice/cpp/src/IceSSL/OpenSSLCertificateI.cpp +583 -0
  453. data/ext/ice/cpp/src/IceSSL/OpenSSLEngine.cpp +134 -115
  454. data/ext/ice/cpp/src/IceSSL/OpenSSLEngine.h +59 -0
  455. data/ext/ice/cpp/src/IceSSL/OpenSSLEngineF.h +27 -0
  456. data/ext/ice/cpp/src/IceSSL/OpenSSLPluginI.cpp +127 -0
  457. data/ext/ice/cpp/src/IceSSL/OpenSSLTransceiverI.cpp +477 -182
  458. data/ext/ice/cpp/src/IceSSL/OpenSSLTransceiverI.h +32 -26
  459. data/ext/ice/cpp/src/IceSSL/OpenSSLUtil.cpp +286 -0
  460. data/ext/ice/cpp/src/IceSSL/OpenSSLUtil.h +58 -0
  461. data/ext/ice/cpp/src/IceSSL/PluginI.cpp +71 -46
  462. data/ext/ice/cpp/src/IceSSL/PluginI.h +13 -23
  463. data/ext/ice/cpp/src/IceSSL/RFC2253.cpp +9 -60
  464. data/ext/ice/cpp/src/IceSSL/RFC2253.h +7 -12
  465. data/ext/ice/cpp/src/IceSSL/SChannelCertificateI.cpp +580 -0
  466. data/ext/ice/cpp/src/IceSSL/SChannelEngine.cpp +523 -74
  467. data/ext/ice/cpp/src/IceSSL/SChannelEngine.h +123 -0
  468. data/ext/ice/cpp/src/IceSSL/SChannelEngineF.h +31 -0
  469. data/ext/ice/cpp/src/IceSSL/SChannelPluginI.cpp +73 -0
  470. data/ext/ice/cpp/src/IceSSL/SChannelTransceiverI.cpp +187 -221
  471. data/ext/ice/cpp/src/IceSSL/SChannelTransceiverI.h +24 -26
  472. data/ext/ice/cpp/src/IceSSL/SSLEngine.cpp +97 -94
  473. data/ext/ice/cpp/src/IceSSL/SSLEngine.h +26 -192
  474. data/ext/ice/cpp/src/IceSSL/SSLEngineF.h +4 -24
  475. data/ext/ice/cpp/src/IceSSL/SecureTransportCertificateI.cpp +868 -0
  476. data/ext/ice/cpp/src/IceSSL/SecureTransportEngine.cpp +69 -201
  477. data/ext/ice/cpp/src/IceSSL/SecureTransportEngine.h +59 -0
  478. data/ext/ice/cpp/src/IceSSL/SecureTransportEngineF.h +29 -0
  479. data/ext/ice/cpp/src/IceSSL/SecureTransportPluginI.cpp +75 -0
  480. data/ext/ice/cpp/src/IceSSL/SecureTransportTransceiverI.cpp +174 -161
  481. data/ext/ice/cpp/src/IceSSL/SecureTransportTransceiverI.h +29 -33
  482. data/ext/ice/cpp/src/IceSSL/SecureTransportUtil.cpp +864 -0
  483. data/ext/ice/cpp/src/IceSSL/SecureTransportUtil.h +45 -0
  484. data/ext/ice/cpp/src/IceSSL/TrustManager.cpp +12 -22
  485. data/ext/ice/cpp/src/IceSSL/TrustManager.h +4 -9
  486. data/ext/ice/cpp/src/IceSSL/TrustManagerF.h +3 -8
  487. data/ext/ice/cpp/src/IceSSL/UWPCertificateI.cpp +266 -0
  488. data/ext/ice/cpp/src/IceSSL/UWPEngine.cpp +338 -0
  489. data/ext/ice/cpp/src/IceSSL/UWPEngine.h +41 -0
  490. data/ext/ice/cpp/src/IceSSL/UWPEngineF.h +26 -0
  491. data/ext/ice/cpp/src/IceSSL/UWPPluginI.cpp +89 -0
  492. data/ext/ice/cpp/src/IceSSL/UWPTransceiverI.cpp +383 -0
  493. data/ext/ice/cpp/src/IceSSL/UWPTransceiverI.h +71 -0
  494. data/ext/ice/cpp/src/IceSSL/Util.cpp +71 -1260
  495. data/ext/ice/cpp/src/IceSSL/Util.h +48 -142
  496. data/ext/ice/cpp/src/IceUtil/ConsoleUtil.cpp +157 -0
  497. data/ext/ice/cpp/src/IceUtil/ConvertUTF.cpp +22 -27
  498. data/ext/ice/cpp/src/IceUtil/ConvertUTF.h +34 -31
  499. data/ext/ice/cpp/src/IceUtil/CtrlCHandler.cpp +22 -36
  500. data/ext/ice/cpp/src/IceUtil/FileUtil.cpp +30 -126
  501. data/ext/ice/cpp/src/IceUtil/InputUtil.cpp +1 -6
  502. data/ext/ice/cpp/src/IceUtil/MutexProtocol.cpp +1 -6
  503. data/ext/ice/cpp/src/IceUtil/Options.cpp +20 -33
  504. data/ext/ice/cpp/src/IceUtil/OutputUtil.cpp +47 -21
  505. data/ext/ice/cpp/src/IceUtil/Random.cpp +15 -20
  506. data/ext/ice/cpp/src/IceUtil/RecMutex.cpp +4 -19
  507. data/ext/ice/cpp/src/IceUtil/Shared.cpp +8 -8
  508. data/ext/ice/cpp/src/IceUtil/StringConverter.cpp +501 -269
  509. data/ext/ice/cpp/src/IceUtil/StringUtil.cpp +582 -244
  510. data/ext/ice/cpp/src/IceUtil/ThreadException.cpp +37 -79
  511. data/ext/ice/cpp/src/IceUtil/Time.cpp +6 -11
  512. data/ext/ice/cpp/src/IceUtil/UUID.cpp +17 -22
  513. data/ext/ice/cpp/src/IceUtil/Unicode.cpp +97 -101
  514. data/ext/ice/cpp/src/IceUtil/Unicode.h +21 -40
  515. data/ext/ice/cpp/src/IceUtil/UtilException.cpp +839 -0
  516. data/ext/ice/cpp/src/Slice/CPlusPlusUtil.cpp +894 -234
  517. data/ext/ice/cpp/src/Slice/CPlusPlusUtil.h +72 -0
  518. data/ext/ice/cpp/src/Slice/Checksum.cpp +2 -7
  519. data/ext/ice/cpp/src/Slice/Checksum.h +21 -0
  520. data/ext/ice/cpp/src/Slice/FileTracker.cpp +25 -83
  521. data/ext/ice/cpp/{include → src}/Slice/FileTracker.h +9 -14
  522. data/ext/ice/cpp/src/Slice/Grammar.cpp +1981 -1944
  523. data/ext/ice/cpp/src/Slice/Grammar.h +39 -19
  524. data/ext/ice/cpp/src/Slice/GrammarUtil.h +14 -20
  525. data/ext/ice/cpp/src/Slice/JavaUtil.cpp +2752 -1948
  526. data/ext/ice/cpp/src/Slice/JavaUtil.h +398 -0
  527. data/ext/ice/cpp/src/Slice/MD5.cpp +1 -6
  528. data/ext/ice/cpp/src/Slice/MD5.h +1 -6
  529. data/ext/ice/cpp/src/Slice/MD5I.cpp +8 -1
  530. data/ext/ice/cpp/src/Slice/MD5I.h +1 -1
  531. data/ext/ice/cpp/src/Slice/PHPUtil.cpp +17 -20
  532. data/ext/ice/cpp/src/Slice/PHPUtil.h +36 -0
  533. data/ext/ice/cpp/src/Slice/Parser.cpp +1190 -426
  534. data/ext/ice/cpp/{include → src}/Slice/Parser.h +143 -91
  535. data/ext/ice/cpp/src/Slice/Preprocessor.cpp +67 -36
  536. data/ext/ice/cpp/{include → src}/Slice/Preprocessor.h +8 -18
  537. data/ext/ice/cpp/src/Slice/Python.cpp +218 -111
  538. data/ext/ice/cpp/src/Slice/PythonUtil.cpp +787 -699
  539. data/ext/ice/cpp/src/Slice/PythonUtil.h +70 -0
  540. data/ext/ice/cpp/src/Slice/Ruby.cpp +42 -43
  541. data/ext/ice/cpp/src/Slice/RubyUtil.cpp +175 -445
  542. data/ext/ice/cpp/{include → src}/Slice/RubyUtil.h +6 -11
  543. data/ext/ice/cpp/src/Slice/Scanner.cpp +390 -399
  544. data/ext/ice/cpp/src/Slice/{Util.cpp → SliceUtil.cpp} +36 -69
  545. data/ext/ice/cpp/src/Slice/StringLiteralUtil.cpp +456 -0
  546. data/ext/ice/cpp/src/Slice/Util.h +50 -0
  547. data/ice.gemspec +2 -9
  548. data/lib/Glacier2.rb +1 -6
  549. data/lib/Glacier2/Metrics.rb +6 -50
  550. data/lib/Glacier2/PermissionsVerifier.rb +23 -99
  551. data/lib/Glacier2/PermissionsVerifierF.rb +2 -7
  552. data/lib/Glacier2/Router.rb +31 -78
  553. data/lib/Glacier2/RouterF.rb +2 -7
  554. data/lib/Glacier2/SSLInfo.rb +3 -11
  555. data/lib/Glacier2/Session.rb +87 -311
  556. data/lib/Ice.rb +84 -58
  557. data/lib/Ice/BuiltinSequences.rb +3 -8
  558. data/lib/Ice/Communicator.rb +54 -61
  559. data/lib/Ice/CommunicatorF.rb +2 -7
  560. data/lib/Ice/Connection.rb +152 -166
  561. data/lib/Ice/ConnectionF.rb +2 -7
  562. data/lib/Ice/Current.rb +3 -15
  563. data/lib/Ice/Endpoint.rb +56 -137
  564. data/lib/Ice/EndpointF.rb +2 -7
  565. data/lib/Ice/EndpointTypes.rb +2 -11
  566. data/lib/Ice/FacetMap.rb +3 -8
  567. data/lib/Ice/Identity.rb +4 -12
  568. data/lib/Ice/ImplicitContext.rb +4 -38
  569. data/lib/Ice/ImplicitContextF.rb +2 -7
  570. data/lib/Ice/Instrumentation.rb +22 -279
  571. data/lib/Ice/InstrumentationF.rb +2 -7
  572. data/lib/Ice/LocalException.rb +94 -145
  573. data/lib/Ice/Locator.rb +50 -169
  574. data/lib/Ice/LocatorF.rb +2 -7
  575. data/lib/Ice/Logger.rb +4 -38
  576. data/lib/Ice/LoggerF.rb +2 -7
  577. data/lib/Ice/Metrics.rb +60 -420
  578. data/lib/Ice/ObjectAdapter.rb +29 -0
  579. data/lib/Ice/ObjectAdapterF.rb +2 -7
  580. data/lib/Ice/ObjectFactory.rb +4 -34
  581. data/lib/Ice/Plugin.rb +6 -64
  582. data/lib/Ice/PluginF.rb +2 -7
  583. data/lib/Ice/Process.rb +15 -56
  584. data/lib/Ice/ProcessF.rb +2 -7
  585. data/lib/Ice/Properties.rb +4 -45
  586. data/lib/Ice/PropertiesAdmin.rb +18 -60
  587. data/lib/Ice/PropertiesF.rb +2 -7
  588. data/lib/Ice/RemoteLogger.rb +33 -119
  589. data/lib/Ice/Router.rb +28 -105
  590. data/lib/Ice/RouterF.rb +2 -7
  591. data/lib/Ice/ServantLocator.rb +26 -0
  592. data/lib/Ice/ServantLocatorF.rb +24 -0
  593. data/lib/Ice/SliceChecksumDict.rb +2 -7
  594. data/lib/Ice/ValueFactory.rb +28 -0
  595. data/lib/Ice/Version.rb +4 -15
  596. data/lib/IceBox.rb +1 -6
  597. data/lib/IceBox/IceBox.rb +43 -152
  598. data/lib/IceGrid.rb +1 -9
  599. data/lib/IceGrid/Admin.rb +550 -431
  600. data/lib/IceGrid/Descriptor.rb +61 -533
  601. data/lib/IceGrid/Exception.rb +23 -49
  602. data/lib/IceGrid/FileParser.rb +13 -54
  603. data/lib/IceGrid/PluginFacade.rb +35 -0
  604. data/lib/IceGrid/Registry.rb +150 -62
  605. data/lib/IceGrid/Session.rb +24 -68
  606. data/lib/IceGrid/UserAccountMapper.rb +13 -54
  607. data/lib/IcePatch2.rb +1 -6
  608. data/lib/IcePatch2/FileInfo.rb +4 -15
  609. data/lib/IcePatch2/FileServer.rb +32 -80
  610. data/lib/IceStorm.rb +1 -6
  611. data/lib/IceStorm/IceStorm.rb +78 -210
  612. data/lib/IceStorm/Metrics.rb +10 -93
  613. data/slice/Glacier2/Metrics.ice +20 -10
  614. data/slice/Glacier2/PermissionsVerifier.ice +19 -12
  615. data/slice/Glacier2/PermissionsVerifierF.ice +16 -9
  616. data/slice/Glacier2/Router.ice +19 -13
  617. data/slice/Glacier2/RouterF.ice +16 -9
  618. data/slice/Glacier2/SSLInfo.ice +17 -10
  619. data/slice/Glacier2/Session.ice +24 -18
  620. data/slice/Ice/BuiltinSequences.ice +18 -9
  621. data/slice/Ice/Communicator.ice +180 -64
  622. data/slice/Ice/CommunicatorF.ice +18 -9
  623. data/slice/Ice/Connection.ice +208 -75
  624. data/slice/Ice/ConnectionF.ice +18 -9
  625. data/slice/Ice/Current.ice +37 -28
  626. data/slice/Ice/Endpoint.ice +73 -21
  627. data/slice/Ice/EndpointF.ice +19 -10
  628. data/slice/Ice/EndpointTypes.ice +21 -13
  629. data/slice/Ice/FacetMap.ice +19 -10
  630. data/slice/Ice/Identity.ice +24 -10
  631. data/slice/Ice/ImplicitContext.ice +41 -33
  632. data/slice/Ice/ImplicitContextF.ice +17 -9
  633. data/slice/Ice/Instrumentation.ice +37 -30
  634. data/slice/Ice/InstrumentationF.ice +19 -10
  635. data/slice/Ice/LocalException.ice +118 -112
  636. data/slice/Ice/Locator.ice +28 -21
  637. data/slice/Ice/LocatorF.ice +18 -9
  638. data/slice/Ice/Logger.ice +26 -18
  639. data/slice/Ice/LoggerF.ice +18 -9
  640. data/slice/Ice/Metrics.ice +42 -30
  641. data/slice/Ice/ObjectAdapter.ice +88 -53
  642. data/slice/Ice/ObjectAdapterF.ice +18 -9
  643. data/slice/Ice/ObjectFactory.ice +28 -17
  644. data/slice/Ice/Plugin.ice +25 -13
  645. data/slice/Ice/PluginF.ice +22 -9
  646. data/slice/Ice/Process.ice +20 -11
  647. data/slice/Ice/ProcessF.ice +18 -9
  648. data/slice/Ice/Properties.ice +42 -28
  649. data/slice/Ice/PropertiesAdmin.ice +20 -10
  650. data/slice/Ice/PropertiesF.ice +18 -9
  651. data/slice/Ice/RemoteLogger.ice +23 -19
  652. data/slice/Ice/Router.ice +28 -13
  653. data/slice/Ice/RouterF.ice +18 -9
  654. data/slice/Ice/ServantLocator.ice +40 -29
  655. data/slice/Ice/ServantLocatorF.ice +18 -9
  656. data/slice/Ice/SliceChecksumDict.ice +18 -9
  657. data/slice/Ice/ValueFactory.ice +132 -0
  658. data/slice/Ice/Version.ice +20 -10
  659. data/slice/IceBT/ConnectionInfo.ice +58 -0
  660. data/slice/IceBT/EndpointInfo.ice +56 -0
  661. data/slice/IceBT/Types.ice +44 -0
  662. data/slice/IceBox/IceBox.ice +45 -27
  663. data/slice/IceDiscovery/IceDiscovery.ice +75 -10
  664. data/slice/IceGrid/Admin.ice +410 -44
  665. data/slice/IceGrid/Descriptor.ice +47 -34
  666. data/slice/IceGrid/Exception.ice +43 -32
  667. data/slice/IceGrid/FileParser.ice +21 -12
  668. data/slice/IceGrid/PluginFacade.ice +26 -18
  669. data/slice/IceGrid/Registry.ice +150 -21
  670. data/slice/IceGrid/Session.ice +25 -17
  671. data/slice/IceGrid/UserAccountMapper.ice +23 -14
  672. data/slice/IceIAP/ConnectionInfo.ice +73 -0
  673. data/slice/IceIAP/EndpointInfo.ice +67 -0
  674. data/slice/IceLocatorDiscovery/IceLocatorDiscovery.ice +19 -12
  675. data/slice/IcePatch2/FileInfo.ice +19 -13
  676. data/slice/IcePatch2/FileServer.ice +27 -18
  677. data/slice/IceSSL/ConnectionInfo.ice +27 -23
  678. data/slice/IceSSL/ConnectionInfoF.ice +30 -0
  679. data/slice/IceSSL/EndpointInfo.ice +21 -36
  680. data/slice/IceStorm/IceStorm.ice +33 -24
  681. data/slice/IceStorm/Metrics.ice +19 -11
  682. metadata +148 -120
  683. data/ext/ObjectFactory.cpp +0 -140
  684. data/ext/ObjectFactory.h +0 -50
  685. data/ext/ice/cpp/include/Ice/ACMF.h +0 -30
  686. data/ext/ice/cpp/include/Ice/BasicStream.h +0 -1335
  687. data/ext/ice/cpp/include/Ice/BuiltinSequences.h +0 -82
  688. data/ext/ice/cpp/include/Ice/Communicator.h +0 -200
  689. data/ext/ice/cpp/include/Ice/Connection.h +0 -497
  690. data/ext/ice/cpp/include/Ice/ConnectionF.h +0 -74
  691. data/ext/ice/cpp/include/Ice/ConnectionFactoryF.h +0 -30
  692. data/ext/ice/cpp/include/Ice/Current.h +0 -102
  693. data/ext/ice/cpp/include/Ice/DefaultObjectFactory.h +0 -48
  694. data/ext/ice/cpp/include/Ice/DeprecatedStringConverter.h +0 -62
  695. data/ext/ice/cpp/include/Ice/Endpoint.h +0 -341
  696. data/ext/ice/cpp/include/Ice/EndpointF.h +0 -93
  697. data/ext/ice/cpp/include/Ice/EndpointTypes.h +0 -82
  698. data/ext/ice/cpp/include/Ice/Identity.h +0 -168
  699. data/ext/ice/cpp/include/Ice/ImplicitContext.h +0 -102
  700. data/ext/ice/cpp/include/Ice/Instrumentation.h +0 -365
  701. data/ext/ice/cpp/include/Ice/InstrumentationF.h +0 -75
  702. data/ext/ice/cpp/include/Ice/LocalException.h +0 -1030
  703. data/ext/ice/cpp/include/Ice/Locator.h +0 -2193
  704. data/ext/ice/cpp/include/Ice/LocatorF.h +0 -93
  705. data/ext/ice/cpp/include/Ice/Logger.h +0 -100
  706. data/ext/ice/cpp/include/Ice/Metrics.h +0 -2974
  707. data/ext/ice/cpp/include/Ice/ObjectAdapter.h +0 -168
  708. data/ext/ice/cpp/include/Ice/ObjectAdapterFactoryF.h +0 -26
  709. data/ext/ice/cpp/include/Ice/ObjectFactory.h +0 -92
  710. data/ext/ice/cpp/include/Ice/ObjectFactoryF.h +0 -66
  711. data/ext/ice/cpp/include/Ice/ObjectFactoryManagerF.h +0 -26
  712. data/ext/ice/cpp/include/Ice/Outgoing.h +0 -225
  713. data/ext/ice/cpp/include/Ice/Plugin.h +0 -125
  714. data/ext/ice/cpp/include/Ice/PluginF.h +0 -70
  715. data/ext/ice/cpp/include/Ice/Process.h +0 -574
  716. data/ext/ice/cpp/include/Ice/ProcessF.h +0 -83
  717. data/ext/ice/cpp/include/Ice/Properties.h +0 -136
  718. data/ext/ice/cpp/include/Ice/PropertiesAdmin.h +0 -830
  719. data/ext/ice/cpp/include/Ice/PropertiesF.h +0 -87
  720. data/ext/ice/cpp/include/Ice/RemoteLogger.h +0 -1500
  721. data/ext/ice/cpp/include/Ice/Router.h +0 -1159
  722. data/ext/ice/cpp/include/Ice/RouterF.h +0 -83
  723. data/ext/ice/cpp/include/Ice/ServantLocator.h +0 -96
  724. data/ext/ice/cpp/include/Ice/Stream.h +0 -447
  725. data/ext/ice/cpp/include/Ice/StreamF.h +0 -30
  726. data/ext/ice/cpp/include/Ice/Version.h +0 -262
  727. data/ext/ice/cpp/include/IceSSL/ConnectionInfo.h +0 -158
  728. data/ext/ice/cpp/include/IceSSL/EndpointInfo.h +0 -142
  729. data/ext/ice/cpp/include/IceUtil/AbstractMutex.h +0 -119
  730. data/ext/ice/cpp/include/IceUtil/Cache.h +0 -362
  731. data/ext/ice/cpp/include/IceUtil/IconvStringConverter.h +0 -302
  732. data/ext/ice/cpp/include/IceUtil/SHA1.h +0 -47
  733. data/ext/ice/cpp/include/Slice/CPlusPlusUtil.h +0 -65
  734. data/ext/ice/cpp/include/Slice/Checksum.h +0 -26
  735. data/ext/ice/cpp/include/Slice/CsUtil.h +0 -92
  736. data/ext/ice/cpp/include/Slice/DotNetNames.h +0 -34
  737. data/ext/ice/cpp/include/Slice/JavaUtil.h +0 -279
  738. data/ext/ice/cpp/include/Slice/ObjCUtil.h +0 -127
  739. data/ext/ice/cpp/include/Slice/PHPUtil.h +0 -50
  740. data/ext/ice/cpp/include/Slice/PythonUtil.h +0 -64
  741. data/ext/ice/cpp/include/Slice/Util.h +0 -56
  742. data/ext/ice/cpp/src/Ice/BasicStream.cpp +0 -3428
  743. data/ext/ice/cpp/src/Ice/DeprecatedStringConverter.cpp +0 -62
  744. data/ext/ice/cpp/src/Ice/ObjectFactoryF.cpp +0 -44
  745. data/ext/ice/cpp/src/Ice/ObjectFactoryManager.cpp +0 -139
  746. data/ext/ice/cpp/src/Ice/ObjectFactoryManager.h +0 -43
  747. data/ext/ice/cpp/src/Ice/Outgoing.cpp +0 -694
  748. data/ext/ice/cpp/src/Ice/Stream.cpp +0 -53
  749. data/ext/ice/cpp/src/Ice/StreamI.cpp +0 -832
  750. data/ext/ice/cpp/src/Ice/StreamI.h +0 -198
  751. data/ext/ice/cpp/src/IceSSL/Certificate.cpp +0 -1336
  752. data/ext/ice/cpp/src/IceUtil/ArgVector.cpp +0 -64
  753. data/ext/ice/cpp/src/IceUtil/ArgVector.h +0 -41
  754. data/ext/ice/cpp/src/IceUtil/Exception.cpp +0 -792
  755. data/ext/ice/cpp/src/IceUtil/FileUtil.h +0 -185
  756. data/ext/ice/cpp/src/Slice/CsUtil.cpp +0 -2660
  757. data/ext/ice/cpp/src/Slice/DotNetNames.cpp +0 -146
  758. data/ext/ice/cpp/src/Slice/ObjCUtil.cpp +0 -1310
  759. data/lib/Ice/ObjectFactoryF.rb +0 -29
  760. data/lib/IceGrid/Locator.rb +0 -106
  761. data/lib/IceGrid/Observer.rb +0 -572
  762. data/lib/IceGrid/Query.rb +0 -169
  763. data/slice/Freeze/BackgroundSaveEvictor.ice +0 -111
  764. data/slice/Freeze/CatalogData.ice +0 -49
  765. data/slice/Freeze/Connection.ice +0 -121
  766. data/slice/Freeze/ConnectionF.ice +0 -20
  767. data/slice/Freeze/DB.ice +0 -37
  768. data/slice/Freeze/Evictor.ice +0 -346
  769. data/slice/Freeze/EvictorF.ice +0 -22
  770. data/slice/Freeze/EvictorStorage.ice +0 -72
  771. data/slice/Freeze/Exception.ice +0 -100
  772. data/slice/Freeze/Transaction.ice +0 -58
  773. data/slice/Freeze/TransactionalEvictor.ice +0 -50
  774. data/slice/Ice/ObjectFactoryF.ice +0 -21
  775. data/slice/IceGrid/Locator.ice +0 -57
  776. data/slice/IceGrid/Observer.ice +0 -395
  777. data/slice/IceGrid/Query.ice +0 -131
@@ -0,0 +1,3850 @@
1
+ //
2
+ // Copyright (c) ZeroC, Inc. All rights reserved.
3
+ //
4
+ //
5
+ // Ice version 3.7.4
6
+ //
7
+ // <auto-generated>
8
+ //
9
+ // Generated from file `Locator.ice'
10
+ //
11
+ // Warning: do not edit this file.
12
+ //
13
+ // </auto-generated>
14
+ //
15
+
16
+ #ifndef __Ice_Locator_h__
17
+ #define __Ice_Locator_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/IncomingAsync.h>
33
+ #include <Ice/FactoryTableInit.h>
34
+ #include <IceUtil/ScopedArray.h>
35
+ #include <Ice/Optional.h>
36
+ #include <Ice/ExceptionHelpers.h>
37
+ #include <Ice/Identity.h>
38
+ #include <Ice/Process.h>
39
+ #include <IceUtil/UndefSysMacros.h>
40
+
41
+ #ifndef ICE_IGNORE_VERSION
42
+ # if ICE_INT_VERSION / 100 != 307
43
+ # error Ice version mismatch!
44
+ # endif
45
+ # if ICE_INT_VERSION % 100 >= 50
46
+ # error Beta header file detected
47
+ # endif
48
+ # if ICE_INT_VERSION % 100 < 4
49
+ # error Ice patch level mismatch!
50
+ # endif
51
+ #endif
52
+
53
+ #ifndef ICE_API
54
+ # if defined(ICE_STATIC_LIBS)
55
+ # define ICE_API /**/
56
+ # elif defined(ICE_API_EXPORTS)
57
+ # define ICE_API ICE_DECLSPEC_EXPORT
58
+ # else
59
+ # define ICE_API ICE_DECLSPEC_IMPORT
60
+ # endif
61
+ #endif
62
+
63
+ #ifdef ICE_CPP11_MAPPING // C++11 mapping
64
+
65
+ namespace Ice
66
+ {
67
+
68
+ class LocatorRegistry;
69
+ class LocatorRegistryPrx;
70
+ class Locator;
71
+ class LocatorPrx;
72
+ class LocatorFinder;
73
+ class LocatorFinderPrx;
74
+
75
+ }
76
+
77
+ namespace Ice
78
+ {
79
+
80
+ /**
81
+ * This exception is raised if an adapter cannot be found.
82
+ * \headerfile Ice/Ice.h
83
+ */
84
+ class ICE_CLASS(ICE_API) AdapterNotFoundException : public UserExceptionHelper<AdapterNotFoundException, UserException>
85
+ {
86
+ public:
87
+
88
+ ICE_MEMBER(ICE_API) virtual ~AdapterNotFoundException();
89
+
90
+ AdapterNotFoundException(const AdapterNotFoundException&) = default;
91
+
92
+ AdapterNotFoundException() = default;
93
+
94
+ /**
95
+ * Obtains a tuple containing all of the exception's data members.
96
+ * @return The data members in a tuple.
97
+ */
98
+ std::tuple<> ice_tuple() const
99
+ {
100
+ return std::tie();
101
+ }
102
+
103
+ /**
104
+ * Obtains the Slice type ID of this exception.
105
+ * @return The fully-scoped type ID.
106
+ */
107
+ ICE_MEMBER(ICE_API) static const ::std::string& ice_staticId();
108
+ };
109
+
110
+ /// \cond INTERNAL
111
+ static AdapterNotFoundException _iceS_AdapterNotFoundException_init;
112
+ /// \endcond
113
+
114
+ /**
115
+ * This exception is raised if the replica group provided by the
116
+ * server is invalid.
117
+ * \headerfile Ice/Ice.h
118
+ */
119
+ class ICE_CLASS(ICE_API) InvalidReplicaGroupIdException : public UserExceptionHelper<InvalidReplicaGroupIdException, UserException>
120
+ {
121
+ public:
122
+
123
+ ICE_MEMBER(ICE_API) virtual ~InvalidReplicaGroupIdException();
124
+
125
+ InvalidReplicaGroupIdException(const InvalidReplicaGroupIdException&) = default;
126
+
127
+ InvalidReplicaGroupIdException() = default;
128
+
129
+ /**
130
+ * Obtains a tuple containing all of the exception's data members.
131
+ * @return The data members in a tuple.
132
+ */
133
+ std::tuple<> ice_tuple() const
134
+ {
135
+ return std::tie();
136
+ }
137
+
138
+ /**
139
+ * Obtains the Slice type ID of this exception.
140
+ * @return The fully-scoped type ID.
141
+ */
142
+ ICE_MEMBER(ICE_API) static const ::std::string& ice_staticId();
143
+ };
144
+
145
+ /**
146
+ * This exception is raised if a server tries to set endpoints for
147
+ * an adapter that is already active.
148
+ * \headerfile Ice/Ice.h
149
+ */
150
+ class ICE_CLASS(ICE_API) AdapterAlreadyActiveException : public UserExceptionHelper<AdapterAlreadyActiveException, UserException>
151
+ {
152
+ public:
153
+
154
+ ICE_MEMBER(ICE_API) virtual ~AdapterAlreadyActiveException();
155
+
156
+ AdapterAlreadyActiveException(const AdapterAlreadyActiveException&) = default;
157
+
158
+ AdapterAlreadyActiveException() = default;
159
+
160
+ /**
161
+ * Obtains a tuple containing all of the exception's data members.
162
+ * @return The data members in a tuple.
163
+ */
164
+ std::tuple<> ice_tuple() const
165
+ {
166
+ return std::tie();
167
+ }
168
+
169
+ /**
170
+ * Obtains the Slice type ID of this exception.
171
+ * @return The fully-scoped type ID.
172
+ */
173
+ ICE_MEMBER(ICE_API) static const ::std::string& ice_staticId();
174
+ };
175
+
176
+ /**
177
+ * This exception is raised if an object cannot be found.
178
+ * \headerfile Ice/Ice.h
179
+ */
180
+ class ICE_CLASS(ICE_API) ObjectNotFoundException : public UserExceptionHelper<ObjectNotFoundException, UserException>
181
+ {
182
+ public:
183
+
184
+ ICE_MEMBER(ICE_API) virtual ~ObjectNotFoundException();
185
+
186
+ ObjectNotFoundException(const ObjectNotFoundException&) = default;
187
+
188
+ ObjectNotFoundException() = default;
189
+
190
+ /**
191
+ * Obtains a tuple containing all of the exception's data members.
192
+ * @return The data members in a tuple.
193
+ */
194
+ std::tuple<> ice_tuple() const
195
+ {
196
+ return std::tie();
197
+ }
198
+
199
+ /**
200
+ * Obtains the Slice type ID of this exception.
201
+ * @return The fully-scoped type ID.
202
+ */
203
+ ICE_MEMBER(ICE_API) static const ::std::string& ice_staticId();
204
+ };
205
+
206
+ /**
207
+ * This exception is raised if a server cannot be found.
208
+ * \headerfile Ice/Ice.h
209
+ */
210
+ class ICE_CLASS(ICE_API) ServerNotFoundException : public UserExceptionHelper<ServerNotFoundException, UserException>
211
+ {
212
+ public:
213
+
214
+ ICE_MEMBER(ICE_API) virtual ~ServerNotFoundException();
215
+
216
+ ServerNotFoundException(const ServerNotFoundException&) = default;
217
+
218
+ ServerNotFoundException() = default;
219
+
220
+ /**
221
+ * Obtains a tuple containing all of the exception's data members.
222
+ * @return The data members in a tuple.
223
+ */
224
+ std::tuple<> ice_tuple() const
225
+ {
226
+ return std::tie();
227
+ }
228
+
229
+ /**
230
+ * Obtains the Slice type ID of this exception.
231
+ * @return The fully-scoped type ID.
232
+ */
233
+ ICE_MEMBER(ICE_API) static const ::std::string& ice_staticId();
234
+ };
235
+
236
+ }
237
+
238
+ namespace Ice
239
+ {
240
+
241
+ /**
242
+ * The Ice locator interface. This interface is used by clients to
243
+ * lookup adapters and objects. It is also used by servers to get the
244
+ * locator registry proxy.
245
+ *
246
+ * <p class="Note">The {@link Locator} interface is intended to be used by
247
+ * Ice internals and by locator implementations. Regular user code
248
+ * should not attempt to use any functionality of this interface
249
+ * directly.
250
+ * \headerfile Ice/Ice.h
251
+ */
252
+ class ICE_API Locator : public virtual Object
253
+ {
254
+ public:
255
+
256
+ using ProxyType = LocatorPrx;
257
+
258
+ /**
259
+ * Determines whether this object supports an interface with the given Slice type ID.
260
+ * @param id The fully-scoped Slice type ID.
261
+ * @param current The Current object for the invocation.
262
+ * @return True if this object supports the interface, false, otherwise.
263
+ */
264
+ virtual bool ice_isA(::std::string id, const Current& current) const override;
265
+
266
+ /**
267
+ * Obtains a list of the Slice type IDs representing the interfaces supported by this object.
268
+ * @param current The Current object for the invocation.
269
+ * @return A list of fully-scoped type IDs.
270
+ */
271
+ virtual ::std::vector<::std::string> ice_ids(const Current& current) const override;
272
+
273
+ /**
274
+ * Obtains a Slice type ID representing the most-derived interface supported by this object.
275
+ * @param current The Current object for the invocation.
276
+ * @return A fully-scoped type ID.
277
+ */
278
+ virtual ::std::string ice_id(const Current& current) const override;
279
+
280
+ /**
281
+ * Obtains the Slice type ID corresponding to this class.
282
+ * @return A fully-scoped type ID.
283
+ */
284
+ static const ::std::string& ice_staticId();
285
+
286
+ /**
287
+ * Find an object by identity and return a proxy that contains
288
+ * the adapter ID or endpoints which can be used to access the
289
+ * object.
290
+ * @param id The identity.
291
+ * @param response The response callback.
292
+ * @param exception The exception callback.
293
+ * @param current The Current object for the invocation.
294
+ * @throws Ice::ObjectNotFoundException Raised if the object cannot
295
+ * be found.
296
+ */
297
+ virtual void findObjectByIdAsync(Identity id, ::std::function<void(const ::std::shared_ptr<ObjectPrx>& returnValue)> response, ::std::function<void(::std::exception_ptr)> exception, const Current& current) const = 0;
298
+ /// \cond INTERNAL
299
+ bool _iceD_findObjectById(::IceInternal::Incoming&, const Current&) const;
300
+ /// \endcond
301
+
302
+ /**
303
+ * Find an adapter by id and return a proxy that contains
304
+ * its endpoints.
305
+ * @param id The adapter id.
306
+ * @param response The response callback.
307
+ * @param exception The exception callback.
308
+ * @param current The Current object for the invocation.
309
+ * @throws Ice::AdapterNotFoundException Raised if the adapter cannot be
310
+ * found.
311
+ */
312
+ virtual void findAdapterByIdAsync(::std::string id, ::std::function<void(const ::std::shared_ptr<ObjectPrx>& returnValue)> response, ::std::function<void(::std::exception_ptr)> exception, const Current& current) const = 0;
313
+ /// \cond INTERNAL
314
+ bool _iceD_findAdapterById(::IceInternal::Incoming&, const Current&) const;
315
+ /// \endcond
316
+
317
+ /**
318
+ * Get the locator registry.
319
+ * @param current The Current object for the invocation.
320
+ * @return The locator registry.
321
+ */
322
+ virtual ::std::shared_ptr<LocatorRegistryPrx> getRegistry(const Current& current) const = 0;
323
+ /// \cond INTERNAL
324
+ bool _iceD_getRegistry(::IceInternal::Incoming&, const Current&) const;
325
+ /// \endcond
326
+
327
+ /// \cond INTERNAL
328
+ virtual bool _iceDispatch(::IceInternal::Incoming&, const Current&) override;
329
+ /// \endcond
330
+ };
331
+
332
+ /**
333
+ * The Ice locator registry interface. This interface is used by
334
+ * servers to register adapter endpoints with the locator.
335
+ *
336
+ * <p class="Note"> The {@link LocatorRegistry} interface is intended to be used
337
+ * by Ice internals and by locator implementations. Regular user
338
+ * code should not attempt to use any functionality of this interface
339
+ * directly.
340
+ * \headerfile Ice/Ice.h
341
+ */
342
+ class ICE_API LocatorRegistry : public virtual Object
343
+ {
344
+ public:
345
+
346
+ using ProxyType = LocatorRegistryPrx;
347
+
348
+ /**
349
+ * Determines whether this object supports an interface with the given Slice type ID.
350
+ * @param id The fully-scoped Slice type ID.
351
+ * @param current The Current object for the invocation.
352
+ * @return True if this object supports the interface, false, otherwise.
353
+ */
354
+ virtual bool ice_isA(::std::string id, const Current& current) const override;
355
+
356
+ /**
357
+ * Obtains a list of the Slice type IDs representing the interfaces supported by this object.
358
+ * @param current The Current object for the invocation.
359
+ * @return A list of fully-scoped type IDs.
360
+ */
361
+ virtual ::std::vector<::std::string> ice_ids(const Current& current) const override;
362
+
363
+ /**
364
+ * Obtains a Slice type ID representing the most-derived interface supported by this object.
365
+ * @param current The Current object for the invocation.
366
+ * @return A fully-scoped type ID.
367
+ */
368
+ virtual ::std::string ice_id(const Current& current) const override;
369
+
370
+ /**
371
+ * Obtains the Slice type ID corresponding to this class.
372
+ * @return A fully-scoped type ID.
373
+ */
374
+ static const ::std::string& ice_staticId();
375
+
376
+ /**
377
+ * Set the adapter endpoints with the locator registry.
378
+ * @param id The adapter id.
379
+ * @param proxy The adapter proxy (a dummy direct proxy created
380
+ * by the adapter). The direct proxy contains the adapter
381
+ * endpoints.
382
+ * @param response The response callback.
383
+ * @param exception The exception callback.
384
+ * @param current The Current object for the invocation.
385
+ * @throws Ice::AdapterAlreadyActiveException Raised if an adapter with the same
386
+ * id is already active.
387
+ * @throws Ice::AdapterNotFoundException Raised if the adapter cannot
388
+ * be found, or if the locator only allows
389
+ * registered adapters to set their active proxy and the
390
+ * adapter is not registered with the locator.
391
+ */
392
+ virtual void setAdapterDirectProxyAsync(::std::string id, ::std::shared_ptr<ObjectPrx> proxy, ::std::function<void()> response, ::std::function<void(::std::exception_ptr)> exception, const Current& current) = 0;
393
+ /// \cond INTERNAL
394
+ bool _iceD_setAdapterDirectProxy(::IceInternal::Incoming&, const Current&);
395
+ /// \endcond
396
+
397
+ /**
398
+ * Set the adapter endpoints with the locator registry.
399
+ * @param adapterId The adapter id.
400
+ * @param replicaGroupId The replica group id.
401
+ * @param p The adapter proxy (a dummy direct proxy created
402
+ * by the adapter). The direct proxy contains the adapter
403
+ * endpoints.
404
+ * @param response The response callback.
405
+ * @param exception The exception callback.
406
+ * @param current The Current object for the invocation.
407
+ * @throws Ice::AdapterAlreadyActiveException Raised if an adapter with the same
408
+ * id is already active.
409
+ * @throws Ice::AdapterNotFoundException Raised if the adapter cannot
410
+ * be found, or if the locator only allows registered adapters to
411
+ * set their active proxy and the adapter is not registered with
412
+ * the locator.
413
+ * @throws Ice::InvalidReplicaGroupIdException Raised if the given
414
+ * replica group doesn't match the one registered with the
415
+ * locator registry for this object adapter.
416
+ */
417
+ virtual void setReplicatedAdapterDirectProxyAsync(::std::string adapterId, ::std::string replicaGroupId, ::std::shared_ptr<ObjectPrx> p, ::std::function<void()> response, ::std::function<void(::std::exception_ptr)> exception, const Current& current) = 0;
418
+ /// \cond INTERNAL
419
+ bool _iceD_setReplicatedAdapterDirectProxy(::IceInternal::Incoming&, const Current&);
420
+ /// \endcond
421
+
422
+ /**
423
+ * Set the process proxy for a server.
424
+ * @param id The server id.
425
+ * @param proxy The process proxy.
426
+ * @param response The response callback.
427
+ * @param exception The exception callback.
428
+ * @param current The Current object for the invocation.
429
+ * @throws Ice::ServerNotFoundException Raised if the server cannot
430
+ * be found.
431
+ */
432
+ virtual void setServerProcessProxyAsync(::std::string id, ::std::shared_ptr<ProcessPrx> proxy, ::std::function<void()> response, ::std::function<void(::std::exception_ptr)> exception, const Current& current) = 0;
433
+ /// \cond INTERNAL
434
+ bool _iceD_setServerProcessProxy(::IceInternal::Incoming&, const Current&);
435
+ /// \endcond
436
+
437
+ /// \cond INTERNAL
438
+ virtual bool _iceDispatch(::IceInternal::Incoming&, const Current&) override;
439
+ /// \endcond
440
+ };
441
+
442
+ /**
443
+ * This inferface should be implemented by services implementing the
444
+ * Ice::Locator interface. It should be advertised through an Ice
445
+ * object with the identity `Ice/LocatorFinder'. This allows clients
446
+ * to retrieve the locator proxy with just the endpoint information of
447
+ * the service.
448
+ * \headerfile Ice/Ice.h
449
+ */
450
+ class ICE_API LocatorFinder : public virtual Object
451
+ {
452
+ public:
453
+
454
+ using ProxyType = LocatorFinderPrx;
455
+
456
+ /**
457
+ * Determines whether this object supports an interface with the given Slice type ID.
458
+ * @param id The fully-scoped Slice type ID.
459
+ * @param current The Current object for the invocation.
460
+ * @return True if this object supports the interface, false, otherwise.
461
+ */
462
+ virtual bool ice_isA(::std::string id, const Current& current) const override;
463
+
464
+ /**
465
+ * Obtains a list of the Slice type IDs representing the interfaces supported by this object.
466
+ * @param current The Current object for the invocation.
467
+ * @return A list of fully-scoped type IDs.
468
+ */
469
+ virtual ::std::vector<::std::string> ice_ids(const Current& current) const override;
470
+
471
+ /**
472
+ * Obtains a Slice type ID representing the most-derived interface supported by this object.
473
+ * @param current The Current object for the invocation.
474
+ * @return A fully-scoped type ID.
475
+ */
476
+ virtual ::std::string ice_id(const Current& current) const override;
477
+
478
+ /**
479
+ * Obtains the Slice type ID corresponding to this class.
480
+ * @return A fully-scoped type ID.
481
+ */
482
+ static const ::std::string& ice_staticId();
483
+
484
+ /**
485
+ * Get the locator proxy implemented by the process hosting this
486
+ * finder object. The proxy might point to several replicas.
487
+ * @param current The Current object for the invocation.
488
+ * @return The locator proxy.
489
+ */
490
+ virtual ::std::shared_ptr<LocatorPrx> getLocator(const Current& current) = 0;
491
+ /// \cond INTERNAL
492
+ bool _iceD_getLocator(::IceInternal::Incoming&, const Current&);
493
+ /// \endcond
494
+
495
+ /// \cond INTERNAL
496
+ virtual bool _iceDispatch(::IceInternal::Incoming&, const Current&) override;
497
+ /// \endcond
498
+ };
499
+
500
+ }
501
+
502
+ namespace Ice
503
+ {
504
+
505
+ /**
506
+ * The Ice locator interface. This interface is used by clients to
507
+ * lookup adapters and objects. It is also used by servers to get the
508
+ * locator registry proxy.
509
+ *
510
+ * <p class="Note">The {@link Locator} interface is intended to be used by
511
+ * Ice internals and by locator implementations. Regular user code
512
+ * should not attempt to use any functionality of this interface
513
+ * directly.
514
+ * \headerfile Ice/Ice.h
515
+ */
516
+ class ICE_CLASS(ICE_API) LocatorPrx : public virtual Proxy<LocatorPrx, ObjectPrx>
517
+ {
518
+ public:
519
+
520
+ /**
521
+ * Find an object by identity and return a proxy that contains
522
+ * the adapter ID or endpoints which can be used to access the
523
+ * object.
524
+ * @param id The identity.
525
+ * @param context The Context map to send with the invocation.
526
+ * @return The proxy, or null if the object is not active.
527
+ * @throws Ice::ObjectNotFoundException Raised if the object cannot
528
+ * be found.
529
+ */
530
+ ::std::shared_ptr<ObjectPrx> findObjectById(const Identity& id, const Context& context = noExplicitContext)
531
+ {
532
+ return _makePromiseOutgoing<::std::shared_ptr<::Ice::ObjectPrx>>(true, this, &LocatorPrx::_iceI_findObjectById, id, context).get();
533
+ }
534
+
535
+ /**
536
+ * Find an object by identity and return a proxy that contains
537
+ * the adapter ID or endpoints which can be used to access the
538
+ * object.
539
+ * @param id The identity.
540
+ * @param context The Context map to send with the invocation.
541
+ * @return The future object for the invocation.
542
+ */
543
+ template<template<typename> class P = ::std::promise>
544
+ auto findObjectByIdAsync(const Identity& id, const Context& context = noExplicitContext)
545
+ -> decltype(::std::declval<P<::std::shared_ptr<::Ice::ObjectPrx>>>().get_future())
546
+ {
547
+ return _makePromiseOutgoing<::std::shared_ptr<::Ice::ObjectPrx>, P>(false, this, &LocatorPrx::_iceI_findObjectById, id, context);
548
+ }
549
+
550
+ /**
551
+ * Find an object by identity and return a proxy that contains
552
+ * the adapter ID or endpoints which can be used to access the
553
+ * object.
554
+ * @param id The identity.
555
+ * @param response The response callback.
556
+ * @param ex The exception callback.
557
+ * @param sent The sent callback.
558
+ * @param context The Context map to send with the invocation.
559
+ * @return A function that can be called to cancel the invocation locally.
560
+ */
561
+ ::std::function<void()>
562
+ findObjectByIdAsync(const Identity& id,
563
+ ::std::function<void(::std::shared_ptr<::Ice::ObjectPrx>)> response,
564
+ ::std::function<void(::std::exception_ptr)> ex = nullptr,
565
+ ::std::function<void(bool)> sent = nullptr,
566
+ const Context& context = noExplicitContext)
567
+ {
568
+ return _makeLamdaOutgoing<::std::shared_ptr<::Ice::ObjectPrx>>(std::move(response), std::move(ex), std::move(sent), this, &Ice::LocatorPrx::_iceI_findObjectById, id, context);
569
+ }
570
+
571
+ /// \cond INTERNAL
572
+ ICE_MEMBER(ICE_API) void _iceI_findObjectById(const ::std::shared_ptr<::IceInternal::OutgoingAsyncT<::std::shared_ptr<::Ice::ObjectPrx>>>&, const Identity&, const Context&);
573
+ /// \endcond
574
+
575
+ /**
576
+ * Find an adapter by id and return a proxy that contains
577
+ * its endpoints.
578
+ * @param id The adapter id.
579
+ * @param context The Context map to send with the invocation.
580
+ * @return The adapter proxy, or null if the adapter is not active.
581
+ * @throws Ice::AdapterNotFoundException Raised if the adapter cannot be
582
+ * found.
583
+ */
584
+ ::std::shared_ptr<ObjectPrx> findAdapterById(const ::std::string& id, const Context& context = noExplicitContext)
585
+ {
586
+ return _makePromiseOutgoing<::std::shared_ptr<::Ice::ObjectPrx>>(true, this, &LocatorPrx::_iceI_findAdapterById, id, context).get();
587
+ }
588
+
589
+ /**
590
+ * Find an adapter by id and return a proxy that contains
591
+ * its endpoints.
592
+ * @param id The adapter id.
593
+ * @param context The Context map to send with the invocation.
594
+ * @return The future object for the invocation.
595
+ */
596
+ template<template<typename> class P = ::std::promise>
597
+ auto findAdapterByIdAsync(const ::std::string& id, const Context& context = noExplicitContext)
598
+ -> decltype(::std::declval<P<::std::shared_ptr<::Ice::ObjectPrx>>>().get_future())
599
+ {
600
+ return _makePromiseOutgoing<::std::shared_ptr<::Ice::ObjectPrx>, P>(false, this, &LocatorPrx::_iceI_findAdapterById, id, context);
601
+ }
602
+
603
+ /**
604
+ * Find an adapter by id and return a proxy that contains
605
+ * its endpoints.
606
+ * @param id The adapter id.
607
+ * @param response The response callback.
608
+ * @param ex The exception callback.
609
+ * @param sent The sent callback.
610
+ * @param context The Context map to send with the invocation.
611
+ * @return A function that can be called to cancel the invocation locally.
612
+ */
613
+ ::std::function<void()>
614
+ findAdapterByIdAsync(const ::std::string& id,
615
+ ::std::function<void(::std::shared_ptr<::Ice::ObjectPrx>)> response,
616
+ ::std::function<void(::std::exception_ptr)> ex = nullptr,
617
+ ::std::function<void(bool)> sent = nullptr,
618
+ const Context& context = noExplicitContext)
619
+ {
620
+ return _makeLamdaOutgoing<::std::shared_ptr<::Ice::ObjectPrx>>(std::move(response), std::move(ex), std::move(sent), this, &Ice::LocatorPrx::_iceI_findAdapterById, id, context);
621
+ }
622
+
623
+ /// \cond INTERNAL
624
+ ICE_MEMBER(ICE_API) void _iceI_findAdapterById(const ::std::shared_ptr<::IceInternal::OutgoingAsyncT<::std::shared_ptr<::Ice::ObjectPrx>>>&, const ::std::string&, const Context&);
625
+ /// \endcond
626
+
627
+ /**
628
+ * Get the locator registry.
629
+ * @param context The Context map to send with the invocation.
630
+ * @return The locator registry.
631
+ */
632
+ ::std::shared_ptr<LocatorRegistryPrx> getRegistry(const Context& context = noExplicitContext)
633
+ {
634
+ return _makePromiseOutgoing<::std::shared_ptr<::Ice::LocatorRegistryPrx>>(true, this, &LocatorPrx::_iceI_getRegistry, context).get();
635
+ }
636
+
637
+ /**
638
+ * Get the locator registry.
639
+ * @param context The Context map to send with the invocation.
640
+ * @return The future object for the invocation.
641
+ */
642
+ template<template<typename> class P = ::std::promise>
643
+ auto getRegistryAsync(const Context& context = noExplicitContext)
644
+ -> decltype(::std::declval<P<::std::shared_ptr<::Ice::LocatorRegistryPrx>>>().get_future())
645
+ {
646
+ return _makePromiseOutgoing<::std::shared_ptr<::Ice::LocatorRegistryPrx>, P>(false, this, &LocatorPrx::_iceI_getRegistry, context);
647
+ }
648
+
649
+ /**
650
+ * Get the locator registry.
651
+ * @param response The response callback.
652
+ * @param ex The exception callback.
653
+ * @param sent The sent callback.
654
+ * @param context The Context map to send with the invocation.
655
+ * @return A function that can be called to cancel the invocation locally.
656
+ */
657
+ ::std::function<void()>
658
+ getRegistryAsync(::std::function<void(::std::shared_ptr<::Ice::LocatorRegistryPrx>)> response,
659
+ ::std::function<void(::std::exception_ptr)> ex = nullptr,
660
+ ::std::function<void(bool)> sent = nullptr,
661
+ const Context& context = noExplicitContext)
662
+ {
663
+ return _makeLamdaOutgoing<::std::shared_ptr<::Ice::LocatorRegistryPrx>>(std::move(response), std::move(ex), std::move(sent), this, &Ice::LocatorPrx::_iceI_getRegistry, context);
664
+ }
665
+
666
+ /// \cond INTERNAL
667
+ ICE_MEMBER(ICE_API) void _iceI_getRegistry(const ::std::shared_ptr<::IceInternal::OutgoingAsyncT<::std::shared_ptr<::Ice::LocatorRegistryPrx>>>&, const Context&);
668
+ /// \endcond
669
+
670
+ /**
671
+ * Obtains the Slice type ID of this interface.
672
+ * @return The fully-scoped type ID.
673
+ */
674
+ ICE_MEMBER(ICE_API) static const ::std::string& ice_staticId();
675
+
676
+ protected:
677
+
678
+ /// \cond INTERNAL
679
+ LocatorPrx() = default;
680
+ friend ::std::shared_ptr<LocatorPrx> IceInternal::createProxy<LocatorPrx>();
681
+
682
+ ICE_MEMBER(ICE_API) virtual ::std::shared_ptr<ObjectPrx> _newInstance() const override;
683
+ /// \endcond
684
+ };
685
+
686
+ /**
687
+ * The Ice locator registry interface. This interface is used by
688
+ * servers to register adapter endpoints with the locator.
689
+ *
690
+ * <p class="Note"> The {@link LocatorRegistry} interface is intended to be used
691
+ * by Ice internals and by locator implementations. Regular user
692
+ * code should not attempt to use any functionality of this interface
693
+ * directly.
694
+ * \headerfile Ice/Ice.h
695
+ */
696
+ class ICE_CLASS(ICE_API) LocatorRegistryPrx : public virtual Proxy<LocatorRegistryPrx, ObjectPrx>
697
+ {
698
+ public:
699
+
700
+ /**
701
+ * Set the adapter endpoints with the locator registry.
702
+ * @param id The adapter id.
703
+ * @param proxy The adapter proxy (a dummy direct proxy created
704
+ * by the adapter). The direct proxy contains the adapter
705
+ * endpoints.
706
+ * @param context The Context map to send with the invocation.
707
+ * @throws Ice::AdapterAlreadyActiveException Raised if an adapter with the same
708
+ * id is already active.
709
+ * @throws Ice::AdapterNotFoundException Raised if the adapter cannot
710
+ * be found, or if the locator only allows
711
+ * registered adapters to set their active proxy and the
712
+ * adapter is not registered with the locator.
713
+ */
714
+ void setAdapterDirectProxy(const ::std::string& id, const ::std::shared_ptr<ObjectPrx>& proxy, const Context& context = noExplicitContext)
715
+ {
716
+ _makePromiseOutgoing<void>(true, this, &LocatorRegistryPrx::_iceI_setAdapterDirectProxy, id, proxy, context).get();
717
+ }
718
+
719
+ /**
720
+ * Set the adapter endpoints with the locator registry.
721
+ * @param id The adapter id.
722
+ * @param proxy The adapter proxy (a dummy direct proxy created
723
+ * by the adapter). The direct proxy contains the adapter
724
+ * endpoints.
725
+ * @param context The Context map to send with the invocation.
726
+ * @return The future object for the invocation.
727
+ */
728
+ template<template<typename> class P = ::std::promise>
729
+ auto setAdapterDirectProxyAsync(const ::std::string& id, const ::std::shared_ptr<ObjectPrx>& proxy, const Context& context = noExplicitContext)
730
+ -> decltype(::std::declval<P<void>>().get_future())
731
+ {
732
+ return _makePromiseOutgoing<void, P>(false, this, &LocatorRegistryPrx::_iceI_setAdapterDirectProxy, id, proxy, context);
733
+ }
734
+
735
+ /**
736
+ * Set the adapter endpoints with the locator registry.
737
+ * @param id The adapter id.
738
+ * @param proxy The adapter proxy (a dummy direct proxy created
739
+ * by the adapter). The direct proxy contains the adapter
740
+ * endpoints.
741
+ * @param response The response callback.
742
+ * @param ex The exception callback.
743
+ * @param sent The sent callback.
744
+ * @param context The Context map to send with the invocation.
745
+ * @return A function that can be called to cancel the invocation locally.
746
+ */
747
+ ::std::function<void()>
748
+ setAdapterDirectProxyAsync(const ::std::string& id, const ::std::shared_ptr<ObjectPrx>& proxy,
749
+ ::std::function<void()> response,
750
+ ::std::function<void(::std::exception_ptr)> ex = nullptr,
751
+ ::std::function<void(bool)> sent = nullptr,
752
+ const Context& context = noExplicitContext)
753
+ {
754
+ return _makeLamdaOutgoing<void>(std::move(response), std::move(ex), std::move(sent), this, &Ice::LocatorRegistryPrx::_iceI_setAdapterDirectProxy, id, proxy, context);
755
+ }
756
+
757
+ /// \cond INTERNAL
758
+ ICE_MEMBER(ICE_API) void _iceI_setAdapterDirectProxy(const ::std::shared_ptr<::IceInternal::OutgoingAsyncT<void>>&, const ::std::string&, const ::std::shared_ptr<ObjectPrx>&, const Context&);
759
+ /// \endcond
760
+
761
+ /**
762
+ * Set the adapter endpoints with the locator registry.
763
+ * @param adapterId The adapter id.
764
+ * @param replicaGroupId The replica group id.
765
+ * @param p The adapter proxy (a dummy direct proxy created
766
+ * by the adapter). The direct proxy contains the adapter
767
+ * endpoints.
768
+ * @param context The Context map to send with the invocation.
769
+ * @throws Ice::AdapterAlreadyActiveException Raised if an adapter with the same
770
+ * id is already active.
771
+ * @throws Ice::AdapterNotFoundException Raised if the adapter cannot
772
+ * be found, or if the locator only allows registered adapters to
773
+ * set their active proxy and the adapter is not registered with
774
+ * the locator.
775
+ * @throws Ice::InvalidReplicaGroupIdException Raised if the given
776
+ * replica group doesn't match the one registered with the
777
+ * locator registry for this object adapter.
778
+ */
779
+ void setReplicatedAdapterDirectProxy(const ::std::string& adapterId, const ::std::string& replicaGroupId, const ::std::shared_ptr<ObjectPrx>& p, const Context& context = noExplicitContext)
780
+ {
781
+ _makePromiseOutgoing<void>(true, this, &LocatorRegistryPrx::_iceI_setReplicatedAdapterDirectProxy, adapterId, replicaGroupId, p, context).get();
782
+ }
783
+
784
+ /**
785
+ * Set the adapter endpoints with the locator registry.
786
+ * @param adapterId The adapter id.
787
+ * @param replicaGroupId The replica group id.
788
+ * @param p The adapter proxy (a dummy direct proxy created
789
+ * by the adapter). The direct proxy contains the adapter
790
+ * endpoints.
791
+ * @param context The Context map to send with the invocation.
792
+ * @return The future object for the invocation.
793
+ */
794
+ template<template<typename> class P = ::std::promise>
795
+ auto setReplicatedAdapterDirectProxyAsync(const ::std::string& adapterId, const ::std::string& replicaGroupId, const ::std::shared_ptr<ObjectPrx>& p, const Context& context = noExplicitContext)
796
+ -> decltype(::std::declval<P<void>>().get_future())
797
+ {
798
+ return _makePromiseOutgoing<void, P>(false, this, &LocatorRegistryPrx::_iceI_setReplicatedAdapterDirectProxy, adapterId, replicaGroupId, p, context);
799
+ }
800
+
801
+ /**
802
+ * Set the adapter endpoints with the locator registry.
803
+ * @param adapterId The adapter id.
804
+ * @param replicaGroupId The replica group id.
805
+ * @param p The adapter proxy (a dummy direct proxy created
806
+ * by the adapter). The direct proxy contains the adapter
807
+ * endpoints.
808
+ * @param response The response callback.
809
+ * @param ex The exception callback.
810
+ * @param sent The sent callback.
811
+ * @param context The Context map to send with the invocation.
812
+ * @return A function that can be called to cancel the invocation locally.
813
+ */
814
+ ::std::function<void()>
815
+ setReplicatedAdapterDirectProxyAsync(const ::std::string& adapterId, const ::std::string& replicaGroupId, const ::std::shared_ptr<ObjectPrx>& p,
816
+ ::std::function<void()> response,
817
+ ::std::function<void(::std::exception_ptr)> ex = nullptr,
818
+ ::std::function<void(bool)> sent = nullptr,
819
+ const Context& context = noExplicitContext)
820
+ {
821
+ return _makeLamdaOutgoing<void>(std::move(response), std::move(ex), std::move(sent), this, &Ice::LocatorRegistryPrx::_iceI_setReplicatedAdapterDirectProxy, adapterId, replicaGroupId, p, context);
822
+ }
823
+
824
+ /// \cond INTERNAL
825
+ ICE_MEMBER(ICE_API) void _iceI_setReplicatedAdapterDirectProxy(const ::std::shared_ptr<::IceInternal::OutgoingAsyncT<void>>&, const ::std::string&, const ::std::string&, const ::std::shared_ptr<ObjectPrx>&, const Context&);
826
+ /// \endcond
827
+
828
+ /**
829
+ * Set the process proxy for a server.
830
+ * @param id The server id.
831
+ * @param proxy The process proxy.
832
+ * @param context The Context map to send with the invocation.
833
+ * @throws Ice::ServerNotFoundException Raised if the server cannot
834
+ * be found.
835
+ */
836
+ void setServerProcessProxy(const ::std::string& id, const ::std::shared_ptr<ProcessPrx>& proxy, const Context& context = noExplicitContext)
837
+ {
838
+ _makePromiseOutgoing<void>(true, this, &LocatorRegistryPrx::_iceI_setServerProcessProxy, id, proxy, context).get();
839
+ }
840
+
841
+ /**
842
+ * Set the process proxy for a server.
843
+ * @param id The server id.
844
+ * @param proxy The process proxy.
845
+ * @param context The Context map to send with the invocation.
846
+ * @return The future object for the invocation.
847
+ */
848
+ template<template<typename> class P = ::std::promise>
849
+ auto setServerProcessProxyAsync(const ::std::string& id, const ::std::shared_ptr<ProcessPrx>& proxy, const Context& context = noExplicitContext)
850
+ -> decltype(::std::declval<P<void>>().get_future())
851
+ {
852
+ return _makePromiseOutgoing<void, P>(false, this, &LocatorRegistryPrx::_iceI_setServerProcessProxy, id, proxy, context);
853
+ }
854
+
855
+ /**
856
+ * Set the process proxy for a server.
857
+ * @param id The server id.
858
+ * @param proxy The process proxy.
859
+ * @param response The response callback.
860
+ * @param ex The exception callback.
861
+ * @param sent The sent callback.
862
+ * @param context The Context map to send with the invocation.
863
+ * @return A function that can be called to cancel the invocation locally.
864
+ */
865
+ ::std::function<void()>
866
+ setServerProcessProxyAsync(const ::std::string& id, const ::std::shared_ptr<ProcessPrx>& proxy,
867
+ ::std::function<void()> response,
868
+ ::std::function<void(::std::exception_ptr)> ex = nullptr,
869
+ ::std::function<void(bool)> sent = nullptr,
870
+ const Context& context = noExplicitContext)
871
+ {
872
+ return _makeLamdaOutgoing<void>(std::move(response), std::move(ex), std::move(sent), this, &Ice::LocatorRegistryPrx::_iceI_setServerProcessProxy, id, proxy, context);
873
+ }
874
+
875
+ /// \cond INTERNAL
876
+ ICE_MEMBER(ICE_API) void _iceI_setServerProcessProxy(const ::std::shared_ptr<::IceInternal::OutgoingAsyncT<void>>&, const ::std::string&, const ::std::shared_ptr<ProcessPrx>&, const Context&);
877
+ /// \endcond
878
+
879
+ /**
880
+ * Obtains the Slice type ID of this interface.
881
+ * @return The fully-scoped type ID.
882
+ */
883
+ ICE_MEMBER(ICE_API) static const ::std::string& ice_staticId();
884
+
885
+ protected:
886
+
887
+ /// \cond INTERNAL
888
+ LocatorRegistryPrx() = default;
889
+ friend ::std::shared_ptr<LocatorRegistryPrx> IceInternal::createProxy<LocatorRegistryPrx>();
890
+
891
+ ICE_MEMBER(ICE_API) virtual ::std::shared_ptr<ObjectPrx> _newInstance() const override;
892
+ /// \endcond
893
+ };
894
+
895
+ /**
896
+ * This inferface should be implemented by services implementing the
897
+ * Ice::Locator interface. It should be advertised through an Ice
898
+ * object with the identity `Ice/LocatorFinder'. This allows clients
899
+ * to retrieve the locator proxy with just the endpoint information of
900
+ * the service.
901
+ * \headerfile Ice/Ice.h
902
+ */
903
+ class ICE_CLASS(ICE_API) LocatorFinderPrx : public virtual Proxy<LocatorFinderPrx, ObjectPrx>
904
+ {
905
+ public:
906
+
907
+ /**
908
+ * Get the locator proxy implemented by the process hosting this
909
+ * finder object. The proxy might point to several replicas.
910
+ * @param context The Context map to send with the invocation.
911
+ * @return The locator proxy.
912
+ */
913
+ ::std::shared_ptr<LocatorPrx> getLocator(const Context& context = noExplicitContext)
914
+ {
915
+ return _makePromiseOutgoing<::std::shared_ptr<::Ice::LocatorPrx>>(true, this, &LocatorFinderPrx::_iceI_getLocator, context).get();
916
+ }
917
+
918
+ /**
919
+ * Get the locator 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 future object for the invocation.
923
+ */
924
+ template<template<typename> class P = ::std::promise>
925
+ auto getLocatorAsync(const Context& context = noExplicitContext)
926
+ -> decltype(::std::declval<P<::std::shared_ptr<::Ice::LocatorPrx>>>().get_future())
927
+ {
928
+ return _makePromiseOutgoing<::std::shared_ptr<::Ice::LocatorPrx>, P>(false, this, &LocatorFinderPrx::_iceI_getLocator, context);
929
+ }
930
+
931
+ /**
932
+ * Get the locator proxy implemented by the process hosting this
933
+ * finder object. The proxy might point to several replicas.
934
+ * @param response The response callback.
935
+ * @param ex The exception callback.
936
+ * @param sent The sent callback.
937
+ * @param context The Context map to send with the invocation.
938
+ * @return A function that can be called to cancel the invocation locally.
939
+ */
940
+ ::std::function<void()>
941
+ getLocatorAsync(::std::function<void(::std::shared_ptr<::Ice::LocatorPrx>)> response,
942
+ ::std::function<void(::std::exception_ptr)> ex = nullptr,
943
+ ::std::function<void(bool)> sent = nullptr,
944
+ const Context& context = noExplicitContext)
945
+ {
946
+ return _makeLamdaOutgoing<::std::shared_ptr<::Ice::LocatorPrx>>(std::move(response), std::move(ex), std::move(sent), this, &Ice::LocatorFinderPrx::_iceI_getLocator, context);
947
+ }
948
+
949
+ /// \cond INTERNAL
950
+ ICE_MEMBER(ICE_API) void _iceI_getLocator(const ::std::shared_ptr<::IceInternal::OutgoingAsyncT<::std::shared_ptr<::Ice::LocatorPrx>>>&, const Context&);
951
+ /// \endcond
952
+
953
+ /**
954
+ * Obtains the Slice type ID of this interface.
955
+ * @return The fully-scoped type ID.
956
+ */
957
+ ICE_MEMBER(ICE_API) static const ::std::string& ice_staticId();
958
+
959
+ protected:
960
+
961
+ /// \cond INTERNAL
962
+ LocatorFinderPrx() = default;
963
+ friend ::std::shared_ptr<LocatorFinderPrx> IceInternal::createProxy<LocatorFinderPrx>();
964
+
965
+ ICE_MEMBER(ICE_API) virtual ::std::shared_ptr<ObjectPrx> _newInstance() const override;
966
+ /// \endcond
967
+ };
968
+
969
+ }
970
+
971
+ /// \cond STREAM
972
+ namespace Ice
973
+ {
974
+
975
+ }
976
+ /// \endcond
977
+
978
+ /// \cond INTERNAL
979
+ namespace Ice
980
+ {
981
+
982
+ using LocatorRegistryPtr = ::std::shared_ptr<LocatorRegistry>;
983
+ using LocatorRegistryPrxPtr = ::std::shared_ptr<LocatorRegistryPrx>;
984
+
985
+ using LocatorPtr = ::std::shared_ptr<Locator>;
986
+ using LocatorPrxPtr = ::std::shared_ptr<LocatorPrx>;
987
+
988
+ using LocatorFinderPtr = ::std::shared_ptr<LocatorFinder>;
989
+ using LocatorFinderPrxPtr = ::std::shared_ptr<LocatorFinderPrx>;
990
+
991
+ }
992
+ /// \endcond
993
+
994
+ #else // C++98 mapping
995
+
996
+ namespace IceProxy
997
+ {
998
+
999
+ namespace Ice
1000
+ {
1001
+
1002
+ class LocatorRegistry;
1003
+ /// \cond INTERNAL
1004
+ ICE_API void _readProxy(::Ice::InputStream*, ::IceInternal::ProxyHandle< LocatorRegistry>&);
1005
+ ICE_API ::IceProxy::Ice::Object* upCast(LocatorRegistry*);
1006
+ /// \endcond
1007
+
1008
+ class Locator;
1009
+ /// \cond INTERNAL
1010
+ ICE_API void _readProxy(::Ice::InputStream*, ::IceInternal::ProxyHandle< Locator>&);
1011
+ ICE_API ::IceProxy::Ice::Object* upCast(Locator*);
1012
+ /// \endcond
1013
+
1014
+ class LocatorFinder;
1015
+ /// \cond INTERNAL
1016
+ ICE_API void _readProxy(::Ice::InputStream*, ::IceInternal::ProxyHandle< LocatorFinder>&);
1017
+ ICE_API ::IceProxy::Ice::Object* upCast(LocatorFinder*);
1018
+ /// \endcond
1019
+
1020
+ }
1021
+
1022
+ }
1023
+
1024
+ namespace Ice
1025
+ {
1026
+
1027
+ class LocatorRegistry;
1028
+ /// \cond INTERNAL
1029
+ ICE_API Object* upCast(LocatorRegistry*);
1030
+ /// \endcond
1031
+ typedef ::IceInternal::Handle< LocatorRegistry> LocatorRegistryPtr;
1032
+ typedef ::IceInternal::ProxyHandle< ::IceProxy::Ice::LocatorRegistry> LocatorRegistryPrx;
1033
+ typedef LocatorRegistryPrx LocatorRegistryPrxPtr;
1034
+ /// \cond INTERNAL
1035
+ ICE_API void _icePatchObjectPtr(LocatorRegistryPtr&, const ObjectPtr&);
1036
+ /// \endcond
1037
+
1038
+ class Locator;
1039
+ /// \cond INTERNAL
1040
+ ICE_API Object* upCast(Locator*);
1041
+ /// \endcond
1042
+ typedef ::IceInternal::Handle< Locator> LocatorPtr;
1043
+ typedef ::IceInternal::ProxyHandle< ::IceProxy::Ice::Locator> LocatorPrx;
1044
+ typedef LocatorPrx LocatorPrxPtr;
1045
+ /// \cond INTERNAL
1046
+ ICE_API void _icePatchObjectPtr(LocatorPtr&, const ObjectPtr&);
1047
+ /// \endcond
1048
+
1049
+ class LocatorFinder;
1050
+ /// \cond INTERNAL
1051
+ ICE_API Object* upCast(LocatorFinder*);
1052
+ /// \endcond
1053
+ typedef ::IceInternal::Handle< LocatorFinder> LocatorFinderPtr;
1054
+ typedef ::IceInternal::ProxyHandle< ::IceProxy::Ice::LocatorFinder> LocatorFinderPrx;
1055
+ typedef LocatorFinderPrx LocatorFinderPrxPtr;
1056
+ /// \cond INTERNAL
1057
+ ICE_API void _icePatchObjectPtr(LocatorFinderPtr&, const ObjectPtr&);
1058
+ /// \endcond
1059
+
1060
+ }
1061
+
1062
+ namespace Ice
1063
+ {
1064
+
1065
+ /**
1066
+ * This exception is raised if an adapter cannot be found.
1067
+ * \headerfile Ice/Ice.h
1068
+ */
1069
+ class ICE_API AdapterNotFoundException : public UserException
1070
+ {
1071
+ public:
1072
+
1073
+ AdapterNotFoundException() {}
1074
+ virtual ~AdapterNotFoundException() throw();
1075
+
1076
+ /**
1077
+ * Obtains the Slice type ID of this exception.
1078
+ * @return The fully-scoped type ID.
1079
+ */
1080
+ virtual ::std::string ice_id() const;
1081
+ /**
1082
+ * Polymporphically clones this exception.
1083
+ * @return A shallow copy of this exception.
1084
+ */
1085
+ virtual AdapterNotFoundException* ice_clone() const;
1086
+ /**
1087
+ * Throws this exception.
1088
+ */
1089
+ virtual void ice_throw() const;
1090
+
1091
+ protected:
1092
+
1093
+ /// \cond STREAM
1094
+ virtual void _writeImpl(OutputStream*) const;
1095
+ virtual void _readImpl(InputStream*);
1096
+ /// \endcond
1097
+ };
1098
+
1099
+ /// \cond INTERNAL
1100
+ static AdapterNotFoundException _iceS_AdapterNotFoundException_init;
1101
+ /// \endcond
1102
+
1103
+ /**
1104
+ * This exception is raised if the replica group provided by the
1105
+ * server is invalid.
1106
+ * \headerfile Ice/Ice.h
1107
+ */
1108
+ class ICE_API InvalidReplicaGroupIdException : public UserException
1109
+ {
1110
+ public:
1111
+
1112
+ InvalidReplicaGroupIdException() {}
1113
+ virtual ~InvalidReplicaGroupIdException() throw();
1114
+
1115
+ /**
1116
+ * Obtains the Slice type ID of this exception.
1117
+ * @return The fully-scoped type ID.
1118
+ */
1119
+ virtual ::std::string ice_id() const;
1120
+ /**
1121
+ * Polymporphically clones this exception.
1122
+ * @return A shallow copy of this exception.
1123
+ */
1124
+ virtual InvalidReplicaGroupIdException* ice_clone() const;
1125
+ /**
1126
+ * Throws this exception.
1127
+ */
1128
+ virtual void ice_throw() const;
1129
+
1130
+ protected:
1131
+
1132
+ /// \cond STREAM
1133
+ virtual void _writeImpl(OutputStream*) const;
1134
+ virtual void _readImpl(InputStream*);
1135
+ /// \endcond
1136
+ };
1137
+
1138
+ /**
1139
+ * This exception is raised if a server tries to set endpoints for
1140
+ * an adapter that is already active.
1141
+ * \headerfile Ice/Ice.h
1142
+ */
1143
+ class ICE_API AdapterAlreadyActiveException : public UserException
1144
+ {
1145
+ public:
1146
+
1147
+ AdapterAlreadyActiveException() {}
1148
+ virtual ~AdapterAlreadyActiveException() throw();
1149
+
1150
+ /**
1151
+ * Obtains the Slice type ID of this exception.
1152
+ * @return The fully-scoped type ID.
1153
+ */
1154
+ virtual ::std::string ice_id() const;
1155
+ /**
1156
+ * Polymporphically clones this exception.
1157
+ * @return A shallow copy of this exception.
1158
+ */
1159
+ virtual AdapterAlreadyActiveException* ice_clone() const;
1160
+ /**
1161
+ * Throws this exception.
1162
+ */
1163
+ virtual void ice_throw() const;
1164
+
1165
+ protected:
1166
+
1167
+ /// \cond STREAM
1168
+ virtual void _writeImpl(OutputStream*) const;
1169
+ virtual void _readImpl(InputStream*);
1170
+ /// \endcond
1171
+ };
1172
+
1173
+ /**
1174
+ * This exception is raised if an object cannot be found.
1175
+ * \headerfile Ice/Ice.h
1176
+ */
1177
+ class ICE_API ObjectNotFoundException : public UserException
1178
+ {
1179
+ public:
1180
+
1181
+ ObjectNotFoundException() {}
1182
+ virtual ~ObjectNotFoundException() throw();
1183
+
1184
+ /**
1185
+ * Obtains the Slice type ID of this exception.
1186
+ * @return The fully-scoped type ID.
1187
+ */
1188
+ virtual ::std::string ice_id() const;
1189
+ /**
1190
+ * Polymporphically clones this exception.
1191
+ * @return A shallow copy of this exception.
1192
+ */
1193
+ virtual ObjectNotFoundException* ice_clone() const;
1194
+ /**
1195
+ * Throws this exception.
1196
+ */
1197
+ virtual void ice_throw() const;
1198
+
1199
+ protected:
1200
+
1201
+ /// \cond STREAM
1202
+ virtual void _writeImpl(OutputStream*) const;
1203
+ virtual void _readImpl(InputStream*);
1204
+ /// \endcond
1205
+ };
1206
+
1207
+ /**
1208
+ * This exception is raised if a server cannot be found.
1209
+ * \headerfile Ice/Ice.h
1210
+ */
1211
+ class ICE_API ServerNotFoundException : public UserException
1212
+ {
1213
+ public:
1214
+
1215
+ ServerNotFoundException() {}
1216
+ virtual ~ServerNotFoundException() throw();
1217
+
1218
+ /**
1219
+ * Obtains the Slice type ID of this exception.
1220
+ * @return The fully-scoped type ID.
1221
+ */
1222
+ virtual ::std::string ice_id() const;
1223
+ /**
1224
+ * Polymporphically clones this exception.
1225
+ * @return A shallow copy of this exception.
1226
+ */
1227
+ virtual ServerNotFoundException* ice_clone() const;
1228
+ /**
1229
+ * Throws this exception.
1230
+ */
1231
+ virtual void ice_throw() const;
1232
+
1233
+ protected:
1234
+
1235
+ /// \cond STREAM
1236
+ virtual void _writeImpl(OutputStream*) const;
1237
+ virtual void _readImpl(InputStream*);
1238
+ /// \endcond
1239
+ };
1240
+
1241
+ }
1242
+
1243
+ namespace Ice
1244
+ {
1245
+
1246
+ /**
1247
+ * AMD callback class for Ice::Locator::findObjectById_async.
1248
+ * Call the ice_response method for a successful completion, or the ice_exception
1249
+ * method in the case of an error.
1250
+ */
1251
+ class ICE_API AMD_Locator_findObjectById : public virtual AMDCallback
1252
+ {
1253
+ public:
1254
+
1255
+ virtual ~AMD_Locator_findObjectById();
1256
+
1257
+ /**
1258
+ * Call ice_response for a successful completion.
1259
+ * @param result The proxy, or null if the object is not active.
1260
+ */
1261
+ virtual void ice_response(const ObjectPrx& result) = 0;
1262
+ };
1263
+
1264
+ typedef ::IceUtil::Handle< ::Ice::AMD_Locator_findObjectById> AMD_Locator_findObjectByIdPtr;
1265
+
1266
+ /**
1267
+ * AMD callback class for Ice::Locator::findAdapterById_async.
1268
+ * Call the ice_response method for a successful completion, or the ice_exception
1269
+ * method in the case of an error.
1270
+ */
1271
+ class ICE_API AMD_Locator_findAdapterById : public virtual AMDCallback
1272
+ {
1273
+ public:
1274
+
1275
+ virtual ~AMD_Locator_findAdapterById();
1276
+
1277
+ /**
1278
+ * Call ice_response for a successful completion.
1279
+ * @param result The adapter proxy, or null if the adapter is not active.
1280
+ */
1281
+ virtual void ice_response(const ObjectPrx& result) = 0;
1282
+ };
1283
+
1284
+ typedef ::IceUtil::Handle< ::Ice::AMD_Locator_findAdapterById> AMD_Locator_findAdapterByIdPtr;
1285
+
1286
+ /**
1287
+ * AMD callback class for Ice::LocatorRegistry::setAdapterDirectProxy_async.
1288
+ * Call the ice_response method for a successful completion, or the ice_exception
1289
+ * method in the case of an error.
1290
+ */
1291
+ class ICE_API AMD_LocatorRegistry_setAdapterDirectProxy : public virtual AMDCallback
1292
+ {
1293
+ public:
1294
+
1295
+ virtual ~AMD_LocatorRegistry_setAdapterDirectProxy();
1296
+
1297
+ /**
1298
+ * Call ice_response for a successful completion.
1299
+ */
1300
+ virtual void ice_response() = 0;
1301
+ };
1302
+
1303
+ typedef ::IceUtil::Handle< ::Ice::AMD_LocatorRegistry_setAdapterDirectProxy> AMD_LocatorRegistry_setAdapterDirectProxyPtr;
1304
+
1305
+ /**
1306
+ * AMD callback class for Ice::LocatorRegistry::setReplicatedAdapterDirectProxy_async.
1307
+ * Call the ice_response method for a successful completion, or the ice_exception
1308
+ * method in the case of an error.
1309
+ */
1310
+ class ICE_API AMD_LocatorRegistry_setReplicatedAdapterDirectProxy : public virtual AMDCallback
1311
+ {
1312
+ public:
1313
+
1314
+ virtual ~AMD_LocatorRegistry_setReplicatedAdapterDirectProxy();
1315
+
1316
+ /**
1317
+ * Call ice_response for a successful completion.
1318
+ */
1319
+ virtual void ice_response() = 0;
1320
+ };
1321
+
1322
+ typedef ::IceUtil::Handle< ::Ice::AMD_LocatorRegistry_setReplicatedAdapterDirectProxy> AMD_LocatorRegistry_setReplicatedAdapterDirectProxyPtr;
1323
+
1324
+ /**
1325
+ * AMD callback class for Ice::LocatorRegistry::setServerProcessProxy_async.
1326
+ * Call the ice_response method for a successful completion, or the ice_exception
1327
+ * method in the case of an error.
1328
+ */
1329
+ class ICE_API AMD_LocatorRegistry_setServerProcessProxy : public virtual AMDCallback
1330
+ {
1331
+ public:
1332
+
1333
+ virtual ~AMD_LocatorRegistry_setServerProcessProxy();
1334
+
1335
+ /**
1336
+ * Call ice_response for a successful completion.
1337
+ */
1338
+ virtual void ice_response() = 0;
1339
+ };
1340
+
1341
+ typedef ::IceUtil::Handle< ::Ice::AMD_LocatorRegistry_setServerProcessProxy> AMD_LocatorRegistry_setServerProcessProxyPtr;
1342
+
1343
+ }
1344
+
1345
+ /// \cond INTERNAL
1346
+ namespace IceAsync
1347
+ {
1348
+
1349
+ namespace Ice
1350
+ {
1351
+
1352
+ #if defined(_MSC_VER) && (_MSC_VER >= 1900)
1353
+ # pragma warning(push)
1354
+ # pragma warning(disable:4239)
1355
+ #endif
1356
+
1357
+ class ICE_API AMD_Locator_findObjectById : public ::Ice::AMD_Locator_findObjectById, public ::IceInternal::IncomingAsync
1358
+ {
1359
+ public:
1360
+
1361
+ AMD_Locator_findObjectById(::IceInternal::Incoming&);
1362
+
1363
+ virtual void ice_response(const ::Ice::ObjectPrx&);
1364
+ };
1365
+
1366
+ #if defined(_MSC_VER) && (_MSC_VER >= 1900)
1367
+ # pragma warning(pop)
1368
+ #endif
1369
+
1370
+ #if defined(_MSC_VER) && (_MSC_VER >= 1900)
1371
+ # pragma warning(push)
1372
+ # pragma warning(disable:4239)
1373
+ #endif
1374
+
1375
+ class ICE_API AMD_Locator_findAdapterById : public ::Ice::AMD_Locator_findAdapterById, public ::IceInternal::IncomingAsync
1376
+ {
1377
+ public:
1378
+
1379
+ AMD_Locator_findAdapterById(::IceInternal::Incoming&);
1380
+
1381
+ virtual void ice_response(const ::Ice::ObjectPrx&);
1382
+ };
1383
+
1384
+ #if defined(_MSC_VER) && (_MSC_VER >= 1900)
1385
+ # pragma warning(pop)
1386
+ #endif
1387
+
1388
+ #if defined(_MSC_VER) && (_MSC_VER >= 1900)
1389
+ # pragma warning(push)
1390
+ # pragma warning(disable:4239)
1391
+ #endif
1392
+
1393
+ class ICE_API AMD_LocatorRegistry_setAdapterDirectProxy : public ::Ice::AMD_LocatorRegistry_setAdapterDirectProxy, public ::IceInternal::IncomingAsync
1394
+ {
1395
+ public:
1396
+
1397
+ AMD_LocatorRegistry_setAdapterDirectProxy(::IceInternal::Incoming&);
1398
+
1399
+ virtual void ice_response();
1400
+ };
1401
+
1402
+ #if defined(_MSC_VER) && (_MSC_VER >= 1900)
1403
+ # pragma warning(pop)
1404
+ #endif
1405
+
1406
+ #if defined(_MSC_VER) && (_MSC_VER >= 1900)
1407
+ # pragma warning(push)
1408
+ # pragma warning(disable:4239)
1409
+ #endif
1410
+
1411
+ class ICE_API AMD_LocatorRegistry_setReplicatedAdapterDirectProxy : public ::Ice::AMD_LocatorRegistry_setReplicatedAdapterDirectProxy, public ::IceInternal::IncomingAsync
1412
+ {
1413
+ public:
1414
+
1415
+ AMD_LocatorRegistry_setReplicatedAdapterDirectProxy(::IceInternal::Incoming&);
1416
+
1417
+ virtual void ice_response();
1418
+ };
1419
+
1420
+ #if defined(_MSC_VER) && (_MSC_VER >= 1900)
1421
+ # pragma warning(pop)
1422
+ #endif
1423
+
1424
+ #if defined(_MSC_VER) && (_MSC_VER >= 1900)
1425
+ # pragma warning(push)
1426
+ # pragma warning(disable:4239)
1427
+ #endif
1428
+
1429
+ class ICE_API AMD_LocatorRegistry_setServerProcessProxy : public ::Ice::AMD_LocatorRegistry_setServerProcessProxy, public ::IceInternal::IncomingAsync
1430
+ {
1431
+ public:
1432
+
1433
+ AMD_LocatorRegistry_setServerProcessProxy(::IceInternal::Incoming&);
1434
+
1435
+ virtual void ice_response();
1436
+ };
1437
+
1438
+ #if defined(_MSC_VER) && (_MSC_VER >= 1900)
1439
+ # pragma warning(pop)
1440
+ #endif
1441
+
1442
+ }
1443
+
1444
+ }
1445
+ /// \endcond
1446
+
1447
+ namespace Ice
1448
+ {
1449
+
1450
+ /**
1451
+ * Base class for asynchronous callback wrapper classes used for calls to
1452
+ * IceProxy::Ice::Locator::begin_findObjectById.
1453
+ * Create a wrapper instance by calling ::Ice::newCallback_Locator_findObjectById.
1454
+ */
1455
+ class Callback_Locator_findObjectById_Base : public virtual ::IceInternal::CallbackBase { };
1456
+ typedef ::IceUtil::Handle< Callback_Locator_findObjectById_Base> Callback_Locator_findObjectByIdPtr;
1457
+
1458
+ /**
1459
+ * Base class for asynchronous callback wrapper classes used for calls to
1460
+ * IceProxy::Ice::Locator::begin_findAdapterById.
1461
+ * Create a wrapper instance by calling ::Ice::newCallback_Locator_findAdapterById.
1462
+ */
1463
+ class Callback_Locator_findAdapterById_Base : public virtual ::IceInternal::CallbackBase { };
1464
+ typedef ::IceUtil::Handle< Callback_Locator_findAdapterById_Base> Callback_Locator_findAdapterByIdPtr;
1465
+
1466
+ /**
1467
+ * Base class for asynchronous callback wrapper classes used for calls to
1468
+ * IceProxy::Ice::Locator::begin_getRegistry.
1469
+ * Create a wrapper instance by calling ::Ice::newCallback_Locator_getRegistry.
1470
+ */
1471
+ class Callback_Locator_getRegistry_Base : public virtual ::IceInternal::CallbackBase { };
1472
+ typedef ::IceUtil::Handle< Callback_Locator_getRegistry_Base> Callback_Locator_getRegistryPtr;
1473
+
1474
+ /**
1475
+ * Base class for asynchronous callback wrapper classes used for calls to
1476
+ * IceProxy::Ice::LocatorRegistry::begin_setAdapterDirectProxy.
1477
+ * Create a wrapper instance by calling ::Ice::newCallback_LocatorRegistry_setAdapterDirectProxy.
1478
+ */
1479
+ class Callback_LocatorRegistry_setAdapterDirectProxy_Base : public virtual ::IceInternal::CallbackBase { };
1480
+ typedef ::IceUtil::Handle< Callback_LocatorRegistry_setAdapterDirectProxy_Base> Callback_LocatorRegistry_setAdapterDirectProxyPtr;
1481
+
1482
+ /**
1483
+ * Base class for asynchronous callback wrapper classes used for calls to
1484
+ * IceProxy::Ice::LocatorRegistry::begin_setReplicatedAdapterDirectProxy.
1485
+ * Create a wrapper instance by calling ::Ice::newCallback_LocatorRegistry_setReplicatedAdapterDirectProxy.
1486
+ */
1487
+ class Callback_LocatorRegistry_setReplicatedAdapterDirectProxy_Base : public virtual ::IceInternal::CallbackBase { };
1488
+ typedef ::IceUtil::Handle< Callback_LocatorRegistry_setReplicatedAdapterDirectProxy_Base> Callback_LocatorRegistry_setReplicatedAdapterDirectProxyPtr;
1489
+
1490
+ /**
1491
+ * Base class for asynchronous callback wrapper classes used for calls to
1492
+ * IceProxy::Ice::LocatorRegistry::begin_setServerProcessProxy.
1493
+ * Create a wrapper instance by calling ::Ice::newCallback_LocatorRegistry_setServerProcessProxy.
1494
+ */
1495
+ class Callback_LocatorRegistry_setServerProcessProxy_Base : public virtual ::IceInternal::CallbackBase { };
1496
+ typedef ::IceUtil::Handle< Callback_LocatorRegistry_setServerProcessProxy_Base> Callback_LocatorRegistry_setServerProcessProxyPtr;
1497
+
1498
+ /**
1499
+ * Base class for asynchronous callback wrapper classes used for calls to
1500
+ * IceProxy::Ice::LocatorFinder::begin_getLocator.
1501
+ * Create a wrapper instance by calling ::Ice::newCallback_LocatorFinder_getLocator.
1502
+ */
1503
+ class Callback_LocatorFinder_getLocator_Base : public virtual ::IceInternal::CallbackBase { };
1504
+ typedef ::IceUtil::Handle< Callback_LocatorFinder_getLocator_Base> Callback_LocatorFinder_getLocatorPtr;
1505
+
1506
+ }
1507
+
1508
+ namespace IceProxy
1509
+ {
1510
+
1511
+ namespace Ice
1512
+ {
1513
+
1514
+ class ICE_CLASS(ICE_API) Locator : public virtual ::Ice::Proxy<Locator, ::IceProxy::Ice::Object>
1515
+ {
1516
+ public:
1517
+
1518
+ /**
1519
+ * Find an object by identity and return a proxy that contains
1520
+ * the adapter ID or endpoints which can be used to access the
1521
+ * object.
1522
+ * @param id The identity.
1523
+ * @param context The Context map to send with the invocation.
1524
+ * @return The proxy, or null if the object is not active.
1525
+ * @throws Ice::ObjectNotFoundException Raised if the object cannot
1526
+ * be found.
1527
+ */
1528
+ ICE_MEMBER(ICE_API) ::Ice::ObjectPrx findObjectById(const ::Ice::Identity& id, const ::Ice::Context& context = ::Ice::noExplicitContext)
1529
+ {
1530
+ return end_findObjectById(_iceI_begin_findObjectById(id, context, ::IceInternal::dummyCallback, 0, true));
1531
+ }
1532
+
1533
+ /**
1534
+ * Find an object by identity and return a proxy that contains
1535
+ * the adapter ID or endpoints which can be used to access the
1536
+ * object.
1537
+ * @param id The identity.
1538
+ * @param context The Context map to send with the invocation.
1539
+ * @return The asynchronous result object for the invocation.
1540
+ */
1541
+ ::Ice::AsyncResultPtr begin_findObjectById(const ::Ice::Identity& id, const ::Ice::Context& context = ::Ice::noExplicitContext)
1542
+ {
1543
+ return _iceI_begin_findObjectById(id, context, ::IceInternal::dummyCallback, 0);
1544
+ }
1545
+
1546
+ /**
1547
+ * Find an object by identity and return a proxy that contains
1548
+ * the adapter ID or endpoints which can be used to access the
1549
+ * object.
1550
+ * @param id The identity.
1551
+ * @param cb Asynchronous callback object.
1552
+ * @param cookie User-defined data to associate with the invocation.
1553
+ * @return The asynchronous result object for the invocation.
1554
+ */
1555
+ ::Ice::AsyncResultPtr begin_findObjectById(const ::Ice::Identity& id, const ::Ice::CallbackPtr& cb, const ::Ice::LocalObjectPtr& cookie = 0)
1556
+ {
1557
+ return _iceI_begin_findObjectById(id, ::Ice::noExplicitContext, cb, cookie);
1558
+ }
1559
+
1560
+ /**
1561
+ * Find an object by identity and return a proxy that contains
1562
+ * the adapter ID or endpoints which can be used to access the
1563
+ * object.
1564
+ * @param id The identity.
1565
+ * @param context The Context map to send with the invocation.
1566
+ * @param cb Asynchronous callback object.
1567
+ * @param cookie User-defined data to associate with the invocation.
1568
+ * @return The asynchronous result object for the invocation.
1569
+ */
1570
+ ::Ice::AsyncResultPtr begin_findObjectById(const ::Ice::Identity& id, const ::Ice::Context& context, const ::Ice::CallbackPtr& cb, const ::Ice::LocalObjectPtr& cookie = 0)
1571
+ {
1572
+ return _iceI_begin_findObjectById(id, context, cb, cookie);
1573
+ }
1574
+
1575
+ /**
1576
+ * Find an object by identity and return a proxy that contains
1577
+ * the adapter ID or endpoints which can be used to access the
1578
+ * object.
1579
+ * @param id The identity.
1580
+ * @param cb Asynchronous callback object.
1581
+ * @param cookie User-defined data to associate with the invocation.
1582
+ * @return The asynchronous result object for the invocation.
1583
+ */
1584
+ ::Ice::AsyncResultPtr begin_findObjectById(const ::Ice::Identity& id, const ::Ice::Callback_Locator_findObjectByIdPtr& cb, const ::Ice::LocalObjectPtr& cookie = 0)
1585
+ {
1586
+ return _iceI_begin_findObjectById(id, ::Ice::noExplicitContext, cb, cookie);
1587
+ }
1588
+
1589
+ /**
1590
+ * Find an object by identity and return a proxy that contains
1591
+ * the adapter ID or endpoints which can be used to access the
1592
+ * object.
1593
+ * @param id The identity.
1594
+ * @param context The Context map to send with the invocation.
1595
+ * @param cb Asynchronous callback object.
1596
+ * @param cookie User-defined data to associate with the invocation.
1597
+ * @return The asynchronous result object for the invocation.
1598
+ */
1599
+ ::Ice::AsyncResultPtr begin_findObjectById(const ::Ice::Identity& id, const ::Ice::Context& context, const ::Ice::Callback_Locator_findObjectByIdPtr& cb, const ::Ice::LocalObjectPtr& cookie = 0)
1600
+ {
1601
+ return _iceI_begin_findObjectById(id, context, cb, cookie);
1602
+ }
1603
+
1604
+ /**
1605
+ * Completes an invocation of begin_findObjectById.
1606
+ * @param result The asynchronous result object for the invocation.
1607
+ * @return The proxy, or null if the object is not active.
1608
+ * @throws Ice::ObjectNotFoundException Raised if the object cannot
1609
+ * be found.
1610
+ */
1611
+ ICE_MEMBER(ICE_API) ::Ice::ObjectPrx end_findObjectById(const ::Ice::AsyncResultPtr& result);
1612
+
1613
+ private:
1614
+
1615
+ ICE_MEMBER(ICE_API) ::Ice::AsyncResultPtr _iceI_begin_findObjectById(const ::Ice::Identity&, const ::Ice::Context&, const ::IceInternal::CallbackBasePtr&, const ::Ice::LocalObjectPtr& cookie = 0, bool sync = false);
1616
+
1617
+ public:
1618
+
1619
+ /**
1620
+ * Find an adapter by id and return a proxy that contains
1621
+ * its endpoints.
1622
+ * @param id The adapter id.
1623
+ * @param context The Context map to send with the invocation.
1624
+ * @return The adapter proxy, or null if the adapter is not active.
1625
+ * @throws Ice::AdapterNotFoundException Raised if the adapter cannot be
1626
+ * found.
1627
+ */
1628
+ ICE_MEMBER(ICE_API) ::Ice::ObjectPrx findAdapterById(const ::std::string& id, const ::Ice::Context& context = ::Ice::noExplicitContext)
1629
+ {
1630
+ return end_findAdapterById(_iceI_begin_findAdapterById(id, context, ::IceInternal::dummyCallback, 0, true));
1631
+ }
1632
+
1633
+ /**
1634
+ * Find an adapter by id and return a proxy that contains
1635
+ * its endpoints.
1636
+ * @param id The adapter id.
1637
+ * @param context The Context map to send with the invocation.
1638
+ * @return The asynchronous result object for the invocation.
1639
+ */
1640
+ ::Ice::AsyncResultPtr begin_findAdapterById(const ::std::string& id, const ::Ice::Context& context = ::Ice::noExplicitContext)
1641
+ {
1642
+ return _iceI_begin_findAdapterById(id, context, ::IceInternal::dummyCallback, 0);
1643
+ }
1644
+
1645
+ /**
1646
+ * Find an adapter by id and return a proxy that contains
1647
+ * its endpoints.
1648
+ * @param id The adapter id.
1649
+ * @param cb Asynchronous callback object.
1650
+ * @param cookie User-defined data to associate with the invocation.
1651
+ * @return The asynchronous result object for the invocation.
1652
+ */
1653
+ ::Ice::AsyncResultPtr begin_findAdapterById(const ::std::string& id, const ::Ice::CallbackPtr& cb, const ::Ice::LocalObjectPtr& cookie = 0)
1654
+ {
1655
+ return _iceI_begin_findAdapterById(id, ::Ice::noExplicitContext, cb, cookie);
1656
+ }
1657
+
1658
+ /**
1659
+ * Find an adapter by id and return a proxy that contains
1660
+ * its endpoints.
1661
+ * @param id The adapter id.
1662
+ * @param context The Context map to send with the invocation.
1663
+ * @param cb Asynchronous callback object.
1664
+ * @param cookie User-defined data to associate with the invocation.
1665
+ * @return The asynchronous result object for the invocation.
1666
+ */
1667
+ ::Ice::AsyncResultPtr begin_findAdapterById(const ::std::string& id, const ::Ice::Context& context, const ::Ice::CallbackPtr& cb, const ::Ice::LocalObjectPtr& cookie = 0)
1668
+ {
1669
+ return _iceI_begin_findAdapterById(id, context, cb, cookie);
1670
+ }
1671
+
1672
+ /**
1673
+ * Find an adapter by id and return a proxy that contains
1674
+ * its endpoints.
1675
+ * @param id The adapter id.
1676
+ * @param cb Asynchronous callback object.
1677
+ * @param cookie User-defined data to associate with the invocation.
1678
+ * @return The asynchronous result object for the invocation.
1679
+ */
1680
+ ::Ice::AsyncResultPtr begin_findAdapterById(const ::std::string& id, const ::Ice::Callback_Locator_findAdapterByIdPtr& cb, const ::Ice::LocalObjectPtr& cookie = 0)
1681
+ {
1682
+ return _iceI_begin_findAdapterById(id, ::Ice::noExplicitContext, cb, cookie);
1683
+ }
1684
+
1685
+ /**
1686
+ * Find an adapter by id and return a proxy that contains
1687
+ * its endpoints.
1688
+ * @param id The adapter id.
1689
+ * @param context The Context map to send with the invocation.
1690
+ * @param cb Asynchronous callback object.
1691
+ * @param cookie User-defined data to associate with the invocation.
1692
+ * @return The asynchronous result object for the invocation.
1693
+ */
1694
+ ::Ice::AsyncResultPtr begin_findAdapterById(const ::std::string& id, const ::Ice::Context& context, const ::Ice::Callback_Locator_findAdapterByIdPtr& cb, const ::Ice::LocalObjectPtr& cookie = 0)
1695
+ {
1696
+ return _iceI_begin_findAdapterById(id, context, cb, cookie);
1697
+ }
1698
+
1699
+ /**
1700
+ * Completes an invocation of begin_findAdapterById.
1701
+ * @param result The asynchronous result object for the invocation.
1702
+ * @return The adapter proxy, or null if the adapter is not active.
1703
+ * @throws Ice::AdapterNotFoundException Raised if the adapter cannot be
1704
+ * found.
1705
+ */
1706
+ ICE_MEMBER(ICE_API) ::Ice::ObjectPrx end_findAdapterById(const ::Ice::AsyncResultPtr& result);
1707
+
1708
+ private:
1709
+
1710
+ ICE_MEMBER(ICE_API) ::Ice::AsyncResultPtr _iceI_begin_findAdapterById(const ::std::string&, const ::Ice::Context&, const ::IceInternal::CallbackBasePtr&, const ::Ice::LocalObjectPtr& cookie = 0, bool sync = false);
1711
+
1712
+ public:
1713
+
1714
+ /**
1715
+ * Get the locator registry.
1716
+ * @param context The Context map to send with the invocation.
1717
+ * @return The locator registry.
1718
+ */
1719
+ ICE_MEMBER(ICE_API) ::Ice::LocatorRegistryPrx getRegistry(const ::Ice::Context& context = ::Ice::noExplicitContext)
1720
+ {
1721
+ return end_getRegistry(_iceI_begin_getRegistry(context, ::IceInternal::dummyCallback, 0, true));
1722
+ }
1723
+
1724
+ /**
1725
+ * Get the locator registry.
1726
+ * @param context The Context map to send with the invocation.
1727
+ * @return The asynchronous result object for the invocation.
1728
+ */
1729
+ ::Ice::AsyncResultPtr begin_getRegistry(const ::Ice::Context& context = ::Ice::noExplicitContext)
1730
+ {
1731
+ return _iceI_begin_getRegistry(context, ::IceInternal::dummyCallback, 0);
1732
+ }
1733
+
1734
+ /**
1735
+ * Get the locator registry.
1736
+ * @param cb Asynchronous callback object.
1737
+ * @param cookie User-defined data to associate with the invocation.
1738
+ * @return The asynchronous result object for the invocation.
1739
+ */
1740
+ ::Ice::AsyncResultPtr begin_getRegistry(const ::Ice::CallbackPtr& cb, const ::Ice::LocalObjectPtr& cookie = 0)
1741
+ {
1742
+ return _iceI_begin_getRegistry(::Ice::noExplicitContext, cb, cookie);
1743
+ }
1744
+
1745
+ /**
1746
+ * Get the locator registry.
1747
+ * @param context The Context map to send with the invocation.
1748
+ * @param cb Asynchronous callback object.
1749
+ * @param cookie User-defined data to associate with the invocation.
1750
+ * @return The asynchronous result object for the invocation.
1751
+ */
1752
+ ::Ice::AsyncResultPtr begin_getRegistry(const ::Ice::Context& context, const ::Ice::CallbackPtr& cb, const ::Ice::LocalObjectPtr& cookie = 0)
1753
+ {
1754
+ return _iceI_begin_getRegistry(context, cb, cookie);
1755
+ }
1756
+
1757
+ /**
1758
+ * Get the locator registry.
1759
+ * @param cb Asynchronous callback object.
1760
+ * @param cookie User-defined data to associate with the invocation.
1761
+ * @return The asynchronous result object for the invocation.
1762
+ */
1763
+ ::Ice::AsyncResultPtr begin_getRegistry(const ::Ice::Callback_Locator_getRegistryPtr& cb, const ::Ice::LocalObjectPtr& cookie = 0)
1764
+ {
1765
+ return _iceI_begin_getRegistry(::Ice::noExplicitContext, cb, cookie);
1766
+ }
1767
+
1768
+ /**
1769
+ * Get the locator registry.
1770
+ * @param context The Context map to send with the invocation.
1771
+ * @param cb Asynchronous callback object.
1772
+ * @param cookie User-defined data to associate with the invocation.
1773
+ * @return The asynchronous result object for the invocation.
1774
+ */
1775
+ ::Ice::AsyncResultPtr begin_getRegistry(const ::Ice::Context& context, const ::Ice::Callback_Locator_getRegistryPtr& cb, const ::Ice::LocalObjectPtr& cookie = 0)
1776
+ {
1777
+ return _iceI_begin_getRegistry(context, cb, cookie);
1778
+ }
1779
+
1780
+ /**
1781
+ * Completes an invocation of begin_getRegistry.
1782
+ * @param result The asynchronous result object for the invocation.
1783
+ * @return The locator registry.
1784
+ */
1785
+ ICE_MEMBER(ICE_API) ::Ice::LocatorRegistryPrx end_getRegistry(const ::Ice::AsyncResultPtr& result);
1786
+
1787
+ private:
1788
+
1789
+ ICE_MEMBER(ICE_API) ::Ice::AsyncResultPtr _iceI_begin_getRegistry(const ::Ice::Context&, const ::IceInternal::CallbackBasePtr&, const ::Ice::LocalObjectPtr& cookie = 0, bool sync = false);
1790
+
1791
+ public:
1792
+
1793
+ /**
1794
+ * Obtains the Slice type ID corresponding to this interface.
1795
+ * @return A fully-scoped type ID.
1796
+ */
1797
+ ICE_MEMBER(ICE_API) static const ::std::string& ice_staticId();
1798
+
1799
+ protected:
1800
+ /// \cond INTERNAL
1801
+
1802
+ ICE_MEMBER(ICE_API) virtual ::IceProxy::Ice::Object* _newInstance() const;
1803
+ /// \endcond
1804
+ };
1805
+
1806
+ class ICE_CLASS(ICE_API) LocatorRegistry : public virtual ::Ice::Proxy<LocatorRegistry, ::IceProxy::Ice::Object>
1807
+ {
1808
+ public:
1809
+
1810
+ /**
1811
+ * Set the adapter endpoints with the locator registry.
1812
+ * @param id The adapter id.
1813
+ * @param proxy The adapter proxy (a dummy direct proxy created
1814
+ * by the adapter). The direct proxy contains the adapter
1815
+ * endpoints.
1816
+ * @param context The Context map to send with the invocation.
1817
+ * @throws Ice::AdapterAlreadyActiveException Raised if an adapter with the same
1818
+ * id is already active.
1819
+ * @throws Ice::AdapterNotFoundException Raised if the adapter cannot
1820
+ * be found, or if the locator only allows
1821
+ * registered adapters to set their active proxy and the
1822
+ * adapter is not registered with the locator.
1823
+ */
1824
+ ICE_MEMBER(ICE_API) void setAdapterDirectProxy(const ::std::string& id, const ::Ice::ObjectPrx& proxy, const ::Ice::Context& context = ::Ice::noExplicitContext)
1825
+ {
1826
+ end_setAdapterDirectProxy(_iceI_begin_setAdapterDirectProxy(id, proxy, context, ::IceInternal::dummyCallback, 0, true));
1827
+ }
1828
+
1829
+ /**
1830
+ * Set the adapter endpoints with the locator registry.
1831
+ * @param id The adapter id.
1832
+ * @param proxy The adapter proxy (a dummy direct proxy created
1833
+ * by the adapter). The direct proxy contains the adapter
1834
+ * endpoints.
1835
+ * @param context The Context map to send with the invocation.
1836
+ * @return The asynchronous result object for the invocation.
1837
+ */
1838
+ ::Ice::AsyncResultPtr begin_setAdapterDirectProxy(const ::std::string& id, const ::Ice::ObjectPrx& proxy, const ::Ice::Context& context = ::Ice::noExplicitContext)
1839
+ {
1840
+ return _iceI_begin_setAdapterDirectProxy(id, proxy, context, ::IceInternal::dummyCallback, 0);
1841
+ }
1842
+
1843
+ /**
1844
+ * Set the adapter endpoints with the locator registry.
1845
+ * @param id The adapter id.
1846
+ * @param proxy The adapter proxy (a dummy direct proxy created
1847
+ * by the adapter). The direct proxy contains the adapter
1848
+ * endpoints.
1849
+ * @param cb Asynchronous callback object.
1850
+ * @param cookie User-defined data to associate with the invocation.
1851
+ * @return The asynchronous result object for the invocation.
1852
+ */
1853
+ ::Ice::AsyncResultPtr begin_setAdapterDirectProxy(const ::std::string& id, const ::Ice::ObjectPrx& proxy, const ::Ice::CallbackPtr& cb, const ::Ice::LocalObjectPtr& cookie = 0)
1854
+ {
1855
+ return _iceI_begin_setAdapterDirectProxy(id, proxy, ::Ice::noExplicitContext, cb, cookie);
1856
+ }
1857
+
1858
+ /**
1859
+ * Set the adapter endpoints with the locator registry.
1860
+ * @param id The adapter id.
1861
+ * @param proxy The adapter proxy (a dummy direct proxy created
1862
+ * by the adapter). The direct proxy contains the adapter
1863
+ * endpoints.
1864
+ * @param context The Context map to send with the invocation.
1865
+ * @param cb Asynchronous callback object.
1866
+ * @param cookie User-defined data to associate with the invocation.
1867
+ * @return The asynchronous result object for the invocation.
1868
+ */
1869
+ ::Ice::AsyncResultPtr begin_setAdapterDirectProxy(const ::std::string& id, const ::Ice::ObjectPrx& proxy, const ::Ice::Context& context, const ::Ice::CallbackPtr& cb, const ::Ice::LocalObjectPtr& cookie = 0)
1870
+ {
1871
+ return _iceI_begin_setAdapterDirectProxy(id, proxy, context, cb, cookie);
1872
+ }
1873
+
1874
+ /**
1875
+ * Set the adapter endpoints with the locator registry.
1876
+ * @param id The adapter id.
1877
+ * @param proxy The adapter proxy (a dummy direct proxy created
1878
+ * by the adapter). The direct proxy contains the adapter
1879
+ * endpoints.
1880
+ * @param cb Asynchronous callback object.
1881
+ * @param cookie User-defined data to associate with the invocation.
1882
+ * @return The asynchronous result object for the invocation.
1883
+ */
1884
+ ::Ice::AsyncResultPtr begin_setAdapterDirectProxy(const ::std::string& id, const ::Ice::ObjectPrx& proxy, const ::Ice::Callback_LocatorRegistry_setAdapterDirectProxyPtr& cb, const ::Ice::LocalObjectPtr& cookie = 0)
1885
+ {
1886
+ return _iceI_begin_setAdapterDirectProxy(id, proxy, ::Ice::noExplicitContext, cb, cookie);
1887
+ }
1888
+
1889
+ /**
1890
+ * Set the adapter endpoints with the locator registry.
1891
+ * @param id The adapter id.
1892
+ * @param proxy The adapter proxy (a dummy direct proxy created
1893
+ * by the adapter). The direct proxy contains the adapter
1894
+ * endpoints.
1895
+ * @param context The Context map to send with the invocation.
1896
+ * @param cb Asynchronous callback object.
1897
+ * @param cookie User-defined data to associate with the invocation.
1898
+ * @return The asynchronous result object for the invocation.
1899
+ */
1900
+ ::Ice::AsyncResultPtr begin_setAdapterDirectProxy(const ::std::string& id, const ::Ice::ObjectPrx& proxy, const ::Ice::Context& context, const ::Ice::Callback_LocatorRegistry_setAdapterDirectProxyPtr& cb, const ::Ice::LocalObjectPtr& cookie = 0)
1901
+ {
1902
+ return _iceI_begin_setAdapterDirectProxy(id, proxy, context, cb, cookie);
1903
+ }
1904
+
1905
+ /**
1906
+ * Completes an invocation of begin_setAdapterDirectProxy.
1907
+ * @param result The asynchronous result object for the invocation.
1908
+ * @throws Ice::AdapterAlreadyActiveException Raised if an adapter with the same
1909
+ * id is already active.
1910
+ * @throws Ice::AdapterNotFoundException Raised if the adapter cannot
1911
+ * be found, or if the locator only allows
1912
+ * registered adapters to set their active proxy and the
1913
+ * adapter is not registered with the locator.
1914
+ */
1915
+ ICE_MEMBER(ICE_API) void end_setAdapterDirectProxy(const ::Ice::AsyncResultPtr& result);
1916
+
1917
+ private:
1918
+
1919
+ ICE_MEMBER(ICE_API) ::Ice::AsyncResultPtr _iceI_begin_setAdapterDirectProxy(const ::std::string&, const ::Ice::ObjectPrx&, const ::Ice::Context&, const ::IceInternal::CallbackBasePtr&, const ::Ice::LocalObjectPtr& cookie = 0, bool sync = false);
1920
+
1921
+ public:
1922
+
1923
+ /**
1924
+ * Set the adapter endpoints with the locator registry.
1925
+ * @param adapterId The adapter id.
1926
+ * @param replicaGroupId The replica group id.
1927
+ * @param p The adapter proxy (a dummy direct proxy created
1928
+ * by the adapter). The direct proxy contains the adapter
1929
+ * endpoints.
1930
+ * @param context The Context map to send with the invocation.
1931
+ * @throws Ice::AdapterAlreadyActiveException Raised if an adapter with the same
1932
+ * id is already active.
1933
+ * @throws Ice::AdapterNotFoundException Raised if the adapter cannot
1934
+ * be found, or if the locator only allows registered adapters to
1935
+ * set their active proxy and the adapter is not registered with
1936
+ * the locator.
1937
+ * @throws Ice::InvalidReplicaGroupIdException Raised if the given
1938
+ * replica group doesn't match the one registered with the
1939
+ * locator registry for this object adapter.
1940
+ */
1941
+ ICE_MEMBER(ICE_API) void setReplicatedAdapterDirectProxy(const ::std::string& adapterId, const ::std::string& replicaGroupId, const ::Ice::ObjectPrx& p, const ::Ice::Context& context = ::Ice::noExplicitContext)
1942
+ {
1943
+ end_setReplicatedAdapterDirectProxy(_iceI_begin_setReplicatedAdapterDirectProxy(adapterId, replicaGroupId, p, context, ::IceInternal::dummyCallback, 0, true));
1944
+ }
1945
+
1946
+ /**
1947
+ * Set the adapter endpoints with the locator registry.
1948
+ * @param adapterId The adapter id.
1949
+ * @param replicaGroupId The replica group id.
1950
+ * @param p The adapter proxy (a dummy direct proxy created
1951
+ * by the adapter). The direct proxy contains the adapter
1952
+ * endpoints.
1953
+ * @param context The Context map to send with the invocation.
1954
+ * @return The asynchronous result object for the invocation.
1955
+ */
1956
+ ::Ice::AsyncResultPtr begin_setReplicatedAdapterDirectProxy(const ::std::string& adapterId, const ::std::string& replicaGroupId, const ::Ice::ObjectPrx& p, const ::Ice::Context& context = ::Ice::noExplicitContext)
1957
+ {
1958
+ return _iceI_begin_setReplicatedAdapterDirectProxy(adapterId, replicaGroupId, p, context, ::IceInternal::dummyCallback, 0);
1959
+ }
1960
+
1961
+ /**
1962
+ * Set the adapter endpoints with the locator registry.
1963
+ * @param adapterId The adapter id.
1964
+ * @param replicaGroupId The replica group id.
1965
+ * @param p The adapter proxy (a dummy direct proxy created
1966
+ * by the adapter). The direct proxy contains the adapter
1967
+ * endpoints.
1968
+ * @param cb Asynchronous callback object.
1969
+ * @param cookie User-defined data to associate with the invocation.
1970
+ * @return The asynchronous result object for the invocation.
1971
+ */
1972
+ ::Ice::AsyncResultPtr begin_setReplicatedAdapterDirectProxy(const ::std::string& adapterId, const ::std::string& replicaGroupId, const ::Ice::ObjectPrx& p, const ::Ice::CallbackPtr& cb, const ::Ice::LocalObjectPtr& cookie = 0)
1973
+ {
1974
+ return _iceI_begin_setReplicatedAdapterDirectProxy(adapterId, replicaGroupId, p, ::Ice::noExplicitContext, cb, cookie);
1975
+ }
1976
+
1977
+ /**
1978
+ * Set the adapter endpoints with the locator registry.
1979
+ * @param adapterId The adapter id.
1980
+ * @param replicaGroupId The replica group id.
1981
+ * @param p The adapter proxy (a dummy direct proxy created
1982
+ * by the adapter). The direct proxy contains the adapter
1983
+ * endpoints.
1984
+ * @param context The Context map to send with the invocation.
1985
+ * @param cb Asynchronous callback object.
1986
+ * @param cookie User-defined data to associate with the invocation.
1987
+ * @return The asynchronous result object for the invocation.
1988
+ */
1989
+ ::Ice::AsyncResultPtr begin_setReplicatedAdapterDirectProxy(const ::std::string& adapterId, const ::std::string& replicaGroupId, const ::Ice::ObjectPrx& p, const ::Ice::Context& context, const ::Ice::CallbackPtr& cb, const ::Ice::LocalObjectPtr& cookie = 0)
1990
+ {
1991
+ return _iceI_begin_setReplicatedAdapterDirectProxy(adapterId, replicaGroupId, p, context, cb, cookie);
1992
+ }
1993
+
1994
+ /**
1995
+ * Set the adapter endpoints with the locator registry.
1996
+ * @param adapterId The adapter id.
1997
+ * @param replicaGroupId The replica group id.
1998
+ * @param p The adapter proxy (a dummy direct proxy created
1999
+ * by the adapter). The direct proxy contains the adapter
2000
+ * endpoints.
2001
+ * @param cb Asynchronous callback object.
2002
+ * @param cookie User-defined data to associate with the invocation.
2003
+ * @return The asynchronous result object for the invocation.
2004
+ */
2005
+ ::Ice::AsyncResultPtr begin_setReplicatedAdapterDirectProxy(const ::std::string& adapterId, const ::std::string& replicaGroupId, const ::Ice::ObjectPrx& p, const ::Ice::Callback_LocatorRegistry_setReplicatedAdapterDirectProxyPtr& cb, const ::Ice::LocalObjectPtr& cookie = 0)
2006
+ {
2007
+ return _iceI_begin_setReplicatedAdapterDirectProxy(adapterId, replicaGroupId, p, ::Ice::noExplicitContext, cb, cookie);
2008
+ }
2009
+
2010
+ /**
2011
+ * Set the adapter endpoints with the locator registry.
2012
+ * @param adapterId The adapter id.
2013
+ * @param replicaGroupId The replica group id.
2014
+ * @param p The adapter proxy (a dummy direct proxy created
2015
+ * by the adapter). The direct proxy contains the adapter
2016
+ * endpoints.
2017
+ * @param context The Context map to send with the invocation.
2018
+ * @param cb Asynchronous callback object.
2019
+ * @param cookie User-defined data to associate with the invocation.
2020
+ * @return The asynchronous result object for the invocation.
2021
+ */
2022
+ ::Ice::AsyncResultPtr begin_setReplicatedAdapterDirectProxy(const ::std::string& adapterId, const ::std::string& replicaGroupId, const ::Ice::ObjectPrx& p, const ::Ice::Context& context, const ::Ice::Callback_LocatorRegistry_setReplicatedAdapterDirectProxyPtr& cb, const ::Ice::LocalObjectPtr& cookie = 0)
2023
+ {
2024
+ return _iceI_begin_setReplicatedAdapterDirectProxy(adapterId, replicaGroupId, p, context, cb, cookie);
2025
+ }
2026
+
2027
+ /**
2028
+ * Completes an invocation of begin_setReplicatedAdapterDirectProxy.
2029
+ * @param result The asynchronous result object for the invocation.
2030
+ * @throws Ice::AdapterAlreadyActiveException Raised if an adapter with the same
2031
+ * id is already active.
2032
+ * @throws Ice::AdapterNotFoundException Raised if the adapter cannot
2033
+ * be found, or if the locator only allows registered adapters to
2034
+ * set their active proxy and the adapter is not registered with
2035
+ * the locator.
2036
+ * @throws Ice::InvalidReplicaGroupIdException Raised if the given
2037
+ * replica group doesn't match the one registered with the
2038
+ * locator registry for this object adapter.
2039
+ */
2040
+ ICE_MEMBER(ICE_API) void end_setReplicatedAdapterDirectProxy(const ::Ice::AsyncResultPtr& result);
2041
+
2042
+ private:
2043
+
2044
+ ICE_MEMBER(ICE_API) ::Ice::AsyncResultPtr _iceI_begin_setReplicatedAdapterDirectProxy(const ::std::string&, const ::std::string&, const ::Ice::ObjectPrx&, const ::Ice::Context&, const ::IceInternal::CallbackBasePtr&, const ::Ice::LocalObjectPtr& cookie = 0, bool sync = false);
2045
+
2046
+ public:
2047
+
2048
+ /**
2049
+ * Set the process proxy for a server.
2050
+ * @param id The server id.
2051
+ * @param proxy The process proxy.
2052
+ * @param context The Context map to send with the invocation.
2053
+ * @throws Ice::ServerNotFoundException Raised if the server cannot
2054
+ * be found.
2055
+ */
2056
+ ICE_MEMBER(ICE_API) void setServerProcessProxy(const ::std::string& id, const ::Ice::ProcessPrx& proxy, const ::Ice::Context& context = ::Ice::noExplicitContext)
2057
+ {
2058
+ end_setServerProcessProxy(_iceI_begin_setServerProcessProxy(id, proxy, context, ::IceInternal::dummyCallback, 0, true));
2059
+ }
2060
+
2061
+ /**
2062
+ * Set the process proxy for a server.
2063
+ * @param id The server id.
2064
+ * @param proxy The process proxy.
2065
+ * @param context The Context map to send with the invocation.
2066
+ * @return The asynchronous result object for the invocation.
2067
+ */
2068
+ ::Ice::AsyncResultPtr begin_setServerProcessProxy(const ::std::string& id, const ::Ice::ProcessPrx& proxy, const ::Ice::Context& context = ::Ice::noExplicitContext)
2069
+ {
2070
+ return _iceI_begin_setServerProcessProxy(id, proxy, context, ::IceInternal::dummyCallback, 0);
2071
+ }
2072
+
2073
+ /**
2074
+ * Set the process proxy for a server.
2075
+ * @param id The server id.
2076
+ * @param proxy The process proxy.
2077
+ * @param cb Asynchronous callback object.
2078
+ * @param cookie User-defined data to associate with the invocation.
2079
+ * @return The asynchronous result object for the invocation.
2080
+ */
2081
+ ::Ice::AsyncResultPtr begin_setServerProcessProxy(const ::std::string& id, const ::Ice::ProcessPrx& proxy, const ::Ice::CallbackPtr& cb, const ::Ice::LocalObjectPtr& cookie = 0)
2082
+ {
2083
+ return _iceI_begin_setServerProcessProxy(id, proxy, ::Ice::noExplicitContext, cb, cookie);
2084
+ }
2085
+
2086
+ /**
2087
+ * Set the process proxy for a server.
2088
+ * @param id The server id.
2089
+ * @param proxy The process proxy.
2090
+ * @param context The Context map to send with the invocation.
2091
+ * @param cb Asynchronous callback object.
2092
+ * @param cookie User-defined data to associate with the invocation.
2093
+ * @return The asynchronous result object for the invocation.
2094
+ */
2095
+ ::Ice::AsyncResultPtr begin_setServerProcessProxy(const ::std::string& id, const ::Ice::ProcessPrx& proxy, const ::Ice::Context& context, const ::Ice::CallbackPtr& cb, const ::Ice::LocalObjectPtr& cookie = 0)
2096
+ {
2097
+ return _iceI_begin_setServerProcessProxy(id, proxy, context, cb, cookie);
2098
+ }
2099
+
2100
+ /**
2101
+ * Set the process proxy for a server.
2102
+ * @param id The server id.
2103
+ * @param proxy The process proxy.
2104
+ * @param cb Asynchronous callback object.
2105
+ * @param cookie User-defined data to associate with the invocation.
2106
+ * @return The asynchronous result object for the invocation.
2107
+ */
2108
+ ::Ice::AsyncResultPtr begin_setServerProcessProxy(const ::std::string& id, const ::Ice::ProcessPrx& proxy, const ::Ice::Callback_LocatorRegistry_setServerProcessProxyPtr& cb, const ::Ice::LocalObjectPtr& cookie = 0)
2109
+ {
2110
+ return _iceI_begin_setServerProcessProxy(id, proxy, ::Ice::noExplicitContext, cb, cookie);
2111
+ }
2112
+
2113
+ /**
2114
+ * Set the process proxy for a server.
2115
+ * @param id The server id.
2116
+ * @param proxy The process proxy.
2117
+ * @param context The Context map to send with the invocation.
2118
+ * @param cb Asynchronous callback object.
2119
+ * @param cookie User-defined data to associate with the invocation.
2120
+ * @return The asynchronous result object for the invocation.
2121
+ */
2122
+ ::Ice::AsyncResultPtr begin_setServerProcessProxy(const ::std::string& id, const ::Ice::ProcessPrx& proxy, const ::Ice::Context& context, const ::Ice::Callback_LocatorRegistry_setServerProcessProxyPtr& cb, const ::Ice::LocalObjectPtr& cookie = 0)
2123
+ {
2124
+ return _iceI_begin_setServerProcessProxy(id, proxy, context, cb, cookie);
2125
+ }
2126
+
2127
+ /**
2128
+ * Completes an invocation of begin_setServerProcessProxy.
2129
+ * @param result The asynchronous result object for the invocation.
2130
+ * @throws Ice::ServerNotFoundException Raised if the server cannot
2131
+ * be found.
2132
+ */
2133
+ ICE_MEMBER(ICE_API) void end_setServerProcessProxy(const ::Ice::AsyncResultPtr& result);
2134
+
2135
+ private:
2136
+
2137
+ ICE_MEMBER(ICE_API) ::Ice::AsyncResultPtr _iceI_begin_setServerProcessProxy(const ::std::string&, const ::Ice::ProcessPrx&, const ::Ice::Context&, const ::IceInternal::CallbackBasePtr&, const ::Ice::LocalObjectPtr& cookie = 0, bool sync = false);
2138
+
2139
+ public:
2140
+
2141
+ /**
2142
+ * Obtains the Slice type ID corresponding to this interface.
2143
+ * @return A fully-scoped type ID.
2144
+ */
2145
+ ICE_MEMBER(ICE_API) static const ::std::string& ice_staticId();
2146
+
2147
+ protected:
2148
+ /// \cond INTERNAL
2149
+
2150
+ ICE_MEMBER(ICE_API) virtual ::IceProxy::Ice::Object* _newInstance() const;
2151
+ /// \endcond
2152
+ };
2153
+
2154
+ class ICE_CLASS(ICE_API) LocatorFinder : public virtual ::Ice::Proxy<LocatorFinder, ::IceProxy::Ice::Object>
2155
+ {
2156
+ public:
2157
+
2158
+ /**
2159
+ * Get the locator proxy implemented by the process hosting this
2160
+ * finder object. The proxy might point to several replicas.
2161
+ * @param context The Context map to send with the invocation.
2162
+ * @return The locator proxy.
2163
+ */
2164
+ ICE_MEMBER(ICE_API) ::Ice::LocatorPrx getLocator(const ::Ice::Context& context = ::Ice::noExplicitContext)
2165
+ {
2166
+ return end_getLocator(_iceI_begin_getLocator(context, ::IceInternal::dummyCallback, 0, true));
2167
+ }
2168
+
2169
+ /**
2170
+ * Get the locator proxy implemented by the process hosting this
2171
+ * finder object. The proxy might point to several replicas.
2172
+ * @param context The Context map to send with the invocation.
2173
+ * @return The asynchronous result object for the invocation.
2174
+ */
2175
+ ::Ice::AsyncResultPtr begin_getLocator(const ::Ice::Context& context = ::Ice::noExplicitContext)
2176
+ {
2177
+ return _iceI_begin_getLocator(context, ::IceInternal::dummyCallback, 0);
2178
+ }
2179
+
2180
+ /**
2181
+ * Get the locator proxy implemented by the process hosting this
2182
+ * finder object. The proxy might point to several replicas.
2183
+ * @param cb Asynchronous callback object.
2184
+ * @param cookie User-defined data to associate with the invocation.
2185
+ * @return The asynchronous result object for the invocation.
2186
+ */
2187
+ ::Ice::AsyncResultPtr begin_getLocator(const ::Ice::CallbackPtr& cb, const ::Ice::LocalObjectPtr& cookie = 0)
2188
+ {
2189
+ return _iceI_begin_getLocator(::Ice::noExplicitContext, cb, cookie);
2190
+ }
2191
+
2192
+ /**
2193
+ * Get the locator proxy implemented by the process hosting this
2194
+ * finder object. The proxy might point to several replicas.
2195
+ * @param context The Context map to send with the invocation.
2196
+ * @param cb Asynchronous callback object.
2197
+ * @param cookie User-defined data to associate with the invocation.
2198
+ * @return The asynchronous result object for the invocation.
2199
+ */
2200
+ ::Ice::AsyncResultPtr begin_getLocator(const ::Ice::Context& context, const ::Ice::CallbackPtr& cb, const ::Ice::LocalObjectPtr& cookie = 0)
2201
+ {
2202
+ return _iceI_begin_getLocator(context, cb, cookie);
2203
+ }
2204
+
2205
+ /**
2206
+ * Get the locator proxy implemented by the process hosting this
2207
+ * finder object. The proxy might point to several replicas.
2208
+ * @param cb Asynchronous callback object.
2209
+ * @param cookie User-defined data to associate with the invocation.
2210
+ * @return The asynchronous result object for the invocation.
2211
+ */
2212
+ ::Ice::AsyncResultPtr begin_getLocator(const ::Ice::Callback_LocatorFinder_getLocatorPtr& cb, const ::Ice::LocalObjectPtr& cookie = 0)
2213
+ {
2214
+ return _iceI_begin_getLocator(::Ice::noExplicitContext, cb, cookie);
2215
+ }
2216
+
2217
+ /**
2218
+ * Get the locator proxy implemented by the process hosting this
2219
+ * finder object. The proxy might point to several replicas.
2220
+ * @param context The Context map to send with the invocation.
2221
+ * @param cb Asynchronous callback object.
2222
+ * @param cookie User-defined data to associate with the invocation.
2223
+ * @return The asynchronous result object for the invocation.
2224
+ */
2225
+ ::Ice::AsyncResultPtr begin_getLocator(const ::Ice::Context& context, const ::Ice::Callback_LocatorFinder_getLocatorPtr& cb, const ::Ice::LocalObjectPtr& cookie = 0)
2226
+ {
2227
+ return _iceI_begin_getLocator(context, cb, cookie);
2228
+ }
2229
+
2230
+ /**
2231
+ * Completes an invocation of begin_getLocator.
2232
+ * @param result The asynchronous result object for the invocation.
2233
+ * @return The locator proxy.
2234
+ */
2235
+ ICE_MEMBER(ICE_API) ::Ice::LocatorPrx end_getLocator(const ::Ice::AsyncResultPtr& result);
2236
+
2237
+ private:
2238
+
2239
+ ICE_MEMBER(ICE_API) ::Ice::AsyncResultPtr _iceI_begin_getLocator(const ::Ice::Context&, const ::IceInternal::CallbackBasePtr&, const ::Ice::LocalObjectPtr& cookie = 0, bool sync = false);
2240
+
2241
+ public:
2242
+
2243
+ /**
2244
+ * Obtains the Slice type ID corresponding to this interface.
2245
+ * @return A fully-scoped type ID.
2246
+ */
2247
+ ICE_MEMBER(ICE_API) static const ::std::string& ice_staticId();
2248
+
2249
+ protected:
2250
+ /// \cond INTERNAL
2251
+
2252
+ ICE_MEMBER(ICE_API) virtual ::IceProxy::Ice::Object* _newInstance() const;
2253
+ /// \endcond
2254
+ };
2255
+
2256
+ }
2257
+
2258
+ }
2259
+
2260
+ namespace Ice
2261
+ {
2262
+
2263
+ /**
2264
+ * The Ice locator interface. This interface is used by clients to
2265
+ * lookup adapters and objects. It is also used by servers to get the
2266
+ * locator registry proxy.
2267
+ *
2268
+ * <p class="Note">The {@link Locator} interface is intended to be used by
2269
+ * Ice internals and by locator implementations. Regular user code
2270
+ * should not attempt to use any functionality of this interface
2271
+ * directly.
2272
+ * \headerfile Ice/Ice.h
2273
+ */
2274
+ class ICE_API Locator : public virtual Object
2275
+ {
2276
+ public:
2277
+
2278
+ typedef LocatorPrx ProxyType;
2279
+ typedef LocatorPtr PointerType;
2280
+
2281
+ virtual ~Locator();
2282
+
2283
+ /**
2284
+ * Determines whether this object supports an interface with the given Slice type ID.
2285
+ * @param id The fully-scoped Slice type ID.
2286
+ * @param current The Current object for the invocation.
2287
+ * @return True if this object supports the interface, false, otherwise.
2288
+ */
2289
+ virtual bool ice_isA(const ::std::string& id, const Current& current = emptyCurrent) const;
2290
+
2291
+ /**
2292
+ * Obtains a list of the Slice type IDs representing the interfaces supported by this object.
2293
+ * @param current The Current object for the invocation.
2294
+ * @return A list of fully-scoped type IDs.
2295
+ */
2296
+ virtual ::std::vector< ::std::string> ice_ids(const Current& current = emptyCurrent) const;
2297
+
2298
+ /**
2299
+ * Obtains a Slice type ID representing the most-derived interface supported by this object.
2300
+ * @param current The Current object for the invocation.
2301
+ * @return A fully-scoped type ID.
2302
+ */
2303
+ virtual const ::std::string& ice_id(const Current& current = emptyCurrent) const;
2304
+
2305
+ /**
2306
+ * Obtains the Slice type ID corresponding to this class.
2307
+ * @return A fully-scoped type ID.
2308
+ */
2309
+ static const ::std::string& ice_staticId();
2310
+
2311
+ /**
2312
+ * Find an object by identity and return a proxy that contains
2313
+ * the adapter ID or endpoints which can be used to access the
2314
+ * object.
2315
+ * @param cb The AMD callback object for the invocation.
2316
+ * @param id The identity.
2317
+ * @param current The Current object for the invocation.
2318
+ * @throws Ice::ObjectNotFoundException Raised if the object cannot
2319
+ * be found.
2320
+ */
2321
+ virtual void findObjectById_async(const ::Ice::AMD_Locator_findObjectByIdPtr& cb, const Identity& id, const Current& current = emptyCurrent) const = 0;
2322
+ /// \cond INTERNAL
2323
+ bool _iceD_findObjectById(::IceInternal::Incoming&, const ::Ice::Current&) const;
2324
+ /// \endcond
2325
+
2326
+ /**
2327
+ * Find an adapter by id and return a proxy that contains
2328
+ * its endpoints.
2329
+ * @param cb The AMD callback object for the invocation.
2330
+ * @param id The adapter id.
2331
+ * @param current The Current object for the invocation.
2332
+ * @throws Ice::AdapterNotFoundException Raised if the adapter cannot be
2333
+ * found.
2334
+ */
2335
+ virtual void findAdapterById_async(const ::Ice::AMD_Locator_findAdapterByIdPtr& cb, const ::std::string& id, const Current& current = emptyCurrent) const = 0;
2336
+ /// \cond INTERNAL
2337
+ bool _iceD_findAdapterById(::IceInternal::Incoming&, const ::Ice::Current&) const;
2338
+ /// \endcond
2339
+
2340
+ /**
2341
+ * Get the locator registry.
2342
+ * @param current The Current object for the invocation.
2343
+ * @return The locator registry.
2344
+ */
2345
+ virtual LocatorRegistryPrx getRegistry(const Current& current = emptyCurrent) const = 0;
2346
+ /// \cond INTERNAL
2347
+ bool _iceD_getRegistry(::IceInternal::Incoming&, const ::Ice::Current&) const;
2348
+ /// \endcond
2349
+
2350
+ /// \cond INTERNAL
2351
+ virtual bool _iceDispatch(::IceInternal::Incoming&, const Current&);
2352
+ /// \endcond
2353
+
2354
+ protected:
2355
+
2356
+ /// \cond STREAM
2357
+ virtual void _iceWriteImpl(OutputStream*) const;
2358
+ virtual void _iceReadImpl(InputStream*);
2359
+ /// \endcond
2360
+ };
2361
+
2362
+ /// \cond INTERNAL
2363
+ inline bool operator==(const Locator& lhs, const Locator& rhs)
2364
+ {
2365
+ return static_cast<const Object&>(lhs) == static_cast<const Object&>(rhs);
2366
+ }
2367
+
2368
+ inline bool operator<(const Locator& lhs, const Locator& rhs)
2369
+ {
2370
+ return static_cast<const Object&>(lhs) < static_cast<const Object&>(rhs);
2371
+ }
2372
+ /// \endcond
2373
+
2374
+ /**
2375
+ * The Ice locator registry interface. This interface is used by
2376
+ * servers to register adapter endpoints with the locator.
2377
+ *
2378
+ * <p class="Note"> The {@link LocatorRegistry} interface is intended to be used
2379
+ * by Ice internals and by locator implementations. Regular user
2380
+ * code should not attempt to use any functionality of this interface
2381
+ * directly.
2382
+ * \headerfile Ice/Ice.h
2383
+ */
2384
+ class ICE_API LocatorRegistry : public virtual Object
2385
+ {
2386
+ public:
2387
+
2388
+ typedef LocatorRegistryPrx ProxyType;
2389
+ typedef LocatorRegistryPtr PointerType;
2390
+
2391
+ virtual ~LocatorRegistry();
2392
+
2393
+ /**
2394
+ * Determines whether this object supports an interface with the given Slice type ID.
2395
+ * @param id The fully-scoped Slice type ID.
2396
+ * @param current The Current object for the invocation.
2397
+ * @return True if this object supports the interface, false, otherwise.
2398
+ */
2399
+ virtual bool ice_isA(const ::std::string& id, const Current& current = emptyCurrent) const;
2400
+
2401
+ /**
2402
+ * Obtains a list of the Slice type IDs representing the interfaces supported by this object.
2403
+ * @param current The Current object for the invocation.
2404
+ * @return A list of fully-scoped type IDs.
2405
+ */
2406
+ virtual ::std::vector< ::std::string> ice_ids(const Current& current = emptyCurrent) const;
2407
+
2408
+ /**
2409
+ * Obtains a Slice type ID representing the most-derived interface supported by this object.
2410
+ * @param current The Current object for the invocation.
2411
+ * @return A fully-scoped type ID.
2412
+ */
2413
+ virtual const ::std::string& ice_id(const Current& current = emptyCurrent) const;
2414
+
2415
+ /**
2416
+ * Obtains the Slice type ID corresponding to this class.
2417
+ * @return A fully-scoped type ID.
2418
+ */
2419
+ static const ::std::string& ice_staticId();
2420
+
2421
+ /**
2422
+ * Set the adapter endpoints with the locator registry.
2423
+ * @param cb The AMD callback object for the invocation.
2424
+ * @param id The adapter id.
2425
+ * @param proxy The adapter proxy (a dummy direct proxy created
2426
+ * by the adapter). The direct proxy contains the adapter
2427
+ * endpoints.
2428
+ * @param current The Current object for the invocation.
2429
+ * @throws Ice::AdapterAlreadyActiveException Raised if an adapter with the same
2430
+ * id is already active.
2431
+ * @throws Ice::AdapterNotFoundException Raised if the adapter cannot
2432
+ * be found, or if the locator only allows
2433
+ * registered adapters to set their active proxy and the
2434
+ * adapter is not registered with the locator.
2435
+ */
2436
+ virtual void setAdapterDirectProxy_async(const ::Ice::AMD_LocatorRegistry_setAdapterDirectProxyPtr& cb, const ::std::string& id, const ObjectPrx& proxy, const Current& current = emptyCurrent) = 0;
2437
+ /// \cond INTERNAL
2438
+ bool _iceD_setAdapterDirectProxy(::IceInternal::Incoming&, const ::Ice::Current&);
2439
+ /// \endcond
2440
+
2441
+ /**
2442
+ * Set the adapter endpoints with the locator registry.
2443
+ * @param cb The AMD callback object for the invocation.
2444
+ * @param adapterId The adapter id.
2445
+ * @param replicaGroupId The replica group id.
2446
+ * @param p The adapter proxy (a dummy direct proxy created
2447
+ * by the adapter). The direct proxy contains the adapter
2448
+ * endpoints.
2449
+ * @param current The Current object for the invocation.
2450
+ * @throws Ice::AdapterAlreadyActiveException Raised if an adapter with the same
2451
+ * id is already active.
2452
+ * @throws Ice::AdapterNotFoundException Raised if the adapter cannot
2453
+ * be found, or if the locator only allows registered adapters to
2454
+ * set their active proxy and the adapter is not registered with
2455
+ * the locator.
2456
+ * @throws Ice::InvalidReplicaGroupIdException Raised if the given
2457
+ * replica group doesn't match the one registered with the
2458
+ * locator registry for this object adapter.
2459
+ */
2460
+ virtual void setReplicatedAdapterDirectProxy_async(const ::Ice::AMD_LocatorRegistry_setReplicatedAdapterDirectProxyPtr& cb, const ::std::string& adapterId, const ::std::string& replicaGroupId, const ObjectPrx& p, const Current& current = emptyCurrent) = 0;
2461
+ /// \cond INTERNAL
2462
+ bool _iceD_setReplicatedAdapterDirectProxy(::IceInternal::Incoming&, const ::Ice::Current&);
2463
+ /// \endcond
2464
+
2465
+ /**
2466
+ * Set the process proxy for a server.
2467
+ * @param cb The AMD callback object for the invocation.
2468
+ * @param id The server id.
2469
+ * @param proxy The process proxy.
2470
+ * @param current The Current object for the invocation.
2471
+ * @throws Ice::ServerNotFoundException Raised if the server cannot
2472
+ * be found.
2473
+ */
2474
+ virtual void setServerProcessProxy_async(const ::Ice::AMD_LocatorRegistry_setServerProcessProxyPtr& cb, const ::std::string& id, const ProcessPrx& proxy, const Current& current = emptyCurrent) = 0;
2475
+ /// \cond INTERNAL
2476
+ bool _iceD_setServerProcessProxy(::IceInternal::Incoming&, const ::Ice::Current&);
2477
+ /// \endcond
2478
+
2479
+ /// \cond INTERNAL
2480
+ virtual bool _iceDispatch(::IceInternal::Incoming&, const Current&);
2481
+ /// \endcond
2482
+
2483
+ protected:
2484
+
2485
+ /// \cond STREAM
2486
+ virtual void _iceWriteImpl(OutputStream*) const;
2487
+ virtual void _iceReadImpl(InputStream*);
2488
+ /// \endcond
2489
+ };
2490
+
2491
+ /// \cond INTERNAL
2492
+ inline bool operator==(const LocatorRegistry& lhs, const LocatorRegistry& rhs)
2493
+ {
2494
+ return static_cast<const Object&>(lhs) == static_cast<const Object&>(rhs);
2495
+ }
2496
+
2497
+ inline bool operator<(const LocatorRegistry& lhs, const LocatorRegistry& rhs)
2498
+ {
2499
+ return static_cast<const Object&>(lhs) < static_cast<const Object&>(rhs);
2500
+ }
2501
+ /// \endcond
2502
+
2503
+ /**
2504
+ * This inferface should be implemented by services implementing the
2505
+ * Ice::Locator interface. It should be advertised through an Ice
2506
+ * object with the identity `Ice/LocatorFinder'. This allows clients
2507
+ * to retrieve the locator proxy with just the endpoint information of
2508
+ * the service.
2509
+ * \headerfile Ice/Ice.h
2510
+ */
2511
+ class ICE_API LocatorFinder : public virtual Object
2512
+ {
2513
+ public:
2514
+
2515
+ typedef LocatorFinderPrx ProxyType;
2516
+ typedef LocatorFinderPtr PointerType;
2517
+
2518
+ virtual ~LocatorFinder();
2519
+
2520
+ /**
2521
+ * Determines whether this object supports an interface with the given Slice type ID.
2522
+ * @param id The fully-scoped Slice type ID.
2523
+ * @param current The Current object for the invocation.
2524
+ * @return True if this object supports the interface, false, otherwise.
2525
+ */
2526
+ virtual bool ice_isA(const ::std::string& id, const Current& current = emptyCurrent) const;
2527
+
2528
+ /**
2529
+ * Obtains a list of the Slice type IDs representing the interfaces supported by this object.
2530
+ * @param current The Current object for the invocation.
2531
+ * @return A list of fully-scoped type IDs.
2532
+ */
2533
+ virtual ::std::vector< ::std::string> ice_ids(const Current& current = emptyCurrent) const;
2534
+
2535
+ /**
2536
+ * Obtains a Slice type ID representing the most-derived interface supported by this object.
2537
+ * @param current The Current object for the invocation.
2538
+ * @return A fully-scoped type ID.
2539
+ */
2540
+ virtual const ::std::string& ice_id(const Current& current = emptyCurrent) const;
2541
+
2542
+ /**
2543
+ * Obtains the Slice type ID corresponding to this class.
2544
+ * @return A fully-scoped type ID.
2545
+ */
2546
+ static const ::std::string& ice_staticId();
2547
+
2548
+ /**
2549
+ * Get the locator proxy implemented by the process hosting this
2550
+ * finder object. The proxy might point to several replicas.
2551
+ * @param current The Current object for the invocation.
2552
+ * @return The locator proxy.
2553
+ */
2554
+ virtual LocatorPrx getLocator(const Current& current = emptyCurrent) = 0;
2555
+ /// \cond INTERNAL
2556
+ bool _iceD_getLocator(::IceInternal::Incoming&, const ::Ice::Current&);
2557
+ /// \endcond
2558
+
2559
+ /// \cond INTERNAL
2560
+ virtual bool _iceDispatch(::IceInternal::Incoming&, const Current&);
2561
+ /// \endcond
2562
+
2563
+ protected:
2564
+
2565
+ /// \cond STREAM
2566
+ virtual void _iceWriteImpl(OutputStream*) const;
2567
+ virtual void _iceReadImpl(InputStream*);
2568
+ /// \endcond
2569
+ };
2570
+
2571
+ /// \cond INTERNAL
2572
+ inline bool operator==(const LocatorFinder& lhs, const LocatorFinder& rhs)
2573
+ {
2574
+ return static_cast<const Object&>(lhs) == static_cast<const Object&>(rhs);
2575
+ }
2576
+
2577
+ inline bool operator<(const LocatorFinder& lhs, const LocatorFinder& rhs)
2578
+ {
2579
+ return static_cast<const Object&>(lhs) < static_cast<const Object&>(rhs);
2580
+ }
2581
+ /// \endcond
2582
+
2583
+ }
2584
+
2585
+ /// \cond STREAM
2586
+ namespace Ice
2587
+ {
2588
+
2589
+ template<>
2590
+ struct StreamableTraits< ::Ice::AdapterNotFoundException>
2591
+ {
2592
+ static const StreamHelperCategory helper = StreamHelperCategoryUserException;
2593
+ };
2594
+
2595
+ template<>
2596
+ struct StreamableTraits< ::Ice::InvalidReplicaGroupIdException>
2597
+ {
2598
+ static const StreamHelperCategory helper = StreamHelperCategoryUserException;
2599
+ };
2600
+
2601
+ template<>
2602
+ struct StreamableTraits< ::Ice::AdapterAlreadyActiveException>
2603
+ {
2604
+ static const StreamHelperCategory helper = StreamHelperCategoryUserException;
2605
+ };
2606
+
2607
+ template<>
2608
+ struct StreamableTraits< ::Ice::ObjectNotFoundException>
2609
+ {
2610
+ static const StreamHelperCategory helper = StreamHelperCategoryUserException;
2611
+ };
2612
+
2613
+ template<>
2614
+ struct StreamableTraits< ::Ice::ServerNotFoundException>
2615
+ {
2616
+ static const StreamHelperCategory helper = StreamHelperCategoryUserException;
2617
+ };
2618
+
2619
+ }
2620
+ /// \endcond
2621
+
2622
+ namespace Ice
2623
+ {
2624
+
2625
+ /**
2626
+ * Type-safe asynchronous callback wrapper class used for calls to
2627
+ * IceProxy::Ice::Locator::begin_findObjectById.
2628
+ * Create a wrapper instance by calling ::Ice::newCallback_Locator_findObjectById.
2629
+ */
2630
+ template<class T>
2631
+ class CallbackNC_Locator_findObjectById : public Callback_Locator_findObjectById_Base, public ::IceInternal::TwowayCallbackNC<T>
2632
+ {
2633
+ public:
2634
+
2635
+ typedef IceUtil::Handle<T> TPtr;
2636
+
2637
+ typedef void (T::*Exception)(const ::Ice::Exception&);
2638
+ typedef void (T::*Sent)(bool);
2639
+ typedef void (T::*Response)(const ObjectPrx&);
2640
+
2641
+ CallbackNC_Locator_findObjectById(const TPtr& obj, Response cb, Exception excb, Sent sentcb)
2642
+ : ::IceInternal::TwowayCallbackNC<T>(obj, cb != 0, excb, sentcb), _response(cb)
2643
+ {
2644
+ }
2645
+
2646
+ /// \cond INTERNAL
2647
+ virtual void completed(const AsyncResultPtr& result) const
2648
+ {
2649
+ LocatorPrx proxy = LocatorPrx::uncheckedCast(result->getProxy());
2650
+ ObjectPrx ret;
2651
+ try
2652
+ {
2653
+ ret = proxy->end_findObjectById(result);
2654
+ }
2655
+ catch(const ::Ice::Exception& ex)
2656
+ {
2657
+ ::IceInternal::CallbackNC<T>::exception(result, ex);
2658
+ return;
2659
+ }
2660
+ if(_response)
2661
+ {
2662
+ (::IceInternal::CallbackNC<T>::_callback.get()->*_response)(ret);
2663
+ }
2664
+ }
2665
+ /// \endcond
2666
+
2667
+ private:
2668
+
2669
+ Response _response;
2670
+ };
2671
+
2672
+ /**
2673
+ * Creates a callback wrapper instance that delegates to your object.
2674
+ * @param instance The callback object.
2675
+ * @param cb The success method of the callback object.
2676
+ * @param excb The exception method of the callback object.
2677
+ * @param sentcb The sent method of the callback object.
2678
+ * @return An object that can be passed to an asynchronous invocation of IceProxy::Ice::Locator::begin_findObjectById.
2679
+ */
2680
+ template<class T> Callback_Locator_findObjectByIdPtr
2681
+ newCallback_Locator_findObjectById(const IceUtil::Handle<T>& instance, void (T::*cb)(const ObjectPrx&), void (T::*excb)(const ::Ice::Exception&), void (T::*sentcb)(bool) = 0)
2682
+ {
2683
+ return new CallbackNC_Locator_findObjectById<T>(instance, cb, excb, sentcb);
2684
+ }
2685
+
2686
+ /**
2687
+ * Creates a callback wrapper instance that delegates to your object.
2688
+ * @param instance The callback object.
2689
+ * @param cb The success method of the callback object.
2690
+ * @param excb The exception method of the callback object.
2691
+ * @param sentcb The sent method of the callback object.
2692
+ * @return An object that can be passed to an asynchronous invocation of IceProxy::Ice::Locator::begin_findObjectById.
2693
+ */
2694
+ template<class T> Callback_Locator_findObjectByIdPtr
2695
+ newCallback_Locator_findObjectById(T* instance, void (T::*cb)(const ObjectPrx&), void (T::*excb)(const ::Ice::Exception&), void (T::*sentcb)(bool) = 0)
2696
+ {
2697
+ return new CallbackNC_Locator_findObjectById<T>(instance, cb, excb, sentcb);
2698
+ }
2699
+
2700
+ /**
2701
+ * Type-safe asynchronous callback wrapper class with cookie support used for calls to
2702
+ * IceProxy::Ice::Locator::begin_findObjectById.
2703
+ * Create a wrapper instance by calling ::Ice::newCallback_Locator_findObjectById.
2704
+ */
2705
+ template<class T, typename CT>
2706
+ class Callback_Locator_findObjectById : public Callback_Locator_findObjectById_Base, public ::IceInternal::TwowayCallback<T, CT>
2707
+ {
2708
+ public:
2709
+
2710
+ typedef IceUtil::Handle<T> TPtr;
2711
+
2712
+ typedef void (T::*Exception)(const ::Ice::Exception& , const CT&);
2713
+ typedef void (T::*Sent)(bool , const CT&);
2714
+ typedef void (T::*Response)(const ObjectPrx&, const CT&);
2715
+
2716
+ Callback_Locator_findObjectById(const TPtr& obj, Response cb, Exception excb, Sent sentcb)
2717
+ : ::IceInternal::TwowayCallback<T, CT>(obj, cb != 0, excb, sentcb), _response(cb)
2718
+ {
2719
+ }
2720
+
2721
+ /// \cond INTERNAL
2722
+ virtual void completed(const AsyncResultPtr& result) const
2723
+ {
2724
+ LocatorPrx proxy = LocatorPrx::uncheckedCast(result->getProxy());
2725
+ ObjectPrx ret;
2726
+ try
2727
+ {
2728
+ ret = proxy->end_findObjectById(result);
2729
+ }
2730
+ catch(const ::Ice::Exception& ex)
2731
+ {
2732
+ ::IceInternal::Callback<T, CT>::exception(result, ex);
2733
+ return;
2734
+ }
2735
+ if(_response)
2736
+ {
2737
+ (::IceInternal::Callback<T, CT>::_callback.get()->*_response)(ret, CT::dynamicCast(result->getCookie()));
2738
+ }
2739
+ }
2740
+ /// \endcond
2741
+
2742
+ private:
2743
+
2744
+ Response _response;
2745
+ };
2746
+
2747
+ /**
2748
+ * Creates a callback wrapper instance that delegates to your object.
2749
+ * Use this overload when your callback methods receive a cookie value.
2750
+ * @param instance The callback object.
2751
+ * @param cb The success method of the callback object.
2752
+ * @param excb The exception method of the callback object.
2753
+ * @param sentcb The sent method of the callback object.
2754
+ * @return An object that can be passed to an asynchronous invocation of IceProxy::Ice::Locator::begin_findObjectById.
2755
+ */
2756
+ template<class T, typename CT> Callback_Locator_findObjectByIdPtr
2757
+ newCallback_Locator_findObjectById(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)
2758
+ {
2759
+ return new Callback_Locator_findObjectById<T, CT>(instance, cb, excb, sentcb);
2760
+ }
2761
+
2762
+ /**
2763
+ * Creates a callback wrapper instance that delegates to your object.
2764
+ * Use this overload when your callback methods receive a cookie value.
2765
+ * @param instance The callback object.
2766
+ * @param cb The success method of the callback object.
2767
+ * @param excb The exception method of the callback object.
2768
+ * @param sentcb The sent method of the callback object.
2769
+ * @return An object that can be passed to an asynchronous invocation of IceProxy::Ice::Locator::begin_findObjectById.
2770
+ */
2771
+ template<class T, typename CT> Callback_Locator_findObjectByIdPtr
2772
+ newCallback_Locator_findObjectById(T* instance, void (T::*cb)(const ObjectPrx&, const CT&), void (T::*excb)(const ::Ice::Exception&, const CT&), void (T::*sentcb)(bool, const CT&) = 0)
2773
+ {
2774
+ return new Callback_Locator_findObjectById<T, CT>(instance, cb, excb, sentcb);
2775
+ }
2776
+
2777
+ /**
2778
+ * Type-safe asynchronous callback wrapper class used for calls to
2779
+ * IceProxy::Ice::Locator::begin_findAdapterById.
2780
+ * Create a wrapper instance by calling ::Ice::newCallback_Locator_findAdapterById.
2781
+ */
2782
+ template<class T>
2783
+ class CallbackNC_Locator_findAdapterById : public Callback_Locator_findAdapterById_Base, public ::IceInternal::TwowayCallbackNC<T>
2784
+ {
2785
+ public:
2786
+
2787
+ typedef IceUtil::Handle<T> TPtr;
2788
+
2789
+ typedef void (T::*Exception)(const ::Ice::Exception&);
2790
+ typedef void (T::*Sent)(bool);
2791
+ typedef void (T::*Response)(const ObjectPrx&);
2792
+
2793
+ CallbackNC_Locator_findAdapterById(const TPtr& obj, Response cb, Exception excb, Sent sentcb)
2794
+ : ::IceInternal::TwowayCallbackNC<T>(obj, cb != 0, excb, sentcb), _response(cb)
2795
+ {
2796
+ }
2797
+
2798
+ /// \cond INTERNAL
2799
+ virtual void completed(const AsyncResultPtr& result) const
2800
+ {
2801
+ LocatorPrx proxy = LocatorPrx::uncheckedCast(result->getProxy());
2802
+ ObjectPrx ret;
2803
+ try
2804
+ {
2805
+ ret = proxy->end_findAdapterById(result);
2806
+ }
2807
+ catch(const ::Ice::Exception& ex)
2808
+ {
2809
+ ::IceInternal::CallbackNC<T>::exception(result, ex);
2810
+ return;
2811
+ }
2812
+ if(_response)
2813
+ {
2814
+ (::IceInternal::CallbackNC<T>::_callback.get()->*_response)(ret);
2815
+ }
2816
+ }
2817
+ /// \endcond
2818
+
2819
+ private:
2820
+
2821
+ Response _response;
2822
+ };
2823
+
2824
+ /**
2825
+ * Creates a callback wrapper instance that delegates to your object.
2826
+ * @param instance The callback object.
2827
+ * @param cb The success method of the callback object.
2828
+ * @param excb The exception method of the callback object.
2829
+ * @param sentcb The sent method of the callback object.
2830
+ * @return An object that can be passed to an asynchronous invocation of IceProxy::Ice::Locator::begin_findAdapterById.
2831
+ */
2832
+ template<class T> Callback_Locator_findAdapterByIdPtr
2833
+ newCallback_Locator_findAdapterById(const IceUtil::Handle<T>& instance, void (T::*cb)(const ObjectPrx&), void (T::*excb)(const ::Ice::Exception&), void (T::*sentcb)(bool) = 0)
2834
+ {
2835
+ return new CallbackNC_Locator_findAdapterById<T>(instance, cb, excb, sentcb);
2836
+ }
2837
+
2838
+ /**
2839
+ * Creates a callback wrapper instance that delegates to your object.
2840
+ * @param instance The callback object.
2841
+ * @param cb The success method of the callback object.
2842
+ * @param excb The exception method of the callback object.
2843
+ * @param sentcb The sent method of the callback object.
2844
+ * @return An object that can be passed to an asynchronous invocation of IceProxy::Ice::Locator::begin_findAdapterById.
2845
+ */
2846
+ template<class T> Callback_Locator_findAdapterByIdPtr
2847
+ newCallback_Locator_findAdapterById(T* instance, void (T::*cb)(const ObjectPrx&), void (T::*excb)(const ::Ice::Exception&), void (T::*sentcb)(bool) = 0)
2848
+ {
2849
+ return new CallbackNC_Locator_findAdapterById<T>(instance, cb, excb, sentcb);
2850
+ }
2851
+
2852
+ /**
2853
+ * Type-safe asynchronous callback wrapper class with cookie support used for calls to
2854
+ * IceProxy::Ice::Locator::begin_findAdapterById.
2855
+ * Create a wrapper instance by calling ::Ice::newCallback_Locator_findAdapterById.
2856
+ */
2857
+ template<class T, typename CT>
2858
+ class Callback_Locator_findAdapterById : public Callback_Locator_findAdapterById_Base, public ::IceInternal::TwowayCallback<T, CT>
2859
+ {
2860
+ public:
2861
+
2862
+ typedef IceUtil::Handle<T> TPtr;
2863
+
2864
+ typedef void (T::*Exception)(const ::Ice::Exception& , const CT&);
2865
+ typedef void (T::*Sent)(bool , const CT&);
2866
+ typedef void (T::*Response)(const ObjectPrx&, const CT&);
2867
+
2868
+ Callback_Locator_findAdapterById(const TPtr& obj, Response cb, Exception excb, Sent sentcb)
2869
+ : ::IceInternal::TwowayCallback<T, CT>(obj, cb != 0, excb, sentcb), _response(cb)
2870
+ {
2871
+ }
2872
+
2873
+ /// \cond INTERNAL
2874
+ virtual void completed(const AsyncResultPtr& result) const
2875
+ {
2876
+ LocatorPrx proxy = LocatorPrx::uncheckedCast(result->getProxy());
2877
+ ObjectPrx ret;
2878
+ try
2879
+ {
2880
+ ret = proxy->end_findAdapterById(result);
2881
+ }
2882
+ catch(const ::Ice::Exception& ex)
2883
+ {
2884
+ ::IceInternal::Callback<T, CT>::exception(result, ex);
2885
+ return;
2886
+ }
2887
+ if(_response)
2888
+ {
2889
+ (::IceInternal::Callback<T, CT>::_callback.get()->*_response)(ret, CT::dynamicCast(result->getCookie()));
2890
+ }
2891
+ }
2892
+ /// \endcond
2893
+
2894
+ private:
2895
+
2896
+ Response _response;
2897
+ };
2898
+
2899
+ /**
2900
+ * Creates a callback wrapper instance that delegates to your object.
2901
+ * Use this overload when your callback methods receive a cookie value.
2902
+ * @param instance The callback object.
2903
+ * @param cb The success method of the callback object.
2904
+ * @param excb The exception method of the callback object.
2905
+ * @param sentcb The sent method of the callback object.
2906
+ * @return An object that can be passed to an asynchronous invocation of IceProxy::Ice::Locator::begin_findAdapterById.
2907
+ */
2908
+ template<class T, typename CT> Callback_Locator_findAdapterByIdPtr
2909
+ newCallback_Locator_findAdapterById(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)
2910
+ {
2911
+ return new Callback_Locator_findAdapterById<T, CT>(instance, cb, excb, sentcb);
2912
+ }
2913
+
2914
+ /**
2915
+ * Creates a callback wrapper instance that delegates to your object.
2916
+ * Use this overload when your callback methods receive a cookie value.
2917
+ * @param instance The callback object.
2918
+ * @param cb The success method of the callback object.
2919
+ * @param excb The exception method of the callback object.
2920
+ * @param sentcb The sent method of the callback object.
2921
+ * @return An object that can be passed to an asynchronous invocation of IceProxy::Ice::Locator::begin_findAdapterById.
2922
+ */
2923
+ template<class T, typename CT> Callback_Locator_findAdapterByIdPtr
2924
+ newCallback_Locator_findAdapterById(T* instance, void (T::*cb)(const ObjectPrx&, const CT&), void (T::*excb)(const ::Ice::Exception&, const CT&), void (T::*sentcb)(bool, const CT&) = 0)
2925
+ {
2926
+ return new Callback_Locator_findAdapterById<T, CT>(instance, cb, excb, sentcb);
2927
+ }
2928
+
2929
+ /**
2930
+ * Type-safe asynchronous callback wrapper class used for calls to
2931
+ * IceProxy::Ice::Locator::begin_getRegistry.
2932
+ * Create a wrapper instance by calling ::Ice::newCallback_Locator_getRegistry.
2933
+ */
2934
+ template<class T>
2935
+ class CallbackNC_Locator_getRegistry : public Callback_Locator_getRegistry_Base, public ::IceInternal::TwowayCallbackNC<T>
2936
+ {
2937
+ public:
2938
+
2939
+ typedef IceUtil::Handle<T> TPtr;
2940
+
2941
+ typedef void (T::*Exception)(const ::Ice::Exception&);
2942
+ typedef void (T::*Sent)(bool);
2943
+ typedef void (T::*Response)(const LocatorRegistryPrx&);
2944
+
2945
+ CallbackNC_Locator_getRegistry(const TPtr& obj, Response cb, Exception excb, Sent sentcb)
2946
+ : ::IceInternal::TwowayCallbackNC<T>(obj, cb != 0, excb, sentcb), _response(cb)
2947
+ {
2948
+ }
2949
+
2950
+ /// \cond INTERNAL
2951
+ virtual void completed(const AsyncResultPtr& result) const
2952
+ {
2953
+ LocatorPrx proxy = LocatorPrx::uncheckedCast(result->getProxy());
2954
+ LocatorRegistryPrx ret;
2955
+ try
2956
+ {
2957
+ ret = proxy->end_getRegistry(result);
2958
+ }
2959
+ catch(const ::Ice::Exception& ex)
2960
+ {
2961
+ ::IceInternal::CallbackNC<T>::exception(result, ex);
2962
+ return;
2963
+ }
2964
+ if(_response)
2965
+ {
2966
+ (::IceInternal::CallbackNC<T>::_callback.get()->*_response)(ret);
2967
+ }
2968
+ }
2969
+ /// \endcond
2970
+
2971
+ private:
2972
+
2973
+ Response _response;
2974
+ };
2975
+
2976
+ /**
2977
+ * Creates a callback wrapper instance that delegates to your object.
2978
+ * @param instance The callback object.
2979
+ * @param cb The success method of the callback object.
2980
+ * @param excb The exception method of the callback object.
2981
+ * @param sentcb The sent method of the callback object.
2982
+ * @return An object that can be passed to an asynchronous invocation of IceProxy::Ice::Locator::begin_getRegistry.
2983
+ */
2984
+ template<class T> Callback_Locator_getRegistryPtr
2985
+ newCallback_Locator_getRegistry(const IceUtil::Handle<T>& instance, void (T::*cb)(const LocatorRegistryPrx&), void (T::*excb)(const ::Ice::Exception&), void (T::*sentcb)(bool) = 0)
2986
+ {
2987
+ return new CallbackNC_Locator_getRegistry<T>(instance, cb, excb, sentcb);
2988
+ }
2989
+
2990
+ /**
2991
+ * Creates a callback wrapper instance that delegates to your object.
2992
+ * @param instance The callback object.
2993
+ * @param cb The success method of the callback object.
2994
+ * @param excb The exception method of the callback object.
2995
+ * @param sentcb The sent method of the callback object.
2996
+ * @return An object that can be passed to an asynchronous invocation of IceProxy::Ice::Locator::begin_getRegistry.
2997
+ */
2998
+ template<class T> Callback_Locator_getRegistryPtr
2999
+ newCallback_Locator_getRegistry(T* instance, void (T::*cb)(const LocatorRegistryPrx&), void (T::*excb)(const ::Ice::Exception&), void (T::*sentcb)(bool) = 0)
3000
+ {
3001
+ return new CallbackNC_Locator_getRegistry<T>(instance, cb, excb, sentcb);
3002
+ }
3003
+
3004
+ /**
3005
+ * Type-safe asynchronous callback wrapper class with cookie support used for calls to
3006
+ * IceProxy::Ice::Locator::begin_getRegistry.
3007
+ * Create a wrapper instance by calling ::Ice::newCallback_Locator_getRegistry.
3008
+ */
3009
+ template<class T, typename CT>
3010
+ class Callback_Locator_getRegistry : public Callback_Locator_getRegistry_Base, public ::IceInternal::TwowayCallback<T, CT>
3011
+ {
3012
+ public:
3013
+
3014
+ typedef IceUtil::Handle<T> TPtr;
3015
+
3016
+ typedef void (T::*Exception)(const ::Ice::Exception& , const CT&);
3017
+ typedef void (T::*Sent)(bool , const CT&);
3018
+ typedef void (T::*Response)(const LocatorRegistryPrx&, const CT&);
3019
+
3020
+ Callback_Locator_getRegistry(const TPtr& obj, Response cb, Exception excb, Sent sentcb)
3021
+ : ::IceInternal::TwowayCallback<T, CT>(obj, cb != 0, excb, sentcb), _response(cb)
3022
+ {
3023
+ }
3024
+
3025
+ /// \cond INTERNAL
3026
+ virtual void completed(const AsyncResultPtr& result) const
3027
+ {
3028
+ LocatorPrx proxy = LocatorPrx::uncheckedCast(result->getProxy());
3029
+ LocatorRegistryPrx ret;
3030
+ try
3031
+ {
3032
+ ret = proxy->end_getRegistry(result);
3033
+ }
3034
+ catch(const ::Ice::Exception& ex)
3035
+ {
3036
+ ::IceInternal::Callback<T, CT>::exception(result, ex);
3037
+ return;
3038
+ }
3039
+ if(_response)
3040
+ {
3041
+ (::IceInternal::Callback<T, CT>::_callback.get()->*_response)(ret, CT::dynamicCast(result->getCookie()));
3042
+ }
3043
+ }
3044
+ /// \endcond
3045
+
3046
+ private:
3047
+
3048
+ Response _response;
3049
+ };
3050
+
3051
+ /**
3052
+ * Creates a callback wrapper instance that delegates to your object.
3053
+ * Use this overload when your callback methods receive a cookie value.
3054
+ * @param instance The callback object.
3055
+ * @param cb The success method of the callback object.
3056
+ * @param excb The exception method of the callback object.
3057
+ * @param sentcb The sent method of the callback object.
3058
+ * @return An object that can be passed to an asynchronous invocation of IceProxy::Ice::Locator::begin_getRegistry.
3059
+ */
3060
+ template<class T, typename CT> Callback_Locator_getRegistryPtr
3061
+ newCallback_Locator_getRegistry(const IceUtil::Handle<T>& instance, void (T::*cb)(const LocatorRegistryPrx&, const CT&), void (T::*excb)(const ::Ice::Exception&, const CT&), void (T::*sentcb)(bool, const CT&) = 0)
3062
+ {
3063
+ return new Callback_Locator_getRegistry<T, CT>(instance, cb, excb, sentcb);
3064
+ }
3065
+
3066
+ /**
3067
+ * Creates a callback wrapper instance that delegates to your object.
3068
+ * Use this overload when your callback methods receive a cookie value.
3069
+ * @param instance The callback object.
3070
+ * @param cb The success method of the callback object.
3071
+ * @param excb The exception method of the callback object.
3072
+ * @param sentcb The sent method of the callback object.
3073
+ * @return An object that can be passed to an asynchronous invocation of IceProxy::Ice::Locator::begin_getRegistry.
3074
+ */
3075
+ template<class T, typename CT> Callback_Locator_getRegistryPtr
3076
+ newCallback_Locator_getRegistry(T* instance, void (T::*cb)(const LocatorRegistryPrx&, const CT&), void (T::*excb)(const ::Ice::Exception&, const CT&), void (T::*sentcb)(bool, const CT&) = 0)
3077
+ {
3078
+ return new Callback_Locator_getRegistry<T, CT>(instance, cb, excb, sentcb);
3079
+ }
3080
+
3081
+ /**
3082
+ * Type-safe asynchronous callback wrapper class used for calls to
3083
+ * IceProxy::Ice::LocatorRegistry::begin_setAdapterDirectProxy.
3084
+ * Create a wrapper instance by calling ::Ice::newCallback_LocatorRegistry_setAdapterDirectProxy.
3085
+ */
3086
+ template<class T>
3087
+ class CallbackNC_LocatorRegistry_setAdapterDirectProxy : public Callback_LocatorRegistry_setAdapterDirectProxy_Base, public ::IceInternal::TwowayCallbackNC<T>
3088
+ {
3089
+ public:
3090
+
3091
+ typedef IceUtil::Handle<T> TPtr;
3092
+
3093
+ typedef void (T::*Exception)(const ::Ice::Exception&);
3094
+ typedef void (T::*Sent)(bool);
3095
+ typedef void (T::*Response)();
3096
+
3097
+ CallbackNC_LocatorRegistry_setAdapterDirectProxy(const TPtr& obj, Response cb, Exception excb, Sent sentcb)
3098
+ : ::IceInternal::TwowayCallbackNC<T>(obj, cb != 0, excb, sentcb), _response(cb)
3099
+ {
3100
+ }
3101
+
3102
+ /// \cond INTERNAL
3103
+ virtual void completed(const AsyncResultPtr& result) const
3104
+ {
3105
+ LocatorRegistryPrx proxy = LocatorRegistryPrx::uncheckedCast(result->getProxy());
3106
+ try
3107
+ {
3108
+ proxy->end_setAdapterDirectProxy(result);
3109
+ }
3110
+ catch(const ::Ice::Exception& ex)
3111
+ {
3112
+ ::IceInternal::CallbackNC<T>::exception(result, ex);
3113
+ return;
3114
+ }
3115
+ if(_response)
3116
+ {
3117
+ (::IceInternal::CallbackNC<T>::_callback.get()->*_response)();
3118
+ }
3119
+ }
3120
+ /// \endcond
3121
+
3122
+ private:
3123
+
3124
+ Response _response;
3125
+ };
3126
+
3127
+ /**
3128
+ * Creates a callback wrapper instance that delegates to your object.
3129
+ * @param instance The callback object.
3130
+ * @param cb The success method of the callback object.
3131
+ * @param excb The exception method of the callback object.
3132
+ * @param sentcb The sent method of the callback object.
3133
+ * @return An object that can be passed to an asynchronous invocation of IceProxy::Ice::LocatorRegistry::begin_setAdapterDirectProxy.
3134
+ */
3135
+ template<class T> Callback_LocatorRegistry_setAdapterDirectProxyPtr
3136
+ newCallback_LocatorRegistry_setAdapterDirectProxy(const IceUtil::Handle<T>& instance, void (T::*cb)(), void (T::*excb)(const ::Ice::Exception&), void (T::*sentcb)(bool) = 0)
3137
+ {
3138
+ return new CallbackNC_LocatorRegistry_setAdapterDirectProxy<T>(instance, cb, excb, sentcb);
3139
+ }
3140
+
3141
+ /**
3142
+ * Creates a callback wrapper instance that delegates to your object.
3143
+ * @param instance The callback object.
3144
+ * @param excb The exception method of the callback object.
3145
+ * @param sentcb The sent method of the callback object.
3146
+ * @return An object that can be passed to an asynchronous invocation of IceProxy::Ice::LocatorRegistry::begin_setAdapterDirectProxy.
3147
+ */
3148
+ template<class T> Callback_LocatorRegistry_setAdapterDirectProxyPtr
3149
+ newCallback_LocatorRegistry_setAdapterDirectProxy(const IceUtil::Handle<T>& instance, void (T::*excb)(const ::Ice::Exception&), void (T::*sentcb)(bool) = 0)
3150
+ {
3151
+ return new CallbackNC_LocatorRegistry_setAdapterDirectProxy<T>(instance, 0, excb, sentcb);
3152
+ }
3153
+
3154
+ /**
3155
+ * Creates a callback wrapper instance that delegates to your object.
3156
+ * @param instance The callback object.
3157
+ * @param cb The success method of the callback object.
3158
+ * @param excb The exception method of the callback object.
3159
+ * @param sentcb The sent method of the callback object.
3160
+ * @return An object that can be passed to an asynchronous invocation of IceProxy::Ice::LocatorRegistry::begin_setAdapterDirectProxy.
3161
+ */
3162
+ template<class T> Callback_LocatorRegistry_setAdapterDirectProxyPtr
3163
+ newCallback_LocatorRegistry_setAdapterDirectProxy(T* instance, void (T::*cb)(), void (T::*excb)(const ::Ice::Exception&), void (T::*sentcb)(bool) = 0)
3164
+ {
3165
+ return new CallbackNC_LocatorRegistry_setAdapterDirectProxy<T>(instance, cb, excb, sentcb);
3166
+ }
3167
+
3168
+ /**
3169
+ * Creates a callback wrapper instance that delegates to your object.
3170
+ * @param instance The callback object.
3171
+ * @param excb The exception method of the callback object.
3172
+ * @param sentcb The sent method of the callback object.
3173
+ * @return An object that can be passed to an asynchronous invocation of IceProxy::Ice::LocatorRegistry::begin_setAdapterDirectProxy.
3174
+ */
3175
+ template<class T> Callback_LocatorRegistry_setAdapterDirectProxyPtr
3176
+ newCallback_LocatorRegistry_setAdapterDirectProxy(T* instance, void (T::*excb)(const ::Ice::Exception&), void (T::*sentcb)(bool) = 0)
3177
+ {
3178
+ return new CallbackNC_LocatorRegistry_setAdapterDirectProxy<T>(instance, 0, excb, sentcb);
3179
+ }
3180
+
3181
+ /**
3182
+ * Type-safe asynchronous callback wrapper class with cookie support used for calls to
3183
+ * IceProxy::Ice::LocatorRegistry::begin_setAdapterDirectProxy.
3184
+ * Create a wrapper instance by calling ::Ice::newCallback_LocatorRegistry_setAdapterDirectProxy.
3185
+ */
3186
+ template<class T, typename CT>
3187
+ class Callback_LocatorRegistry_setAdapterDirectProxy : public Callback_LocatorRegistry_setAdapterDirectProxy_Base, public ::IceInternal::TwowayCallback<T, CT>
3188
+ {
3189
+ public:
3190
+
3191
+ typedef IceUtil::Handle<T> TPtr;
3192
+
3193
+ typedef void (T::*Exception)(const ::Ice::Exception& , const CT&);
3194
+ typedef void (T::*Sent)(bool , const CT&);
3195
+ typedef void (T::*Response)(const CT&);
3196
+
3197
+ Callback_LocatorRegistry_setAdapterDirectProxy(const TPtr& obj, Response cb, Exception excb, Sent sentcb)
3198
+ : ::IceInternal::TwowayCallback<T, CT>(obj, cb != 0, excb, sentcb), _response(cb)
3199
+ {
3200
+ }
3201
+
3202
+ /// \cond INTERNAL
3203
+ virtual void completed(const AsyncResultPtr& result) const
3204
+ {
3205
+ LocatorRegistryPrx proxy = LocatorRegistryPrx::uncheckedCast(result->getProxy());
3206
+ try
3207
+ {
3208
+ proxy->end_setAdapterDirectProxy(result);
3209
+ }
3210
+ catch(const ::Ice::Exception& ex)
3211
+ {
3212
+ ::IceInternal::Callback<T, CT>::exception(result, ex);
3213
+ return;
3214
+ }
3215
+ if(_response)
3216
+ {
3217
+ (::IceInternal::Callback<T, CT>::_callback.get()->*_response)(CT::dynamicCast(result->getCookie()));
3218
+ }
3219
+ }
3220
+ /// \endcond
3221
+
3222
+ private:
3223
+
3224
+ Response _response;
3225
+ };
3226
+
3227
+ /**
3228
+ * Creates a callback wrapper instance that delegates to your object.
3229
+ * Use this overload when your callback methods receive a cookie value.
3230
+ * @param instance The callback object.
3231
+ * @param cb The success method of the callback object.
3232
+ * @param excb The exception method of the callback object.
3233
+ * @param sentcb The sent method of the callback object.
3234
+ * @return An object that can be passed to an asynchronous invocation of IceProxy::Ice::LocatorRegistry::begin_setAdapterDirectProxy.
3235
+ */
3236
+ template<class T, typename CT> Callback_LocatorRegistry_setAdapterDirectProxyPtr
3237
+ newCallback_LocatorRegistry_setAdapterDirectProxy(const IceUtil::Handle<T>& instance, void (T::*cb)(const CT&), void (T::*excb)(const ::Ice::Exception&, const CT&), void (T::*sentcb)(bool, const CT&) = 0)
3238
+ {
3239
+ return new Callback_LocatorRegistry_setAdapterDirectProxy<T, CT>(instance, cb, excb, sentcb);
3240
+ }
3241
+
3242
+ /**
3243
+ * Creates a callback wrapper instance that delegates to your object.
3244
+ * Use this overload when your callback methods receive a cookie value.
3245
+ * @param instance The callback object.
3246
+ * @param excb The exception method of the callback object.
3247
+ * @param sentcb The sent method of the callback object.
3248
+ * @return An object that can be passed to an asynchronous invocation of IceProxy::Ice::LocatorRegistry::begin_setAdapterDirectProxy.
3249
+ */
3250
+ template<class T, typename CT> Callback_LocatorRegistry_setAdapterDirectProxyPtr
3251
+ newCallback_LocatorRegistry_setAdapterDirectProxy(const IceUtil::Handle<T>& instance, void (T::*excb)(const ::Ice::Exception&, const CT&), void (T::*sentcb)(bool, const CT&) = 0)
3252
+ {
3253
+ return new Callback_LocatorRegistry_setAdapterDirectProxy<T, CT>(instance, 0, excb, sentcb);
3254
+ }
3255
+
3256
+ /**
3257
+ * Creates a callback wrapper instance that delegates to your object.
3258
+ * Use this overload when your callback methods receive a cookie value.
3259
+ * @param instance The callback object.
3260
+ * @param cb The success method of the callback object.
3261
+ * @param excb The exception method of the callback object.
3262
+ * @param sentcb The sent method of the callback object.
3263
+ * @return An object that can be passed to an asynchronous invocation of IceProxy::Ice::LocatorRegistry::begin_setAdapterDirectProxy.
3264
+ */
3265
+ template<class T, typename CT> Callback_LocatorRegistry_setAdapterDirectProxyPtr
3266
+ newCallback_LocatorRegistry_setAdapterDirectProxy(T* instance, void (T::*cb)(const CT&), void (T::*excb)(const ::Ice::Exception&, const CT&), void (T::*sentcb)(bool, const CT&) = 0)
3267
+ {
3268
+ return new Callback_LocatorRegistry_setAdapterDirectProxy<T, CT>(instance, cb, excb, sentcb);
3269
+ }
3270
+
3271
+ /**
3272
+ * Creates a callback wrapper instance that delegates to your object.
3273
+ * Use this overload when your callback methods receive a cookie value.
3274
+ * @param instance The callback object.
3275
+ * @param excb The exception method of the callback object.
3276
+ * @param sentcb The sent method of the callback object.
3277
+ * @return An object that can be passed to an asynchronous invocation of IceProxy::Ice::LocatorRegistry::begin_setAdapterDirectProxy.
3278
+ */
3279
+ template<class T, typename CT> Callback_LocatorRegistry_setAdapterDirectProxyPtr
3280
+ newCallback_LocatorRegistry_setAdapterDirectProxy(T* instance, void (T::*excb)(const ::Ice::Exception&, const CT&), void (T::*sentcb)(bool, const CT&) = 0)
3281
+ {
3282
+ return new Callback_LocatorRegistry_setAdapterDirectProxy<T, CT>(instance, 0, excb, sentcb);
3283
+ }
3284
+
3285
+ /**
3286
+ * Type-safe asynchronous callback wrapper class used for calls to
3287
+ * IceProxy::Ice::LocatorRegistry::begin_setReplicatedAdapterDirectProxy.
3288
+ * Create a wrapper instance by calling ::Ice::newCallback_LocatorRegistry_setReplicatedAdapterDirectProxy.
3289
+ */
3290
+ template<class T>
3291
+ class CallbackNC_LocatorRegistry_setReplicatedAdapterDirectProxy : public Callback_LocatorRegistry_setReplicatedAdapterDirectProxy_Base, public ::IceInternal::TwowayCallbackNC<T>
3292
+ {
3293
+ public:
3294
+
3295
+ typedef IceUtil::Handle<T> TPtr;
3296
+
3297
+ typedef void (T::*Exception)(const ::Ice::Exception&);
3298
+ typedef void (T::*Sent)(bool);
3299
+ typedef void (T::*Response)();
3300
+
3301
+ CallbackNC_LocatorRegistry_setReplicatedAdapterDirectProxy(const TPtr& obj, Response cb, Exception excb, Sent sentcb)
3302
+ : ::IceInternal::TwowayCallbackNC<T>(obj, cb != 0, excb, sentcb), _response(cb)
3303
+ {
3304
+ }
3305
+
3306
+ /// \cond INTERNAL
3307
+ virtual void completed(const AsyncResultPtr& result) const
3308
+ {
3309
+ LocatorRegistryPrx proxy = LocatorRegistryPrx::uncheckedCast(result->getProxy());
3310
+ try
3311
+ {
3312
+ proxy->end_setReplicatedAdapterDirectProxy(result);
3313
+ }
3314
+ catch(const ::Ice::Exception& ex)
3315
+ {
3316
+ ::IceInternal::CallbackNC<T>::exception(result, ex);
3317
+ return;
3318
+ }
3319
+ if(_response)
3320
+ {
3321
+ (::IceInternal::CallbackNC<T>::_callback.get()->*_response)();
3322
+ }
3323
+ }
3324
+ /// \endcond
3325
+
3326
+ private:
3327
+
3328
+ Response _response;
3329
+ };
3330
+
3331
+ /**
3332
+ * Creates a callback wrapper instance that delegates to your object.
3333
+ * @param instance The callback object.
3334
+ * @param cb The success method of the callback object.
3335
+ * @param excb The exception method of the callback object.
3336
+ * @param sentcb The sent method of the callback object.
3337
+ * @return An object that can be passed to an asynchronous invocation of IceProxy::Ice::LocatorRegistry::begin_setReplicatedAdapterDirectProxy.
3338
+ */
3339
+ template<class T> Callback_LocatorRegistry_setReplicatedAdapterDirectProxyPtr
3340
+ newCallback_LocatorRegistry_setReplicatedAdapterDirectProxy(const IceUtil::Handle<T>& instance, void (T::*cb)(), void (T::*excb)(const ::Ice::Exception&), void (T::*sentcb)(bool) = 0)
3341
+ {
3342
+ return new CallbackNC_LocatorRegistry_setReplicatedAdapterDirectProxy<T>(instance, cb, excb, sentcb);
3343
+ }
3344
+
3345
+ /**
3346
+ * Creates a callback wrapper instance that delegates to your object.
3347
+ * @param instance The callback object.
3348
+ * @param excb The exception method of the callback object.
3349
+ * @param sentcb The sent method of the callback object.
3350
+ * @return An object that can be passed to an asynchronous invocation of IceProxy::Ice::LocatorRegistry::begin_setReplicatedAdapterDirectProxy.
3351
+ */
3352
+ template<class T> Callback_LocatorRegistry_setReplicatedAdapterDirectProxyPtr
3353
+ newCallback_LocatorRegistry_setReplicatedAdapterDirectProxy(const IceUtil::Handle<T>& instance, void (T::*excb)(const ::Ice::Exception&), void (T::*sentcb)(bool) = 0)
3354
+ {
3355
+ return new CallbackNC_LocatorRegistry_setReplicatedAdapterDirectProxy<T>(instance, 0, excb, sentcb);
3356
+ }
3357
+
3358
+ /**
3359
+ * Creates a callback wrapper instance that delegates to your object.
3360
+ * @param instance The callback object.
3361
+ * @param cb The success method of the callback object.
3362
+ * @param excb The exception method of the callback object.
3363
+ * @param sentcb The sent method of the callback object.
3364
+ * @return An object that can be passed to an asynchronous invocation of IceProxy::Ice::LocatorRegistry::begin_setReplicatedAdapterDirectProxy.
3365
+ */
3366
+ template<class T> Callback_LocatorRegistry_setReplicatedAdapterDirectProxyPtr
3367
+ newCallback_LocatorRegistry_setReplicatedAdapterDirectProxy(T* instance, void (T::*cb)(), void (T::*excb)(const ::Ice::Exception&), void (T::*sentcb)(bool) = 0)
3368
+ {
3369
+ return new CallbackNC_LocatorRegistry_setReplicatedAdapterDirectProxy<T>(instance, cb, excb, sentcb);
3370
+ }
3371
+
3372
+ /**
3373
+ * Creates a callback wrapper instance that delegates to your object.
3374
+ * @param instance The callback object.
3375
+ * @param excb The exception method of the callback object.
3376
+ * @param sentcb The sent method of the callback object.
3377
+ * @return An object that can be passed to an asynchronous invocation of IceProxy::Ice::LocatorRegistry::begin_setReplicatedAdapterDirectProxy.
3378
+ */
3379
+ template<class T> Callback_LocatorRegistry_setReplicatedAdapterDirectProxyPtr
3380
+ newCallback_LocatorRegistry_setReplicatedAdapterDirectProxy(T* instance, void (T::*excb)(const ::Ice::Exception&), void (T::*sentcb)(bool) = 0)
3381
+ {
3382
+ return new CallbackNC_LocatorRegistry_setReplicatedAdapterDirectProxy<T>(instance, 0, excb, sentcb);
3383
+ }
3384
+
3385
+ /**
3386
+ * Type-safe asynchronous callback wrapper class with cookie support used for calls to
3387
+ * IceProxy::Ice::LocatorRegistry::begin_setReplicatedAdapterDirectProxy.
3388
+ * Create a wrapper instance by calling ::Ice::newCallback_LocatorRegistry_setReplicatedAdapterDirectProxy.
3389
+ */
3390
+ template<class T, typename CT>
3391
+ class Callback_LocatorRegistry_setReplicatedAdapterDirectProxy : public Callback_LocatorRegistry_setReplicatedAdapterDirectProxy_Base, public ::IceInternal::TwowayCallback<T, CT>
3392
+ {
3393
+ public:
3394
+
3395
+ typedef IceUtil::Handle<T> TPtr;
3396
+
3397
+ typedef void (T::*Exception)(const ::Ice::Exception& , const CT&);
3398
+ typedef void (T::*Sent)(bool , const CT&);
3399
+ typedef void (T::*Response)(const CT&);
3400
+
3401
+ Callback_LocatorRegistry_setReplicatedAdapterDirectProxy(const TPtr& obj, Response cb, Exception excb, Sent sentcb)
3402
+ : ::IceInternal::TwowayCallback<T, CT>(obj, cb != 0, excb, sentcb), _response(cb)
3403
+ {
3404
+ }
3405
+
3406
+ /// \cond INTERNAL
3407
+ virtual void completed(const AsyncResultPtr& result) const
3408
+ {
3409
+ LocatorRegistryPrx proxy = LocatorRegistryPrx::uncheckedCast(result->getProxy());
3410
+ try
3411
+ {
3412
+ proxy->end_setReplicatedAdapterDirectProxy(result);
3413
+ }
3414
+ catch(const ::Ice::Exception& ex)
3415
+ {
3416
+ ::IceInternal::Callback<T, CT>::exception(result, ex);
3417
+ return;
3418
+ }
3419
+ if(_response)
3420
+ {
3421
+ (::IceInternal::Callback<T, CT>::_callback.get()->*_response)(CT::dynamicCast(result->getCookie()));
3422
+ }
3423
+ }
3424
+ /// \endcond
3425
+
3426
+ private:
3427
+
3428
+ Response _response;
3429
+ };
3430
+
3431
+ /**
3432
+ * Creates a callback wrapper instance that delegates to your object.
3433
+ * Use this overload when your callback methods receive a cookie value.
3434
+ * @param instance The callback object.
3435
+ * @param cb The success method of the callback object.
3436
+ * @param excb The exception method of the callback object.
3437
+ * @param sentcb The sent method of the callback object.
3438
+ * @return An object that can be passed to an asynchronous invocation of IceProxy::Ice::LocatorRegistry::begin_setReplicatedAdapterDirectProxy.
3439
+ */
3440
+ template<class T, typename CT> Callback_LocatorRegistry_setReplicatedAdapterDirectProxyPtr
3441
+ newCallback_LocatorRegistry_setReplicatedAdapterDirectProxy(const IceUtil::Handle<T>& instance, void (T::*cb)(const CT&), void (T::*excb)(const ::Ice::Exception&, const CT&), void (T::*sentcb)(bool, const CT&) = 0)
3442
+ {
3443
+ return new Callback_LocatorRegistry_setReplicatedAdapterDirectProxy<T, CT>(instance, cb, excb, sentcb);
3444
+ }
3445
+
3446
+ /**
3447
+ * Creates a callback wrapper instance that delegates to your object.
3448
+ * Use this overload when your callback methods receive a cookie value.
3449
+ * @param instance The callback object.
3450
+ * @param excb The exception method of the callback object.
3451
+ * @param sentcb The sent method of the callback object.
3452
+ * @return An object that can be passed to an asynchronous invocation of IceProxy::Ice::LocatorRegistry::begin_setReplicatedAdapterDirectProxy.
3453
+ */
3454
+ template<class T, typename CT> Callback_LocatorRegistry_setReplicatedAdapterDirectProxyPtr
3455
+ newCallback_LocatorRegistry_setReplicatedAdapterDirectProxy(const IceUtil::Handle<T>& instance, void (T::*excb)(const ::Ice::Exception&, const CT&), void (T::*sentcb)(bool, const CT&) = 0)
3456
+ {
3457
+ return new Callback_LocatorRegistry_setReplicatedAdapterDirectProxy<T, CT>(instance, 0, excb, sentcb);
3458
+ }
3459
+
3460
+ /**
3461
+ * Creates a callback wrapper instance that delegates to your object.
3462
+ * Use this overload when your callback methods receive a cookie value.
3463
+ * @param instance The callback object.
3464
+ * @param cb The success method of the callback object.
3465
+ * @param excb The exception method of the callback object.
3466
+ * @param sentcb The sent method of the callback object.
3467
+ * @return An object that can be passed to an asynchronous invocation of IceProxy::Ice::LocatorRegistry::begin_setReplicatedAdapterDirectProxy.
3468
+ */
3469
+ template<class T, typename CT> Callback_LocatorRegistry_setReplicatedAdapterDirectProxyPtr
3470
+ newCallback_LocatorRegistry_setReplicatedAdapterDirectProxy(T* instance, void (T::*cb)(const CT&), void (T::*excb)(const ::Ice::Exception&, const CT&), void (T::*sentcb)(bool, const CT&) = 0)
3471
+ {
3472
+ return new Callback_LocatorRegistry_setReplicatedAdapterDirectProxy<T, CT>(instance, cb, excb, sentcb);
3473
+ }
3474
+
3475
+ /**
3476
+ * Creates a callback wrapper instance that delegates to your object.
3477
+ * Use this overload when your callback methods receive a cookie value.
3478
+ * @param instance The callback object.
3479
+ * @param excb The exception method of the callback object.
3480
+ * @param sentcb The sent method of the callback object.
3481
+ * @return An object that can be passed to an asynchronous invocation of IceProxy::Ice::LocatorRegistry::begin_setReplicatedAdapterDirectProxy.
3482
+ */
3483
+ template<class T, typename CT> Callback_LocatorRegistry_setReplicatedAdapterDirectProxyPtr
3484
+ newCallback_LocatorRegistry_setReplicatedAdapterDirectProxy(T* instance, void (T::*excb)(const ::Ice::Exception&, const CT&), void (T::*sentcb)(bool, const CT&) = 0)
3485
+ {
3486
+ return new Callback_LocatorRegistry_setReplicatedAdapterDirectProxy<T, CT>(instance, 0, excb, sentcb);
3487
+ }
3488
+
3489
+ /**
3490
+ * Type-safe asynchronous callback wrapper class used for calls to
3491
+ * IceProxy::Ice::LocatorRegistry::begin_setServerProcessProxy.
3492
+ * Create a wrapper instance by calling ::Ice::newCallback_LocatorRegistry_setServerProcessProxy.
3493
+ */
3494
+ template<class T>
3495
+ class CallbackNC_LocatorRegistry_setServerProcessProxy : public Callback_LocatorRegistry_setServerProcessProxy_Base, public ::IceInternal::TwowayCallbackNC<T>
3496
+ {
3497
+ public:
3498
+
3499
+ typedef IceUtil::Handle<T> TPtr;
3500
+
3501
+ typedef void (T::*Exception)(const ::Ice::Exception&);
3502
+ typedef void (T::*Sent)(bool);
3503
+ typedef void (T::*Response)();
3504
+
3505
+ CallbackNC_LocatorRegistry_setServerProcessProxy(const TPtr& obj, Response cb, Exception excb, Sent sentcb)
3506
+ : ::IceInternal::TwowayCallbackNC<T>(obj, cb != 0, excb, sentcb), _response(cb)
3507
+ {
3508
+ }
3509
+
3510
+ /// \cond INTERNAL
3511
+ virtual void completed(const AsyncResultPtr& result) const
3512
+ {
3513
+ LocatorRegistryPrx proxy = LocatorRegistryPrx::uncheckedCast(result->getProxy());
3514
+ try
3515
+ {
3516
+ proxy->end_setServerProcessProxy(result);
3517
+ }
3518
+ catch(const ::Ice::Exception& ex)
3519
+ {
3520
+ ::IceInternal::CallbackNC<T>::exception(result, ex);
3521
+ return;
3522
+ }
3523
+ if(_response)
3524
+ {
3525
+ (::IceInternal::CallbackNC<T>::_callback.get()->*_response)();
3526
+ }
3527
+ }
3528
+ /// \endcond
3529
+
3530
+ private:
3531
+
3532
+ Response _response;
3533
+ };
3534
+
3535
+ /**
3536
+ * Creates a callback wrapper instance that delegates to your object.
3537
+ * @param instance The callback object.
3538
+ * @param cb The success method of the callback object.
3539
+ * @param excb The exception method of the callback object.
3540
+ * @param sentcb The sent method of the callback object.
3541
+ * @return An object that can be passed to an asynchronous invocation of IceProxy::Ice::LocatorRegistry::begin_setServerProcessProxy.
3542
+ */
3543
+ template<class T> Callback_LocatorRegistry_setServerProcessProxyPtr
3544
+ newCallback_LocatorRegistry_setServerProcessProxy(const IceUtil::Handle<T>& instance, void (T::*cb)(), void (T::*excb)(const ::Ice::Exception&), void (T::*sentcb)(bool) = 0)
3545
+ {
3546
+ return new CallbackNC_LocatorRegistry_setServerProcessProxy<T>(instance, cb, excb, sentcb);
3547
+ }
3548
+
3549
+ /**
3550
+ * Creates a callback wrapper instance that delegates to your object.
3551
+ * @param instance The callback object.
3552
+ * @param excb The exception method of the callback object.
3553
+ * @param sentcb The sent method of the callback object.
3554
+ * @return An object that can be passed to an asynchronous invocation of IceProxy::Ice::LocatorRegistry::begin_setServerProcessProxy.
3555
+ */
3556
+ template<class T> Callback_LocatorRegistry_setServerProcessProxyPtr
3557
+ newCallback_LocatorRegistry_setServerProcessProxy(const IceUtil::Handle<T>& instance, void (T::*excb)(const ::Ice::Exception&), void (T::*sentcb)(bool) = 0)
3558
+ {
3559
+ return new CallbackNC_LocatorRegistry_setServerProcessProxy<T>(instance, 0, excb, sentcb);
3560
+ }
3561
+
3562
+ /**
3563
+ * Creates a callback wrapper instance that delegates to your object.
3564
+ * @param instance The callback object.
3565
+ * @param cb The success method of the callback object.
3566
+ * @param excb The exception method of the callback object.
3567
+ * @param sentcb The sent method of the callback object.
3568
+ * @return An object that can be passed to an asynchronous invocation of IceProxy::Ice::LocatorRegistry::begin_setServerProcessProxy.
3569
+ */
3570
+ template<class T> Callback_LocatorRegistry_setServerProcessProxyPtr
3571
+ newCallback_LocatorRegistry_setServerProcessProxy(T* instance, void (T::*cb)(), void (T::*excb)(const ::Ice::Exception&), void (T::*sentcb)(bool) = 0)
3572
+ {
3573
+ return new CallbackNC_LocatorRegistry_setServerProcessProxy<T>(instance, cb, excb, sentcb);
3574
+ }
3575
+
3576
+ /**
3577
+ * Creates a callback wrapper instance that delegates to your object.
3578
+ * @param instance The callback object.
3579
+ * @param excb The exception method of the callback object.
3580
+ * @param sentcb The sent method of the callback object.
3581
+ * @return An object that can be passed to an asynchronous invocation of IceProxy::Ice::LocatorRegistry::begin_setServerProcessProxy.
3582
+ */
3583
+ template<class T> Callback_LocatorRegistry_setServerProcessProxyPtr
3584
+ newCallback_LocatorRegistry_setServerProcessProxy(T* instance, void (T::*excb)(const ::Ice::Exception&), void (T::*sentcb)(bool) = 0)
3585
+ {
3586
+ return new CallbackNC_LocatorRegistry_setServerProcessProxy<T>(instance, 0, excb, sentcb);
3587
+ }
3588
+
3589
+ /**
3590
+ * Type-safe asynchronous callback wrapper class with cookie support used for calls to
3591
+ * IceProxy::Ice::LocatorRegistry::begin_setServerProcessProxy.
3592
+ * Create a wrapper instance by calling ::Ice::newCallback_LocatorRegistry_setServerProcessProxy.
3593
+ */
3594
+ template<class T, typename CT>
3595
+ class Callback_LocatorRegistry_setServerProcessProxy : public Callback_LocatorRegistry_setServerProcessProxy_Base, public ::IceInternal::TwowayCallback<T, CT>
3596
+ {
3597
+ public:
3598
+
3599
+ typedef IceUtil::Handle<T> TPtr;
3600
+
3601
+ typedef void (T::*Exception)(const ::Ice::Exception& , const CT&);
3602
+ typedef void (T::*Sent)(bool , const CT&);
3603
+ typedef void (T::*Response)(const CT&);
3604
+
3605
+ Callback_LocatorRegistry_setServerProcessProxy(const TPtr& obj, Response cb, Exception excb, Sent sentcb)
3606
+ : ::IceInternal::TwowayCallback<T, CT>(obj, cb != 0, excb, sentcb), _response(cb)
3607
+ {
3608
+ }
3609
+
3610
+ /// \cond INTERNAL
3611
+ virtual void completed(const AsyncResultPtr& result) const
3612
+ {
3613
+ LocatorRegistryPrx proxy = LocatorRegistryPrx::uncheckedCast(result->getProxy());
3614
+ try
3615
+ {
3616
+ proxy->end_setServerProcessProxy(result);
3617
+ }
3618
+ catch(const ::Ice::Exception& ex)
3619
+ {
3620
+ ::IceInternal::Callback<T, CT>::exception(result, ex);
3621
+ return;
3622
+ }
3623
+ if(_response)
3624
+ {
3625
+ (::IceInternal::Callback<T, CT>::_callback.get()->*_response)(CT::dynamicCast(result->getCookie()));
3626
+ }
3627
+ }
3628
+ /// \endcond
3629
+
3630
+ private:
3631
+
3632
+ Response _response;
3633
+ };
3634
+
3635
+ /**
3636
+ * Creates a callback wrapper instance that delegates to your object.
3637
+ * Use this overload when your callback methods receive a cookie value.
3638
+ * @param instance The callback object.
3639
+ * @param cb The success method of the callback object.
3640
+ * @param excb The exception method of the callback object.
3641
+ * @param sentcb The sent method of the callback object.
3642
+ * @return An object that can be passed to an asynchronous invocation of IceProxy::Ice::LocatorRegistry::begin_setServerProcessProxy.
3643
+ */
3644
+ template<class T, typename CT> Callback_LocatorRegistry_setServerProcessProxyPtr
3645
+ newCallback_LocatorRegistry_setServerProcessProxy(const IceUtil::Handle<T>& instance, void (T::*cb)(const CT&), void (T::*excb)(const ::Ice::Exception&, const CT&), void (T::*sentcb)(bool, const CT&) = 0)
3646
+ {
3647
+ return new Callback_LocatorRegistry_setServerProcessProxy<T, CT>(instance, cb, excb, sentcb);
3648
+ }
3649
+
3650
+ /**
3651
+ * Creates a callback wrapper instance that delegates to your object.
3652
+ * Use this overload when your callback methods receive a cookie value.
3653
+ * @param instance The callback object.
3654
+ * @param excb The exception method of the callback object.
3655
+ * @param sentcb The sent method of the callback object.
3656
+ * @return An object that can be passed to an asynchronous invocation of IceProxy::Ice::LocatorRegistry::begin_setServerProcessProxy.
3657
+ */
3658
+ template<class T, typename CT> Callback_LocatorRegistry_setServerProcessProxyPtr
3659
+ newCallback_LocatorRegistry_setServerProcessProxy(const IceUtil::Handle<T>& instance, void (T::*excb)(const ::Ice::Exception&, const CT&), void (T::*sentcb)(bool, const CT&) = 0)
3660
+ {
3661
+ return new Callback_LocatorRegistry_setServerProcessProxy<T, CT>(instance, 0, excb, sentcb);
3662
+ }
3663
+
3664
+ /**
3665
+ * Creates a callback wrapper instance that delegates to your object.
3666
+ * Use this overload when your callback methods receive a cookie value.
3667
+ * @param instance The callback object.
3668
+ * @param cb The success method of the callback object.
3669
+ * @param excb The exception method of the callback object.
3670
+ * @param sentcb The sent method of the callback object.
3671
+ * @return An object that can be passed to an asynchronous invocation of IceProxy::Ice::LocatorRegistry::begin_setServerProcessProxy.
3672
+ */
3673
+ template<class T, typename CT> Callback_LocatorRegistry_setServerProcessProxyPtr
3674
+ newCallback_LocatorRegistry_setServerProcessProxy(T* instance, void (T::*cb)(const CT&), void (T::*excb)(const ::Ice::Exception&, const CT&), void (T::*sentcb)(bool, const CT&) = 0)
3675
+ {
3676
+ return new Callback_LocatorRegistry_setServerProcessProxy<T, CT>(instance, cb, excb, sentcb);
3677
+ }
3678
+
3679
+ /**
3680
+ * Creates a callback wrapper instance that delegates to your object.
3681
+ * Use this overload when your callback methods receive a cookie value.
3682
+ * @param instance The callback object.
3683
+ * @param excb The exception method of the callback object.
3684
+ * @param sentcb The sent method of the callback object.
3685
+ * @return An object that can be passed to an asynchronous invocation of IceProxy::Ice::LocatorRegistry::begin_setServerProcessProxy.
3686
+ */
3687
+ template<class T, typename CT> Callback_LocatorRegistry_setServerProcessProxyPtr
3688
+ newCallback_LocatorRegistry_setServerProcessProxy(T* instance, void (T::*excb)(const ::Ice::Exception&, const CT&), void (T::*sentcb)(bool, const CT&) = 0)
3689
+ {
3690
+ return new Callback_LocatorRegistry_setServerProcessProxy<T, CT>(instance, 0, excb, sentcb);
3691
+ }
3692
+
3693
+ /**
3694
+ * Type-safe asynchronous callback wrapper class used for calls to
3695
+ * IceProxy::Ice::LocatorFinder::begin_getLocator.
3696
+ * Create a wrapper instance by calling ::Ice::newCallback_LocatorFinder_getLocator.
3697
+ */
3698
+ template<class T>
3699
+ class CallbackNC_LocatorFinder_getLocator : public Callback_LocatorFinder_getLocator_Base, public ::IceInternal::TwowayCallbackNC<T>
3700
+ {
3701
+ public:
3702
+
3703
+ typedef IceUtil::Handle<T> TPtr;
3704
+
3705
+ typedef void (T::*Exception)(const ::Ice::Exception&);
3706
+ typedef void (T::*Sent)(bool);
3707
+ typedef void (T::*Response)(const LocatorPrx&);
3708
+
3709
+ CallbackNC_LocatorFinder_getLocator(const TPtr& obj, Response cb, Exception excb, Sent sentcb)
3710
+ : ::IceInternal::TwowayCallbackNC<T>(obj, cb != 0, excb, sentcb), _response(cb)
3711
+ {
3712
+ }
3713
+
3714
+ /// \cond INTERNAL
3715
+ virtual void completed(const AsyncResultPtr& result) const
3716
+ {
3717
+ LocatorFinderPrx proxy = LocatorFinderPrx::uncheckedCast(result->getProxy());
3718
+ LocatorPrx ret;
3719
+ try
3720
+ {
3721
+ ret = proxy->end_getLocator(result);
3722
+ }
3723
+ catch(const ::Ice::Exception& ex)
3724
+ {
3725
+ ::IceInternal::CallbackNC<T>::exception(result, ex);
3726
+ return;
3727
+ }
3728
+ if(_response)
3729
+ {
3730
+ (::IceInternal::CallbackNC<T>::_callback.get()->*_response)(ret);
3731
+ }
3732
+ }
3733
+ /// \endcond
3734
+
3735
+ private:
3736
+
3737
+ Response _response;
3738
+ };
3739
+
3740
+ /**
3741
+ * Creates a callback wrapper instance that delegates to your object.
3742
+ * @param instance The callback object.
3743
+ * @param cb The success method of the callback object.
3744
+ * @param excb The exception method of the callback object.
3745
+ * @param sentcb The sent method of the callback object.
3746
+ * @return An object that can be passed to an asynchronous invocation of IceProxy::Ice::LocatorFinder::begin_getLocator.
3747
+ */
3748
+ template<class T> Callback_LocatorFinder_getLocatorPtr
3749
+ newCallback_LocatorFinder_getLocator(const IceUtil::Handle<T>& instance, void (T::*cb)(const LocatorPrx&), void (T::*excb)(const ::Ice::Exception&), void (T::*sentcb)(bool) = 0)
3750
+ {
3751
+ return new CallbackNC_LocatorFinder_getLocator<T>(instance, cb, excb, sentcb);
3752
+ }
3753
+
3754
+ /**
3755
+ * Creates a callback wrapper instance that delegates to your object.
3756
+ * @param instance The callback object.
3757
+ * @param cb The success method of the callback object.
3758
+ * @param excb The exception method of the callback object.
3759
+ * @param sentcb The sent method of the callback object.
3760
+ * @return An object that can be passed to an asynchronous invocation of IceProxy::Ice::LocatorFinder::begin_getLocator.
3761
+ */
3762
+ template<class T> Callback_LocatorFinder_getLocatorPtr
3763
+ newCallback_LocatorFinder_getLocator(T* instance, void (T::*cb)(const LocatorPrx&), void (T::*excb)(const ::Ice::Exception&), void (T::*sentcb)(bool) = 0)
3764
+ {
3765
+ return new CallbackNC_LocatorFinder_getLocator<T>(instance, cb, excb, sentcb);
3766
+ }
3767
+
3768
+ /**
3769
+ * Type-safe asynchronous callback wrapper class with cookie support used for calls to
3770
+ * IceProxy::Ice::LocatorFinder::begin_getLocator.
3771
+ * Create a wrapper instance by calling ::Ice::newCallback_LocatorFinder_getLocator.
3772
+ */
3773
+ template<class T, typename CT>
3774
+ class Callback_LocatorFinder_getLocator : public Callback_LocatorFinder_getLocator_Base, public ::IceInternal::TwowayCallback<T, CT>
3775
+ {
3776
+ public:
3777
+
3778
+ typedef IceUtil::Handle<T> TPtr;
3779
+
3780
+ typedef void (T::*Exception)(const ::Ice::Exception& , const CT&);
3781
+ typedef void (T::*Sent)(bool , const CT&);
3782
+ typedef void (T::*Response)(const LocatorPrx&, const CT&);
3783
+
3784
+ Callback_LocatorFinder_getLocator(const TPtr& obj, Response cb, Exception excb, Sent sentcb)
3785
+ : ::IceInternal::TwowayCallback<T, CT>(obj, cb != 0, excb, sentcb), _response(cb)
3786
+ {
3787
+ }
3788
+
3789
+ /// \cond INTERNAL
3790
+ virtual void completed(const AsyncResultPtr& result) const
3791
+ {
3792
+ LocatorFinderPrx proxy = LocatorFinderPrx::uncheckedCast(result->getProxy());
3793
+ LocatorPrx ret;
3794
+ try
3795
+ {
3796
+ ret = proxy->end_getLocator(result);
3797
+ }
3798
+ catch(const ::Ice::Exception& ex)
3799
+ {
3800
+ ::IceInternal::Callback<T, CT>::exception(result, ex);
3801
+ return;
3802
+ }
3803
+ if(_response)
3804
+ {
3805
+ (::IceInternal::Callback<T, CT>::_callback.get()->*_response)(ret, CT::dynamicCast(result->getCookie()));
3806
+ }
3807
+ }
3808
+ /// \endcond
3809
+
3810
+ private:
3811
+
3812
+ Response _response;
3813
+ };
3814
+
3815
+ /**
3816
+ * Creates a callback wrapper instance that delegates to your object.
3817
+ * Use this overload when your callback methods receive a cookie value.
3818
+ * @param instance The callback object.
3819
+ * @param cb The success method of the callback object.
3820
+ * @param excb The exception method of the callback object.
3821
+ * @param sentcb The sent method of the callback object.
3822
+ * @return An object that can be passed to an asynchronous invocation of IceProxy::Ice::LocatorFinder::begin_getLocator.
3823
+ */
3824
+ template<class T, typename CT> Callback_LocatorFinder_getLocatorPtr
3825
+ newCallback_LocatorFinder_getLocator(const IceUtil::Handle<T>& instance, void (T::*cb)(const LocatorPrx&, const CT&), void (T::*excb)(const ::Ice::Exception&, const CT&), void (T::*sentcb)(bool, const CT&) = 0)
3826
+ {
3827
+ return new Callback_LocatorFinder_getLocator<T, CT>(instance, cb, excb, sentcb);
3828
+ }
3829
+
3830
+ /**
3831
+ * Creates a callback wrapper instance that delegates to your object.
3832
+ * Use this overload when your callback methods receive a cookie value.
3833
+ * @param instance The callback object.
3834
+ * @param cb The success method of the callback object.
3835
+ * @param excb The exception method of the callback object.
3836
+ * @param sentcb The sent method of the callback object.
3837
+ * @return An object that can be passed to an asynchronous invocation of IceProxy::Ice::LocatorFinder::begin_getLocator.
3838
+ */
3839
+ template<class T, typename CT> Callback_LocatorFinder_getLocatorPtr
3840
+ newCallback_LocatorFinder_getLocator(T* instance, void (T::*cb)(const LocatorPrx&, const CT&), void (T::*excb)(const ::Ice::Exception&, const CT&), void (T::*sentcb)(bool, const CT&) = 0)
3841
+ {
3842
+ return new Callback_LocatorFinder_getLocator<T, CT>(instance, cb, excb, sentcb);
3843
+ }
3844
+
3845
+ }
3846
+
3847
+ #endif
3848
+
3849
+ #include <IceUtil/PopDisableWarnings.h>
3850
+ #endif