zeroc-ice 3.6.5 → 3.7.0
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.
- checksums.yaml +4 -4
- data/BZIP2_LICENSE +42 -0
- data/ICE_LICENSE +17 -17
- data/LICENSE +12 -12
- data/bin/slice2rb +1 -1
- data/ext/Communicator.cpp +150 -53
- data/ext/Communicator.h +1 -1
- data/ext/Config.h +2 -12
- data/ext/Connection.cpp +89 -68
- data/ext/Connection.h +1 -1
- data/ext/Endpoint.cpp +16 -45
- data/ext/Endpoint.h +1 -1
- data/ext/ImplicitContext.cpp +1 -5
- data/ext/ImplicitContext.h +1 -1
- data/ext/Init.cpp +4 -1
- data/ext/Logger.cpp +1 -1
- data/ext/Logger.h +1 -1
- data/ext/Operation.cpp +33 -44
- data/ext/Operation.h +1 -1
- data/ext/Properties.cpp +1 -1
- data/ext/Properties.h +1 -1
- data/ext/Proxy.cpp +22 -57
- data/ext/Proxy.h +1 -1
- data/ext/Slice.cpp +5 -5
- data/ext/Slice.h +1 -1
- data/ext/Types.cpp +244 -171
- data/ext/Types.h +118 -66
- data/ext/Util.cpp +13 -9
- data/ext/Util.h +10 -10
- data/ext/ValueFactoryManager.cpp +445 -0
- data/ext/ValueFactoryManager.h +100 -0
- data/ext/extconf.rb +47 -45
- data/ext/ice/bzip2/blocksort.c +1094 -0
- data/ext/ice/bzip2/bzlib.c +1572 -0
- data/ext/ice/bzip2/bzlib.h +282 -0
- data/ext/ice/bzip2/bzlib_private.h +509 -0
- data/ext/ice/bzip2/compress.c +672 -0
- data/ext/ice/bzip2/crctable.c +104 -0
- data/ext/ice/bzip2/decompress.c +646 -0
- data/ext/ice/bzip2/huffman.c +205 -0
- data/ext/ice/bzip2/randtable.c +84 -0
- data/ext/ice/cpp/include/Ice/Application.h +77 -60
- data/ext/ice/cpp/include/Ice/AsyncResult.h +34 -318
- data/ext/ice/cpp/include/Ice/AsyncResultF.h +4 -2
- data/ext/ice/cpp/include/Ice/BatchRequestInterceptor.h +5 -10
- data/ext/ice/cpp/include/Ice/BatchRequestQueueF.h +1 -1
- data/ext/ice/cpp/include/Ice/Buffer.h +10 -10
- data/ext/ice/cpp/include/Ice/CommunicatorAsync.h +14 -12
- data/ext/ice/cpp/include/Ice/Comparable.h +130 -0
- data/ext/ice/cpp/include/Ice/Config.h +7 -36
- data/ext/ice/cpp/include/Ice/ConnectionAsync.h +107 -11
- data/ext/ice/cpp/include/Ice/ConnectionIF.h +5 -1
- data/ext/ice/cpp/include/Ice/ConsoleUtil.h +28 -0
- data/ext/ice/cpp/include/Ice/{DefaultObjectFactory.h → DefaultValueFactory.h} +28 -14
- data/ext/ice/cpp/include/Ice/DispatchInterceptor.h +4 -6
- data/ext/ice/cpp/include/Ice/Dispatcher.h +14 -13
- data/ext/ice/cpp/include/Ice/DynamicLibrary.h +7 -5
- data/ext/ice/cpp/include/Ice/DynamicLibraryF.h +1 -1
- data/ext/ice/cpp/include/Ice/Exception.h +66 -56
- data/ext/ice/cpp/include/Ice/ExceptionHelpers.h +69 -0
- data/ext/ice/cpp/include/Ice/FactoryTable.h +11 -12
- data/ext/ice/cpp/include/Ice/FactoryTableInit.h +27 -25
- data/ext/ice/cpp/include/Ice/Format.h +6 -1
- data/ext/ice/cpp/include/Ice/Functional.h +33 -33
- data/ext/ice/cpp/include/Ice/GCObject.h +9 -5
- data/ext/ice/cpp/include/Ice/Handle.h +6 -11
- data/ext/ice/cpp/include/Ice/Ice.h +9 -5
- data/ext/ice/cpp/include/{IceUtil → Ice}/IconvStringConverter.h +108 -62
- data/ext/ice/cpp/include/Ice/Incoming.h +109 -33
- data/ext/ice/cpp/include/Ice/IncomingAsync.h +63 -23
- data/ext/ice/cpp/include/Ice/IncomingAsyncF.h +7 -1
- data/ext/ice/cpp/include/Ice/Initialize.h +178 -38
- data/ext/ice/cpp/include/Ice/InputStream.h +994 -0
- data/ext/ice/cpp/include/Ice/InstanceF.h +1 -2
- data/ext/ice/cpp/include/Ice/InterfaceByValue.h +46 -0
- data/ext/ice/cpp/include/Ice/LocalObject.h +9 -9
- data/ext/ice/cpp/include/Ice/LocalObjectF.h +1 -1
- data/ext/ice/cpp/include/Ice/LoggerUtil.h +20 -14
- data/ext/ice/cpp/include/Ice/MetricsAdminI.h +114 -65
- data/ext/ice/cpp/include/Ice/MetricsFunctional.h +23 -5
- data/ext/ice/cpp/include/Ice/MetricsObserverI.h +99 -26
- data/ext/ice/cpp/include/Ice/NativePropertiesAdmin.h +17 -4
- data/ext/ice/cpp/include/Ice/Object.h +105 -56
- data/ext/ice/cpp/include/Ice/ObjectF.h +8 -3
- data/ext/ice/cpp/include/Ice/ObserverHelper.h +18 -8
- data/ext/ice/cpp/include/Ice/Optional.h +1084 -0
- data/ext/ice/cpp/include/Ice/OutgoingAsync.h +655 -84
- data/ext/ice/cpp/include/Ice/OutgoingAsyncF.h +12 -6
- data/ext/ice/cpp/include/Ice/OutputStream.h +753 -0
- data/ext/ice/cpp/include/Ice/Protocol.h +19 -12
- data/ext/ice/cpp/include/Ice/Proxy.h +1329 -717
- data/ext/ice/cpp/include/Ice/ProxyF.h +11 -33
- data/ext/ice/cpp/include/Ice/ProxyFactoryF.h +1 -1
- data/ext/ice/cpp/include/Ice/ProxyHandle.h +34 -50
- data/ext/ice/cpp/include/Ice/ReferenceF.h +1 -1
- data/ext/ice/cpp/include/Ice/RegisterPlugins.h +22 -3
- data/ext/ice/cpp/include/Ice/RequestHandlerF.h +10 -4
- data/ext/ice/cpp/include/Ice/ResponseHandlerF.h +6 -1
- data/ext/ice/cpp/include/{IceUtil → Ice}/SHA1.h +16 -16
- data/ext/ice/cpp/include/Ice/ServantManagerF.h +1 -1
- data/ext/ice/cpp/include/Ice/Service.h +13 -18
- data/ext/ice/cpp/include/Ice/SliceChecksums.h +1 -1
- data/ext/ice/cpp/include/Ice/SlicedData.h +46 -20
- data/ext/ice/cpp/include/Ice/SlicedDataF.h +14 -6
- data/ext/ice/cpp/include/Ice/StreamHelpers.h +159 -49
- data/ext/ice/cpp/include/Ice/StringConverter.h +52 -0
- data/ext/ice/cpp/include/Ice/ThreadPoolF.h +1 -1
- data/{slice/Ice/ObjectFactoryF.ice → ext/ice/cpp/include/Ice/UUID.h} +9 -7
- data/ext/ice/cpp/include/{IceUtil → Ice}/UniquePtr.h +21 -22
- data/ext/ice/cpp/include/Ice/UniqueRef.h +98 -0
- data/ext/ice/cpp/include/Ice/UserExceptionFactory.h +40 -8
- data/ext/ice/cpp/include/Ice/Value.h +104 -0
- data/{slice/Freeze/ConnectionF.ice → ext/ice/cpp/include/Ice/ValueF.h} +11 -7
- data/ext/ice/cpp/include/IceSSL/Config.h +8 -23
- data/ext/ice/cpp/include/IceSSL/IceSSL.h +17 -6
- data/ext/ice/cpp/include/IceSSL/OpenSSL.h +130 -0
- data/ext/ice/cpp/include/IceSSL/Plugin.h +172 -259
- data/ext/ice/cpp/include/IceSSL/SChannel.h +66 -0
- data/ext/ice/cpp/include/IceSSL/SecureTransport.h +66 -0
- data/ext/ice/cpp/include/IceSSL/UWP.h +58 -0
- data/ext/ice/cpp/include/IceUtil/Atomic.h +8 -10
- data/ext/ice/cpp/include/IceUtil/Cond.h +17 -18
- data/ext/ice/cpp/include/IceUtil/Config.h +138 -39
- data/ext/ice/cpp/include/IceUtil/ConsoleUtil.h +97 -0
- data/ext/ice/cpp/include/IceUtil/CountDownLatch.h +5 -5
- data/ext/ice/cpp/include/IceUtil/CtrlCHandler.h +23 -17
- data/ext/ice/cpp/include/IceUtil/DisableWarnings.h +1 -3
- data/ext/ice/cpp/include/IceUtil/Exception.h +157 -67
- data/ext/ice/cpp/include/IceUtil/FileUtil.h +148 -0
- data/ext/ice/cpp/include/IceUtil/Functional.h +1 -2
- data/ext/ice/cpp/include/IceUtil/Handle.h +11 -11
- data/ext/ice/cpp/include/IceUtil/IceUtil.h +4 -10
- data/ext/ice/cpp/include/IceUtil/InputUtil.h +3 -3
- data/ext/ice/cpp/include/IceUtil/Iterator.h +2 -2
- data/ext/ice/cpp/include/IceUtil/Lock.h +8 -10
- data/ext/ice/cpp/include/IceUtil/Monitor.h +1 -2
- data/ext/ice/cpp/include/IceUtil/Mutex.h +17 -11
- data/ext/ice/cpp/include/IceUtil/MutexProtocol.h +2 -2
- data/ext/ice/cpp/include/IceUtil/MutexPtrLock.h +4 -4
- data/ext/ice/cpp/include/IceUtil/MutexPtrTryLock.h +4 -4
- data/ext/ice/cpp/include/IceUtil/Optional.h +32 -18
- data/ext/ice/cpp/include/IceUtil/Options.h +17 -18
- data/ext/ice/cpp/include/IceUtil/OutputUtil.h +55 -29
- data/ext/ice/cpp/include/IceUtil/PopDisableWarnings.h +6 -6
- data/ext/ice/cpp/include/IceUtil/PushDisableWarnings.h +11 -10
- data/ext/ice/cpp/include/IceUtil/Random.h +3 -3
- data/ext/ice/cpp/include/IceUtil/RecMutex.h +7 -8
- data/ext/ice/cpp/include/IceUtil/ResourceConfig.h +58 -0
- data/ext/ice/cpp/include/IceUtil/ScannerConfig.h +1 -9
- data/ext/ice/cpp/include/IceUtil/ScopedArray.h +8 -2
- data/ext/ice/cpp/include/IceUtil/Shared.h +5 -7
- data/ext/ice/cpp/{src → include}/IceUtil/StopWatch.h +2 -2
- data/ext/ice/cpp/include/IceUtil/StringConverter.h +77 -72
- data/ext/ice/cpp/include/IceUtil/StringUtil.h +32 -21
- data/ext/ice/cpp/include/IceUtil/Thread.h +10 -12
- data/ext/ice/cpp/include/IceUtil/ThreadException.h +33 -42
- data/ext/ice/cpp/include/IceUtil/Time.h +3 -3
- data/ext/ice/cpp/include/IceUtil/Timer.h +14 -13
- data/ext/ice/cpp/include/IceUtil/UUID.h +2 -2
- data/ext/ice/cpp/include/IceUtil/UndefSysMacros.h +1 -1
- data/ext/ice/cpp/include/{Ice → generated/Ice}/BuiltinSequences.h +41 -8
- data/ext/ice/cpp/include/generated/Ice/Communicator.h +364 -0
- data/ext/ice/cpp/include/{Ice → generated/Ice}/CommunicatorF.h +40 -8
- data/ext/ice/cpp/include/generated/Ice/Connection.h +872 -0
- data/ext/ice/cpp/include/{Ice → generated/Ice}/ConnectionF.h +46 -8
- data/ext/ice/cpp/include/{Ice → generated/Ice}/Current.h +71 -8
- data/ext/ice/cpp/include/generated/Ice/Endpoint.h +582 -0
- data/ext/ice/cpp/include/{Ice → generated/Ice}/EndpointF.h +62 -8
- data/ext/ice/cpp/include/{Ice → generated/Ice}/EndpointTypes.h +31 -16
- data/ext/ice/cpp/include/{Ice → generated/Ice}/FacetMap.h +23 -8
- data/ext/ice/cpp/include/generated/Ice/Identity.h +221 -0
- data/ext/ice/cpp/include/{Ice → generated/Ice}/ImplicitContext.h +72 -13
- data/ext/ice/cpp/include/{Ice → generated/Ice}/ImplicitContextF.h +40 -8
- data/ext/ice/cpp/include/generated/Ice/Instrumentation.h +602 -0
- data/ext/ice/cpp/include/{Ice → generated/Ice}/InstrumentationF.h +54 -8
- data/ext/ice/cpp/include/generated/Ice/LocalException.h +2802 -0
- data/ext/ice/cpp/include/generated/Ice/Locator.h +2036 -0
- data/ext/ice/cpp/include/{Ice → generated/Ice}/LocatorF.h +53 -12
- data/ext/ice/cpp/include/{Ice → generated/Ice}/Logger.h +71 -13
- data/ext/ice/cpp/include/{Ice → generated/Ice}/LoggerF.h +40 -8
- data/ext/ice/cpp/include/generated/Ice/Metrics.h +2649 -0
- data/ext/ice/cpp/include/generated/Ice/ObjectAdapter.h +302 -0
- data/ext/ice/cpp/include/{Ice → generated/Ice}/ObjectAdapterF.h +40 -8
- data/ext/ice/cpp/include/generated/Ice/ObjectFactory.h +142 -0
- data/ext/ice/cpp/include/generated/Ice/Plugin.h +197 -0
- data/ext/ice/cpp/include/{Ice → generated/Ice}/PluginF.h +43 -8
- data/ext/ice/cpp/include/generated/Ice/Process.h +536 -0
- data/ext/ice/cpp/include/{Ice → generated/Ice}/ProcessF.h +45 -10
- data/ext/ice/cpp/include/{Ice → generated/Ice}/Properties.h +88 -21
- data/ext/ice/cpp/include/generated/Ice/PropertiesAdmin.h +749 -0
- data/ext/ice/cpp/include/{Ice → generated/Ice}/PropertiesF.h +48 -10
- data/ext/ice/cpp/include/generated/Ice/RemoteLogger.h +1449 -0
- data/ext/ice/cpp/include/generated/Ice/Router.h +1032 -0
- data/ext/ice/cpp/include/{Ice → generated/Ice}/RouterF.h +45 -10
- data/ext/ice/cpp/include/{Ice → generated/Ice}/ServantLocator.h +65 -13
- data/ext/ice/cpp/include/{Ice → generated/Ice}/ServantLocatorF.h +40 -8
- data/ext/ice/cpp/include/{Ice → generated/Ice}/SliceChecksumDict.h +23 -8
- data/ext/ice/cpp/include/generated/Ice/ValueFactory.h +169 -0
- data/ext/ice/cpp/include/generated/Ice/Version.h +334 -0
- data/ext/ice/cpp/include/generated/IceSSL/ConnectionInfo.h +172 -0
- data/ext/ice/cpp/include/generated/IceSSL/ConnectionInfoF.h +98 -0
- data/ext/ice/cpp/include/generated/IceSSL/EndpointInfo.h +156 -0
- data/ext/ice/cpp/src/Ice/ACM.cpp +18 -14
- data/ext/ice/cpp/src/Ice/ACM.h +9 -2
- data/ext/ice/cpp/{include → src}/Ice/ACMF.h +10 -5
- data/ext/ice/cpp/src/Ice/Acceptor.cpp +6 -1
- data/ext/ice/cpp/src/Ice/Acceptor.h +4 -3
- data/ext/ice/cpp/src/Ice/AcceptorF.h +1 -1
- data/ext/ice/cpp/src/{IceUtil → Ice}/ArgVector.cpp +9 -9
- data/ext/ice/cpp/src/{IceUtil → Ice}/ArgVector.h +7 -7
- data/ext/ice/cpp/src/Ice/AsyncResult.cpp +15 -538
- data/ext/ice/cpp/src/Ice/Base64.cpp +11 -11
- data/ext/ice/cpp/src/Ice/Base64.h +1 -1
- data/ext/ice/cpp/src/Ice/BatchRequestQueue.cpp +40 -12
- data/ext/ice/cpp/src/Ice/BatchRequestQueue.h +15 -10
- data/ext/ice/cpp/src/Ice/Buffer.cpp +74 -12
- data/ext/ice/cpp/src/Ice/BuiltinSequences.cpp +20 -6
- data/ext/ice/cpp/src/Ice/CollocatedRequestHandler.cpp +85 -190
- data/ext/ice/cpp/src/Ice/CollocatedRequestHandler.h +17 -18
- data/ext/ice/cpp/src/Ice/Communicator.cpp +39 -8
- data/ext/ice/cpp/src/Ice/CommunicatorF.cpp +27 -5
- data/ext/ice/cpp/src/Ice/CommunicatorI.cpp +271 -104
- data/ext/ice/cpp/src/Ice/CommunicatorI.h +84 -28
- data/ext/ice/cpp/src/{IceUtil → Ice}/Cond.cpp +3 -3
- data/ext/ice/cpp/src/Ice/ConnectRequestHandler.cpp +58 -125
- data/ext/ice/cpp/src/Ice/ConnectRequestHandler.h +11 -22
- data/ext/ice/cpp/src/Ice/ConnectRequestHandlerF.h +6 -2
- data/ext/ice/cpp/src/Ice/Connection.cpp +88 -8
- data/ext/ice/cpp/src/Ice/ConnectionF.cpp +27 -5
- data/ext/ice/cpp/src/Ice/ConnectionFactory.cpp +158 -80
- data/ext/ice/cpp/src/Ice/ConnectionFactory.h +41 -23
- data/ext/ice/cpp/{include → src}/Ice/ConnectionFactoryF.h +8 -3
- data/ext/ice/cpp/src/Ice/ConnectionI.cpp +707 -653
- data/ext/ice/cpp/src/Ice/ConnectionI.h +97 -69
- data/ext/ice/cpp/src/Ice/ConnectionRequestHandler.cpp +2 -15
- data/ext/ice/cpp/src/Ice/ConnectionRequestHandler.h +4 -3
- data/ext/ice/cpp/src/Ice/Connector.cpp +6 -1
- data/ext/ice/cpp/src/Ice/Connector.h +4 -3
- data/ext/ice/cpp/src/Ice/ConnectorF.h +1 -1
- data/ext/ice/cpp/src/{IceUtil → Ice}/CountDownLatch.cpp +4 -4
- data/ext/ice/cpp/src/Ice/Current.cpp +29 -6
- data/ext/ice/cpp/src/Ice/DefaultsAndOverrides.cpp +6 -5
- data/ext/ice/cpp/src/Ice/DefaultsAndOverrides.h +1 -1
- data/ext/ice/cpp/src/Ice/DefaultsAndOverridesF.h +1 -1
- data/ext/ice/cpp/src/Ice/DispatchInterceptor.cpp +5 -25
- data/ext/ice/cpp/src/Ice/DynamicLibrary.cpp +29 -19
- data/ext/ice/cpp/src/Ice/Endpoint.cpp +85 -6
- data/ext/ice/cpp/src/Ice/EndpointF.cpp +27 -5
- data/ext/ice/cpp/src/Ice/EndpointFactory.cpp +152 -1
- data/ext/ice/cpp/src/Ice/EndpointFactory.h +72 -6
- data/ext/ice/cpp/src/Ice/EndpointFactoryF.h +1 -1
- data/ext/ice/cpp/src/Ice/EndpointFactoryManager.cpp +35 -19
- data/ext/ice/cpp/src/Ice/EndpointFactoryManager.h +10 -4
- data/ext/ice/cpp/src/Ice/EndpointFactoryManagerF.h +1 -1
- data/ext/ice/cpp/src/Ice/EndpointI.cpp +17 -1
- data/ext/ice/cpp/src/Ice/EndpointI.h +35 -9
- data/ext/ice/cpp/src/Ice/EndpointIF.h +18 -5
- data/ext/ice/cpp/src/Ice/EndpointTypes.cpp +18 -6
- data/ext/ice/cpp/src/Ice/EventHandler.cpp +6 -4
- data/ext/ice/cpp/src/Ice/EventHandler.h +13 -8
- data/ext/ice/cpp/src/Ice/EventHandlerF.h +5 -2
- data/ext/ice/cpp/src/Ice/Exception.cpp +95 -86
- data/ext/ice/cpp/src/Ice/FacetMap.cpp +20 -6
- data/ext/ice/cpp/src/Ice/FactoryTable.cpp +37 -28
- data/ext/ice/cpp/src/Ice/FactoryTableInit.cpp +2 -4
- data/ext/ice/cpp/src/Ice/GCObject.cpp +28 -25
- data/ext/ice/cpp/src/Ice/HashUtil.h +2 -3
- data/ext/ice/cpp/src/Ice/HttpParser.cpp +1 -2
- data/ext/ice/cpp/src/Ice/HttpParser.h +1 -1
- data/ext/ice/cpp/src/Ice/IPEndpointI.cpp +92 -53
- data/ext/ice/cpp/src/Ice/IPEndpointI.h +19 -10
- data/ext/ice/cpp/src/Ice/IPEndpointIF.h +6 -2
- data/ext/ice/cpp/src/Ice/IconvStringConverter.cpp +56 -0
- data/ext/ice/cpp/src/Ice/Identity.cpp +24 -10
- data/ext/ice/cpp/src/Ice/ImplicitContext.cpp +37 -6
- data/ext/ice/cpp/src/Ice/ImplicitContextF.cpp +27 -5
- data/ext/ice/cpp/src/Ice/ImplicitContextI.cpp +14 -14
- data/ext/ice/cpp/src/Ice/ImplicitContextI.h +7 -5
- data/ext/ice/cpp/src/Ice/Incoming.cpp +276 -245
- data/ext/ice/cpp/src/Ice/IncomingAsync.cpp +104 -209
- data/ext/ice/cpp/src/Ice/IncomingRequest.h +5 -4
- data/ext/ice/cpp/src/Ice/Initialize.cpp +299 -172
- data/ext/ice/cpp/src/Ice/InputStream.cpp +2773 -0
- data/ext/ice/cpp/src/Ice/Instance.cpp +191 -231
- data/ext/ice/cpp/src/Ice/Instance.h +30 -18
- data/ext/ice/cpp/src/Ice/Instrumentation.cpp +106 -7
- data/ext/ice/cpp/src/Ice/InstrumentationF.cpp +27 -5
- data/ext/ice/cpp/src/Ice/InstrumentationI.cpp +117 -99
- data/ext/ice/cpp/src/Ice/InstrumentationI.h +30 -31
- data/ext/ice/cpp/src/Ice/LocalException.cpp +1190 -416
- data/ext/ice/cpp/src/Ice/LocalObject.cpp +1 -2
- data/ext/ice/cpp/src/Ice/Locator.cpp +1167 -1215
- data/ext/ice/cpp/src/Ice/LocatorF.cpp +29 -6
- data/ext/ice/cpp/src/Ice/LocatorInfo.cpp +129 -163
- data/ext/ice/cpp/src/Ice/LocatorInfo.h +29 -29
- data/ext/ice/cpp/src/Ice/LocatorInfoF.h +1 -1
- data/ext/ice/cpp/src/Ice/Logger.cpp +35 -5
- data/ext/ice/cpp/src/Ice/LoggerAdminI.cpp +178 -73
- data/ext/ice/cpp/src/Ice/LoggerAdminI.h +4 -4
- data/ext/ice/cpp/src/Ice/LoggerF.cpp +27 -5
- data/ext/ice/cpp/src/Ice/LoggerI.cpp +14 -44
- data/ext/ice/cpp/src/Ice/LoggerI.h +7 -13
- data/ext/ice/cpp/src/Ice/LoggerUtil.cpp +10 -12
- data/ext/ice/cpp/src/Ice/Metrics.cpp +1059 -1069
- data/ext/ice/cpp/src/Ice/MetricsAdminI.cpp +49 -19
- data/ext/ice/cpp/src/Ice/MetricsObserverI.cpp +1 -2
- data/ext/ice/cpp/src/Ice/Network.cpp +534 -170
- data/ext/ice/cpp/src/Ice/Network.h +100 -23
- data/ext/ice/cpp/src/Ice/NetworkF.h +2 -2
- data/ext/ice/cpp/src/Ice/NetworkProxy.cpp +21 -14
- data/ext/ice/cpp/src/Ice/NetworkProxy.h +5 -2
- data/ext/ice/cpp/src/Ice/NetworkProxyF.h +1 -1
- data/ext/ice/cpp/src/Ice/Object.cpp +217 -221
- data/ext/ice/cpp/src/Ice/ObjectAdapter.cpp +41 -6
- data/ext/ice/cpp/src/Ice/ObjectAdapterF.cpp +27 -5
- data/ext/ice/cpp/src/Ice/ObjectAdapterFactory.cpp +35 -14
- data/ext/ice/cpp/src/Ice/ObjectAdapterFactory.h +13 -7
- data/ext/ice/cpp/{include → src}/Ice/ObjectAdapterFactoryF.h +5 -1
- data/ext/ice/cpp/src/Ice/ObjectAdapterI.cpp +184 -58
- data/ext/ice/cpp/src/Ice/ObjectAdapterI.h +32 -26
- data/ext/ice/cpp/src/Ice/ObjectFactory.cpp +37 -6
- data/ext/ice/cpp/src/Ice/ObserverHelper.cpp +9 -32
- data/ext/ice/cpp/src/Ice/OpaqueEndpointI.cpp +40 -18
- data/ext/ice/cpp/src/Ice/OpaqueEndpointI.h +14 -5
- data/ext/ice/cpp/src/Ice/OutgoingAsync.cpp +803 -365
- data/ext/ice/cpp/src/Ice/OutputStream.cpp +1399 -0
- data/ext/ice/cpp/src/Ice/Plugin.cpp +45 -6
- data/ext/ice/cpp/src/Ice/PluginF.cpp +27 -5
- data/ext/ice/cpp/src/Ice/PluginManagerI.cpp +13 -13
- data/ext/ice/cpp/src/Ice/PluginManagerI.h +5 -6
- data/ext/ice/cpp/src/Ice/Process.cpp +256 -114
- data/ext/ice/cpp/src/Ice/ProcessF.cpp +29 -6
- data/ext/ice/cpp/src/Ice/Properties.cpp +38 -8
- data/ext/ice/cpp/src/Ice/PropertiesAdmin.cpp +340 -328
- data/ext/ice/cpp/src/Ice/PropertiesAdminI.cpp +81 -17
- data/ext/ice/cpp/src/Ice/PropertiesAdminI.h +29 -5
- data/ext/ice/cpp/src/Ice/PropertiesF.cpp +29 -6
- data/ext/ice/cpp/src/Ice/PropertiesI.cpp +25 -26
- data/ext/ice/cpp/src/Ice/PropertiesI.h +8 -11
- data/ext/ice/cpp/src/Ice/PropertyNames.cpp +107 -50
- data/ext/ice/cpp/src/Ice/PropertyNames.h +4 -2
- data/ext/ice/cpp/src/Ice/Protocol.cpp +2 -2
- data/ext/ice/cpp/src/Ice/ProtocolInstance.cpp +37 -2
- data/ext/ice/cpp/src/Ice/ProtocolInstance.h +9 -20
- data/ext/ice/cpp/src/Ice/ProtocolInstanceF.h +1 -1
- data/ext/ice/cpp/src/Ice/ProtocolPluginFacade.cpp +6 -1
- data/ext/ice/cpp/src/Ice/ProtocolPluginFacade.h +3 -1
- data/ext/ice/cpp/src/Ice/ProtocolPluginFacadeF.h +1 -1
- data/ext/ice/cpp/src/Ice/Proxy.cpp +690 -964
- data/ext/ice/cpp/src/Ice/ProxyFactory.cpp +23 -32
- data/ext/ice/cpp/src/Ice/ProxyFactory.h +16 -11
- data/ext/ice/cpp/src/Ice/Reference.cpp +75 -69
- data/ext/ice/cpp/src/Ice/Reference.h +27 -22
- data/ext/ice/cpp/src/Ice/ReferenceFactory.cpp +18 -21
- data/ext/ice/cpp/src/Ice/ReferenceFactory.h +12 -12
- data/ext/ice/cpp/src/Ice/ReferenceFactoryF.h +1 -1
- data/ext/ice/cpp/src/Ice/RegisterPluginsInit.cpp +18 -4
- data/ext/ice/cpp/src/Ice/RegisterPluginsInit.h +1 -1
- data/ext/ice/cpp/src/Ice/RemoteLogger.cpp +672 -552
- data/ext/ice/cpp/src/Ice/ReplyStatus.h +1 -1
- data/ext/ice/cpp/src/Ice/RequestHandler.cpp +5 -3
- data/ext/ice/cpp/src/Ice/RequestHandler.h +10 -13
- data/ext/ice/cpp/src/Ice/RequestHandlerFactory.cpp +10 -6
- data/ext/ice/cpp/src/Ice/RequestHandlerFactory.h +2 -2
- data/ext/ice/cpp/src/Ice/ResponseHandler.cpp +3 -6
- data/ext/ice/cpp/src/Ice/ResponseHandler.h +16 -7
- data/ext/ice/cpp/src/Ice/RetryQueue.cpp +6 -12
- data/ext/ice/cpp/src/Ice/RetryQueue.h +7 -6
- data/ext/ice/cpp/src/Ice/RetryQueueF.h +1 -1
- data/ext/ice/cpp/src/Ice/Router.cpp +523 -474
- data/ext/ice/cpp/src/Ice/RouterF.cpp +29 -6
- data/ext/ice/cpp/src/Ice/RouterInfo.cpp +91 -70
- data/ext/ice/cpp/src/Ice/RouterInfo.h +43 -32
- data/ext/ice/cpp/src/Ice/RouterInfoF.h +1 -1
- data/ext/ice/cpp/src/{IceUtil → Ice}/SHA1.cpp +21 -21
- data/ext/ice/cpp/src/Ice/Selector.cpp +989 -923
- data/ext/ice/cpp/src/Ice/Selector.h +100 -147
- data/ext/ice/cpp/src/Ice/ServantLocator.cpp +37 -6
- data/ext/ice/cpp/src/Ice/ServantLocatorF.cpp +27 -5
- data/ext/ice/cpp/src/Ice/ServantManager.cpp +9 -9
- data/ext/ice/cpp/src/Ice/ServantManager.h +1 -1
- data/ext/ice/cpp/src/Ice/SharedContext.h +2 -2
- data/ext/ice/cpp/src/Ice/SliceChecksumDict.cpp +20 -6
- data/ext/ice/cpp/src/Ice/SliceChecksums.cpp +2 -2
- data/ext/ice/cpp/src/Ice/SlicedData.cpp +72 -20
- data/ext/ice/cpp/src/Ice/StreamSocket.cpp +173 -18
- data/ext/ice/cpp/src/Ice/StreamSocket.h +13 -4
- data/ext/ice/cpp/src/Ice/StringConverterPlugin.cpp +48 -17
- data/ext/ice/cpp/src/Ice/StringUtil.h +35 -0
- data/ext/ice/cpp/src/Ice/SysLoggerI.cpp +8 -4
- data/ext/ice/cpp/src/Ice/SysLoggerI.h +2 -3
- data/ext/ice/cpp/src/Ice/TcpAcceptor.cpp +158 -32
- data/ext/ice/cpp/src/Ice/TcpAcceptor.h +12 -5
- data/ext/ice/cpp/src/Ice/TcpConnector.cpp +1 -7
- data/ext/ice/cpp/src/Ice/TcpConnector.h +1 -2
- data/ext/ice/cpp/src/Ice/TcpEndpointI.cpp +40 -32
- data/ext/ice/cpp/src/Ice/TcpEndpointI.h +11 -8
- data/ext/ice/cpp/src/Ice/TcpTransceiver.cpp +12 -27
- data/ext/ice/cpp/src/Ice/TcpTransceiver.h +7 -10
- data/ext/ice/cpp/src/{IceUtil → Ice}/Thread.cpp +24 -41
- data/ext/ice/cpp/src/Ice/ThreadPool.cpp +175 -267
- data/ext/ice/cpp/src/Ice/ThreadPool.h +38 -43
- data/ext/ice/cpp/src/{IceUtil → Ice}/Timer.cpp +28 -21
- data/ext/ice/cpp/src/Ice/TraceLevels.cpp +2 -2
- data/ext/ice/cpp/src/Ice/TraceLevels.h +1 -1
- data/ext/ice/cpp/src/Ice/TraceLevelsF.h +2 -2
- data/ext/ice/cpp/src/Ice/TraceUtil.cpp +53 -31
- data/ext/ice/cpp/src/Ice/TraceUtil.h +13 -6
- data/ext/ice/cpp/src/Ice/Transceiver.cpp +1 -2
- data/ext/ice/cpp/src/Ice/Transceiver.h +8 -7
- data/ext/ice/cpp/src/Ice/TransceiverF.h +1 -1
- data/ext/ice/cpp/src/Ice/UdpConnector.cpp +2 -8
- data/ext/ice/cpp/src/Ice/UdpConnector.h +1 -2
- data/ext/ice/cpp/src/Ice/UdpEndpointI.cpp +92 -31
- data/ext/ice/cpp/src/Ice/UdpEndpointI.h +12 -4
- data/ext/ice/cpp/src/Ice/UdpTransceiver.cpp +150 -179
- data/ext/ice/cpp/src/Ice/UdpTransceiver.h +15 -17
- data/ext/ice/cpp/src/Ice/Value.cpp +81 -0
- data/ext/ice/cpp/src/Ice/ValueFactory.cpp +84 -0
- data/ext/ice/cpp/src/Ice/ValueFactoryManagerI.cpp +70 -0
- data/ext/ice/cpp/src/Ice/ValueFactoryManagerI.h +42 -0
- data/ext/ice/cpp/src/Ice/Version.cpp +24 -14
- data/ext/ice/cpp/src/Ice/VirtualShared.h +43 -0
- data/ext/ice/cpp/src/Ice/WSAcceptor.cpp +3 -9
- data/ext/ice/cpp/src/Ice/WSAcceptor.h +3 -7
- data/ext/ice/cpp/src/Ice/WSConnector.cpp +5 -11
- data/ext/ice/cpp/src/Ice/WSConnector.h +3 -6
- data/ext/ice/cpp/src/Ice/WSEndpoint.cpp +185 -80
- data/ext/ice/cpp/src/Ice/WSEndpoint.h +21 -31
- data/ext/ice/cpp/src/Ice/WSTransceiver.cpp +41 -37
- data/ext/ice/cpp/src/Ice/WSTransceiver.h +7 -21
- data/ext/ice/cpp/src/IceDiscovery/IceDiscovery.cpp +526 -264
- data/ext/ice/cpp/src/IceDiscovery/IceDiscovery.h +341 -455
- data/ext/ice/cpp/src/IceDiscovery/LocatorI.cpp +86 -26
- data/ext/ice/cpp/src/IceDiscovery/LocatorI.h +59 -23
- data/ext/ice/cpp/src/IceDiscovery/LookupI.cpp +315 -61
- data/ext/ice/cpp/src/IceDiscovery/LookupI.h +83 -36
- data/ext/ice/cpp/src/IceDiscovery/PluginI.cpp +57 -59
- data/ext/ice/cpp/src/IceDiscovery/PluginI.h +3 -3
- data/ext/ice/cpp/src/IceLocatorDiscovery/IceLocatorDiscovery.cpp +396 -159
- data/ext/ice/cpp/src/IceLocatorDiscovery/IceLocatorDiscovery.h +251 -355
- data/ext/ice/cpp/src/IceLocatorDiscovery/Plugin.h +52 -0
- data/ext/ice/cpp/src/IceLocatorDiscovery/PluginI.cpp +526 -131
- data/ext/ice/cpp/src/IceSSL/AcceptorI.cpp +19 -165
- data/ext/ice/cpp/src/IceSSL/AcceptorI.h +8 -17
- data/ext/ice/cpp/src/IceSSL/CertificateI.cpp +284 -0
- data/ext/ice/cpp/src/IceSSL/CertificateI.h +69 -0
- data/ext/ice/cpp/src/IceSSL/ConnectionInfo.cpp +39 -11
- data/ext/ice/cpp/src/{Ice/ObjectFactoryF.cpp → IceSSL/ConnectionInfoF.cpp} +31 -9
- data/ext/ice/cpp/src/IceSSL/ConnectorI.cpp +14 -56
- data/ext/ice/cpp/src/IceSSL/ConnectorI.h +6 -13
- data/ext/ice/cpp/src/IceSSL/EndpointI.cpp +205 -197
- data/ext/ice/cpp/src/IceSSL/EndpointI.h +41 -33
- data/ext/ice/cpp/src/IceSSL/EndpointInfo.cpp +39 -10
- data/ext/ice/cpp/src/IceSSL/Instance.cpp +1 -6
- data/ext/ice/cpp/src/IceSSL/Instance.h +7 -7
- data/ext/ice/cpp/src/IceSSL/InstanceF.h +11 -7
- data/ext/ice/cpp/src/IceSSL/OpenSSLCertificateI.cpp +588 -0
- data/ext/ice/cpp/src/IceSSL/OpenSSLEngine.cpp +117 -152
- data/ext/ice/cpp/src/IceSSL/OpenSSLEngine.h +64 -0
- data/ext/ice/cpp/src/IceSSL/OpenSSLEngineF.h +32 -0
- data/ext/ice/cpp/src/IceSSL/OpenSSLPluginI.cpp +132 -0
- data/ext/ice/cpp/src/IceSSL/OpenSSLTransceiverI.cpp +400 -89
- data/ext/ice/cpp/src/IceSSL/OpenSSLTransceiverI.h +36 -21
- data/ext/ice/cpp/src/IceSSL/OpenSSLUtil.cpp +291 -0
- data/ext/ice/cpp/src/IceSSL/OpenSSLUtil.h +63 -0
- data/ext/ice/cpp/src/IceSSL/PluginI.cpp +71 -41
- data/ext/ice/cpp/src/IceSSL/PluginI.h +13 -18
- data/ext/ice/cpp/src/IceSSL/RFC2253.cpp +9 -54
- data/ext/ice/cpp/src/IceSSL/RFC2253.h +7 -7
- data/ext/ice/cpp/src/IceSSL/SChannelCertificateI.cpp +585 -0
- data/ext/ice/cpp/src/IceSSL/SChannelEngine.cpp +491 -75
- data/ext/ice/cpp/src/IceSSL/SChannelEngine.h +126 -0
- data/ext/ice/cpp/src/IceSSL/SChannelEngineF.h +32 -0
- data/ext/ice/cpp/src/IceSSL/SChannelPluginI.cpp +78 -0
- data/ext/ice/cpp/src/IceSSL/SChannelTransceiverI.cpp +126 -169
- data/ext/ice/cpp/src/IceSSL/SChannelTransceiverI.h +19 -22
- data/ext/ice/cpp/src/IceSSL/SSLEngine.cpp +79 -74
- data/ext/ice/cpp/src/IceSSL/SSLEngine.h +24 -187
- data/ext/ice/cpp/src/IceSSL/SSLEngineF.h +4 -19
- data/ext/ice/cpp/src/IceSSL/SecureTransportCertificateI.cpp +862 -0
- data/ext/ice/cpp/src/IceSSL/SecureTransportEngine.cpp +56 -214
- data/ext/ice/cpp/src/IceSSL/SecureTransportEngine.h +60 -0
- data/ext/ice/cpp/src/IceSSL/SecureTransportEngineF.h +31 -0
- data/ext/ice/cpp/src/IceSSL/SecureTransportPluginI.cpp +80 -0
- data/ext/ice/cpp/src/IceSSL/SecureTransportTransceiverI.cpp +137 -144
- data/ext/ice/cpp/src/IceSSL/SecureTransportTransceiverI.h +25 -28
- data/ext/ice/cpp/src/IceSSL/SecureTransportUtil.cpp +857 -0
- data/ext/ice/cpp/src/IceSSL/SecureTransportUtil.h +46 -0
- data/ext/ice/cpp/src/IceSSL/TrustManager.cpp +9 -13
- data/ext/ice/cpp/src/IceSSL/TrustManager.h +4 -4
- data/ext/ice/cpp/src/IceSSL/TrustManagerF.h +3 -3
- data/ext/ice/cpp/src/IceSSL/UWPCertificateI.cpp +271 -0
- data/ext/ice/cpp/src/IceSSL/UWPEngine.cpp +343 -0
- data/ext/ice/cpp/src/IceSSL/UWPEngine.h +46 -0
- data/ext/ice/cpp/{include/Ice/ObjectFactoryManagerF.h → src/IceSSL/UWPEngineF.h} +13 -8
- data/ext/ice/cpp/src/IceSSL/UWPPluginI.cpp +94 -0
- data/ext/ice/cpp/src/IceSSL/UWPTransceiverI.cpp +388 -0
- data/ext/ice/cpp/src/IceSSL/UWPTransceiverI.h +76 -0
- data/ext/ice/cpp/src/IceSSL/Util.cpp +66 -1256
- data/ext/ice/cpp/src/IceSSL/Util.h +48 -137
- data/ext/ice/cpp/src/IceUtil/ConsoleUtil.cpp +162 -0
- data/ext/ice/cpp/src/IceUtil/ConvertUTF.cpp +22 -22
- data/ext/ice/cpp/src/IceUtil/ConvertUTF.h +34 -26
- data/ext/ice/cpp/src/IceUtil/CtrlCHandler.cpp +20 -31
- data/ext/ice/cpp/src/IceUtil/FileUtil.cpp +25 -116
- data/ext/ice/cpp/src/IceUtil/InputUtil.cpp +1 -1
- data/ext/ice/cpp/src/IceUtil/MutexProtocol.cpp +1 -1
- data/ext/ice/cpp/src/IceUtil/Options.cpp +23 -46
- data/ext/ice/cpp/src/IceUtil/OutputUtil.cpp +7 -6
- data/ext/ice/cpp/src/IceUtil/Random.cpp +13 -13
- data/ext/ice/cpp/src/IceUtil/RecMutex.cpp +3 -9
- data/ext/ice/cpp/src/IceUtil/Shared.cpp +8 -3
- data/ext/ice/cpp/src/IceUtil/StringConverter.cpp +501 -264
- data/ext/ice/cpp/src/IceUtil/StringUtil.cpp +540 -235
- data/ext/ice/cpp/src/IceUtil/ThreadException.cpp +37 -74
- data/ext/ice/cpp/src/IceUtil/Time.cpp +1 -1
- data/ext/ice/cpp/src/IceUtil/UUID.cpp +10 -10
- data/ext/ice/cpp/src/IceUtil/Unicode.cpp +98 -97
- data/ext/ice/cpp/src/IceUtil/Unicode.h +21 -35
- data/ext/ice/cpp/src/IceUtil/UtilException.cpp +838 -0
- data/ext/ice/cpp/src/Slice/CPlusPlusUtil.cpp +815 -163
- data/ext/ice/cpp/src/Slice/CPlusPlusUtil.h +76 -0
- data/ext/ice/cpp/src/Slice/Checksum.cpp +2 -2
- data/ext/ice/cpp/{include → src}/Slice/Checksum.h +2 -2
- data/ext/ice/cpp/src/Slice/FileTracker.cpp +25 -78
- data/ext/ice/cpp/{include → src}/Slice/FileTracker.h +9 -9
- data/ext/ice/cpp/src/Slice/Grammar.cpp +1994 -1943
- data/ext/ice/cpp/src/Slice/Grammar.h +44 -24
- data/ext/ice/cpp/src/Slice/GrammarUtil.h +14 -14
- data/ext/ice/cpp/src/Slice/JavaUtil.cpp +2658 -1927
- data/ext/ice/cpp/{include → src}/Slice/JavaUtil.h +178 -59
- data/ext/ice/cpp/src/Slice/MD5.cpp +1 -1
- data/ext/ice/cpp/src/Slice/MD5.h +1 -1
- data/ext/ice/cpp/src/Slice/MD5I.cpp +0 -1
- data/ext/ice/cpp/src/Slice/MD5I.h +1 -1
- data/ext/ice/cpp/src/Slice/PHPUtil.cpp +12 -15
- data/ext/ice/cpp/{include → src}/Slice/PHPUtil.h +6 -15
- data/ext/ice/cpp/src/Slice/Parser.cpp +802 -307
- data/ext/ice/cpp/{include → src}/Slice/Parser.h +76 -84
- data/ext/ice/cpp/src/Slice/Preprocessor.cpp +43 -21
- data/ext/ice/cpp/{include → src}/Slice/Preprocessor.h +7 -12
- data/ext/ice/cpp/src/Slice/Python.cpp +207 -86
- data/ext/ice/cpp/src/Slice/PythonUtil.cpp +683 -679
- data/ext/ice/cpp/{include → src}/Slice/PythonUtil.h +19 -8
- data/ext/ice/cpp/src/Slice/Ruby.cpp +38 -34
- data/ext/ice/cpp/src/Slice/RubyUtil.cpp +177 -445
- data/ext/ice/cpp/{include → src}/Slice/RubyUtil.h +6 -6
- data/ext/ice/cpp/src/Slice/Scanner.cpp +218 -306
- data/ext/ice/cpp/src/Slice/{Util.cpp → SliceUtil.cpp} +37 -64
- data/ext/ice/cpp/src/Slice/StringLiteralUtil.cpp +374 -0
- data/ext/ice/cpp/src/Slice/Util.h +54 -0
- data/ext/ice/mcpp/Makefile +5 -2
- data/ice.gemspec +2 -7
- data/lib/Glacier2.rb +1 -1
- data/lib/Glacier2/Metrics.rb +7 -46
- data/lib/Glacier2/PermissionsVerifier.rb +24 -95
- data/lib/Glacier2/PermissionsVerifierF.rb +3 -3
- data/lib/Glacier2/Router.rb +32 -74
- data/lib/Glacier2/RouterF.rb +3 -3
- data/lib/Glacier2/SSLInfo.rb +4 -7
- data/lib/Glacier2/Session.rb +88 -307
- data/lib/Ice.rb +83 -52
- data/lib/Ice/BuiltinSequences.rb +4 -4
- data/lib/Ice/Communicator.rb +56 -58
- data/lib/Ice/CommunicatorF.rb +3 -3
- data/lib/Ice/Connection.rb +153 -162
- data/lib/Ice/ConnectionF.rb +3 -3
- data/lib/Ice/Current.rb +4 -11
- data/lib/Ice/Endpoint.rb +57 -133
- data/lib/Ice/EndpointF.rb +3 -3
- data/lib/Ice/EndpointTypes.rb +3 -7
- data/lib/Ice/FacetMap.rb +4 -4
- data/lib/Ice/Identity.rb +5 -8
- data/lib/Ice/ImplicitContext.rb +5 -34
- data/lib/Ice/ImplicitContextF.rb +3 -3
- data/lib/Ice/Instrumentation.rb +23 -275
- data/lib/Ice/InstrumentationF.rb +3 -3
- data/lib/Ice/LocalException.rb +95 -141
- data/lib/Ice/Locator.rb +51 -165
- data/lib/Ice/LocatorF.rb +3 -3
- data/lib/Ice/Logger.rb +5 -34
- data/lib/Ice/LoggerF.rb +3 -3
- data/lib/Ice/Metrics.rb +61 -416
- data/lib/Ice/ObjectAdapter.rb +34 -0
- data/lib/Ice/ObjectAdapterF.rb +3 -3
- data/lib/Ice/ObjectFactory.rb +5 -30
- data/lib/Ice/Plugin.rb +7 -60
- data/lib/Ice/PluginF.rb +3 -3
- data/lib/Ice/Process.rb +16 -52
- data/lib/Ice/ProcessF.rb +3 -3
- data/lib/Ice/Properties.rb +5 -41
- data/lib/Ice/PropertiesAdmin.rb +19 -56
- data/lib/Ice/PropertiesF.rb +3 -3
- data/lib/Ice/RemoteLogger.rb +34 -115
- data/lib/Ice/Router.rb +29 -101
- data/lib/Ice/RouterF.rb +3 -3
- data/lib/Ice/ServantLocator.rb +31 -0
- data/lib/Ice/{ObjectFactoryF.rb → ServantLocatorF.rb} +6 -6
- data/lib/Ice/SliceChecksumDict.rb +3 -3
- data/lib/Ice/ValueFactory.rb +33 -0
- data/lib/Ice/Version.rb +5 -11
- data/lib/IceBox.rb +1 -1
- data/lib/IceBox/IceBox.rb +44 -148
- data/lib/IceGrid.rb +1 -4
- data/lib/IceGrid/Admin.rb +551 -427
- data/lib/IceGrid/Descriptor.rb +62 -529
- data/lib/IceGrid/Exception.rb +24 -45
- data/lib/IceGrid/FileParser.rb +14 -50
- data/lib/IceGrid/PluginFacade.rb +40 -0
- data/lib/IceGrid/Registry.rb +151 -58
- data/lib/IceGrid/Session.rb +25 -64
- data/lib/IceGrid/UserAccountMapper.rb +14 -50
- data/lib/IcePatch2.rb +1 -1
- data/lib/IcePatch2/FileInfo.rb +5 -11
- data/lib/IcePatch2/FileServer.rb +33 -76
- data/lib/IceStorm.rb +1 -1
- data/lib/IceStorm/IceStorm.rb +79 -206
- data/lib/IceStorm/Metrics.rb +11 -89
- data/slice/Glacier2/Metrics.ice +8 -4
- data/slice/Glacier2/PermissionsVerifier.ice +10 -7
- data/slice/Glacier2/PermissionsVerifierF.ice +7 -4
- data/slice/Glacier2/Router.ice +10 -8
- data/slice/Glacier2/RouterF.ice +7 -4
- data/slice/Glacier2/SSLInfo.ice +8 -5
- data/slice/Glacier2/Session.ice +15 -13
- data/slice/Ice/BuiltinSequences.ice +7 -4
- data/slice/Ice/Communicator.ice +141 -66
- data/slice/Ice/CommunicatorF.ice +7 -4
- data/slice/Ice/Connection.ice +183 -86
- data/slice/Ice/ConnectionF.ice +7 -4
- data/slice/Ice/Current.ice +13 -9
- data/slice/Ice/Endpoint.ice +63 -14
- data/slice/Ice/EndpointF.ice +7 -4
- data/slice/Ice/EndpointTypes.ice +8 -6
- data/slice/Ice/FacetMap.ice +7 -4
- data/slice/Ice/Identity.ice +13 -5
- data/slice/Ice/ImplicitContext.ice +20 -18
- data/slice/Ice/ImplicitContextF.ice +7 -4
- data/slice/Ice/Instrumentation.ice +20 -19
- data/slice/Ice/InstrumentationF.ice +8 -5
- data/slice/Ice/LocalException.ice +87 -87
- data/slice/Ice/Locator.ice +19 -18
- data/slice/Ice/LocatorF.ice +7 -4
- data/slice/Ice/Logger.ice +9 -7
- data/slice/Ice/LoggerF.ice +7 -4
- data/slice/Ice/Metrics.ice +18 -14
- data/slice/Ice/ObjectAdapter.ice +30 -13
- data/slice/Ice/ObjectAdapterF.ice +7 -4
- data/slice/Ice/ObjectFactory.ice +15 -12
- data/slice/Ice/Plugin.ice +9 -6
- data/slice/Ice/PluginF.ice +8 -5
- data/slice/Ice/Process.ice +9 -6
- data/slice/Ice/ProcessF.ice +7 -4
- data/slice/Ice/Properties.ice +15 -12
- data/slice/Ice/PropertiesAdmin.ice +9 -5
- data/slice/Ice/PropertiesF.ice +7 -4
- data/slice/Ice/RemoteLogger.ice +33 -24
- data/slice/Ice/Router.ice +16 -7
- data/slice/Ice/RouterF.ice +7 -4
- data/slice/Ice/ServantLocator.ice +13 -10
- data/slice/Ice/ServantLocatorF.ice +7 -4
- data/slice/Ice/SliceChecksumDict.ice +7 -4
- data/slice/Ice/ValueFactory.ice +127 -0
- data/slice/Ice/Version.ice +9 -5
- data/slice/IceBT/ConnectionInfo.ice +53 -0
- data/slice/IceBT/EndpointInfo.ice +51 -0
- data/slice/IceBT/Types.ice +39 -0
- data/slice/IceBox/IceBox.ice +20 -21
- data/slice/IceDiscovery/IceDiscovery.ice +9 -5
- data/slice/IceGrid/Admin.ice +390 -30
- data/slice/IceGrid/Descriptor.ice +37 -29
- data/slice/IceGrid/Exception.ice +33 -27
- data/slice/IceGrid/FileParser.ice +9 -6
- data/slice/IceGrid/PluginFacade.ice +11 -9
- data/slice/IceGrid/Registry.ice +139 -16
- data/slice/IceGrid/Session.ice +10 -8
- data/slice/IceGrid/UserAccountMapper.ice +9 -6
- data/slice/IceIAP/ConnectionInfo.ice +70 -0
- data/slice/IceIAP/EndpointInfo.ice +64 -0
- data/slice/IceLocatorDiscovery/IceLocatorDiscovery.ice +9 -7
- data/slice/IcePatch2/FileInfo.ice +9 -8
- data/slice/IcePatch2/FileServer.ice +17 -13
- data/slice/IceSSL/ConnectionInfo.ice +14 -17
- data/slice/IceSSL/ConnectionInfoF.ice +24 -0
- data/slice/IceSSL/EndpointInfo.ice +9 -30
- data/slice/IceStorm/IceStorm.ice +22 -18
- data/slice/IceStorm/Metrics.ice +9 -5
- metadata +154 -120
- data/ext/ObjectFactory.cpp +0 -140
- data/ext/ObjectFactory.h +0 -50
- data/ext/ice/cpp/include/Ice/BasicStream.h +0 -1335
- data/ext/ice/cpp/include/Ice/Communicator.h +0 -200
- data/ext/ice/cpp/include/Ice/Connection.h +0 -497
- data/ext/ice/cpp/include/Ice/DeprecatedStringConverter.h +0 -62
- data/ext/ice/cpp/include/Ice/Endpoint.h +0 -341
- data/ext/ice/cpp/include/Ice/Identity.h +0 -168
- data/ext/ice/cpp/include/Ice/Instrumentation.h +0 -365
- data/ext/ice/cpp/include/Ice/LocalException.h +0 -1030
- data/ext/ice/cpp/include/Ice/Locator.h +0 -2193
- data/ext/ice/cpp/include/Ice/Metrics.h +0 -2974
- data/ext/ice/cpp/include/Ice/ObjectAdapter.h +0 -168
- data/ext/ice/cpp/include/Ice/ObjectFactory.h +0 -92
- data/ext/ice/cpp/include/Ice/ObjectFactoryF.h +0 -66
- data/ext/ice/cpp/include/Ice/Outgoing.h +0 -225
- data/ext/ice/cpp/include/Ice/Plugin.h +0 -125
- data/ext/ice/cpp/include/Ice/Process.h +0 -574
- data/ext/ice/cpp/include/Ice/PropertiesAdmin.h +0 -830
- data/ext/ice/cpp/include/Ice/RemoteLogger.h +0 -1500
- data/ext/ice/cpp/include/Ice/Router.h +0 -1159
- data/ext/ice/cpp/include/Ice/Stream.h +0 -447
- data/ext/ice/cpp/include/Ice/StreamF.h +0 -30
- data/ext/ice/cpp/include/Ice/Version.h +0 -262
- data/ext/ice/cpp/include/IceSSL/ConnectionInfo.h +0 -158
- data/ext/ice/cpp/include/IceSSL/EndpointInfo.h +0 -142
- data/ext/ice/cpp/include/IceUtil/AbstractMutex.h +0 -119
- data/ext/ice/cpp/include/IceUtil/Cache.h +0 -362
- data/ext/ice/cpp/include/Slice/CPlusPlusUtil.h +0 -65
- data/ext/ice/cpp/include/Slice/CsUtil.h +0 -92
- data/ext/ice/cpp/include/Slice/DotNetNames.h +0 -34
- data/ext/ice/cpp/include/Slice/ObjCUtil.h +0 -127
- data/ext/ice/cpp/include/Slice/Util.h +0 -56
- data/ext/ice/cpp/src/Ice/BasicStream.cpp +0 -3428
- data/ext/ice/cpp/src/Ice/DeprecatedStringConverter.cpp +0 -62
- data/ext/ice/cpp/src/Ice/ObjectFactoryManager.cpp +0 -139
- data/ext/ice/cpp/src/Ice/ObjectFactoryManager.h +0 -43
- data/ext/ice/cpp/src/Ice/Outgoing.cpp +0 -694
- data/ext/ice/cpp/src/Ice/Stream.cpp +0 -53
- data/ext/ice/cpp/src/Ice/StreamI.cpp +0 -832
- data/ext/ice/cpp/src/Ice/StreamI.h +0 -198
- data/ext/ice/cpp/src/IceSSL/Certificate.cpp +0 -1336
- data/ext/ice/cpp/src/IceUtil/Exception.cpp +0 -792
- data/ext/ice/cpp/src/IceUtil/FileUtil.h +0 -185
- data/ext/ice/cpp/src/Slice/CsUtil.cpp +0 -2660
- data/ext/ice/cpp/src/Slice/DotNetNames.cpp +0 -146
- data/ext/ice/cpp/src/Slice/ObjCUtil.cpp +0 -1310
- data/lib/IceGrid/Locator.rb +0 -106
- data/lib/IceGrid/Observer.rb +0 -572
- data/lib/IceGrid/Query.rb +0 -169
- data/slice/Freeze/BackgroundSaveEvictor.ice +0 -111
- data/slice/Freeze/CatalogData.ice +0 -49
- data/slice/Freeze/Connection.ice +0 -121
- data/slice/Freeze/DB.ice +0 -37
- data/slice/Freeze/Evictor.ice +0 -346
- data/slice/Freeze/EvictorF.ice +0 -22
- data/slice/Freeze/EvictorStorage.ice +0 -72
- data/slice/Freeze/Exception.ice +0 -100
- data/slice/Freeze/Transaction.ice +0 -58
- data/slice/Freeze/TransactionalEvictor.ice +0 -50
- data/slice/IceGrid/Locator.ice +0 -57
- data/slice/IceGrid/Observer.ice +0 -395
- data/slice/IceGrid/Query.ice +0 -131
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
// **********************************************************************
|
|
2
2
|
//
|
|
3
|
-
// Copyright (c) 2003-
|
|
3
|
+
// Copyright (c) 2003-2017 ZeroC, Inc. All rights reserved.
|
|
4
4
|
//
|
|
5
5
|
// This copy of Ice is licensed to you under the terms described in the
|
|
6
6
|
// ICE_LICENSE file included in this distribution.
|
|
@@ -23,7 +23,7 @@
|
|
|
23
23
|
#include <Ice/PropertiesF.h>
|
|
24
24
|
#include <Ice/EventHandler.h>
|
|
25
25
|
#include <Ice/Selector.h>
|
|
26
|
-
#include <Ice/
|
|
26
|
+
#include <Ice/InputStream.h>
|
|
27
27
|
#include <Ice/ObserverHelper.h>
|
|
28
28
|
|
|
29
29
|
#include <set>
|
|
@@ -35,12 +35,12 @@ namespace IceInternal
|
|
|
35
35
|
class ThreadPoolCurrent;
|
|
36
36
|
|
|
37
37
|
class ThreadPoolWorkQueue;
|
|
38
|
-
|
|
38
|
+
ICE_DEFINE_PTR(ThreadPoolWorkQueuePtr, ThreadPoolWorkQueue);
|
|
39
39
|
|
|
40
|
-
class ThreadPoolWorkItem : virtual
|
|
40
|
+
class ThreadPoolWorkItem : public virtual IceUtil::Shared
|
|
41
41
|
{
|
|
42
42
|
public:
|
|
43
|
-
|
|
43
|
+
|
|
44
44
|
virtual void execute(ThreadPoolCurrent&) = 0;
|
|
45
45
|
};
|
|
46
46
|
typedef IceUtil::Handle<ThreadPoolWorkItem> ThreadPoolWorkItemPtr;
|
|
@@ -51,8 +51,8 @@ public:
|
|
|
51
51
|
|
|
52
52
|
DispatchWorkItem();
|
|
53
53
|
DispatchWorkItem(const Ice::ConnectionPtr& connection);
|
|
54
|
-
|
|
55
|
-
const Ice::ConnectionPtr&
|
|
54
|
+
|
|
55
|
+
const Ice::ConnectionPtr&
|
|
56
56
|
getConnection()
|
|
57
57
|
{
|
|
58
58
|
return _connection;
|
|
@@ -66,18 +66,18 @@ private:
|
|
|
66
66
|
};
|
|
67
67
|
typedef IceUtil::Handle<DispatchWorkItem> DispatchWorkItemPtr;
|
|
68
68
|
|
|
69
|
-
class ThreadPool : public IceUtil::Shared,
|
|
69
|
+
class ThreadPool : public IceUtil::Shared, private IceUtil::Monitor<IceUtil::Mutex>
|
|
70
70
|
{
|
|
71
71
|
class EventHandlerThread : public IceUtil::Thread
|
|
72
72
|
{
|
|
73
73
|
public:
|
|
74
|
-
|
|
74
|
+
|
|
75
75
|
EventHandlerThread(const ThreadPoolPtr&, const std::string&);
|
|
76
76
|
virtual void run();
|
|
77
77
|
|
|
78
78
|
void updateObserver();
|
|
79
79
|
void setState(Ice::Instrumentation::ThreadState);
|
|
80
|
-
|
|
80
|
+
|
|
81
81
|
private:
|
|
82
82
|
|
|
83
83
|
ThreadPoolPtr _pool;
|
|
@@ -106,6 +106,7 @@ public:
|
|
|
106
106
|
update(handler, status, SocketOperationNone);
|
|
107
107
|
}
|
|
108
108
|
bool finish(const EventHandlerPtr&, bool);
|
|
109
|
+
void ready(const EventHandlerPtr&, SocketOperation, bool);
|
|
109
110
|
|
|
110
111
|
void dispatchFromThisThread(const DispatchWorkItemPtr&);
|
|
111
112
|
void dispatch(const DispatchWorkItemPtr&);
|
|
@@ -120,7 +121,7 @@ private:
|
|
|
120
121
|
|
|
121
122
|
bool ioCompleted(ThreadPoolCurrent&);
|
|
122
123
|
|
|
123
|
-
#if defined(ICE_USE_IOCP) || defined(
|
|
124
|
+
#if defined(ICE_USE_IOCP) || defined(ICE_OS_UWP)
|
|
124
125
|
bool startMessage(ThreadPoolCurrent&);
|
|
125
126
|
void finishMessage(ThreadPoolCurrent&);
|
|
126
127
|
#else
|
|
@@ -131,7 +132,11 @@ private:
|
|
|
131
132
|
std::string nextThreadId();
|
|
132
133
|
|
|
133
134
|
const InstancePtr _instance;
|
|
135
|
+
#ifdef ICE_CPP11_MAPPING
|
|
136
|
+
std::function<void(std::function<void()>, const std::shared_ptr<Ice::Connection>&)> _dispatcher;
|
|
137
|
+
#else
|
|
134
138
|
const Ice::DispatcherPtr _dispatcher;
|
|
139
|
+
#endif
|
|
135
140
|
ThreadPoolWorkQueuePtr _workQueue;
|
|
136
141
|
bool _destroyed;
|
|
137
142
|
const std::string _prefix;
|
|
@@ -140,6 +145,7 @@ private:
|
|
|
140
145
|
|
|
141
146
|
friend class EventHandlerThread;
|
|
142
147
|
friend class ThreadPoolCurrent;
|
|
148
|
+
friend class ThreadPoolWorkQueue;
|
|
143
149
|
|
|
144
150
|
const int _size; // Number of threads that are pre-created.
|
|
145
151
|
const int _sizeIO; // Maximum number of threads that can concurrently perform IO.
|
|
@@ -154,11 +160,10 @@ private:
|
|
|
154
160
|
|
|
155
161
|
std::set<EventHandlerThreadPtr> _threads; // All threads, running or not.
|
|
156
162
|
int _inUse; // Number of threads that are currently in use.
|
|
157
|
-
#if !defined(ICE_USE_IOCP) && !defined(
|
|
163
|
+
#if !defined(ICE_USE_IOCP) && !defined(ICE_OS_UWP)
|
|
158
164
|
int _inUseIO; // Number of threads that are currently performing IO.
|
|
159
165
|
std::vector<std::pair<EventHandler*, SocketOperation> > _handlers;
|
|
160
166
|
std::vector<std::pair<EventHandler*, SocketOperation> >::const_iterator _nextHandler;
|
|
161
|
-
std::set<EventHandler*> _pendingHandlers;
|
|
162
167
|
#endif
|
|
163
168
|
|
|
164
169
|
bool _promote;
|
|
@@ -171,14 +176,14 @@ public:
|
|
|
171
176
|
ThreadPoolCurrent(const InstancePtr&, const ThreadPoolPtr&, const ThreadPool::EventHandlerThreadPtr&);
|
|
172
177
|
|
|
173
178
|
SocketOperation operation;
|
|
174
|
-
|
|
179
|
+
Ice::InputStream stream; // A per-thread stream to be used by event handlers for optimization.
|
|
175
180
|
|
|
176
181
|
bool ioCompleted() const
|
|
177
182
|
{
|
|
178
183
|
return _threadPool->ioCompleted(const_cast<ThreadPoolCurrent&>(*this));
|
|
179
184
|
}
|
|
180
185
|
|
|
181
|
-
#if defined(ICE_USE_IOCP) || defined(
|
|
186
|
+
#if defined(ICE_USE_IOCP) || defined(ICE_OS_UWP)
|
|
182
187
|
bool startMessage()
|
|
183
188
|
{
|
|
184
189
|
return _threadPool->startMessage(const_cast<ThreadPoolCurrent&>(*this));
|
|
@@ -206,7 +211,7 @@ private:
|
|
|
206
211
|
ThreadPool::EventHandlerThreadPtr _thread;
|
|
207
212
|
EventHandlerPtr _handler;
|
|
208
213
|
bool _ioCompleted;
|
|
209
|
-
#if !defined(ICE_USE_IOCP) && !defined(
|
|
214
|
+
#if !defined(ICE_USE_IOCP) && !defined(ICE_OS_UWP)
|
|
210
215
|
bool _leader;
|
|
211
216
|
#else
|
|
212
217
|
DWORD _count;
|
|
@@ -215,17 +220,16 @@ private:
|
|
|
215
220
|
friend class ThreadPool;
|
|
216
221
|
};
|
|
217
222
|
|
|
218
|
-
class ThreadPoolWorkQueue : public EventHandler
|
|
223
|
+
class ThreadPoolWorkQueue : public EventHandler
|
|
219
224
|
{
|
|
220
225
|
public:
|
|
221
226
|
|
|
222
|
-
ThreadPoolWorkQueue(
|
|
223
|
-
~ThreadPoolWorkQueue();
|
|
227
|
+
ThreadPoolWorkQueue(ThreadPool&);
|
|
224
228
|
|
|
225
229
|
void destroy();
|
|
226
230
|
void queue(const ThreadPoolWorkItemPtr&);
|
|
227
231
|
|
|
228
|
-
#if defined(ICE_USE_IOCP) || defined(
|
|
232
|
+
#if defined(ICE_USE_IOCP) || defined(ICE_OS_UWP)
|
|
229
233
|
bool startAsync(SocketOperation);
|
|
230
234
|
bool finishAsync(SocketOperation);
|
|
231
235
|
#endif
|
|
@@ -234,19 +238,11 @@ public:
|
|
|
234
238
|
virtual void finished(ThreadPoolCurrent&, bool);
|
|
235
239
|
virtual std::string toString() const;
|
|
236
240
|
virtual NativeInfoPtr getNativeInfo();
|
|
237
|
-
virtual void postMessage();
|
|
238
241
|
|
|
239
242
|
private:
|
|
240
243
|
|
|
241
|
-
|
|
242
|
-
Selector& _selector;
|
|
244
|
+
ThreadPool& _threadPool;
|
|
243
245
|
bool _destroyed;
|
|
244
|
-
#ifdef ICE_USE_IOCP
|
|
245
|
-
AsyncInfo _info;
|
|
246
|
-
#elif !defined(ICE_OS_WINRT)
|
|
247
|
-
SOCKET _fdIntrRead;
|
|
248
|
-
SOCKET _fdIntrWrite;
|
|
249
|
-
#endif
|
|
250
246
|
std::list<ThreadPoolWorkItemPtr> _workItems;
|
|
251
247
|
};
|
|
252
248
|
|
|
@@ -257,10 +253,10 @@ private:
|
|
|
257
253
|
//
|
|
258
254
|
// An instance of the IOScope subclass must be created within the synchronization
|
|
259
255
|
// of the event handler. It takes care of calling startMessage/finishMessage for
|
|
260
|
-
// the IOCP implementation and ensures that finishMessage isn't called multiple
|
|
256
|
+
// the IOCP implementation and ensures that finishMessage isn't called multiple
|
|
261
257
|
// times.
|
|
262
258
|
//
|
|
263
|
-
#if !defined(ICE_USE_IOCP) && !defined(
|
|
259
|
+
#if !defined(ICE_USE_IOCP) && !defined(ICE_OS_UWP)
|
|
264
260
|
template<class T> class ThreadPoolMessage
|
|
265
261
|
{
|
|
266
262
|
public:
|
|
@@ -290,7 +286,7 @@ public:
|
|
|
290
286
|
}
|
|
291
287
|
|
|
292
288
|
private:
|
|
293
|
-
|
|
289
|
+
|
|
294
290
|
ThreadPoolMessage<T>& _message;
|
|
295
291
|
};
|
|
296
292
|
friend class IOScope;
|
|
@@ -309,7 +305,7 @@ private:
|
|
|
309
305
|
ThreadPoolCurrent& _current;
|
|
310
306
|
};
|
|
311
307
|
|
|
312
|
-
#else
|
|
308
|
+
#else
|
|
313
309
|
|
|
314
310
|
template<class T> class ThreadPoolMessage
|
|
315
311
|
{
|
|
@@ -321,7 +317,7 @@ public:
|
|
|
321
317
|
|
|
322
318
|
IOScope(ThreadPoolMessage& message) : _message(message)
|
|
323
319
|
{
|
|
324
|
-
// This must be called with the handler locked.
|
|
320
|
+
// This must be called with the handler locked.
|
|
325
321
|
_finish = _message._current.startMessage();
|
|
326
322
|
}
|
|
327
323
|
|
|
@@ -329,7 +325,7 @@ public:
|
|
|
329
325
|
{
|
|
330
326
|
if(_finish)
|
|
331
327
|
{
|
|
332
|
-
// This must be called with the handler locked.
|
|
328
|
+
// This must be called with the handler locked.
|
|
333
329
|
_message._current.finishMessage();
|
|
334
330
|
}
|
|
335
331
|
}
|
|
@@ -344,7 +340,7 @@ public:
|
|
|
344
340
|
{
|
|
345
341
|
//
|
|
346
342
|
// Call finishMessage once IO is completed only if serialization is not enabled.
|
|
347
|
-
// Otherwise, finishMessage will be called when the event handler is done with
|
|
343
|
+
// Otherwise, finishMessage will be called when the event handler is done with
|
|
348
344
|
// the message (it will be called from ~ThreadPoolMessage below).
|
|
349
345
|
//
|
|
350
346
|
assert(_finish);
|
|
@@ -358,22 +354,22 @@ public:
|
|
|
358
354
|
private:
|
|
359
355
|
|
|
360
356
|
ThreadPoolMessage& _message;
|
|
361
|
-
bool _finish;
|
|
357
|
+
bool _finish;
|
|
362
358
|
};
|
|
363
359
|
friend class IOScope;
|
|
364
|
-
|
|
365
|
-
ThreadPoolMessage(ThreadPoolCurrent& current, const T& mutex) :
|
|
360
|
+
|
|
361
|
+
ThreadPoolMessage(ThreadPoolCurrent& current, const T& mutex) :
|
|
366
362
|
_current(current), _mutex(mutex), _finish(false)
|
|
367
363
|
{
|
|
368
364
|
}
|
|
369
|
-
|
|
365
|
+
|
|
370
366
|
~ThreadPoolMessage()
|
|
371
367
|
{
|
|
372
368
|
if(_finish)
|
|
373
369
|
{
|
|
374
370
|
//
|
|
375
371
|
// A ThreadPoolMessage instance must be created outside the synchronization
|
|
376
|
-
// of the event handler. We need to lock the event handler here to call
|
|
372
|
+
// of the event handler. We need to lock the event handler here to call
|
|
377
373
|
// finishMessage.
|
|
378
374
|
//
|
|
379
375
|
#if defined(__MINGW32__)
|
|
@@ -386,7 +382,7 @@ public:
|
|
|
386
382
|
}
|
|
387
383
|
|
|
388
384
|
private:
|
|
389
|
-
|
|
385
|
+
|
|
390
386
|
ThreadPoolCurrent& _current;
|
|
391
387
|
const T& _mutex;
|
|
392
388
|
bool _finish;
|
|
@@ -395,5 +391,4 @@ private:
|
|
|
395
391
|
|
|
396
392
|
};
|
|
397
393
|
|
|
398
|
-
|
|
399
394
|
#endif
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
// **********************************************************************
|
|
2
2
|
//
|
|
3
|
-
// Copyright (c) 2003-
|
|
3
|
+
// Copyright (c) 2003-2017 ZeroC, Inc. All rights reserved.
|
|
4
4
|
//
|
|
5
5
|
// This copy of Ice is licensed to you under the terms described in the
|
|
6
6
|
// ICE_LICENSE file included in this distribution.
|
|
@@ -9,9 +9,16 @@
|
|
|
9
9
|
|
|
10
10
|
#include <IceUtil/Timer.h>
|
|
11
11
|
#include <IceUtil/Exception.h>
|
|
12
|
+
#include <Ice/ConsoleUtil.h>
|
|
12
13
|
|
|
13
14
|
using namespace std;
|
|
14
15
|
using namespace IceUtil;
|
|
16
|
+
using namespace IceInternal;
|
|
17
|
+
|
|
18
|
+
TimerTask::~TimerTask()
|
|
19
|
+
{
|
|
20
|
+
// Out of line to avoid weak vtable
|
|
21
|
+
}
|
|
15
22
|
|
|
16
23
|
Timer::Timer() :
|
|
17
24
|
Thread("IceUtil timer thread"),
|
|
@@ -75,7 +82,7 @@ Timer::schedule(const TimerTaskPtr& task, const IceUtil::Time& delay)
|
|
|
75
82
|
bool inserted = _tasks.insert(make_pair(task, time)).second;
|
|
76
83
|
if(!inserted)
|
|
77
84
|
{
|
|
78
|
-
throw IllegalArgumentException(__FILE__, __LINE__, "task is already
|
|
85
|
+
throw IllegalArgumentException(__FILE__, __LINE__, "task is already scheduled");
|
|
79
86
|
}
|
|
80
87
|
_tokens.insert(Token(time, IceUtil::Time(), task));
|
|
81
88
|
|
|
@@ -96,7 +103,7 @@ Timer::scheduleRepeated(const TimerTaskPtr& task, const IceUtil::Time& delay)
|
|
|
96
103
|
|
|
97
104
|
IceUtil::Time now = IceUtil::Time::now(IceUtil::Time::Monotonic);
|
|
98
105
|
const Token token(now + delay, delay, task);
|
|
99
|
-
if(delay > IceUtil::Time() && token.scheduledTime < now)
|
|
106
|
+
if(delay > IceUtil::Time() && token.scheduledTime < now)
|
|
100
107
|
{
|
|
101
108
|
throw IllegalArgumentException(__FILE__, __LINE__, "invalid delay");
|
|
102
109
|
}
|
|
@@ -104,10 +111,10 @@ Timer::scheduleRepeated(const TimerTaskPtr& task, const IceUtil::Time& delay)
|
|
|
104
111
|
bool inserted = _tasks.insert(make_pair(task, token.scheduledTime)).second;
|
|
105
112
|
if(!inserted)
|
|
106
113
|
{
|
|
107
|
-
throw IllegalArgumentException(__FILE__, __LINE__, "task is already
|
|
114
|
+
throw IllegalArgumentException(__FILE__, __LINE__, "task is already scheduled");
|
|
108
115
|
}
|
|
109
|
-
_tokens.insert(token);
|
|
110
|
-
|
|
116
|
+
_tokens.insert(token);
|
|
117
|
+
|
|
111
118
|
if(_wakeUpTime == IceUtil::Time() || token.scheduledTime < _wakeUpTime)
|
|
112
119
|
{
|
|
113
120
|
_monitor.notify();
|
|
@@ -168,12 +175,12 @@ Timer::run()
|
|
|
168
175
|
_monitor.wait();
|
|
169
176
|
}
|
|
170
177
|
}
|
|
171
|
-
|
|
178
|
+
|
|
172
179
|
if(_destroyed)
|
|
173
180
|
{
|
|
174
181
|
break;
|
|
175
182
|
}
|
|
176
|
-
|
|
183
|
+
|
|
177
184
|
while(!_tokens.empty() && !_destroyed)
|
|
178
185
|
{
|
|
179
186
|
const IceUtil::Time now = IceUtil::Time::now(IceUtil::Time::Monotonic);
|
|
@@ -188,22 +195,22 @@ Timer::run()
|
|
|
188
195
|
}
|
|
189
196
|
break;
|
|
190
197
|
}
|
|
191
|
-
|
|
198
|
+
|
|
192
199
|
_wakeUpTime = first.scheduledTime;
|
|
193
|
-
try
|
|
200
|
+
try
|
|
194
201
|
{
|
|
195
202
|
_monitor.timedWait(first.scheduledTime - now);
|
|
196
|
-
}
|
|
203
|
+
}
|
|
197
204
|
catch(const IceUtil::InvalidTimeoutException&)
|
|
198
205
|
{
|
|
199
206
|
IceUtil::Time timeout = (first.scheduledTime - now) / 2;
|
|
200
207
|
while(timeout > IceUtil::Time())
|
|
201
208
|
{
|
|
202
|
-
try
|
|
209
|
+
try
|
|
203
210
|
{
|
|
204
211
|
_monitor.timedWait(timeout);
|
|
205
212
|
break;
|
|
206
|
-
}
|
|
213
|
+
}
|
|
207
214
|
catch(const IceUtil::InvalidTimeoutException&)
|
|
208
215
|
{
|
|
209
216
|
timeout = timeout / 2;
|
|
@@ -216,7 +223,7 @@ Timer::run()
|
|
|
216
223
|
{
|
|
217
224
|
break;
|
|
218
225
|
}
|
|
219
|
-
}
|
|
226
|
+
}
|
|
220
227
|
|
|
221
228
|
if(token.task)
|
|
222
229
|
{
|
|
@@ -226,19 +233,19 @@ Timer::run()
|
|
|
226
233
|
}
|
|
227
234
|
catch(const IceUtil::Exception& e)
|
|
228
235
|
{
|
|
229
|
-
|
|
236
|
+
consoleErr << "IceUtil::Timer::run(): uncaught exception:\n" << e.what();
|
|
230
237
|
#ifdef __GNUC__
|
|
231
|
-
|
|
238
|
+
consoleErr << "\n" << e.ice_stackTrace();
|
|
232
239
|
#endif
|
|
233
|
-
|
|
234
|
-
}
|
|
240
|
+
consoleErr << endl;
|
|
241
|
+
}
|
|
235
242
|
catch(const std::exception& e)
|
|
236
243
|
{
|
|
237
|
-
|
|
238
|
-
}
|
|
244
|
+
consoleErr << "IceUtil::Timer::run(): uncaught exception:\n" << e.what() << endl;
|
|
245
|
+
}
|
|
239
246
|
catch(...)
|
|
240
247
|
{
|
|
241
|
-
|
|
248
|
+
consoleErr << "IceUtil::Timer::run(): uncaught exception" << endl;
|
|
242
249
|
}
|
|
243
250
|
}
|
|
244
251
|
}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
// **********************************************************************
|
|
2
2
|
//
|
|
3
|
-
// Copyright (c) 2003-
|
|
3
|
+
// Copyright (c) 2003-2017 ZeroC, Inc. All rights reserved.
|
|
4
4
|
//
|
|
5
5
|
// This copy of Ice is licensed to you under the terms described in the
|
|
6
6
|
// ICE_LICENSE file included in this distribution.
|
|
@@ -14,7 +14,7 @@ using namespace std;
|
|
|
14
14
|
using namespace Ice;
|
|
15
15
|
using namespace IceInternal;
|
|
16
16
|
|
|
17
|
-
|
|
17
|
+
IceUtil::Shared* IceInternal::upCast(TraceLevels* p) { return p; }
|
|
18
18
|
|
|
19
19
|
IceInternal::TraceLevels::TraceLevels(const PropertiesPtr& properties) :
|
|
20
20
|
network(0),
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
// **********************************************************************
|
|
2
2
|
//
|
|
3
|
-
// Copyright (c) 2003-
|
|
3
|
+
// Copyright (c) 2003-2017 ZeroC, Inc. All rights reserved.
|
|
4
4
|
//
|
|
5
5
|
// This copy of Ice is licensed to you under the terms described in the
|
|
6
6
|
// ICE_LICENSE file included in this distribution.
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
// **********************************************************************
|
|
2
2
|
//
|
|
3
|
-
// Copyright (c) 2003-
|
|
3
|
+
// Copyright (c) 2003-2017 ZeroC, Inc. All rights reserved.
|
|
4
4
|
//
|
|
5
5
|
// This copy of Ice is licensed to you under the terms described in the
|
|
6
6
|
// ICE_LICENSE file included in this distribution.
|
|
@@ -18,7 +18,7 @@ namespace IceInternal
|
|
|
18
18
|
{
|
|
19
19
|
|
|
20
20
|
class TraceLevels;
|
|
21
|
-
|
|
21
|
+
IceUtil::Shared* upCast(TraceLevels*);
|
|
22
22
|
typedef Handle<TraceLevels> TraceLevelsPtr;
|
|
23
23
|
|
|
24
24
|
}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
// **********************************************************************
|
|
2
2
|
//
|
|
3
|
-
// Copyright (c) 2003-
|
|
3
|
+
// Copyright (c) 2003-2017 ZeroC, Inc. All rights reserved.
|
|
4
4
|
//
|
|
5
5
|
// This copy of Ice is licensed to you under the terms described in the
|
|
6
6
|
// ICE_LICENSE file included in this distribution.
|
|
@@ -9,14 +9,15 @@
|
|
|
9
9
|
|
|
10
10
|
#include <IceUtil/Mutex.h>
|
|
11
11
|
#include <IceUtil/MutexPtrLock.h>
|
|
12
|
-
#include <
|
|
12
|
+
#include <Ice/StringUtil.h>
|
|
13
13
|
#include <Ice/TraceUtil.h>
|
|
14
14
|
#include <Ice/Instance.h>
|
|
15
15
|
#include <Ice/Object.h>
|
|
16
16
|
#include <Ice/Proxy.h>
|
|
17
17
|
#include <Ice/TraceLevels.h>
|
|
18
18
|
#include <Ice/Logger.h>
|
|
19
|
-
#include <Ice/
|
|
19
|
+
#include <Ice/OutputStream.h>
|
|
20
|
+
#include <Ice/InputStream.h>
|
|
20
21
|
#include <Ice/Protocol.h>
|
|
21
22
|
#include <Ice/ReplyStatus.h>
|
|
22
23
|
#include <set>
|
|
@@ -26,18 +27,24 @@ using namespace Ice;
|
|
|
26
27
|
using namespace IceInternal;
|
|
27
28
|
|
|
28
29
|
static void
|
|
29
|
-
printIdentityFacetOperation(ostream& s,
|
|
30
|
+
printIdentityFacetOperation(ostream& s, InputStream& stream)
|
|
30
31
|
{
|
|
32
|
+
ToStringMode toStringMode = ICE_ENUM(ToStringMode, Unicode);
|
|
33
|
+
if(stream.instance())
|
|
34
|
+
{
|
|
35
|
+
toStringMode = stream.instance()->toStringMode();
|
|
36
|
+
}
|
|
37
|
+
|
|
31
38
|
Identity identity;
|
|
32
39
|
stream.read(identity);
|
|
33
|
-
s << "\nidentity = " <<
|
|
40
|
+
s << "\nidentity = " << Ice::identityToString(identity, toStringMode);
|
|
34
41
|
|
|
35
42
|
vector<string> facet;
|
|
36
43
|
stream.read(facet);
|
|
37
44
|
s << "\nfacet = ";
|
|
38
45
|
if(!facet.empty())
|
|
39
46
|
{
|
|
40
|
-
s <<
|
|
47
|
+
s << escapeString(facet[0], "", toStringMode);
|
|
41
48
|
}
|
|
42
49
|
|
|
43
50
|
string operation;
|
|
@@ -66,28 +73,28 @@ getMessageTypeAsString(Byte type)
|
|
|
66
73
|
}
|
|
67
74
|
|
|
68
75
|
static void
|
|
69
|
-
printRequestHeader(ostream& s,
|
|
76
|
+
printRequestHeader(ostream& s, InputStream& stream)
|
|
70
77
|
{
|
|
71
78
|
printIdentityFacetOperation(s, stream);
|
|
72
79
|
|
|
73
80
|
Byte mode;
|
|
74
81
|
stream.read(mode);
|
|
75
82
|
s << "\nmode = " << static_cast<int>(mode) << ' ';
|
|
76
|
-
switch(mode)
|
|
83
|
+
switch(static_cast<OperationMode>(mode))
|
|
77
84
|
{
|
|
78
|
-
case Normal:
|
|
85
|
+
case ICE_ENUM(OperationMode, Normal):
|
|
79
86
|
{
|
|
80
87
|
s << "(normal)";
|
|
81
88
|
break;
|
|
82
89
|
}
|
|
83
90
|
|
|
84
|
-
case Nonmutating:
|
|
91
|
+
case ICE_ENUM(OperationMode, Nonmutating):
|
|
85
92
|
{
|
|
86
93
|
s << "(nonmutating)";
|
|
87
94
|
break;
|
|
88
95
|
}
|
|
89
96
|
|
|
90
|
-
case Idempotent:
|
|
97
|
+
case ICE_ENUM(OperationMode, Idempotent):
|
|
91
98
|
{
|
|
92
99
|
s << "(idempotent)";
|
|
93
100
|
break;
|
|
@@ -114,7 +121,7 @@ printRequestHeader(ostream& s, BasicStream& stream)
|
|
|
114
121
|
}
|
|
115
122
|
}
|
|
116
123
|
|
|
117
|
-
Ice::EncodingVersion v = stream.
|
|
124
|
+
Ice::EncodingVersion v = stream.skipEncapsulation();
|
|
118
125
|
if(v > Ice::Encoding_1_0)
|
|
119
126
|
{
|
|
120
127
|
s << "\nencoding = " << v;
|
|
@@ -122,7 +129,7 @@ printRequestHeader(ostream& s, BasicStream& stream)
|
|
|
122
129
|
}
|
|
123
130
|
|
|
124
131
|
static Byte
|
|
125
|
-
printHeader(ostream& s,
|
|
132
|
+
printHeader(ostream& s, InputStream& stream)
|
|
126
133
|
{
|
|
127
134
|
Byte magicNumber;
|
|
128
135
|
stream.read(magicNumber); // Don't bother printing the magic number
|
|
@@ -187,7 +194,7 @@ printHeader(ostream& s, BasicStream& stream)
|
|
|
187
194
|
}
|
|
188
195
|
|
|
189
196
|
static void
|
|
190
|
-
printRequest(ostream& s,
|
|
197
|
+
printRequest(ostream& s, InputStream& stream)
|
|
191
198
|
{
|
|
192
199
|
Int requestId;
|
|
193
200
|
stream.read(requestId);
|
|
@@ -201,7 +208,7 @@ printRequest(ostream& s, BasicStream& stream)
|
|
|
201
208
|
}
|
|
202
209
|
|
|
203
210
|
static void
|
|
204
|
-
printBatchRequest(ostream& s,
|
|
211
|
+
printBatchRequest(ostream& s, InputStream& stream)
|
|
205
212
|
{
|
|
206
213
|
int batchRequestNum;
|
|
207
214
|
stream.read(batchRequestNum);
|
|
@@ -215,7 +222,7 @@ printBatchRequest(ostream& s, BasicStream& stream)
|
|
|
215
222
|
}
|
|
216
223
|
|
|
217
224
|
static void
|
|
218
|
-
printReply(ostream& s,
|
|
225
|
+
printReply(ostream& s, InputStream& stream)
|
|
219
226
|
{
|
|
220
227
|
Int requestId;
|
|
221
228
|
stream.read(requestId);
|
|
@@ -319,7 +326,7 @@ printReply(ostream& s, BasicStream& stream)
|
|
|
319
326
|
|
|
320
327
|
if(replyStatus == replyOK || replyStatus == replyUserException)
|
|
321
328
|
{
|
|
322
|
-
Ice::EncodingVersion v = stream.
|
|
329
|
+
Ice::EncodingVersion v = stream.skipEncapsulation();
|
|
323
330
|
if(v > Ice::Encoding_1_0)
|
|
324
331
|
{
|
|
325
332
|
s << "\nencoding = " << v;
|
|
@@ -328,7 +335,7 @@ printReply(ostream& s, BasicStream& stream)
|
|
|
328
335
|
}
|
|
329
336
|
|
|
330
337
|
static Byte
|
|
331
|
-
printMessage(ostream& s,
|
|
338
|
+
printMessage(ostream& s, InputStream& stream)
|
|
332
339
|
{
|
|
333
340
|
Byte type = printHeader(s, stream);
|
|
334
341
|
|
|
@@ -408,29 +415,28 @@ IceInternal::traceSlicing(const char* kind, const string& typeId, const char* sl
|
|
|
408
415
|
}
|
|
409
416
|
|
|
410
417
|
void
|
|
411
|
-
IceInternal::traceSend(const
|
|
418
|
+
IceInternal::traceSend(const OutputStream& str, const LoggerPtr& logger, const TraceLevelsPtr& tl)
|
|
412
419
|
{
|
|
413
420
|
if(tl->protocol >= 1)
|
|
414
421
|
{
|
|
415
|
-
|
|
416
|
-
|
|
417
|
-
|
|
422
|
+
OutputStream& stream = const_cast<OutputStream&>(str);
|
|
423
|
+
InputStream is(stream.instance(), stream.getEncoding(), stream);
|
|
424
|
+
is.i = is.b.begin();
|
|
418
425
|
|
|
419
426
|
ostringstream s;
|
|
420
|
-
Byte type = printMessage(s,
|
|
427
|
+
Byte type = printMessage(s, is);
|
|
421
428
|
|
|
422
429
|
logger->trace(tl->protocolCat, "sending " + getMessageTypeAsString(type) + " " + s.str());
|
|
423
|
-
stream.i = p;
|
|
424
430
|
}
|
|
425
431
|
}
|
|
426
432
|
|
|
427
433
|
void
|
|
428
|
-
IceInternal::traceRecv(const
|
|
434
|
+
IceInternal::traceRecv(const InputStream& str, const LoggerPtr& logger, const TraceLevelsPtr& tl)
|
|
429
435
|
{
|
|
430
436
|
if(tl->protocol >= 1)
|
|
431
437
|
{
|
|
432
|
-
|
|
433
|
-
|
|
438
|
+
InputStream& stream = const_cast<InputStream&>(str);
|
|
439
|
+
InputStream::Container::iterator p = stream.i;
|
|
434
440
|
stream.i = stream.b.begin();
|
|
435
441
|
|
|
436
442
|
ostringstream s;
|
|
@@ -442,12 +448,29 @@ IceInternal::traceRecv(const BasicStream& str, const LoggerPtr& logger, const Tr
|
|
|
442
448
|
}
|
|
443
449
|
|
|
444
450
|
void
|
|
445
|
-
IceInternal::trace(const char* heading, const
|
|
451
|
+
IceInternal::trace(const char* heading, const OutputStream& str, const LoggerPtr& logger, const TraceLevelsPtr& tl)
|
|
446
452
|
{
|
|
447
453
|
if(tl->protocol >= 1)
|
|
448
454
|
{
|
|
449
|
-
|
|
450
|
-
|
|
455
|
+
OutputStream& stream = const_cast<OutputStream&>(str);
|
|
456
|
+
InputStream is(stream.instance(), stream.getEncoding(), stream);
|
|
457
|
+
is.i = is.b.begin();
|
|
458
|
+
|
|
459
|
+
ostringstream s;
|
|
460
|
+
s << heading;
|
|
461
|
+
printMessage(s, is);
|
|
462
|
+
|
|
463
|
+
logger->trace(tl->protocolCat, s.str());
|
|
464
|
+
}
|
|
465
|
+
}
|
|
466
|
+
|
|
467
|
+
void
|
|
468
|
+
IceInternal::trace(const char* heading, const InputStream& str, const LoggerPtr& logger, const TraceLevelsPtr& tl)
|
|
469
|
+
{
|
|
470
|
+
if(tl->protocol >= 1)
|
|
471
|
+
{
|
|
472
|
+
InputStream& stream = const_cast<InputStream&>(str);
|
|
473
|
+
InputStream::Container::iterator p = stream.i;
|
|
451
474
|
stream.i = stream.b.begin();
|
|
452
475
|
|
|
453
476
|
ostringstream s;
|
|
@@ -458,4 +481,3 @@ IceInternal::trace(const char* heading, const BasicStream& str, const LoggerPtr&
|
|
|
458
481
|
stream.i = p;
|
|
459
482
|
}
|
|
460
483
|
}
|
|
461
|
-
|