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.
|
|
@@ -13,7 +13,9 @@
|
|
|
13
13
|
#include <IceUtil/StringConverter.h>
|
|
14
14
|
#include <IceUtil/FileUtil.h>
|
|
15
15
|
#include <IceUtil/UUID.h>
|
|
16
|
+
#include <IceUtil/ConsoleUtil.h>
|
|
16
17
|
#include <algorithm>
|
|
18
|
+
#include <iterator>
|
|
17
19
|
#include <vector>
|
|
18
20
|
#include <fstream>
|
|
19
21
|
#include <sys/types.h>
|
|
@@ -26,6 +28,7 @@
|
|
|
26
28
|
|
|
27
29
|
using namespace std;
|
|
28
30
|
using namespace Slice;
|
|
31
|
+
using namespace IceUtilInternal;
|
|
29
32
|
|
|
30
33
|
//
|
|
31
34
|
// mcpp defines
|
|
@@ -64,6 +67,12 @@ Slice::Preprocessor::~Preprocessor()
|
|
|
64
67
|
close();
|
|
65
68
|
}
|
|
66
69
|
|
|
70
|
+
string
|
|
71
|
+
Slice::Preprocessor::getFileName()
|
|
72
|
+
{
|
|
73
|
+
return _fileName;
|
|
74
|
+
}
|
|
75
|
+
|
|
67
76
|
string
|
|
68
77
|
Slice::Preprocessor::getBaseName()
|
|
69
78
|
{
|
|
@@ -82,11 +91,9 @@ Slice::Preprocessor::addQuotes(const string& arg)
|
|
|
82
91
|
{
|
|
83
92
|
//
|
|
84
93
|
// Add quotes around the given argument to ensure that arguments
|
|
85
|
-
// with spaces will be preserved as a single argument
|
|
86
|
-
// escape the "\" character to ensure that we don't end up with a
|
|
87
|
-
// \" at the end of the string.
|
|
94
|
+
// with spaces will be preserved as a single argument
|
|
88
95
|
//
|
|
89
|
-
return "\"" +
|
|
96
|
+
return "\"" + escapeString(arg, "", IceUtilInternal::Unicode) + "\"";
|
|
90
97
|
}
|
|
91
98
|
|
|
92
99
|
string
|
|
@@ -140,7 +147,7 @@ namespace
|
|
|
140
147
|
{
|
|
141
148
|
|
|
142
149
|
vector<string>
|
|
143
|
-
baseArgs(vector<string> args, bool keepComments, const string
|
|
150
|
+
baseArgs(vector<string> args, bool keepComments, const vector<string>& extraArgs, const string& fileName)
|
|
144
151
|
{
|
|
145
152
|
if(keepComments)
|
|
146
153
|
{
|
|
@@ -161,10 +168,7 @@ baseArgs(vector<string> args, bool keepComments, const string& extraArgs, const
|
|
|
161
168
|
args.push_back(os.str());
|
|
162
169
|
}
|
|
163
170
|
|
|
164
|
-
|
|
165
|
-
{
|
|
166
|
-
args.push_back(extraArgs);
|
|
167
|
-
}
|
|
171
|
+
copy(extraArgs.begin(), extraArgs.end(), back_inserter(args));
|
|
168
172
|
args.push_back(fileName);
|
|
169
173
|
return args;
|
|
170
174
|
}
|
|
@@ -172,7 +176,18 @@ baseArgs(vector<string> args, bool keepComments, const string& extraArgs, const
|
|
|
172
176
|
}
|
|
173
177
|
|
|
174
178
|
FILE*
|
|
175
|
-
Slice::Preprocessor::preprocess(bool keepComments, const string&
|
|
179
|
+
Slice::Preprocessor::preprocess(bool keepComments, const string& extraArg)
|
|
180
|
+
{
|
|
181
|
+
vector<string> args;
|
|
182
|
+
if(!extraArg.empty())
|
|
183
|
+
{
|
|
184
|
+
args.push_back(extraArg);
|
|
185
|
+
}
|
|
186
|
+
return preprocess(keepComments, args);
|
|
187
|
+
}
|
|
188
|
+
|
|
189
|
+
FILE*
|
|
190
|
+
Slice::Preprocessor::preprocess(bool keepComments, const vector<string>& extraArgs)
|
|
176
191
|
{
|
|
177
192
|
if(!checkInputFile())
|
|
178
193
|
{
|
|
@@ -270,10 +285,7 @@ Slice::Preprocessor::preprocess(bool keepComments, const string& extraArgs)
|
|
|
270
285
|
}
|
|
271
286
|
else
|
|
272
287
|
{
|
|
273
|
-
|
|
274
|
-
os << _path << ": error: could not open temporary file: ";
|
|
275
|
-
os << _cppFile;
|
|
276
|
-
os << endl;
|
|
288
|
+
consoleErr << _path << ": error: could not open temporary file: " << _cppFile << endl;
|
|
277
289
|
}
|
|
278
290
|
}
|
|
279
291
|
|
|
@@ -287,7 +299,17 @@ Slice::Preprocessor::preprocess(bool keepComments, const string& extraArgs)
|
|
|
287
299
|
|
|
288
300
|
bool
|
|
289
301
|
Slice::Preprocessor::printMakefileDependencies(ostream& out, Language lang, const vector<string>& includePaths,
|
|
290
|
-
const string&
|
|
302
|
+
const string& extraArg, const string& cppSourceExt,
|
|
303
|
+
const string& optValue)
|
|
304
|
+
{
|
|
305
|
+
vector<string> extraArgs;
|
|
306
|
+
extraArgs.push_back(extraArg);
|
|
307
|
+
return printMakefileDependencies(out, lang, includePaths, extraArgs, cppSourceExt, optValue);
|
|
308
|
+
}
|
|
309
|
+
|
|
310
|
+
bool
|
|
311
|
+
Slice::Preprocessor::printMakefileDependencies(ostream& out, Language lang, const vector<string>& includePaths,
|
|
312
|
+
const vector<string>& extraArgs, const string& cppSourceExt,
|
|
291
313
|
const string& optValue)
|
|
292
314
|
{
|
|
293
315
|
if(!checkInputFile())
|
|
@@ -404,7 +426,7 @@ Slice::Preprocessor::printMakefileDependencies(ostream& out, Language lang, cons
|
|
|
404
426
|
//
|
|
405
427
|
// Get the main output file name.
|
|
406
428
|
//
|
|
407
|
-
#
|
|
429
|
+
#ifdef _MSC_VER
|
|
408
430
|
string suffix = ".obj:";
|
|
409
431
|
#else
|
|
410
432
|
string suffix = ".o:";
|
|
@@ -704,7 +726,7 @@ Slice::Preprocessor::printMakefileDependencies(ostream& out, Language lang, cons
|
|
|
704
726
|
}
|
|
705
727
|
default:
|
|
706
728
|
{
|
|
707
|
-
|
|
729
|
+
assert(false);
|
|
708
730
|
break;
|
|
709
731
|
}
|
|
710
732
|
}
|
|
@@ -750,14 +772,14 @@ Slice::Preprocessor::checkInputFile()
|
|
|
750
772
|
}
|
|
751
773
|
if(suffix != ".ice")
|
|
752
774
|
{
|
|
753
|
-
|
|
775
|
+
consoleErr << _path << ": error: input files must end with `.ice'" << endl;
|
|
754
776
|
return false;
|
|
755
777
|
}
|
|
756
778
|
|
|
757
|
-
|
|
779
|
+
ifstream test(IceUtilInternal::streamFilename(_fileName).c_str());
|
|
758
780
|
if(!test)
|
|
759
781
|
{
|
|
760
|
-
|
|
782
|
+
consoleErr << _path << ": error: cannot open `" << _fileName << "' for reading" << endl;
|
|
761
783
|
return false;
|
|
762
784
|
}
|
|
763
785
|
test.close();
|
|
@@ -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,23 +14,13 @@
|
|
|
14
14
|
#include <IceUtil/Handle.h>
|
|
15
15
|
#include <vector>
|
|
16
16
|
|
|
17
|
-
#ifndef SLICE_API
|
|
18
|
-
# ifdef SLICE_API_EXPORTS
|
|
19
|
-
# define SLICE_API ICE_DECLSPEC_EXPORT
|
|
20
|
-
# elif defined(ICE_STATIC_LIBS)
|
|
21
|
-
# define SLICE_API /**/
|
|
22
|
-
# else
|
|
23
|
-
# define SLICE_API ICE_DECLSPEC_IMPORT
|
|
24
|
-
# endif
|
|
25
|
-
#endif
|
|
26
|
-
|
|
27
17
|
namespace Slice
|
|
28
18
|
{
|
|
29
19
|
|
|
30
20
|
class Preprocessor;
|
|
31
21
|
typedef IceUtil::Handle<Preprocessor> PreprocessorPtr;
|
|
32
22
|
|
|
33
|
-
class
|
|
23
|
+
class Preprocessor : public IceUtil::SimpleShared
|
|
34
24
|
{
|
|
35
25
|
public:
|
|
36
26
|
|
|
@@ -39,13 +29,18 @@ public:
|
|
|
39
29
|
~Preprocessor();
|
|
40
30
|
|
|
41
31
|
FILE* preprocess(bool, const std::string& = "");
|
|
32
|
+
FILE* preprocess(bool, const std::vector<std::string>&);
|
|
42
33
|
bool close();
|
|
43
34
|
|
|
44
35
|
enum Language { CPlusPlus, Java, CSharp, Python, Ruby, PHP, JavaScript, JavaScriptJSON, ObjC, SliceXML };
|
|
45
36
|
|
|
46
37
|
bool printMakefileDependencies(std::ostream&, Language, const std::vector<std::string>&, const std::string& = "",
|
|
47
38
|
const std::string& = "cpp", const std::string& = "");
|
|
39
|
+
bool printMakefileDependencies(std::ostream&, Language, const std::vector<std::string>&,
|
|
40
|
+
const std::vector<std::string>&, const std::string& = "cpp",
|
|
41
|
+
const std::string& = "");
|
|
48
42
|
|
|
43
|
+
std::string getFileName();
|
|
49
44
|
std::string getBaseName();
|
|
50
45
|
|
|
51
46
|
static std::string addQuotes(const std::string&);
|
|
@@ -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,6 +14,7 @@
|
|
|
14
14
|
#include <IceUtil/CtrlCHandler.h>
|
|
15
15
|
#include <IceUtil/Mutex.h>
|
|
16
16
|
#include <IceUtil/MutexPtrLock.h>
|
|
17
|
+
#include <IceUtil/ConsoleUtil.h>
|
|
17
18
|
// BUGFIX: With MSVC2013 if this isn't included you get strange linker errors.
|
|
18
19
|
#include <IceUtil/FileUtil.h>
|
|
19
20
|
#include <Slice/Preprocessor.h>
|
|
@@ -38,6 +39,7 @@
|
|
|
38
39
|
using namespace std;
|
|
39
40
|
using namespace Slice;
|
|
40
41
|
using namespace Slice::Python;
|
|
42
|
+
using namespace IceUtilInternal;
|
|
41
43
|
|
|
42
44
|
namespace
|
|
43
45
|
{
|
|
@@ -71,6 +73,100 @@ interruptedCallback(int /*signal*/)
|
|
|
71
73
|
interrupted = true;
|
|
72
74
|
}
|
|
73
75
|
|
|
76
|
+
void
|
|
77
|
+
createDirectory(const string& dir)
|
|
78
|
+
{
|
|
79
|
+
IceUtilInternal::structstat st;
|
|
80
|
+
if(!IceUtilInternal::stat(dir, &st))
|
|
81
|
+
{
|
|
82
|
+
if(!(st.st_mode & S_IFDIR))
|
|
83
|
+
{
|
|
84
|
+
ostringstream os;
|
|
85
|
+
os << "failed to create directory '" << dir
|
|
86
|
+
<< "': file already exists and is not a directory";
|
|
87
|
+
throw FileException(__FILE__, __LINE__, os.str());
|
|
88
|
+
}
|
|
89
|
+
return;
|
|
90
|
+
}
|
|
91
|
+
|
|
92
|
+
if(IceUtilInternal::mkdir(dir, 0777) != 0)
|
|
93
|
+
{
|
|
94
|
+
ostringstream os;
|
|
95
|
+
os << "cannot create directory '" << dir << "': " << strerror(errno);
|
|
96
|
+
throw FileException(__FILE__, __LINE__, os.str());
|
|
97
|
+
}
|
|
98
|
+
}
|
|
99
|
+
|
|
100
|
+
//
|
|
101
|
+
// Starting in the directory given by output (can be empty for the CWD), create all necessary subdirectories
|
|
102
|
+
// in the path given by pkgdir.
|
|
103
|
+
//
|
|
104
|
+
void
|
|
105
|
+
createPackageDirectory(const string& output, const string& pkgdir)
|
|
106
|
+
{
|
|
107
|
+
assert(output.empty() || IceUtilInternal::directoryExists(output));
|
|
108
|
+
assert(!pkgdir.empty());
|
|
109
|
+
|
|
110
|
+
vector<string> elements;
|
|
111
|
+
if(!IceUtilInternal::splitString(pkgdir, "/", elements))
|
|
112
|
+
{
|
|
113
|
+
throw FileException(__FILE__, __LINE__, "invalid path in '" + pkgdir + "'");
|
|
114
|
+
}
|
|
115
|
+
|
|
116
|
+
assert(!elements.empty());
|
|
117
|
+
|
|
118
|
+
//
|
|
119
|
+
// Create all necessary subdirectories.
|
|
120
|
+
//
|
|
121
|
+
string path = output;
|
|
122
|
+
for(vector<string>::iterator p = elements.begin(); p != elements.end(); ++p)
|
|
123
|
+
{
|
|
124
|
+
if(!path.empty())
|
|
125
|
+
{
|
|
126
|
+
path += "/";
|
|
127
|
+
}
|
|
128
|
+
path += *p;
|
|
129
|
+
IceUtilInternal::structstat st;
|
|
130
|
+
if(IceUtilInternal::stat(path, &st) < 0)
|
|
131
|
+
{
|
|
132
|
+
if(IceUtilInternal::mkdir(path, 0777) != 0)
|
|
133
|
+
{
|
|
134
|
+
ostringstream os;
|
|
135
|
+
os << "cannot create directory '" << path << "': " << strerror(errno);
|
|
136
|
+
throw FileException(__FILE__, __LINE__, os.str());
|
|
137
|
+
}
|
|
138
|
+
FileTracker::instance()->addDirectory(path);
|
|
139
|
+
}
|
|
140
|
+
else if(!(st.st_mode & S_IFDIR))
|
|
141
|
+
{
|
|
142
|
+
ostringstream os;
|
|
143
|
+
os << "failed to create directory '" << path << "': file already exists and is not a directory";
|
|
144
|
+
throw FileException(__FILE__, __LINE__, os.str());
|
|
145
|
+
}
|
|
146
|
+
|
|
147
|
+
//
|
|
148
|
+
// It's possible that the pkgdir metadata specified a directory that won't be visited by our
|
|
149
|
+
// PackageVisitor. We need every intermediate subdirectory to have an __init__.py file, which
|
|
150
|
+
// can be empty.
|
|
151
|
+
//
|
|
152
|
+
const string init = path + "/__init__.py";
|
|
153
|
+
if(!IceUtilInternal::fileExists(init))
|
|
154
|
+
{
|
|
155
|
+
//
|
|
156
|
+
// Create an empty file.
|
|
157
|
+
//
|
|
158
|
+
IceUtilInternal::Output out;
|
|
159
|
+
out.open(init.c_str());
|
|
160
|
+
if(!out)
|
|
161
|
+
{
|
|
162
|
+
ostringstream os;
|
|
163
|
+
os << "cannot open '" << init << "': " << strerror(errno);
|
|
164
|
+
throw FileException(__FILE__, __LINE__, os.str());
|
|
165
|
+
}
|
|
166
|
+
FileTracker::instance()->addFile(init);
|
|
167
|
+
}
|
|
168
|
+
}
|
|
169
|
+
}
|
|
74
170
|
|
|
75
171
|
//
|
|
76
172
|
// For each Slice file Foo.ice we generate Foo_ice.py containing the Python
|
|
@@ -112,8 +208,6 @@ private:
|
|
|
112
208
|
static const char* _moduleTag;
|
|
113
209
|
static const char* _submoduleTag;
|
|
114
210
|
|
|
115
|
-
static void createDirectory(const string&);
|
|
116
|
-
|
|
117
211
|
static void addModule(const string&, const string&, const string&);
|
|
118
212
|
static void addSubmodule(const string&, const string&, const string&);
|
|
119
213
|
|
|
@@ -184,32 +278,6 @@ PackageVisitor::visitModuleEnd(const ModulePtr& p)
|
|
|
184
278
|
}
|
|
185
279
|
}
|
|
186
280
|
|
|
187
|
-
void
|
|
188
|
-
PackageVisitor::createDirectory(const string& dir)
|
|
189
|
-
{
|
|
190
|
-
IceUtilInternal::structstat st;
|
|
191
|
-
if(!IceUtilInternal::stat(dir, &st))
|
|
192
|
-
{
|
|
193
|
-
if(!(st.st_mode & S_IFDIR))
|
|
194
|
-
{
|
|
195
|
-
ostringstream os;
|
|
196
|
-
os << "failed to create package directory `" << dir
|
|
197
|
-
<< "': file already exists and is not a directory";
|
|
198
|
-
throw FileException(__FILE__, __LINE__, os.str());
|
|
199
|
-
}
|
|
200
|
-
return;
|
|
201
|
-
}
|
|
202
|
-
|
|
203
|
-
if(IceUtilInternal::mkdir(dir, 0777) != 0)
|
|
204
|
-
{
|
|
205
|
-
ostringstream os;
|
|
206
|
-
os << "cannot create directory `" << dir << "': " << strerror(errno);
|
|
207
|
-
throw FileException(__FILE__, __LINE__, os.str());
|
|
208
|
-
}
|
|
209
|
-
|
|
210
|
-
FileTracker::instance()->addDirectory(dir);
|
|
211
|
-
}
|
|
212
|
-
|
|
213
281
|
void
|
|
214
282
|
PackageVisitor::addModule(const string& dir, const string& module, const string& name)
|
|
215
283
|
{
|
|
@@ -250,11 +318,11 @@ PackageVisitor::readInit(const string& dir, StringList& modules, StringList& sub
|
|
|
250
318
|
IceUtilInternal::structstat st;
|
|
251
319
|
if(!IceUtilInternal::stat(initPath, &st))
|
|
252
320
|
{
|
|
253
|
-
|
|
321
|
+
ifstream in(IceUtilInternal::streamFilename(initPath).c_str());
|
|
254
322
|
if(!in)
|
|
255
323
|
{
|
|
256
324
|
ostringstream os;
|
|
257
|
-
os << "cannot open file
|
|
325
|
+
os << "cannot open file '" << initPath << "': " << strerror(errno);
|
|
258
326
|
throw FileException(__FILE__, __LINE__, os.str());
|
|
259
327
|
}
|
|
260
328
|
|
|
@@ -289,7 +357,7 @@ PackageVisitor::readInit(const string& dir, StringList& modules, StringList& sub
|
|
|
289
357
|
if(s.size() < 8)
|
|
290
358
|
{
|
|
291
359
|
ostringstream os;
|
|
292
|
-
os << "invalid line
|
|
360
|
+
os << "invalid line '" << s << "' in '" << initPath << "'";
|
|
293
361
|
throw os.str();
|
|
294
362
|
}
|
|
295
363
|
|
|
@@ -321,14 +389,14 @@ PackageVisitor::readInit(const string& dir, StringList& modules, StringList& sub
|
|
|
321
389
|
if(state != InSubmodules)
|
|
322
390
|
{
|
|
323
391
|
ostringstream os;
|
|
324
|
-
os << "invalid line
|
|
392
|
+
os << "invalid line '" << s << "' in '" << initPath << "'";
|
|
325
393
|
throw os.str();
|
|
326
394
|
}
|
|
327
395
|
|
|
328
396
|
if(s.size() < 15)
|
|
329
397
|
{
|
|
330
398
|
ostringstream os;
|
|
331
|
-
os << "invalid line
|
|
399
|
+
os << "invalid line '" << s << "' in '" << initPath << "'";
|
|
332
400
|
throw os.str();
|
|
333
401
|
}
|
|
334
402
|
|
|
@@ -336,10 +404,10 @@ PackageVisitor::readInit(const string& dir, StringList& modules, StringList& sub
|
|
|
336
404
|
}
|
|
337
405
|
}
|
|
338
406
|
|
|
339
|
-
if(state
|
|
407
|
+
if(state == InModules)
|
|
340
408
|
{
|
|
341
409
|
ostringstream os;
|
|
342
|
-
os << "invalid format in
|
|
410
|
+
os << "invalid format in '" << initPath << "'" << endl;
|
|
343
411
|
throw os.str();
|
|
344
412
|
}
|
|
345
413
|
}
|
|
@@ -351,11 +419,11 @@ PackageVisitor::writeInit(const string& dir, const string& name, const StringLis
|
|
|
351
419
|
{
|
|
352
420
|
string initPath = dir + "/__init__.py";
|
|
353
421
|
|
|
354
|
-
|
|
422
|
+
ofstream os(IceUtilInternal::streamFilename(initPath).c_str());
|
|
355
423
|
if(!os)
|
|
356
424
|
{
|
|
357
425
|
ostringstream os;
|
|
358
|
-
os << "cannot open file
|
|
426
|
+
os << "cannot open file '" << initPath << "': " << strerror(errno);
|
|
359
427
|
throw FileException(__FILE__, __LINE__, os.str());
|
|
360
428
|
}
|
|
361
429
|
FileTracker::instance()->addFile(initPath);
|
|
@@ -383,26 +451,24 @@ PackageVisitor::writeInit(const string& dir, const string& name, const StringLis
|
|
|
383
451
|
void
|
|
384
452
|
usage(const string& n)
|
|
385
453
|
{
|
|
386
|
-
|
|
387
|
-
|
|
454
|
+
consoleErr << "Usage: " << n << " [options] slice-files...\n";
|
|
455
|
+
consoleErr <<
|
|
388
456
|
"Options:\n"
|
|
389
|
-
"-h, --help
|
|
390
|
-
"-v, --version
|
|
391
|
-
"-DNAME
|
|
392
|
-
"-DNAME=DEF
|
|
393
|
-
"-UNAME
|
|
394
|
-
"-IDIR
|
|
395
|
-
"-E
|
|
396
|
-
"--output-dir DIR
|
|
397
|
-
"--
|
|
398
|
-
"--depend
|
|
399
|
-
"--depend-
|
|
400
|
-
"-
|
|
401
|
-
"--
|
|
402
|
-
"--
|
|
403
|
-
"--
|
|
404
|
-
"--checksum Generate checksums for Slice definitions.\n"
|
|
405
|
-
"--prefix PREFIX Prepend filenames of Python modules with PREFIX.\n"
|
|
457
|
+
"-h, --help Show this message.\n"
|
|
458
|
+
"-v, --version Display the Ice version.\n"
|
|
459
|
+
"-DNAME Define NAME as 1.\n"
|
|
460
|
+
"-DNAME=DEF Define NAME as DEF.\n"
|
|
461
|
+
"-UNAME Remove any definition for NAME.\n"
|
|
462
|
+
"-IDIR Put DIR in the include file search path.\n"
|
|
463
|
+
"-E Print preprocessor output on stdout.\n"
|
|
464
|
+
"--output-dir DIR Create files in the directory DIR.\n"
|
|
465
|
+
"-d, --debug Print debug messages.\n"
|
|
466
|
+
"--depend Generate Makefile dependencies.\n"
|
|
467
|
+
"--depend-xml Generate dependencies in XML format.\n"
|
|
468
|
+
"--depend-file FILE Write dependencies to FILE instead of standard output.\n"
|
|
469
|
+
"--all Generate code for Slice definitions in included files.\n"
|
|
470
|
+
"--checksum Generate checksums for Slice definitions.\n"
|
|
471
|
+
"--prefix PREFIX Prepend filenames of Python modules with PREFIX.\n"
|
|
406
472
|
;
|
|
407
473
|
}
|
|
408
474
|
|
|
@@ -438,7 +504,7 @@ Slice::Python::compile(const vector<string>& argv)
|
|
|
438
504
|
}
|
|
439
505
|
catch(const IceUtilInternal::BadOptException& e)
|
|
440
506
|
{
|
|
441
|
-
|
|
507
|
+
consoleErr << argv[0] << ": error: " << e.reason << endl;
|
|
442
508
|
usage(argv[0]);
|
|
443
509
|
return EXIT_FAILURE;
|
|
444
510
|
}
|
|
@@ -451,7 +517,7 @@ Slice::Python::compile(const vector<string>& argv)
|
|
|
451
517
|
|
|
452
518
|
if(opts.isSet("version"))
|
|
453
519
|
{
|
|
454
|
-
|
|
520
|
+
consoleErr << ICE_STRING_VERSION << endl;
|
|
455
521
|
return EXIT_SUCCESS;
|
|
456
522
|
}
|
|
457
523
|
|
|
@@ -502,25 +568,31 @@ Slice::Python::compile(const vector<string>& argv)
|
|
|
502
568
|
|
|
503
569
|
if(args.empty())
|
|
504
570
|
{
|
|
505
|
-
|
|
571
|
+
consoleErr << argv[0] << ": error: no input file" << endl;
|
|
506
572
|
usage(argv[0]);
|
|
507
573
|
return EXIT_FAILURE;
|
|
508
574
|
}
|
|
509
575
|
|
|
510
576
|
if(depend && dependxml)
|
|
511
577
|
{
|
|
512
|
-
|
|
578
|
+
consoleErr << argv[0] << ": error: cannot specify both --depend and --dependxml" << endl;
|
|
513
579
|
usage(argv[0]);
|
|
514
580
|
return EXIT_FAILURE;
|
|
515
581
|
}
|
|
516
582
|
|
|
517
583
|
if(noPackage && buildPackage)
|
|
518
584
|
{
|
|
519
|
-
|
|
585
|
+
consoleErr << argv[0] << ": error: cannot specify both --no-package and --build-package" << endl;
|
|
520
586
|
usage(argv[0]);
|
|
521
587
|
return EXIT_FAILURE;
|
|
522
588
|
}
|
|
523
589
|
|
|
590
|
+
if(!output.empty() && !IceUtilInternal::directoryExists(output))
|
|
591
|
+
{
|
|
592
|
+
consoleErr << argv[0] << ": error: argument for --output-dir does not exist or is not a directory" << endl;
|
|
593
|
+
return EXIT_FAILURE;
|
|
594
|
+
}
|
|
595
|
+
|
|
524
596
|
int status = EXIT_SUCCESS;
|
|
525
597
|
|
|
526
598
|
IceUtil::CtrlCHandler ctrlCHandler;
|
|
@@ -528,10 +600,10 @@ Slice::Python::compile(const vector<string>& argv)
|
|
|
528
600
|
|
|
529
601
|
bool keepComments = true;
|
|
530
602
|
|
|
531
|
-
|
|
603
|
+
ostringstream os;
|
|
532
604
|
if(dependxml)
|
|
533
605
|
{
|
|
534
|
-
|
|
606
|
+
os << "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<dependencies>" << endl;
|
|
535
607
|
}
|
|
536
608
|
|
|
537
609
|
for(vector<string>::const_iterator i = args.begin(); i != args.end(); ++i)
|
|
@@ -552,7 +624,6 @@ Slice::Python::compile(const vector<string>& argv)
|
|
|
552
624
|
|
|
553
625
|
if(cppHandle == 0)
|
|
554
626
|
{
|
|
555
|
-
out.cleanup();
|
|
556
627
|
return EXIT_FAILURE;
|
|
557
628
|
}
|
|
558
629
|
|
|
@@ -562,20 +633,17 @@ Slice::Python::compile(const vector<string>& argv)
|
|
|
562
633
|
|
|
563
634
|
if(parseStatus == EXIT_FAILURE)
|
|
564
635
|
{
|
|
565
|
-
out.cleanup();
|
|
566
636
|
return EXIT_FAILURE;
|
|
567
637
|
}
|
|
568
638
|
|
|
569
|
-
if(!icecpp->printMakefileDependencies(
|
|
639
|
+
if(!icecpp->printMakefileDependencies(os, depend ? Preprocessor::Python : Preprocessor::SliceXML,
|
|
570
640
|
includePaths, "-D__SLICE2PY__", "", prefix))
|
|
571
641
|
{
|
|
572
|
-
out.cleanup();
|
|
573
642
|
return EXIT_FAILURE;
|
|
574
643
|
}
|
|
575
644
|
|
|
576
645
|
if(!icecpp->close())
|
|
577
646
|
{
|
|
578
|
-
out.cleanup();
|
|
579
647
|
return EXIT_FAILURE;
|
|
580
648
|
}
|
|
581
649
|
}
|
|
@@ -592,7 +660,7 @@ Slice::Python::compile(const vector<string>& argv)
|
|
|
592
660
|
if(preprocess)
|
|
593
661
|
{
|
|
594
662
|
char buf[4096];
|
|
595
|
-
while(fgets(buf, static_cast<int>(sizeof(buf)), cppHandle) !=
|
|
663
|
+
while(fgets(buf, static_cast<int>(sizeof(buf)), cppHandle) != ICE_NULLPTR)
|
|
596
664
|
{
|
|
597
665
|
if(fputs(buf, stdout) == EOF)
|
|
598
666
|
{
|
|
@@ -630,42 +698,82 @@ Slice::Python::compile(const vector<string>& argv)
|
|
|
630
698
|
base.erase(0, pos + 1);
|
|
631
699
|
}
|
|
632
700
|
|
|
701
|
+
//
|
|
702
|
+
// Check if the file contains the python:pkgdir global metadata.
|
|
703
|
+
//
|
|
704
|
+
const string pkgdir = getPackageDirectory(icecpp->getFileName(), u);
|
|
705
|
+
|
|
633
706
|
//
|
|
634
707
|
// If --build-package is specified, we don't generate any code and simply
|
|
635
708
|
// update the __init__.py files.
|
|
636
709
|
//
|
|
637
710
|
if(!buildPackage)
|
|
638
711
|
{
|
|
712
|
+
string path;
|
|
713
|
+
if(!output.empty())
|
|
714
|
+
{
|
|
715
|
+
path = output + '/'; // The output directory must already exist.
|
|
716
|
+
}
|
|
717
|
+
|
|
718
|
+
if(!pkgdir.empty())
|
|
719
|
+
{
|
|
720
|
+
//
|
|
721
|
+
// The metadata is present. It should have the form
|
|
722
|
+
//
|
|
723
|
+
// python:pkgdir:A/B/C
|
|
724
|
+
//
|
|
725
|
+
// We open the output file in the specified directory, prefixed by the
|
|
726
|
+
// output directory (if any).
|
|
727
|
+
//
|
|
728
|
+
createPackageDirectory(output, pkgdir);
|
|
729
|
+
path += pkgdir;
|
|
730
|
+
if(path[path.size() - 1] != '/')
|
|
731
|
+
{
|
|
732
|
+
path += "/"; // Append a separator if necessary.
|
|
733
|
+
}
|
|
734
|
+
}
|
|
735
|
+
else
|
|
736
|
+
{
|
|
737
|
+
//
|
|
738
|
+
// The file doesn't contain the python:pkgdir metadata, so we use the
|
|
739
|
+
// value of the --prefix option (if any).
|
|
740
|
+
//
|
|
741
|
+
path += prefix;
|
|
742
|
+
}
|
|
743
|
+
|
|
744
|
+
//
|
|
745
|
+
// Add the file name (without the .ice extension).
|
|
746
|
+
//
|
|
747
|
+
path += base;
|
|
748
|
+
|
|
639
749
|
//
|
|
640
750
|
// Append the suffix "_ice" to the filename in order to avoid any conflicts
|
|
641
|
-
// with Slice module names. For example, if the file Test.ice defines a
|
|
751
|
+
// with Slice module or type names. For example, if the file Test.ice defines a
|
|
642
752
|
// Slice module named "Test", then we couldn't create a Python package named
|
|
643
753
|
// "Test" and also call the generated file "Test.py".
|
|
644
754
|
//
|
|
645
|
-
|
|
646
|
-
if(!output.empty())
|
|
647
|
-
{
|
|
648
|
-
file = output + '/' + file;
|
|
649
|
-
}
|
|
755
|
+
path += "_ice.py";
|
|
650
756
|
|
|
651
757
|
IceUtilInternal::Output out;
|
|
652
|
-
out.open(
|
|
758
|
+
out.open(path.c_str());
|
|
653
759
|
if(!out)
|
|
654
760
|
{
|
|
655
761
|
ostringstream os;
|
|
656
|
-
os << "cannot open
|
|
762
|
+
os << "cannot open '" << path << "': " << strerror(errno);
|
|
657
763
|
throw FileException(__FILE__, __LINE__, os.str());
|
|
658
764
|
}
|
|
659
|
-
FileTracker::instance()->addFile(
|
|
765
|
+
FileTracker::instance()->addFile(path);
|
|
660
766
|
|
|
661
767
|
//
|
|
662
|
-
// Python magic comment to set the file encoding
|
|
768
|
+
// Emit a Python magic comment to set the file encoding.
|
|
769
|
+
// It must be the first or second line.
|
|
663
770
|
//
|
|
664
771
|
out << "# -*- coding: utf-8 -*-\n";
|
|
665
772
|
printHeader(out);
|
|
666
773
|
printGeneratedHeader(out, base + ".ice", "#");
|
|
774
|
+
|
|
667
775
|
//
|
|
668
|
-
// Generate
|
|
776
|
+
// Generate Python code.
|
|
669
777
|
//
|
|
670
778
|
generate(u, all, checksum, includePaths, out);
|
|
671
779
|
|
|
@@ -677,7 +785,16 @@ Slice::Python::compile(const vector<string>& argv)
|
|
|
677
785
|
//
|
|
678
786
|
if(!noPackage)
|
|
679
787
|
{
|
|
680
|
-
|
|
788
|
+
string name;
|
|
789
|
+
if(!pkgdir.empty())
|
|
790
|
+
{
|
|
791
|
+
name = getImportFileName(icecpp->getFileName(), u, vector<string>());
|
|
792
|
+
}
|
|
793
|
+
else
|
|
794
|
+
{
|
|
795
|
+
name = prefix + base + "_ice";
|
|
796
|
+
}
|
|
797
|
+
PackageVisitor::createModules(u, name, output);
|
|
681
798
|
}
|
|
682
799
|
}
|
|
683
800
|
catch(const Slice::FileException& ex)
|
|
@@ -687,13 +804,13 @@ Slice::Python::compile(const vector<string>& argv)
|
|
|
687
804
|
//
|
|
688
805
|
FileTracker::instance()->cleanup();
|
|
689
806
|
u->destroy();
|
|
690
|
-
|
|
807
|
+
consoleErr << argv[0] << ": error: " << ex.reason() << endl;
|
|
691
808
|
return EXIT_FAILURE;
|
|
692
809
|
}
|
|
693
810
|
catch(const string& err)
|
|
694
811
|
{
|
|
695
812
|
FileTracker::instance()->cleanup();
|
|
696
|
-
|
|
813
|
+
consoleErr << argv[0] << ": error: " << err << endl;
|
|
697
814
|
status = EXIT_FAILURE;
|
|
698
815
|
}
|
|
699
816
|
}
|
|
@@ -707,7 +824,6 @@ Slice::Python::compile(const vector<string>& argv)
|
|
|
707
824
|
|
|
708
825
|
if(interrupted)
|
|
709
826
|
{
|
|
710
|
-
out.cleanup();
|
|
711
827
|
FileTracker::instance()->cleanup();
|
|
712
828
|
return EXIT_FAILURE;
|
|
713
829
|
}
|
|
@@ -716,7 +832,12 @@ Slice::Python::compile(const vector<string>& argv)
|
|
|
716
832
|
|
|
717
833
|
if(dependxml)
|
|
718
834
|
{
|
|
719
|
-
|
|
835
|
+
os << "</dependencies>\n";
|
|
836
|
+
}
|
|
837
|
+
|
|
838
|
+
if(depend || dependxml)
|
|
839
|
+
{
|
|
840
|
+
writeDependencies(os.str(), dependFile);
|
|
720
841
|
}
|
|
721
842
|
|
|
722
843
|
return status;
|