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.
|
|
@@ -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.
|
|
@@ -10,8 +10,8 @@
|
|
|
10
10
|
#ifndef ICE_SERVICE_H
|
|
11
11
|
#define ICE_SERVICE_H
|
|
12
12
|
|
|
13
|
-
#include <
|
|
14
|
-
#include <Ice/
|
|
13
|
+
#include <Ice/Initialize.h>
|
|
14
|
+
#include <Ice/LoggerUtil.h>
|
|
15
15
|
|
|
16
16
|
#ifdef _WIN32
|
|
17
17
|
# include <winsvc.h>
|
|
@@ -60,16 +60,13 @@ public:
|
|
|
60
60
|
// The return value is an exit status code: EXIT_FAILURE or
|
|
61
61
|
// EXIT_SUCCESS.
|
|
62
62
|
//
|
|
63
|
-
int main(int
|
|
64
|
-
int main(int, char* const [], const Ice::InitializationData& = Ice::InitializationData());
|
|
63
|
+
int main(int, const char* const[], const InitializationData& = InitializationData(), int = ICE_INT_VERSION);
|
|
65
64
|
|
|
66
65
|
#ifdef _WIN32
|
|
67
|
-
|
|
68
|
-
int main(int&, wchar_t*[], const InitializationData& = InitializationData());
|
|
69
|
-
|
|
66
|
+
int main(int, const wchar_t* const[], const InitializationData& = InitializationData(), int = ICE_INT_VERSION);
|
|
70
67
|
#endif
|
|
71
68
|
|
|
72
|
-
int main(StringSeq&, const InitializationData& = InitializationData());
|
|
69
|
+
int main(const StringSeq&, const InitializationData& = InitializationData(), int = ICE_INT_VERSION);
|
|
73
70
|
|
|
74
71
|
//
|
|
75
72
|
// Returns the communicator created by the service.
|
|
@@ -112,12 +109,10 @@ public:
|
|
|
112
109
|
// EXIT_SUCCESS.
|
|
113
110
|
//
|
|
114
111
|
#ifdef _WIN32
|
|
115
|
-
|
|
116
|
-
int run(int&, wchar_t*[], const InitializationData& = InitializationData());
|
|
117
|
-
|
|
112
|
+
int run(int, const wchar_t* const[], const InitializationData& = InitializationData(), int = ICE_INT_VERSION);
|
|
118
113
|
#endif
|
|
119
114
|
|
|
120
|
-
int run(int
|
|
115
|
+
int run(int, const char* const[], const InitializationData& = InitializationData(), int = ICE_INT_VERSION);
|
|
121
116
|
|
|
122
117
|
#ifdef _WIN32
|
|
123
118
|
|
|
@@ -171,7 +166,7 @@ protected:
|
|
|
171
166
|
//
|
|
172
167
|
// Initialize a communicator.
|
|
173
168
|
//
|
|
174
|
-
virtual Ice::CommunicatorPtr initializeCommunicator(int&, char*[], const InitializationData
|
|
169
|
+
virtual Ice::CommunicatorPtr initializeCommunicator(int&, char*[], const InitializationData&, int);
|
|
175
170
|
|
|
176
171
|
//
|
|
177
172
|
// Log a system error, which includes a description of the
|
|
@@ -225,12 +220,12 @@ private:
|
|
|
225
220
|
bool _nohup;
|
|
226
221
|
bool _service;
|
|
227
222
|
std::string _name;
|
|
228
|
-
|
|
223
|
+
|
|
229
224
|
static Service* _instance;
|
|
230
225
|
|
|
231
226
|
#ifdef _WIN32
|
|
232
227
|
|
|
233
|
-
int runService(int, char*[], const InitializationData&);
|
|
228
|
+
int runService(int, const char* const[], const InitializationData&);
|
|
234
229
|
void terminateService(DWORD);
|
|
235
230
|
bool waitForServiceState(SC_HANDLE, DWORD, SERVICE_STATUS&);
|
|
236
231
|
void showServiceStatus(const std::string&, SERVICE_STATUS&);
|
|
@@ -241,12 +236,12 @@ private:
|
|
|
241
236
|
|
|
242
237
|
public:
|
|
243
238
|
|
|
244
|
-
void serviceMain(int, wchar_t*[]);
|
|
239
|
+
void serviceMain(int, const wchar_t* const[]);
|
|
245
240
|
void control(int);
|
|
246
241
|
|
|
247
242
|
#else
|
|
248
243
|
|
|
249
|
-
int runDaemon(int, char*[], const InitializationData
|
|
244
|
+
int runDaemon(int, char*[], const InitializationData&, int);
|
|
250
245
|
|
|
251
246
|
bool _changeDirectory;
|
|
252
247
|
bool _closeFiles;
|
|
@@ -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.
|
|
@@ -12,6 +12,7 @@
|
|
|
12
12
|
|
|
13
13
|
#include <Ice/SlicedDataF.h>
|
|
14
14
|
#include <Ice/GCObject.h>
|
|
15
|
+
#include <Ice/Value.h>
|
|
15
16
|
|
|
16
17
|
namespace Ice
|
|
17
18
|
{
|
|
@@ -19,7 +20,10 @@ namespace Ice
|
|
|
19
20
|
//
|
|
20
21
|
// SliceInfo encapsulates the details of a slice for an unknown class or exception type.
|
|
21
22
|
//
|
|
22
|
-
struct ICE_API SliceInfo
|
|
23
|
+
struct ICE_API SliceInfo
|
|
24
|
+
#ifndef ICE_CPP11_MAPPING
|
|
25
|
+
: public ::IceUtil::Shared
|
|
26
|
+
#endif
|
|
23
27
|
{
|
|
24
28
|
//
|
|
25
29
|
// The Slice type ID for this slice.
|
|
@@ -37,9 +41,9 @@ struct ICE_API SliceInfo : public ::IceUtil::Shared
|
|
|
37
41
|
::std::vector<Byte> bytes;
|
|
38
42
|
|
|
39
43
|
//
|
|
40
|
-
// The
|
|
44
|
+
// The class instances referenced by this slice.
|
|
41
45
|
//
|
|
42
|
-
::std::vector<
|
|
46
|
+
::std::vector<ValuePtr> instances;
|
|
43
47
|
|
|
44
48
|
//
|
|
45
49
|
// Whether or not the slice contains optional members.
|
|
@@ -55,43 +59,65 @@ struct ICE_API SliceInfo : public ::IceUtil::Shared
|
|
|
55
59
|
//
|
|
56
60
|
// SlicedData holds the slices of unknown types.
|
|
57
61
|
//
|
|
58
|
-
class ICE_API SlicedData
|
|
62
|
+
class ICE_API SlicedData
|
|
63
|
+
#ifndef ICE_CPP11_MAPPING
|
|
64
|
+
: public ::IceUtil::Shared
|
|
65
|
+
#endif
|
|
59
66
|
{
|
|
60
67
|
public:
|
|
61
68
|
|
|
69
|
+
#ifndef ICE_CPP11_MAPPING
|
|
70
|
+
virtual ~SlicedData();
|
|
71
|
+
#endif
|
|
72
|
+
|
|
62
73
|
SlicedData(const SliceInfoSeq&);
|
|
63
74
|
|
|
64
75
|
const SliceInfoSeq slices;
|
|
65
76
|
|
|
66
|
-
|
|
77
|
+
//
|
|
78
|
+
// Clear the slices to break potential cyclic references.
|
|
79
|
+
//
|
|
80
|
+
void clear();
|
|
81
|
+
|
|
82
|
+
#ifndef ICE_CPP11_MAPPING
|
|
83
|
+
void _iceGcVisitMembers(IceInternal::GCVisitor&);
|
|
84
|
+
#endif
|
|
85
|
+
|
|
67
86
|
};
|
|
68
87
|
|
|
69
88
|
//
|
|
70
89
|
// Unknown sliced object holds instance of unknown type.
|
|
71
90
|
//
|
|
72
|
-
|
|
73
|
-
#ifdef
|
|
74
|
-
|
|
75
|
-
class ICE_API UnknownSlicedObject : public IceInternal::GCObject
|
|
91
|
+
class ICE_API UnknownSlicedValue :
|
|
92
|
+
#ifdef ICE_CPP11_MAPPING
|
|
93
|
+
public Value
|
|
76
94
|
#else
|
|
77
|
-
|
|
95
|
+
public IceInternal::GCObject
|
|
78
96
|
#endif
|
|
79
97
|
{
|
|
80
98
|
public:
|
|
81
99
|
|
|
82
|
-
|
|
100
|
+
UnknownSlicedValue(const std::string&);
|
|
83
101
|
|
|
84
|
-
|
|
102
|
+
#ifdef ICE_CPP11_MAPPING
|
|
103
|
+
virtual SlicedDataPtr ice_getSlicedData() const override;
|
|
104
|
+
virtual std::string ice_id() const override;
|
|
105
|
+
std::shared_ptr<UnknownSlicedValue> ice_clone() const;
|
|
85
106
|
|
|
86
|
-
|
|
107
|
+
virtual void _iceWrite(::Ice::OutputStream*) const override;
|
|
108
|
+
virtual void _iceRead(::Ice::InputStream*) override;
|
|
87
109
|
|
|
88
|
-
|
|
110
|
+
protected:
|
|
89
111
|
|
|
90
|
-
virtual
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
112
|
+
virtual std::shared_ptr<Value> _iceCloneImpl() const override;
|
|
113
|
+
#else
|
|
114
|
+
virtual SlicedDataPtr ice_getSlicedData() const;
|
|
115
|
+
virtual const std::string& ice_id(const Current& = Ice::emptyCurrent) const;
|
|
116
|
+
|
|
117
|
+
virtual void _iceGcVisitMembers(IceInternal::GCVisitor&);
|
|
118
|
+
virtual void _iceWrite(::Ice::OutputStream*) const;
|
|
119
|
+
virtual void _iceRead(::Ice::InputStream*);
|
|
120
|
+
#endif
|
|
95
121
|
|
|
96
122
|
private:
|
|
97
123
|
|
|
@@ -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.
|
|
@@ -17,17 +17,25 @@ namespace Ice
|
|
|
17
17
|
{
|
|
18
18
|
|
|
19
19
|
struct SliceInfo;
|
|
20
|
+
class SlicedData;
|
|
21
|
+
class UnknownSlicedValue;
|
|
22
|
+
|
|
23
|
+
#ifdef ICE_CPP11_MAPPING
|
|
24
|
+
using SliceInfoPtr = ::std::shared_ptr<SliceInfo>;
|
|
25
|
+
using SlicedDataPtr = ::std::shared_ptr<SlicedData>;
|
|
26
|
+
using UnknownSlicedValuePtr = ::std::shared_ptr<UnknownSlicedValue>;
|
|
27
|
+
#else
|
|
20
28
|
ICE_API IceUtil::Shared* upCast(SliceInfo*);
|
|
21
29
|
typedef IceInternal::Handle<SliceInfo> SliceInfoPtr;
|
|
22
|
-
typedef ::std::vector<SliceInfoPtr> SliceInfoSeq;
|
|
23
30
|
|
|
24
|
-
class SlicedData;
|
|
25
31
|
ICE_API IceUtil::Shared* upCast(SlicedData*);
|
|
26
32
|
typedef IceInternal::Handle<SlicedData> SlicedDataPtr;
|
|
27
33
|
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
34
|
+
ICE_API IceUtil::Shared* upCast(UnknownSlicedValue*);
|
|
35
|
+
typedef IceInternal::Handle<UnknownSlicedValue> UnknownSlicedValuePtr;
|
|
36
|
+
#endif
|
|
37
|
+
|
|
38
|
+
typedef ::std::vector<SliceInfoPtr> SliceInfoSeq;
|
|
31
39
|
|
|
32
40
|
}
|
|
33
41
|
|
|
@@ -1,20 +1,22 @@
|
|
|
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.
|
|
7
7
|
//
|
|
8
8
|
// **********************************************************************
|
|
9
9
|
|
|
10
|
-
#ifndef
|
|
11
|
-
#define
|
|
12
|
-
|
|
13
|
-
#include <IceUtil/ScopedArray.h>
|
|
14
|
-
#include <IceUtil/Iterator.h>
|
|
10
|
+
#ifndef ICE_STREAM_HELPERS_H
|
|
11
|
+
#define ICE_STREAM_HELPERS_H
|
|
15
12
|
|
|
16
13
|
#include <Ice/ObjectF.h>
|
|
17
14
|
|
|
15
|
+
#ifndef ICE_CPP11_MAPPING
|
|
16
|
+
# include <IceUtil/ScopedArray.h>
|
|
17
|
+
# include <IceUtil/Iterator.h>
|
|
18
|
+
#endif
|
|
19
|
+
|
|
18
20
|
namespace Ice
|
|
19
21
|
{
|
|
20
22
|
|
|
@@ -44,19 +46,33 @@ const StreamHelperCategory StreamHelperCategoryUserException = 9;
|
|
|
44
46
|
// and how it can be skipped by the unmarshaling code if the optional
|
|
45
47
|
// isn't known to the receiver.
|
|
46
48
|
//
|
|
49
|
+
|
|
50
|
+
#ifdef ICE_CPP11_MAPPING
|
|
51
|
+
enum class OptionalFormat : unsigned char
|
|
52
|
+
{
|
|
53
|
+
F1 = 0, // Fixed 1-byte encoding
|
|
54
|
+
F2 = 1, // Fixed 2 bytes encoding
|
|
55
|
+
F4 = 2, // Fixed 4 bytes encoding
|
|
56
|
+
F8 = 3, // Fixed 8 bytes encoding
|
|
57
|
+
Size = 4, // "Size encoding" on 1 to 5 bytes, e.g. enum, class identifier
|
|
58
|
+
VSize = 5, // "Size encoding" on 1 to 5 bytes followed by data, e.g. string, fixed size
|
|
59
|
+
// struct, or containers whose size can be computed prior to marshaling
|
|
60
|
+
FSize = 6, // Fixed size on 4 bytes followed by data, e.g. variable-size struct, container.
|
|
61
|
+
Class = 7
|
|
62
|
+
};
|
|
63
|
+
#else
|
|
47
64
|
enum OptionalFormat
|
|
48
65
|
{
|
|
49
|
-
OptionalFormatF1 = 0,
|
|
50
|
-
OptionalFormatF2 = 1,
|
|
51
|
-
OptionalFormatF4 = 2,
|
|
52
|
-
OptionalFormatF8 = 3,
|
|
53
|
-
OptionalFormatSize = 4,
|
|
54
|
-
OptionalFormatVSize = 5,
|
|
55
|
-
|
|
56
|
-
OptionalFormatFSize = 6, // Fixed size on 4 bytes followed by data, e.g. variable-size struct, container.
|
|
66
|
+
OptionalFormatF1 = 0, // see above
|
|
67
|
+
OptionalFormatF2 = 1,
|
|
68
|
+
OptionalFormatF4 = 2,
|
|
69
|
+
OptionalFormatF8 = 3,
|
|
70
|
+
OptionalFormatSize = 4,
|
|
71
|
+
OptionalFormatVSize = 5,
|
|
72
|
+
OptionalFormatFSize = 6,
|
|
57
73
|
OptionalFormatClass = 7
|
|
58
74
|
};
|
|
59
|
-
|
|
75
|
+
#endif
|
|
60
76
|
|
|
61
77
|
//
|
|
62
78
|
// Is the provided type a container?
|
|
@@ -92,43 +108,87 @@ struct IsMap
|
|
|
92
108
|
static const bool value = IsContainer<T>::value && sizeof(test<T>(0)) == sizeof(char);
|
|
93
109
|
};
|
|
94
110
|
|
|
111
|
+
#ifdef ICE_CPP11_MAPPING
|
|
112
|
+
|
|
95
113
|
//
|
|
96
114
|
// Base traits template.
|
|
97
115
|
// Types with no specialized trait use this trait.
|
|
98
116
|
//
|
|
99
|
-
template<typename T,
|
|
117
|
+
template<typename T, typename Enabler = void>
|
|
100
118
|
struct StreamableTraits
|
|
101
119
|
{
|
|
102
|
-
static const StreamHelperCategory helper =
|
|
103
|
-
(IsContainer<T>::value ? StreamHelperCategorySequence : StreamHelperCategoryUnknown);
|
|
120
|
+
static const StreamHelperCategory helper = StreamHelperCategoryUnknown;
|
|
104
121
|
|
|
105
122
|
//
|
|
106
123
|
// When extracting a sequence<T> from a stream, we can ensure the
|
|
107
124
|
// stream has at least StreamableTraits<T>::minWireSize * size bytes
|
|
108
125
|
// For containers, the minWireSize is 1 (just 1 byte for an empty container).
|
|
109
126
|
//
|
|
110
|
-
static const int minWireSize = 1;
|
|
127
|
+
//static const int minWireSize = 1;
|
|
111
128
|
|
|
112
129
|
//
|
|
113
130
|
// Is this type encoded on a fixed number of bytes?
|
|
114
131
|
// Used only for marshaling/unmarshaling optional data members and parameters.
|
|
115
132
|
//
|
|
133
|
+
//static const bool fixedLength = false;
|
|
134
|
+
};
|
|
135
|
+
|
|
136
|
+
template<typename T>
|
|
137
|
+
struct StreamableTraits<T, typename ::std::enable_if<IsMap<T>::value || IsContainer<T>::value>::type>
|
|
138
|
+
{
|
|
139
|
+
static const StreamHelperCategory helper = IsMap<T>::value ? StreamHelperCategoryDictionary : StreamHelperCategorySequence;
|
|
140
|
+
static const int minWireSize = 1;
|
|
116
141
|
static const bool fixedLength = false;
|
|
117
142
|
};
|
|
118
143
|
|
|
144
|
+
template<typename T>
|
|
145
|
+
struct StreamableTraits<T, typename ::std::enable_if<::std::is_base_of<::Ice::UserException, T>::value>::type>
|
|
146
|
+
{
|
|
147
|
+
static const StreamHelperCategory helper = StreamHelperCategoryUserException;
|
|
148
|
+
|
|
149
|
+
//
|
|
150
|
+
// There is no sequence/dictionary of UserException (so no need for minWireSize)
|
|
151
|
+
// and no optional UserException (so no need for fixedLength)
|
|
152
|
+
//
|
|
153
|
+
};
|
|
154
|
+
|
|
119
155
|
//
|
|
120
|
-
// StreamableTraits specialization for
|
|
121
|
-
// The type can be a std::pair<T, T> or a
|
|
122
|
-
// std::pair<IceUtil::ScopedArray<T>, std::pair<const T*, const T*> >
|
|
156
|
+
// StreamableTraits specialization for arrays (std::pair<const T*, const T*>).
|
|
123
157
|
//
|
|
124
|
-
template<typename T
|
|
125
|
-
struct StreamableTraits<
|
|
158
|
+
template<typename T>
|
|
159
|
+
struct StreamableTraits<std::pair<T*, T*>>
|
|
126
160
|
{
|
|
127
161
|
static const StreamHelperCategory helper = StreamHelperCategorySequence;
|
|
128
162
|
static const int minWireSize = 1;
|
|
129
163
|
static const bool fixedLength = false;
|
|
130
164
|
};
|
|
131
165
|
|
|
166
|
+
#else
|
|
167
|
+
|
|
168
|
+
//
|
|
169
|
+
// Base traits template.
|
|
170
|
+
// Types with no specialized trait use this trait.
|
|
171
|
+
//
|
|
172
|
+
template<typename T, typename Enabler = void>
|
|
173
|
+
struct StreamableTraits
|
|
174
|
+
{
|
|
175
|
+
static const StreamHelperCategory helper = IsMap<T>::value ? StreamHelperCategoryDictionary :
|
|
176
|
+
(IsContainer<T>::value ? StreamHelperCategorySequence : StreamHelperCategoryUnknown);
|
|
177
|
+
|
|
178
|
+
//
|
|
179
|
+
// When extracting a sequence<T> from a stream, we can ensure the
|
|
180
|
+
// stream has at least StreamableTraits<T>::minWireSize * size bytes
|
|
181
|
+
// For containers, the minWireSize is 1 (just 1 byte for an empty container).
|
|
182
|
+
//
|
|
183
|
+
static const int minWireSize = 1;
|
|
184
|
+
|
|
185
|
+
//
|
|
186
|
+
// Is this type encoded on a fixed number of bytes?
|
|
187
|
+
// Used only for marshaling/unmarshaling optional data members and parameters.
|
|
188
|
+
//
|
|
189
|
+
static const bool fixedLength = false;
|
|
190
|
+
};
|
|
191
|
+
|
|
132
192
|
//
|
|
133
193
|
// StreamableTraits specialization for user exceptions.
|
|
134
194
|
//
|
|
@@ -143,6 +203,19 @@ struct StreamableTraits<UserException>
|
|
|
143
203
|
//
|
|
144
204
|
};
|
|
145
205
|
|
|
206
|
+
//
|
|
207
|
+
// StreamableTraits specialization for array / range mapped sequences
|
|
208
|
+
// The type can be a std::pair<T, T> or a
|
|
209
|
+
// std::pair<IceUtil::ScopedArray<T>, std::pair<const T*, const T*> >
|
|
210
|
+
//
|
|
211
|
+
template<typename T, typename U>
|
|
212
|
+
struct StreamableTraits< ::std::pair<T, U> >
|
|
213
|
+
{
|
|
214
|
+
static const StreamHelperCategory helper = StreamHelperCategorySequence;
|
|
215
|
+
static const int minWireSize = 1;
|
|
216
|
+
static const bool fixedLength = false;
|
|
217
|
+
};
|
|
218
|
+
#endif
|
|
146
219
|
|
|
147
220
|
//
|
|
148
221
|
// StreamableTraits specialization for builtins (these are needed for sequence
|
|
@@ -232,7 +305,15 @@ struct StreamableTraits< ::std::vector<bool> >
|
|
|
232
305
|
static const bool fixedLength = false;
|
|
233
306
|
};
|
|
234
307
|
|
|
235
|
-
|
|
308
|
+
#ifdef ICE_CPP11_MAPPING
|
|
309
|
+
template<typename T>
|
|
310
|
+
struct StreamableTraits<::std::shared_ptr<T>, typename ::std::enable_if<::std::is_base_of<::Ice::ObjectPrx, T>::value>::type>
|
|
311
|
+
{
|
|
312
|
+
static const StreamHelperCategory helper = StreamHelperCategoryProxy;
|
|
313
|
+
static const int minWireSize = 2;
|
|
314
|
+
static const bool fixedLength = false;
|
|
315
|
+
};
|
|
316
|
+
#else
|
|
236
317
|
template<typename T>
|
|
237
318
|
struct StreamableTraits< ::IceInternal::ProxyHandle<T> >
|
|
238
319
|
{
|
|
@@ -240,7 +321,17 @@ struct StreamableTraits< ::IceInternal::ProxyHandle<T> >
|
|
|
240
321
|
static const int minWireSize = 2;
|
|
241
322
|
static const bool fixedLength = false;
|
|
242
323
|
};
|
|
324
|
+
#endif
|
|
243
325
|
|
|
326
|
+
#ifdef ICE_CPP11_MAPPING
|
|
327
|
+
template<typename T>
|
|
328
|
+
struct StreamableTraits<::std::shared_ptr<T>, typename ::std::enable_if<::std::is_base_of<::Ice::Value, T>::value>::type>
|
|
329
|
+
{
|
|
330
|
+
static const StreamHelperCategory helper = StreamHelperCategoryClass;
|
|
331
|
+
static const int minWireSize = 1;
|
|
332
|
+
static const bool fixedLength = false;
|
|
333
|
+
};
|
|
334
|
+
#else
|
|
244
335
|
template<typename T>
|
|
245
336
|
struct StreamableTraits< ::IceInternal::Handle<T> >
|
|
246
337
|
{
|
|
@@ -248,6 +339,7 @@ struct StreamableTraits< ::IceInternal::Handle<T> >
|
|
|
248
339
|
static const int minWireSize = 1;
|
|
249
340
|
static const bool fixedLength = false;
|
|
250
341
|
};
|
|
342
|
+
#endif
|
|
251
343
|
|
|
252
344
|
//
|
|
253
345
|
// StreamHelper templates used by streams to read and write data.
|
|
@@ -257,7 +349,6 @@ struct StreamableTraits< ::IceInternal::Handle<T> >
|
|
|
257
349
|
template<typename T, StreamHelperCategory st>
|
|
258
350
|
struct StreamHelper;
|
|
259
351
|
|
|
260
|
-
|
|
261
352
|
// Helper for builtins, delegates read/write to the stream.
|
|
262
353
|
template<typename T>
|
|
263
354
|
struct StreamHelper<T, StreamHelperCategoryBuiltin>
|
|
@@ -275,15 +366,35 @@ struct StreamHelper<T, StreamHelperCategoryBuiltin>
|
|
|
275
366
|
}
|
|
276
367
|
};
|
|
277
368
|
|
|
369
|
+
//
|
|
278
370
|
// "helpers" for the StreamHelper<T, StreamHelperCategoryStruct[Class]> below
|
|
279
|
-
//
|
|
371
|
+
// slice2cpp generates specializations as needed
|
|
280
372
|
//
|
|
281
373
|
|
|
282
374
|
template<typename T, typename S>
|
|
283
|
-
struct StreamWriter
|
|
375
|
+
struct StreamWriter
|
|
376
|
+
{
|
|
377
|
+
#ifdef ICE_CPP11_MAPPING
|
|
378
|
+
static inline void write(S* stream, const T& v)
|
|
379
|
+
{
|
|
380
|
+
stream->writeAll(v.ice_tuple());
|
|
381
|
+
}
|
|
382
|
+
#else
|
|
383
|
+
static inline void write(S*, const T&)
|
|
384
|
+
{
|
|
385
|
+
// Default is to write nothing for C++98
|
|
386
|
+
}
|
|
387
|
+
#endif
|
|
388
|
+
};
|
|
284
389
|
|
|
285
390
|
template<typename T, typename S>
|
|
286
|
-
struct StreamReader
|
|
391
|
+
struct StreamReader
|
|
392
|
+
{
|
|
393
|
+
static inline void read(S*, T&)
|
|
394
|
+
{
|
|
395
|
+
// Default is to read nothing
|
|
396
|
+
}
|
|
397
|
+
};
|
|
287
398
|
|
|
288
399
|
// Helper for structs
|
|
289
400
|
template<typename T>
|
|
@@ -302,7 +413,6 @@ struct StreamHelper<T, StreamHelperCategoryStruct>
|
|
|
302
413
|
}
|
|
303
414
|
};
|
|
304
415
|
|
|
305
|
-
|
|
306
416
|
// Helper for class structs
|
|
307
417
|
template<typename T>
|
|
308
418
|
struct StreamHelper<T, StreamHelperCategoryStructClass>
|
|
@@ -373,7 +483,7 @@ struct StreamHelper<T, StreamHelperCategorySequence>
|
|
|
373
483
|
}
|
|
374
484
|
};
|
|
375
485
|
|
|
376
|
-
// Helper for array
|
|
486
|
+
// Helper for array custom sequence parameters
|
|
377
487
|
template<typename T>
|
|
378
488
|
struct StreamHelper<std::pair<const T*, const T*>, StreamHelperCategorySequence>
|
|
379
489
|
{
|
|
@@ -390,6 +500,8 @@ struct StreamHelper<std::pair<const T*, const T*>, StreamHelperCategorySequence>
|
|
|
390
500
|
}
|
|
391
501
|
};
|
|
392
502
|
|
|
503
|
+
#ifndef ICE_CPP11_MAPPING
|
|
504
|
+
|
|
393
505
|
// Helper for range custom sequence parameters
|
|
394
506
|
template<typename T>
|
|
395
507
|
struct StreamHelper<std::pair<T, T>, StreamHelperCategorySequence>
|
|
@@ -425,8 +537,6 @@ struct StreamHelper<std::pair< ::std::vector<bool>::const_iterator,
|
|
|
425
537
|
stream->write(static_cast<bool>(*p));
|
|
426
538
|
}
|
|
427
539
|
}
|
|
428
|
-
|
|
429
|
-
// no read: only used for marshaling
|
|
430
540
|
};
|
|
431
541
|
|
|
432
542
|
// Helper for zero-copy array sequence parameters
|
|
@@ -441,6 +551,7 @@ struct StreamHelper<std::pair<IceUtil::ScopedArray<T>, std::pair<const T*, const
|
|
|
441
551
|
|
|
442
552
|
// no write: only used for unmarshaling
|
|
443
553
|
};
|
|
554
|
+
#endif
|
|
444
555
|
|
|
445
556
|
// Helper for dictionaries
|
|
446
557
|
template<typename T>
|
|
@@ -519,7 +630,6 @@ struct StreamHelper<T, StreamHelperCategoryClass>
|
|
|
519
630
|
}
|
|
520
631
|
};
|
|
521
632
|
|
|
522
|
-
|
|
523
633
|
//
|
|
524
634
|
// Helpers to read/write optional attributes or members.
|
|
525
635
|
//
|
|
@@ -536,46 +646,45 @@ struct GetOptionalFormat;
|
|
|
536
646
|
template<>
|
|
537
647
|
struct GetOptionalFormat<StreamHelperCategoryBuiltin, 1, true>
|
|
538
648
|
{
|
|
539
|
-
static const OptionalFormat value =
|
|
649
|
+
static const OptionalFormat value = ICE_SCOPED_ENUM(OptionalFormat, F1);
|
|
540
650
|
};
|
|
541
651
|
|
|
542
652
|
template<>
|
|
543
653
|
struct GetOptionalFormat<StreamHelperCategoryBuiltin, 2, true>
|
|
544
654
|
{
|
|
545
|
-
static const OptionalFormat value =
|
|
655
|
+
static const OptionalFormat value = ICE_SCOPED_ENUM(OptionalFormat, F2);
|
|
546
656
|
};
|
|
547
657
|
|
|
548
658
|
template<>
|
|
549
659
|
struct GetOptionalFormat<StreamHelperCategoryBuiltin, 4, true>
|
|
550
660
|
{
|
|
551
|
-
static const OptionalFormat value =
|
|
661
|
+
static const OptionalFormat value = ICE_SCOPED_ENUM(OptionalFormat, F4);
|
|
552
662
|
};
|
|
553
663
|
|
|
554
664
|
template<>
|
|
555
665
|
struct GetOptionalFormat<StreamHelperCategoryBuiltin, 8, true>
|
|
556
666
|
{
|
|
557
|
-
static const OptionalFormat value =
|
|
667
|
+
static const OptionalFormat value = ICE_SCOPED_ENUM(OptionalFormat, F8);
|
|
558
668
|
};
|
|
559
669
|
|
|
560
670
|
template<>
|
|
561
671
|
struct GetOptionalFormat<StreamHelperCategoryBuiltin, 1, false>
|
|
562
672
|
{
|
|
563
|
-
static const OptionalFormat value =
|
|
673
|
+
static const OptionalFormat value = ICE_SCOPED_ENUM(OptionalFormat, VSize);
|
|
564
674
|
};
|
|
565
675
|
|
|
566
676
|
template<>
|
|
567
677
|
struct GetOptionalFormat<StreamHelperCategoryClass, 1, false>
|
|
568
678
|
{
|
|
569
|
-
static const OptionalFormat value =
|
|
679
|
+
static const OptionalFormat value = ICE_SCOPED_ENUM(OptionalFormat, Class);
|
|
570
680
|
};
|
|
571
681
|
|
|
572
682
|
template<int minWireSize>
|
|
573
683
|
struct GetOptionalFormat<StreamHelperCategoryEnum, minWireSize, false>
|
|
574
684
|
{
|
|
575
|
-
static const OptionalFormat value =
|
|
685
|
+
static const OptionalFormat value = ICE_SCOPED_ENUM(OptionalFormat, Size);
|
|
576
686
|
};
|
|
577
687
|
|
|
578
|
-
|
|
579
688
|
// Base helper: simply read/write the data
|
|
580
689
|
template<typename T, StreamHelperCategory st, bool fixedLength>
|
|
581
690
|
struct StreamOptionalHelper
|
|
@@ -606,7 +715,7 @@ struct StreamOptionalHelper
|
|
|
606
715
|
template<typename T>
|
|
607
716
|
struct StreamOptionalHelper<T, StreamHelperCategoryStruct, true>
|
|
608
717
|
{
|
|
609
|
-
static const OptionalFormat optionalFormat =
|
|
718
|
+
static const OptionalFormat optionalFormat = ICE_SCOPED_ENUM(OptionalFormat, VSize);
|
|
610
719
|
|
|
611
720
|
template<class S> static inline void
|
|
612
721
|
write(S* stream, const T& v)
|
|
@@ -627,7 +736,7 @@ struct StreamOptionalHelper<T, StreamHelperCategoryStruct, true>
|
|
|
627
736
|
template<typename T>
|
|
628
737
|
struct StreamOptionalHelper<T, StreamHelperCategoryStruct, false>
|
|
629
738
|
{
|
|
630
|
-
static const OptionalFormat optionalFormat =
|
|
739
|
+
static const OptionalFormat optionalFormat = ICE_SCOPED_ENUM(OptionalFormat, FSize);
|
|
631
740
|
|
|
632
741
|
template<class S> static inline void
|
|
633
742
|
write(S* stream, const T& v)
|
|
@@ -657,7 +766,6 @@ struct StreamOptionalHelper<T, StreamHelperCategoryProxy, false> : StreamOptiona
|
|
|
657
766
|
{
|
|
658
767
|
};
|
|
659
768
|
|
|
660
|
-
|
|
661
769
|
//
|
|
662
770
|
// Helpers to read/write optional sequences or dictionaries
|
|
663
771
|
//
|
|
@@ -673,7 +781,7 @@ struct StreamOptionalContainerHelper;
|
|
|
673
781
|
template<typename T, int sz>
|
|
674
782
|
struct StreamOptionalContainerHelper<T, false, sz>
|
|
675
783
|
{
|
|
676
|
-
static const OptionalFormat optionalFormat =
|
|
784
|
+
static const OptionalFormat optionalFormat = ICE_SCOPED_ENUM(OptionalFormat, FSize);
|
|
677
785
|
|
|
678
786
|
template<class S> static inline void
|
|
679
787
|
write(S* stream, const T& v, Int)
|
|
@@ -696,7 +804,7 @@ struct StreamOptionalContainerHelper<T, false, sz>
|
|
|
696
804
|
template<typename T, int sz>
|
|
697
805
|
struct StreamOptionalContainerHelper<T, true, sz>
|
|
698
806
|
{
|
|
699
|
-
static const OptionalFormat optionalFormat =
|
|
807
|
+
static const OptionalFormat optionalFormat = ICE_SCOPED_ENUM(OptionalFormat, VSize);
|
|
700
808
|
|
|
701
809
|
template<class S> static inline void
|
|
702
810
|
write(S* stream, const T& v, Int n)
|
|
@@ -727,7 +835,7 @@ struct StreamOptionalContainerHelper<T, true, sz>
|
|
|
727
835
|
template<typename T>
|
|
728
836
|
struct StreamOptionalContainerHelper<T, true, 1>
|
|
729
837
|
{
|
|
730
|
-
static const OptionalFormat optionalFormat =
|
|
838
|
+
static const OptionalFormat optionalFormat = ICE_SCOPED_ENUM(OptionalFormat, VSize);
|
|
731
839
|
|
|
732
840
|
template<class S> static inline void
|
|
733
841
|
write(S* stream, const T& v, Int)
|
|
@@ -742,7 +850,6 @@ struct StreamOptionalContainerHelper<T, true, 1>
|
|
|
742
850
|
}
|
|
743
851
|
};
|
|
744
852
|
|
|
745
|
-
|
|
746
853
|
//
|
|
747
854
|
// Helper to write sequences, delegates to the optional container
|
|
748
855
|
// helper template partial specializations.
|
|
@@ -796,6 +903,8 @@ struct StreamOptionalHelper<std::pair<const T*, const T*>, StreamHelperCategoryS
|
|
|
796
903
|
}
|
|
797
904
|
};
|
|
798
905
|
|
|
906
|
+
#ifndef ICE_CPP11_MAPPING
|
|
907
|
+
|
|
799
908
|
template<typename T>
|
|
800
909
|
struct StreamOptionalHelper<std::pair<T, T>, StreamHelperCategorySequence, false>
|
|
801
910
|
{
|
|
@@ -841,6 +950,7 @@ struct StreamOptionalHelper<std::pair<IceUtil::ScopedArray<T>, std::pair<const T
|
|
|
841
950
|
|
|
842
951
|
// no write: only used for unmarshaling
|
|
843
952
|
};
|
|
953
|
+
#endif
|
|
844
954
|
|
|
845
955
|
//
|
|
846
956
|
// Helper to write dictionaries, delegates to the optional container
|