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 ImplicitContext;
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 ImplicitContextPtr = ::std::shared_ptr<ImplicitContext>;
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 ImplicitContext;
85
- ICE_API ::Ice::LocalObject* upCast(::Ice::ImplicitContext*);
86
- typedef ::IceInternal::Handle< ::Ice::ImplicitContext> ImplicitContextPtr;
84
+ /// \cond INTERNAL
85
+ ICE_API LocalObject* upCast(ImplicitContext*);
86
+ /// \endcond
87
+ typedef ::IceInternal::Handle< ImplicitContext> ImplicitContextPtr;
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
  //
@@ -40,10 +35,10 @@
40
35
  # if ICE_INT_VERSION / 100 != 307
41
36
  # error Ice version mismatch!
42
37
  # endif
43
- # if ICE_INT_VERSION % 100 > 50
38
+ # if ICE_INT_VERSION % 100 >= 50
44
39
  # error Beta header file detected
45
40
  # endif
46
- # if ICE_INT_VERSION % 100 < 0
41
+ # if ICE_INT_VERSION % 100 < 5
47
42
  # error Ice patch level mismatch!
48
43
  # endif
49
44
  #endif
@@ -88,20 +83,61 @@ namespace Ice
88
83
  namespace Instrumentation
89
84
  {
90
85
 
86
+ /**
87
+ * The thread state enumeration keeps track of the different possible
88
+ * states of Ice threads.
89
+ */
91
90
  enum class ThreadState : unsigned char
92
91
  {
92
+ /**
93
+ * The thread is idle.
94
+ */
93
95
  ThreadStateIdle,
96
+ /**
97
+ * The thread is in use performing reads or writes for Ice
98
+ * connections. This state is only for threads from an Ice thread
99
+ * pool.
100
+ */
94
101
  ThreadStateInUseForIO,
102
+ /**
103
+ * The thread is calling user code (servant implementation, AMI
104
+ * callbacks). This state is only for threads from an Ice thread
105
+ * pool.
106
+ */
95
107
  ThreadStateInUseForUser,
108
+ /**
109
+ * The thread is performing other internal activities (DNS
110
+ * lookups, timer callbacks, etc).
111
+ */
96
112
  ThreadStateInUseForOther
97
113
  };
98
114
 
115
+ /**
116
+ * The state of an Ice connection.
117
+ */
99
118
  enum class ConnectionState : unsigned char
100
119
  {
120
+ /**
121
+ * The connection is being validated.
122
+ */
101
123
  ConnectionStateValidating,
124
+ /**
125
+ * The connection is holding the reception of new messages.
126
+ */
102
127
  ConnectionStateHolding,
128
+ /**
129
+ * The connection is active and can send and receive messages.
130
+ */
103
131
  ConnectionStateActive,
132
+ /**
133
+ * The connection is being gracefully shutdown and waits for the
134
+ * peer to close its end of the connection.
135
+ */
104
136
  ConnectionStateClosing,
137
+ /**
138
+ * The connection is closed and waits for potential dispatch to be
139
+ * finished before being destroyed and detached from the observer.
140
+ */
105
141
  ConnectionStateClosed
106
142
  };
107
143
 
@@ -115,59 +151,124 @@ namespace Ice
115
151
  namespace Instrumentation
116
152
  {
117
153
 
154
+ /**
155
+ * The object observer interface used by instrumented objects to
156
+ * notify the observer of their existence.
157
+ * \headerfile Ice/Ice.h
158
+ */
118
159
  class ICE_CLASS(ICE_API) Observer
119
160
  {
120
161
  public:
121
162
 
122
163
  ICE_MEMBER(ICE_API) virtual ~Observer();
123
164
 
165
+ /**
166
+ * This method is called when the instrumented object is created
167
+ * or when the observer is attached to an existing object.
168
+ */
124
169
  virtual void attach() = 0;
125
170
 
171
+ /**
172
+ * This method is called when the instrumented object is destroyed
173
+ * and as a result the observer detached from the object.
174
+ */
126
175
  virtual void detach() = 0;
127
176
 
128
- virtual void failed(const ::std::string&) = 0;
177
+ /**
178
+ * Notification of a failure.
179
+ * @param exceptionName The name of the exception.
180
+ */
181
+ virtual void failed(const ::std::string& exceptionName) = 0;
129
182
  };
130
183
 
184
+ /**
185
+ * The thread observer interface to instrument Ice threads. This can
186
+ * be threads from the Ice thread pool or utility threads used by the
187
+ * Ice core.
188
+ * \headerfile Ice/Ice.h
189
+ */
131
190
  class ICE_CLASS(ICE_API) ThreadObserver : public virtual ::Ice::Instrumentation::Observer
132
191
  {
133
192
  public:
134
193
 
135
194
  ICE_MEMBER(ICE_API) virtual ~ThreadObserver();
136
195
 
137
- virtual void stateChanged(::Ice::Instrumentation::ThreadState, ::Ice::Instrumentation::ThreadState) = 0;
196
+ /**
197
+ * Notification of thread state change.
198
+ * @param oldState The previous thread state.
199
+ * @param newState The new thread state.
200
+ */
201
+ virtual void stateChanged(ThreadState oldState, ThreadState newState) = 0;
138
202
  };
139
203
 
204
+ /**
205
+ * The connection observer interface to instrument Ice connections.
206
+ * \headerfile Ice/Ice.h
207
+ */
140
208
  class ICE_CLASS(ICE_API) ConnectionObserver : public virtual ::Ice::Instrumentation::Observer
141
209
  {
142
210
  public:
143
211
 
144
212
  ICE_MEMBER(ICE_API) virtual ~ConnectionObserver();
145
213
 
146
- virtual void sentBytes(int) = 0;
147
-
148
- virtual void receivedBytes(int) = 0;
214
+ /**
215
+ * Notification of sent bytes over the connection.
216
+ * @param num The number of bytes sent.
217
+ */
218
+ virtual void sentBytes(int num) = 0;
219
+
220
+ /**
221
+ * Notification of received bytes over the connection.
222
+ * @param num The number of bytes received.
223
+ */
224
+ virtual void receivedBytes(int num) = 0;
149
225
  };
150
226
 
227
+ /**
228
+ * The dispatch observer to instrument servant dispatch.
229
+ * \headerfile Ice/Ice.h
230
+ */
151
231
  class ICE_CLASS(ICE_API) DispatchObserver : public virtual ::Ice::Instrumentation::Observer
152
232
  {
153
233
  public:
154
234
 
155
235
  ICE_MEMBER(ICE_API) virtual ~DispatchObserver();
156
236
 
237
+ /**
238
+ * Notification of a user exception.
239
+ */
157
240
  virtual void userException() = 0;
158
241
 
159
- virtual void reply(int) = 0;
242
+ /**
243
+ * Reply notification.
244
+ * @param size The size of the reply.
245
+ */
246
+ virtual void reply(int size) = 0;
160
247
  };
161
248
 
249
+ /**
250
+ * The child invocation observer to instrument remote or collocated
251
+ * invocations.
252
+ * \headerfile Ice/Ice.h
253
+ */
162
254
  class ICE_CLASS(ICE_API) ChildInvocationObserver : public virtual ::Ice::Instrumentation::Observer
163
255
  {
164
256
  public:
165
257
 
166
258
  ICE_MEMBER(ICE_API) virtual ~ChildInvocationObserver();
167
259
 
168
- virtual void reply(int) = 0;
260
+ /**
261
+ * Reply notification.
262
+ * @param size The size of the reply.
263
+ */
264
+ virtual void reply(int size) = 0;
169
265
  };
170
266
 
267
+ /**
268
+ * The remote observer to instrument invocations that are sent over
269
+ * the wire.
270
+ * \headerfile Ice/Ice.h
271
+ */
171
272
  class ICE_CLASS(ICE_API) RemoteObserver : public virtual ::Ice::Instrumentation::ChildInvocationObserver
172
273
  {
173
274
  public:
@@ -175,6 +276,11 @@ public:
175
276
  ICE_MEMBER(ICE_API) virtual ~RemoteObserver();
176
277
  };
177
278
 
279
+ /**
280
+ * The collocated observer to instrument invocations that are
281
+ * collocated.
282
+ * \headerfile Ice/Ice.h
283
+ */
178
284
  class ICE_CLASS(ICE_API) CollocatedObserver : public virtual ::Ice::Instrumentation::ChildInvocationObserver
179
285
  {
180
286
  public:
@@ -182,65 +288,207 @@ public:
182
288
  ICE_MEMBER(ICE_API) virtual ~CollocatedObserver();
183
289
  };
184
290
 
291
+ /**
292
+ * The invocation observer to instrument invocations on proxies. A
293
+ * proxy invocation can either result in a collocated or remote
294
+ * invocation. If it results in a remote invocation, a sub-observer is
295
+ * requested for the remote invocation.
296
+ * \headerfile Ice/Ice.h
297
+ */
185
298
  class ICE_CLASS(ICE_API) InvocationObserver : public virtual ::Ice::Instrumentation::Observer
186
299
  {
187
300
  public:
188
301
 
189
302
  ICE_MEMBER(ICE_API) virtual ~InvocationObserver();
190
303
 
304
+ /**
305
+ * Notification of the invocation being retried.
306
+ */
191
307
  virtual void retried() = 0;
192
308
 
309
+ /**
310
+ * Notification of a user exception.
311
+ */
193
312
  virtual void userException() = 0;
194
313
 
195
- virtual ::std::shared_ptr<::Ice::Instrumentation::RemoteObserver> getRemoteObserver(const ::std::shared_ptr<::Ice::ConnectionInfo>&, const ::std::shared_ptr<::Ice::Endpoint>&, int, int) = 0;
196
-
197
- virtual ::std::shared_ptr<::Ice::Instrumentation::CollocatedObserver> getCollocatedObserver(const ::std::shared_ptr<::Ice::ObjectAdapter>&, int, int) = 0;
314
+ /**
315
+ * Get a remote observer for this invocation.
316
+ * @param con The connection information.
317
+ * @param endpt The connection endpoint.
318
+ * @param requestId The ID of the invocation.
319
+ * @param size The size of the invocation.
320
+ * @return The observer to instrument the remote invocation.
321
+ */
322
+ virtual ::std::shared_ptr<::Ice::Instrumentation::RemoteObserver> getRemoteObserver(const ::std::shared_ptr<::Ice::ConnectionInfo>& con, const ::std::shared_ptr<::Ice::Endpoint>& endpt, int requestId, int size) = 0;
323
+
324
+ /**
325
+ * Get a collocated observer for this invocation.
326
+ * @param adapter The object adapter hosting the collocated Ice object.
327
+ * @param requestId The ID of the invocation.
328
+ * @param size The size of the invocation.
329
+ * @return The observer to instrument the collocated invocation.
330
+ */
331
+ virtual ::std::shared_ptr<::Ice::Instrumentation::CollocatedObserver> getCollocatedObserver(const ::std::shared_ptr<::Ice::ObjectAdapter>& adapter, int requestId, int size) = 0;
198
332
  };
199
333
 
334
+ /**
335
+ * The observer updater interface. This interface is implemented by
336
+ * the Ice run-time and an instance of this interface is provided by
337
+ * the Ice communicator on initialization to the
338
+ * {@link CommunicatorObserver} object set with the communicator
339
+ * initialization data. The Ice communicator calls
340
+ * {@link CommunicatorObserver#setObserverUpdater} to provide the observer
341
+ * updater.
342
+ *
343
+ * This interface can be used by add-ins implementing the
344
+ * {@link CommunicatorObserver} interface to update the observers of
345
+ * connections and threads.
346
+ * \headerfile Ice/Ice.h
347
+ */
200
348
  class ICE_CLASS(ICE_API) ObserverUpdater
201
349
  {
202
350
  public:
203
351
 
204
352
  ICE_MEMBER(ICE_API) virtual ~ObserverUpdater();
205
353
 
354
+ /**
355
+ * Update connection observers associated with each of the Ice
356
+ * connection from the communicator and its object adapters.
357
+ *
358
+ * When called, this method goes through all the connections and
359
+ * for each connection {@link CommunicatorObserver#getConnectionObserver}
360
+ * is called. The implementation of getConnectionObserver has the
361
+ * possibility to return an updated observer if necessary.
362
+ */
206
363
  virtual void updateConnectionObservers() = 0;
207
364
 
365
+ /**
366
+ * Update thread observers associated with each of the Ice thread
367
+ * from the communicator and its object adapters.
368
+ *
369
+ * When called, this method goes through all the threads and for
370
+ * each thread {@link CommunicatorObserver#getThreadObserver} is
371
+ * called. The implementation of getThreadObserver has the
372
+ * possibility to return an updated observer if necessary.
373
+ */
208
374
  virtual void updateThreadObservers() = 0;
209
375
  };
210
376
 
377
+ /**
378
+ * The communicator observer interface used by the Ice run-time to
379
+ * obtain and update observers for its observable objects. This
380
+ * interface should be implemented by add-ins that wish to observe Ice
381
+ * objects in order to collect statistics. An instance of this
382
+ * interface can be provided to the Ice run-time through the Ice
383
+ * communicator initialization data.
384
+ * \headerfile Ice/Ice.h
385
+ */
211
386
  class ICE_CLASS(ICE_API) CommunicatorObserver
212
387
  {
213
388
  public:
214
389
 
215
390
  ICE_MEMBER(ICE_API) virtual ~CommunicatorObserver();
216
391
 
217
- virtual ::std::shared_ptr<::Ice::Instrumentation::Observer> getConnectionEstablishmentObserver(const ::std::shared_ptr<::Ice::Endpoint>&, const ::std::string&) = 0;
218
-
219
- virtual ::std::shared_ptr<::Ice::Instrumentation::Observer> getEndpointLookupObserver(const ::std::shared_ptr<::Ice::Endpoint>&) = 0;
220
-
221
- virtual ::std::shared_ptr<::Ice::Instrumentation::ConnectionObserver> getConnectionObserver(const ::std::shared_ptr<::Ice::ConnectionInfo>&, const ::std::shared_ptr<::Ice::Endpoint>&, ::Ice::Instrumentation::ConnectionState, const ::std::shared_ptr<::Ice::Instrumentation::ConnectionObserver>&) = 0;
222
-
223
- virtual ::std::shared_ptr<::Ice::Instrumentation::ThreadObserver> getThreadObserver(const ::std::string&, const ::std::string&, ::Ice::Instrumentation::ThreadState, const ::std::shared_ptr<::Ice::Instrumentation::ThreadObserver>&) = 0;
224
-
225
- virtual ::std::shared_ptr<::Ice::Instrumentation::InvocationObserver> getInvocationObserver(const ::std::shared_ptr<::Ice::ObjectPrx>&, const ::std::string&, const ::Ice::Context&) = 0;
226
-
227
- virtual ::std::shared_ptr<::Ice::Instrumentation::DispatchObserver> getDispatchObserver(const ::Ice::Current&, int) = 0;
228
-
229
- virtual void setObserverUpdater(const ::std::shared_ptr<::Ice::Instrumentation::ObserverUpdater>&) = 0;
392
+ /**
393
+ * This method should return an observer for the given endpoint
394
+ * information and connector. The Ice run-time calls this method
395
+ * for each connection establishment attempt.
396
+ * @param endpt The endpoint.
397
+ * @param connector The description of the connector. For IP
398
+ * transports, this is typically the IP address to connect to.
399
+ * @return The observer to instrument the connection establishment.
400
+ */
401
+ virtual ::std::shared_ptr<::Ice::Instrumentation::Observer> getConnectionEstablishmentObserver(const ::std::shared_ptr<::Ice::Endpoint>& endpt, const ::std::string& connector) = 0;
402
+
403
+ /**
404
+ * This method should return an observer for the given endpoint
405
+ * information. The Ice run-time calls this method to resolve an
406
+ * endpoint and obtain the list of connectors.
407
+ *
408
+ * For IP endpoints, this typically involves doing a DNS lookup to
409
+ * obtain the IP addresses associated with the DNS name.
410
+ * @param endpt The endpoint.
411
+ * @return The observer to instrument the endpoint lookup.
412
+ */
413
+ virtual ::std::shared_ptr<::Ice::Instrumentation::Observer> getEndpointLookupObserver(const ::std::shared_ptr<::Ice::Endpoint>& endpt) = 0;
414
+
415
+ /**
416
+ * This method should return a connection observer for the given
417
+ * connection. The Ice run-time calls this method for each new
418
+ * connection and for all the Ice communicator connections when
419
+ * {@link ObserverUpdater#updateConnectionObservers} is called.
420
+ * @param c The connection information.
421
+ * @param e The connection endpoint.
422
+ * @param s The state of the connection.
423
+ * @param o The old connection observer if one is already set or a
424
+ * null reference otherwise.
425
+ * @return The connection observer to instrument the connection.
426
+ */
427
+ virtual ::std::shared_ptr<::Ice::Instrumentation::ConnectionObserver> getConnectionObserver(const ::std::shared_ptr<::Ice::ConnectionInfo>& c, const ::std::shared_ptr<::Ice::Endpoint>& e, ConnectionState s, const ::std::shared_ptr<ConnectionObserver>& o) = 0;
428
+
429
+ /**
430
+ * This method should return a thread observer for the given
431
+ * thread. The Ice run-time calls this method for each new thread
432
+ * and for all the Ice communicator threads when
433
+ * {@link ObserverUpdater#updateThreadObservers} is called.
434
+ * @param parent The parent of the thread.
435
+ * @param id The ID of the thread to observe.
436
+ * @param s The state of the thread.
437
+ * @param o The old thread observer if one is already set or a
438
+ * null reference otherwise.
439
+ * @return The thread observer to instrument the thread.
440
+ */
441
+ virtual ::std::shared_ptr<::Ice::Instrumentation::ThreadObserver> getThreadObserver(const ::std::string& parent, const ::std::string& id, ThreadState s, const ::std::shared_ptr<ThreadObserver>& o) = 0;
442
+
443
+ /**
444
+ * This method should return an invocation observer for the given
445
+ * invocation. The Ice run-time calls this method for each new
446
+ * invocation on a proxy.
447
+ * @param prx The proxy used for the invocation.
448
+ * @param operation The name of the invocation.
449
+ * @param ctx The context specified by the user.
450
+ * @return The invocation observer to instrument the invocation.
451
+ */
452
+ virtual ::std::shared_ptr<::Ice::Instrumentation::InvocationObserver> getInvocationObserver(const ::std::shared_ptr<::Ice::ObjectPrx>& prx, const ::std::string& operation, const ::Ice::Context& ctx) = 0;
453
+
454
+ /**
455
+ * This method should return a dispatch observer for the given
456
+ * dispatch. The Ice run-time calls this method each time it
457
+ * receives an incoming invocation to be dispatched for an Ice
458
+ * object.
459
+ * @param c The current object as provided to the Ice servant
460
+ * dispatching the invocation.
461
+ * @param size The size of the dispatch.
462
+ * @return The dispatch observer to instrument the dispatch.
463
+ */
464
+ virtual ::std::shared_ptr<::Ice::Instrumentation::DispatchObserver> getDispatchObserver(const ::Ice::Current& c, int size) = 0;
465
+
466
+ /**
467
+ * The Ice run-time calls this method when the communicator is
468
+ * initialized. The add-in implementing this interface can use
469
+ * this object to get the Ice run-time to re-obtain observers for
470
+ * observed objects.
471
+ * @param updater The observer updater object.
472
+ */
473
+ virtual void setObserverUpdater(const ::std::shared_ptr<ObserverUpdater>& updater) = 0;
230
474
  };
231
475
 
232
476
  }
233
477
 
234
478
  }
235
479
 
480
+ /// \cond STREAM
236
481
  namespace Ice
237
482
  {
238
483
 
239
484
  }
485
+ /// \endcond
240
486
 
487
+ /// \cond INTERNAL
241
488
  namespace Ice
242
489
  {
243
490
 
491
+ /// \cond INTERNAL
244
492
  namespace Instrumentation
245
493
  {
246
494
 
@@ -265,8 +513,10 @@ using ObserverUpdaterPtr = ::std::shared_ptr<ObserverUpdater>;
265
513
  using CommunicatorObserverPtr = ::std::shared_ptr<CommunicatorObserver>;
266
514
 
267
515
  }
516
+ /// \endcond
268
517
 
269
518
  }
519
+ /// \endcond
270
520
 
271
521
  #else // C++98 mapping
272
522
 
@@ -277,44 +527,64 @@ namespace Instrumentation
277
527
  {
278
528
 
279
529
  class Observer;
280
- ICE_API ::Ice::LocalObject* upCast(::Ice::Instrumentation::Observer*);
281
- typedef ::IceInternal::Handle< ::Ice::Instrumentation::Observer> ObserverPtr;
530
+ /// \cond INTERNAL
531
+ ICE_API ::Ice::LocalObject* upCast(Observer*);
532
+ /// \endcond
533
+ typedef ::IceInternal::Handle< Observer> ObserverPtr;
282
534
 
283
535
  class ThreadObserver;
284
- ICE_API ::Ice::LocalObject* upCast(::Ice::Instrumentation::ThreadObserver*);
285
- typedef ::IceInternal::Handle< ::Ice::Instrumentation::ThreadObserver> ThreadObserverPtr;
536
+ /// \cond INTERNAL
537
+ ICE_API ::Ice::LocalObject* upCast(ThreadObserver*);
538
+ /// \endcond
539
+ typedef ::IceInternal::Handle< ThreadObserver> ThreadObserverPtr;
286
540
 
287
541
  class ConnectionObserver;
288
- ICE_API ::Ice::LocalObject* upCast(::Ice::Instrumentation::ConnectionObserver*);
289
- typedef ::IceInternal::Handle< ::Ice::Instrumentation::ConnectionObserver> ConnectionObserverPtr;
542
+ /// \cond INTERNAL
543
+ ICE_API ::Ice::LocalObject* upCast(ConnectionObserver*);
544
+ /// \endcond
545
+ typedef ::IceInternal::Handle< ConnectionObserver> ConnectionObserverPtr;
290
546
 
291
547
  class DispatchObserver;
292
- ICE_API ::Ice::LocalObject* upCast(::Ice::Instrumentation::DispatchObserver*);
293
- typedef ::IceInternal::Handle< ::Ice::Instrumentation::DispatchObserver> DispatchObserverPtr;
548
+ /// \cond INTERNAL
549
+ ICE_API ::Ice::LocalObject* upCast(DispatchObserver*);
550
+ /// \endcond
551
+ typedef ::IceInternal::Handle< DispatchObserver> DispatchObserverPtr;
294
552
 
295
553
  class ChildInvocationObserver;
296
- ICE_API ::Ice::LocalObject* upCast(::Ice::Instrumentation::ChildInvocationObserver*);
297
- typedef ::IceInternal::Handle< ::Ice::Instrumentation::ChildInvocationObserver> ChildInvocationObserverPtr;
554
+ /// \cond INTERNAL
555
+ ICE_API ::Ice::LocalObject* upCast(ChildInvocationObserver*);
556
+ /// \endcond
557
+ typedef ::IceInternal::Handle< ChildInvocationObserver> ChildInvocationObserverPtr;
298
558
 
299
559
  class RemoteObserver;
300
- ICE_API ::Ice::LocalObject* upCast(::Ice::Instrumentation::RemoteObserver*);
301
- typedef ::IceInternal::Handle< ::Ice::Instrumentation::RemoteObserver> RemoteObserverPtr;
560
+ /// \cond INTERNAL
561
+ ICE_API ::Ice::LocalObject* upCast(RemoteObserver*);
562
+ /// \endcond
563
+ typedef ::IceInternal::Handle< RemoteObserver> RemoteObserverPtr;
302
564
 
303
565
  class CollocatedObserver;
304
- ICE_API ::Ice::LocalObject* upCast(::Ice::Instrumentation::CollocatedObserver*);
305
- typedef ::IceInternal::Handle< ::Ice::Instrumentation::CollocatedObserver> CollocatedObserverPtr;
566
+ /// \cond INTERNAL
567
+ ICE_API ::Ice::LocalObject* upCast(CollocatedObserver*);
568
+ /// \endcond
569
+ typedef ::IceInternal::Handle< CollocatedObserver> CollocatedObserverPtr;
306
570
 
307
571
  class InvocationObserver;
308
- ICE_API ::Ice::LocalObject* upCast(::Ice::Instrumentation::InvocationObserver*);
309
- typedef ::IceInternal::Handle< ::Ice::Instrumentation::InvocationObserver> InvocationObserverPtr;
572
+ /// \cond INTERNAL
573
+ ICE_API ::Ice::LocalObject* upCast(InvocationObserver*);
574
+ /// \endcond
575
+ typedef ::IceInternal::Handle< InvocationObserver> InvocationObserverPtr;
310
576
 
311
577
  class ObserverUpdater;
312
- ICE_API ::Ice::LocalObject* upCast(::Ice::Instrumentation::ObserverUpdater*);
313
- typedef ::IceInternal::Handle< ::Ice::Instrumentation::ObserverUpdater> ObserverUpdaterPtr;
578
+ /// \cond INTERNAL
579
+ ICE_API ::Ice::LocalObject* upCast(ObserverUpdater*);
580
+ /// \endcond
581
+ typedef ::IceInternal::Handle< ObserverUpdater> ObserverUpdaterPtr;
314
582
 
315
583
  class CommunicatorObserver;
316
- ICE_API ::Ice::LocalObject* upCast(::Ice::Instrumentation::CommunicatorObserver*);
317
- typedef ::IceInternal::Handle< ::Ice::Instrumentation::CommunicatorObserver> CommunicatorObserverPtr;
584
+ /// \cond INTERNAL
585
+ ICE_API ::Ice::LocalObject* upCast(CommunicatorObserver*);
586
+ /// \endcond
587
+ typedef ::IceInternal::Handle< CommunicatorObserver> CommunicatorObserverPtr;
318
588
 
319
589
  }
320
590
 
@@ -326,20 +596,61 @@ namespace Ice
326
596
  namespace Instrumentation
327
597
  {
328
598
 
599
+ /**
600
+ * The thread state enumeration keeps track of the different possible
601
+ * states of Ice threads.
602
+ */
329
603
  enum ThreadState
330
604
  {
605
+ /**
606
+ * The thread is idle.
607
+ */
331
608
  ThreadStateIdle,
609
+ /**
610
+ * The thread is in use performing reads or writes for Ice
611
+ * connections. This state is only for threads from an Ice thread
612
+ * pool.
613
+ */
332
614
  ThreadStateInUseForIO,
615
+ /**
616
+ * The thread is calling user code (servant implementation, AMI
617
+ * callbacks). This state is only for threads from an Ice thread
618
+ * pool.
619
+ */
333
620
  ThreadStateInUseForUser,
621
+ /**
622
+ * The thread is performing other internal activities (DNS
623
+ * lookups, timer callbacks, etc).
624
+ */
334
625
  ThreadStateInUseForOther
335
626
  };
336
627
 
628
+ /**
629
+ * The state of an Ice connection.
630
+ */
337
631
  enum ConnectionState
338
632
  {
633
+ /**
634
+ * The connection is being validated.
635
+ */
339
636
  ConnectionStateValidating,
637
+ /**
638
+ * The connection is holding the reception of new messages.
639
+ */
340
640
  ConnectionStateHolding,
641
+ /**
642
+ * The connection is active and can send and receive messages.
643
+ */
341
644
  ConnectionStateActive,
645
+ /**
646
+ * The connection is being gracefully shutdown and waits for the
647
+ * peer to close its end of the connection.
648
+ */
342
649
  ConnectionStateClosing,
650
+ /**
651
+ * The connection is closed and waits for potential dispatch to be
652
+ * finished before being destroyed and detached from the observer.
653
+ */
343
654
  ConnectionStateClosed
344
655
  };
345
656
 
@@ -353,6 +664,11 @@ namespace Ice
353
664
  namespace Instrumentation
354
665
  {
355
666
 
667
+ /**
668
+ * The object observer interface used by instrumented objects to
669
+ * notify the observer of their existence.
670
+ * \headerfile Ice/Ice.h
671
+ */
356
672
  class ICE_API Observer : public virtual ::Ice::LocalObject
357
673
  {
358
674
  public:
@@ -361,13 +677,26 @@ public:
361
677
 
362
678
  virtual ~Observer();
363
679
 
680
+ /**
681
+ * This method is called when the instrumented object is created
682
+ * or when the observer is attached to an existing object.
683
+ */
364
684
  virtual void attach() = 0;
365
685
 
686
+ /**
687
+ * This method is called when the instrumented object is destroyed
688
+ * and as a result the observer detached from the object.
689
+ */
366
690
  virtual void detach() = 0;
367
691
 
368
- virtual void failed(const ::std::string&) = 0;
692
+ /**
693
+ * Notification of a failure.
694
+ * @param exceptionName The name of the exception.
695
+ */
696
+ virtual void failed(const ::std::string& exceptionName) = 0;
369
697
  };
370
698
 
699
+ /// \cond INTERNAL
371
700
  inline bool operator==(const Observer& lhs, const Observer& rhs)
372
701
  {
373
702
  return static_cast<const ::Ice::LocalObject&>(lhs) == static_cast<const ::Ice::LocalObject&>(rhs);
@@ -377,8 +706,15 @@ inline bool operator<(const Observer& lhs, const Observer& rhs)
377
706
  {
378
707
  return static_cast<const ::Ice::LocalObject&>(lhs) < static_cast<const ::Ice::LocalObject&>(rhs);
379
708
  }
380
-
381
- class ICE_API ThreadObserver : virtual public ::Ice::Instrumentation::Observer
709
+ /// \endcond
710
+
711
+ /**
712
+ * The thread observer interface to instrument Ice threads. This can
713
+ * be threads from the Ice thread pool or utility threads used by the
714
+ * Ice core.
715
+ * \headerfile Ice/Ice.h
716
+ */
717
+ class ICE_API ThreadObserver : virtual public Observer
382
718
  {
383
719
  public:
384
720
 
@@ -386,9 +722,15 @@ public:
386
722
 
387
723
  virtual ~ThreadObserver();
388
724
 
389
- virtual void stateChanged(::Ice::Instrumentation::ThreadState, ::Ice::Instrumentation::ThreadState) = 0;
725
+ /**
726
+ * Notification of thread state change.
727
+ * @param oldState The previous thread state.
728
+ * @param newState The new thread state.
729
+ */
730
+ virtual void stateChanged(ThreadState oldState, ThreadState newState) = 0;
390
731
  };
391
732
 
733
+ /// \cond INTERNAL
392
734
  inline bool operator==(const ThreadObserver& lhs, const ThreadObserver& rhs)
393
735
  {
394
736
  return static_cast<const ::Ice::LocalObject&>(lhs) == static_cast<const ::Ice::LocalObject&>(rhs);
@@ -398,8 +740,13 @@ inline bool operator<(const ThreadObserver& lhs, const ThreadObserver& rhs)
398
740
  {
399
741
  return static_cast<const ::Ice::LocalObject&>(lhs) < static_cast<const ::Ice::LocalObject&>(rhs);
400
742
  }
743
+ /// \endcond
401
744
 
402
- class ICE_API ConnectionObserver : virtual public ::Ice::Instrumentation::Observer
745
+ /**
746
+ * The connection observer interface to instrument Ice connections.
747
+ * \headerfile Ice/Ice.h
748
+ */
749
+ class ICE_API ConnectionObserver : virtual public Observer
403
750
  {
404
751
  public:
405
752
 
@@ -407,11 +754,20 @@ public:
407
754
 
408
755
  virtual ~ConnectionObserver();
409
756
 
410
- virtual void sentBytes(::Ice::Int) = 0;
411
-
412
- virtual void receivedBytes(::Ice::Int) = 0;
757
+ /**
758
+ * Notification of sent bytes over the connection.
759
+ * @param num The number of bytes sent.
760
+ */
761
+ virtual void sentBytes(::Ice::Int num) = 0;
762
+
763
+ /**
764
+ * Notification of received bytes over the connection.
765
+ * @param num The number of bytes received.
766
+ */
767
+ virtual void receivedBytes(::Ice::Int num) = 0;
413
768
  };
414
769
 
770
+ /// \cond INTERNAL
415
771
  inline bool operator==(const ConnectionObserver& lhs, const ConnectionObserver& rhs)
416
772
  {
417
773
  return static_cast<const ::Ice::LocalObject&>(lhs) == static_cast<const ::Ice::LocalObject&>(rhs);
@@ -421,8 +777,13 @@ inline bool operator<(const ConnectionObserver& lhs, const ConnectionObserver& r
421
777
  {
422
778
  return static_cast<const ::Ice::LocalObject&>(lhs) < static_cast<const ::Ice::LocalObject&>(rhs);
423
779
  }
780
+ /// \endcond
424
781
 
425
- class ICE_API DispatchObserver : virtual public ::Ice::Instrumentation::Observer
782
+ /**
783
+ * The dispatch observer to instrument servant dispatch.
784
+ * \headerfile Ice/Ice.h
785
+ */
786
+ class ICE_API DispatchObserver : virtual public Observer
426
787
  {
427
788
  public:
428
789
 
@@ -430,11 +791,19 @@ public:
430
791
 
431
792
  virtual ~DispatchObserver();
432
793
 
794
+ /**
795
+ * Notification of a user exception.
796
+ */
433
797
  virtual void userException() = 0;
434
798
 
435
- virtual void reply(::Ice::Int) = 0;
799
+ /**
800
+ * Reply notification.
801
+ * @param size The size of the reply.
802
+ */
803
+ virtual void reply(::Ice::Int size) = 0;
436
804
  };
437
805
 
806
+ /// \cond INTERNAL
438
807
  inline bool operator==(const DispatchObserver& lhs, const DispatchObserver& rhs)
439
808
  {
440
809
  return static_cast<const ::Ice::LocalObject&>(lhs) == static_cast<const ::Ice::LocalObject&>(rhs);
@@ -444,8 +813,14 @@ inline bool operator<(const DispatchObserver& lhs, const DispatchObserver& rhs)
444
813
  {
445
814
  return static_cast<const ::Ice::LocalObject&>(lhs) < static_cast<const ::Ice::LocalObject&>(rhs);
446
815
  }
447
-
448
- class ICE_API ChildInvocationObserver : virtual public ::Ice::Instrumentation::Observer
816
+ /// \endcond
817
+
818
+ /**
819
+ * The child invocation observer to instrument remote or collocated
820
+ * invocations.
821
+ * \headerfile Ice/Ice.h
822
+ */
823
+ class ICE_API ChildInvocationObserver : virtual public Observer
449
824
  {
450
825
  public:
451
826
 
@@ -453,9 +828,14 @@ public:
453
828
 
454
829
  virtual ~ChildInvocationObserver();
455
830
 
456
- virtual void reply(::Ice::Int) = 0;
831
+ /**
832
+ * Reply notification.
833
+ * @param size The size of the reply.
834
+ */
835
+ virtual void reply(::Ice::Int size) = 0;
457
836
  };
458
837
 
838
+ /// \cond INTERNAL
459
839
  inline bool operator==(const ChildInvocationObserver& lhs, const ChildInvocationObserver& rhs)
460
840
  {
461
841
  return static_cast<const ::Ice::LocalObject&>(lhs) == static_cast<const ::Ice::LocalObject&>(rhs);
@@ -465,8 +845,14 @@ inline bool operator<(const ChildInvocationObserver& lhs, const ChildInvocationO
465
845
  {
466
846
  return static_cast<const ::Ice::LocalObject&>(lhs) < static_cast<const ::Ice::LocalObject&>(rhs);
467
847
  }
468
-
469
- class ICE_API RemoteObserver : virtual public ::Ice::Instrumentation::ChildInvocationObserver
848
+ /// \endcond
849
+
850
+ /**
851
+ * The remote observer to instrument invocations that are sent over
852
+ * the wire.
853
+ * \headerfile Ice/Ice.h
854
+ */
855
+ class ICE_API RemoteObserver : virtual public ChildInvocationObserver
470
856
  {
471
857
  public:
472
858
 
@@ -475,6 +861,7 @@ public:
475
861
  virtual ~RemoteObserver();
476
862
  };
477
863
 
864
+ /// \cond INTERNAL
478
865
  inline bool operator==(const RemoteObserver& lhs, const RemoteObserver& rhs)
479
866
  {
480
867
  return static_cast<const ::Ice::LocalObject&>(lhs) == static_cast<const ::Ice::LocalObject&>(rhs);
@@ -484,8 +871,14 @@ inline bool operator<(const RemoteObserver& lhs, const RemoteObserver& rhs)
484
871
  {
485
872
  return static_cast<const ::Ice::LocalObject&>(lhs) < static_cast<const ::Ice::LocalObject&>(rhs);
486
873
  }
487
-
488
- class ICE_API CollocatedObserver : virtual public ::Ice::Instrumentation::ChildInvocationObserver
874
+ /// \endcond
875
+
876
+ /**
877
+ * The collocated observer to instrument invocations that are
878
+ * collocated.
879
+ * \headerfile Ice/Ice.h
880
+ */
881
+ class ICE_API CollocatedObserver : virtual public ChildInvocationObserver
489
882
  {
490
883
  public:
491
884
 
@@ -494,6 +887,7 @@ public:
494
887
  virtual ~CollocatedObserver();
495
888
  };
496
889
 
890
+ /// \cond INTERNAL
497
891
  inline bool operator==(const CollocatedObserver& lhs, const CollocatedObserver& rhs)
498
892
  {
499
893
  return static_cast<const ::Ice::LocalObject&>(lhs) == static_cast<const ::Ice::LocalObject&>(rhs);
@@ -503,8 +897,16 @@ inline bool operator<(const CollocatedObserver& lhs, const CollocatedObserver& r
503
897
  {
504
898
  return static_cast<const ::Ice::LocalObject&>(lhs) < static_cast<const ::Ice::LocalObject&>(rhs);
505
899
  }
506
-
507
- class ICE_API InvocationObserver : virtual public ::Ice::Instrumentation::Observer
900
+ /// \endcond
901
+
902
+ /**
903
+ * The invocation observer to instrument invocations on proxies. A
904
+ * proxy invocation can either result in a collocated or remote
905
+ * invocation. If it results in a remote invocation, a sub-observer is
906
+ * requested for the remote invocation.
907
+ * \headerfile Ice/Ice.h
908
+ */
909
+ class ICE_API InvocationObserver : virtual public Observer
508
910
  {
509
911
  public:
510
912
 
@@ -512,15 +914,37 @@ public:
512
914
 
513
915
  virtual ~InvocationObserver();
514
916
 
917
+ /**
918
+ * Notification of the invocation being retried.
919
+ */
515
920
  virtual void retried() = 0;
516
921
 
922
+ /**
923
+ * Notification of a user exception.
924
+ */
517
925
  virtual void userException() = 0;
518
926
 
519
- virtual ::Ice::Instrumentation::RemoteObserverPtr getRemoteObserver(const ::Ice::ConnectionInfoPtr&, const ::Ice::EndpointPtr&, ::Ice::Int, ::Ice::Int) = 0;
520
-
521
- virtual ::Ice::Instrumentation::CollocatedObserverPtr getCollocatedObserver(const ::Ice::ObjectAdapterPtr&, ::Ice::Int, ::Ice::Int) = 0;
927
+ /**
928
+ * Get a remote observer for this invocation.
929
+ * @param con The connection information.
930
+ * @param endpt The connection endpoint.
931
+ * @param requestId The ID of the invocation.
932
+ * @param size The size of the invocation.
933
+ * @return The observer to instrument the remote invocation.
934
+ */
935
+ virtual RemoteObserverPtr getRemoteObserver(const ::Ice::ConnectionInfoPtr& con, const ::Ice::EndpointPtr& endpt, ::Ice::Int requestId, ::Ice::Int size) = 0;
936
+
937
+ /**
938
+ * Get a collocated observer for this invocation.
939
+ * @param adapter The object adapter hosting the collocated Ice object.
940
+ * @param requestId The ID of the invocation.
941
+ * @param size The size of the invocation.
942
+ * @return The observer to instrument the collocated invocation.
943
+ */
944
+ virtual CollocatedObserverPtr getCollocatedObserver(const ::Ice::ObjectAdapterPtr& adapter, ::Ice::Int requestId, ::Ice::Int size) = 0;
522
945
  };
523
946
 
947
+ /// \cond INTERNAL
524
948
  inline bool operator==(const InvocationObserver& lhs, const InvocationObserver& rhs)
525
949
  {
526
950
  return static_cast<const ::Ice::LocalObject&>(lhs) == static_cast<const ::Ice::LocalObject&>(rhs);
@@ -530,7 +954,22 @@ inline bool operator<(const InvocationObserver& lhs, const InvocationObserver& r
530
954
  {
531
955
  return static_cast<const ::Ice::LocalObject&>(lhs) < static_cast<const ::Ice::LocalObject&>(rhs);
532
956
  }
533
-
957
+ /// \endcond
958
+
959
+ /**
960
+ * The observer updater interface. This interface is implemented by
961
+ * the Ice run-time and an instance of this interface is provided by
962
+ * the Ice communicator on initialization to the
963
+ * {@link CommunicatorObserver} object set with the communicator
964
+ * initialization data. The Ice communicator calls
965
+ * {@link CommunicatorObserver#setObserverUpdater} to provide the observer
966
+ * updater.
967
+ *
968
+ * This interface can be used by add-ins implementing the
969
+ * {@link CommunicatorObserver} interface to update the observers of
970
+ * connections and threads.
971
+ * \headerfile Ice/Ice.h
972
+ */
534
973
  class ICE_API ObserverUpdater : public virtual ::Ice::LocalObject
535
974
  {
536
975
  public:
@@ -539,11 +978,30 @@ public:
539
978
 
540
979
  virtual ~ObserverUpdater();
541
980
 
981
+ /**
982
+ * Update connection observers associated with each of the Ice
983
+ * connection from the communicator and its object adapters.
984
+ *
985
+ * When called, this method goes through all the connections and
986
+ * for each connection {@link CommunicatorObserver#getConnectionObserver}
987
+ * is called. The implementation of getConnectionObserver has the
988
+ * possibility to return an updated observer if necessary.
989
+ */
542
990
  virtual void updateConnectionObservers() = 0;
543
991
 
992
+ /**
993
+ * Update thread observers associated with each of the Ice thread
994
+ * from the communicator and its object adapters.
995
+ *
996
+ * When called, this method goes through all the threads and for
997
+ * each thread {@link CommunicatorObserver#getThreadObserver} is
998
+ * called. The implementation of getThreadObserver has the
999
+ * possibility to return an updated observer if necessary.
1000
+ */
544
1001
  virtual void updateThreadObservers() = 0;
545
1002
  };
546
1003
 
1004
+ /// \cond INTERNAL
547
1005
  inline bool operator==(const ObserverUpdater& lhs, const ObserverUpdater& rhs)
548
1006
  {
549
1007
  return static_cast<const ::Ice::LocalObject&>(lhs) == static_cast<const ::Ice::LocalObject&>(rhs);
@@ -553,7 +1011,17 @@ inline bool operator<(const ObserverUpdater& lhs, const ObserverUpdater& rhs)
553
1011
  {
554
1012
  return static_cast<const ::Ice::LocalObject&>(lhs) < static_cast<const ::Ice::LocalObject&>(rhs);
555
1013
  }
556
-
1014
+ /// \endcond
1015
+
1016
+ /**
1017
+ * The communicator observer interface used by the Ice run-time to
1018
+ * obtain and update observers for its observable objects. This
1019
+ * interface should be implemented by add-ins that wish to observe Ice
1020
+ * objects in order to collect statistics. An instance of this
1021
+ * interface can be provided to the Ice run-time through the Ice
1022
+ * communicator initialization data.
1023
+ * \headerfile Ice/Ice.h
1024
+ */
557
1025
  class ICE_API CommunicatorObserver : public virtual ::Ice::LocalObject
558
1026
  {
559
1027
  public:
@@ -562,21 +1030,91 @@ public:
562
1030
 
563
1031
  virtual ~CommunicatorObserver();
564
1032
 
565
- virtual ::Ice::Instrumentation::ObserverPtr getConnectionEstablishmentObserver(const ::Ice::EndpointPtr&, const ::std::string&) = 0;
566
-
567
- virtual ::Ice::Instrumentation::ObserverPtr getEndpointLookupObserver(const ::Ice::EndpointPtr&) = 0;
568
-
569
- virtual ::Ice::Instrumentation::ConnectionObserverPtr getConnectionObserver(const ::Ice::ConnectionInfoPtr&, const ::Ice::EndpointPtr&, ::Ice::Instrumentation::ConnectionState, const ::Ice::Instrumentation::ConnectionObserverPtr&) = 0;
570
-
571
- virtual ::Ice::Instrumentation::ThreadObserverPtr getThreadObserver(const ::std::string&, const ::std::string&, ::Ice::Instrumentation::ThreadState, const ::Ice::Instrumentation::ThreadObserverPtr&) = 0;
572
-
573
- virtual ::Ice::Instrumentation::InvocationObserverPtr getInvocationObserver(const ::Ice::ObjectPrx&, const ::std::string&, const ::Ice::Context&) = 0;
574
-
575
- virtual ::Ice::Instrumentation::DispatchObserverPtr getDispatchObserver(const ::Ice::Current&, ::Ice::Int) = 0;
576
-
577
- virtual void setObserverUpdater(const ::Ice::Instrumentation::ObserverUpdaterPtr&) = 0;
1033
+ /**
1034
+ * This method should return an observer for the given endpoint
1035
+ * information and connector. The Ice run-time calls this method
1036
+ * for each connection establishment attempt.
1037
+ * @param endpt The endpoint.
1038
+ * @param connector The description of the connector. For IP
1039
+ * transports, this is typically the IP address to connect to.
1040
+ * @return The observer to instrument the connection establishment.
1041
+ */
1042
+ virtual ObserverPtr getConnectionEstablishmentObserver(const ::Ice::EndpointPtr& endpt, const ::std::string& connector) = 0;
1043
+
1044
+ /**
1045
+ * This method should return an observer for the given endpoint
1046
+ * information. The Ice run-time calls this method to resolve an
1047
+ * endpoint and obtain the list of connectors.
1048
+ *
1049
+ * For IP endpoints, this typically involves doing a DNS lookup to
1050
+ * obtain the IP addresses associated with the DNS name.
1051
+ * @param endpt The endpoint.
1052
+ * @return The observer to instrument the endpoint lookup.
1053
+ */
1054
+ virtual ObserverPtr getEndpointLookupObserver(const ::Ice::EndpointPtr& endpt) = 0;
1055
+
1056
+ /**
1057
+ * This method should return a connection observer for the given
1058
+ * connection. The Ice run-time calls this method for each new
1059
+ * connection and for all the Ice communicator connections when
1060
+ * {@link ObserverUpdater#updateConnectionObservers} is called.
1061
+ * @param c The connection information.
1062
+ * @param e The connection endpoint.
1063
+ * @param s The state of the connection.
1064
+ * @param o The old connection observer if one is already set or a
1065
+ * null reference otherwise.
1066
+ * @return The connection observer to instrument the connection.
1067
+ */
1068
+ virtual ConnectionObserverPtr getConnectionObserver(const ::Ice::ConnectionInfoPtr& c, const ::Ice::EndpointPtr& e, ConnectionState s, const ConnectionObserverPtr& o) = 0;
1069
+
1070
+ /**
1071
+ * This method should return a thread observer for the given
1072
+ * thread. The Ice run-time calls this method for each new thread
1073
+ * and for all the Ice communicator threads when
1074
+ * {@link ObserverUpdater#updateThreadObservers} is called.
1075
+ * @param parent The parent of the thread.
1076
+ * @param id The ID of the thread to observe.
1077
+ * @param s The state of the thread.
1078
+ * @param o The old thread observer if one is already set or a
1079
+ * null reference otherwise.
1080
+ * @return The thread observer to instrument the thread.
1081
+ */
1082
+ virtual ThreadObserverPtr getThreadObserver(const ::std::string& parent, const ::std::string& id, ThreadState s, const ThreadObserverPtr& o) = 0;
1083
+
1084
+ /**
1085
+ * This method should return an invocation observer for the given
1086
+ * invocation. The Ice run-time calls this method for each new
1087
+ * invocation on a proxy.
1088
+ * @param prx The proxy used for the invocation.
1089
+ * @param operation The name of the invocation.
1090
+ * @param ctx The context specified by the user.
1091
+ * @return The invocation observer to instrument the invocation.
1092
+ */
1093
+ virtual InvocationObserverPtr getInvocationObserver(const ::Ice::ObjectPrx& prx, const ::std::string& operation, const ::Ice::Context& ctx) = 0;
1094
+
1095
+ /**
1096
+ * This method should return a dispatch observer for the given
1097
+ * dispatch. The Ice run-time calls this method each time it
1098
+ * receives an incoming invocation to be dispatched for an Ice
1099
+ * object.
1100
+ * @param c The current object as provided to the Ice servant
1101
+ * dispatching the invocation.
1102
+ * @param size The size of the dispatch.
1103
+ * @return The dispatch observer to instrument the dispatch.
1104
+ */
1105
+ virtual DispatchObserverPtr getDispatchObserver(const ::Ice::Current& c, ::Ice::Int size) = 0;
1106
+
1107
+ /**
1108
+ * The Ice run-time calls this method when the communicator is
1109
+ * initialized. The add-in implementing this interface can use
1110
+ * this object to get the Ice run-time to re-obtain observers for
1111
+ * observed objects.
1112
+ * @param updater The observer updater object.
1113
+ */
1114
+ virtual void setObserverUpdater(const ObserverUpdaterPtr& updater) = 0;
578
1115
  };
579
1116
 
1117
+ /// \cond INTERNAL
580
1118
  inline bool operator==(const CommunicatorObserver& lhs, const CommunicatorObserver& rhs)
581
1119
  {
582
1120
  return static_cast<const ::Ice::LocalObject&>(lhs) == static_cast<const ::Ice::LocalObject&>(rhs);
@@ -586,15 +1124,18 @@ inline bool operator<(const CommunicatorObserver& lhs, const CommunicatorObserve
586
1124
  {
587
1125
  return static_cast<const ::Ice::LocalObject&>(lhs) < static_cast<const ::Ice::LocalObject&>(rhs);
588
1126
  }
1127
+ /// \endcond
589
1128
 
590
1129
  }
591
1130
 
592
1131
  }
593
1132
 
1133
+ /// \cond STREAM
594
1134
  namespace Ice
595
1135
  {
596
1136
 
597
1137
  }
1138
+ /// \endcond
598
1139
 
599
1140
  #endif
600
1141