zeroc-ice 3.7.0 → 3.7.5

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