zeroc-ice 3.7.0 → 3.7.1

Sign up to get free protection for your applications and to get access to all the features.
Files changed (684) hide show
  1. checksums.yaml +4 -4
  2. data/ICE_LICENSE +1 -1
  3. data/bin/slice2rb +1 -1
  4. data/ext/Communicator.cpp +72 -2
  5. data/ext/Communicator.h +1 -1
  6. data/ext/Config.h +11 -1
  7. data/ext/Connection.cpp +22 -2
  8. data/ext/Connection.h +4 -1
  9. data/ext/Endpoint.cpp +1 -1
  10. data/ext/Endpoint.h +1 -1
  11. data/ext/ImplicitContext.cpp +1 -1
  12. data/ext/ImplicitContext.h +1 -1
  13. data/ext/Init.cpp +1 -1
  14. data/ext/Logger.cpp +1 -1
  15. data/ext/Logger.h +1 -1
  16. data/ext/Operation.cpp +1 -1
  17. data/ext/Operation.h +1 -1
  18. data/ext/Properties.cpp +1 -1
  19. data/ext/Properties.h +1 -1
  20. data/ext/Proxy.cpp +70 -1
  21. data/ext/Proxy.h +1 -1
  22. data/ext/Slice.cpp +1 -1
  23. data/ext/Slice.h +1 -1
  24. data/ext/Types.cpp +21 -5
  25. data/ext/Types.h +1 -1
  26. data/ext/Util.cpp +1 -1
  27. data/ext/Util.h +1 -1
  28. data/ext/ValueFactoryManager.cpp +2 -2
  29. data/ext/ValueFactoryManager.h +2 -2
  30. data/ext/ice/cpp/include/Ice/Application.h +234 -76
  31. data/ext/ice/cpp/include/Ice/AsyncResult.h +77 -1
  32. data/ext/ice/cpp/include/Ice/AsyncResultF.h +1 -1
  33. data/ext/ice/cpp/include/Ice/BatchRequestInterceptor.h +35 -2
  34. data/ext/ice/cpp/include/Ice/BatchRequestQueueF.h +1 -1
  35. data/ext/ice/cpp/include/Ice/Buffer.h +1 -1
  36. data/ext/ice/cpp/include/Ice/CommunicatorAsync.h +43 -1
  37. data/ext/ice/cpp/include/Ice/Comparable.h +81 -1
  38. data/ext/ice/cpp/include/Ice/Config.h +8 -1
  39. data/ext/ice/cpp/include/Ice/ConnectionAsync.h +97 -1
  40. data/ext/ice/cpp/include/Ice/ConnectionIF.h +3 -1
  41. data/ext/ice/cpp/include/Ice/ConsoleUtil.h +1 -1
  42. data/ext/ice/cpp/include/Ice/DefaultValueFactory.h +1 -1
  43. data/ext/ice/cpp/include/Ice/DispatchInterceptor.h +17 -2
  44. data/ext/ice/cpp/include/Ice/Dispatcher.h +22 -2
  45. data/ext/ice/cpp/include/Ice/DynamicLibrary.h +1 -1
  46. data/ext/ice/cpp/include/Ice/DynamicLibraryF.h +1 -1
  47. data/ext/ice/cpp/include/Ice/Exception.h +57 -15
  48. data/ext/ice/cpp/include/Ice/ExceptionHelpers.h +19 -1
  49. data/ext/ice/cpp/include/Ice/FactoryTable.h +12 -2
  50. data/ext/ice/cpp/include/Ice/FactoryTableInit.h +1 -1
  51. data/ext/ice/cpp/include/Ice/Format.h +13 -14
  52. data/ext/ice/cpp/include/Ice/Functional.h +6 -1
  53. data/ext/ice/cpp/include/Ice/GCObject.h +1 -1
  54. data/ext/ice/cpp/include/Ice/Handle.h +1 -1
  55. data/ext/ice/cpp/include/Ice/Ice.h +1 -1
  56. data/ext/ice/cpp/include/Ice/IconvStringConverter.h +38 -3
  57. data/ext/ice/cpp/include/Ice/Incoming.h +15 -2
  58. data/ext/ice/cpp/include/Ice/IncomingAsync.h +37 -4
  59. data/ext/ice/cpp/include/Ice/IncomingAsyncF.h +1 -1
  60. data/ext/ice/cpp/include/Ice/Initialize.h +764 -98
  61. data/ext/ice/cpp/include/Ice/InputStream.h +637 -112
  62. data/ext/ice/cpp/include/Ice/InstanceF.h +1 -1
  63. data/ext/ice/cpp/include/Ice/InterfaceByValue.h +17 -1
  64. data/ext/ice/cpp/include/Ice/LocalObject.h +5 -1
  65. data/ext/ice/cpp/include/Ice/LocalObjectF.h +1 -1
  66. data/ext/ice/cpp/include/Ice/LoggerUtil.h +37 -6
  67. data/ext/ice/cpp/include/Ice/MetricsAdminI.h +3 -1
  68. data/ext/ice/cpp/include/Ice/MetricsFunctional.h +3 -1
  69. data/ext/ice/cpp/include/Ice/MetricsObserverI.h +3 -1
  70. data/ext/ice/cpp/include/Ice/NativePropertiesAdmin.h +46 -23
  71. data/ext/ice/cpp/include/Ice/Object.h +338 -47
  72. data/ext/ice/cpp/include/Ice/ObjectF.h +5 -1
  73. data/ext/ice/cpp/include/Ice/ObserverHelper.h +1 -1
  74. data/ext/ice/cpp/include/Ice/Optional.h +22 -6
  75. data/ext/ice/cpp/include/Ice/OutgoingAsync.h +15 -1
  76. data/ext/ice/cpp/include/Ice/OutgoingAsyncF.h +1 -1
  77. data/ext/ice/cpp/include/Ice/OutputStream.h +436 -92
  78. data/ext/ice/cpp/include/Ice/Protocol.h +31 -1
  79. data/ext/ice/cpp/include/Ice/Proxy.h +2244 -190
  80. data/ext/ice/cpp/include/Ice/ProxyF.h +3 -1
  81. data/ext/ice/cpp/include/Ice/ProxyFactoryF.h +1 -1
  82. data/ext/ice/cpp/include/Ice/ProxyHandle.h +10 -1
  83. data/ext/ice/cpp/include/Ice/ReferenceF.h +1 -1
  84. data/ext/ice/cpp/include/Ice/RegisterPlugins.h +67 -9
  85. data/ext/ice/cpp/include/Ice/RequestHandlerF.h +1 -1
  86. data/ext/ice/cpp/include/Ice/ResponseHandlerF.h +1 -1
  87. data/ext/ice/cpp/include/Ice/SHA1.h +1 -1
  88. data/ext/ice/cpp/include/Ice/ServantManagerF.h +1 -1
  89. data/ext/ice/cpp/include/Ice/Service.h +267 -138
  90. data/ext/ice/cpp/include/Ice/SliceChecksums.h +5 -1
  91. data/ext/ice/cpp/include/Ice/SlicedData.h +80 -33
  92. data/ext/ice/cpp/include/Ice/SlicedDataF.h +4 -1
  93. data/ext/ice/cpp/include/Ice/StreamHelpers.h +324 -116
  94. data/ext/ice/cpp/include/Ice/StringConverter.h +32 -1
  95. data/ext/ice/cpp/include/Ice/ThreadPoolF.h +1 -1
  96. data/ext/ice/cpp/include/Ice/UUID.h +2 -1
  97. data/ext/ice/cpp/include/Ice/UniquePtr.h +2 -2
  98. data/ext/ice/cpp/include/Ice/UniqueRef.h +6 -2
  99. data/ext/ice/cpp/include/Ice/UserExceptionFactory.h +6 -1
  100. data/ext/ice/cpp/include/Ice/Value.h +41 -1
  101. data/ext/ice/cpp/include/Ice/ValueF.h +3 -1
  102. data/ext/ice/cpp/include/IceSSL/Config.h +1 -1
  103. data/ext/ice/cpp/include/IceSSL/IceSSL.h +1 -1
  104. data/ext/ice/cpp/include/IceSSL/OpenSSL.h +75 -53
  105. data/ext/ice/cpp/include/IceSSL/Plugin.h +323 -218
  106. data/ext/ice/cpp/include/IceSSL/SChannel.h +34 -27
  107. data/ext/ice/cpp/include/IceSSL/SecureTransport.h +35 -28
  108. data/ext/ice/cpp/include/IceSSL/UWP.h +33 -24
  109. data/ext/ice/cpp/include/IceUtil/Atomic.h +1 -1
  110. data/ext/ice/cpp/include/IceUtil/Cond.h +1 -1
  111. data/ext/ice/cpp/include/IceUtil/Config.h +11 -3
  112. data/ext/ice/cpp/include/IceUtil/ConsoleUtil.h +1 -1
  113. data/ext/ice/cpp/include/IceUtil/CountDownLatch.h +1 -1
  114. data/ext/ice/cpp/include/IceUtil/CtrlCHandler.h +59 -31
  115. data/ext/ice/cpp/include/IceUtil/DisableWarnings.h +1 -1
  116. data/ext/ice/cpp/include/IceUtil/Exception.h +1 -1
  117. data/ext/ice/cpp/include/IceUtil/FileUtil.h +1 -1
  118. data/ext/ice/cpp/include/IceUtil/Functional.h +1 -1
  119. data/ext/ice/cpp/include/IceUtil/Handle.h +1 -1
  120. data/ext/ice/cpp/include/IceUtil/IceUtil.h +1 -1
  121. data/ext/ice/cpp/include/IceUtil/InputUtil.h +1 -1
  122. data/ext/ice/cpp/include/IceUtil/Iterator.h +1 -1
  123. data/ext/ice/cpp/include/IceUtil/Lock.h +1 -1
  124. data/ext/ice/cpp/include/IceUtil/Monitor.h +1 -1
  125. data/ext/ice/cpp/include/IceUtil/Mutex.h +2 -5
  126. data/ext/ice/cpp/include/IceUtil/MutexProtocol.h +1 -1
  127. data/ext/ice/cpp/include/IceUtil/MutexPtrLock.h +1 -1
  128. data/ext/ice/cpp/include/IceUtil/MutexPtrTryLock.h +1 -1
  129. data/ext/ice/cpp/include/IceUtil/Optional.h +95 -1
  130. data/ext/ice/cpp/include/IceUtil/Options.h +1 -1
  131. data/ext/ice/cpp/include/IceUtil/OutputUtil.h +1 -1
  132. data/ext/ice/cpp/include/IceUtil/PopDisableWarnings.h +1 -1
  133. data/ext/ice/cpp/include/IceUtil/PushDisableWarnings.h +1 -1
  134. data/ext/ice/cpp/include/IceUtil/Random.h +1 -1
  135. data/ext/ice/cpp/include/IceUtil/RecMutex.h +1 -1
  136. data/ext/ice/cpp/include/IceUtil/ResourceConfig.h +4 -4
  137. data/ext/ice/cpp/include/IceUtil/ScannerConfig.h +5 -3
  138. data/ext/ice/cpp/include/IceUtil/ScopedArray.h +1 -1
  139. data/ext/ice/cpp/include/IceUtil/Shared.h +1 -1
  140. data/ext/ice/cpp/include/IceUtil/StopWatch.h +1 -1
  141. data/ext/ice/cpp/include/IceUtil/StringConverter.h +106 -86
  142. data/ext/ice/cpp/include/IceUtil/StringUtil.h +1 -1
  143. data/ext/ice/cpp/include/IceUtil/Thread.h +1 -1
  144. data/ext/ice/cpp/include/IceUtil/ThreadException.h +1 -1
  145. data/ext/ice/cpp/include/IceUtil/Time.h +1 -1
  146. data/ext/ice/cpp/include/IceUtil/Timer.h +5 -1
  147. data/ext/ice/cpp/include/IceUtil/UUID.h +5 -1
  148. data/ext/ice/cpp/include/IceUtil/UndefSysMacros.h +1 -1
  149. data/ext/ice/cpp/include/generated/Ice/BuiltinSequences.h +80 -20
  150. data/ext/ice/cpp/include/generated/Ice/Communicator.h +927 -130
  151. data/ext/ice/cpp/include/generated/Ice/CommunicatorF.h +13 -5
  152. data/ext/ice/cpp/include/generated/Ice/Connection.h +990 -194
  153. data/ext/ice/cpp/include/generated/Ice/ConnectionF.h +21 -9
  154. data/ext/ice/cpp/include/generated/Ice/Current.h +180 -17
  155. data/ext/ice/cpp/include/generated/Ice/Endpoint.h +484 -118
  156. data/ext/ice/cpp/include/generated/Ice/EndpointF.h +41 -17
  157. data/ext/ice/cpp/include/generated/Ice/EndpointTypes.h +29 -3
  158. data/ext/ice/cpp/include/generated/Ice/FacetMap.h +11 -5
  159. data/ext/ice/cpp/include/generated/Ice/Identity.h +56 -7
  160. data/ext/ice/cpp/include/generated/Ice/ImplicitContext.h +150 -28
  161. data/ext/ice/cpp/include/generated/Ice/ImplicitContextF.h +13 -5
  162. data/ext/ice/cpp/include/generated/Ice/Instrumentation.h +629 -83
  163. data/ext/ice/cpp/include/generated/Ice/InstrumentationF.h +19 -7
  164. data/ext/ice/cpp/include/generated/Ice/LocalException.h +5104 -794
  165. data/ext/ice/cpp/include/generated/Ice/Locator.h +2222 -443
  166. data/ext/ice/cpp/include/generated/Ice/LocatorF.h +27 -9
  167. data/ext/ice/cpp/include/generated/Ice/Logger.h +104 -26
  168. data/ext/ice/cpp/include/generated/Ice/LoggerF.h +13 -5
  169. data/ext/ice/cpp/include/generated/Ice/Metrics.h +2534 -455
  170. data/ext/ice/cpp/include/generated/Ice/ObjectAdapter.h +1004 -126
  171. data/ext/ice/cpp/include/generated/Ice/ObjectAdapterF.h +13 -5
  172. data/ext/ice/cpp/include/generated/Ice/ObjectFactory.h +72 -12
  173. data/ext/ice/cpp/include/generated/Ice/Plugin.h +142 -28
  174. data/ext/ice/cpp/include/generated/Ice/PluginF.h +17 -7
  175. data/ext/ice/cpp/include/generated/Ice/Process.h +511 -71
  176. data/ext/ice/cpp/include/generated/Ice/ProcessF.h +18 -6
  177. data/ext/ice/cpp/include/generated/Ice/Properties.h +306 -58
  178. data/ext/ice/cpp/include/generated/Ice/PropertiesAdmin.h +737 -121
  179. data/ext/ice/cpp/include/generated/Ice/PropertiesF.h +22 -8
  180. data/ext/ice/cpp/include/generated/Ice/RemoteLogger.h +1526 -279
  181. data/ext/ice/cpp/include/generated/Ice/Router.h +1009 -198
  182. data/ext/ice/cpp/include/generated/Ice/RouterF.h +18 -6
  183. data/ext/ice/cpp/include/generated/Ice/ServantLocator.h +174 -18
  184. data/ext/ice/cpp/include/generated/Ice/ServantLocatorF.h +13 -5
  185. data/ext/ice/cpp/include/generated/Ice/SliceChecksumDict.h +13 -3
  186. data/ext/ice/cpp/include/generated/Ice/ValueFactory.h +177 -23
  187. data/ext/ice/cpp/include/generated/Ice/Version.h +43 -13
  188. data/ext/ice/cpp/include/generated/IceSSL/ConnectionInfo.h +71 -15
  189. data/ext/ice/cpp/include/generated/IceSSL/ConnectionInfoF.h +13 -5
  190. data/ext/ice/cpp/include/generated/IceSSL/EndpointInfo.h +39 -9
  191. data/ext/ice/cpp/src/Ice/ACM.cpp +12 -3
  192. data/ext/ice/cpp/src/Ice/ACM.h +1 -1
  193. data/ext/ice/cpp/src/Ice/ACMF.h +1 -1
  194. data/ext/ice/cpp/src/Ice/Acceptor.cpp +1 -1
  195. data/ext/ice/cpp/src/Ice/Acceptor.h +1 -1
  196. data/ext/ice/cpp/src/Ice/AcceptorF.h +1 -1
  197. data/ext/ice/cpp/src/Ice/ArgVector.cpp +1 -1
  198. data/ext/ice/cpp/src/Ice/ArgVector.h +1 -1
  199. data/ext/ice/cpp/src/Ice/AsyncResult.cpp +1 -1
  200. data/ext/ice/cpp/src/Ice/Base64.cpp +1 -1
  201. data/ext/ice/cpp/src/Ice/Base64.h +1 -1
  202. data/ext/ice/cpp/src/Ice/BatchRequestQueue.cpp +1 -1
  203. data/ext/ice/cpp/src/Ice/BatchRequestQueue.h +1 -1
  204. data/ext/ice/cpp/src/Ice/Buffer.cpp +1 -1
  205. data/ext/ice/cpp/src/Ice/BuiltinSequences.cpp +3 -3
  206. data/ext/ice/cpp/src/Ice/CollocatedRequestHandler.cpp +1 -1
  207. data/ext/ice/cpp/src/Ice/CollocatedRequestHandler.h +1 -1
  208. data/ext/ice/cpp/src/Ice/Communicator.cpp +6 -4
  209. data/ext/ice/cpp/src/Ice/CommunicatorF.cpp +3 -3
  210. data/ext/ice/cpp/src/Ice/CommunicatorI.cpp +34 -13
  211. data/ext/ice/cpp/src/Ice/CommunicatorI.h +10 -10
  212. data/ext/ice/cpp/src/Ice/Cond.cpp +1 -1
  213. data/ext/ice/cpp/src/Ice/ConnectRequestHandler.cpp +11 -6
  214. data/ext/ice/cpp/src/Ice/ConnectRequestHandler.h +1 -1
  215. data/ext/ice/cpp/src/Ice/ConnectRequestHandlerF.h +1 -1
  216. data/ext/ice/cpp/src/Ice/Connection.cpp +27 -11
  217. data/ext/ice/cpp/src/Ice/ConnectionF.cpp +3 -3
  218. data/ext/ice/cpp/src/Ice/ConnectionFactory.cpp +24 -19
  219. data/ext/ice/cpp/src/Ice/ConnectionFactory.h +1 -1
  220. data/ext/ice/cpp/src/Ice/ConnectionFactoryF.h +1 -1
  221. data/ext/ice/cpp/src/Ice/ConnectionI.cpp +45 -37
  222. data/ext/ice/cpp/src/Ice/ConnectionI.h +10 -8
  223. data/ext/ice/cpp/src/Ice/ConnectionRequestHandler.cpp +1 -1
  224. data/ext/ice/cpp/src/Ice/ConnectionRequestHandler.h +1 -1
  225. data/ext/ice/cpp/src/Ice/Connector.cpp +1 -1
  226. data/ext/ice/cpp/src/Ice/Connector.h +1 -1
  227. data/ext/ice/cpp/src/Ice/ConnectorF.h +1 -1
  228. data/ext/ice/cpp/src/Ice/CountDownLatch.cpp +1 -1
  229. data/ext/ice/cpp/src/Ice/Current.cpp +3 -3
  230. data/ext/ice/cpp/src/Ice/DefaultsAndOverrides.cpp +5 -7
  231. data/ext/ice/cpp/src/Ice/DefaultsAndOverrides.h +1 -1
  232. data/ext/ice/cpp/src/Ice/DefaultsAndOverridesF.h +1 -1
  233. data/ext/ice/cpp/src/Ice/DispatchInterceptor.cpp +1 -1
  234. data/ext/ice/cpp/src/Ice/DynamicLibrary.cpp +1 -1
  235. data/ext/ice/cpp/src/Ice/Endpoint.cpp +24 -10
  236. data/ext/ice/cpp/src/Ice/EndpointF.cpp +3 -3
  237. data/ext/ice/cpp/src/Ice/EndpointFactory.cpp +1 -1
  238. data/ext/ice/cpp/src/Ice/EndpointFactory.h +1 -1
  239. data/ext/ice/cpp/src/Ice/EndpointFactoryF.h +1 -1
  240. data/ext/ice/cpp/src/Ice/EndpointFactoryManager.cpp +7 -13
  241. data/ext/ice/cpp/src/Ice/EndpointFactoryManager.h +1 -1
  242. data/ext/ice/cpp/src/Ice/EndpointFactoryManagerF.h +1 -1
  243. data/ext/ice/cpp/src/Ice/EndpointI.cpp +2 -2
  244. data/ext/ice/cpp/src/Ice/EndpointI.h +5 -5
  245. data/ext/ice/cpp/src/Ice/EndpointIF.h +1 -1
  246. data/ext/ice/cpp/src/Ice/EndpointTypes.cpp +3 -3
  247. data/ext/ice/cpp/src/Ice/EventHandler.cpp +1 -1
  248. data/ext/ice/cpp/src/Ice/EventHandler.h +1 -1
  249. data/ext/ice/cpp/src/Ice/EventHandlerF.h +1 -1
  250. data/ext/ice/cpp/src/Ice/Exception.cpp +1 -1
  251. data/ext/ice/cpp/src/Ice/FacetMap.cpp +3 -3
  252. data/ext/ice/cpp/src/Ice/FactoryTable.cpp +1 -1
  253. data/ext/ice/cpp/src/Ice/FactoryTableInit.cpp +1 -1
  254. data/ext/ice/cpp/src/Ice/GCObject.cpp +1 -1
  255. data/ext/ice/cpp/src/Ice/HashUtil.h +1 -1
  256. data/ext/ice/cpp/src/Ice/HttpParser.cpp +1 -1
  257. data/ext/ice/cpp/src/Ice/HttpParser.h +1 -1
  258. data/ext/ice/cpp/src/Ice/IPEndpointI.cpp +24 -29
  259. data/ext/ice/cpp/src/Ice/IPEndpointI.h +5 -5
  260. data/ext/ice/cpp/src/Ice/IPEndpointIF.h +1 -1
  261. data/ext/ice/cpp/src/Ice/IconvStringConverter.cpp +1 -1
  262. data/ext/ice/cpp/src/Ice/Identity.cpp +3 -3
  263. data/ext/ice/cpp/src/Ice/ImplicitContext.cpp +6 -4
  264. data/ext/ice/cpp/src/Ice/ImplicitContextF.cpp +3 -3
  265. data/ext/ice/cpp/src/Ice/ImplicitContextI.cpp +2 -13
  266. data/ext/ice/cpp/src/Ice/ImplicitContextI.h +1 -1
  267. data/ext/ice/cpp/src/Ice/Incoming.cpp +1 -1
  268. data/ext/ice/cpp/src/Ice/IncomingAsync.cpp +1 -1
  269. data/ext/ice/cpp/src/Ice/IncomingRequest.h +1 -1
  270. data/ext/ice/cpp/src/Ice/Initialize.cpp +10 -16
  271. data/ext/ice/cpp/src/Ice/InputStream.cpp +1 -1
  272. data/ext/ice/cpp/src/Ice/Instance.cpp +13 -34
  273. data/ext/ice/cpp/src/Ice/Instance.h +1 -1
  274. data/ext/ice/cpp/src/Ice/Instrumentation.cpp +33 -13
  275. data/ext/ice/cpp/src/Ice/InstrumentationF.cpp +3 -3
  276. data/ext/ice/cpp/src/Ice/InstrumentationI.cpp +1 -1
  277. data/ext/ice/cpp/src/Ice/InstrumentationI.h +1 -1
  278. data/ext/ice/cpp/src/Ice/LocalException.cpp +279 -279
  279. data/ext/ice/cpp/src/Ice/LocalObject.cpp +1 -1
  280. data/ext/ice/cpp/src/Ice/Locator.cpp +287 -174
  281. data/ext/ice/cpp/src/Ice/LocatorF.cpp +3 -3
  282. data/ext/ice/cpp/src/Ice/LocatorInfo.cpp +4 -9
  283. data/ext/ice/cpp/src/Ice/LocatorInfo.h +1 -1
  284. data/ext/ice/cpp/src/Ice/LocatorInfoF.h +1 -1
  285. data/ext/ice/cpp/src/Ice/Logger.cpp +6 -4
  286. data/ext/ice/cpp/src/Ice/LoggerAdminI.cpp +1 -1
  287. data/ext/ice/cpp/src/Ice/LoggerAdminI.h +1 -1
  288. data/ext/ice/cpp/src/Ice/LoggerF.cpp +3 -3
  289. data/ext/ice/cpp/src/Ice/LoggerI.cpp +1 -1
  290. data/ext/ice/cpp/src/Ice/LoggerI.h +1 -1
  291. data/ext/ice/cpp/src/Ice/LoggerUtil.cpp +1 -1
  292. data/ext/ice/cpp/src/Ice/Metrics.cpp +297 -109
  293. data/ext/ice/cpp/src/Ice/MetricsAdminI.cpp +2 -7
  294. data/ext/ice/cpp/src/Ice/MetricsObserverI.cpp +1 -1
  295. data/ext/ice/cpp/src/Ice/Network.cpp +188 -225
  296. data/ext/ice/cpp/src/Ice/Network.h +3 -12
  297. data/ext/ice/cpp/src/Ice/NetworkF.h +1 -1
  298. data/ext/ice/cpp/src/Ice/NetworkProxy.cpp +1 -1
  299. data/ext/ice/cpp/src/Ice/NetworkProxy.h +1 -1
  300. data/ext/ice/cpp/src/Ice/NetworkProxyF.h +1 -1
  301. data/ext/ice/cpp/src/Ice/Object.cpp +7 -4
  302. data/ext/ice/cpp/src/Ice/ObjectAdapter.cpp +6 -4
  303. data/ext/ice/cpp/src/Ice/ObjectAdapterF.cpp +3 -3
  304. data/ext/ice/cpp/src/Ice/ObjectAdapterFactory.cpp +53 -19
  305. data/ext/ice/cpp/src/Ice/ObjectAdapterFactory.h +1 -1
  306. data/ext/ice/cpp/src/Ice/ObjectAdapterFactoryF.h +1 -1
  307. data/ext/ice/cpp/src/Ice/ObjectAdapterI.cpp +116 -150
  308. data/ext/ice/cpp/src/Ice/ObjectAdapterI.h +11 -11
  309. data/ext/ice/cpp/src/Ice/ObjectFactory.cpp +6 -4
  310. data/ext/ice/cpp/src/Ice/ObserverHelper.cpp +1 -1
  311. data/ext/ice/cpp/src/Ice/OpaqueEndpointI.cpp +25 -42
  312. data/ext/ice/cpp/src/Ice/OpaqueEndpointI.h +2 -2
  313. data/ext/ice/cpp/src/Ice/OutgoingAsync.cpp +1 -1
  314. data/ext/ice/cpp/src/Ice/OutputStream.cpp +1 -1
  315. data/ext/ice/cpp/src/Ice/Plugin.cpp +9 -5
  316. data/ext/ice/cpp/src/Ice/PluginF.cpp +3 -3
  317. data/ext/ice/cpp/src/Ice/PluginManagerI.cpp +15 -34
  318. data/ext/ice/cpp/src/Ice/PluginManagerI.h +3 -3
  319. data/ext/ice/cpp/src/Ice/Process.cpp +69 -40
  320. data/ext/ice/cpp/src/Ice/ProcessF.cpp +3 -3
  321. data/ext/ice/cpp/src/Ice/Properties.cpp +6 -4
  322. data/ext/ice/cpp/src/Ice/PropertiesAdmin.cpp +89 -54
  323. data/ext/ice/cpp/src/Ice/PropertiesAdminI.cpp +1 -1
  324. data/ext/ice/cpp/src/Ice/PropertiesAdminI.h +1 -1
  325. data/ext/ice/cpp/src/Ice/PropertiesF.cpp +3 -3
  326. data/ext/ice/cpp/src/Ice/PropertiesI.cpp +15 -21
  327. data/ext/ice/cpp/src/Ice/PropertiesI.h +10 -10
  328. data/ext/ice/cpp/src/Ice/PropertyNames.cpp +4 -2
  329. data/ext/ice/cpp/src/Ice/PropertyNames.h +2 -2
  330. data/ext/ice/cpp/src/Ice/Protocol.cpp +5 -13
  331. data/ext/ice/cpp/src/Ice/ProtocolInstance.cpp +1 -1
  332. data/ext/ice/cpp/src/Ice/ProtocolInstance.h +1 -1
  333. data/ext/ice/cpp/src/Ice/ProtocolInstanceF.h +1 -1
  334. data/ext/ice/cpp/src/Ice/ProtocolPluginFacade.cpp +1 -1
  335. data/ext/ice/cpp/src/Ice/ProtocolPluginFacade.h +1 -1
  336. data/ext/ice/cpp/src/Ice/ProtocolPluginFacadeF.h +1 -1
  337. data/ext/ice/cpp/src/Ice/Proxy.cpp +46 -1
  338. data/ext/ice/cpp/src/Ice/ProxyFactory.cpp +1 -1
  339. data/ext/ice/cpp/src/Ice/ProxyFactory.h +1 -1
  340. data/ext/ice/cpp/src/Ice/Reference.cpp +56 -6
  341. data/ext/ice/cpp/src/Ice/Reference.h +13 -2
  342. data/ext/ice/cpp/src/Ice/ReferenceFactory.cpp +51 -90
  343. data/ext/ice/cpp/src/Ice/ReferenceFactory.h +1 -1
  344. data/ext/ice/cpp/src/Ice/ReferenceFactoryF.h +1 -1
  345. data/ext/ice/cpp/src/Ice/RegisterPluginsInit.cpp +1 -1
  346. data/ext/ice/cpp/src/Ice/RegisterPluginsInit.h +1 -1
  347. data/ext/ice/cpp/src/Ice/RemoteLogger.cpp +203 -117
  348. data/ext/ice/cpp/src/Ice/ReplyStatus.h +1 -1
  349. data/ext/ice/cpp/src/Ice/RequestHandler.cpp +1 -1
  350. data/ext/ice/cpp/src/Ice/RequestHandler.h +1 -1
  351. data/ext/ice/cpp/src/Ice/RequestHandlerFactory.cpp +1 -1
  352. data/ext/ice/cpp/src/Ice/RequestHandlerFactory.h +1 -1
  353. data/ext/ice/cpp/src/Ice/ResponseHandler.cpp +1 -1
  354. data/ext/ice/cpp/src/Ice/ResponseHandler.h +1 -1
  355. data/ext/ice/cpp/src/Ice/RetryQueue.cpp +1 -1
  356. data/ext/ice/cpp/src/Ice/RetryQueue.h +1 -1
  357. data/ext/ice/cpp/src/Ice/RetryQueueF.h +1 -1
  358. data/ext/ice/cpp/src/Ice/Router.cpp +167 -89
  359. data/ext/ice/cpp/src/Ice/RouterF.cpp +3 -3
  360. data/ext/ice/cpp/src/Ice/RouterInfo.cpp +6 -28
  361. data/ext/ice/cpp/src/Ice/RouterInfo.h +1 -3
  362. data/ext/ice/cpp/src/Ice/RouterInfoF.h +1 -1
  363. data/ext/ice/cpp/src/Ice/SHA1.cpp +1 -1
  364. data/ext/ice/cpp/src/Ice/Selector.cpp +19 -26
  365. data/ext/ice/cpp/src/Ice/Selector.h +1 -1
  366. data/ext/ice/cpp/src/Ice/ServantLocator.cpp +6 -4
  367. data/ext/ice/cpp/src/Ice/ServantLocatorF.cpp +3 -3
  368. data/ext/ice/cpp/src/Ice/ServantManager.cpp +15 -31
  369. data/ext/ice/cpp/src/Ice/ServantManager.h +1 -1
  370. data/ext/ice/cpp/src/Ice/SharedContext.h +1 -1
  371. data/ext/ice/cpp/src/Ice/SliceChecksumDict.cpp +3 -3
  372. data/ext/ice/cpp/src/Ice/SliceChecksums.cpp +1 -1
  373. data/ext/ice/cpp/src/Ice/SlicedData.cpp +1 -1
  374. data/ext/ice/cpp/src/Ice/StreamSocket.cpp +32 -52
  375. data/ext/ice/cpp/src/Ice/StreamSocket.h +1 -1
  376. data/ext/ice/cpp/src/Ice/StringConverterPlugin.cpp +10 -1
  377. data/ext/ice/cpp/src/Ice/StringUtil.h +1 -1
  378. data/ext/ice/cpp/src/Ice/SysLoggerI.cpp +1 -1
  379. data/ext/ice/cpp/src/Ice/SysLoggerI.h +1 -1
  380. data/ext/ice/cpp/src/Ice/TcpAcceptor.cpp +5 -13
  381. data/ext/ice/cpp/src/Ice/TcpAcceptor.h +1 -1
  382. data/ext/ice/cpp/src/Ice/TcpConnector.cpp +1 -1
  383. data/ext/ice/cpp/src/Ice/TcpConnector.h +1 -1
  384. data/ext/ice/cpp/src/Ice/TcpEndpointI.cpp +8 -11
  385. data/ext/ice/cpp/src/Ice/TcpEndpointI.h +2 -2
  386. data/ext/ice/cpp/src/Ice/TcpTransceiver.cpp +1 -1
  387. data/ext/ice/cpp/src/Ice/TcpTransceiver.h +1 -1
  388. data/ext/ice/cpp/src/Ice/Thread.cpp +1 -1
  389. data/ext/ice/cpp/src/Ice/ThreadPool.cpp +13 -13
  390. data/ext/ice/cpp/src/Ice/ThreadPool.h +1 -1
  391. data/ext/ice/cpp/src/Ice/Timer.cpp +1 -1
  392. data/ext/ice/cpp/src/Ice/TraceLevels.cpp +1 -1
  393. data/ext/ice/cpp/src/Ice/TraceLevels.h +1 -1
  394. data/ext/ice/cpp/src/Ice/TraceLevelsF.h +1 -1
  395. data/ext/ice/cpp/src/Ice/TraceUtil.cpp +1 -1
  396. data/ext/ice/cpp/src/Ice/TraceUtil.h +1 -1
  397. data/ext/ice/cpp/src/Ice/Transceiver.cpp +1 -1
  398. data/ext/ice/cpp/src/Ice/Transceiver.h +1 -1
  399. data/ext/ice/cpp/src/Ice/TransceiverF.h +1 -1
  400. data/ext/ice/cpp/src/Ice/UdpConnector.cpp +1 -1
  401. data/ext/ice/cpp/src/Ice/UdpConnector.h +1 -1
  402. data/ext/ice/cpp/src/Ice/UdpEndpointI.cpp +19 -27
  403. data/ext/ice/cpp/src/Ice/UdpEndpointI.h +2 -2
  404. data/ext/ice/cpp/src/Ice/UdpTransceiver.cpp +17 -54
  405. data/ext/ice/cpp/src/Ice/UdpTransceiver.h +1 -1
  406. data/ext/ice/cpp/src/Ice/Value.cpp +1 -1
  407. data/ext/ice/cpp/src/Ice/ValueFactory.cpp +9 -5
  408. data/ext/ice/cpp/src/Ice/ValueFactoryManagerI.cpp +3 -6
  409. data/ext/ice/cpp/src/Ice/ValueFactoryManagerI.h +2 -2
  410. data/ext/ice/cpp/src/Ice/Version.cpp +3 -3
  411. data/ext/ice/cpp/src/Ice/VirtualShared.h +1 -1
  412. data/ext/ice/cpp/src/Ice/WSAcceptor.cpp +1 -1
  413. data/ext/ice/cpp/src/Ice/WSAcceptor.h +1 -1
  414. data/ext/ice/cpp/src/Ice/WSConnector.cpp +1 -1
  415. data/ext/ice/cpp/src/Ice/WSConnector.h +1 -1
  416. data/ext/ice/cpp/src/Ice/WSEndpoint.cpp +4 -5
  417. data/ext/ice/cpp/src/Ice/WSEndpoint.h +2 -2
  418. data/ext/ice/cpp/src/Ice/WSTransceiver.cpp +8 -9
  419. data/ext/ice/cpp/src/Ice/WSTransceiver.h +1 -1
  420. data/ext/ice/cpp/src/IceDiscovery/IceDiscovery.cpp +85 -27
  421. data/ext/ice/cpp/src/IceDiscovery/IceDiscovery.h +599 -113
  422. data/ext/ice/cpp/src/IceDiscovery/LocatorI.cpp +1 -1
  423. data/ext/ice/cpp/src/IceDiscovery/LocatorI.h +1 -1
  424. data/ext/ice/cpp/src/IceDiscovery/LookupI.cpp +1 -1
  425. data/ext/ice/cpp/src/IceDiscovery/LookupI.h +1 -1
  426. data/ext/ice/cpp/src/IceDiscovery/PluginI.cpp +1 -1
  427. data/ext/ice/cpp/src/IceDiscovery/PluginI.h +1 -1
  428. data/ext/ice/cpp/src/IceLocatorDiscovery/IceLocatorDiscovery.cpp +70 -24
  429. data/ext/ice/cpp/src/IceLocatorDiscovery/IceLocatorDiscovery.h +635 -69
  430. data/ext/ice/cpp/src/IceLocatorDiscovery/Plugin.h +1 -1
  431. data/ext/ice/cpp/src/IceLocatorDiscovery/PluginI.cpp +71 -9
  432. data/ext/ice/cpp/src/IceSSL/AcceptorI.cpp +2 -4
  433. data/ext/ice/cpp/src/IceSSL/AcceptorI.h +1 -1
  434. data/ext/ice/cpp/src/IceSSL/CertificateI.cpp +1 -1
  435. data/ext/ice/cpp/src/IceSSL/CertificateI.h +1 -1
  436. data/ext/ice/cpp/src/IceSSL/ConnectionInfo.cpp +6 -4
  437. data/ext/ice/cpp/src/IceSSL/ConnectionInfoF.cpp +3 -3
  438. data/ext/ice/cpp/src/IceSSL/ConnectorI.cpp +2 -4
  439. data/ext/ice/cpp/src/IceSSL/ConnectorI.h +1 -1
  440. data/ext/ice/cpp/src/IceSSL/EndpointI.cpp +2 -2
  441. data/ext/ice/cpp/src/IceSSL/EndpointI.h +2 -2
  442. data/ext/ice/cpp/src/IceSSL/EndpointInfo.cpp +6 -4
  443. data/ext/ice/cpp/src/IceSSL/Instance.cpp +1 -1
  444. data/ext/ice/cpp/src/IceSSL/Instance.h +1 -1
  445. data/ext/ice/cpp/src/IceSSL/InstanceF.h +1 -1
  446. data/ext/ice/cpp/src/IceSSL/OpenSSLCertificateI.cpp +1 -1
  447. data/ext/ice/cpp/src/IceSSL/OpenSSLEngine.cpp +1 -1
  448. data/ext/ice/cpp/src/IceSSL/OpenSSLEngine.h +1 -1
  449. data/ext/ice/cpp/src/IceSSL/OpenSSLEngineF.h +1 -1
  450. data/ext/ice/cpp/src/IceSSL/OpenSSLPluginI.cpp +1 -1
  451. data/ext/ice/cpp/src/IceSSL/OpenSSLTransceiverI.cpp +25 -62
  452. data/ext/ice/cpp/src/IceSSL/OpenSSLTransceiverI.h +1 -1
  453. data/ext/ice/cpp/src/IceSSL/OpenSSLUtil.cpp +1 -1
  454. data/ext/ice/cpp/src/IceSSL/OpenSSLUtil.h +1 -1
  455. data/ext/ice/cpp/src/IceSSL/PluginI.cpp +1 -1
  456. data/ext/ice/cpp/src/IceSSL/PluginI.h +1 -1
  457. data/ext/ice/cpp/src/IceSSL/RFC2253.cpp +1 -1
  458. data/ext/ice/cpp/src/IceSSL/RFC2253.h +1 -1
  459. data/ext/ice/cpp/src/IceSSL/SChannelCertificateI.cpp +1 -1
  460. data/ext/ice/cpp/src/IceSSL/SChannelEngine.cpp +1 -1
  461. data/ext/ice/cpp/src/IceSSL/SChannelEngine.h +1 -1
  462. data/ext/ice/cpp/src/IceSSL/SChannelEngineF.h +1 -1
  463. data/ext/ice/cpp/src/IceSSL/SChannelPluginI.cpp +1 -1
  464. data/ext/ice/cpp/src/IceSSL/SChannelTransceiverI.cpp +19 -27
  465. data/ext/ice/cpp/src/IceSSL/SChannelTransceiverI.h +1 -1
  466. data/ext/ice/cpp/src/IceSSL/SSLEngine.cpp +7 -16
  467. data/ext/ice/cpp/src/IceSSL/SSLEngine.h +1 -1
  468. data/ext/ice/cpp/src/IceSSL/SSLEngineF.h +1 -1
  469. data/ext/ice/cpp/src/IceSSL/SecureTransportCertificateI.cpp +1 -1
  470. data/ext/ice/cpp/src/IceSSL/SecureTransportEngine.cpp +1 -1
  471. data/ext/ice/cpp/src/IceSSL/SecureTransportEngine.h +1 -1
  472. data/ext/ice/cpp/src/IceSSL/SecureTransportEngineF.h +1 -1
  473. data/ext/ice/cpp/src/IceSSL/SecureTransportPluginI.cpp +1 -1
  474. data/ext/ice/cpp/src/IceSSL/SecureTransportTransceiverI.cpp +1 -1
  475. data/ext/ice/cpp/src/IceSSL/SecureTransportTransceiverI.h +1 -1
  476. data/ext/ice/cpp/src/IceSSL/SecureTransportUtil.cpp +7 -10
  477. data/ext/ice/cpp/src/IceSSL/SecureTransportUtil.h +1 -1
  478. data/ext/ice/cpp/src/IceSSL/TrustManager.cpp +4 -5
  479. data/ext/ice/cpp/src/IceSSL/TrustManager.h +1 -1
  480. data/ext/ice/cpp/src/IceSSL/TrustManagerF.h +1 -1
  481. data/ext/ice/cpp/src/IceSSL/UWPCertificateI.cpp +1 -1
  482. data/ext/ice/cpp/src/IceSSL/UWPEngine.cpp +1 -1
  483. data/ext/ice/cpp/src/IceSSL/UWPEngine.h +1 -1
  484. data/ext/ice/cpp/src/IceSSL/UWPEngineF.h +1 -1
  485. data/ext/ice/cpp/src/IceSSL/UWPPluginI.cpp +1 -1
  486. data/ext/ice/cpp/src/IceSSL/UWPTransceiverI.cpp +1 -1
  487. data/ext/ice/cpp/src/IceSSL/UWPTransceiverI.h +1 -1
  488. data/ext/ice/cpp/src/IceSSL/Util.cpp +1 -1
  489. data/ext/ice/cpp/src/IceSSL/Util.h +1 -1
  490. data/ext/ice/cpp/src/IceUtil/ConsoleUtil.cpp +1 -1
  491. data/ext/ice/cpp/src/IceUtil/ConvertUTF.cpp +1 -1
  492. data/ext/ice/cpp/src/IceUtil/ConvertUTF.h +1 -1
  493. data/ext/ice/cpp/src/IceUtil/CtrlCHandler.cpp +1 -1
  494. data/ext/ice/cpp/src/IceUtil/FileUtil.cpp +5 -5
  495. data/ext/ice/cpp/src/IceUtil/InputUtil.cpp +1 -1
  496. data/ext/ice/cpp/src/IceUtil/MutexProtocol.cpp +1 -1
  497. data/ext/ice/cpp/src/IceUtil/Options.cpp +1 -1
  498. data/ext/ice/cpp/src/IceUtil/OutputUtil.cpp +1 -1
  499. data/ext/ice/cpp/src/IceUtil/Random.cpp +1 -1
  500. data/ext/ice/cpp/src/IceUtil/RecMutex.cpp +1 -5
  501. data/ext/ice/cpp/src/IceUtil/Shared.cpp +1 -1
  502. data/ext/ice/cpp/src/IceUtil/StringConverter.cpp +1 -1
  503. data/ext/ice/cpp/src/IceUtil/StringUtil.cpp +1 -1
  504. data/ext/ice/cpp/src/IceUtil/ThreadException.cpp +1 -1
  505. data/ext/ice/cpp/src/IceUtil/Time.cpp +1 -1
  506. data/ext/ice/cpp/src/IceUtil/UUID.cpp +3 -3
  507. data/ext/ice/cpp/src/IceUtil/Unicode.cpp +1 -1
  508. data/ext/ice/cpp/src/IceUtil/Unicode.h +1 -1
  509. data/ext/ice/cpp/src/IceUtil/UtilException.cpp +1 -1
  510. data/ext/ice/cpp/src/Slice/CPlusPlusUtil.cpp +160 -150
  511. data/ext/ice/cpp/src/Slice/CPlusPlusUtil.h +9 -8
  512. data/ext/ice/cpp/src/Slice/Checksum.cpp +1 -1
  513. data/ext/ice/cpp/src/Slice/Checksum.h +1 -1
  514. data/ext/ice/cpp/src/Slice/FileTracker.cpp +1 -1
  515. data/ext/ice/cpp/src/Slice/FileTracker.h +1 -1
  516. data/ext/ice/cpp/src/Slice/Grammar.cpp +567 -585
  517. data/ext/ice/cpp/src/Slice/Grammar.h +2 -2
  518. data/ext/ice/cpp/src/Slice/GrammarUtil.h +1 -1
  519. data/ext/ice/cpp/src/Slice/JavaUtil.cpp +131 -47
  520. data/ext/ice/cpp/src/Slice/JavaUtil.h +10 -5
  521. data/ext/ice/cpp/src/Slice/MD5.cpp +1 -1
  522. data/ext/ice/cpp/src/Slice/MD5.h +1 -1
  523. data/ext/ice/cpp/src/Slice/PHPUtil.cpp +1 -1
  524. data/ext/ice/cpp/src/Slice/PHPUtil.h +1 -1
  525. data/ext/ice/cpp/src/Slice/Parser.cpp +383 -101
  526. data/ext/ice/cpp/src/Slice/Parser.h +40 -3
  527. data/ext/ice/cpp/src/Slice/Preprocessor.cpp +2 -1
  528. data/ext/ice/cpp/src/Slice/Preprocessor.h +2 -2
  529. data/ext/ice/cpp/src/Slice/Python.cpp +7 -15
  530. data/ext/ice/cpp/src/Slice/PythonUtil.cpp +66 -9
  531. data/ext/ice/cpp/src/Slice/PythonUtil.h +2 -2
  532. data/ext/ice/cpp/src/Slice/Ruby.cpp +1 -1
  533. data/ext/ice/cpp/src/Slice/RubyUtil.cpp +2 -2
  534. data/ext/ice/cpp/src/Slice/RubyUtil.h +1 -1
  535. data/ext/ice/cpp/src/Slice/Scanner.cpp +214 -135
  536. data/ext/ice/cpp/src/Slice/SliceUtil.cpp +1 -1
  537. data/ext/ice/cpp/src/Slice/StringLiteralUtil.cpp +99 -17
  538. data/ext/ice/cpp/src/Slice/Util.h +5 -4
  539. data/ice.gemspec +2 -2
  540. data/lib/Glacier2.rb +1 -1
  541. data/lib/Glacier2/Metrics.rb +2 -2
  542. data/lib/Glacier2/PermissionsVerifier.rb +2 -2
  543. data/lib/Glacier2/PermissionsVerifierF.rb +2 -2
  544. data/lib/Glacier2/Router.rb +2 -2
  545. data/lib/Glacier2/RouterF.rb +2 -2
  546. data/lib/Glacier2/SSLInfo.rb +2 -2
  547. data/lib/Glacier2/Session.rb +2 -2
  548. data/lib/Ice.rb +2 -2
  549. data/lib/Ice/BuiltinSequences.rb +2 -2
  550. data/lib/Ice/Communicator.rb +2 -2
  551. data/lib/Ice/CommunicatorF.rb +2 -2
  552. data/lib/Ice/Connection.rb +2 -2
  553. data/lib/Ice/ConnectionF.rb +2 -2
  554. data/lib/Ice/Current.rb +2 -2
  555. data/lib/Ice/Endpoint.rb +2 -2
  556. data/lib/Ice/EndpointF.rb +2 -2
  557. data/lib/Ice/EndpointTypes.rb +2 -2
  558. data/lib/Ice/FacetMap.rb +2 -2
  559. data/lib/Ice/Identity.rb +2 -2
  560. data/lib/Ice/ImplicitContext.rb +2 -2
  561. data/lib/Ice/ImplicitContextF.rb +2 -2
  562. data/lib/Ice/Instrumentation.rb +2 -2
  563. data/lib/Ice/InstrumentationF.rb +2 -2
  564. data/lib/Ice/LocalException.rb +2 -2
  565. data/lib/Ice/Locator.rb +2 -2
  566. data/lib/Ice/LocatorF.rb +2 -2
  567. data/lib/Ice/Logger.rb +2 -2
  568. data/lib/Ice/LoggerF.rb +2 -2
  569. data/lib/Ice/Metrics.rb +2 -2
  570. data/lib/Ice/ObjectAdapter.rb +2 -2
  571. data/lib/Ice/ObjectAdapterF.rb +2 -2
  572. data/lib/Ice/ObjectFactory.rb +2 -2
  573. data/lib/Ice/Plugin.rb +2 -2
  574. data/lib/Ice/PluginF.rb +2 -2
  575. data/lib/Ice/Process.rb +2 -2
  576. data/lib/Ice/ProcessF.rb +2 -2
  577. data/lib/Ice/Properties.rb +2 -2
  578. data/lib/Ice/PropertiesAdmin.rb +2 -2
  579. data/lib/Ice/PropertiesF.rb +2 -2
  580. data/lib/Ice/RemoteLogger.rb +2 -2
  581. data/lib/Ice/Router.rb +2 -2
  582. data/lib/Ice/RouterF.rb +2 -2
  583. data/lib/Ice/ServantLocator.rb +2 -2
  584. data/lib/Ice/ServantLocatorF.rb +2 -2
  585. data/lib/Ice/SliceChecksumDict.rb +2 -2
  586. data/lib/Ice/ValueFactory.rb +2 -2
  587. data/lib/Ice/Version.rb +2 -2
  588. data/lib/IceBox.rb +1 -1
  589. data/lib/IceBox/IceBox.rb +2 -2
  590. data/lib/IceGrid.rb +1 -1
  591. data/lib/IceGrid/Admin.rb +2 -2
  592. data/lib/IceGrid/Descriptor.rb +2 -2
  593. data/lib/IceGrid/Exception.rb +2 -2
  594. data/lib/IceGrid/FileParser.rb +2 -2
  595. data/lib/IceGrid/PluginFacade.rb +2 -2
  596. data/lib/IceGrid/Registry.rb +2 -2
  597. data/lib/IceGrid/Session.rb +2 -2
  598. data/lib/IceGrid/UserAccountMapper.rb +2 -2
  599. data/lib/IcePatch2.rb +1 -1
  600. data/lib/IcePatch2/FileInfo.rb +2 -2
  601. data/lib/IcePatch2/FileServer.rb +2 -2
  602. data/lib/IceStorm.rb +1 -1
  603. data/lib/IceStorm/IceStorm.rb +2 -2
  604. data/lib/IceStorm/Metrics.rb +2 -2
  605. data/slice/Glacier2/Metrics.ice +2 -2
  606. data/slice/Glacier2/PermissionsVerifier.ice +2 -2
  607. data/slice/Glacier2/PermissionsVerifierF.ice +2 -2
  608. data/slice/Glacier2/Router.ice +2 -2
  609. data/slice/Glacier2/RouterF.ice +2 -2
  610. data/slice/Glacier2/SSLInfo.ice +2 -2
  611. data/slice/Glacier2/Session.ice +2 -2
  612. data/slice/Ice/BuiltinSequences.ice +2 -2
  613. data/slice/Ice/Communicator.ice +66 -73
  614. data/slice/Ice/CommunicatorF.ice +2 -2
  615. data/slice/Ice/Connection.ice +47 -17
  616. data/slice/Ice/ConnectionF.ice +2 -2
  617. data/slice/Ice/Current.ice +4 -5
  618. data/slice/Ice/Endpoint.ice +16 -16
  619. data/slice/Ice/EndpointF.ice +2 -2
  620. data/slice/Ice/EndpointTypes.ice +2 -2
  621. data/slice/Ice/FacetMap.ice +2 -2
  622. data/slice/Ice/Identity.ice +2 -2
  623. data/slice/Ice/ImplicitContext.ice +6 -6
  624. data/slice/Ice/ImplicitContextF.ice +2 -2
  625. data/slice/Ice/Instrumentation.ice +2 -2
  626. data/slice/Ice/InstrumentationF.ice +2 -2
  627. data/slice/Ice/LocalException.ice +2 -2
  628. data/slice/Ice/Locator.ice +3 -3
  629. data/slice/Ice/LocatorF.ice +2 -2
  630. data/slice/Ice/Logger.ice +2 -2
  631. data/slice/Ice/LoggerF.ice +2 -2
  632. data/slice/Ice/Metrics.ice +2 -2
  633. data/slice/Ice/ObjectAdapter.ice +10 -10
  634. data/slice/Ice/ObjectAdapterF.ice +2 -2
  635. data/slice/Ice/ObjectFactory.ice +3 -3
  636. data/slice/Ice/Plugin.ice +4 -4
  637. data/slice/Ice/PluginF.ice +2 -2
  638. data/slice/Ice/Process.ice +2 -2
  639. data/slice/Ice/ProcessF.ice +2 -2
  640. data/slice/Ice/Properties.ice +11 -11
  641. data/slice/Ice/PropertiesAdmin.ice +2 -2
  642. data/slice/Ice/PropertiesF.ice +2 -2
  643. data/slice/Ice/RemoteLogger.ice +12 -23
  644. data/slice/Ice/Router.ice +2 -2
  645. data/slice/Ice/RouterF.ice +2 -2
  646. data/slice/Ice/ServantLocator.ice +2 -2
  647. data/slice/Ice/ServantLocatorF.ice +2 -2
  648. data/slice/Ice/SliceChecksumDict.ice +2 -2
  649. data/slice/Ice/ValueFactory.ice +14 -16
  650. data/slice/Ice/Version.ice +2 -2
  651. data/slice/IceBT/ConnectionInfo.ice +2 -2
  652. data/slice/IceBT/EndpointInfo.ice +2 -2
  653. data/slice/IceBT/Types.ice +2 -2
  654. data/slice/IceBox/IceBox.ice +3 -4
  655. data/slice/IceDiscovery/IceDiscovery.ice +2 -2
  656. data/slice/IceGrid/Admin.ice +2 -2
  657. data/slice/IceGrid/Descriptor.ice +2 -2
  658. data/slice/IceGrid/Exception.ice +2 -2
  659. data/slice/IceGrid/FileParser.ice +2 -2
  660. data/slice/IceGrid/PluginFacade.ice +6 -6
  661. data/slice/IceGrid/Registry.ice +2 -2
  662. data/slice/IceGrid/Session.ice +2 -2
  663. data/slice/IceGrid/UserAccountMapper.ice +2 -2
  664. data/slice/IceIAP/ConnectionInfo.ice +2 -2
  665. data/slice/IceIAP/EndpointInfo.ice +2 -2
  666. data/slice/IceLocatorDiscovery/IceLocatorDiscovery.ice +2 -2
  667. data/slice/IcePatch2/FileInfo.ice +2 -2
  668. data/slice/IcePatch2/FileServer.ice +2 -2
  669. data/slice/IceSSL/ConnectionInfo.ice +2 -2
  670. data/slice/IceSSL/ConnectionInfoF.ice +2 -2
  671. data/slice/IceSSL/EndpointInfo.ice +2 -2
  672. data/slice/IceStorm/IceStorm.ice +5 -6
  673. data/slice/IceStorm/Metrics.ice +2 -2
  674. metadata +3 -13
  675. data/BZIP2_LICENSE +0 -42
  676. data/ext/ice/bzip2/blocksort.c +0 -1094
  677. data/ext/ice/bzip2/bzlib.c +0 -1572
  678. data/ext/ice/bzip2/bzlib.h +0 -282
  679. data/ext/ice/bzip2/bzlib_private.h +0 -509
  680. data/ext/ice/bzip2/compress.c +0 -672
  681. data/ext/ice/bzip2/crctable.c +0 -104
  682. data/ext/ice/bzip2/decompress.c +0 -646
  683. data/ext/ice/bzip2/huffman.c +0 -205
  684. data/ext/ice/bzip2/randtable.c +0 -84
@@ -1,13 +1,13 @@
1
1
  // **********************************************************************
2
2
  //
3
- // Copyright (c) 2003-2017 ZeroC, Inc. All rights reserved.
3
+ // Copyright (c) 2003-2018 ZeroC, Inc. All rights reserved.
4
4
  //
5
5
  // This copy of Ice is licensed to you under the terms described in the
6
6
  // ICE_LICENSE file included in this distribution.
7
7
  //
8
8
  // **********************************************************************
9
9
  //
10
- // Ice version 3.7.0
10
+ // Ice version 3.7.1
11
11
  //
12
12
  // <auto-generated>
13
13
  //
@@ -40,7 +40,7 @@
40
40
  # if ICE_INT_VERSION % 100 > 50
41
41
  # error Beta header file detected
42
42
  # endif
43
- # if ICE_INT_VERSION % 100 < 0
43
+ # if ICE_INT_VERSION % 100 < 1
44
44
  # error Ice patch level mismatch!
45
45
  # endif
46
46
  #endif
@@ -64,17 +64,21 @@ class Communicator;
64
64
 
65
65
  }
66
66
 
67
+ /// \cond STREAM
67
68
  namespace Ice
68
69
  {
69
70
 
70
71
  }
72
+ /// \endcond
71
73
 
74
+ /// \cond INTERNAL
72
75
  namespace Ice
73
76
  {
74
77
 
75
78
  using CommunicatorPtr = ::std::shared_ptr<Communicator>;
76
79
 
77
80
  }
81
+ /// \endcond
78
82
 
79
83
  #else // C++98 mapping
80
84
 
@@ -82,15 +86,19 @@ namespace Ice
82
86
  {
83
87
 
84
88
  class Communicator;
85
- ICE_API ::Ice::LocalObject* upCast(::Ice::Communicator*);
86
- typedef ::IceInternal::Handle< ::Ice::Communicator> CommunicatorPtr;
89
+ /// \cond INTERNAL
90
+ ICE_API LocalObject* upCast(Communicator*);
91
+ /// \endcond
92
+ typedef ::IceInternal::Handle< Communicator> CommunicatorPtr;
87
93
 
88
94
  }
89
95
 
96
+ /// \cond STREAM
90
97
  namespace Ice
91
98
  {
92
99
 
93
100
  }
101
+ /// \endcond
94
102
 
95
103
  #endif
96
104
 
@@ -1,13 +1,13 @@
1
1
  // **********************************************************************
2
2
  //
3
- // Copyright (c) 2003-2017 ZeroC, Inc. All rights reserved.
3
+ // Copyright (c) 2003-2018 ZeroC, Inc. All rights reserved.
4
4
  //
5
5
  // This copy of Ice is licensed to you under the terms described in the
6
6
  // ICE_LICENSE file included in this distribution.
7
7
  //
8
8
  // **********************************************************************
9
9
  //
10
- // Ice version 3.7.0
10
+ // Ice version 3.7.1
11
11
  //
12
12
  // <auto-generated>
13
13
  //
@@ -44,7 +44,7 @@
44
44
  # if ICE_INT_VERSION % 100 > 50
45
45
  # error Beta header file detected
46
46
  # endif
47
- # if ICE_INT_VERSION % 100 < 0
47
+ # if ICE_INT_VERSION % 100 < 1
48
48
  # error Ice patch level mismatch!
49
49
  # endif
50
50
  #endif
@@ -76,49 +76,132 @@ class WSConnectionInfo;
76
76
  namespace Ice
77
77
  {
78
78
 
79
+ /**
80
+ * The batch compression option when flushing queued batch requests.
81
+ */
79
82
  enum class CompressBatch : unsigned char
80
83
  {
84
+ /**
85
+ * Compress the batch requests.
86
+ */
81
87
  Yes,
88
+ /**
89
+ * Don't compress the batch requests.
90
+ */
82
91
  No,
92
+ /**
93
+ * Compress the batch requests if at least one request was
94
+ * made on a compressed proxy.
95
+ */
83
96
  BasedOnProxy
84
97
  };
85
98
 
99
+ /**
100
+ * Specifies the close semantics for Active Connection Management.
101
+ */
86
102
  enum class ACMClose : unsigned char
87
103
  {
104
+ /**
105
+ * Disables automatic connection closure.
106
+ */
88
107
  CloseOff,
108
+ /**
109
+ * Gracefully closes a connection that has been idle for the configured timeout period.
110
+ */
89
111
  CloseOnIdle,
112
+ /**
113
+ * Forcefully closes a connection that has been idle for the configured timeout period,
114
+ * but only if the connection has pending invocations.
115
+ */
90
116
  CloseOnInvocation,
117
+ /**
118
+ * Combines the behaviors of CloseOnIdle and CloseOnInvocation.
119
+ */
91
120
  CloseOnInvocationAndIdle,
121
+ /**
122
+ * Forcefully closes a connection that has been idle for the configured timeout period,
123
+ * regardless of whether the connection has pending invocations or dispatch.
124
+ */
92
125
  CloseOnIdleForceful
93
126
  };
94
127
 
128
+ /**
129
+ * Specifies the heartbeat semantics for Active Connection Management.
130
+ */
95
131
  enum class ACMHeartbeat : unsigned char
96
132
  {
133
+ /**
134
+ * Disables heartbeats.
135
+ */
97
136
  HeartbeatOff,
137
+ /**
138
+ * Send a heartbeat at regular intervals if the connection is idle and only if there are pending dispatch.
139
+ */
98
140
  HeartbeatOnDispatch,
141
+ /**
142
+ * Send a heartbeat at regular intervals when the connection is idle.
143
+ */
99
144
  HeartbeatOnIdle,
145
+ /**
146
+ * Send a heartbeat at regular intervals until the connection is closed.
147
+ */
100
148
  HeartbeatAlways
101
149
  };
102
150
 
151
+ /**
152
+ * A collection of Active Connection Management configuration settings.
153
+ * \headerfile Ice/Ice.h
154
+ */
103
155
  struct ACM
104
156
  {
157
+ /**
158
+ * A timeout value in seconds.
159
+ */
105
160
  int timeout;
106
- ::Ice::ACMClose close;
107
- ::Ice::ACMHeartbeat heartbeat;
108
-
109
- std::tuple<const int&, const ::Ice::ACMClose&, const ::Ice::ACMHeartbeat&> ice_tuple() const
161
+ /**
162
+ * The close semantics.
163
+ */
164
+ ACMClose close;
165
+ /**
166
+ * The heartbeat semantics.
167
+ */
168
+ ACMHeartbeat heartbeat;
169
+
170
+ /**
171
+ * Obtains a tuple containing all of the exception's data members.
172
+ * @return The data members in a tuple.
173
+ */
174
+
175
+ std::tuple<const int&, const ACMClose&, const ACMHeartbeat&> ice_tuple() const
110
176
  {
111
177
  return std::tie(timeout, close, heartbeat);
112
178
  }
113
179
  };
114
180
 
181
+ /**
182
+ * Determines the behavior when manually closing a connection.
183
+ */
115
184
  enum class ConnectionClose : unsigned char
116
185
  {
186
+ /**
187
+ * Close the connection immediately without sending a close connection protocol message to the peer
188
+ * and waiting for the peer to acknowledge it.
189
+ */
117
190
  Forcefully,
191
+ /**
192
+ * Close the connection by notifying the peer but do not wait for pending outgoing invocations to complete.
193
+ * On the server side, the connection will not be closed until all incoming invocations have completed.
194
+ */
118
195
  Gracefully,
196
+ /**
197
+ * Wait for all pending invocations to complete before closing the connection.
198
+ */
119
199
  GracefullyWithWait
120
200
  };
121
201
 
202
+ /**
203
+ * A collection of HTTP headers.
204
+ */
122
205
  using HeaderDict = ::std::map<::std::string, ::std::string>;
123
206
 
124
207
  using Ice::operator<;
@@ -133,6 +216,10 @@ using Ice::operator!=;
133
216
  namespace Ice
134
217
  {
135
218
 
219
+ /**
220
+ * Base class providing access to the connection details. *
221
+ * \headerfile Ice/Ice.h
222
+ */
136
223
  class ICE_CLASS(ICE_API) ConnectionInfo
137
224
  {
138
225
  public:
@@ -146,52 +233,157 @@ public:
146
233
  ConnectionInfo& operator=(const ConnectionInfo&) = default;
147
234
  ConnectionInfo& operator=(ConnectionInfo&&) = default;
148
235
 
149
- ConnectionInfo(const ::std::shared_ptr<::Ice::ConnectionInfo>& iceP_underlying, bool iceP_incoming, const ::std::string& iceP_adapterName, const ::std::string& iceP_connectionId) :
150
- underlying(::std::move(iceP_underlying)),
151
- incoming(iceP_incoming),
152
- adapterName(::std::move(iceP_adapterName)),
153
- connectionId(::std::move(iceP_connectionId))
236
+ /**
237
+ * One-shot constructor to initialize all data members.
238
+ * @param underlying The information of the underyling transport or null if there's no underlying transport.
239
+ * @param incoming Whether or not the connection is an incoming or outgoing connection.
240
+ * @param adapterName The name of the adapter associated with the connection.
241
+ * @param connectionId The connection id.
242
+ */
243
+ ConnectionInfo(const ::std::shared_ptr<ConnectionInfo>& underlying, bool incoming, const ::std::string& adapterName, const ::std::string& connectionId) :
244
+ underlying(::std::move(underlying)),
245
+ incoming(incoming),
246
+ adapterName(::std::move(adapterName)),
247
+ connectionId(::std::move(connectionId))
154
248
  {
155
249
  }
156
250
 
157
- ::std::shared_ptr<::Ice::ConnectionInfo> underlying;
251
+ /**
252
+ * The information of the underyling transport or null if there's
253
+ * no underlying transport.
254
+ */
255
+ ::std::shared_ptr<ConnectionInfo> underlying;
256
+ /**
257
+ * Whether or not the connection is an incoming or outgoing
258
+ * connection.
259
+ */
158
260
  bool incoming;
261
+ /**
262
+ * The name of the adapter associated with the connection.
263
+ */
159
264
  ::std::string adapterName;
265
+ /**
266
+ * The connection id.
267
+ */
160
268
  ::std::string connectionId;
161
269
  };
162
270
 
163
- using CloseCallback = ::std::function<void(const ::std::shared_ptr<::Ice::Connection>&)>;
164
-
165
- using HeartbeatCallback = ::std::function<void(const ::std::shared_ptr<::Ice::Connection>&)>;
166
-
271
+ /**
272
+ * This method is called by the the connection when the connection
273
+ * is closed. If the callback needs more information about the closure,
274
+ * it can call {@link Connection#throwException}.
275
+ * @param con The connection that closed.
276
+ */
277
+ using CloseCallback = ::std::function<void(const ::std::shared_ptr<Connection>& con)>;
278
+
279
+ /**
280
+ * This method is called by the the connection when a heartbeat is
281
+ * received from the peer.
282
+ * @param con The connection on which a heartbeat was received.
283
+ */
284
+ using HeartbeatCallback = ::std::function<void(const ::std::shared_ptr<Connection>& con)>;
285
+
286
+ /**
287
+ * The user-level interface to a connection.
288
+ * \headerfile Ice/Ice.h
289
+ */
167
290
  class ICE_CLASS(ICE_API) Connection
168
291
  {
169
292
  public:
170
293
 
171
294
  ICE_MEMBER(ICE_API) virtual ~Connection();
172
295
 
173
- virtual void close(::Ice::ConnectionClose) = 0;
174
-
175
- virtual ::std::shared_ptr<::Ice::ObjectPrx> createProxy(const ::Ice::Identity&) const = 0;
176
-
177
- virtual void setAdapter(const ::std::shared_ptr<::Ice::ObjectAdapter>&) = 0;
178
-
179
- virtual ::std::shared_ptr<::Ice::ObjectAdapter> getAdapter() const = 0;
180
-
181
- virtual ::std::shared_ptr<::Ice::Endpoint> getEndpoint() const = 0;
182
-
183
- virtual void flushBatchRequests(::Ice::CompressBatch compress)
296
+ /**
297
+ * Manually close the connection using the specified closure mode.
298
+ * @param mode Determines how the connection will be closed.
299
+ * @see ConnectionClose
300
+ */
301
+ virtual void close(ConnectionClose mode) noexcept = 0;
302
+
303
+ /**
304
+ * Create a special proxy that always uses this connection. This
305
+ * can be used for callbacks from a server to a client if the
306
+ * server cannot directly establish a connection to the client,
307
+ * for example because of firewalls. In this case, the server
308
+ * would create a proxy using an already established connection
309
+ * from the client.
310
+ * @param id The identity for which a proxy is to be created.
311
+ * @return A proxy that matches the given identity and uses this
312
+ * connection.
313
+ * @see #setAdapter
314
+ */
315
+ virtual ::std::shared_ptr<::Ice::ObjectPrx> createProxy(const Identity& id) const = 0;
316
+
317
+ /**
318
+ * Explicitly set an object adapter that dispatches requests that
319
+ * are received over this connection. A client can invoke an
320
+ * operation on a server using a proxy, and then set an object
321
+ * adapter for the outgoing connection that is used by the proxy
322
+ * in order to receive callbacks. This is useful if the server
323
+ * cannot establish a connection back to the client, for example
324
+ * because of firewalls.
325
+ * @param adapter The object adapter that should be used by this
326
+ * connection to dispatch requests. The object adapter must be
327
+ * activated. When the object adapter is deactivated, it is
328
+ * automatically removed from the connection. Attempts to use a
329
+ * deactivated object adapter raise {@link ObjectAdapterDeactivatedException}
330
+ * @see #createProxy
331
+ * @see #getAdapter
332
+ */
333
+ virtual void setAdapter(const ::std::shared_ptr<ObjectAdapter>& adapter) = 0;
334
+
335
+ /**
336
+ * Get the object adapter that dispatches requests for this
337
+ * connection.
338
+ * @return The object adapter that dispatches requests for the
339
+ * connection, or null if no adapter is set.
340
+ * @see #setAdapter
341
+ */
342
+ virtual ::std::shared_ptr<::Ice::ObjectAdapter> getAdapter() const noexcept = 0;
343
+
344
+ /**
345
+ * Get the endpoint from which the connection was created.
346
+ * @return The endpoint from which the connection was created.
347
+ */
348
+ virtual ::std::shared_ptr<::Ice::Endpoint> getEndpoint() const noexcept = 0;
349
+
350
+ /**
351
+ * Flush any pending batch requests for this connection.
352
+ * This means all batch requests invoked on fixed proxies
353
+ * associated with the connection.
354
+ * @param compress Specifies whether or not the queued batch requests
355
+ * should be compressed before being sent over the wire.
356
+ */
357
+ virtual void flushBatchRequests(CompressBatch compress)
184
358
  {
185
359
  flushBatchRequestsAsync(compress).get();
186
360
  }
187
361
 
362
+ /**
363
+ * Flush any pending batch requests for this connection.
364
+ * This means all batch requests invoked on fixed proxies
365
+ * associated with the connection.
366
+ * @param compress Specifies whether or not the queued batch requests
367
+ * should be compressed before being sent over the wire.
368
+ * @param exception The exception callback.
369
+ * @param sent The sent callback.
370
+ * @return A function that can be called to cancel the invocation locally.
371
+ */
188
372
  virtual ::std::function<void()>
189
- flushBatchRequestsAsync(::Ice::CompressBatch compress,
373
+ flushBatchRequestsAsync(CompressBatch compress,
190
374
  ::std::function<void(::std::exception_ptr)> exception,
191
375
  ::std::function<void(bool)> sent = nullptr) = 0;
192
376
 
377
+ /**
378
+ * Flush any pending batch requests for this connection.
379
+ * This means all batch requests invoked on fixed proxies
380
+ * associated with the connection.
381
+ * @param compress Specifies whether or not the queued batch requests
382
+ * should be compressed before being sent over the wire.
383
+ * @return The future object for the invocation.
384
+ */
193
385
  template<template<typename> class P = ::std::promise>
194
- auto flushBatchRequestsAsync(::Ice::CompressBatch compress)
386
+ auto flushBatchRequestsAsync(CompressBatch compress)
195
387
  -> decltype(::std::declval<P<void>>().get_future())
196
388
  {
197
389
  using Promise = P<void>;
@@ -208,19 +400,45 @@ public:
208
400
  return promise->get_future();
209
401
  }
210
402
 
211
- virtual void setCloseCallback(::Ice::CloseCallback) = 0;
212
-
213
- virtual void setHeartbeatCallback(::Ice::HeartbeatCallback) = 0;
214
-
403
+ /**
404
+ * Set a close callback on the connection. The callback is called by the
405
+ * connection when it's closed. The callback is called from the
406
+ * Ice thread pool associated with the connection. If the callback needs
407
+ * more information about the closure, it can call {@link Connection#throwException}.
408
+ * @param callback The close callback object.
409
+ */
410
+ virtual void setCloseCallback(CloseCallback callback) = 0;
411
+
412
+ /**
413
+ * Set a heartbeat callback on the connection. The callback is called by the
414
+ * connection when a heartbeat is received. The callback is called
415
+ * from the Ice thread pool associated with the connection.
416
+ * @param callback The heartbeat callback object.
417
+ */
418
+ virtual void setHeartbeatCallback(HeartbeatCallback callback) = 0;
419
+
420
+ /**
421
+ * Send a heartbeat message.
422
+ */
215
423
  virtual void heartbeat()
216
424
  {
217
425
  heartbeatAsync().get();
218
426
  }
219
427
 
428
+ /**
429
+ * Send a heartbeat message.
430
+ * @param exception The exception callback.
431
+ * @param sent The sent callback.
432
+ * @return A function that can be called to cancel the invocation locally.
433
+ */
220
434
  virtual ::std::function<void()>
221
435
  heartbeatAsync(::std::function<void(::std::exception_ptr)> exception,
222
436
  ::std::function<void(bool)> sent = nullptr) = 0;
223
437
 
438
+ /**
439
+ * Send a heartbeat message.
440
+ * @return The future object for the invocation.
441
+ */
224
442
  template<template<typename> class P = ::std::promise>
225
443
  auto heartbeatAsync()
226
444
  -> decltype(::std::declval<P<void>>().get_future())
@@ -238,23 +456,69 @@ public:
238
456
  return promise->get_future();
239
457
  }
240
458
 
241
- virtual void setACM(const Ice::optional<int>&, const Ice::optional<::Ice::ACMClose>&, const Ice::optional<::Ice::ACMHeartbeat>&) = 0;
242
-
243
- virtual ::Ice::ACM getACM() = 0;
244
-
245
- virtual ::std::string type() const = 0;
246
-
247
- virtual int timeout() const = 0;
248
-
249
- virtual ::std::string toString() const = 0;
250
-
459
+ /**
460
+ * Set the active connection management parameters.
461
+ * @param timeout The timeout value in seconds. It must be positive or 0, if a negative
462
+ * value is given, an invalid argument exception will be raised.
463
+ * @param close The close condition
464
+ * @param heartbeat The hertbeat condition
465
+ */
466
+ virtual void setACM(const Ice::optional<int>& timeout, const Ice::optional<ACMClose>& close, const Ice::optional<ACMHeartbeat>& heartbeat) = 0;
467
+
468
+ /**
469
+ * Get the ACM parameters.
470
+ * @return The ACM parameters.
471
+ */
472
+ virtual ::Ice::ACM getACM() noexcept = 0;
473
+
474
+ /**
475
+ * Return the connection type. This corresponds to the endpoint
476
+ * type, i.e., "tcp", "udp", etc.
477
+ * @return The type of the connection.
478
+ */
479
+ virtual ::std::string type() const noexcept = 0;
480
+
481
+ /**
482
+ * Get the timeout for the connection.
483
+ * @return The connection's timeout.
484
+ */
485
+ virtual int timeout() const noexcept = 0;
486
+
487
+ /**
488
+ * Return a description of the connection as human readable text,
489
+ * suitable for logging or error messages.
490
+ * @return The description of the connection as human readable
491
+ * text.
492
+ */
493
+ virtual ::std::string toString() const noexcept = 0;
494
+
495
+ /**
496
+ * Returns the connection information.
497
+ * @return The connection information.
498
+ */
251
499
  virtual ::std::shared_ptr<::Ice::ConnectionInfo> getInfo() const = 0;
252
500
 
253
- virtual void setBufferSize(int, int) = 0;
254
-
501
+ /**
502
+ * Set the connection buffer receive/send size.
503
+ * @param rcvSize The connection receive buffer size.
504
+ * @param sndSize The connection send buffer size.
505
+ */
506
+ virtual void setBufferSize(int rcvSize, int sndSize) = 0;
507
+
508
+ /**
509
+ * Throw an exception indicating the reason for connection closure. For example,
510
+ * {@link CloseConnectionException} is raised if the connection was closed gracefully,
511
+ * whereas {@link ConnectionManuallyClosedException} is raised if the connection was
512
+ * manually closed by the application. This operation does nothing if the connection is
513
+ * not yet closed.
514
+ */
255
515
  virtual void throwException() const = 0;
256
516
  };
257
517
 
518
+ /**
519
+ * Provides access to the connection details of an IP connection
520
+ * \headerfile Ice/Ice.h
521
+ */
258
522
  class ICE_CLASS(ICE_API) IPConnectionInfo : public ::Ice::ConnectionInfo
259
523
  {
260
524
  public:
@@ -262,9 +526,9 @@ public:
262
526
  ICE_MEMBER(ICE_API) virtual ~IPConnectionInfo();
263
527
 
264
528
  IPConnectionInfo() :
265
- localAddress(""),
529
+ localAddress(u8""),
266
530
  localPort(-1),
267
- remoteAddress(""),
531
+ remoteAddress(u8""),
268
532
  remotePort(-1)
269
533
  {
270
534
  }
@@ -274,21 +538,48 @@ public:
274
538
  IPConnectionInfo& operator=(const IPConnectionInfo&) = default;
275
539
  IPConnectionInfo& operator=(IPConnectionInfo&&) = default;
276
540
 
277
- IPConnectionInfo(const ::std::shared_ptr<::Ice::ConnectionInfo>& iceP_underlying, bool iceP_incoming, const ::std::string& iceP_adapterName, const ::std::string& iceP_connectionId, const ::std::string& iceP_localAddress, int iceP_localPort, const ::std::string& iceP_remoteAddress, int iceP_remotePort) :
278
- ::Ice::ConnectionInfo(::std::move(iceP_underlying), iceP_incoming, ::std::move(iceP_adapterName), ::std::move(iceP_connectionId)),
279
- localAddress(::std::move(iceP_localAddress)),
280
- localPort(iceP_localPort),
281
- remoteAddress(::std::move(iceP_remoteAddress)),
282
- remotePort(iceP_remotePort)
541
+ /**
542
+ * One-shot constructor to initialize all data members.
543
+ * @param underlying The information of the underyling transport or null if there's no underlying transport.
544
+ * @param incoming Whether or not the connection is an incoming or outgoing connection.
545
+ * @param adapterName The name of the adapter associated with the connection.
546
+ * @param connectionId The connection id.
547
+ * @param localAddress The local address.
548
+ * @param localPort The local port.
549
+ * @param remoteAddress The remote address.
550
+ * @param remotePort The remote port.
551
+ */
552
+ IPConnectionInfo(const ::std::shared_ptr<ConnectionInfo>& underlying, bool incoming, const ::std::string& adapterName, const ::std::string& connectionId, const ::std::string& localAddress, int localPort, const ::std::string& remoteAddress, int remotePort) :
553
+ ConnectionInfo(::std::move(underlying), incoming, ::std::move(adapterName), ::std::move(connectionId)),
554
+ localAddress(::std::move(localAddress)),
555
+ localPort(localPort),
556
+ remoteAddress(::std::move(remoteAddress)),
557
+ remotePort(remotePort)
283
558
  {
284
559
  }
285
560
 
561
+ /**
562
+ * The local address.
563
+ */
286
564
  ::std::string localAddress;
565
+ /**
566
+ * The local port.
567
+ */
287
568
  int localPort = -1;
569
+ /**
570
+ * The remote address.
571
+ */
288
572
  ::std::string remoteAddress;
573
+ /**
574
+ * The remote port.
575
+ */
289
576
  int remotePort = -1;
290
577
  };
291
578
 
579
+ /**
580
+ * Provides access to the connection details of a TCP connection
581
+ * \headerfile Ice/Ice.h
582
+ */
292
583
  class ICE_CLASS(ICE_API) TCPConnectionInfo : public ::Ice::IPConnectionInfo
293
584
  {
294
585
  public:
@@ -306,17 +597,40 @@ public:
306
597
  TCPConnectionInfo& operator=(const TCPConnectionInfo&) = default;
307
598
  TCPConnectionInfo& operator=(TCPConnectionInfo&&) = default;
308
599
 
309
- TCPConnectionInfo(const ::std::shared_ptr<::Ice::ConnectionInfo>& iceP_underlying, bool iceP_incoming, const ::std::string& iceP_adapterName, const ::std::string& iceP_connectionId, const ::std::string& iceP_localAddress, int iceP_localPort, const ::std::string& iceP_remoteAddress, int iceP_remotePort, int iceP_rcvSize, int iceP_sndSize) :
310
- ::Ice::IPConnectionInfo(::std::move(iceP_underlying), iceP_incoming, ::std::move(iceP_adapterName), ::std::move(iceP_connectionId), ::std::move(iceP_localAddress), iceP_localPort, ::std::move(iceP_remoteAddress), iceP_remotePort),
311
- rcvSize(iceP_rcvSize),
312
- sndSize(iceP_sndSize)
600
+ /**
601
+ * One-shot constructor to initialize all data members.
602
+ * @param underlying The information of the underyling transport or null if there's no underlying transport.
603
+ * @param incoming Whether or not the connection is an incoming or outgoing connection.
604
+ * @param adapterName The name of the adapter associated with the connection.
605
+ * @param connectionId The connection id.
606
+ * @param localAddress The local address.
607
+ * @param localPort The local port.
608
+ * @param remoteAddress The remote address.
609
+ * @param remotePort The remote port.
610
+ * @param rcvSize The connection buffer receive size.
611
+ * @param sndSize The connection buffer send size.
612
+ */
613
+ TCPConnectionInfo(const ::std::shared_ptr<ConnectionInfo>& underlying, bool incoming, const ::std::string& adapterName, const ::std::string& connectionId, const ::std::string& localAddress, int localPort, const ::std::string& remoteAddress, int remotePort, int rcvSize, int sndSize) :
614
+ IPConnectionInfo(::std::move(underlying), incoming, ::std::move(adapterName), ::std::move(connectionId), ::std::move(localAddress), localPort, ::std::move(remoteAddress), remotePort),
615
+ rcvSize(rcvSize),
616
+ sndSize(sndSize)
313
617
  {
314
618
  }
315
619
 
620
+ /**
621
+ * The connection buffer receive size.
622
+ */
316
623
  int rcvSize = 0;
624
+ /**
625
+ * The connection buffer send size.
626
+ */
317
627
  int sndSize = 0;
318
628
  };
319
629
 
630
+ /**
631
+ * Provides access to the connection details of a UDP connection
632
+ * \headerfile Ice/Ice.h
633
+ */
320
634
  class ICE_CLASS(ICE_API) UDPConnectionInfo : public ::Ice::IPConnectionInfo
321
635
  {
322
636
  public:
@@ -335,21 +649,52 @@ public:
335
649
  UDPConnectionInfo& operator=(const UDPConnectionInfo&) = default;
336
650
  UDPConnectionInfo& operator=(UDPConnectionInfo&&) = default;
337
651
 
338
- UDPConnectionInfo(const ::std::shared_ptr<::Ice::ConnectionInfo>& iceP_underlying, bool iceP_incoming, const ::std::string& iceP_adapterName, const ::std::string& iceP_connectionId, const ::std::string& iceP_localAddress, int iceP_localPort, const ::std::string& iceP_remoteAddress, int iceP_remotePort, const ::std::string& iceP_mcastAddress, int iceP_mcastPort, int iceP_rcvSize, int iceP_sndSize) :
339
- ::Ice::IPConnectionInfo(::std::move(iceP_underlying), iceP_incoming, ::std::move(iceP_adapterName), ::std::move(iceP_connectionId), ::std::move(iceP_localAddress), iceP_localPort, ::std::move(iceP_remoteAddress), iceP_remotePort),
340
- mcastAddress(::std::move(iceP_mcastAddress)),
341
- mcastPort(iceP_mcastPort),
342
- rcvSize(iceP_rcvSize),
343
- sndSize(iceP_sndSize)
652
+ /**
653
+ * One-shot constructor to initialize all data members.
654
+ * @param underlying The information of the underyling transport or null if there's no underlying transport.
655
+ * @param incoming Whether or not the connection is an incoming or outgoing connection.
656
+ * @param adapterName The name of the adapter associated with the connection.
657
+ * @param connectionId The connection id.
658
+ * @param localAddress The local address.
659
+ * @param localPort The local port.
660
+ * @param remoteAddress The remote address.
661
+ * @param remotePort The remote port.
662
+ * @param mcastAddress The multicast address.
663
+ * @param mcastPort The multicast port.
664
+ * @param rcvSize The connection buffer receive size.
665
+ * @param sndSize The connection buffer send size.
666
+ */
667
+ UDPConnectionInfo(const ::std::shared_ptr<ConnectionInfo>& underlying, bool incoming, const ::std::string& adapterName, const ::std::string& connectionId, const ::std::string& localAddress, int localPort, const ::std::string& remoteAddress, int remotePort, const ::std::string& mcastAddress, int mcastPort, int rcvSize, int sndSize) :
668
+ IPConnectionInfo(::std::move(underlying), incoming, ::std::move(adapterName), ::std::move(connectionId), ::std::move(localAddress), localPort, ::std::move(remoteAddress), remotePort),
669
+ mcastAddress(::std::move(mcastAddress)),
670
+ mcastPort(mcastPort),
671
+ rcvSize(rcvSize),
672
+ sndSize(sndSize)
344
673
  {
345
674
  }
346
675
 
676
+ /**
677
+ * The multicast address.
678
+ */
347
679
  ::std::string mcastAddress;
680
+ /**
681
+ * The multicast port.
682
+ */
348
683
  int mcastPort = -1;
684
+ /**
685
+ * The connection buffer receive size.
686
+ */
349
687
  int rcvSize = 0;
688
+ /**
689
+ * The connection buffer send size.
690
+ */
350
691
  int sndSize = 0;
351
692
  };
352
693
 
694
+ /**
695
+ * Provides access to the connection details of a WebSocket connection
696
+ * \headerfile Ice/Ice.h
697
+ */
353
698
  class ICE_CLASS(ICE_API) WSConnectionInfo : public ::Ice::ConnectionInfo
354
699
  {
355
700
  public:
@@ -363,22 +708,36 @@ public:
363
708
  WSConnectionInfo& operator=(const WSConnectionInfo&) = default;
364
709
  WSConnectionInfo& operator=(WSConnectionInfo&&) = default;
365
710
 
366
- WSConnectionInfo(const ::std::shared_ptr<::Ice::ConnectionInfo>& iceP_underlying, bool iceP_incoming, const ::std::string& iceP_adapterName, const ::std::string& iceP_connectionId, const ::Ice::HeaderDict& iceP_headers) :
367
- ::Ice::ConnectionInfo(::std::move(iceP_underlying), iceP_incoming, ::std::move(iceP_adapterName), ::std::move(iceP_connectionId)),
368
- headers(::std::move(iceP_headers))
711
+ /**
712
+ * One-shot constructor to initialize all data members.
713
+ * @param underlying The information of the underyling transport or null if there's no underlying transport.
714
+ * @param incoming Whether or not the connection is an incoming or outgoing connection.
715
+ * @param adapterName The name of the adapter associated with the connection.
716
+ * @param connectionId The connection id.
717
+ * @param headers The headers from the HTTP upgrade request.
718
+ */
719
+ WSConnectionInfo(const ::std::shared_ptr<ConnectionInfo>& underlying, bool incoming, const ::std::string& adapterName, const ::std::string& connectionId, const HeaderDict& headers) :
720
+ ConnectionInfo(::std::move(underlying), incoming, ::std::move(adapterName), ::std::move(connectionId)),
721
+ headers(::std::move(headers))
369
722
  {
370
723
  }
371
724
 
372
- ::Ice::HeaderDict headers;
725
+ /**
726
+ * The headers from the HTTP upgrade request.
727
+ */
728
+ HeaderDict headers;
373
729
  };
374
730
 
375
731
  }
376
732
 
733
+ /// \cond STREAM
377
734
  namespace Ice
378
735
  {
379
736
 
380
737
  }
738
+ /// \endcond
381
739
 
740
+ /// \cond INTERNAL
382
741
  namespace Ice
383
742
  {
384
743
 
@@ -395,6 +754,7 @@ using UDPConnectionInfoPtr = ::std::shared_ptr<UDPConnectionInfo>;
395
754
  using WSConnectionInfoPtr = ::std::shared_ptr<WSConnectionInfo>;
396
755
 
397
756
  }
757
+ /// \endcond
398
758
 
399
759
  #else // C++98 mapping
400
760
 
@@ -402,71 +762,148 @@ namespace Ice
402
762
  {
403
763
 
404
764
  class ConnectionInfo;
405
- ICE_API ::Ice::LocalObject* upCast(::Ice::ConnectionInfo*);
406
- typedef ::IceInternal::Handle< ::Ice::ConnectionInfo> ConnectionInfoPtr;
765
+ /// \cond INTERNAL
766
+ ICE_API LocalObject* upCast(ConnectionInfo*);
767
+ /// \endcond
768
+ typedef ::IceInternal::Handle< ConnectionInfo> ConnectionInfoPtr;
407
769
 
408
770
  class Connection;
409
- ICE_API ::Ice::LocalObject* upCast(::Ice::Connection*);
410
- typedef ::IceInternal::Handle< ::Ice::Connection> ConnectionPtr;
771
+ /// \cond INTERNAL
772
+ ICE_API LocalObject* upCast(Connection*);
773
+ /// \endcond
774
+ typedef ::IceInternal::Handle< Connection> ConnectionPtr;
411
775
 
412
776
  class CloseCallback;
413
- ICE_API ::Ice::LocalObject* upCast(::Ice::CloseCallback*);
414
- typedef ::IceInternal::Handle< ::Ice::CloseCallback> CloseCallbackPtr;
777
+ /// \cond INTERNAL
778
+ ICE_API LocalObject* upCast(CloseCallback*);
779
+ /// \endcond
780
+ typedef ::IceInternal::Handle< CloseCallback> CloseCallbackPtr;
415
781
 
416
782
  class HeartbeatCallback;
417
- ICE_API ::Ice::LocalObject* upCast(::Ice::HeartbeatCallback*);
418
- typedef ::IceInternal::Handle< ::Ice::HeartbeatCallback> HeartbeatCallbackPtr;
783
+ /// \cond INTERNAL
784
+ ICE_API LocalObject* upCast(HeartbeatCallback*);
785
+ /// \endcond
786
+ typedef ::IceInternal::Handle< HeartbeatCallback> HeartbeatCallbackPtr;
419
787
 
420
788
  class IPConnectionInfo;
421
- ICE_API ::Ice::LocalObject* upCast(::Ice::IPConnectionInfo*);
422
- typedef ::IceInternal::Handle< ::Ice::IPConnectionInfo> IPConnectionInfoPtr;
789
+ /// \cond INTERNAL
790
+ ICE_API LocalObject* upCast(IPConnectionInfo*);
791
+ /// \endcond
792
+ typedef ::IceInternal::Handle< IPConnectionInfo> IPConnectionInfoPtr;
423
793
 
424
794
  class TCPConnectionInfo;
425
- ICE_API ::Ice::LocalObject* upCast(::Ice::TCPConnectionInfo*);
426
- typedef ::IceInternal::Handle< ::Ice::TCPConnectionInfo> TCPConnectionInfoPtr;
795
+ /// \cond INTERNAL
796
+ ICE_API LocalObject* upCast(TCPConnectionInfo*);
797
+ /// \endcond
798
+ typedef ::IceInternal::Handle< TCPConnectionInfo> TCPConnectionInfoPtr;
427
799
 
428
800
  class UDPConnectionInfo;
429
- ICE_API ::Ice::LocalObject* upCast(::Ice::UDPConnectionInfo*);
430
- typedef ::IceInternal::Handle< ::Ice::UDPConnectionInfo> UDPConnectionInfoPtr;
801
+ /// \cond INTERNAL
802
+ ICE_API LocalObject* upCast(UDPConnectionInfo*);
803
+ /// \endcond
804
+ typedef ::IceInternal::Handle< UDPConnectionInfo> UDPConnectionInfoPtr;
431
805
 
432
806
  class WSConnectionInfo;
433
- ICE_API ::Ice::LocalObject* upCast(::Ice::WSConnectionInfo*);
434
- typedef ::IceInternal::Handle< ::Ice::WSConnectionInfo> WSConnectionInfoPtr;
807
+ /// \cond INTERNAL
808
+ ICE_API LocalObject* upCast(WSConnectionInfo*);
809
+ /// \endcond
810
+ typedef ::IceInternal::Handle< WSConnectionInfo> WSConnectionInfoPtr;
435
811
 
436
812
  }
437
813
 
438
814
  namespace Ice
439
815
  {
440
816
 
817
+ /**
818
+ * The batch compression option when flushing queued batch requests.
819
+ */
441
820
  enum CompressBatch
442
821
  {
822
+ /**
823
+ * Compress the batch requests.
824
+ */
443
825
  CompressBatchYes,
826
+ /**
827
+ * Don't compress the batch requests.
828
+ */
444
829
  CompressBatchNo,
830
+ /**
831
+ * Compress the batch requests if at least one request was
832
+ * made on a compressed proxy.
833
+ */
445
834
  CompressBatchBasedOnProxy
446
835
  };
447
836
 
837
+ /**
838
+ * Specifies the close semantics for Active Connection Management.
839
+ */
448
840
  enum ACMClose
449
841
  {
842
+ /**
843
+ * Disables automatic connection closure.
844
+ */
450
845
  CloseOff,
846
+ /**
847
+ * Gracefully closes a connection that has been idle for the configured timeout period.
848
+ */
451
849
  CloseOnIdle,
850
+ /**
851
+ * Forcefully closes a connection that has been idle for the configured timeout period,
852
+ * but only if the connection has pending invocations.
853
+ */
452
854
  CloseOnInvocation,
855
+ /**
856
+ * Combines the behaviors of CloseOnIdle and CloseOnInvocation.
857
+ */
453
858
  CloseOnInvocationAndIdle,
859
+ /**
860
+ * Forcefully closes a connection that has been idle for the configured timeout period,
861
+ * regardless of whether the connection has pending invocations or dispatch.
862
+ */
454
863
  CloseOnIdleForceful
455
864
  };
456
865
 
866
+ /**
867
+ * Specifies the heartbeat semantics for Active Connection Management.
868
+ */
457
869
  enum ACMHeartbeat
458
870
  {
871
+ /**
872
+ * Disables heartbeats.
873
+ */
459
874
  HeartbeatOff,
875
+ /**
876
+ * Send a heartbeat at regular intervals if the connection is idle and only if there are pending dispatch.
877
+ */
460
878
  HeartbeatOnDispatch,
879
+ /**
880
+ * Send a heartbeat at regular intervals when the connection is idle.
881
+ */
461
882
  HeartbeatOnIdle,
883
+ /**
884
+ * Send a heartbeat at regular intervals until the connection is closed.
885
+ */
462
886
  HeartbeatAlways
463
887
  };
464
888
 
889
+ /**
890
+ * A collection of Active Connection Management configuration settings.
891
+ * \headerfile Ice/Ice.h
892
+ */
465
893
  struct ACM
466
894
  {
467
- ::Ice::Int timeout;
468
- ::Ice::ACMClose close;
469
- ::Ice::ACMHeartbeat heartbeat;
895
+ /**
896
+ * A timeout value in seconds.
897
+ */
898
+ Int timeout;
899
+ /**
900
+ * The close semantics.
901
+ */
902
+ ACMClose close;
903
+ /**
904
+ * The heartbeat semantics.
905
+ */
906
+ ACMHeartbeat heartbeat;
470
907
 
471
908
  bool operator==(const ACM& rhs_) const
472
909
  {
@@ -540,13 +977,30 @@ struct ACM
540
977
  }
541
978
  };
542
979
 
980
+ /**
981
+ * Determines the behavior when manually closing a connection.
982
+ */
543
983
  enum ConnectionClose
544
984
  {
985
+ /**
986
+ * Close the connection immediately without sending a close connection protocol message to the peer
987
+ * and waiting for the peer to acknowledge it.
988
+ */
545
989
  ConnectionCloseForcefully,
990
+ /**
991
+ * Close the connection by notifying the peer but do not wait for pending outgoing invocations to complete.
992
+ * On the server side, the connection will not be closed until all incoming invocations have completed.
993
+ */
546
994
  ConnectionCloseGracefully,
995
+ /**
996
+ * Wait for all pending invocations to complete before closing the connection.
997
+ */
547
998
  ConnectionCloseGracefullyWithWait
548
999
  };
549
1000
 
1001
+ /**
1002
+ * A collection of HTTP headers.
1003
+ */
550
1004
  typedef ::std::map< ::std::string, ::std::string> HeaderDict;
551
1005
 
552
1006
  }
@@ -554,9 +1008,19 @@ typedef ::std::map< ::std::string, ::std::string> HeaderDict;
554
1008
  namespace Ice
555
1009
  {
556
1010
 
1011
+ /**
1012
+ * Base class for asynchronous callback wrapper classes used for calls to
1013
+ * IceProxy::Ice::Connection::begin_flushBatchRequests.
1014
+ * Create a wrapper instance by calling ::Ice::newCallback_Connection_flushBatchRequests.
1015
+ */
557
1016
  class Callback_Connection_flushBatchRequests_Base : public virtual ::IceInternal::CallbackBase { };
558
1017
  typedef ::IceUtil::Handle< Callback_Connection_flushBatchRequests_Base> Callback_Connection_flushBatchRequestsPtr;
559
1018
 
1019
+ /**
1020
+ * Base class for asynchronous callback wrapper classes used for calls to
1021
+ * IceProxy::Ice::Connection::begin_heartbeat.
1022
+ * Create a wrapper instance by calling ::Ice::newCallback_Connection_heartbeat.
1023
+ */
560
1024
  class Callback_Connection_heartbeat_Base : public virtual ::IceInternal::CallbackBase { };
561
1025
  typedef ::IceUtil::Handle< Callback_Connection_heartbeat_Base> Callback_Connection_heartbeatPtr;
562
1026
 
@@ -565,7 +1029,11 @@ typedef ::IceUtil::Handle< Callback_Connection_heartbeat_Base> Callback_Connecti
565
1029
  namespace Ice
566
1030
  {
567
1031
 
568
- class ICE_API ConnectionInfo : public virtual ::Ice::LocalObject
1032
+ /**
1033
+ * Base class providing access to the connection details. *
1034
+ * \headerfile Ice/Ice.h
1035
+ */
1036
+ class ICE_API ConnectionInfo : public virtual LocalObject
569
1037
  {
570
1038
  public:
571
1039
 
@@ -577,31 +1045,60 @@ public:
577
1045
  {
578
1046
  }
579
1047
 
580
- ConnectionInfo(const ::Ice::ConnectionInfoPtr& iceP_underlying, bool iceP_incoming, const ::std::string& iceP_adapterName, const ::std::string& iceP_connectionId) :
581
- underlying(iceP_underlying),
582
- incoming(iceP_incoming),
583
- adapterName(iceP_adapterName),
584
- connectionId(iceP_connectionId)
1048
+ /**
1049
+ * One-shot constructor to initialize all data members.
1050
+ * @param underlying The information of the underyling transport or null if there's no underlying transport.
1051
+ * @param incoming Whether or not the connection is an incoming or outgoing connection.
1052
+ * @param adapterName The name of the adapter associated with the connection.
1053
+ * @param connectionId The connection id.
1054
+ */
1055
+ ConnectionInfo(const ConnectionInfoPtr& underlying, bool incoming, const ::std::string& adapterName, const ::std::string& connectionId) :
1056
+ underlying(underlying),
1057
+ incoming(incoming),
1058
+ adapterName(adapterName),
1059
+ connectionId(connectionId)
585
1060
  {
586
1061
  }
587
1062
 
588
- ::Ice::ConnectionInfoPtr underlying;
1063
+ /**
1064
+ * The information of the underyling transport or null if there's
1065
+ * no underlying transport.
1066
+ */
1067
+ ConnectionInfoPtr underlying;
1068
+ /**
1069
+ * Whether or not the connection is an incoming or outgoing
1070
+ * connection.
1071
+ */
589
1072
  bool incoming;
1073
+ /**
1074
+ * The name of the adapter associated with the connection.
1075
+ */
590
1076
  ::std::string adapterName;
1077
+ /**
1078
+ * The connection id.
1079
+ */
591
1080
  ::std::string connectionId;
592
1081
  };
593
1082
 
1083
+ /// \cond INTERNAL
594
1084
  inline bool operator==(const ConnectionInfo& lhs, const ConnectionInfo& rhs)
595
1085
  {
596
- return static_cast<const ::Ice::LocalObject&>(lhs) == static_cast<const ::Ice::LocalObject&>(rhs);
1086
+ return static_cast<const LocalObject&>(lhs) == static_cast<const LocalObject&>(rhs);
597
1087
  }
598
1088
 
599
1089
  inline bool operator<(const ConnectionInfo& lhs, const ConnectionInfo& rhs)
600
1090
  {
601
- return static_cast<const ::Ice::LocalObject&>(lhs) < static_cast<const ::Ice::LocalObject&>(rhs);
1091
+ return static_cast<const LocalObject&>(lhs) < static_cast<const LocalObject&>(rhs);
602
1092
  }
603
-
604
- class ICE_API CloseCallback : public virtual ::Ice::LocalObject
1093
+ /// \endcond
1094
+
1095
+ /**
1096
+ * An application can implement this interface to receive notifications when
1097
+ * a connection closes.
1098
+ * @see Connection#setCloseCallback
1099
+ * \headerfile Ice/Ice.h
1100
+ */
1101
+ class ICE_API CloseCallback : public virtual LocalObject
605
1102
  {
606
1103
  public:
607
1104
 
@@ -609,20 +1106,34 @@ public:
609
1106
 
610
1107
  virtual ~CloseCallback();
611
1108
 
612
- virtual void closed(const ::Ice::ConnectionPtr&) = 0;
1109
+ /**
1110
+ * This method is called by the the connection when the connection
1111
+ * is closed. If the callback needs more information about the closure,
1112
+ * it can call {@link Connection#throwException}.
1113
+ * @param con The connection that closed.
1114
+ */
1115
+ virtual void closed(const ConnectionPtr& con) = 0;
613
1116
  };
614
1117
 
1118
+ /// \cond INTERNAL
615
1119
  inline bool operator==(const CloseCallback& lhs, const CloseCallback& rhs)
616
1120
  {
617
- return static_cast<const ::Ice::LocalObject&>(lhs) == static_cast<const ::Ice::LocalObject&>(rhs);
1121
+ return static_cast<const LocalObject&>(lhs) == static_cast<const LocalObject&>(rhs);
618
1122
  }
619
1123
 
620
1124
  inline bool operator<(const CloseCallback& lhs, const CloseCallback& rhs)
621
1125
  {
622
- return static_cast<const ::Ice::LocalObject&>(lhs) < static_cast<const ::Ice::LocalObject&>(rhs);
1126
+ return static_cast<const LocalObject&>(lhs) < static_cast<const LocalObject&>(rhs);
623
1127
  }
624
-
625
- class ICE_API HeartbeatCallback : public virtual ::Ice::LocalObject
1128
+ /// \endcond
1129
+
1130
+ /**
1131
+ * An application can implement this interface to receive notifications when
1132
+ * a connection receives a heartbeat message.
1133
+ * @see Connection#setHeartbeatCallback
1134
+ * \headerfile Ice/Ice.h
1135
+ */
1136
+ class ICE_API HeartbeatCallback : public virtual LocalObject
626
1137
  {
627
1138
  public:
628
1139
 
@@ -630,20 +1141,31 @@ public:
630
1141
 
631
1142
  virtual ~HeartbeatCallback();
632
1143
 
633
- virtual void heartbeat(const ::Ice::ConnectionPtr&) = 0;
1144
+ /**
1145
+ * This method is called by the the connection when a heartbeat is
1146
+ * received from the peer.
1147
+ * @param con The connection on which a heartbeat was received.
1148
+ */
1149
+ virtual void heartbeat(const ConnectionPtr& con) = 0;
634
1150
  };
635
1151
 
1152
+ /// \cond INTERNAL
636
1153
  inline bool operator==(const HeartbeatCallback& lhs, const HeartbeatCallback& rhs)
637
1154
  {
638
- return static_cast<const ::Ice::LocalObject&>(lhs) == static_cast<const ::Ice::LocalObject&>(rhs);
1155
+ return static_cast<const LocalObject&>(lhs) == static_cast<const LocalObject&>(rhs);
639
1156
  }
640
1157
 
641
1158
  inline bool operator<(const HeartbeatCallback& lhs, const HeartbeatCallback& rhs)
642
1159
  {
643
- return static_cast<const ::Ice::LocalObject&>(lhs) < static_cast<const ::Ice::LocalObject&>(rhs);
1160
+ return static_cast<const LocalObject&>(lhs) < static_cast<const LocalObject&>(rhs);
644
1161
  }
1162
+ /// \endcond
645
1163
 
646
- class ICE_API Connection : public virtual ::Ice::LocalObject
1164
+ /**
1165
+ * The user-level interface to a connection.
1166
+ * \headerfile Ice/Ice.h
1167
+ */
1168
+ class ICE_API Connection : public virtual LocalObject
647
1169
  {
648
1170
  public:
649
1171
 
@@ -651,68 +1173,237 @@ public:
651
1173
 
652
1174
  virtual ~Connection();
653
1175
 
654
- virtual void close(::Ice::ConnectionClose) = 0;
655
-
656
- virtual ::Ice::ObjectPrx createProxy(const ::Ice::Identity&) const = 0;
657
-
658
- virtual void setAdapter(const ::Ice::ObjectAdapterPtr&) = 0;
659
-
660
- virtual ::Ice::ObjectAdapterPtr getAdapter() const = 0;
661
-
662
- virtual ::Ice::EndpointPtr getEndpoint() const = 0;
663
-
664
- virtual void flushBatchRequests(::Ice::CompressBatch) = 0;
665
-
666
- virtual ::Ice::AsyncResultPtr begin_flushBatchRequests(::Ice::CompressBatch compress) = 0;
667
-
668
- virtual ::Ice::AsyncResultPtr begin_flushBatchRequests(::Ice::CompressBatch compress, const ::Ice::CallbackPtr& del, const ::Ice::LocalObjectPtr& cookie = 0) = 0;
669
-
670
- virtual ::Ice::AsyncResultPtr begin_flushBatchRequests(::Ice::CompressBatch compress, const ::Ice::Callback_Connection_flushBatchRequestsPtr& del, const ::Ice::LocalObjectPtr& cookie = 0) = 0;
671
-
672
- virtual void end_flushBatchRequests(const ::Ice::AsyncResultPtr&) = 0;
673
-
674
- virtual void setCloseCallback(const ::Ice::CloseCallbackPtr&) = 0;
675
-
676
- virtual void setHeartbeatCallback(const ::Ice::HeartbeatCallbackPtr&) = 0;
677
-
1176
+ /**
1177
+ * Manually close the connection using the specified closure mode.
1178
+ * @param mode Determines how the connection will be closed.
1179
+ * @see ConnectionClose
1180
+ */
1181
+ virtual void close(ConnectionClose mode) ICE_NOEXCEPT = 0;
1182
+
1183
+ /**
1184
+ * Create a special proxy that always uses this connection. This
1185
+ * can be used for callbacks from a server to a client if the
1186
+ * server cannot directly establish a connection to the client,
1187
+ * for example because of firewalls. In this case, the server
1188
+ * would create a proxy using an already established connection
1189
+ * from the client.
1190
+ * @param id The identity for which a proxy is to be created.
1191
+ * @return A proxy that matches the given identity and uses this
1192
+ * connection.
1193
+ * @see #setAdapter
1194
+ */
1195
+ virtual ObjectPrx createProxy(const Identity& id) const = 0;
1196
+
1197
+ /**
1198
+ * Explicitly set an object adapter that dispatches requests that
1199
+ * are received over this connection. A client can invoke an
1200
+ * operation on a server using a proxy, and then set an object
1201
+ * adapter for the outgoing connection that is used by the proxy
1202
+ * in order to receive callbacks. This is useful if the server
1203
+ * cannot establish a connection back to the client, for example
1204
+ * because of firewalls.
1205
+ * @param adapter The object adapter that should be used by this
1206
+ * connection to dispatch requests. The object adapter must be
1207
+ * activated. When the object adapter is deactivated, it is
1208
+ * automatically removed from the connection. Attempts to use a
1209
+ * deactivated object adapter raise {@link ObjectAdapterDeactivatedException}
1210
+ * @see #createProxy
1211
+ * @see #getAdapter
1212
+ */
1213
+ virtual void setAdapter(const ObjectAdapterPtr& adapter) = 0;
1214
+
1215
+ /**
1216
+ * Get the object adapter that dispatches requests for this
1217
+ * connection.
1218
+ * @return The object adapter that dispatches requests for the
1219
+ * connection, or null if no adapter is set.
1220
+ * @see #setAdapter
1221
+ */
1222
+ virtual ObjectAdapterPtr getAdapter() const ICE_NOEXCEPT = 0;
1223
+
1224
+ /**
1225
+ * Get the endpoint from which the connection was created.
1226
+ * @return The endpoint from which the connection was created.
1227
+ */
1228
+ virtual EndpointPtr getEndpoint() const ICE_NOEXCEPT = 0;
1229
+
1230
+ /**
1231
+ * Flush any pending batch requests for this connection.
1232
+ * This means all batch requests invoked on fixed proxies
1233
+ * associated with the connection.
1234
+ * @param compress Specifies whether or not the queued batch requests
1235
+ * should be compressed before being sent over the wire.
1236
+ */
1237
+ virtual void flushBatchRequests(CompressBatch compress) = 0;
1238
+
1239
+ /**
1240
+ * Flush any pending batch requests for this connection.
1241
+ * This means all batch requests invoked on fixed proxies
1242
+ * associated with the connection.
1243
+ * @param compress Specifies whether or not the queued batch requests
1244
+ * should be compressed before being sent over the wire.
1245
+ * @return The asynchronous result object for the invocation.
1246
+ */
1247
+ virtual AsyncResultPtr begin_flushBatchRequests(CompressBatch compress) = 0;
1248
+
1249
+ /**
1250
+ * Flush any pending batch requests for this connection.
1251
+ * This means all batch requests invoked on fixed proxies
1252
+ * associated with the connection.
1253
+ * @param compress Specifies whether or not the queued batch requests
1254
+ * should be compressed before being sent over the wire.
1255
+ * @param cb Callback to be invoked when the invocation completes
1256
+ * @param cookie Extra data to associate with the invocation.
1257
+ * @return The asynchronous result object for the invocation.
1258
+ */
1259
+ virtual AsyncResultPtr begin_flushBatchRequests(CompressBatch compress, const CallbackPtr& cb, const LocalObjectPtr& cookie = 0) = 0;
1260
+
1261
+ /**
1262
+ * Flush any pending batch requests for this connection.
1263
+ * This means all batch requests invoked on fixed proxies
1264
+ * associated with the connection.
1265
+ * @param compress Specifies whether or not the queued batch requests
1266
+ * should be compressed before being sent over the wire.
1267
+ * @param cb Callback to be invoked when the invocation completes
1268
+ * @param cookie Extra data to associate with the invocation.
1269
+ * @return The asynchronous result object for the invocation.
1270
+ */
1271
+ virtual AsyncResultPtr begin_flushBatchRequests(CompressBatch compress, const Callback_Connection_flushBatchRequestsPtr& cb, const LocalObjectPtr& cookie = 0) = 0;
1272
+
1273
+ /**
1274
+ * Flush any pending batch requests for this connection.
1275
+ * This means all batch requests invoked on fixed proxies
1276
+ * associated with the connection.
1277
+ * @param result The asynchronous result object returned by the begin_ method.
1278
+ */
1279
+ virtual void end_flushBatchRequests(const AsyncResultPtr& result) = 0;
1280
+
1281
+ /**
1282
+ * Set a close callback on the connection. The callback is called by the
1283
+ * connection when it's closed. The callback is called from the
1284
+ * Ice thread pool associated with the connection. If the callback needs
1285
+ * more information about the closure, it can call {@link Connection#throwException}.
1286
+ * @param callback The close callback object.
1287
+ */
1288
+ virtual void setCloseCallback(const CloseCallbackPtr& callback) = 0;
1289
+
1290
+ /**
1291
+ * Set a heartbeat callback on the connection. The callback is called by the
1292
+ * connection when a heartbeat is received. The callback is called
1293
+ * from the Ice thread pool associated with the connection.
1294
+ * @param callback The heartbeat callback object.
1295
+ */
1296
+ virtual void setHeartbeatCallback(const HeartbeatCallbackPtr& callback) = 0;
1297
+
1298
+ /**
1299
+ * Send a heartbeat message.
1300
+ */
678
1301
  virtual void heartbeat() = 0;
679
1302
 
680
- virtual ::Ice::AsyncResultPtr begin_heartbeat() = 0;
681
-
682
- virtual ::Ice::AsyncResultPtr begin_heartbeat(const ::Ice::CallbackPtr& del, const ::Ice::LocalObjectPtr& cookie = 0) = 0;
683
-
684
- virtual ::Ice::AsyncResultPtr begin_heartbeat(const ::Ice::Callback_Connection_heartbeatPtr& del, const ::Ice::LocalObjectPtr& cookie = 0) = 0;
685
-
686
- virtual void end_heartbeat(const ::Ice::AsyncResultPtr&) = 0;
687
-
688
- virtual void setACM(const IceUtil::Optional< ::Ice::Int>&, const IceUtil::Optional< ::Ice::ACMClose>&, const IceUtil::Optional< ::Ice::ACMHeartbeat>&) = 0;
689
-
690
- virtual ::Ice::ACM getACM() = 0;
691
-
692
- virtual ::std::string type() const = 0;
693
-
694
- virtual ::Ice::Int timeout() const = 0;
695
-
696
- virtual ::std::string toString() const = 0;
697
-
698
- virtual ::Ice::ConnectionInfoPtr getInfo() const = 0;
699
-
700
- virtual void setBufferSize(::Ice::Int, ::Ice::Int) = 0;
701
-
1303
+ /**
1304
+ * Send a heartbeat message.
1305
+ * @return The asynchronous result object for the invocation.
1306
+ */
1307
+ virtual AsyncResultPtr begin_heartbeat() = 0;
1308
+
1309
+ /**
1310
+ * Send a heartbeat message.
1311
+ * @param cb Callback to be invoked when the invocation completes
1312
+ * @param cookie Extra data to associate with the invocation.
1313
+ * @return The asynchronous result object for the invocation.
1314
+ */
1315
+ virtual AsyncResultPtr begin_heartbeat(const CallbackPtr& cb, const LocalObjectPtr& cookie = 0) = 0;
1316
+
1317
+ /**
1318
+ * Send a heartbeat message.
1319
+ * @param cb Callback to be invoked when the invocation completes
1320
+ * @param cookie Extra data to associate with the invocation.
1321
+ * @return The asynchronous result object for the invocation.
1322
+ */
1323
+ virtual AsyncResultPtr begin_heartbeat(const Callback_Connection_heartbeatPtr& cb, const LocalObjectPtr& cookie = 0) = 0;
1324
+
1325
+ /**
1326
+ * Send a heartbeat message.
1327
+ * @param result The asynchronous result object returned by the begin_ method.
1328
+ */
1329
+ virtual void end_heartbeat(const AsyncResultPtr& result) = 0;
1330
+
1331
+ /**
1332
+ * Set the active connection management parameters.
1333
+ * @param timeout The timeout value in seconds. It must be positive or 0, if a negative
1334
+ * value is given, an invalid argument exception will be raised.
1335
+ * @param close The close condition
1336
+ * @param heartbeat The hertbeat condition
1337
+ */
1338
+ virtual void setACM(const IceUtil::Optional<Int>& timeout, const IceUtil::Optional<ACMClose>& close, const IceUtil::Optional<ACMHeartbeat>& heartbeat) = 0;
1339
+
1340
+ /**
1341
+ * Get the ACM parameters.
1342
+ * @return The ACM parameters.
1343
+ */
1344
+ virtual ACM getACM() ICE_NOEXCEPT = 0;
1345
+
1346
+ /**
1347
+ * Return the connection type. This corresponds to the endpoint
1348
+ * type, i.e., "tcp", "udp", etc.
1349
+ * @return The type of the connection.
1350
+ */
1351
+ virtual ::std::string type() const ICE_NOEXCEPT = 0;
1352
+
1353
+ /**
1354
+ * Get the timeout for the connection.
1355
+ * @return The connection's timeout.
1356
+ */
1357
+ virtual Int timeout() const ICE_NOEXCEPT = 0;
1358
+
1359
+ /**
1360
+ * Return a description of the connection as human readable text,
1361
+ * suitable for logging or error messages.
1362
+ * @return The description of the connection as human readable
1363
+ * text.
1364
+ */
1365
+ virtual ::std::string toString() const ICE_NOEXCEPT = 0;
1366
+
1367
+ /**
1368
+ * Returns the connection information.
1369
+ * @return The connection information.
1370
+ */
1371
+ virtual ConnectionInfoPtr getInfo() const = 0;
1372
+
1373
+ /**
1374
+ * Set the connection buffer receive/send size.
1375
+ * @param rcvSize The connection receive buffer size.
1376
+ * @param sndSize The connection send buffer size.
1377
+ */
1378
+ virtual void setBufferSize(Int rcvSize, Int sndSize) = 0;
1379
+
1380
+ /**
1381
+ * Throw an exception indicating the reason for connection closure. For example,
1382
+ * {@link CloseConnectionException} is raised if the connection was closed gracefully,
1383
+ * whereas {@link ConnectionManuallyClosedException} is raised if the connection was
1384
+ * manually closed by the application. This operation does nothing if the connection is
1385
+ * not yet closed.
1386
+ */
702
1387
  virtual void throwException() const = 0;
703
1388
  };
704
1389
 
1390
+ /// \cond INTERNAL
705
1391
  inline bool operator==(const Connection& lhs, const Connection& rhs)
706
1392
  {
707
- return static_cast<const ::Ice::LocalObject&>(lhs) == static_cast<const ::Ice::LocalObject&>(rhs);
1393
+ return static_cast<const LocalObject&>(lhs) == static_cast<const LocalObject&>(rhs);
708
1394
  }
709
1395
 
710
1396
  inline bool operator<(const Connection& lhs, const Connection& rhs)
711
1397
  {
712
- return static_cast<const ::Ice::LocalObject&>(lhs) < static_cast<const ::Ice::LocalObject&>(rhs);
1398
+ return static_cast<const LocalObject&>(lhs) < static_cast<const LocalObject&>(rhs);
713
1399
  }
1400
+ /// \endcond
714
1401
 
715
- class ICE_API IPConnectionInfo : public ::Ice::ConnectionInfo
1402
+ /**
1403
+ * Provides access to the connection details of an IP connection
1404
+ * \headerfile Ice/Ice.h
1405
+ */
1406
+ class ICE_API IPConnectionInfo : public ConnectionInfo
716
1407
  {
717
1408
  public:
718
1409
 
@@ -720,6 +1411,7 @@ public:
720
1411
 
721
1412
  virtual ~IPConnectionInfo();
722
1413
 
1414
+ /** Default constructor that assigns default values to members as specified in the Slice definition. */
723
1415
  IPConnectionInfo() :
724
1416
  localAddress(""),
725
1417
  localPort(-1),
@@ -728,32 +1420,61 @@ public:
728
1420
  {
729
1421
  }
730
1422
 
731
- IPConnectionInfo(const ::Ice::ConnectionInfoPtr& iceP_underlying, bool iceP_incoming, const ::std::string& iceP_adapterName, const ::std::string& iceP_connectionId, const ::std::string& iceP_localAddress, ::Ice::Int iceP_localPort, const ::std::string& iceP_remoteAddress, ::Ice::Int iceP_remotePort) :
732
- ::Ice::ConnectionInfo(iceP_underlying, iceP_incoming, iceP_adapterName, iceP_connectionId),
733
- localAddress(iceP_localAddress),
734
- localPort(iceP_localPort),
735
- remoteAddress(iceP_remoteAddress),
736
- remotePort(iceP_remotePort)
1423
+ /**
1424
+ * One-shot constructor to initialize all data members.
1425
+ * @param underlying The information of the underyling transport or null if there's no underlying transport.
1426
+ * @param incoming Whether or not the connection is an incoming or outgoing connection.
1427
+ * @param adapterName The name of the adapter associated with the connection.
1428
+ * @param connectionId The connection id.
1429
+ * @param localAddress The local address.
1430
+ * @param localPort The local port.
1431
+ * @param remoteAddress The remote address.
1432
+ * @param remotePort The remote port.
1433
+ */
1434
+ IPConnectionInfo(const ConnectionInfoPtr& underlying, bool incoming, const ::std::string& adapterName, const ::std::string& connectionId, const ::std::string& localAddress, Int localPort, const ::std::string& remoteAddress, Int remotePort) :
1435
+ ::Ice::ConnectionInfo(underlying, incoming, adapterName, connectionId),
1436
+ localAddress(localAddress),
1437
+ localPort(localPort),
1438
+ remoteAddress(remoteAddress),
1439
+ remotePort(remotePort)
737
1440
  {
738
1441
  }
739
1442
 
1443
+ /**
1444
+ * The local address.
1445
+ */
740
1446
  ::std::string localAddress;
741
- ::Ice::Int localPort;
1447
+ /**
1448
+ * The local port.
1449
+ */
1450
+ Int localPort;
1451
+ /**
1452
+ * The remote address.
1453
+ */
742
1454
  ::std::string remoteAddress;
743
- ::Ice::Int remotePort;
1455
+ /**
1456
+ * The remote port.
1457
+ */
1458
+ Int remotePort;
744
1459
  };
745
1460
 
1461
+ /// \cond INTERNAL
746
1462
  inline bool operator==(const IPConnectionInfo& lhs, const IPConnectionInfo& rhs)
747
1463
  {
748
- return static_cast<const ::Ice::LocalObject&>(lhs) == static_cast<const ::Ice::LocalObject&>(rhs);
1464
+ return static_cast<const LocalObject&>(lhs) == static_cast<const LocalObject&>(rhs);
749
1465
  }
750
1466
 
751
1467
  inline bool operator<(const IPConnectionInfo& lhs, const IPConnectionInfo& rhs)
752
1468
  {
753
- return static_cast<const ::Ice::LocalObject&>(lhs) < static_cast<const ::Ice::LocalObject&>(rhs);
1469
+ return static_cast<const LocalObject&>(lhs) < static_cast<const LocalObject&>(rhs);
754
1470
  }
1471
+ /// \endcond
755
1472
 
756
- class ICE_API TCPConnectionInfo : public ::Ice::IPConnectionInfo
1473
+ /**
1474
+ * Provides access to the connection details of a TCP connection
1475
+ * \headerfile Ice/Ice.h
1476
+ */
1477
+ class ICE_API TCPConnectionInfo : public IPConnectionInfo
757
1478
  {
758
1479
  public:
759
1480
 
@@ -761,34 +1482,60 @@ public:
761
1482
 
762
1483
  virtual ~TCPConnectionInfo();
763
1484
 
1485
+ /** Default constructor that assigns default values to members as specified in the Slice definition. */
764
1486
  TCPConnectionInfo() :
765
1487
  rcvSize(0),
766
1488
  sndSize(0)
767
1489
  {
768
1490
  }
769
1491
 
770
- TCPConnectionInfo(const ::Ice::ConnectionInfoPtr& iceP_underlying, bool iceP_incoming, const ::std::string& iceP_adapterName, const ::std::string& iceP_connectionId, const ::std::string& iceP_localAddress, ::Ice::Int iceP_localPort, const ::std::string& iceP_remoteAddress, ::Ice::Int iceP_remotePort, ::Ice::Int iceP_rcvSize, ::Ice::Int iceP_sndSize) :
771
- ::Ice::IPConnectionInfo(iceP_underlying, iceP_incoming, iceP_adapterName, iceP_connectionId, iceP_localAddress, iceP_localPort, iceP_remoteAddress, iceP_remotePort),
772
- rcvSize(iceP_rcvSize),
773
- sndSize(iceP_sndSize)
1492
+ /**
1493
+ * One-shot constructor to initialize all data members.
1494
+ * @param underlying The information of the underyling transport or null if there's no underlying transport.
1495
+ * @param incoming Whether or not the connection is an incoming or outgoing connection.
1496
+ * @param adapterName The name of the adapter associated with the connection.
1497
+ * @param connectionId The connection id.
1498
+ * @param localAddress The local address.
1499
+ * @param localPort The local port.
1500
+ * @param remoteAddress The remote address.
1501
+ * @param remotePort The remote port.
1502
+ * @param rcvSize The connection buffer receive size.
1503
+ * @param sndSize The connection buffer send size.
1504
+ */
1505
+ TCPConnectionInfo(const ConnectionInfoPtr& underlying, bool incoming, const ::std::string& adapterName, const ::std::string& connectionId, const ::std::string& localAddress, Int localPort, const ::std::string& remoteAddress, Int remotePort, Int rcvSize, Int sndSize) :
1506
+ ::Ice::IPConnectionInfo(underlying, incoming, adapterName, connectionId, localAddress, localPort, remoteAddress, remotePort),
1507
+ rcvSize(rcvSize),
1508
+ sndSize(sndSize)
774
1509
  {
775
1510
  }
776
1511
 
777
- ::Ice::Int rcvSize;
778
- ::Ice::Int sndSize;
1512
+ /**
1513
+ * The connection buffer receive size.
1514
+ */
1515
+ Int rcvSize;
1516
+ /**
1517
+ * The connection buffer send size.
1518
+ */
1519
+ Int sndSize;
779
1520
  };
780
1521
 
1522
+ /// \cond INTERNAL
781
1523
  inline bool operator==(const TCPConnectionInfo& lhs, const TCPConnectionInfo& rhs)
782
1524
  {
783
- return static_cast<const ::Ice::LocalObject&>(lhs) == static_cast<const ::Ice::LocalObject&>(rhs);
1525
+ return static_cast<const LocalObject&>(lhs) == static_cast<const LocalObject&>(rhs);
784
1526
  }
785
1527
 
786
1528
  inline bool operator<(const TCPConnectionInfo& lhs, const TCPConnectionInfo& rhs)
787
1529
  {
788
- return static_cast<const ::Ice::LocalObject&>(lhs) < static_cast<const ::Ice::LocalObject&>(rhs);
1530
+ return static_cast<const LocalObject&>(lhs) < static_cast<const LocalObject&>(rhs);
789
1531
  }
1532
+ /// \endcond
790
1533
 
791
- class ICE_API UDPConnectionInfo : public ::Ice::IPConnectionInfo
1534
+ /**
1535
+ * Provides access to the connection details of a UDP connection
1536
+ * \headerfile Ice/Ice.h
1537
+ */
1538
+ class ICE_API UDPConnectionInfo : public IPConnectionInfo
792
1539
  {
793
1540
  public:
794
1541
 
@@ -796,6 +1543,7 @@ public:
796
1543
 
797
1544
  virtual ~UDPConnectionInfo();
798
1545
 
1546
+ /** Default constructor that assigns default values to members as specified in the Slice definition. */
799
1547
  UDPConnectionInfo() :
800
1548
  mcastPort(-1),
801
1549
  rcvSize(0),
@@ -803,32 +1551,65 @@ public:
803
1551
  {
804
1552
  }
805
1553
 
806
- UDPConnectionInfo(const ::Ice::ConnectionInfoPtr& iceP_underlying, bool iceP_incoming, const ::std::string& iceP_adapterName, const ::std::string& iceP_connectionId, const ::std::string& iceP_localAddress, ::Ice::Int iceP_localPort, const ::std::string& iceP_remoteAddress, ::Ice::Int iceP_remotePort, const ::std::string& iceP_mcastAddress, ::Ice::Int iceP_mcastPort, ::Ice::Int iceP_rcvSize, ::Ice::Int iceP_sndSize) :
807
- ::Ice::IPConnectionInfo(iceP_underlying, iceP_incoming, iceP_adapterName, iceP_connectionId, iceP_localAddress, iceP_localPort, iceP_remoteAddress, iceP_remotePort),
808
- mcastAddress(iceP_mcastAddress),
809
- mcastPort(iceP_mcastPort),
810
- rcvSize(iceP_rcvSize),
811
- sndSize(iceP_sndSize)
1554
+ /**
1555
+ * One-shot constructor to initialize all data members.
1556
+ * @param underlying The information of the underyling transport or null if there's no underlying transport.
1557
+ * @param incoming Whether or not the connection is an incoming or outgoing connection.
1558
+ * @param adapterName The name of the adapter associated with the connection.
1559
+ * @param connectionId The connection id.
1560
+ * @param localAddress The local address.
1561
+ * @param localPort The local port.
1562
+ * @param remoteAddress The remote address.
1563
+ * @param remotePort The remote port.
1564
+ * @param mcastAddress The multicast address.
1565
+ * @param mcastPort The multicast port.
1566
+ * @param rcvSize The connection buffer receive size.
1567
+ * @param sndSize The connection buffer send size.
1568
+ */
1569
+ UDPConnectionInfo(const ConnectionInfoPtr& underlying, bool incoming, const ::std::string& adapterName, const ::std::string& connectionId, const ::std::string& localAddress, Int localPort, const ::std::string& remoteAddress, Int remotePort, const ::std::string& mcastAddress, Int mcastPort, Int rcvSize, Int sndSize) :
1570
+ ::Ice::IPConnectionInfo(underlying, incoming, adapterName, connectionId, localAddress, localPort, remoteAddress, remotePort),
1571
+ mcastAddress(mcastAddress),
1572
+ mcastPort(mcastPort),
1573
+ rcvSize(rcvSize),
1574
+ sndSize(sndSize)
812
1575
  {
813
1576
  }
814
1577
 
1578
+ /**
1579
+ * The multicast address.
1580
+ */
815
1581
  ::std::string mcastAddress;
816
- ::Ice::Int mcastPort;
817
- ::Ice::Int rcvSize;
818
- ::Ice::Int sndSize;
1582
+ /**
1583
+ * The multicast port.
1584
+ */
1585
+ Int mcastPort;
1586
+ /**
1587
+ * The connection buffer receive size.
1588
+ */
1589
+ Int rcvSize;
1590
+ /**
1591
+ * The connection buffer send size.
1592
+ */
1593
+ Int sndSize;
819
1594
  };
820
1595
 
1596
+ /// \cond INTERNAL
821
1597
  inline bool operator==(const UDPConnectionInfo& lhs, const UDPConnectionInfo& rhs)
822
1598
  {
823
- return static_cast<const ::Ice::LocalObject&>(lhs) == static_cast<const ::Ice::LocalObject&>(rhs);
1599
+ return static_cast<const LocalObject&>(lhs) == static_cast<const LocalObject&>(rhs);
824
1600
  }
825
1601
 
826
1602
  inline bool operator<(const UDPConnectionInfo& lhs, const UDPConnectionInfo& rhs)
827
1603
  {
828
- return static_cast<const ::Ice::LocalObject&>(lhs) < static_cast<const ::Ice::LocalObject&>(rhs);
1604
+ return static_cast<const LocalObject&>(lhs) < static_cast<const LocalObject&>(rhs);
829
1605
  }
1606
+ /// \endcond
830
1607
 
831
- class ICE_API WSConnectionInfo : public ::Ice::ConnectionInfo
1608
+ /**
1609
+ * Provides access to the connection details of a WebSocket connection
1610
+ * \headerfile Ice/Ice.h
1611
+ */
1612
+ class ICE_API WSConnectionInfo : public ConnectionInfo
832
1613
  {
833
1614
  public:
834
1615
 
@@ -840,31 +1621,46 @@ public:
840
1621
  {
841
1622
  }
842
1623
 
843
- WSConnectionInfo(const ::Ice::ConnectionInfoPtr& iceP_underlying, bool iceP_incoming, const ::std::string& iceP_adapterName, const ::std::string& iceP_connectionId, const ::Ice::HeaderDict& iceP_headers) :
844
- ::Ice::ConnectionInfo(iceP_underlying, iceP_incoming, iceP_adapterName, iceP_connectionId),
845
- headers(iceP_headers)
1624
+ /**
1625
+ * One-shot constructor to initialize all data members.
1626
+ * @param underlying The information of the underyling transport or null if there's no underlying transport.
1627
+ * @param incoming Whether or not the connection is an incoming or outgoing connection.
1628
+ * @param adapterName The name of the adapter associated with the connection.
1629
+ * @param connectionId The connection id.
1630
+ * @param headers The headers from the HTTP upgrade request.
1631
+ */
1632
+ WSConnectionInfo(const ConnectionInfoPtr& underlying, bool incoming, const ::std::string& adapterName, const ::std::string& connectionId, const HeaderDict& headers) :
1633
+ ::Ice::ConnectionInfo(underlying, incoming, adapterName, connectionId),
1634
+ headers(headers)
846
1635
  {
847
1636
  }
848
1637
 
849
- ::Ice::HeaderDict headers;
1638
+ /**
1639
+ * The headers from the HTTP upgrade request.
1640
+ */
1641
+ HeaderDict headers;
850
1642
  };
851
1643
 
1644
+ /// \cond INTERNAL
852
1645
  inline bool operator==(const WSConnectionInfo& lhs, const WSConnectionInfo& rhs)
853
1646
  {
854
- return static_cast<const ::Ice::LocalObject&>(lhs) == static_cast<const ::Ice::LocalObject&>(rhs);
1647
+ return static_cast<const LocalObject&>(lhs) == static_cast<const LocalObject&>(rhs);
855
1648
  }
856
1649
 
857
1650
  inline bool operator<(const WSConnectionInfo& lhs, const WSConnectionInfo& rhs)
858
1651
  {
859
- return static_cast<const ::Ice::LocalObject&>(lhs) < static_cast<const ::Ice::LocalObject&>(rhs);
1652
+ return static_cast<const LocalObject&>(lhs) < static_cast<const LocalObject&>(rhs);
860
1653
  }
1654
+ /// \endcond
861
1655
 
862
1656
  }
863
1657
 
1658
+ /// \cond STREAM
864
1659
  namespace Ice
865
1660
  {
866
1661
 
867
1662
  }
1663
+ /// \endcond
868
1664
 
869
1665
  #endif
870
1666