zeroc-ice 3.7.2 → 3.7.3

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 (283) hide show
  1. checksums.yaml +5 -5
  2. data/ext/Config.h +4 -0
  3. data/ext/Operation.cpp +5 -5
  4. data/ext/Properties.cpp +1 -1
  5. data/ext/Proxy.cpp +16 -2
  6. data/ext/Types.cpp +45 -40
  7. data/ext/Util.cpp +1 -1
  8. data/ext/Util.h +10 -8
  9. data/ext/ice/cpp/include/Ice/Config.h +4 -0
  10. data/ext/ice/cpp/include/Ice/FactoryTableInit.h +1 -1
  11. data/ext/ice/cpp/include/Ice/IconvStringConverter.h +4 -3
  12. data/ext/ice/cpp/include/Ice/InputStream.h +4 -4
  13. data/ext/ice/cpp/include/Ice/Optional.h +11 -0
  14. data/ext/ice/cpp/include/Ice/OutgoingAsync.h +1 -1
  15. data/ext/ice/cpp/include/Ice/OutputStream.h +5 -5
  16. data/ext/ice/cpp/include/Ice/Proxy.h +17 -5
  17. data/ext/ice/cpp/include/Ice/StreamHelpers.h +1 -1
  18. data/ext/ice/cpp/include/Ice/Value.h +1 -1
  19. data/ext/ice/cpp/include/IceUtil/Atomic.h +1 -1
  20. data/ext/ice/cpp/include/IceUtil/Config.h +16 -6
  21. data/ext/ice/cpp/include/IceUtil/ConsoleUtil.h +4 -4
  22. data/ext/ice/cpp/include/IceUtil/Optional.h +8 -0
  23. data/ext/ice/cpp/include/IceUtil/OutputUtil.h +17 -14
  24. data/ext/ice/cpp/include/IceUtil/Random.h +1 -1
  25. data/ext/ice/cpp/include/IceUtil/ResourceConfig.h +2 -2
  26. data/ext/ice/cpp/include/IceUtil/ScannerConfig.h +6 -0
  27. data/ext/ice/cpp/include/IceUtil/StringConverter.h +1 -1
  28. data/ext/ice/cpp/include/generated/Ice/BuiltinSequences.h +3 -3
  29. data/ext/ice/cpp/include/generated/Ice/Communicator.h +3 -3
  30. data/ext/ice/cpp/include/generated/Ice/CommunicatorF.h +3 -3
  31. data/ext/ice/cpp/include/generated/Ice/Connection.h +33 -36
  32. data/ext/ice/cpp/include/generated/Ice/ConnectionF.h +3 -3
  33. data/ext/ice/cpp/include/generated/Ice/Current.h +20 -21
  34. data/ext/ice/cpp/include/generated/Ice/Endpoint.h +24 -24
  35. data/ext/ice/cpp/include/generated/Ice/EndpointF.h +3 -3
  36. data/ext/ice/cpp/include/generated/Ice/EndpointTypes.h +3 -3
  37. data/ext/ice/cpp/include/generated/Ice/FacetMap.h +3 -3
  38. data/ext/ice/cpp/include/generated/Ice/Identity.h +4 -5
  39. data/ext/ice/cpp/include/generated/Ice/ImplicitContext.h +3 -3
  40. data/ext/ice/cpp/include/generated/Ice/ImplicitContextF.h +3 -3
  41. data/ext/ice/cpp/include/generated/Ice/Instrumentation.h +15 -15
  42. data/ext/ice/cpp/include/generated/Ice/InstrumentationF.h +3 -3
  43. data/ext/ice/cpp/include/generated/Ice/LocalException.h +27 -93
  44. data/ext/ice/cpp/include/generated/Ice/Locator.h +27 -32
  45. data/ext/ice/cpp/include/generated/Ice/LocatorF.h +3 -3
  46. data/ext/ice/cpp/include/generated/Ice/Logger.h +3 -3
  47. data/ext/ice/cpp/include/generated/Ice/LoggerF.h +3 -3
  48. data/ext/ice/cpp/include/generated/Ice/Metrics.h +75 -79
  49. data/ext/ice/cpp/include/generated/Ice/ObjectAdapter.h +3 -3
  50. data/ext/ice/cpp/include/generated/Ice/ObjectAdapterF.h +3 -3
  51. data/ext/ice/cpp/include/generated/Ice/ObjectFactory.h +3 -3
  52. data/ext/ice/cpp/include/generated/Ice/Plugin.h +3 -3
  53. data/ext/ice/cpp/include/generated/Ice/PluginF.h +3 -3
  54. data/ext/ice/cpp/include/generated/Ice/Process.h +3 -3
  55. data/ext/ice/cpp/include/generated/Ice/ProcessF.h +3 -3
  56. data/ext/ice/cpp/include/generated/Ice/Properties.h +3 -3
  57. data/ext/ice/cpp/include/generated/Ice/PropertiesAdmin.h +9 -9
  58. data/ext/ice/cpp/include/generated/Ice/PropertiesF.h +3 -3
  59. data/ext/ice/cpp/include/generated/Ice/RemoteLogger.h +9 -11
  60. data/ext/ice/cpp/include/generated/Ice/Router.h +22 -22
  61. data/ext/ice/cpp/include/generated/Ice/RouterF.h +3 -3
  62. data/ext/ice/cpp/include/generated/Ice/ServantLocator.h +3 -3
  63. data/ext/ice/cpp/include/generated/Ice/ServantLocatorF.h +3 -3
  64. data/ext/ice/cpp/include/generated/Ice/SliceChecksumDict.h +3 -3
  65. data/ext/ice/cpp/include/generated/Ice/ValueFactory.h +3 -3
  66. data/ext/ice/cpp/include/generated/Ice/Version.h +15 -17
  67. data/ext/ice/cpp/include/generated/IceSSL/ConnectionInfo.h +3 -3
  68. data/ext/ice/cpp/include/generated/IceSSL/ConnectionInfoF.h +3 -3
  69. data/ext/ice/cpp/include/generated/IceSSL/EndpointInfo.h +3 -3
  70. data/ext/ice/cpp/src/Ice/ArgVector.cpp +3 -3
  71. data/ext/ice/cpp/src/Ice/Base64.cpp +11 -12
  72. data/ext/ice/cpp/src/Ice/BatchRequestQueue.cpp +1 -1
  73. data/ext/ice/cpp/src/Ice/Buffer.cpp +2 -2
  74. data/ext/ice/cpp/src/Ice/BuiltinSequences.cpp +3 -3
  75. data/ext/ice/cpp/src/Ice/Communicator.cpp +3 -3
  76. data/ext/ice/cpp/src/Ice/CommunicatorF.cpp +3 -3
  77. data/ext/ice/cpp/src/Ice/CommunicatorI.cpp +19 -0
  78. data/ext/ice/cpp/src/Ice/CommunicatorI.h +5 -0
  79. data/ext/ice/cpp/src/Ice/Connection.cpp +3 -3
  80. data/ext/ice/cpp/src/Ice/ConnectionF.cpp +3 -3
  81. data/ext/ice/cpp/src/Ice/ConnectionI.cpp +31 -16
  82. data/ext/ice/cpp/src/Ice/Current.cpp +3 -3
  83. data/ext/ice/cpp/src/Ice/DispatchInterceptor.cpp +13 -0
  84. data/ext/ice/cpp/src/Ice/DynamicLibrary.cpp +6 -5
  85. data/ext/ice/cpp/src/Ice/Endpoint.cpp +3 -3
  86. data/ext/ice/cpp/src/Ice/EndpointF.cpp +3 -3
  87. data/ext/ice/cpp/src/Ice/EndpointTypes.cpp +3 -3
  88. data/ext/ice/cpp/src/Ice/Exception.cpp +5 -5
  89. data/ext/ice/cpp/src/Ice/FacetMap.cpp +3 -3
  90. data/ext/ice/cpp/src/Ice/HashUtil.h +1 -1
  91. data/ext/ice/cpp/src/Ice/IPEndpointI.cpp +12 -1
  92. data/ext/ice/cpp/src/Ice/Identity.cpp +3 -3
  93. data/ext/ice/cpp/src/Ice/ImplicitContext.cpp +3 -3
  94. data/ext/ice/cpp/src/Ice/ImplicitContextF.cpp +3 -3
  95. data/ext/ice/cpp/src/Ice/Incoming.cpp +2 -0
  96. data/ext/ice/cpp/src/Ice/Initialize.cpp +4 -3
  97. data/ext/ice/cpp/src/Ice/InputStream.cpp +19 -19
  98. data/ext/ice/cpp/src/Ice/Instance.cpp +28 -8
  99. data/ext/ice/cpp/src/Ice/Instrumentation.cpp +3 -3
  100. data/ext/ice/cpp/src/Ice/InstrumentationF.cpp +3 -3
  101. data/ext/ice/cpp/src/Ice/LocalException.cpp +3 -3
  102. data/ext/ice/cpp/src/Ice/Locator.cpp +7 -7
  103. data/ext/ice/cpp/src/Ice/LocatorF.cpp +3 -3
  104. data/ext/ice/cpp/src/Ice/Logger.cpp +3 -3
  105. data/ext/ice/cpp/src/Ice/LoggerAdminI.cpp +1 -7
  106. data/ext/ice/cpp/src/Ice/LoggerF.cpp +3 -3
  107. data/ext/ice/cpp/src/Ice/LoggerI.cpp +6 -0
  108. data/ext/ice/cpp/src/Ice/Metrics.cpp +5 -5
  109. data/ext/ice/cpp/src/Ice/Network.cpp +23 -22
  110. data/ext/ice/cpp/src/Ice/Network.h +1 -1
  111. data/ext/ice/cpp/src/Ice/OSLogLoggerI.cpp +57 -0
  112. data/ext/ice/cpp/src/Ice/OSLogLoggerI.h +40 -0
  113. data/ext/ice/cpp/src/Ice/Object.cpp +9 -7
  114. data/ext/ice/cpp/src/Ice/ObjectAdapter.cpp +3 -3
  115. data/ext/ice/cpp/src/Ice/ObjectAdapterF.cpp +3 -3
  116. data/ext/ice/cpp/src/Ice/ObjectAdapterI.cpp +13 -1
  117. data/ext/ice/cpp/src/Ice/ObjectAdapterI.h +4 -0
  118. data/ext/ice/cpp/src/Ice/ObjectFactory.cpp +3 -3
  119. data/ext/ice/cpp/src/Ice/OutgoingAsync.cpp +1 -1
  120. data/ext/ice/cpp/src/Ice/OutputStream.cpp +24 -24
  121. data/ext/ice/cpp/src/Ice/Plugin.cpp +3 -3
  122. data/ext/ice/cpp/src/Ice/PluginF.cpp +3 -3
  123. data/ext/ice/cpp/src/Ice/Process.cpp +3 -3
  124. data/ext/ice/cpp/src/Ice/ProcessF.cpp +3 -3
  125. data/ext/ice/cpp/src/Ice/Properties.cpp +3 -3
  126. data/ext/ice/cpp/src/Ice/PropertiesAdmin.cpp +4 -4
  127. data/ext/ice/cpp/src/Ice/PropertiesF.cpp +3 -3
  128. data/ext/ice/cpp/src/Ice/PropertyNames.cpp +2 -1
  129. data/ext/ice/cpp/src/Ice/PropertyNames.h +1 -1
  130. data/ext/ice/cpp/src/Ice/Proxy.cpp +6 -0
  131. data/ext/ice/cpp/src/Ice/ProxyFactory.cpp +1 -1
  132. data/ext/ice/cpp/src/Ice/ReferenceFactory.cpp +1 -1
  133. data/ext/ice/cpp/src/Ice/RegisterPluginsInit.cpp +3 -2
  134. data/ext/ice/cpp/src/Ice/RemoteLogger.cpp +3 -3
  135. data/ext/ice/cpp/src/Ice/Router.cpp +6 -6
  136. data/ext/ice/cpp/src/Ice/RouterF.cpp +3 -3
  137. data/ext/ice/cpp/src/Ice/SHA1.cpp +2 -2
  138. data/ext/ice/cpp/src/Ice/Selector.cpp +18 -13
  139. data/ext/ice/cpp/src/Ice/ServantLocator.cpp +3 -3
  140. data/ext/ice/cpp/src/Ice/ServantLocatorF.cpp +3 -3
  141. data/ext/ice/cpp/src/Ice/SliceChecksumDict.cpp +3 -3
  142. data/ext/ice/cpp/src/Ice/StreamSocket.cpp +6 -6
  143. data/ext/ice/cpp/src/Ice/TcpAcceptor.cpp +6 -0
  144. data/ext/ice/cpp/src/Ice/TcpConnector.cpp +5 -0
  145. data/ext/ice/cpp/src/Ice/TcpEndpointI.cpp +5 -0
  146. data/ext/ice/cpp/src/Ice/TcpTransceiver.cpp +5 -0
  147. data/ext/ice/cpp/src/Ice/ThreadPool.cpp +63 -0
  148. data/ext/ice/cpp/src/Ice/ThreadPool.h +10 -2
  149. data/ext/ice/cpp/src/Ice/Timer.cpp +10 -0
  150. data/ext/ice/cpp/src/Ice/UdpEndpointI.cpp +11 -1
  151. data/ext/ice/cpp/src/Ice/UdpTransceiver.cpp +10 -2
  152. data/ext/ice/cpp/src/Ice/ValueFactory.cpp +3 -3
  153. data/ext/ice/cpp/src/Ice/Version.cpp +3 -3
  154. data/ext/ice/cpp/src/Ice/WSTransceiver.cpp +16 -15
  155. data/ext/ice/cpp/src/IceDiscovery/IceDiscovery.cpp +3 -3
  156. data/ext/ice/cpp/src/IceDiscovery/IceDiscovery.h +3 -3
  157. data/ext/ice/cpp/src/IceLocatorDiscovery/IceLocatorDiscovery.cpp +3 -3
  158. data/ext/ice/cpp/src/IceLocatorDiscovery/IceLocatorDiscovery.h +3 -3
  159. data/ext/ice/cpp/src/IceLocatorDiscovery/PluginI.cpp +37 -8
  160. data/ext/ice/cpp/src/IceSSL/CertificateI.cpp +3 -3
  161. data/ext/ice/cpp/src/IceSSL/ConnectionInfo.cpp +3 -3
  162. data/ext/ice/cpp/src/IceSSL/ConnectionInfoF.cpp +3 -3
  163. data/ext/ice/cpp/src/IceSSL/EndpointInfo.cpp +3 -3
  164. data/ext/ice/cpp/src/IceSSL/OpenSSLEngine.cpp +4 -16
  165. data/ext/ice/cpp/src/IceSSL/OpenSSLEngine.h +0 -1
  166. data/ext/ice/cpp/src/IceSSL/OpenSSLTransceiverI.cpp +40 -3
  167. data/ext/ice/cpp/src/IceSSL/SChannelEngine.cpp +0 -7
  168. data/ext/ice/cpp/src/IceSSL/SChannelEngine.h +0 -2
  169. data/ext/ice/cpp/src/IceSSL/SChannelTransceiverI.cpp +18 -6
  170. data/ext/ice/cpp/src/IceSSL/SSLEngine.cpp +19 -7
  171. data/ext/ice/cpp/src/IceSSL/SSLEngine.h +2 -0
  172. data/ext/ice/cpp/src/IceSSL/SecureTransportCertificateI.cpp +32 -21
  173. data/ext/ice/cpp/src/IceSSL/SecureTransportTransceiverI.cpp +21 -6
  174. data/ext/ice/cpp/src/IceSSL/SecureTransportUtil.cpp +19 -16
  175. data/ext/ice/cpp/src/IceSSL/Util.cpp +11 -5
  176. data/ext/ice/cpp/src/IceUtil/FileUtil.cpp +1 -1
  177. data/ext/ice/cpp/src/IceUtil/Options.cpp +3 -3
  178. data/ext/ice/cpp/src/IceUtil/OutputUtil.cpp +40 -10
  179. data/ext/ice/cpp/src/IceUtil/Random.cpp +2 -2
  180. data/ext/ice/cpp/src/IceUtil/StringConverter.cpp +5 -5
  181. data/ext/ice/cpp/src/IceUtil/StringUtil.cpp +3 -3
  182. data/ext/ice/cpp/src/IceUtil/Time.cpp +3 -3
  183. data/ext/ice/cpp/src/IceUtil/UUID.cpp +5 -5
  184. data/ext/ice/cpp/src/IceUtil/UtilException.cpp +4 -4
  185. data/ext/ice/cpp/src/Slice/CPlusPlusUtil.cpp +13 -9
  186. data/ext/ice/cpp/src/Slice/CPlusPlusUtil.h +1 -1
  187. data/ext/ice/cpp/src/Slice/Grammar.cpp +8 -0
  188. data/ext/ice/cpp/src/Slice/JavaUtil.cpp +1 -2
  189. data/ext/ice/cpp/src/Slice/MD5I.cpp +8 -0
  190. data/ext/ice/cpp/src/Slice/Parser.cpp +60 -112
  191. data/ext/ice/cpp/src/Slice/Parser.h +27 -1
  192. data/ext/ice/cpp/src/Slice/Preprocessor.cpp +2 -1
  193. data/ext/ice/cpp/src/Slice/PythonUtil.cpp +10 -10
  194. data/ext/ice/cpp/src/Slice/RubyUtil.cpp +1 -1
  195. data/ext/ice/cpp/src/Slice/Scanner.cpp +8 -0
  196. data/ext/ice/cpp/src/Slice/StringLiteralUtil.cpp +11 -6
  197. data/ext/ice/mcpp/Makefile +2 -5
  198. data/ice.gemspec +1 -1
  199. data/lib/Glacier2/Metrics.rb +1 -1
  200. data/lib/Glacier2/PermissionsVerifier.rb +1 -1
  201. data/lib/Glacier2/PermissionsVerifierF.rb +1 -1
  202. data/lib/Glacier2/Router.rb +1 -1
  203. data/lib/Glacier2/RouterF.rb +1 -1
  204. data/lib/Glacier2/SSLInfo.rb +1 -1
  205. data/lib/Glacier2/Session.rb +1 -1
  206. data/lib/Ice/BuiltinSequences.rb +1 -1
  207. data/lib/Ice/Communicator.rb +1 -1
  208. data/lib/Ice/CommunicatorF.rb +1 -1
  209. data/lib/Ice/Connection.rb +1 -1
  210. data/lib/Ice/ConnectionF.rb +1 -1
  211. data/lib/Ice/Current.rb +1 -1
  212. data/lib/Ice/Endpoint.rb +1 -1
  213. data/lib/Ice/EndpointF.rb +1 -1
  214. data/lib/Ice/EndpointTypes.rb +1 -1
  215. data/lib/Ice/FacetMap.rb +1 -1
  216. data/lib/Ice/Identity.rb +1 -1
  217. data/lib/Ice/ImplicitContext.rb +1 -1
  218. data/lib/Ice/ImplicitContextF.rb +1 -1
  219. data/lib/Ice/Instrumentation.rb +1 -1
  220. data/lib/Ice/InstrumentationF.rb +1 -1
  221. data/lib/Ice/LocalException.rb +1 -1
  222. data/lib/Ice/Locator.rb +1 -1
  223. data/lib/Ice/LocatorF.rb +1 -1
  224. data/lib/Ice/Logger.rb +1 -1
  225. data/lib/Ice/LoggerF.rb +1 -1
  226. data/lib/Ice/Metrics.rb +1 -1
  227. data/lib/Ice/ObjectAdapter.rb +1 -1
  228. data/lib/Ice/ObjectAdapterF.rb +1 -1
  229. data/lib/Ice/ObjectFactory.rb +1 -1
  230. data/lib/Ice/Plugin.rb +1 -1
  231. data/lib/Ice/PluginF.rb +1 -1
  232. data/lib/Ice/Process.rb +1 -1
  233. data/lib/Ice/ProcessF.rb +1 -1
  234. data/lib/Ice/Properties.rb +1 -1
  235. data/lib/Ice/PropertiesAdmin.rb +1 -1
  236. data/lib/Ice/PropertiesF.rb +1 -1
  237. data/lib/Ice/RemoteLogger.rb +1 -1
  238. data/lib/Ice/Router.rb +1 -1
  239. data/lib/Ice/RouterF.rb +1 -1
  240. data/lib/Ice/ServantLocator.rb +1 -1
  241. data/lib/Ice/ServantLocatorF.rb +1 -1
  242. data/lib/Ice/SliceChecksumDict.rb +1 -1
  243. data/lib/Ice/ValueFactory.rb +1 -1
  244. data/lib/Ice/Version.rb +1 -1
  245. data/lib/IceBox/IceBox.rb +1 -1
  246. data/lib/IceGrid/Admin.rb +1 -1
  247. data/lib/IceGrid/Descriptor.rb +1 -1
  248. data/lib/IceGrid/Exception.rb +1 -1
  249. data/lib/IceGrid/FileParser.rb +1 -1
  250. data/lib/IceGrid/PluginFacade.rb +1 -1
  251. data/lib/IceGrid/Registry.rb +1 -1
  252. data/lib/IceGrid/Session.rb +1 -1
  253. data/lib/IceGrid/UserAccountMapper.rb +1 -1
  254. data/lib/IcePatch2/FileInfo.rb +1 -1
  255. data/lib/IcePatch2/FileServer.rb +1 -1
  256. data/lib/IceStorm/IceStorm.rb +1 -1
  257. data/lib/IceStorm/Metrics.rb +1 -1
  258. data/slice/Glacier2/Metrics.ice +1 -1
  259. data/slice/Ice/Communicator.ice +57 -25
  260. data/slice/Ice/Connection.ice +14 -14
  261. data/slice/Ice/Current.ice +1 -1
  262. data/slice/Ice/Endpoint.ice +6 -6
  263. data/slice/Ice/EndpointF.ice +1 -1
  264. data/slice/Ice/FacetMap.ice +1 -1
  265. data/slice/Ice/ImplicitContext.ice +6 -6
  266. data/slice/Ice/Instrumentation.ice +6 -6
  267. data/slice/Ice/Logger.ice +6 -6
  268. data/slice/Ice/Metrics.ice +12 -9
  269. data/slice/Ice/ObjectAdapter.ice +43 -31
  270. data/slice/Ice/ObjectFactory.ice +1 -1
  271. data/slice/Ice/Plugin.ice +2 -2
  272. data/slice/Ice/Properties.ice +10 -10
  273. data/slice/Ice/ServantLocator.ice +4 -2
  274. data/slice/Ice/ValueFactory.ice +3 -3
  275. data/slice/IceBT/EndpointInfo.ice +1 -1
  276. data/slice/IceGrid/PluginFacade.ice +4 -4
  277. data/slice/IceIAP/ConnectionInfo.ice +1 -1
  278. data/slice/IceIAP/EndpointInfo.ice +1 -1
  279. data/slice/IceSSL/ConnectionInfo.ice +3 -2
  280. data/slice/IceSSL/ConnectionInfoF.ice +1 -1
  281. data/slice/IceSSL/EndpointInfo.ice +1 -1
  282. data/slice/IceStorm/Metrics.ice +1 -1
  283. metadata +5 -3
@@ -18,6 +18,9 @@
18
18
  #include <IceUtil/Mutex.h>
19
19
  #include <IceUtil/MutexPtrLock.h>
20
20
  #include <Ice/UUID.h>
21
+ #ifdef ICE_SWIFT
22
+ # include <Ice/ThreadPool.h>
23
+ #endif
21
24
 
22
25
  using namespace std;
23
26
  using namespace Ice;
@@ -378,6 +381,22 @@ Ice::CommunicatorI::getValueFactoryManager() const ICE_NOEXCEPT
378
381
  return _instance->initializationData().valueFactoryManager;
379
382
  }
380
383
 
384
+ #ifdef ICE_SWIFT
385
+
386
+ dispatch_queue_t
387
+ Ice::CommunicatorI::getClientDispatchQueue() const
388
+ {
389
+ return _instance->clientThreadPool()->getDispatchQueue();
390
+ }
391
+
392
+ dispatch_queue_t
393
+ Ice::CommunicatorI::getServerDispatchQueue() const
394
+ {
395
+ return _instance->serverThreadPool()->getDispatchQueue();
396
+ }
397
+
398
+ #endif
399
+
381
400
  namespace
382
401
  {
383
402
 
@@ -97,6 +97,11 @@ public:
97
97
 
98
98
  virtual ValueFactoryManagerPtr getValueFactoryManager() const ICE_NOEXCEPT;
99
99
 
100
+ #ifdef ICE_SWIFT
101
+ virtual dispatch_queue_t getClientDispatchQueue() const;
102
+ virtual dispatch_queue_t getServerDispatchQueue() const;
103
+ #endif
104
+
100
105
  #ifdef ICE_CPP11_MAPPING
101
106
  virtual ::std::function<void()>
102
107
  flushBatchRequestsAsync(CompressBatch,
@@ -2,7 +2,7 @@
2
2
  // Copyright (c) ZeroC, Inc. All rights reserved.
3
3
  //
4
4
  //
5
- // Ice version 3.7.2
5
+ // Ice version 3.7.3
6
6
  //
7
7
  // <auto-generated>
8
8
  //
@@ -34,10 +34,10 @@
34
34
  # if ICE_INT_VERSION / 100 != 307
35
35
  # error Ice version mismatch!
36
36
  # endif
37
- # if ICE_INT_VERSION % 100 > 50
37
+ # if ICE_INT_VERSION % 100 >= 50
38
38
  # error Beta header file detected
39
39
  # endif
40
- # if ICE_INT_VERSION % 100 < 2
40
+ # if ICE_INT_VERSION % 100 < 3
41
41
  # error Ice patch level mismatch!
42
42
  # endif
43
43
  #endif
@@ -2,7 +2,7 @@
2
2
  // Copyright (c) ZeroC, Inc. All rights reserved.
3
3
  //
4
4
  //
5
- // Ice version 3.7.2
5
+ // Ice version 3.7.3
6
6
  //
7
7
  // <auto-generated>
8
8
  //
@@ -32,10 +32,10 @@
32
32
  # if ICE_INT_VERSION / 100 != 307
33
33
  # error Ice version mismatch!
34
34
  # endif
35
- # if ICE_INT_VERSION % 100 > 50
35
+ # if ICE_INT_VERSION % 100 >= 50
36
36
  # error Beta header file detected
37
37
  # endif
38
- # if ICE_INT_VERSION % 100 < 2
38
+ # if ICE_INT_VERSION % 100 < 3
39
39
  # error Ice patch level mismatch!
40
40
  # endif
41
41
  #endif
@@ -1650,6 +1650,15 @@ Ice::ConnectionI::message(ThreadPoolCurrent& current)
1650
1650
  _observer->receivedBytes(static_cast<int>(headerSize));
1651
1651
  }
1652
1652
 
1653
+ //
1654
+ // Connection is validated on first message. This is only used by
1655
+ // setState() to check wether or not we can print a connection
1656
+ // warning (a client might close the connection forcefully if the
1657
+ // connection isn't validated, we don't want to print a warning
1658
+ // in this case).
1659
+ //
1660
+ _validated = true;
1661
+
1653
1662
  ptrdiff_t pos = _readStream.i - _readStream.b.begin();
1654
1663
  if(pos < headerSize)
1655
1664
  {
@@ -1683,13 +1692,14 @@ Ice::ConnectionI::message(ThreadPoolCurrent& current)
1683
1692
  {
1684
1693
  throw IllegalMessageSizeException(__FILE__, __LINE__);
1685
1694
  }
1695
+
1686
1696
  if(size > static_cast<Int>(_messageSizeMax))
1687
1697
  {
1688
- Ex::throwMemoryLimitException(__FILE__, __LINE__, size, _messageSizeMax);
1698
+ Ex::throwMemoryLimitException(__FILE__, __LINE__, static_cast<size_t>(size), _messageSizeMax);
1689
1699
  }
1690
- if(size > static_cast<Int>(_readStream.b.size()))
1700
+ if(static_cast<size_t>(size) > _readStream.b.size())
1691
1701
  {
1692
- _readStream.b.resize(size);
1702
+ _readStream.b.resize(static_cast<size_t>(size));
1693
1703
  }
1694
1704
  _readStream.i = _readStream.b.begin() + pos;
1695
1705
  }
@@ -1835,6 +1845,12 @@ Ice::ConnectionI::message(ThreadPoolCurrent& current)
1835
1845
  }
1836
1846
  }
1837
1847
 
1848
+ // dispatchFromThisThread dispatches to the correct DispatchQueue
1849
+ #ifdef ICE_SWIFT
1850
+ _threadPool->dispatchFromThisThread(new DispatchCall(ICE_SHARED_FROM_THIS, startCB, sentCBs, compress, requestId,
1851
+ invokeNum, servantManager, adapter, outAsync,
1852
+ heartbeatCallback, current.stream));
1853
+ #else
1838
1854
  if(!_dispatcher) // Optimization, call dispatch() directly if there's no dispatcher.
1839
1855
  {
1840
1856
  dispatch(startCB, sentCBs, compress, requestId, invokeNum, servantManager, adapter, outAsync, heartbeatCallback,
@@ -1847,6 +1863,7 @@ Ice::ConnectionI::message(ThreadPoolCurrent& current)
1847
1863
  heartbeatCallback, current.stream));
1848
1864
 
1849
1865
  }
1866
+ #endif
1850
1867
  }
1851
1868
 
1852
1869
  void
@@ -1998,6 +2015,11 @@ Ice::ConnectionI::finished(ThreadPoolCurrent& current, bool close)
1998
2015
  }
1999
2016
 
2000
2017
  current.ioCompleted();
2018
+
2019
+ // dispatchFromThisThread dispatches to the correct DispatchQueue
2020
+ #ifdef ICE_SWIFT
2021
+ _threadPool->dispatchFromThisThread(new FinishCall(ICE_SHARED_FROM_THIS, close));
2022
+ #else
2001
2023
  if(!_dispatcher) // Optimization, call finish() directly if there's no dispatcher.
2002
2024
  {
2003
2025
  finish(close);
@@ -2006,6 +2028,7 @@ Ice::ConnectionI::finished(ThreadPoolCurrent& current, bool close)
2006
2028
  {
2007
2029
  _threadPool->dispatchFromThisThread(new FinishCall(ICE_SHARED_FROM_THIS, close));
2008
2030
  }
2031
+ #endif
2009
2032
  }
2010
2033
 
2011
2034
  void
@@ -2724,6 +2747,8 @@ Ice::ConnectionI::validate(SocketOperation operation)
2724
2747
  _observer.finishRead(_readStream);
2725
2748
  }
2726
2749
 
2750
+ _validated = true;
2751
+
2727
2752
  assert(_readStream.i == _readStream.b.end());
2728
2753
  _readStream.i = _readStream.b.begin();
2729
2754
  Byte m[4];
@@ -2756,8 +2781,6 @@ Ice::ConnectionI::validate(SocketOperation operation)
2756
2781
  throw IllegalMessageSizeException(__FILE__, __LINE__);
2757
2782
  }
2758
2783
  traceRecv(_readStream, _logger, _traceLevels);
2759
-
2760
- _validated = true;
2761
2784
  }
2762
2785
  }
2763
2786
 
@@ -3195,11 +3218,11 @@ Ice::ConnectionI::doUncompress(InputStream& compressed, InputStream& uncompresse
3195
3218
 
3196
3219
  if(uncompressedSize > static_cast<Int>(_messageSizeMax))
3197
3220
  {
3198
- Ex::throwMemoryLimitException(__FILE__, __LINE__, uncompressedSize, _messageSizeMax);
3221
+ Ex::throwMemoryLimitException(__FILE__, __LINE__, static_cast<size_t>(uncompressedSize), _messageSizeMax);
3199
3222
  }
3200
- uncompressed.resize(uncompressedSize);
3223
+ uncompressed.resize(static_cast<size_t>(uncompressedSize));
3201
3224
 
3202
- unsigned int uncompressedLen = uncompressedSize - headerSize;
3225
+ unsigned int uncompressedLen = static_cast<unsigned int>(uncompressedSize - headerSize);
3203
3226
  unsigned int compressedLen = static_cast<unsigned int>(compressed.b.size() - headerSize - sizeof(Int));
3204
3227
  int bzError = BZ2_bzBuffToBuffDecompress(reinterpret_cast<char*>(&uncompressed.b[0]) + headerSize,
3205
3228
  &uncompressedLen,
@@ -3230,14 +3253,6 @@ Ice::ConnectionI::parseMessage(InputStream& stream, Int& invokeNum, Int& request
3230
3253
 
3231
3254
  assert(stream.i == stream.b.end());
3232
3255
 
3233
- //
3234
- // Connection is validated on first message. This is only used by
3235
- // setState() to check wether or not we can print a connection
3236
- // warning (a client might close the connection forcefully if the
3237
- // connection isn't validated).
3238
- //
3239
- _validated = true;
3240
-
3241
3256
  try
3242
3257
  {
3243
3258
  //
@@ -2,7 +2,7 @@
2
2
  // Copyright (c) ZeroC, Inc. All rights reserved.
3
3
  //
4
4
  //
5
- // Ice version 3.7.2
5
+ // Ice version 3.7.3
6
6
  //
7
7
  // <auto-generated>
8
8
  //
@@ -34,10 +34,10 @@
34
34
  # if ICE_INT_VERSION / 100 != 307
35
35
  # error Ice version mismatch!
36
36
  # endif
37
- # if ICE_INT_VERSION % 100 > 50
37
+ # if ICE_INT_VERSION % 100 >= 50
38
38
  # error Beta header file detected
39
39
  # endif
40
- # if ICE_INT_VERSION % 100 < 2
40
+ # if ICE_INT_VERSION % 100 < 3
41
41
  # error Ice patch level mismatch!
42
42
  # endif
43
43
  #endif
@@ -21,4 +21,17 @@ Ice::DispatchInterceptor::_iceDispatch(IceInternal::Incoming& in, const Current&
21
21
  {
22
22
  return false;
23
23
  }
24
+ catch(const std::exception&)
25
+ {
26
+ //
27
+ // If the input parameters weren't read, make sure we skip them here. It's needed to read the
28
+ // encoding version used by the client to eventually marshal the user exception. It's also needed
29
+ // if we dispatch a batch oneway request to read the next batch request.
30
+ //
31
+ if(in.getCurrent().encoding.major == 0 && in.getCurrent().encoding.minor == 0)
32
+ {
33
+ in.skipReadParams();
34
+ }
35
+ throw;
36
+ }
24
37
  }
@@ -212,12 +212,11 @@ IceInternal::DynamicLibrary::load(const string& lib)
212
212
  // Don't need to use a wide string converter as the wide string is passed
213
213
  // to Windows API.
214
214
  //
215
- #ifdef ICE_OS_UWP
215
+ #if defined(ICE_OS_UWP)
216
216
  _hnd = LoadPackagedLibrary(stringToWstring(lib, getProcessStringConverter()).c_str(), 0);
217
217
  #elif defined(_WIN32)
218
218
  _hnd = LoadLibraryW(stringToWstring(lib, getProcessStringConverter()).c_str());
219
219
  #else
220
-
221
220
  int flags = RTLD_NOW | RTLD_GLOBAL;
222
221
  #ifdef _AIX
223
222
  flags |= RTLD_MEMBER;
@@ -230,8 +229,10 @@ IceInternal::DynamicLibrary::load(const string& lib)
230
229
  //
231
230
  // Remember the most recent error in _err.
232
231
  //
233
- #ifdef _WIN32
234
- _err = IceUtilInternal::lastErrorToString();
232
+ #if defined(ICE_OS_UWP)
233
+ _err = "LoadPackagedLibrary on `" + lib + "' failed with `" + IceUtilInternal::lastErrorToString() + "'";
234
+ #elif defined(_WIN32)
235
+ _err = "LoadLibraryW on `" + lib + "' failed with `" + IceUtilInternal::lastErrorToString() + "'";
235
236
  #else
236
237
  const char* err = dlerror();
237
238
  if(err)
@@ -260,7 +261,7 @@ IceInternal::DynamicLibrary::getSymbol(const string& name)
260
261
  // Remember the most recent error in _err.
261
262
  //
262
263
  #ifdef _WIN32
263
- _err = IceUtilInternal::lastErrorToString();
264
+ _err = "GetProcAddress for `" + name + "' failed with `" + IceUtilInternal::lastErrorToString() + "'";
264
265
  #else
265
266
  const char* err = dlerror();
266
267
  if(err)
@@ -2,7 +2,7 @@
2
2
  // Copyright (c) ZeroC, Inc. All rights reserved.
3
3
  //
4
4
  //
5
- // Ice version 3.7.2
5
+ // Ice version 3.7.3
6
6
  //
7
7
  // <auto-generated>
8
8
  //
@@ -34,10 +34,10 @@
34
34
  # if ICE_INT_VERSION / 100 != 307
35
35
  # error Ice version mismatch!
36
36
  # endif
37
- # if ICE_INT_VERSION % 100 > 50
37
+ # if ICE_INT_VERSION % 100 >= 50
38
38
  # error Beta header file detected
39
39
  # endif
40
- # if ICE_INT_VERSION % 100 < 2
40
+ # if ICE_INT_VERSION % 100 < 3
41
41
  # error Ice patch level mismatch!
42
42
  # endif
43
43
  #endif
@@ -2,7 +2,7 @@
2
2
  // Copyright (c) ZeroC, Inc. All rights reserved.
3
3
  //
4
4
  //
5
- // Ice version 3.7.2
5
+ // Ice version 3.7.3
6
6
  //
7
7
  // <auto-generated>
8
8
  //
@@ -32,10 +32,10 @@
32
32
  # if ICE_INT_VERSION / 100 != 307
33
33
  # error Ice version mismatch!
34
34
  # endif
35
- # if ICE_INT_VERSION % 100 > 50
35
+ # if ICE_INT_VERSION % 100 >= 50
36
36
  # error Beta header file detected
37
37
  # endif
38
- # if ICE_INT_VERSION % 100 < 2
38
+ # if ICE_INT_VERSION % 100 < 3
39
39
  # error Ice patch level mismatch!
40
40
  # endif
41
41
  #endif
@@ -2,7 +2,7 @@
2
2
  // Copyright (c) ZeroC, Inc. All rights reserved.
3
3
  //
4
4
  //
5
- // Ice version 3.7.2
5
+ // Ice version 3.7.3
6
6
  //
7
7
  // <auto-generated>
8
8
  //
@@ -32,10 +32,10 @@
32
32
  # if ICE_INT_VERSION / 100 != 307
33
33
  # error Ice version mismatch!
34
34
  # endif
35
- # if ICE_INT_VERSION % 100 > 50
35
+ # if ICE_INT_VERSION % 100 >= 50
36
36
  # error Beta header file detected
37
37
  # endif
38
- # if ICE_INT_VERSION % 100 < 2
38
+ # if ICE_INT_VERSION % 100 < 3
39
39
  # error Ice patch level mismatch!
40
40
  # endif
41
41
  #endif
@@ -707,7 +707,7 @@ void
707
707
  Ice::NoValueFactoryException::ice_print(ostream& out) const
708
708
  {
709
709
  Exception::ice_print(out);
710
- out << ":\nprotocol error: no suitable object factory found for `" << type << "'";
710
+ out << ":\nprotocol error: no suitable value factory found for `" << type << "'";
711
711
  if(!reason.empty())
712
712
  {
713
713
  out << ":\n" << reason;
@@ -788,28 +788,28 @@ void
788
788
  Ice::NotRegisteredException::ice_print(ostream& out) const
789
789
  {
790
790
  Exception::ice_print(out);
791
- out << ":\n no " << kindOfObject << " with id `" << id << "' is registered";
791
+ out << ":\nno " << kindOfObject << " with id `" << id << "' is registered";
792
792
  }
793
793
 
794
794
  void
795
795
  Ice::TwowayOnlyException::ice_print(ostream& out) const
796
796
  {
797
797
  Exception::ice_print(out);
798
- out << ":\n operation `" << operation << "' can only be invoked as a twoway request";
798
+ out << ":\noperation `" << operation << "' can only be invoked as a twoway request";
799
799
  }
800
800
 
801
801
  void
802
802
  Ice::CloneNotImplementedException::ice_print(ostream& out) const
803
803
  {
804
804
  Exception::ice_print(out);
805
- out << ":\n ice_clone() must be implemented in classes derived from abstract base classes";
805
+ out << ":\nice_clone() must be implemented in classes derived from abstract base classes";
806
806
  }
807
807
 
808
808
  void
809
809
  Ice::FeatureNotSupportedException::ice_print(ostream& out) const
810
810
  {
811
811
  Exception::ice_print(out);
812
- out << ":\nfeature `" << unsupportedFeature << "' is not supported.";
812
+ out << ":\nfeature `" << unsupportedFeature << "' is not supported";
813
813
  }
814
814
 
815
815
  void
@@ -2,7 +2,7 @@
2
2
  // Copyright (c) ZeroC, Inc. All rights reserved.
3
3
  //
4
4
  //
5
- // Ice version 3.7.2
5
+ // Ice version 3.7.3
6
6
  //
7
7
  // <auto-generated>
8
8
  //
@@ -34,10 +34,10 @@
34
34
  # if ICE_INT_VERSION / 100 != 307
35
35
  # error Ice version mismatch!
36
36
  # endif
37
- # if ICE_INT_VERSION % 100 > 50
37
+ # if ICE_INT_VERSION % 100 >= 50
38
38
  # error Beta header file detected
39
39
  # endif
40
- # if ICE_INT_VERSION % 100 < 2
40
+ # if ICE_INT_VERSION % 100 < 3
41
41
  # error Ice patch level mismatch!
42
42
  # endif
43
43
  #endif
@@ -11,7 +11,7 @@ namespace IceInternal
11
11
  inline void
12
12
  hashAdd(Ice::Int& hashCode, Ice::Int value)
13
13
  {
14
- hashCode = ((hashCode << 5) + hashCode) ^ (2654435761u * value);
14
+ hashCode = ((hashCode << 5) + hashCode) ^ static_cast<Ice::Int>(2654435761u) * value;
15
15
  }
16
16
 
17
17
  inline void
@@ -255,7 +255,18 @@ IceInternal::IPEndpointI::options() const
255
255
 
256
256
  if(isAddressValid(_sourceAddr))
257
257
  {
258
- s << " --sourceAddress " << inetAddrToString(_sourceAddr);
258
+ const string sourceAddr = inetAddrToString(_sourceAddr);
259
+ bool addQuote = sourceAddr.find(':') != string::npos;
260
+ s << " --sourceAddress ";
261
+ if(addQuote)
262
+ {
263
+ s << "\"";
264
+ }
265
+ s << sourceAddr;
266
+ if(addQuote)
267
+ {
268
+ s << "\"";
269
+ }
259
270
  }
260
271
 
261
272
  return s.str();
@@ -2,7 +2,7 @@
2
2
  // Copyright (c) ZeroC, Inc. All rights reserved.
3
3
  //
4
4
  //
5
- // Ice version 3.7.2
5
+ // Ice version 3.7.3
6
6
  //
7
7
  // <auto-generated>
8
8
  //
@@ -34,10 +34,10 @@
34
34
  # if ICE_INT_VERSION / 100 != 307
35
35
  # error Ice version mismatch!
36
36
  # endif
37
- # if ICE_INT_VERSION % 100 > 50
37
+ # if ICE_INT_VERSION % 100 >= 50
38
38
  # error Beta header file detected
39
39
  # endif
40
- # if ICE_INT_VERSION % 100 < 2
40
+ # if ICE_INT_VERSION % 100 < 3
41
41
  # error Ice patch level mismatch!
42
42
  # endif
43
43
  #endif