zeroc-ice 3.6b1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (675) hide show
  1. checksums.yaml +7 -0
  2. data/ICE_LICENSE +54 -0
  3. data/LICENSE +339 -0
  4. data/bin/slice2rb +17 -0
  5. data/ext/Communicator.cpp +596 -0
  6. data/ext/Communicator.h +25 -0
  7. data/ext/Config.h +111 -0
  8. data/ext/Connection.cpp +381 -0
  9. data/ext/Connection.h +26 -0
  10. data/ext/Endpoint.cpp +311 -0
  11. data/ext/Endpoint.h +27 -0
  12. data/ext/ImplicitContext.cpp +152 -0
  13. data/ext/ImplicitContext.h +25 -0
  14. data/ext/Init.cpp +52 -0
  15. data/ext/Logger.cpp +151 -0
  16. data/ext/Logger.h +28 -0
  17. data/ext/ObjectFactory.cpp +140 -0
  18. data/ext/ObjectFactory.h +50 -0
  19. data/ext/Operation.cpp +676 -0
  20. data/ext/Operation.h +36 -0
  21. data/ext/Properties.cpp +369 -0
  22. data/ext/Properties.h +25 -0
  23. data/ext/Proxy.cpp +1354 -0
  24. data/ext/Proxy.h +27 -0
  25. data/ext/Slice.cpp +223 -0
  26. data/ext/Slice.h +22 -0
  27. data/ext/Types.cpp +3160 -0
  28. data/ext/Types.h +545 -0
  29. data/ext/Util.cpp +792 -0
  30. data/ext/Util.h +511 -0
  31. data/ext/extconf.rb +118 -0
  32. data/ext/ice/BZIP_LICENSE +42 -0
  33. data/ext/ice/MCPP_LICENSE +36 -0
  34. data/ext/ice/bzip2/blocksort.c +1094 -0
  35. data/ext/ice/bzip2/bzlib.c +1572 -0
  36. data/ext/ice/bzip2/bzlib.h +282 -0
  37. data/ext/ice/bzip2/bzlib_private.h +509 -0
  38. data/ext/ice/bzip2/compress.c +672 -0
  39. data/ext/ice/bzip2/crctable.c +104 -0
  40. data/ext/ice/bzip2/decompress.c +646 -0
  41. data/ext/ice/bzip2/huffman.c +205 -0
  42. data/ext/ice/bzip2/randtable.c +84 -0
  43. data/ext/ice/cpp/include/Ice/ACMF.h +30 -0
  44. data/ext/ice/cpp/include/Ice/Application.h +156 -0
  45. data/ext/ice/cpp/include/Ice/AsyncResult.h +363 -0
  46. data/ext/ice/cpp/include/Ice/AsyncResultF.h +26 -0
  47. data/ext/ice/cpp/include/Ice/BasicStream.h +1315 -0
  48. data/ext/ice/cpp/include/Ice/Buffer.h +159 -0
  49. data/ext/ice/cpp/include/Ice/BuiltinSequences.h +74 -0
  50. data/ext/ice/cpp/include/Ice/Communicator.h +194 -0
  51. data/ext/ice/cpp/include/Ice/CommunicatorAsync.h +115 -0
  52. data/ext/ice/cpp/include/Ice/CommunicatorF.h +60 -0
  53. data/ext/ice/cpp/include/Ice/Config.h +97 -0
  54. data/ext/ice/cpp/include/Ice/Connection.h +495 -0
  55. data/ext/ice/cpp/include/Ice/ConnectionAsync.h +115 -0
  56. data/ext/ice/cpp/include/Ice/ConnectionF.h +72 -0
  57. data/ext/ice/cpp/include/Ice/ConnectionFactoryF.h +30 -0
  58. data/ext/ice/cpp/include/Ice/ConnectionIF.h +37 -0
  59. data/ext/ice/cpp/include/Ice/Current.h +94 -0
  60. data/ext/ice/cpp/include/Ice/DefaultObjectFactory.h +48 -0
  61. data/ext/ice/cpp/include/Ice/DeprecatedStringConverter.h +62 -0
  62. data/ext/ice/cpp/include/Ice/DispatchInterceptor.h +33 -0
  63. data/ext/ice/cpp/include/Ice/Dispatcher.h +51 -0
  64. data/ext/ice/cpp/include/Ice/DynamicLibrary.h +105 -0
  65. data/ext/ice/cpp/include/Ice/DynamicLibraryF.h +29 -0
  66. data/ext/ice/cpp/include/Ice/Endpoint.h +350 -0
  67. data/ext/ice/cpp/include/Ice/EndpointF.h +97 -0
  68. data/ext/ice/cpp/include/Ice/EndpointTypes.h +74 -0
  69. data/ext/ice/cpp/include/Ice/Exception.h +114 -0
  70. data/ext/ice/cpp/include/Ice/FacetMap.h +56 -0
  71. data/ext/ice/cpp/include/Ice/FactoryTable.h +69 -0
  72. data/ext/ice/cpp/include/Ice/FactoryTableInit.h +87 -0
  73. data/ext/ice/cpp/include/Ice/Format.h +39 -0
  74. data/ext/ice/cpp/include/Ice/Functional.h +138 -0
  75. data/ext/ice/cpp/include/Ice/GCObject.h +73 -0
  76. data/ext/ice/cpp/include/Ice/Handle.h +192 -0
  77. data/ext/ice/cpp/include/Ice/Ice.h +54 -0
  78. data/ext/ice/cpp/include/Ice/Identity.h +160 -0
  79. data/ext/ice/cpp/include/Ice/ImplicitContext.h +96 -0
  80. data/ext/ice/cpp/include/Ice/ImplicitContextF.h +60 -0
  81. data/ext/ice/cpp/include/Ice/Incoming.h +131 -0
  82. data/ext/ice/cpp/include/Ice/IncomingAsync.h +108 -0
  83. data/ext/ice/cpp/include/Ice/IncomingAsyncF.h +35 -0
  84. data/ext/ice/cpp/include/Ice/Initialize.h +141 -0
  85. data/ext/ice/cpp/include/Ice/InstanceF.h +26 -0
  86. data/ext/ice/cpp/include/Ice/Instrumentation.h +377 -0
  87. data/ext/ice/cpp/include/Ice/InstrumentationF.h +71 -0
  88. data/ext/ice/cpp/include/Ice/LocalException.h +1022 -0
  89. data/ext/ice/cpp/include/Ice/LocalObject.h +36 -0
  90. data/ext/ice/cpp/include/Ice/LocalObjectF.h +26 -0
  91. data/ext/ice/cpp/include/Ice/Locator.h +2191 -0
  92. data/ext/ice/cpp/include/Ice/LocatorF.h +89 -0
  93. data/ext/ice/cpp/include/Ice/Logger.h +94 -0
  94. data/ext/ice/cpp/include/Ice/LoggerF.h +60 -0
  95. data/ext/ice/cpp/include/Ice/LoggerUtil.h +153 -0
  96. data/ext/ice/cpp/include/Ice/Makefile +26 -0
  97. data/ext/ice/cpp/include/Ice/Metrics.h +2989 -0
  98. data/ext/ice/cpp/include/Ice/MetricsAdminI.h +662 -0
  99. data/ext/ice/cpp/include/Ice/MetricsFunctional.h +144 -0
  100. data/ext/ice/cpp/include/Ice/MetricsObserverI.h +576 -0
  101. data/ext/ice/cpp/include/Ice/NativePropertiesAdmin.h +55 -0
  102. data/ext/ice/cpp/include/Ice/Object.h +165 -0
  103. data/ext/ice/cpp/include/Ice/ObjectAdapter.h +162 -0
  104. data/ext/ice/cpp/include/Ice/ObjectAdapterF.h +60 -0
  105. data/ext/ice/cpp/include/Ice/ObjectAdapterFactoryF.h +26 -0
  106. data/ext/ice/cpp/include/Ice/ObjectF.h +26 -0
  107. data/ext/ice/cpp/include/Ice/ObjectFactory.h +86 -0
  108. data/ext/ice/cpp/include/Ice/ObjectFactoryF.h +60 -0
  109. data/ext/ice/cpp/include/Ice/ObjectFactoryManagerF.h +26 -0
  110. data/ext/ice/cpp/include/Ice/ObserverHelper.h +177 -0
  111. data/ext/ice/cpp/include/Ice/Outgoing.h +197 -0
  112. data/ext/ice/cpp/include/Ice/OutgoingAsync.h +264 -0
  113. data/ext/ice/cpp/include/Ice/OutgoingAsyncF.h +38 -0
  114. data/ext/ice/cpp/include/Ice/Plugin.h +121 -0
  115. data/ext/ice/cpp/include/Ice/PluginF.h +66 -0
  116. data/ext/ice/cpp/include/Ice/Process.h +568 -0
  117. data/ext/ice/cpp/include/Ice/ProcessF.h +77 -0
  118. data/ext/ice/cpp/include/Ice/Properties.h +130 -0
  119. data/ext/ice/cpp/include/Ice/PropertiesAdmin.h +824 -0
  120. data/ext/ice/cpp/include/Ice/PropertiesF.h +83 -0
  121. data/ext/ice/cpp/include/Ice/Protocol.h +242 -0
  122. data/ext/ice/cpp/include/Ice/Proxy.h +2448 -0
  123. data/ext/ice/cpp/include/Ice/ProxyF.h +78 -0
  124. data/ext/ice/cpp/include/Ice/ProxyFactoryF.h +26 -0
  125. data/ext/ice/cpp/include/Ice/ProxyHandle.h +330 -0
  126. data/ext/ice/cpp/include/Ice/ReferenceF.h +34 -0
  127. data/ext/ice/cpp/include/Ice/RemoteLogger.h +1496 -0
  128. data/ext/ice/cpp/include/Ice/RequestHandlerF.h +29 -0
  129. data/ext/ice/cpp/include/Ice/ResponseHandlerF.h +25 -0
  130. data/ext/ice/cpp/include/Ice/Router.h +1155 -0
  131. data/ext/ice/cpp/include/Ice/RouterF.h +77 -0
  132. data/ext/ice/cpp/include/Ice/ServantLocator.h +90 -0
  133. data/ext/ice/cpp/include/Ice/ServantLocatorF.h +60 -0
  134. data/ext/ice/cpp/include/Ice/ServantManagerF.h +26 -0
  135. data/ext/ice/cpp/include/Ice/Service.h +260 -0
  136. data/ext/ice/cpp/include/Ice/SliceChecksumDict.h +56 -0
  137. data/ext/ice/cpp/include/Ice/SliceChecksums.h +34 -0
  138. data/ext/ice/cpp/include/Ice/SlicedData.h +103 -0
  139. data/ext/ice/cpp/include/Ice/SlicedDataF.h +34 -0
  140. data/ext/ice/cpp/include/Ice/Stream.h +449 -0
  141. data/ext/ice/cpp/include/Ice/StreamF.h +30 -0
  142. data/ext/ice/cpp/include/Ice/StreamHelpers.h +877 -0
  143. data/ext/ice/cpp/include/Ice/ThreadPoolF.h +28 -0
  144. data/ext/ice/cpp/include/Ice/UserExceptionFactory.h +56 -0
  145. data/ext/ice/cpp/include/Ice/Version.h +254 -0
  146. data/ext/ice/cpp/include/IceSSL/Config.h +23 -0
  147. data/ext/ice/cpp/include/IceSSL/ConnectionInfo.h +119 -0
  148. data/ext/ice/cpp/include/IceSSL/EndpointInfo.h +101 -0
  149. data/ext/ice/cpp/include/IceSSL/IceSSL.h +22 -0
  150. data/ext/ice/cpp/include/IceSSL/Makefile +26 -0
  151. data/ext/ice/cpp/include/IceSSL/Plugin.h +558 -0
  152. data/ext/ice/cpp/include/IceUtil/AbstractMutex.h +119 -0
  153. data/ext/ice/cpp/include/IceUtil/Cache.h +362 -0
  154. data/ext/ice/cpp/include/IceUtil/Cond.h +323 -0
  155. data/ext/ice/cpp/include/IceUtil/Config.h +234 -0
  156. data/ext/ice/cpp/include/IceUtil/CountDownLatch.h +50 -0
  157. data/ext/ice/cpp/include/IceUtil/CtrlCHandler.h +70 -0
  158. data/ext/ice/cpp/include/IceUtil/DisableWarnings.h +45 -0
  159. data/ext/ice/cpp/include/IceUtil/Exception.h +184 -0
  160. data/ext/ice/cpp/include/IceUtil/Functional.h +389 -0
  161. data/ext/ice/cpp/include/IceUtil/Handle.h +266 -0
  162. data/ext/ice/cpp/include/IceUtil/IceUtil.h +51 -0
  163. data/ext/ice/cpp/include/IceUtil/IconvStringConverter.h +302 -0
  164. data/ext/ice/cpp/include/IceUtil/InputUtil.h +47 -0
  165. data/ext/ice/cpp/include/IceUtil/Iterator.h +36 -0
  166. data/ext/ice/cpp/include/IceUtil/Lock.h +135 -0
  167. data/ext/ice/cpp/include/IceUtil/Makefile +26 -0
  168. data/ext/ice/cpp/include/IceUtil/Monitor.h +249 -0
  169. data/ext/ice/cpp/include/IceUtil/Mutex.h +357 -0
  170. data/ext/ice/cpp/include/IceUtil/MutexProtocol.h +28 -0
  171. data/ext/ice/cpp/include/IceUtil/MutexPtrLock.h +83 -0
  172. data/ext/ice/cpp/include/IceUtil/MutexPtrTryLock.h +82 -0
  173. data/ext/ice/cpp/include/IceUtil/Optional.h +322 -0
  174. data/ext/ice/cpp/include/IceUtil/Options.h +141 -0
  175. data/ext/ice/cpp/include/IceUtil/OutputUtil.h +362 -0
  176. data/ext/ice/cpp/include/IceUtil/PopDisableWarnings.h +19 -0
  177. data/ext/ice/cpp/include/IceUtil/PushDisableWarnings.h +26 -0
  178. data/ext/ice/cpp/include/IceUtil/Random.h +24 -0
  179. data/ext/ice/cpp/include/IceUtil/RecMutex.h +113 -0
  180. data/ext/ice/cpp/include/IceUtil/SHA1.h +65 -0
  181. data/ext/ice/cpp/include/IceUtil/ScannerConfig.h +44 -0
  182. data/ext/ice/cpp/include/IceUtil/ScopedArray.h +97 -0
  183. data/ext/ice/cpp/include/IceUtil/Shared.h +168 -0
  184. data/ext/ice/cpp/include/IceUtil/StringConverter.h +175 -0
  185. data/ext/ice/cpp/include/IceUtil/StringUtil.h +91 -0
  186. data/ext/ice/cpp/include/IceUtil/Thread.h +181 -0
  187. data/ext/ice/cpp/include/IceUtil/ThreadException.h +108 -0
  188. data/ext/ice/cpp/include/IceUtil/Time.h +209 -0
  189. data/ext/ice/cpp/include/IceUtil/Timer.h +143 -0
  190. data/ext/ice/cpp/include/IceUtil/UUID.h +22 -0
  191. data/ext/ice/cpp/include/IceUtil/UndefSysMacros.h +42 -0
  192. data/ext/ice/cpp/include/IceUtil/UniquePtr.h +101 -0
  193. data/ext/ice/cpp/include/Slice/CPlusPlusUtil.h +64 -0
  194. data/ext/ice/cpp/include/Slice/Checksum.h +26 -0
  195. data/ext/ice/cpp/include/Slice/CsUtil.h +92 -0
  196. data/ext/ice/cpp/include/Slice/DotNetNames.h +34 -0
  197. data/ext/ice/cpp/include/Slice/FileTracker.h +71 -0
  198. data/ext/ice/cpp/include/Slice/JavaUtil.h +277 -0
  199. data/ext/ice/cpp/include/Slice/Makefile +26 -0
  200. data/ext/ice/cpp/include/Slice/PHPUtil.h +50 -0
  201. data/ext/ice/cpp/include/Slice/Parser.h +1116 -0
  202. data/ext/ice/cpp/include/Slice/Preprocessor.h +68 -0
  203. data/ext/ice/cpp/include/Slice/PythonUtil.h +64 -0
  204. data/ext/ice/cpp/include/Slice/RubyUtil.h +54 -0
  205. data/ext/ice/cpp/include/Slice/Util.h +33 -0
  206. data/ext/ice/cpp/src/Ice/ACM.cpp +343 -0
  207. data/ext/ice/cpp/src/Ice/ACM.h +117 -0
  208. data/ext/ice/cpp/src/Ice/Acceptor.cpp +16 -0
  209. data/ext/ice/cpp/src/Ice/Acceptor.h +41 -0
  210. data/ext/ice/cpp/src/Ice/AcceptorF.h +30 -0
  211. data/ext/ice/cpp/src/Ice/Application.cpp +760 -0
  212. data/ext/ice/cpp/src/Ice/AsyncResult.cpp +599 -0
  213. data/ext/ice/cpp/src/Ice/Base64.cpp +269 -0
  214. data/ext/ice/cpp/src/Ice/Base64.h +36 -0
  215. data/ext/ice/cpp/src/Ice/BasicStream.cpp +3393 -0
  216. data/ext/ice/cpp/src/Ice/Buffer.cpp +98 -0
  217. data/ext/ice/cpp/src/Ice/BuiltinSequences.cpp +34 -0
  218. data/ext/ice/cpp/src/Ice/CollocatedRequestHandler.cpp +718 -0
  219. data/ext/ice/cpp/src/Ice/CollocatedRequestHandler.h +106 -0
  220. data/ext/ice/cpp/src/Ice/Communicator.cpp +45 -0
  221. data/ext/ice/cpp/src/Ice/CommunicatorF.cpp +38 -0
  222. data/ext/ice/cpp/src/Ice/CommunicatorI.cpp +386 -0
  223. data/ext/ice/cpp/src/Ice/CommunicatorI.h +112 -0
  224. data/ext/ice/cpp/src/Ice/ConnectRequestHandler.cpp +546 -0
  225. data/ext/ice/cpp/src/Ice/ConnectRequestHandler.h +97 -0
  226. data/ext/ice/cpp/src/Ice/Connection.cpp +58 -0
  227. data/ext/ice/cpp/src/Ice/ConnectionF.cpp +38 -0
  228. data/ext/ice/cpp/src/Ice/ConnectionFactory.cpp +1639 -0
  229. data/ext/ice/cpp/src/Ice/ConnectionFactory.h +236 -0
  230. data/ext/ice/cpp/src/Ice/ConnectionI.cpp +3876 -0
  231. data/ext/ice/cpp/src/Ice/ConnectionI.h +364 -0
  232. data/ext/ice/cpp/src/Ice/ConnectionRequestHandler.cpp +115 -0
  233. data/ext/ice/cpp/src/Ice/ConnectionRequestHandler.h +50 -0
  234. data/ext/ice/cpp/src/Ice/Connector.cpp +16 -0
  235. data/ext/ice/cpp/src/Ice/Connector.h +36 -0
  236. data/ext/ice/cpp/src/Ice/ConnectorF.h +26 -0
  237. data/ext/ice/cpp/src/Ice/Current.cpp +38 -0
  238. data/ext/ice/cpp/src/Ice/DefaultsAndOverrides.cpp +168 -0
  239. data/ext/ice/cpp/src/Ice/DefaultsAndOverrides.h +57 -0
  240. data/ext/ice/cpp/src/Ice/DefaultsAndOverridesF.h +26 -0
  241. data/ext/ice/cpp/src/Ice/DeprecatedStringConverter.cpp +60 -0
  242. data/ext/ice/cpp/src/Ice/DispatchInterceptor.cpp +49 -0
  243. data/ext/ice/cpp/src/Ice/DynamicLibrary.cpp +281 -0
  244. data/ext/ice/cpp/src/Ice/Endpoint.cpp +53 -0
  245. data/ext/ice/cpp/src/Ice/EndpointF.cpp +38 -0
  246. data/ext/ice/cpp/src/Ice/EndpointFactory.cpp +25 -0
  247. data/ext/ice/cpp/src/Ice/EndpointFactory.h +44 -0
  248. data/ext/ice/cpp/src/Ice/EndpointFactoryF.h +26 -0
  249. data/ext/ice/cpp/src/Ice/EndpointFactoryManager.cpp +208 -0
  250. data/ext/ice/cpp/src/Ice/EndpointFactoryManager.h +46 -0
  251. data/ext/ice/cpp/src/Ice/EndpointFactoryManagerF.h +26 -0
  252. data/ext/ice/cpp/src/Ice/EndpointI.cpp +87 -0
  253. data/ext/ice/cpp/src/Ice/EndpointI.h +165 -0
  254. data/ext/ice/cpp/src/Ice/EndpointIF.h +41 -0
  255. data/ext/ice/cpp/src/Ice/EndpointTypes.cpp +38 -0
  256. data/ext/ice/cpp/src/Ice/EventHandler.cpp +35 -0
  257. data/ext/ice/cpp/src/Ice/EventHandler.h +78 -0
  258. data/ext/ice/cpp/src/Ice/EventHandlerF.h +26 -0
  259. data/ext/ice/cpp/src/Ice/EventLoggerMsg.h +53 -0
  260. data/ext/ice/cpp/src/Ice/Exception.cpp +832 -0
  261. data/ext/ice/cpp/src/Ice/FacetMap.cpp +34 -0
  262. data/ext/ice/cpp/src/Ice/FactoryTable.cpp +158 -0
  263. data/ext/ice/cpp/src/Ice/FactoryTableInit.cpp +95 -0
  264. data/ext/ice/cpp/src/Ice/GCObject.cpp +444 -0
  265. data/ext/ice/cpp/src/Ice/HashUtil.h +59 -0
  266. data/ext/ice/cpp/src/Ice/HttpParser.cpp +680 -0
  267. data/ext/ice/cpp/src/Ice/HttpParser.h +124 -0
  268. data/ext/ice/cpp/src/Ice/IPEndpointI.cpp +733 -0
  269. data/ext/ice/cpp/src/Ice/IPEndpointI.h +157 -0
  270. data/ext/ice/cpp/src/Ice/IPEndpointIF.h +29 -0
  271. data/ext/ice/cpp/src/Ice/Identity.cpp +42 -0
  272. data/ext/ice/cpp/src/Ice/ImplicitContext.cpp +41 -0
  273. data/ext/ice/cpp/src/Ice/ImplicitContextF.cpp +38 -0
  274. data/ext/ice/cpp/src/Ice/ImplicitContextI.cpp +639 -0
  275. data/ext/ice/cpp/src/Ice/ImplicitContextI.h +51 -0
  276. data/ext/ice/cpp/src/Ice/Incoming.cpp +757 -0
  277. data/ext/ice/cpp/src/Ice/IncomingAsync.cpp +340 -0
  278. data/ext/ice/cpp/src/Ice/IncomingRequest.h +37 -0
  279. data/ext/ice/cpp/src/Ice/Initialize.cpp +401 -0
  280. data/ext/ice/cpp/src/Ice/Instance.cpp +1928 -0
  281. data/ext/ice/cpp/src/Ice/Instance.h +198 -0
  282. data/ext/ice/cpp/src/Ice/Instrumentation.cpp +68 -0
  283. data/ext/ice/cpp/src/Ice/InstrumentationF.cpp +43 -0
  284. data/ext/ice/cpp/src/Ice/InstrumentationI.cpp +1083 -0
  285. data/ext/ice/cpp/src/Ice/InstrumentationI.h +262 -0
  286. data/ext/ice/cpp/src/Ice/LocalException.cpp +2091 -0
  287. data/ext/ice/cpp/src/Ice/LocalObject.cpp +29 -0
  288. data/ext/ice/cpp/src/Ice/Locator.cpp +1946 -0
  289. data/ext/ice/cpp/src/Ice/LocatorF.cpp +39 -0
  290. data/ext/ice/cpp/src/Ice/LocatorInfo.cpp +917 -0
  291. data/ext/ice/cpp/src/Ice/LocatorInfo.h +193 -0
  292. data/ext/ice/cpp/src/Ice/LocatorInfoF.h +34 -0
  293. data/ext/ice/cpp/src/Ice/Logger.cpp +40 -0
  294. data/ext/ice/cpp/src/Ice/LoggerAdminI.cpp +862 -0
  295. data/ext/ice/cpp/src/Ice/LoggerAdminI.h +46 -0
  296. data/ext/ice/cpp/src/Ice/LoggerF.cpp +38 -0
  297. data/ext/ice/cpp/src/Ice/LoggerI.cpp +199 -0
  298. data/ext/ice/cpp/src/Ice/LoggerI.h +57 -0
  299. data/ext/ice/cpp/src/Ice/LoggerUtil.cpp +107 -0
  300. data/ext/ice/cpp/src/Ice/Makefile +190 -0
  301. data/ext/ice/cpp/src/Ice/Metrics.cpp +2159 -0
  302. data/ext/ice/cpp/src/Ice/MetricsAdminI.cpp +669 -0
  303. data/ext/ice/cpp/src/Ice/MetricsObserverI.cpp +14 -0
  304. data/ext/ice/cpp/src/Ice/Network.cpp +2694 -0
  305. data/ext/ice/cpp/src/Ice/Network.h +291 -0
  306. data/ext/ice/cpp/src/Ice/NetworkF.h +28 -0
  307. data/ext/ice/cpp/src/Ice/NetworkProxy.cpp +325 -0
  308. data/ext/ice/cpp/src/Ice/NetworkProxy.h +74 -0
  309. data/ext/ice/cpp/src/Ice/NetworkProxyF.h +26 -0
  310. data/ext/ice/cpp/src/Ice/Object.cpp +440 -0
  311. data/ext/ice/cpp/src/Ice/ObjectAdapter.cpp +41 -0
  312. data/ext/ice/cpp/src/Ice/ObjectAdapterF.cpp +38 -0
  313. data/ext/ice/cpp/src/Ice/ObjectAdapterFactory.cpp +241 -0
  314. data/ext/ice/cpp/src/Ice/ObjectAdapterFactory.h +52 -0
  315. data/ext/ice/cpp/src/Ice/ObjectAdapterI.cpp +1498 -0
  316. data/ext/ice/cpp/src/Ice/ObjectAdapterI.h +155 -0
  317. data/ext/ice/cpp/src/Ice/ObjectFactory.cpp +41 -0
  318. data/ext/ice/cpp/src/Ice/ObjectFactoryF.cpp +38 -0
  319. data/ext/ice/cpp/src/Ice/ObjectFactoryManager.cpp +140 -0
  320. data/ext/ice/cpp/src/Ice/ObjectFactoryManager.h +43 -0
  321. data/ext/ice/cpp/src/Ice/ObserverHelper.cpp +84 -0
  322. data/ext/ice/cpp/src/Ice/OpaqueEndpointI.cpp +407 -0
  323. data/ext/ice/cpp/src/Ice/OpaqueEndpointI.h +70 -0
  324. data/ext/ice/cpp/src/Ice/Outgoing.cpp +737 -0
  325. data/ext/ice/cpp/src/Ice/OutgoingAsync.cpp +874 -0
  326. data/ext/ice/cpp/src/Ice/Plugin.cpp +43 -0
  327. data/ext/ice/cpp/src/Ice/PluginF.cpp +38 -0
  328. data/ext/ice/cpp/src/Ice/PluginManagerI.cpp +503 -0
  329. data/ext/ice/cpp/src/Ice/PluginManagerI.h +67 -0
  330. data/ext/ice/cpp/src/Ice/Process.cpp +299 -0
  331. data/ext/ice/cpp/src/Ice/ProcessF.cpp +39 -0
  332. data/ext/ice/cpp/src/Ice/Properties.cpp +45 -0
  333. data/ext/ice/cpp/src/Ice/PropertiesAdmin.cpp +555 -0
  334. data/ext/ice/cpp/src/Ice/PropertiesAdminI.cpp +207 -0
  335. data/ext/ice/cpp/src/Ice/PropertiesAdminI.h +45 -0
  336. data/ext/ice/cpp/src/Ice/PropertiesF.cpp +39 -0
  337. data/ext/ice/cpp/src/Ice/PropertiesI.cpp +759 -0
  338. data/ext/ice/cpp/src/Ice/PropertiesI.h +78 -0
  339. data/ext/ice/cpp/src/Ice/PropertyNames.cpp +1293 -0
  340. data/ext/ice/cpp/src/Ice/PropertyNames.h +81 -0
  341. data/ext/ice/cpp/src/Ice/Protocol.cpp +137 -0
  342. data/ext/ice/cpp/src/Ice/ProtocolInstance.cpp +98 -0
  343. data/ext/ice/cpp/src/Ice/ProtocolInstance.h +91 -0
  344. data/ext/ice/cpp/src/Ice/ProtocolInstanceF.h +26 -0
  345. data/ext/ice/cpp/src/Ice/ProtocolPluginFacade.cpp +51 -0
  346. data/ext/ice/cpp/src/Ice/ProtocolPluginFacade.h +67 -0
  347. data/ext/ice/cpp/src/Ice/ProtocolPluginFacadeF.h +26 -0
  348. data/ext/ice/cpp/src/Ice/Proxy.cpp +1810 -0
  349. data/ext/ice/cpp/src/Ice/ProxyFactory.cpp +305 -0
  350. data/ext/ice/cpp/src/Ice/ProxyFactory.h +57 -0
  351. data/ext/ice/cpp/src/Ice/Reference.cpp +1947 -0
  352. data/ext/ice/cpp/src/Ice/Reference.h +305 -0
  353. data/ext/ice/cpp/src/Ice/ReferenceFactory.cpp +937 -0
  354. data/ext/ice/cpp/src/Ice/ReferenceFactory.h +81 -0
  355. data/ext/ice/cpp/src/Ice/ReferenceFactoryF.h +24 -0
  356. data/ext/ice/cpp/src/Ice/RemoteLogger.cpp +958 -0
  357. data/ext/ice/cpp/src/Ice/ReplyStatus.h +29 -0
  358. data/ext/ice/cpp/src/Ice/RequestHandler.cpp +40 -0
  359. data/ext/ice/cpp/src/Ice/RequestHandler.h +90 -0
  360. data/ext/ice/cpp/src/Ice/RequestHandlerFactory.cpp +70 -0
  361. data/ext/ice/cpp/src/Ice/RequestHandlerFactory.h +41 -0
  362. data/ext/ice/cpp/src/Ice/ResponseHandler.cpp +20 -0
  363. data/ext/ice/cpp/src/Ice/ResponseHandler.h +39 -0
  364. data/ext/ice/cpp/src/Ice/RetryQueue.cpp +154 -0
  365. data/ext/ice/cpp/src/Ice/RetryQueue.h +69 -0
  366. data/ext/ice/cpp/src/Ice/RetryQueueF.h +24 -0
  367. data/ext/ice/cpp/src/Ice/Router.cpp +849 -0
  368. data/ext/ice/cpp/src/Ice/RouterF.cpp +39 -0
  369. data/ext/ice/cpp/src/Ice/RouterInfo.cpp +381 -0
  370. data/ext/ice/cpp/src/Ice/RouterInfo.h +148 -0
  371. data/ext/ice/cpp/src/Ice/RouterInfoF.h +30 -0
  372. data/ext/ice/cpp/src/Ice/Selector.cpp +926 -0
  373. data/ext/ice/cpp/src/Ice/Selector.h +231 -0
  374. data/ext/ice/cpp/src/Ice/ServantLocator.cpp +41 -0
  375. data/ext/ice/cpp/src/Ice/ServantLocatorF.cpp +38 -0
  376. data/ext/ice/cpp/src/Ice/ServantManager.cpp +495 -0
  377. data/ext/ice/cpp/src/Ice/ServantManager.h +74 -0
  378. data/ext/ice/cpp/src/Ice/Service.cpp +1897 -0
  379. data/ext/ice/cpp/src/Ice/SharedContext.h +51 -0
  380. data/ext/ice/cpp/src/Ice/SliceChecksumDict.cpp +34 -0
  381. data/ext/ice/cpp/src/Ice/SliceChecksums.cpp +80 -0
  382. data/ext/ice/cpp/src/Ice/SlicedData.cpp +80 -0
  383. data/ext/ice/cpp/src/Ice/Stream.cpp +53 -0
  384. data/ext/ice/cpp/src/Ice/StreamI.cpp +832 -0
  385. data/ext/ice/cpp/src/Ice/StreamI.h +198 -0
  386. data/ext/ice/cpp/src/Ice/StreamSocket.cpp +521 -0
  387. data/ext/ice/cpp/src/Ice/StreamSocket.h +85 -0
  388. data/ext/ice/cpp/src/Ice/StringConverterPlugin.cpp +145 -0
  389. data/ext/ice/cpp/src/Ice/SysLoggerI.cpp +167 -0
  390. data/ext/ice/cpp/src/Ice/SysLoggerI.h +43 -0
  391. data/ext/ice/cpp/src/Ice/TcpAcceptor.cpp +235 -0
  392. data/ext/ice/cpp/src/Ice/TcpAcceptor.h +67 -0
  393. data/ext/ice/cpp/src/Ice/TcpConnector.cpp +133 -0
  394. data/ext/ice/cpp/src/Ice/TcpConnector.h +51 -0
  395. data/ext/ice/cpp/src/Ice/TcpEndpointI.cpp +397 -0
  396. data/ext/ice/cpp/src/Ice/TcpEndpointI.h +93 -0
  397. data/ext/ice/cpp/src/Ice/TcpTransceiver.cpp +127 -0
  398. data/ext/ice/cpp/src/Ice/TcpTransceiver.h +61 -0
  399. data/ext/ice/cpp/src/Ice/ThreadPool.cpp +1357 -0
  400. data/ext/ice/cpp/src/Ice/ThreadPool.h +399 -0
  401. data/ext/ice/cpp/src/Ice/TraceLevels.cpp +43 -0
  402. data/ext/ice/cpp/src/Ice/TraceLevels.h +50 -0
  403. data/ext/ice/cpp/src/Ice/TraceLevelsF.h +26 -0
  404. data/ext/ice/cpp/src/Ice/TraceUtil.cpp +452 -0
  405. data/ext/ice/cpp/src/Ice/TraceUtil.h +28 -0
  406. data/ext/ice/cpp/src/Ice/Transceiver.cpp +24 -0
  407. data/ext/ice/cpp/src/Ice/Transceiver.h +52 -0
  408. data/ext/ice/cpp/src/Ice/TransceiverF.h +38 -0
  409. data/ext/ice/cpp/src/Ice/UdpConnector.cpp +144 -0
  410. data/ext/ice/cpp/src/Ice/UdpConnector.h +51 -0
  411. data/ext/ice/cpp/src/Ice/UdpEndpointI.cpp +483 -0
  412. data/ext/ice/cpp/src/Ice/UdpEndpointI.h +95 -0
  413. data/ext/ice/cpp/src/Ice/UdpTransceiver.cpp +1156 -0
  414. data/ext/ice/cpp/src/Ice/UdpTransceiver.h +123 -0
  415. data/ext/ice/cpp/src/Ice/Version.cpp +46 -0
  416. data/ext/ice/cpp/src/Ice/WSAcceptor.cpp +103 -0
  417. data/ext/ice/cpp/src/Ice/WSAcceptor.h +61 -0
  418. data/ext/ice/cpp/src/Ice/WSConnector.cpp +113 -0
  419. data/ext/ice/cpp/src/Ice/WSConnector.h +51 -0
  420. data/ext/ice/cpp/src/Ice/WSEndpoint.cpp +441 -0
  421. data/ext/ice/cpp/src/Ice/WSEndpoint.h +97 -0
  422. data/ext/ice/cpp/src/Ice/WSTransceiver.cpp +1728 -0
  423. data/ext/ice/cpp/src/Ice/WSTransceiver.h +149 -0
  424. data/ext/ice/cpp/src/IceDiscovery/IceDiscovery.cpp +594 -0
  425. data/ext/ice/cpp/src/IceDiscovery/IceDiscovery.h +1035 -0
  426. data/ext/ice/cpp/src/IceDiscovery/LocatorI.cpp +208 -0
  427. data/ext/ice/cpp/src/IceDiscovery/LocatorI.h +78 -0
  428. data/ext/ice/cpp/src/IceDiscovery/LookupI.cpp +308 -0
  429. data/ext/ice/cpp/src/IceDiscovery/LookupI.h +183 -0
  430. data/ext/ice/cpp/src/IceDiscovery/Makefile +61 -0
  431. data/ext/ice/cpp/src/IceDiscovery/PluginI.cpp +148 -0
  432. data/ext/ice/cpp/src/IceDiscovery/PluginI.h +39 -0
  433. data/ext/ice/cpp/src/IceSSL/AcceptorI.cpp +258 -0
  434. data/ext/ice/cpp/src/IceSSL/AcceptorI.h +66 -0
  435. data/ext/ice/cpp/src/IceSSL/Certificate.cpp +1334 -0
  436. data/ext/ice/cpp/src/IceSSL/ConnectionInfo.cpp +42 -0
  437. data/ext/ice/cpp/src/IceSSL/ConnectorI.cpp +151 -0
  438. data/ext/ice/cpp/src/IceSSL/ConnectorI.h +56 -0
  439. data/ext/ice/cpp/src/IceSSL/EndpointI.cpp +397 -0
  440. data/ext/ice/cpp/src/IceSSL/EndpointI.h +96 -0
  441. data/ext/ice/cpp/src/IceSSL/EndpointInfo.cpp +41 -0
  442. data/ext/ice/cpp/src/IceSSL/Instance.cpp +38 -0
  443. data/ext/ice/cpp/src/IceSSL/Instance.h +42 -0
  444. data/ext/ice/cpp/src/IceSSL/InstanceF.h +34 -0
  445. data/ext/ice/cpp/src/IceSSL/Makefile +82 -0
  446. data/ext/ice/cpp/src/IceSSL/OpenSSLEngine.cpp +1001 -0
  447. data/ext/ice/cpp/src/IceSSL/OpenSSLTransceiverI.cpp +607 -0
  448. data/ext/ice/cpp/src/IceSSL/OpenSSLTransceiverI.h +75 -0
  449. data/ext/ice/cpp/src/IceSSL/PluginI.cpp +102 -0
  450. data/ext/ice/cpp/src/IceSSL/PluginI.h +56 -0
  451. data/ext/ice/cpp/src/IceSSL/RFC2253.cpp +541 -0
  452. data/ext/ice/cpp/src/IceSSL/RFC2253.h +67 -0
  453. data/ext/ice/cpp/src/IceSSL/SChannelEngine.cpp +729 -0
  454. data/ext/ice/cpp/src/IceSSL/SChannelTransceiverI.cpp +1062 -0
  455. data/ext/ice/cpp/src/IceSSL/SChannelTransceiverI.h +130 -0
  456. data/ext/ice/cpp/src/IceSSL/SSLEngine.cpp +291 -0
  457. data/ext/ice/cpp/src/IceSSL/SSLEngine.h +264 -0
  458. data/ext/ice/cpp/src/IceSSL/SSLEngineF.h +41 -0
  459. data/ext/ice/cpp/src/IceSSL/SecureTransportEngine.cpp +1514 -0
  460. data/ext/ice/cpp/src/IceSSL/SecureTransportTransceiverI.cpp +609 -0
  461. data/ext/ice/cpp/src/IceSSL/SecureTransportTransceiverI.h +91 -0
  462. data/ext/ice/cpp/src/IceSSL/TrustManager.cpp +246 -0
  463. data/ext/ice/cpp/src/IceSSL/TrustManager.h +51 -0
  464. data/ext/ice/cpp/src/IceSSL/TrustManagerF.h +26 -0
  465. data/ext/ice/cpp/src/IceSSL/Util.cpp +1423 -0
  466. data/ext/ice/cpp/src/IceSSL/Util.h +136 -0
  467. data/ext/ice/cpp/src/IceUtil/ArgVector.cpp +65 -0
  468. data/ext/ice/cpp/src/IceUtil/ArgVector.h +41 -0
  469. data/ext/ice/cpp/src/IceUtil/Cond.cpp +386 -0
  470. data/ext/ice/cpp/src/IceUtil/ConvertUTF.cpp +477 -0
  471. data/ext/ice/cpp/src/IceUtil/ConvertUTF.h +144 -0
  472. data/ext/ice/cpp/src/IceUtil/CountDownLatch.cpp +184 -0
  473. data/ext/ice/cpp/src/IceUtil/CtrlCHandler.cpp +273 -0
  474. data/ext/ice/cpp/src/IceUtil/Exception.cpp +782 -0
  475. data/ext/ice/cpp/src/IceUtil/FileUtil.cpp +532 -0
  476. data/ext/ice/cpp/src/IceUtil/FileUtil.h +159 -0
  477. data/ext/ice/cpp/src/IceUtil/InputUtil.cpp +41 -0
  478. data/ext/ice/cpp/src/IceUtil/Makefile +68 -0
  479. data/ext/ice/cpp/src/IceUtil/MutexProtocol.cpp +24 -0
  480. data/ext/ice/cpp/src/IceUtil/Options.cpp +1049 -0
  481. data/ext/ice/cpp/src/IceUtil/OutputUtil.cpp +591 -0
  482. data/ext/ice/cpp/src/IceUtil/Random.cpp +185 -0
  483. data/ext/ice/cpp/src/IceUtil/RecMutex.cpp +257 -0
  484. data/ext/ice/cpp/src/IceUtil/SHA1.cpp +126 -0
  485. data/ext/ice/cpp/src/IceUtil/Shared.cpp +200 -0
  486. data/ext/ice/cpp/src/IceUtil/StopWatch.h +54 -0
  487. data/ext/ice/cpp/src/IceUtil/StringConverter.cpp +450 -0
  488. data/ext/ice/cpp/src/IceUtil/StringUtil.cpp +842 -0
  489. data/ext/ice/cpp/src/IceUtil/Thread.cpp +809 -0
  490. data/ext/ice/cpp/src/IceUtil/ThreadException.cpp +172 -0
  491. data/ext/ice/cpp/src/IceUtil/Time.cpp +306 -0
  492. data/ext/ice/cpp/src/IceUtil/Timer.cpp +251 -0
  493. data/ext/ice/cpp/src/IceUtil/UUID.cpp +174 -0
  494. data/ext/ice/cpp/src/IceUtil/Unicode.cpp +131 -0
  495. data/ext/ice/cpp/src/IceUtil/Unicode.h +49 -0
  496. data/ext/ice/cpp/src/Slice/CPlusPlusUtil.cpp +1139 -0
  497. data/ext/ice/cpp/src/Slice/Checksum.cpp +452 -0
  498. data/ext/ice/cpp/src/Slice/CsUtil.cpp +2650 -0
  499. data/ext/ice/cpp/src/Slice/DotNetNames.cpp +146 -0
  500. data/ext/ice/cpp/src/Slice/FileTracker.cpp +203 -0
  501. data/ext/ice/cpp/src/Slice/Grammar.cpp +4755 -0
  502. data/ext/ice/cpp/src/Slice/Grammar.h +98 -0
  503. data/ext/ice/cpp/src/Slice/GrammarUtil.h +234 -0
  504. data/ext/ice/cpp/src/Slice/JavaUtil.cpp +4376 -0
  505. data/ext/ice/cpp/src/Slice/MD5.cpp +57 -0
  506. data/ext/ice/cpp/src/Slice/MD5.h +44 -0
  507. data/ext/ice/cpp/src/Slice/MD5I.cpp +385 -0
  508. data/ext/ice/cpp/src/Slice/MD5I.h +91 -0
  509. data/ext/ice/cpp/src/Slice/Makefile +65 -0
  510. data/ext/ice/cpp/src/Slice/PHPUtil.cpp +156 -0
  511. data/ext/ice/cpp/src/Slice/Parser.cpp +6386 -0
  512. data/ext/ice/cpp/src/Slice/Preprocessor.cpp +686 -0
  513. data/ext/ice/cpp/src/Slice/Python.cpp +675 -0
  514. data/ext/ice/cpp/src/Slice/PythonUtil.cpp +2614 -0
  515. data/ext/ice/cpp/src/Slice/Ruby.cpp +317 -0
  516. data/ext/ice/cpp/src/Slice/RubyUtil.cpp +1774 -0
  517. data/ext/ice/cpp/src/Slice/Scanner.cpp +2426 -0
  518. data/ext/ice/cpp/src/Slice/Util.cpp +325 -0
  519. data/ext/ice/mcpp/config.h.Darwin +227 -0
  520. data/ext/ice/mcpp/config.h.Linux +227 -0
  521. data/ext/ice/mcpp/config.h.MINGW +7 -0
  522. data/ext/ice/mcpp/configed.H +382 -0
  523. data/ext/ice/mcpp/directive.c +1699 -0
  524. data/ext/ice/mcpp/eval.c +1673 -0
  525. data/ext/ice/mcpp/expand.c +2980 -0
  526. data/ext/ice/mcpp/internal.H +564 -0
  527. data/ext/ice/mcpp/main.c +1131 -0
  528. data/ext/ice/mcpp/mbchar.c +869 -0
  529. data/ext/ice/mcpp/mcpp_lib.h +31 -0
  530. data/ext/ice/mcpp/mcpp_out.h +13 -0
  531. data/ext/ice/mcpp/support.c +2811 -0
  532. data/ext/ice/mcpp/system.H +396 -0
  533. data/ext/ice/mcpp/system.c +4940 -0
  534. data/ice.gemspec +41 -0
  535. data/lib/Glacier2.rb +12 -0
  536. data/lib/Glacier2/Metrics.rb +99 -0
  537. data/lib/Glacier2/PermissionsVerifier.rb +168 -0
  538. data/lib/Glacier2/PermissionsVerifierF.rb +34 -0
  539. data/lib/Glacier2/Router.rb +141 -0
  540. data/lib/Glacier2/RouterF.rb +29 -0
  541. data/lib/Glacier2/SSLInfo.rb +79 -0
  542. data/lib/Glacier2/Session.rb +470 -0
  543. data/lib/Ice.rb +659 -0
  544. data/lib/Ice/BuiltinSequences.rb +64 -0
  545. data/lib/Ice/Communicator.rb +93 -0
  546. data/lib/Ice/CommunicatorF.rb +28 -0
  547. data/lib/Ice/Connection.rb +414 -0
  548. data/lib/Ice/ConnectionF.rb +36 -0
  549. data/lib/Ice/Current.rb +152 -0
  550. data/lib/Ice/Endpoint.rb +265 -0
  551. data/lib/Ice/EndpointF.rb +52 -0
  552. data/lib/Ice/EndpointTypes.rb +77 -0
  553. data/lib/Ice/FacetMap.rb +28 -0
  554. data/lib/Ice/Identity.rb +70 -0
  555. data/lib/Ice/ImplicitContext.rb +59 -0
  556. data/lib/Ice/ImplicitContextF.rb +28 -0
  557. data/lib/Ice/Instrumentation.rb +425 -0
  558. data/lib/Ice/InstrumentationF.rb +35 -0
  559. data/lib/Ice/LocalException.rb +1081 -0
  560. data/lib/Ice/Locator.rb +314 -0
  561. data/lib/Ice/LocatorF.rb +34 -0
  562. data/lib/Ice/Logger.rb +57 -0
  563. data/lib/Ice/LoggerF.rb +28 -0
  564. data/lib/Ice/Metrics.rb +696 -0
  565. data/lib/Ice/ObjectAdapterF.rb +28 -0
  566. data/lib/Ice/ObjectFactory.rb +53 -0
  567. data/lib/Ice/ObjectFactoryF.rb +28 -0
  568. data/lib/Ice/Plugin.rb +87 -0
  569. data/lib/Ice/PluginF.rb +32 -0
  570. data/lib/Ice/Process.rb +93 -0
  571. data/lib/Ice/ProcessF.rb +29 -0
  572. data/lib/Ice/Properties.rb +65 -0
  573. data/lib/Ice/PropertiesAdmin.rb +104 -0
  574. data/lib/Ice/PropertiesF.rb +33 -0
  575. data/lib/Ice/Router.rb +163 -0
  576. data/lib/Ice/RouterF.rb +29 -0
  577. data/lib/Ice/SliceChecksumDict.rb +28 -0
  578. data/lib/Ice/Version.rb +100 -0
  579. data/lib/IceBox.rb +10 -0
  580. data/lib/IceBox/IceBox.rb +272 -0
  581. data/lib/IceGrid.rb +17 -0
  582. data/lib/IceGrid/Admin.rb +1076 -0
  583. data/lib/IceGrid/Descriptor.rb +1505 -0
  584. data/lib/IceGrid/Exception.rb +401 -0
  585. data/lib/IceGrid/FileParser.rb +105 -0
  586. data/lib/IceGrid/Locator.rb +105 -0
  587. data/lib/IceGrid/Observer.rb +571 -0
  588. data/lib/IceGrid/Query.rb +168 -0
  589. data/lib/IceGrid/Registry.rb +120 -0
  590. data/lib/IceGrid/Session.rb +114 -0
  591. data/lib/IceGrid/UserAccountMapper.rb +101 -0
  592. data/lib/IcePatch2.rb +10 -0
  593. data/lib/IcePatch2/FileInfo.rb +75 -0
  594. data/lib/IcePatch2/FileServer.rb +141 -0
  595. data/lib/IceStorm.rb +11 -0
  596. data/lib/IceStorm/IceStorm.rb +463 -0
  597. data/lib/IceStorm/Metrics.rb +155 -0
  598. data/slice/Freeze/BackgroundSaveEvictor.ice +111 -0
  599. data/slice/Freeze/CatalogData.ice +49 -0
  600. data/slice/Freeze/Connection.ice +111 -0
  601. data/slice/Freeze/ConnectionF.ice +20 -0
  602. data/slice/Freeze/DB.ice +37 -0
  603. data/slice/Freeze/Evictor.ice +339 -0
  604. data/slice/Freeze/EvictorF.ice +22 -0
  605. data/slice/Freeze/EvictorStorage.ice +72 -0
  606. data/slice/Freeze/Exception.ice +100 -0
  607. data/slice/Freeze/Transaction.ice +57 -0
  608. data/slice/Freeze/TransactionalEvictor.ice +50 -0
  609. data/slice/Glacier2/Metrics.ice +77 -0
  610. data/slice/Glacier2/PermissionsVerifier.ice +105 -0
  611. data/slice/Glacier2/PermissionsVerifierF.ice +21 -0
  612. data/slice/Glacier2/Router.ice +178 -0
  613. data/slice/Glacier2/RouterF.ice +20 -0
  614. data/slice/Glacier2/SSLInfo.ice +50 -0
  615. data/slice/Glacier2/Session.ice +273 -0
  616. data/slice/Ice/BuiltinSequences.ice +48 -0
  617. data/slice/Ice/Communicator.ice +567 -0
  618. data/slice/Ice/CommunicatorF.ice +20 -0
  619. data/slice/Ice/Connection.ice +323 -0
  620. data/slice/Ice/ConnectionF.ice +22 -0
  621. data/slice/Ice/Current.ice +160 -0
  622. data/slice/Ice/Endpoint.ice +227 -0
  623. data/slice/Ice/EndpointF.ice +32 -0
  624. data/slice/Ice/EndpointTypes.ice +38 -0
  625. data/slice/Ice/FacetMap.ice +25 -0
  626. data/slice/Ice/Identity.ice +59 -0
  627. data/slice/Ice/ImplicitContext.ice +109 -0
  628. data/slice/Ice/ImplicitContextF.ice +20 -0
  629. data/slice/Ice/Instrumentation.ice +499 -0
  630. data/slice/Ice/InstrumentationF.ice +26 -0
  631. data/slice/Ice/LocalException.ice +1015 -0
  632. data/slice/Ice/Locator.ice +227 -0
  633. data/slice/Ice/LocatorF.ice +21 -0
  634. data/slice/Ice/Logger.ice +86 -0
  635. data/slice/Ice/LoggerF.ice +20 -0
  636. data/slice/Ice/Metrics.ice +422 -0
  637. data/slice/Ice/ObjectAdapter.ice +673 -0
  638. data/slice/Ice/ObjectAdapterF.ice +20 -0
  639. data/slice/Ice/ObjectFactory.ice +60 -0
  640. data/slice/Ice/ObjectFactoryF.ice +20 -0
  641. data/slice/Ice/Plugin.ice +117 -0
  642. data/slice/Ice/PluginF.ice +21 -0
  643. data/slice/Ice/Process.ice +54 -0
  644. data/slice/Ice/ProcessF.ice +20 -0
  645. data/slice/Ice/Properties.ice +228 -0
  646. data/slice/Ice/PropertiesAdmin.ice +75 -0
  647. data/slice/Ice/PropertiesF.ice +21 -0
  648. data/slice/Ice/RemoteLogger.ice +232 -0
  649. data/slice/Ice/Router.ice +83 -0
  650. data/slice/Ice/RouterF.ice +20 -0
  651. data/slice/Ice/ServantLocator.ice +117 -0
  652. data/slice/Ice/ServantLocatorF.ice +20 -0
  653. data/slice/Ice/SliceChecksumDict.ice +25 -0
  654. data/slice/Ice/Version.ice +39 -0
  655. data/slice/IceBox/IceBox.ice +194 -0
  656. data/slice/IceDiscovery/IceDiscovery.ice +32 -0
  657. data/slice/IceGrid/Admin.ice +1578 -0
  658. data/slice/IceGrid/Descriptor.ice +1079 -0
  659. data/slice/IceGrid/Discovery.ice +73 -0
  660. data/slice/IceGrid/Exception.ice +383 -0
  661. data/slice/IceGrid/FileParser.ice +61 -0
  662. data/slice/IceGrid/Locator.ice +56 -0
  663. data/slice/IceGrid/Observer.ice +394 -0
  664. data/slice/IceGrid/PluginFacade.ice +316 -0
  665. data/slice/IceGrid/Query.ice +130 -0
  666. data/slice/IceGrid/Registry.ice +138 -0
  667. data/slice/IceGrid/Session.ice +124 -0
  668. data/slice/IceGrid/UserAccountMapper.ice +58 -0
  669. data/slice/IcePatch2/FileInfo.ice +49 -0
  670. data/slice/IcePatch2/FileServer.ice +129 -0
  671. data/slice/IceSSL/ConnectionInfo.ice +34 -0
  672. data/slice/IceSSL/EndpointInfo.ice +41 -0
  673. data/slice/IceStorm/IceStorm.ice +405 -0
  674. data/slice/IceStorm/Metrics.ice +71 -0
  675. metadata +737 -0
@@ -0,0 +1,50 @@
1
+ // **********************************************************************
2
+ //
3
+ // Copyright (c) 2003-2014 ZeroC, Inc. All rights reserved.
4
+ //
5
+ // This copy of Ice is licensed to you under the terms described in the
6
+ // ICE_LICENSE file included in this distribution.
7
+ //
8
+ // **********************************************************************
9
+
10
+ #ifndef ICE_UTIL_COUNT_DOWN_LATCH_H
11
+ #define ICE_UTIL_COUNT_DOWN_LATCH_H
12
+
13
+ #include <IceUtil/Config.h>
14
+
15
+ namespace IceUtilInternal
16
+ {
17
+
18
+ //
19
+ // See java.util.concurrent.CountDownLatch in Java 1.5
20
+ //
21
+
22
+ class ICE_UTIL_API CountDownLatch
23
+ {
24
+ public:
25
+
26
+ CountDownLatch(int);
27
+ ~CountDownLatch();
28
+
29
+ void await() const;
30
+ void countDown();
31
+ int getCount() const;
32
+
33
+ private:
34
+
35
+ #ifdef _WIN32
36
+ mutable LONG _count;
37
+ HANDLE _event;
38
+ #else
39
+ int _count;
40
+ mutable pthread_mutex_t _mutex;
41
+ mutable pthread_cond_t _cond;
42
+
43
+ inline void lock() const;
44
+ inline void unlock() const;
45
+ #endif
46
+ };
47
+
48
+ }
49
+
50
+ #endif
@@ -0,0 +1,70 @@
1
+ // **********************************************************************
2
+ //
3
+ // Copyright (c) 2003-2014 ZeroC, Inc. All rights reserved.
4
+ //
5
+ // This copy of Ice is licensed to you under the terms described in the
6
+ // ICE_LICENSE file included in this distribution.
7
+ //
8
+ // **********************************************************************
9
+
10
+ #ifndef ICE_UTIL_CTRL_C_HANDLER_H
11
+ #define ICE_UTIL_CTRL_C_HANDLER_H
12
+
13
+ #include <IceUtil/Config.h>
14
+ #include <IceUtil/Exception.h>
15
+
16
+ namespace IceUtil
17
+ {
18
+
19
+ // The CtrlCHandler provides a portable way to handle CTRL+C and
20
+ // CTRL+C like signals
21
+ // On Unix/POSIX, the CtrlCHandler handles SIGHUP, SIGINT and SIGTERM.
22
+ // On Windows, it is essentially a wrapper for SetConsoleCtrlHandler().
23
+ //
24
+ // In a process, only one CtrlCHandler can exist at a given time:
25
+ // the CtrlCHandler constructor raises CtrlCHandlerException if
26
+ // you attempt to create a second CtrlCHandler.
27
+ // On Unix/POSIX, it is essential to create the CtrlCHandler before
28
+ // creating any thread, as the CtrlCHandler constructor masks (blocks)
29
+ // SIGHUP, SIGINT and SIGTERM; by default, threads created later will
30
+ // inherit this signal mask.
31
+ //
32
+ // When a CTRL+C or CTRL+C like signal is sent to the process, the
33
+ // user-registered callback is called in a separate thread; it is
34
+ // given the signal number. The callback must not raise exceptions.
35
+ // On Unix/POSIX, the callback is NOT a signal handler and can call
36
+ // functions that are not async-signal safe.
37
+ //
38
+ // The CtrCHandler destructor "unregisters" the callback. However
39
+ // on Unix/POSIX it does not restore the old signal mask in any
40
+ // thread, so SIGHUP, SIGINT and SIGTERM remain blocked.
41
+ //
42
+ // TODO: Maybe the behavior on Windows should be the same? Now we
43
+ // just restore the default behavior (TerminateProcess).
44
+
45
+ typedef void (*CtrlCHandlerCallback)(int);
46
+
47
+ class ICE_UTIL_API CtrlCHandler
48
+ {
49
+ public:
50
+
51
+ CtrlCHandler(CtrlCHandlerCallback = 0);
52
+ ~CtrlCHandler();
53
+
54
+ void setCallback(CtrlCHandlerCallback);
55
+ CtrlCHandlerCallback getCallback() const;
56
+ };
57
+
58
+ class ICE_UTIL_API CtrlCHandlerException : public Exception
59
+ {
60
+ public:
61
+
62
+ CtrlCHandlerException(const char*, int);
63
+ virtual std::string ice_name() const;
64
+ virtual CtrlCHandlerException* ice_clone() const;
65
+ virtual void ice_throw() const;
66
+ };
67
+
68
+ }
69
+
70
+ #endif
@@ -0,0 +1,45 @@
1
+ // **********************************************************************
2
+ //
3
+ // Copyright (c) 2003-2014 ZeroC, Inc. All rights reserved.
4
+ //
5
+ // This copy of Ice is licensed to you under the terms described in the
6
+ // ICE_LICENSE file included in this distribution.
7
+ //
8
+ // **********************************************************************
9
+
10
+ #ifndef ICE_UTIL_DISABLEWARNINGS_H
11
+ #define ICE_UTIL_DISABLEWARNINGS_H
12
+
13
+ //
14
+ // This header file disables or makes non-fatal various compiler warnings that
15
+ // we don't want.
16
+ //
17
+ // IMPORTANT: Do *not* include this header file in another public header file!
18
+ // Doing this may potentially disable the warnings in the source
19
+ // code of our customers, which would be bad. Only include this
20
+ // header file in Ice *source* files!
21
+ //
22
+
23
+ //
24
+ // Microsoft Visual C++
25
+ //
26
+ #if defined(_MSC_VER)
27
+ # define _CRT_SECURE_NO_DEPRECATE 1 // C4996 '<C function>' was declared deprecated
28
+ # pragma warning( 4 : 4996 ) // C4996 '<function>' was declared deprecated
29
+ # pragma warning( 4 : 4800 ) // C4800 forcing value to bool 'true' or 'false' (performance warning)
30
+
31
+ # if (_MSC_VER < 1700)
32
+ # pragma warning( 4 : 4355 ) // C4355 'this' : used in base member initializer list
33
+ # endif
34
+ #endif
35
+
36
+
37
+ //
38
+ // GCC
39
+ //
40
+ #if defined(__GNUC__)
41
+ # pragma GCC diagnostic warning "-Wdeprecated-declarations"
42
+ #endif
43
+
44
+
45
+ #endif
@@ -0,0 +1,184 @@
1
+ // **********************************************************************
2
+ //
3
+ // Copyright (c) 2003-2014 ZeroC, Inc. All rights reserved.
4
+ //
5
+ // This copy of Ice is licensed to you under the terms described in the
6
+ // ICE_LICENSE file included in this distribution.
7
+ //
8
+ // **********************************************************************
9
+
10
+ #ifndef ICE_UTIL_EXCEPTION_H
11
+ #define ICE_UTIL_EXCEPTION_H
12
+
13
+ #include <IceUtil/Config.h>
14
+
15
+ #include <exception>
16
+
17
+ namespace IceUtil
18
+ {
19
+
20
+ class ICE_UTIL_API Exception : public std::exception
21
+ {
22
+ public:
23
+
24
+ Exception();
25
+ Exception(const char*, int);
26
+
27
+ virtual ~Exception() throw();
28
+ virtual std::string ice_name() const;
29
+ virtual void ice_print(std::ostream&) const;
30
+ virtual const char* what() const throw();
31
+ virtual Exception* ice_clone() const;
32
+ virtual void ice_throw() const;
33
+
34
+ const char* ice_file() const;
35
+ int ice_line() const;
36
+ const std::string& ice_stackTrace() const;
37
+
38
+ private:
39
+
40
+ const char* _file;
41
+ int _line;
42
+ static const char* _name;
43
+ const std::string _stackTrace;
44
+ mutable ::std::string _str; // Initialized lazily in what().
45
+ };
46
+
47
+ ICE_UTIL_API std::ostream& operator<<(std::ostream&, const Exception&);
48
+
49
+ class ICE_UTIL_API NullHandleException : public Exception
50
+ {
51
+ public:
52
+
53
+ NullHandleException(const char*, int);
54
+ virtual ~NullHandleException() throw();
55
+ virtual std::string ice_name() const;
56
+ virtual NullHandleException* ice_clone() const;
57
+ virtual void ice_throw() const;
58
+
59
+ private:
60
+
61
+ static const char* _name;
62
+ };
63
+
64
+ class ICE_UTIL_API IllegalArgumentException : public Exception
65
+ {
66
+ public:
67
+
68
+ IllegalArgumentException(const char*, int);
69
+ IllegalArgumentException(const char*, int, const std::string&);
70
+ virtual ~IllegalArgumentException() throw();
71
+ virtual std::string ice_name() const;
72
+ virtual void ice_print(std::ostream&) const;
73
+ virtual IllegalArgumentException* ice_clone() const;
74
+ virtual void ice_throw() const;
75
+
76
+ std::string reason() const;
77
+
78
+ private:
79
+
80
+ static const char* _name;
81
+ const std::string _reason;
82
+ };
83
+
84
+ //
85
+ // IllegalConversionException is raised to report a string conversion error
86
+ //
87
+ class ICE_UTIL_API IllegalConversionException : public Exception
88
+ {
89
+ public:
90
+
91
+ IllegalConversionException(const char*, int);
92
+ IllegalConversionException(const char*, int, const std::string&);
93
+ virtual ~IllegalConversionException() throw();
94
+ virtual std::string ice_name() const;
95
+ virtual void ice_print(std::ostream&) const;
96
+ virtual IllegalConversionException* ice_clone() const;
97
+ virtual void ice_throw() const;
98
+
99
+ std::string reason() const;
100
+ private:
101
+
102
+ static const char* _name;
103
+ const std::string _reason;
104
+ };
105
+
106
+
107
+ class ICE_UTIL_API SyscallException : public Exception
108
+ {
109
+ public:
110
+
111
+ SyscallException(const char*, int, int);
112
+ virtual std::string ice_name() const;
113
+ virtual void ice_print(std::ostream&) const;
114
+ virtual SyscallException* ice_clone() const;
115
+ virtual void ice_throw() const;
116
+
117
+ int error() const;
118
+
119
+ private:
120
+
121
+ const int _error;
122
+ static const char* _name;
123
+ };
124
+
125
+ class ICE_UTIL_API FileLockException : public Exception
126
+ {
127
+ public:
128
+
129
+ FileLockException(const char*, int, int, const std::string&);
130
+ virtual ~FileLockException() throw();
131
+ virtual std::string ice_name() const;
132
+ virtual void ice_print(std::ostream&) const;
133
+ virtual FileLockException* ice_clone() const;
134
+ virtual void ice_throw() const;
135
+
136
+ std::string path() const;
137
+ int error() const;
138
+
139
+ private:
140
+
141
+ const int _error;
142
+ static const char* _name;
143
+ std::string _path;
144
+ };
145
+
146
+ class ICE_UTIL_API OptionalNotSetException : public Exception
147
+ {
148
+ public:
149
+
150
+ OptionalNotSetException(const char*, int);
151
+ virtual ~OptionalNotSetException() throw();
152
+ virtual std::string ice_name() const;
153
+ virtual OptionalNotSetException* ice_clone() const;
154
+ virtual void ice_throw() const;
155
+
156
+ private:
157
+
158
+ static const char* _name;
159
+ };
160
+
161
+ #ifndef _WIN32
162
+ class ICE_UTIL_API IconvInitializationException : public Exception
163
+ {
164
+ public:
165
+
166
+ IconvInitializationException(const char*, int, const std::string&);
167
+ virtual ~IconvInitializationException() throw();
168
+ virtual std::string ice_name() const;
169
+ virtual void ice_print(std::ostream&) const;
170
+ virtual IconvInitializationException* ice_clone() const;
171
+ virtual void ice_throw() const;
172
+
173
+ std::string reason() const;
174
+
175
+ private:
176
+
177
+ static const char* _name;
178
+ std::string _reason;
179
+ };
180
+ #endif
181
+
182
+ }
183
+
184
+ #endif
@@ -0,0 +1,389 @@
1
+ // **********************************************************************
2
+ //
3
+ // Copyright (c) 2003-2014 ZeroC, Inc. All rights reserved.
4
+ //
5
+ // This copy of Ice is licensed to you under the terms described in the
6
+ // ICE_LICENSE file included in this distribution.
7
+ //
8
+ // **********************************************************************
9
+
10
+ #ifndef ICE_UTIL_FUNCTIONAL_H
11
+ #define ICE_UTIL_FUNCTIONAL_H
12
+
13
+ #include <IceUtil/Handle.h>
14
+ #include <functional>
15
+
16
+ namespace IceUtilInternal
17
+ {
18
+
19
+ // ----------------------------------------------------------------------
20
+ // Various function objects that work with handles instead of plain
21
+ // pointers.
22
+ // ----------------------------------------------------------------------
23
+
24
+ template<class R, class T, class H>
25
+ class MemFun : public std::unary_function<H, R>
26
+ {
27
+ typedef R (T::*MemberFN)(void);
28
+ MemberFN _mfn;
29
+
30
+ public:
31
+
32
+ explicit MemFun(MemberFN p) : _mfn(p) { }
33
+ R operator()(H handle) const
34
+ {
35
+ return (handle.get() ->* _mfn)();
36
+ }
37
+ };
38
+
39
+ template<class R, class T, class H, class A>
40
+ class MemFun1 : public std::binary_function<H, A, R>
41
+ {
42
+ typedef R (T::*MemberFN)(A);
43
+ MemberFN _mfn;
44
+
45
+ public:
46
+
47
+ explicit MemFun1(MemberFN p) : _mfn(p) { }
48
+ R operator()(H handle, A arg) const
49
+ {
50
+ return (handle.get() ->* _mfn)(arg);
51
+ }
52
+ };
53
+
54
+ template<class T, class H>
55
+ class VoidMemFun : public std::unary_function<H, void>
56
+ {
57
+ typedef void (T::*MemberFN)(void);
58
+ MemberFN _mfn;
59
+
60
+ public:
61
+
62
+ explicit VoidMemFun(MemberFN p) : _mfn(p) { }
63
+ void operator()(H handle) const
64
+ {
65
+ (handle.get() ->* _mfn)();
66
+ }
67
+ };
68
+
69
+ template<class T, class H, class A>
70
+ class VoidMemFun1 : public std::binary_function<H, A, void>
71
+ {
72
+ typedef void (T::*MemberFN)(A);
73
+ MemberFN _mfn;
74
+
75
+ public:
76
+
77
+ explicit VoidMemFun1(MemberFN p) : _mfn(p) { }
78
+ void operator()(H handle, A arg) const
79
+ {
80
+ (handle.get() ->* _mfn)(arg);
81
+ }
82
+ };
83
+
84
+ template<class R, class K, class T, class H>
85
+ class SecondMemFun : public std::unary_function<std::pair<K, H>, R>
86
+ {
87
+ typedef R (T::*MemberFN)(void);
88
+ MemberFN _mfn;
89
+
90
+ public:
91
+
92
+ explicit SecondMemFun(MemberFN p) : _mfn(p) { }
93
+ R operator()(std::pair<K, H> pair) const
94
+ {
95
+ return (pair.second.get() ->* _mfn)();
96
+ }
97
+ };
98
+
99
+ template<class R, class K, class T, class H, class A>
100
+ class SecondMemFun1 : public std::binary_function<std::pair<K, H>, A, R>
101
+ {
102
+ typedef R (T::*MemberFN)(A);
103
+ MemberFN _mfn;
104
+
105
+ public:
106
+
107
+ explicit SecondMemFun1(MemberFN p) : _mfn(p) { }
108
+ R operator()(std::pair<K, H> pair, A arg) const
109
+ {
110
+ return (pair.second.get() ->* _mfn)(arg);
111
+ }
112
+ };
113
+
114
+ template<class K, class T, class H>
115
+ class SecondVoidMemFun : public std::unary_function<std::pair<K, H>, void>
116
+ {
117
+ typedef void (T::*MemberFN)(void);
118
+ MemberFN _mfn;
119
+
120
+ public:
121
+
122
+ explicit SecondVoidMemFun(MemberFN p) : _mfn(p) { }
123
+ void operator()(std::pair<K, H> pair) const
124
+ {
125
+ (pair.second.get() ->* _mfn)();
126
+ }
127
+ };
128
+
129
+ template<class K, class T, class H, class A>
130
+ class SecondVoidMemFun1 : public std::binary_function<std::pair<K, H>, A, void>
131
+ {
132
+ typedef void (T::*MemberFN)(A);
133
+ MemberFN _mfn;
134
+
135
+ public:
136
+
137
+ explicit SecondVoidMemFun1(MemberFN p) : _mfn(p) { }
138
+ void operator()(std::pair<K, H> pair, A arg) const
139
+ {
140
+ (pair.second.get() ->* _mfn)(arg);
141
+ }
142
+ };
143
+
144
+ template<class R, class T, class H>
145
+ class ConstMemFun : public std::unary_function<H, R>
146
+ {
147
+ typedef R (T::*MemberFN)(void) const;
148
+ MemberFN _mfn;
149
+
150
+ public:
151
+
152
+ explicit ConstMemFun(MemberFN p) : _mfn(p) { }
153
+ R operator()(H handle) const
154
+ {
155
+ return (handle.get() ->* _mfn)();
156
+ }
157
+ };
158
+
159
+ template<class R, class T, class H, class A>
160
+ class ConstMemFun1 : public std::binary_function<H, A, R>
161
+ {
162
+ typedef R (T::*MemberFN)(A) const;
163
+ MemberFN _mfn;
164
+
165
+ public:
166
+
167
+ explicit ConstMemFun1(MemberFN p) : _mfn(p) { }
168
+ R operator()(H handle, A arg) const
169
+ {
170
+ return (handle.get() ->* _mfn)(arg);
171
+ }
172
+ };
173
+
174
+ template<class T, class H>
175
+ class ConstVoidMemFun : public std::unary_function<H, void>
176
+ {
177
+ typedef void (T::*MemberFN)(void) const;
178
+ MemberFN _mfn;
179
+
180
+ public:
181
+
182
+ explicit ConstVoidMemFun(MemberFN p) : _mfn(p) { }
183
+ void operator()(H handle) const
184
+ {
185
+ (handle.get() ->* _mfn)();
186
+ }
187
+ };
188
+
189
+ template<class T, class H, class A>
190
+ class ConstVoidMemFun1 : public std::binary_function<H, A, void>
191
+ {
192
+ typedef void (T::*MemberFN)(A) const;
193
+ MemberFN _mfn;
194
+
195
+ public:
196
+
197
+ explicit ConstVoidMemFun1(MemberFN p) : _mfn(p) { }
198
+ void operator()(H handle, A arg) const
199
+ {
200
+ (handle.get() ->* _mfn)(arg);
201
+ }
202
+ };
203
+
204
+ template<class R, class K, class T, class H>
205
+ class SecondConstMemFun : public std::unary_function<std::pair<K, H>, R>
206
+ {
207
+ typedef R (T::*MemberFN)(void) const;
208
+ MemberFN _mfn;
209
+
210
+ public:
211
+
212
+ explicit SecondConstMemFun(MemberFN p) : _mfn(p) { }
213
+ R operator()(std::pair<K, H> pair) const
214
+ {
215
+ return (pair.second.get() ->* _mfn)();
216
+ }
217
+ };
218
+
219
+ template<class R, class K, class T, class H, class A>
220
+ class SecondConstMemFun1 : public std::binary_function<std::pair<K, H>, A, R>
221
+ {
222
+ typedef R (T::*MemberFN)(A) const;
223
+ MemberFN _mfn;
224
+
225
+ public:
226
+
227
+ explicit SecondConstMemFun1(MemberFN p) : _mfn(p) { }
228
+ R operator()(std::pair<K, H> pair, A arg) const
229
+ {
230
+ return (pair.second.get() ->* _mfn)(arg);
231
+ }
232
+ };
233
+
234
+ template<class K, class T, class H>
235
+ class SecondConstVoidMemFun : public std::unary_function<std::pair<K, H>, void>
236
+ {
237
+ typedef void (T::*MemberFN)(void) const;
238
+ MemberFN _mfn;
239
+
240
+ public:
241
+
242
+ explicit SecondConstVoidMemFun(MemberFN p) : _mfn(p) { }
243
+ void operator()(std::pair<K, H> pair) const
244
+ {
245
+ (pair.second.get() ->* _mfn)();
246
+ }
247
+ };
248
+
249
+ template<class K, class T, class H, class A>
250
+ class SecondConstVoidMemFun1 : public std::binary_function<std::pair<K, H>, A, void>
251
+ {
252
+ typedef void (T::*MemberFN)(A) const;
253
+ MemberFN _mfn;
254
+
255
+ public:
256
+
257
+ explicit SecondConstVoidMemFun1(MemberFN p) : _mfn(p) { }
258
+ void operator()(std::pair<K, H> pair, A arg) const
259
+ {
260
+ (pair.second.get() ->* _mfn)(arg);
261
+ }
262
+ };
263
+
264
+ }
265
+
266
+ // ----------------------------------------------------------------------
267
+ // Inline functions that return function objects that work with
268
+ // IceUtil::Handle
269
+ // ----------------------------------------------------------------------
270
+
271
+ namespace IceUtil
272
+ {
273
+
274
+ template<class R, class T>
275
+ inline ::IceUtilInternal::MemFun<R, T, Handle<T> >
276
+ memFun(R (T::*p)(void))
277
+ {
278
+ return ::IceUtilInternal::MemFun<R, T, Handle<T> >(p);
279
+ }
280
+
281
+ template<class R, class T, class A>
282
+ inline ::IceUtilInternal::MemFun1<R, T, Handle<T>, A>
283
+ memFun1(R (T::*p)(A))
284
+ {
285
+ return ::IceUtilInternal::MemFun1<R, T, Handle<T>, A>(p);
286
+ }
287
+
288
+ template<class T>
289
+ inline ::IceUtilInternal::VoidMemFun<T, Handle<T> >
290
+ voidMemFun(void (T::*p)(void))
291
+ {
292
+ return ::IceUtilInternal::VoidMemFun<T, Handle<T> >(p);
293
+ }
294
+
295
+ template<class T, class A>
296
+ inline ::IceUtilInternal::VoidMemFun1<T, Handle<T>, A>
297
+ voidMemFun1(void (T::*p)(A))
298
+ {
299
+ return ::IceUtilInternal::VoidMemFun1<T, Handle<T>, A>(p);
300
+ }
301
+
302
+ template<class R, class K, class T>
303
+ inline ::IceUtilInternal::SecondMemFun<R, K, T, Handle<T> >
304
+ secondMemFun(R (T::*p)(void))
305
+ {
306
+ return ::IceUtilInternal::SecondMemFun<R, K, T, Handle<T> >(p);
307
+ }
308
+
309
+ template<class R, class K, class T, class A>
310
+ inline ::IceUtilInternal::SecondMemFun1<R, K, T, Handle<T>, A>
311
+ secondMemFun1(R (T::*p)(A))
312
+ {
313
+ return ::IceUtilInternal::SecondMemFun1<R, K, T, Handle<T>, A>(p);
314
+ }
315
+
316
+ template<class K, class T>
317
+ inline ::IceUtilInternal::SecondVoidMemFun<K, T, Handle<T> >
318
+ secondVoidMemFun(void (T::*p)(void))
319
+ {
320
+ return ::IceUtilInternal::SecondVoidMemFun<K, T, Handle<T> >(p);
321
+ }
322
+
323
+ template<class K, class T, class A>
324
+ inline ::IceUtilInternal::SecondVoidMemFun1<K, T, Handle<T>, A>
325
+ secondVoidMemFun1(void (T::*p)(A))
326
+ {
327
+ return ::IceUtilInternal::SecondVoidMemFun1<K, T, Handle<T>, A>(p);
328
+ }
329
+
330
+ template<class R, class T>
331
+ inline ::IceUtilInternal::ConstMemFun<R, T, Handle<T> >
332
+ constMemFun(R (T::*p)(void) const)
333
+ {
334
+ return ::IceUtilInternal::ConstMemFun<R, T, Handle<T> >(p);
335
+ }
336
+
337
+ template<class R, class T, class A>
338
+ inline ::IceUtilInternal::ConstMemFun1<R, T, Handle<T>, A>
339
+ constMemFun1(R (T::*p)(A) const)
340
+ {
341
+ return ::IceUtilInternal::ConstMemFun1<R, T, Handle<T>, A>(p);
342
+ }
343
+
344
+ template<class T>
345
+ inline ::IceUtilInternal::ConstVoidMemFun<T, Handle<T> >
346
+ constVoidMemFun(void (T::*p)(void) const)
347
+ {
348
+ return ::IceUtilInternal::ConstVoidMemFun<T, Handle<T> >(p);
349
+ }
350
+
351
+ template<class T, class A>
352
+ inline ::IceUtilInternal::ConstVoidMemFun1<T, Handle<T>, A>
353
+ constVoidMemFun1(void (T::*p)(A) const)
354
+ {
355
+ return ::IceUtilInternal::ConstVoidMemFun1<T, Handle<T>, A>(p);
356
+ }
357
+
358
+ template<class R, class K, class T>
359
+ inline ::IceUtilInternal::SecondConstMemFun<R, K, T, Handle<T> >
360
+ secondConstMemFun(R (T::*p)(void) const)
361
+ {
362
+ return ::IceUtilInternal::SecondConstMemFun<R, K, T, Handle<T> >(p);
363
+ }
364
+
365
+ template<class R, class K, class T, class A>
366
+ inline ::IceUtilInternal::SecondConstMemFun1<R, K, T, Handle<T>, A>
367
+ secondConstMemFun1(R (T::*p)(A) const)
368
+ {
369
+ return ::IceUtilInternal::SecondConstMemFun1<R, K, T, Handle<T>, A>(p);
370
+ }
371
+
372
+ template<class K, class T>
373
+ inline ::IceUtilInternal::SecondConstVoidMemFun<K, T, Handle<T> >
374
+ secondConstVoidMemFun(void (T::*p)(void) const)
375
+ {
376
+ return ::IceUtilInternal::SecondConstVoidMemFun<K, T, Handle<T> >(p);
377
+ }
378
+
379
+ template<class K, class T, class A>
380
+ inline ::IceUtilInternal::SecondConstVoidMemFun1<K, T, Handle<T>, A>
381
+ secondConstVoidMemFun1(void (T::*p)(A) const)
382
+ {
383
+ return ::IceUtilInternal::SecondConstVoidMemFun1<K, T, Handle<T>, A>(p);
384
+ }
385
+
386
+ }
387
+
388
+ #endif
389
+